in src/utils/xyPropsEqual.js [25:52]
export default function xyPropsEqual(
propsA,
propsB,
customKeysToDeepCheck = [],
includeDefaults = true,
) {
const propKeysToDeepCheck = includeDefaults
? defaultPropKeysToDeepCheck.concat(customKeysToDeepCheck)
: customKeysToDeepCheck;
const propKeysToSkipShallowCheck = propKeysToDeepCheck.concat('scale');
const equalityCheck =
// most keys just get shallow-equality checked
shallowEqual(
omit(propsA, propKeysToSkipShallowCheck),
omit(propsB, propKeysToSkipShallowCheck),
) &&
propKeysToDeepCheck.every(key => isEqual(propsA[key], propsB[key])) &&
['x', 'y'].every(key => {
return scaleEqual(
get(propsA, `scale[${key}]`),
get(propsA, `scale[${key}]`),
);
});
return equalityCheck;
}