@@ -257,6 +257,13 @@ const getStandaloneOffset = (props, calculatedValues) => {
257
257
} ;
258
258
} ;
259
259
260
+ const isEqual = ( a , b ) => {
261
+ if ( a instanceof Date && b instanceof Date ) {
262
+ return a . getTime ( ) === b . getTime ( ) ;
263
+ }
264
+ return a === b ;
265
+ } ;
266
+
260
267
// eslint-disable-next-line complexity
261
268
const getOffset = ( props , calculatedValues ) => {
262
269
const { scale, origin, orientation, orientations, domain, padding } =
@@ -285,15 +292,14 @@ const getOffset = (props, calculatedValues) => {
285
292
} ;
286
293
const originPosition = {
287
294
x :
288
- origin . x === domain . x [ 0 ] || origin . x === domain . x [ 1 ]
295
+ isEqual ( origin . x , domain . x [ 0 ] ) || isEqual ( origin . x , domain . x [ 1 ] )
289
296
? 0
290
297
: scale . x ( origin . x ) ,
291
298
y :
292
- origin . y === domain . y [ 0 ] || origin . y === domain . y [ 1 ]
299
+ isEqual ( origin . y , domain . y [ 0 ] ) || isEqual ( origin . y , domain . y [ 1 ] )
293
300
? 0
294
301
: scale . y ( origin . y ) ,
295
302
} ;
296
-
297
303
const x = originPosition . x
298
304
? Math . abs ( originOffset . x - originPosition . x )
299
305
: orientationOffset . x ;
@@ -337,11 +343,11 @@ const getHorizontalOffset = (props, calculatedValues) => {
337
343
} ;
338
344
const originPosition = {
339
345
x :
340
- origin . x === domain . x [ 0 ] || origin . x === domain . x [ 1 ]
346
+ isEqual ( origin . x , domain . x [ 0 ] ) || isEqual ( origin . x , domain . x [ 1 ] )
341
347
? 0
342
348
: scale . x ( origin . x ) ,
343
349
y :
344
- origin . y === domain . y [ 0 ] || origin . y === domain . y [ 1 ]
350
+ isEqual ( origin . y , domain . y [ 0 ] ) || isEqual ( origin . y , domain . y [ 1 ] )
345
351
? 0
346
352
: scale . y ( origin . y ) ,
347
353
} ;
0 commit comments