@mantine/hooks
Version:
A collection of 50+ hooks for state and UI management
1 lines • 1.24 kB
Source Map (JSON)
{"version":3,"file":"shallow-equal.mjs","names":[],"sources":["../../../src/utils/shallow-equal/shallow-equal.ts"],"sourcesContent":["export function shallowEqual(a: any, b: any) {\n if (a === b) {\n return true;\n }\n\n if (Number.isNaN(a) && Number.isNaN(b)) {\n return true;\n }\n\n if (!(a instanceof Object) || !(b instanceof Object)) {\n return false;\n }\n\n const keys = Object.keys(a);\n const { length } = keys;\n\n if (length !== Object.keys(b).length) {\n return false;\n }\n\n for (let i = 0; i < length; i += 1) {\n const key = keys[i];\n\n if (!(key in b)) {\n return false;\n }\n\n if (a[key] !== b[key] && !(Number.isNaN(a[key]) && Number.isNaN(b[key]))) {\n return false;\n }\n }\n\n return true;\n}\n"],"mappings":";;AAAA,SAAgB,aAAa,GAAQ,GAAQ;AAC3C,KAAI,MAAM,EACR,QAAO;AAGT,KAAI,OAAO,MAAM,EAAE,IAAI,OAAO,MAAM,EAAE,CACpC,QAAO;AAGT,KAAI,EAAE,aAAa,WAAW,EAAE,aAAa,QAC3C,QAAO;CAGT,MAAM,OAAO,OAAO,KAAK,EAAE;CAC3B,MAAM,EAAE,WAAW;AAEnB,KAAI,WAAW,OAAO,KAAK,EAAE,CAAC,OAC5B,QAAO;AAGT,MAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,KAAK,GAAG;EAClC,MAAM,MAAM,KAAK;AAEjB,MAAI,EAAE,OAAO,GACX,QAAO;AAGT,MAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,MAAM,EAAE,KAAK,IAAI,OAAO,MAAM,EAAE,KAAK,EACrE,QAAO;;AAIX,QAAO"}