{"version":3,"file":"shallow-equal.mjs","names":[],"sources":["../../../../src/core/utils/shallow-equal/shallow-equal.ts"],"sourcesContent":["export function shallowEqual(a: unknown, b: unknown, depth = 1): boolean {\n  if (Object.is(a, b)) {\n    return true;\n  }\n\n  if (depth === 0 || typeof a !== 'object' || typeof b !== 'object' || a === null || b === null) {\n    return false;\n  }\n\n  if (Array.isArray(a) || Array.isArray(b)) {\n    if (!Array.isArray(a) || !Array.isArray(b) || a.length !== b.length) {\n      return false;\n    }\n\n    for (let i = 0; i < a.length; i += 1) {\n      if (!shallowEqual(a[i], b[i], depth - 1)) {\n        return false;\n      }\n    }\n\n    return true;\n  }\n\n  const aKeys = Object.keys(a);\n\n  if (aKeys.length !== Object.keys(b).length) {\n    return false;\n  }\n\n  for (const key of aKeys) {\n    if (!Object.hasOwn(b, key) || !shallowEqual((a as any)[key], (b as any)[key], depth - 1)) {\n      return false;\n    }\n  }\n\n  return true;\n}\n"],"mappings":";;AAAA,SAAgB,aAAa,GAAY,GAAY,QAAQ,GAAY;CACvE,IAAI,OAAO,GAAG,GAAG,CAAC,GAChB,OAAO;CAGT,IAAI,UAAU,KAAK,OAAO,MAAM,YAAY,OAAO,MAAM,YAAY,MAAM,QAAQ,MAAM,MACvF,OAAO;CAGT,IAAI,MAAM,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,GAAG;EACxC,IAAI,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,QAC3D,OAAO;EAGT,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,GACjC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC,GACrC,OAAO;EAIX,OAAO;CACT;CAEA,MAAM,QAAQ,OAAO,KAAK,CAAC;CAE3B,IAAI,MAAM,WAAW,OAAO,KAAK,CAAC,CAAC,CAAC,QAClC,OAAO;CAGT,KAAK,MAAM,OAAO,OAChB,IAAI,CAAC,OAAO,OAAO,GAAG,GAAG,KAAK,CAAC,aAAc,EAAU,MAAO,EAAU,MAAM,QAAQ,CAAC,GACrF,OAAO;CAIX,OAAO;AACT"}