{"version":3,"file":"is-deep-equals.cjs","sources":["../../src/utils/is-deep-equals.ts"],"sourcesContent":["const isPrimitiveComparison = (value1: unknown, value2: unknown): boolean => {\n  return (\n    value1 === null ||\n    value2 === null ||\n    typeof value1 !== 'object' ||\n    typeof value2 !== 'object'\n  );\n};\n\nexport const isDeepEquals = <T extends object>(\n  obj1: T,\n  obj2: T,\n  visited = new WeakMap(),\n): boolean => {\n  // If references are identical, return true\n  if (obj1 === obj2) {\n    return true;\n  }\n\n  // Use simple comparison for null or primitive values\n  if (isPrimitiveComparison(obj1, obj2)) {\n    return obj1 === obj2;\n  }\n\n  // Check for circular references\n  if (visited.has(obj1)) {\n    return visited.get(obj1) === obj2;\n  }\n  visited.set(obj1, obj2);\n\n  // Compare number of properties\n  const typedKeys1 = Object.keys(obj1) as (keyof typeof obj1)[];\n  const typedKeys2 = Object.keys(obj2) as (keyof typeof obj2)[];\n\n  if (typedKeys1.length !== typedKeys2.length) {\n    return false;\n  }\n\n  // Compare all properties\n  return typedKeys1.every((key) => {\n    const val1 = obj1[key];\n    const val2 = obj2[key];\n\n    // Handle arrays comparison\n    if (Array.isArray(val1) && Array.isArray(val2)) {\n      if (val1.length !== val2.length) {\n        return false;\n      }\n\n      return val1.every((item, i) => {\n        if (!isPrimitiveComparison(item, val2[i])) {\n          return isDeepEquals(item, val2[i], visited);\n        }\n        return item === val2[i];\n      });\n    }\n\n    // Recursively compare objects\n    if (!isPrimitiveComparison(val1, val2)) {\n      return isDeepEquals(val1 as object, val2 as object, visited);\n    }\n\n    // Compare primitive values\n    return val1 === val2;\n  });\n};\n"],"names":["isPrimitiveComparison","value1","value2","isDeepEquals","obj1","obj2","visited","typedKeys1","typedKeys2","key","val1","val2","item","i"],"mappings":"gFAAA,MAAMA,EAAwB,CAACC,EAAiBC,IAE5CD,IAAW,MACXC,IAAW,MACX,OAAOD,GAAW,UAClB,OAAOC,GAAW,SAITC,EAAe,CAC1BC,EACAC,EACAC,EAAU,IAAI,UACF,CAEZ,GAAIF,IAASC,EACJ,MAAA,GAIL,GAAAL,EAAsBI,EAAMC,CAAI,EAClC,OAAOD,IAASC,EAId,GAAAC,EAAQ,IAAIF,CAAI,EACX,OAAAE,EAAQ,IAAIF,CAAI,IAAMC,EAEvBC,EAAA,IAAIF,EAAMC,CAAI,EAGhB,MAAAE,EAAa,OAAO,KAAKH,CAAI,EAC7BI,EAAa,OAAO,KAAKH,CAAI,EAE/B,OAAAE,EAAW,SAAWC,EAAW,OAC5B,GAIFD,EAAW,MAAOE,GAAQ,CACzB,MAAAC,EAAON,EAAKK,CAAG,EACfE,EAAON,EAAKI,CAAG,EAGrB,OAAI,MAAM,QAAQC,CAAI,GAAK,MAAM,QAAQC,CAAI,EACvCD,EAAK,SAAWC,EAAK,OAChB,GAGFD,EAAK,MAAM,CAACE,EAAMC,IAClBb,EAAsBY,EAAMD,EAAKE,CAAC,CAAC,EAGjCD,IAASD,EAAKE,CAAC,EAFbV,EAAaS,EAAMD,EAAKE,CAAC,EAAGP,CAAO,CAG7C,EAIEN,EAAsBU,EAAMC,CAAI,EAK9BD,IAASC,EAJPR,EAAaO,EAAgBC,EAAgBL,CAAO,CAI7C,CACjB,CACH"}