{"_id":"object-deep-merge","_rev":"9-49864033b7cc562e99eb9147593f25d3","name":"object-deep-merge","dist-tags":{"latest":"2.0.1"},"versions":{"0.0.0":{"name":"object-deep-merge","version":"0.0.0","license":"MIT","_id":"object-deep-merge@0.0.0","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"dist":{"shasum":"957f9939d092657c3792fa38c62b17e6039a4ce0","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-0.0.0.tgz","fileCount":1,"integrity":"sha512-qks86twI7v7nSsgn9eQrsCpEZOpMnXgVJ7/n726M5XbE7YmIRIKP+lMbH4Rk+Szu2TFYuVQnZEzWPmLUSghJNg==","signatures":[{"sig":"MEUCIQDLszEQ4+ZtlMrCPFaZAd4iOTCz1qZeT05Dp+UOYge18gIgLsy4mm9YFz8spMX3C03MEBM1rfVXtFUAoHJwEo0ChSw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103},"private":false,"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"_npmVersion":"9.6.7","directories":{},"_nodeVersion":"20.3.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_0.0.0_1689498187059_0.9929453401733477","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"object-deep-merge","version":"1.0.0","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"license":"MIT","_id":"object-deep-merge@1.0.0","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"dist":{"shasum":"95208a22654d7cd20806c60f52bd18f3960e1d6c","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.0.tgz","fileCount":8,"integrity":"sha512-ZgRw/oXTj69jL1LdN7MYk9ACGPAnfmyEdVE1GvzwjZ82JYT5VjKoWNwLneAWTzXpDvuz96zQKPGmd6LcrYM6eg==","signatures":[{"sig":"MEUCIDI6aUUL5Qi5cV68+XA+IyPHxpy6BjtTAvlebpnGFkV+AiEAjsrZiqUXfikC/l6wadf6S1H1+OlrwRS7R5ISAkG042Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5250},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","gitHead":"dfb162e3c793618d831dee566c31f0911cba2e67","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","build":"tsup src/index.ts --format cjs,esm --dts --minify","format":"prettier --write \"**/*.{js,json,md,ts,tsx}\"","dev:test":"esrun src/test.ts"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@pqt/prettier-config","_npmVersion":"9.6.7","description":"<p align=\"center\"></p> <div align=\"center\">     <picture>         <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://pqt.s3.ca-central-1.amazonaws.com/object-deep-merge/assets/images/logos/dark.png\" height=\"64\">         <img alt=\"Object Deep Mer","directories":{},"_nodeVersion":"20.3.1","_hasShrinkwrap":false,"devDependencies":{"tsup":"7.1.0","prettier":"3.0.0","typescript":"5.1.6","@pqt/tsconfig":"1.0.1","@digitak/esrun":"3.2.24","@pqt/prettier-config":"1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.0_1689748747541_0.607674226755748","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"object-deep-merge","version":"1.0.1","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@1.0.1","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"e7f9701699638dc64c9642ae50942f0cfb021ec3","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.1.tgz","fileCount":8,"integrity":"sha512-RH1gypT3LVLh65dTzDlwxr9QTa75wfs0AV7EuIiakcFsyqzhcsZhyg5RRwZO5FgUpop5d7scye93M62QdzNmng==","signatures":[{"sig":"MEQCIGtJO4rHW3wA8+h5aDAq2nW7rRPLXKUeHQit+CyOzH8DAiBemTFSRRlT2Ed7XhI6GAAb2IsuIVjel2BmzU/BsP5MIQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6926},"main":"dist/index","type":"module","types":"dist/index.d.ts","gitHead":"302f5d59188f40776bd982dd6ec2bce50077462c","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,js,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest","build":"tsup src/index.ts --format cjs,esm --dts --minify","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"9.6.7","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"20.3.1","eslintConfig":{"extends":"../forcir-eslint-config/index.cjs"},"_hasShrinkwrap":false,"packageManager":"pnpm@8.6.11","devDependencies":{"jest":"29.6.1","tsup":"7.1.0","eslint":"8.46.0","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.0","typescript":"5.1.6","@types/jest":"29.5.3","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.0","@forcir/eslint-config":"0.0.0","@forcir/prettier-config":"1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.1_1691724257263_0.19790319261526212","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"object-deep-merge","version":"1.0.2","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@1.0.2","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"b8eb5382917ea4f0afe532fbfa645f9fb3a66060","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.2.tgz","fileCount":7,"integrity":"sha512-463O69ke1mJidmpr/PLDLUzqPQmi+KCj5GLmiOwyb1YMx3zIDr7yI9aKDnFL4rsJX2psEu5UdfrHbCS3mYKJAw==","signatures":[{"sig":"MEQCIEHsK3+tX2npR6OjrT3ChGfo9UYL9oxlgKq/L5S4be0QAiApnZkLnozlihAPlAbTi6HB/ERy6gGaBu2wqv6LKPhwbQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8449},"main":"dist/index","type":"module","types":"dist/index.d.ts","gitHead":"47918d66f576307e9fda193ccb5465fd9bb2fbfe","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest","build":"run-s build:*","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","build:prepare":"rimraf dist","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage","prepublishOnly":"run-s build"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"9.6.7","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"20.3.1","eslintConfig":{"extends":"@forcir/eslint-config"},"_hasShrinkwrap":false,"packageManager":"pnpm@8.6.11","devDependencies":{"jest":"29.6.1","tsup":"7.1.0","eslint":"8.46.0","rimraf":"5.0.1","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.0","typescript":"5.1.6","@types/jest":"29.5.3","npm-run-all":"4.1.5","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.0","@forcir/eslint-config":"1.0.1","@forcir/prettier-config":"1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.2_1691726674385_0.8900102025145673","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"object-deep-merge","version":"1.0.3","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@1.0.3","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"0ab72a21f9473fb7a76e85f6eb47a628a1e0f5db","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.3.tgz","fileCount":7,"integrity":"sha512-qU7NQp4Bf/3cWOM/LVnyRaLd6sHQaIhQYawkltQbPhSLTqKnv2bAZoLD7bNwInwFOIWapf5yFQQOluPFGadr5A==","signatures":[{"sig":"MEYCIQC8OU2dqLuA47xjsriuoy5g2O/pj6PITFrR90FCYL27EAIhAOZ3R62Qp8tqibdUh2eRcXerNzSyOKrcn/JL+DY4KMDK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8563},"main":"dist/index","type":"module","types":"dist/index.d.ts","gitHead":"6ecda1c330559f3ac3e94b8e78700f283833b85b","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest","build":"run-s build:*","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","build:prepare":"rimraf dist","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage","prepublishOnly":"run-s build"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"9.6.7","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"20.3.1","eslintConfig":{"extends":"@forcir/eslint-config"},"_hasShrinkwrap":false,"packageManager":"pnpm@8.6.11","devDependencies":{"jest":"29.6.2","tsup":"7.2.0","eslint":"8.46.0","rimraf":"5.0.1","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.1","typescript":"5.1.6","@types/jest":"29.5.3","npm-run-all":"4.1.5","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.4","@forcir/eslint-config":"1.0.3","@forcir/prettier-config":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.3_1691982891223_0.026826144420214693","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"object-deep-merge","version":"1.0.4","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@1.0.4","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"1963855ef6f7add751e3a0c5f3088e9bf57b77ff","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.4.tgz","fileCount":7,"integrity":"sha512-5LDJe4vuj1jfm+gBo2ze4ERPsDGfRARz7OcPFY+Qr6b90J+D+DvBPRMTAGmd8IB+V9mpU1TARJwBODFeNP9Xpw==","signatures":[{"sig":"MEUCIQCh2z4vaE3quxTsh+PgHvR2r61gIzjj4MILQmktAZQbiAIgLvS1X0SU5IIEddUVU1j5FFOFPFbkcZgigON3W2LmuD4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11926},"main":"dist/index","type":"module","types":"dist/index.d.ts","gitHead":"673a7619903b5fae67f20244bdeca8c2ce483f48","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest","build":"run-s build:*","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","build:prepare":"rimraf dist","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage","prepublishOnly":"run-s build"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"9.6.7","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"type-fest":"4.2.0"},"eslintConfig":{"extends":"@forcir/eslint-config"},"_hasShrinkwrap":false,"packageManager":"pnpm@8.6.11","devDependencies":{"jest":"29.6.2","tsup":"7.2.0","eslint":"8.47.0","rimraf":"5.0.1","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.2","typescript":"5.1.6","@types/jest":"29.5.3","npm-run-all":"4.1.5","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.4","@forcir/eslint-config":"1.0.3","@forcir/prettier-config":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.4_1692495136073_0.5549240074623387","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"object-deep-merge","version":"1.0.5","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@1.0.5","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"a5aed81ba02563f6632ea3496451f2b987619538","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-1.0.5.tgz","fileCount":7,"integrity":"sha512-3DioFgOzetbxbeUq8pB2NunXo8V0n4EvqsWM/cJoI6IA9zghd7cl/2pBOuWRf4dlvA+fcg5ugFMZaN2/RuoaGg==","signatures":[{"sig":"MEUCIQCLdb7juU4y1L2hjtUaxnUTONtwt7jxFaOY/yNJIFlpsgIgHEJVAqxkrdg4cZoiBQMlkQ+IVJ2CXwqCCbm98ST959o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12263},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"9cb7450c601ed92cab3690629c7c8e5b0e348078","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --runInBand","build":"run-s build:*","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","build:prepare":"rimraf dist","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage","prepublishOnly":"run-s build"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"10.9.2","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"type-fest":"4.2.0"},"eslintConfig":{"extends":"@forcir/eslint-config"},"_hasShrinkwrap":false,"packageManager":"pnpm@8.6.11","devDependencies":{"jest":"29.7.0","tsup":"8.5.0","eslint":"8.47.0","rimraf":"6.0.1","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.2","typescript":"5.1.6","@types/jest":"29.5.14","npm-run-all":"4.1.5","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.4","@forcir/eslint-config":"1.0.3","@forcir/prettier-config":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_1.0.5_1756949891933_0.3814645320092076","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"object-deep-merge","version":"2.0.0","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"author":{"url":"https://code.forcir.com","name":"Forcir Engineering","email":"engineering@forcir.com"},"license":"MIT","_id":"object-deep-merge@2.0.0","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"dist":{"shasum":"94d24cf713d4a7a143653500ff4488a2d494681f","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-2.0.0.tgz","fileCount":7,"integrity":"sha512-3DC3UMpeffLTHiuXSy/UG4NOIYTLlY9u3V82+djSCLYClWobZiS4ivYzpIUWrRY/nfsJ8cWsKyG3QfyLePmhvg==","signatures":[{"sig":"MEMCHz8MasPimnAOFPAUKiEILQ01pmPZSdRzcfEPrEijm+ECIEGK5nIW/9X6imk2C4YWQLtBOBGcSol4YiadUSuZ4Eid","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12112},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"3395689aa4d0bb5af9aeca3b66162a39154c3327","private":false,"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --runInBand","build":"run-s build:*","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","build:prepare":"rimraf dist","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage","prepublishOnly":"run-s build"},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"prettier":"@forcir/prettier-config","_npmVersion":"10.9.2","description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","directories":{},"_nodeVersion":"22.14.0","eslintConfig":{"extends":"@forcir/eslint-config"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.17.0","devDependencies":{"jest":"29.7.0","tsup":"8.5.0","eslint":"8.47.0","rimraf":"6.0.1","ts-jest":"29.1.1","ts-node":"10.9.1","prettier":"3.0.2","typescript":"5.1.6","@types/jest":"29.5.14","npm-run-all":"4.1.5","@digitak/esrun":"3.2.24","@forcir/tsconfig":"1.0.4","@forcir/eslint-config":"1.0.3","@forcir/prettier-config":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/object-deep-merge_2.0.0_1760950446996_0.5797529000723911","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"object-deep-merge","version":"2.0.1","private":false,"description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"homepage":"https://github.com/forcir/object-deep-merge","bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"license":"MIT","author":{"name":"Forcir Engineering","email":"engineering@forcir.com","url":"https://code.forcir.com"},"type":"module","main":"dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"types":"dist/index.d.ts","scripts":{"build":"run-s build:*","build:prepare":"rimraf dist","build:code":"tsup src/index.ts --format cjs,esm --dts --minify","dev":"tsup src/index.ts --format cjs,esm --dts --watch","format":"prettier --check \"**/*.{cjs,js,json,md,ts,tsx}\"","format:fix":"prettier --write \"**/*.{cjs,js,json,md,ts,tsx}\"","lint":"eslint \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","lint:fix":"eslint --fix \"**/*.{cjs,cts,js,jsx,mjs,mts,ts,tsx}\"","prepublishOnly":"run-s build","test":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --runInBand","test:coverage":"NODE_OPTIONS='--experimental-vm-modules --require ./scripts/suppress-experimental-vm-modules-warning.cjs' jest --coverage"},"prettier":"@forcir/prettier-config","devDependencies":{"@digitak/esrun":"3.2.26","@eslint/eslintrc":"3.3.5","@eslint/js":"9.26.0","@forcir/eslint-config":"1.1.0","@forcir/prettier-config":"1.0.2","@forcir/tsconfig":"1.0.5","@types/jest":"29.5.14","@typescript-eslint/parser":"8.32.1","eslint":"9.26.0","jest":"29.7.0","npm-run-all":"4.1.5","prettier":"3.0.2","rimraf":"6.1.0","ts-jest":"29.1.1","ts-node":"10.9.1","tsup":"8.5.1","typescript":"5.1.6"},"packageManager":"pnpm@10.17.0","pnpm":{"overrides":{"@typescript-eslint/eslint-plugin":"8.32.1","@typescript-eslint/parser":"8.32.1","eslint-plugin-import":"2.31.0","eslint-plugin-unicorn":"56.0.1"}},"gitHead":"cf0cbb39279fa7486785f6fd12d32d863a71efe8","_id":"object-deep-merge@2.0.1","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-aKttDKcU3pyZqKcCkDhsMn70WmZFG2JGDQLP9EcLyTSIFQRCPWLAmBZRLJnrVUrhPG1jETEEbfdgbNtJf1LyMg==","shasum":"b9437ea772af18dbb80ec1fd064f04e9d79f03d6","tarball":"https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-2.0.1.tgz","fileCount":7,"unpackedSize":12555,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGnBFKFLKEKqDbdpiJws7Vmx0weAI8r77yqnu23Ek5C6AiBV3xEDroYKAkhRaFU7l3p0Cv3Iby4O4OmOBD1Hk/OYyA=="}]},"_npmUser":{"name":"austinpaquette","email":"austin+npm@paquette.io"},"directories":{},"maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/object-deep-merge_2.0.1_1779228295491_0.8581833121505196"},"_hasShrinkwrap":false}},"time":{"created":"2023-07-16T09:03:06.983Z","modified":"2026-05-19T22:04:55.771Z","0.0.0":"2023-07-16T09:03:07.226Z","1.0.0":"2023-07-19T06:39:07.683Z","1.0.1":"2023-08-11T03:24:17.492Z","1.0.2":"2023-08-11T04:04:34.563Z","1.0.3":"2023-08-14T03:14:51.396Z","1.0.4":"2023-08-20T01:32:16.206Z","1.0.5":"2025-09-04T01:38:12.139Z","2.0.0":"2025-10-20T08:54:07.282Z","2.0.1":"2026-05-19T22:04:55.645Z"},"bugs":{"url":"https://github.com/forcir/object-deep-merge/issues"},"author":{"name":"Forcir Engineering","email":"engineering@forcir.com","url":"https://code.forcir.com"},"license":"MIT","homepage":"https://github.com/forcir/object-deep-merge","keywords":["typescript","typescript-library","type-safe","typesafe","object-merge","deep-merge","merge-object","merge-objects","deep-merge-object","object-merging","merge-options","object-deep-merge","object-deep-merging","deep-merging","deep-merge-objects"],"description":"Strongly-typed deep and recursive object merging. Considers all nested levels of objects, arrays, sets and maps.","maintainers":[{"name":"austinpaquette","email":"austin+npm@paquette.io"}],"readme":"<p align=\"center\"></p>\n<div align=\"center\">\n    <picture>\n        <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://cdn.forcir.com/oss/forcir-object-deep-merge/assets/images/logos/dark.png\" height=\"64\">\n        <source media=\"(prefers-color-scheme: light)\" srcset=\"https://cdn.forcir.com/oss/forcir-object-deep-merge/assets/images/logos/light.png\" height=\"64\">\n        <img alt=\"Forcir Object Deep Merge Logo\" src=\"https://cdn.forcir.com/oss/forcir-object-deep-merge/assets/images/logos/light.png\" height=\"64\">\n    </picture>\n</div>\n<p align=\"center\"><strong>Strongly-typed deep and recursive object merging with support for all value types.</strong></p>\n<p align=\"center\"></p>\n\n## Install\n\n```bash\npnpm add object-deep-merge\n```\n\n```bash\nyarn add object-deep-merge\n```\n\n```bash\nnpm install object-deep-merge\n```\n\n## Basic Usage\n\n```ts\nimport { merge } from \"object-deep-merge\";\n```\n\n### Simply merge two objects, with no nested properties\n\n```ts\nconst merged = merge({ foo: false }, { bar: true });\n\nconsole.log({ merged });\n```\n\n<details><summary>Output</summary>\n\n```json\n{\n    \"merged\": {\n        \"foo\": false,\n        \"bar\": true\n    }\n}\n```\n\n</details>\n\n## Typed Usage\n\n### `merge` Type Signature\n\nThe `merge` function accepts two optional type generics. `TData` and `TResult`.\n\n```ts\nfunction merge<TData extends MergeableObject = MergeableObject, TResult extends MergeableObject = TData>(\n    source: TData,\n    target: TData,\n    ...targets: Array<TData>\n): TResult;\n```\n\n> [!IMPORTANT]  \n> The [`Merge`](https://github.com/sindresorhus/type-fest/blob/main/source/merge.d.ts) and [`MergeDeep`](https://github.com/sindresorhus/type-fest/blob/main/source/merge-deep.d.ts) types from [`type-fest`](https://github.com/sindresorhus/type-fest) are great additions to this library. It is not unreasonable to use those types for your merge typing needs.\n\nWithout explicitly passing in types the function will infer the shape of the object(s) passed in.\n\n-   Passing in `TData` will validate the shape of the objects passed in.\n-   Passing in `TResult` will override the output type. While this should be used sparingly, it provides a convenient approach for correctly typing partial types into complete types.\n\n### Simple Example w/o Generics\n\n```ts\ntype Data = {\n    name: string;\n    description: string;\n};\n\nconst base: Data = { name: \"object-deep-merge\", description: \"merge objects\" };\n\nconst overrides: Partial<Data> = { description: \"merge objects, deeply\" };\n\nconst merged = merge(base, overrides);\n\n// Type is inferred so the signature becomes:\n// function merge<Partial<Data>, Partial<Data>>(source: Partial<Data>, target: Partial<Data>, ...targets: Partial<Data>[]): Partial<Data>\n\n// TData    = Partial<Data>\n// TResult  = Data\n\nconsole.log({ merged });\n```\n\n<details><summary>Output</summary>\n\n```json\n{\n    \"merged\": {\n        \"name\": \"object-deep-merge\",\n        \"description\": \"merge objects, deeply\"\n    }\n}\n```\n\n</details>\n\n### Simple Example w/ `TData` Generic\n\n> [!NOTE]\n> Passing in TData will validate the shape of the objects passed in.\n\n```ts\ntype Data = {\n    name: string;\n    description: string;\n};\n\nconst base: Data = { name: \"object-deep-merge\", description: \"merge objects\" };\n\nconst overrides: Partial<Data> = { description: \"merge objects, deeply\" };\n\nconst merged: Partial<Data> = merge<Partial<Data>>(base, overrides);\n\n// TData    = Partial<Data>\n// TResult  = Data\n\nconsole.log({ merged });\n```\n\n<details><summary>Output</summary>\n\n```json\n{\n    \"merged\": {\n        \"name\": \"object-deep-merge\",\n        \"description\": \"merge objects, deeply\"\n    }\n}\n```\n\n</details>\n\n### Simple Example w/ `TData` and `TResult` Generics\n\n> [!NOTE]\n> Passing in `TResult` will override the output type. While this should be used sparingly, it provides a convenient approach for correctly typing partial types into complete types.\n\n```ts\ntype Data = {\n    name: string;\n    description: string;\n};\n\nconst base: Data = { name: \"object-deep-merge\", description: \"merge objects\" };\n\nconst overrides: Partial<Data> = { description: \"merge objects, deeply\" };\n\nconst merged: Data = merge<Partial<Data>, Data>(base, overrides);\n\n// TData    = Partial<Data>\n// TResult  = Data\n\nconsole.log({ merged });\n```\n\n<details><summary>Output</summary>\n\n```json\n{\n    \"merged\": {\n        \"name\": \"object-deep-merge\",\n        \"description\": \"merge objects, deeply\"\n    }\n}\n```\n\n</details>\n","readmeFilename":"README.md"}