├── .commitlintrc.cjs ├── .czrc ├── .editorconfig ├── .gitattributes ├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug-report.md │ ├── config.yml │ └── feature-request.md ├── actions │ └── prepare │ │ └── action.yml ├── codecov.yml ├── labels.yml ├── renovate.json └── workflows │ ├── accessibility-alt-text-bot.yml │ ├── build.yml │ ├── done-label.yml │ ├── lint-js.yml │ ├── lint-knip.yml │ ├── lint-markdown.yml │ ├── lint-packages.yml │ ├── lint-spelling.yml │ ├── release.yml │ ├── semantic-pr.yml │ ├── stale.yml │ ├── sync-labels.yml │ ├── test-js.yml │ ├── test-types.yml │ └── typecheck.yml ├── .gitignore ├── .husky ├── .gitignore ├── commit-msg └── pre-commit ├── .lintstagedrc.yml ├── .markdownlint-cli2.jsonc ├── .npmrc ├── .nvmrc ├── .releaserc.yml ├── .vscode ├── extensions.json └── settings.json ├── CHANGELOG.md ├── CONTRIBUTING.md ├── DONATIONS.md ├── LICENSE ├── README.md ├── SECURITY.md ├── assets ├── classic-merge.gif ├── header.png └── smart-merge.gif ├── benchmark ├── .eslintrc.json ├── .gitignore ├── package.json ├── pnpm-lock.yaml ├── run.ts └── tsconfig.json ├── cspell.config.yml ├── docs ├── API.md └── deepmergeCustom.md ├── eslint.config.js ├── jsr.json ├── knip.jsonc ├── package.json ├── pnpm-lock.yaml ├── project-dictionary.txt ├── rollup.config.ts ├── src ├── actions.ts ├── deepmerge-into.ts ├── deepmerge.ts ├── defaults │ ├── general.ts │ ├── into.ts │ └── vanilla.ts ├── index.ts ├── tsconfig.build.json ├── tsconfig.json ├── types │ ├── defaults.ts │ ├── index.ts │ ├── merging.ts │ ├── options.ts │ └── utils.ts └── utils.ts ├── tests ├── deepmerge-custom.test.ts ├── deepmerge-into-custom.test.ts ├── deepmerge-into.test-d.ts ├── deepmerge-into.test.ts ├── deepmerge.test-d.ts ├── deepmerge.test.ts ├── modules │ ├── a.cjs │ ├── a.d.cts │ ├── a.d.mts │ ├── a.mjs │ ├── b.cjs │ ├── b.d.cts │ ├── b.d.mts │ └── b.mjs └── utils.ts ├── tsconfig.json └── vitest.config.ts /.commitlintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.commitlintrc.cjs -------------------------------------------------------------------------------- /.czrc: -------------------------------------------------------------------------------- 1 | { 2 | "path": "cz-conventional-changelog" 3 | } 4 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug-report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/ISSUE_TEMPLATE/bug-report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: true 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/ISSUE_TEMPLATE/feature-request.md -------------------------------------------------------------------------------- /.github/actions/prepare/action.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/actions/prepare/action.yml -------------------------------------------------------------------------------- /.github/codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/codecov.yml -------------------------------------------------------------------------------- /.github/labels.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/labels.yml -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/renovate.json -------------------------------------------------------------------------------- /.github/workflows/accessibility-alt-text-bot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/accessibility-alt-text-bot.yml -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/done-label.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/done-label.yml -------------------------------------------------------------------------------- /.github/workflows/lint-js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/lint-js.yml -------------------------------------------------------------------------------- /.github/workflows/lint-knip.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/lint-knip.yml -------------------------------------------------------------------------------- /.github/workflows/lint-markdown.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/lint-markdown.yml -------------------------------------------------------------------------------- /.github/workflows/lint-packages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/lint-packages.yml -------------------------------------------------------------------------------- /.github/workflows/lint-spelling.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/lint-spelling.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.github/workflows/semantic-pr.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/semantic-pr.yml -------------------------------------------------------------------------------- /.github/workflows/stale.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/stale.yml -------------------------------------------------------------------------------- /.github/workflows/sync-labels.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/sync-labels.yml -------------------------------------------------------------------------------- /.github/workflows/test-js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/test-js.yml -------------------------------------------------------------------------------- /.github/workflows/test-types.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/test-types.yml -------------------------------------------------------------------------------- /.github/workflows/typecheck.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.github/workflows/typecheck.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | 3 | /coverage/ 4 | /dist/ 5 | 6 | *.log 7 | -------------------------------------------------------------------------------- /.husky/.gitignore: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | pnpm exec commitlint --edit $1 2 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | pnpm exec lint-staged 2 | -------------------------------------------------------------------------------- /.lintstagedrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.lintstagedrc.yml -------------------------------------------------------------------------------- /.markdownlint-cli2.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.markdownlint-cli2.jsonc -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.npmrc -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 24.11.0 2 | -------------------------------------------------------------------------------- /.releaserc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.releaserc.yml -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /DONATIONS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/DONATIONS.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/SECURITY.md -------------------------------------------------------------------------------- /assets/classic-merge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/assets/classic-merge.gif -------------------------------------------------------------------------------- /assets/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/assets/header.png -------------------------------------------------------------------------------- /assets/smart-merge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/assets/smart-merge.gif -------------------------------------------------------------------------------- /benchmark/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/benchmark/.eslintrc.json -------------------------------------------------------------------------------- /benchmark/.gitignore: -------------------------------------------------------------------------------- 1 | data.json 2 | -------------------------------------------------------------------------------- /benchmark/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/benchmark/package.json -------------------------------------------------------------------------------- /benchmark/pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/benchmark/pnpm-lock.yaml -------------------------------------------------------------------------------- /benchmark/run.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/benchmark/run.ts -------------------------------------------------------------------------------- /benchmark/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/benchmark/tsconfig.json -------------------------------------------------------------------------------- /cspell.config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/cspell.config.yml -------------------------------------------------------------------------------- /docs/API.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/docs/API.md -------------------------------------------------------------------------------- /docs/deepmergeCustom.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/docs/deepmergeCustom.md -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/eslint.config.js -------------------------------------------------------------------------------- /jsr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/jsr.json -------------------------------------------------------------------------------- /knip.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/knip.jsonc -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /project-dictionary.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/project-dictionary.txt -------------------------------------------------------------------------------- /rollup.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/rollup.config.ts -------------------------------------------------------------------------------- /src/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/actions.ts -------------------------------------------------------------------------------- /src/deepmerge-into.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/deepmerge-into.ts -------------------------------------------------------------------------------- /src/deepmerge.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/deepmerge.ts -------------------------------------------------------------------------------- /src/defaults/general.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/defaults/general.ts -------------------------------------------------------------------------------- /src/defaults/into.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/defaults/into.ts -------------------------------------------------------------------------------- /src/defaults/vanilla.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/defaults/vanilla.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/tsconfig.build.json -------------------------------------------------------------------------------- /src/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/tsconfig.json -------------------------------------------------------------------------------- /src/types/defaults.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/types/defaults.ts -------------------------------------------------------------------------------- /src/types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/types/index.ts -------------------------------------------------------------------------------- /src/types/merging.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/types/merging.ts -------------------------------------------------------------------------------- /src/types/options.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/types/options.ts -------------------------------------------------------------------------------- /src/types/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/types/utils.ts -------------------------------------------------------------------------------- /src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/src/utils.ts -------------------------------------------------------------------------------- /tests/deepmerge-custom.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge-custom.test.ts -------------------------------------------------------------------------------- /tests/deepmerge-into-custom.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge-into-custom.test.ts -------------------------------------------------------------------------------- /tests/deepmerge-into.test-d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge-into.test-d.ts -------------------------------------------------------------------------------- /tests/deepmerge-into.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge-into.test.ts -------------------------------------------------------------------------------- /tests/deepmerge.test-d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge.test-d.ts -------------------------------------------------------------------------------- /tests/deepmerge.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/deepmerge.test.ts -------------------------------------------------------------------------------- /tests/modules/a.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | age: 30, 3 | }; 4 | -------------------------------------------------------------------------------- /tests/modules/a.d.cts: -------------------------------------------------------------------------------- 1 | declare type A = { 2 | age: number; 3 | }; 4 | 5 | export = A; 6 | -------------------------------------------------------------------------------- /tests/modules/a.d.mts: -------------------------------------------------------------------------------- 1 | export const age: number; 2 | -------------------------------------------------------------------------------- /tests/modules/a.mjs: -------------------------------------------------------------------------------- 1 | export const age = 30; 2 | -------------------------------------------------------------------------------- /tests/modules/b.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | name: "alice", 3 | }; 4 | -------------------------------------------------------------------------------- /tests/modules/b.d.cts: -------------------------------------------------------------------------------- 1 | declare type B = { 2 | name: string; 3 | }; 4 | 5 | export = B; 6 | -------------------------------------------------------------------------------- /tests/modules/b.d.mts: -------------------------------------------------------------------------------- 1 | export const name: string; 2 | -------------------------------------------------------------------------------- /tests/modules/b.mjs: -------------------------------------------------------------------------------- 1 | export const name = "alice"; 2 | -------------------------------------------------------------------------------- /tests/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tests/utils.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vitest.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RebeccaStevens/deepmerge-ts/HEAD/vitest.config.ts --------------------------------------------------------------------------------