deepmerge-ts
Advanced tools
Comparing version 3.0.0-beta.5 to 3.0.0-beta.6
# Changelog | ||
All notable changes to this project will be documented in this file. Dates are displayed in UTC. | ||
# [3.0.0-beta.6](https://github.com/RebeccaStevens/deepmerge-ts/compare/v3.0.0-beta.5...v3.0.0-beta.6) (2022-02-17) | ||
### Bug Fixes | ||
* update legacy types ([67fc4f9](https://github.com/RebeccaStevens/deepmerge-ts/commit/67fc4f959ee8fbd62dc2c7dc9bbb423d769d5bce)) | ||
# [3.0.0-beta.5](https://github.com/RebeccaStevens/deepmerge-ts/compare/v3.0.0-beta.4...v3.0.0-beta.5) (2022-02-16) | ||
@@ -5,0 +12,0 @@ |
@@ -8,11 +8,14 @@ /** | ||
declare type MetaDataUpdater<M, MM extends Record<keyof any, any>> = (previousMeta: M | undefined, metaMeta: MM) => M; | ||
/** | ||
* All the options the user can pass to customize deepmerge. | ||
*/ | ||
declare type DeepMergeOptionsFull = Readonly<{ | ||
mergeRecords: DeepMergeMergeFunctions["mergeRecords"] | false; | ||
mergeArrays: DeepMergeMergeFunctions["mergeArrays"] | false; | ||
mergeMaps: DeepMergeMergeFunctions["mergeMaps"] | false; | ||
mergeSets: DeepMergeMergeFunctions["mergeSets"] | false; | ||
mergeOthers: DeepMergeMergeFunctions["mergeOthers"]; | ||
declare type DeepMergeOptionsFull<M, MM extends Record<keyof any, any>> = Readonly<{ | ||
mergeRecords: DeepMergeMergeFunctions<M, MM>["mergeRecords"] | false; | ||
mergeArrays: DeepMergeMergeFunctions<M, MM>["mergeArrays"] | false; | ||
mergeMaps: DeepMergeMergeFunctions<M, MM>["mergeMaps"] | false; | ||
mergeSets: DeepMergeMergeFunctions<M, MM>["mergeSets"] | false; | ||
mergeOthers: DeepMergeMergeFunctions<M, MM>["mergeOthers"]; | ||
metaDataUpdater: MetaDataUpdater<M, MM>; | ||
}>; | ||
@@ -23,8 +26,8 @@ | ||
*/ | ||
declare type DeepMergeMergeFunctions = Readonly<{ | ||
mergeRecords: <Ts extends Readonly<ReadonlyArray<Readonly<Record<keyof any, any>>>>, U extends DeepMergeMergeFunctionUtils>(records: Ts, utils: U) => any; | ||
mergeArrays: <Ts extends Readonly<ReadonlyArray<Readonly<ReadonlyArray<any>>>>, U extends DeepMergeMergeFunctionUtils>(records: Ts, utils: U) => any; | ||
mergeMaps: <Ts extends Readonly<ReadonlyArray<Readonly<ReadonlyMap<any, any>>>>, U extends DeepMergeMergeFunctionUtils>(records: Ts, utils: U) => any; | ||
mergeSets: <Ts extends Readonly<ReadonlyArray<Readonly<ReadonlySet<any>>>>, U extends DeepMergeMergeFunctionUtils>(records: Ts, utils: U) => any; | ||
mergeOthers: <Ts extends Readonly<ReadonlyArray<any>>, U extends DeepMergeMergeFunctionUtils>(records: Ts, utils: U) => any; | ||
declare type DeepMergeMergeFunctions<M, MM extends Record<keyof any, any>> = Readonly<{ | ||
mergeRecords: <Ts extends ReadonlyArray<Readonly<Record<keyof any, any>>>, U extends DeepMergeMergeFunctionUtils<M, MM>>(records: Ts, utils: U, meta: M | undefined) => any; | ||
mergeArrays: <Ts extends ReadonlyArray<ReadonlyArray<any>>, U extends DeepMergeMergeFunctionUtils<M, MM>>(records: Ts, utils: U, meta: M | undefined) => any; | ||
mergeMaps: <Ts extends ReadonlyArray<Readonly<ReadonlyMap<any, any>>>, U extends DeepMergeMergeFunctionUtils<M, MM>>(records: Ts, utils: U, meta: M | undefined) => any; | ||
mergeSets: <Ts extends ReadonlyArray<Readonly<ReadonlySet<any>>>, U extends DeepMergeMergeFunctionUtils<M, MM>>(records: Ts, utils: U, meta: M | undefined) => any; | ||
mergeOthers: <Ts extends ReadonlyArray<any>, U extends DeepMergeMergeFunctionUtils<M, MM>>(records: Ts, utils: U, meta: M | undefined) => any; | ||
}>; | ||
@@ -35,6 +38,7 @@ | ||
*/ | ||
declare type DeepMergeMergeFunctionUtils = Readonly<{ | ||
mergeFunctions: DeepMergeMergeFunctions; | ||
defaultMergeFunctions: DeepMergeMergeFunctionsDefaults; | ||
deepmerge: <Ts extends Readonly<ReadonlyArray<any>>>(...values: Ts) => any; | ||
declare type DeepMergeMergeFunctionUtils<M, MM extends Record<keyof any, any>> = Readonly<{ | ||
mergeFunctions: DeepMergeMergeFunctions<M, MM>; | ||
defaultMergeFunctions: DeepMergeMergeFunctionsDefaults<M, MM>; | ||
metaDataUpdater: MetaDataUpdater<M, MM>; | ||
deepmerge: <Ts extends ReadonlyArray<any>>(...values: Ts) => any; | ||
}>; | ||
@@ -45,8 +49,8 @@ | ||
*/ | ||
declare type DeepMergeMergeFunctionsDefaults = Readonly<{ | ||
mergeMaps: (values: Record<keyof any, any>[], utils: DeepMergeMergeFunctionUtils) => any; | ||
mergeSets: (values: any[][], utils: DeepMergeMergeFunctionUtils) => any; | ||
mergeArrays: (values: Set<any>[], utils: DeepMergeMergeFunctionUtils) => any; | ||
mergeRecords: (values: Map<any, any>[], utils: DeepMergeMergeFunctionUtils) => any; | ||
mergeOthers: (values: any[], utils: DeepMergeMergeFunctionUtils) => any; | ||
declare type DeepMergeMergeFunctionsDefaults<M, MM extends Record<keyof any, any>> = Readonly<{ | ||
mergeMaps: (values: Record<keyof any, any>[]) => any; | ||
mergeSets: (values: any[][]) => any; | ||
mergeArrays: (values: Set<any>[]) => any; | ||
mergeRecords: (values: Map<any, any>[], utils: DeepMergeMergeFunctionUtils<M, MM>, meta: M | undefined) => any; | ||
mergeOthers: (values: any[]) => any; | ||
}>; | ||
@@ -73,8 +77,9 @@ | ||
/** | ||
* Deeply merge two or more objects using the given options. | ||
* Deeply merge two or more objects using the given options and meta data. | ||
* | ||
* @param options - The options on how to customize the merge function. | ||
* @param rootMetaData - The meta data passed to the root items' being merged. | ||
*/ | ||
declare function deepmergeCustom(options: Partial<DeepMergeOptionsFull>): (...objects: any[]) => any; | ||
declare function deepmergeCustom(options: Partial<DeepMergeOptionsFull<any, any>>, rootMetaData?: any): (...objects: any[]) => any; | ||
export { deepmerge, deepmergeCustom }; |
{ | ||
"name": "deepmerge-ts", | ||
"version": "3.0.0-beta.5", | ||
"version": "3.0.0-beta.6", | ||
"description": "Deeply merge 2 or more objects respecting type information.", | ||
@@ -90,2 +90,3 @@ "keywords": [ | ||
"@commitlint/config-conventional": "^16.0.0", | ||
"@cspell/dict-cryptocurrencies": "^2.0.0", | ||
"@istanbuljs/nyc-config-typescript": "^1.0.2", | ||
@@ -92,0 +93,0 @@ "@rebeccastevens/eslint-config": "^1.3.1", |
@@ -6,3 +6,3 @@ <div align="center"> | ||
[![npm version](https://img.shields.io/npm/v/deepmerge-ts.svg)](https://www.npmjs.com/package/deepmerge-ts) | ||
[![deno version](https://img.shields.io/github/v/tag/RebeccaStevens/deepmerge-ts?label=deno)](https://deno.land/x/deepmergets) | ||
[![deno version](https://img.shields.io/github/v/tag/RebeccaStevens/deepmerge-ts?label=deno&sort=semver)](https://deno.land/x/deepmergets) | ||
[![CI](https://github.com/RebeccaStevens/deepmerge-ts/actions/workflows/ci.yml/badge.svg)](https://github.com/RebeccaStevens/deepmerge-ts/actions/workflows/ci.yml) | ||
@@ -22,2 +22,6 @@ [![Coverage Status](https://codecov.io/gh/RebeccaStevens/deepmerge-ts/branch/main/graph/badge.svg?token=MVpR1oAbIT)](https://codecov.io/gh/RebeccaStevens/deepmerge-ts)\ | ||
## Donate | ||
[Any donations would be much appreciated](./DONATIONS.md). 😄 | ||
## Installation | ||
@@ -24,0 +28,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
57622
936
139
57