Files
emaui/node_modules/@mantine/hooks/esm/utils/shallow-equal/shallow-equal.mjs
2026-05-29 15:23:46 +03:00

31 lines
659 B
JavaScript

'use client';
function shallowEqual(a, b) {
if (a === b) {
return true;
}
if (Number.isNaN(a) && Number.isNaN(b)) {
return true;
}
if (!(a instanceof Object) || !(b instanceof Object)) {
return false;
}
const keys = Object.keys(a);
const { length } = keys;
if (length !== Object.keys(b).length) {
return false;
}
for (let i = 0; i < length; i += 1) {
const key = keys[i];
if (!(key in b)) {
return false;
}
if (a[key] !== b[key] && !(Number.isNaN(a[key]) && Number.isNaN(b[key]))) {
return false;
}
}
return true;
}
export { shallowEqual };
//# sourceMappingURL=shallow-equal.mjs.map