@dereekb/util 4.0.1 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/LICENSE +21 -0
- package/package.json +6 -2
- package/src/lib/array/array.boolean.d.ts +3 -3
- package/src/lib/array/array.boolean.js +4 -4
- package/src/lib/array/array.boolean.js.map +1 -1
- package/src/lib/array/array.d.ts +3 -3
- package/src/lib/array/array.filter.js +1 -1
- package/src/lib/array/array.filter.js.map +1 -1
- package/src/lib/array/array.index.d.ts +1 -1
- package/src/lib/array/array.index.js +2 -2
- package/src/lib/array/array.index.js.map +1 -1
- package/src/lib/array/array.js +3 -3
- package/src/lib/array/array.js.map +1 -1
- package/src/lib/array/array.limit.d.ts +3 -3
- package/src/lib/array/array.make.d.ts +1 -1
- package/src/lib/array/array.make.js +2 -2
- package/src/lib/array/array.make.js.map +1 -1
- package/src/lib/array/array.map.d.ts +2 -2
- package/src/lib/array/array.map.js +3 -3
- package/src/lib/array/array.map.js.map +1 -1
- package/src/lib/array/array.number.d.ts +3 -3
- package/src/lib/array/array.number.js +1 -1
- package/src/lib/array/array.number.js.map +1 -1
- package/src/lib/array/array.string.d.ts +1 -1
- package/src/lib/array/array.string.js +1 -1
- package/src/lib/array/array.string.js.map +1 -1
- package/src/lib/array/array.unique.d.ts +3 -3
- package/src/lib/array/array.unique.js.map +1 -1
- package/src/lib/array/array.value.d.ts +1 -1
- package/src/lib/array/array.value.js +2 -2
- package/src/lib/array/array.value.js.map +1 -1
- package/src/lib/assertion/assert.error.d.ts +1 -1
- package/src/lib/assertion/assert.error.js +1 -1
- package/src/lib/assertion/assert.error.js.map +1 -1
- package/src/lib/assertion/assertion.d.ts +2 -2
- package/src/lib/assertion/assertion.generic.d.ts +2 -2
- package/src/lib/assertion/assertion.js.map +1 -1
- package/src/lib/assertion/assertion.number.d.ts +1 -1
- package/src/lib/assertion/assertion.number.js.map +1 -1
- package/src/lib/auth/auth.role.claims.d.ts +43 -24
- package/src/lib/auth/auth.role.claims.js +18 -7
- package/src/lib/auth/auth.role.claims.js.map +1 -1
- package/src/lib/auth/auth.role.d.ts +1 -1
- package/src/lib/auth/auth.role.js.map +1 -1
- package/src/lib/boolean.d.ts +1 -1
- package/src/lib/boolean.js +1 -1
- package/src/lib/boolean.js.map +1 -1
- package/src/lib/contact/domain.d.ts +1 -1
- package/src/lib/contact/domain.js.map +1 -1
- package/src/lib/contact/email.d.ts +1 -2
- package/src/lib/contact/email.js +2 -2
- package/src/lib/contact/email.js.map +1 -1
- package/src/lib/date/date.d.ts +1 -1
- package/src/lib/date/date.js +1 -1
- package/src/lib/date/date.js.map +1 -1
- package/src/lib/date/date.time.d.ts +1 -1
- package/src/lib/error/error.d.ts +7 -3
- package/src/lib/error/error.js +8 -6
- package/src/lib/error/error.js.map +1 -1
- package/src/lib/error/error.server.d.ts +2 -2
- package/src/lib/error/error.server.js.map +1 -1
- package/src/lib/filter/filter.d.ts +3 -3
- package/src/lib/filter/filter.js +3 -3
- package/src/lib/filter/filter.js.map +1 -1
- package/src/lib/function/function.d.ts +7 -0
- package/src/lib/function/function.forward.d.ts +3 -3
- package/src/lib/function/function.forward.js +2 -0
- package/src/lib/function/function.forward.js.map +1 -1
- package/src/lib/function/function.js +14 -0
- package/src/lib/function/function.js.map +1 -0
- package/src/lib/function/index.d.ts +1 -0
- package/src/lib/function/index.js +1 -0
- package/src/lib/function/index.js.map +1 -1
- package/src/lib/getter/getter.cache.d.ts +3 -3
- package/src/lib/getter/getter.cache.js +2 -2
- package/src/lib/getter/getter.cache.js.map +1 -1
- package/src/lib/getter/getter.d.ts +5 -5
- package/src/lib/getter/getter.js +1 -1
- package/src/lib/getter/getter.js.map +1 -1
- package/src/lib/getter/getter.map.d.ts +2 -2
- package/src/lib/grouping.d.ts +2 -2
- package/src/lib/grouping.js +7 -7
- package/src/lib/grouping.js.map +1 -1
- package/src/lib/hash.js +2 -2
- package/src/lib/hash.js.map +1 -1
- package/src/lib/index.d.ts +1 -0
- package/src/lib/index.js +1 -0
- package/src/lib/index.js.map +1 -1
- package/src/lib/iterable/iterable.d.ts +2 -2
- package/src/lib/iterable/iterable.js +1 -1
- package/src/lib/iterable/iterable.js.map +1 -1
- package/src/lib/iterate.js.map +1 -1
- package/src/lib/key.d.ts +1 -1
- package/src/lib/map/map.d.ts +11 -3
- package/src/lib/map/map.js +15 -1
- package/src/lib/map/map.js.map +1 -1
- package/src/lib/misc/host.d.ts +1 -1
- package/src/lib/model/index.d.ts +1 -0
- package/src/lib/model/index.js +1 -0
- package/src/lib/model/index.js.map +1 -1
- package/src/lib/model/model.conversion.d.ts +77 -50
- package/src/lib/model/model.conversion.field.d.ts +8 -0
- package/src/lib/model/model.conversion.field.js +23 -0
- package/src/lib/model/model.conversion.field.js.map +1 -0
- package/src/lib/model/model.conversion.js +45 -30
- package/src/lib/model/model.conversion.js.map +1 -1
- package/src/lib/model/model.copy.d.ts +4 -4
- package/src/lib/model/model.copy.js.map +1 -1
- package/src/lib/model/model.d.ts +1 -1
- package/src/lib/model/model.js +4 -4
- package/src/lib/model/model.js.map +1 -1
- package/src/lib/number/random.js +2 -2
- package/src/lib/number/random.js.map +1 -1
- package/src/lib/number/round.js.map +1 -1
- package/src/lib/object/object.array.d.ts +1 -1
- package/src/lib/object/object.array.js +1 -1
- package/src/lib/object/object.array.js.map +1 -1
- package/src/lib/object/object.d.ts +13 -9
- package/src/lib/object/object.js +13 -13
- package/src/lib/object/object.js.map +1 -1
- package/src/lib/object/object.map.d.ts +5 -5
- package/src/lib/object/object.map.js +1 -1
- package/src/lib/object/object.map.js.map +1 -1
- package/src/lib/page/page.calculator.d.ts +1 -1
- package/src/lib/page/page.calculator.js.map +1 -1
- package/src/lib/page/page.d.ts +1 -1
- package/src/lib/page/page.filter.d.ts +3 -3
- package/src/lib/page/page.filter.js.map +1 -1
- package/src/lib/page/page.js +1 -1
- package/src/lib/page/page.js.map +1 -1
- package/src/lib/promise/is.js +1 -1
- package/src/lib/promise/is.js.map +1 -1
- package/src/lib/promise/map.d.ts +1 -1
- package/src/lib/promise/poll.js +1 -1
- package/src/lib/promise/poll.js.map +1 -1
- package/src/lib/promise/promise.d.ts +8 -8
- package/src/lib/promise/promise.js +12 -13
- package/src/lib/promise/promise.js.map +1 -1
- package/src/lib/promise/promise.loop.d.ts +1 -1
- package/src/lib/promise/promise.loop.js +19 -21
- package/src/lib/promise/promise.loop.js.map +1 -1
- package/src/lib/promise/promise.ref.d.ts +3 -3
- package/src/lib/promise/promise.ref.js +2 -2
- package/src/lib/promise/promise.ref.js.map +1 -1
- package/src/lib/promise/wait.js +1 -1
- package/src/lib/promise/wait.js.map +1 -1
- package/src/lib/relation/relation.js +1 -2
- package/src/lib/relation/relation.js.map +1 -1
- package/src/lib/service/handler.config.d.ts +48 -0
- package/src/lib/service/handler.config.js +61 -0
- package/src/lib/service/handler.config.js.map +1 -0
- package/src/lib/service/handler.d.ts +47 -0
- package/src/lib/service/handler.js +54 -0
- package/src/lib/service/handler.js.map +1 -0
- package/src/lib/service/index.d.ts +2 -0
- package/src/lib/service/index.js +6 -0
- package/src/lib/service/index.js.map +1 -0
- package/src/lib/set/set.allowed.d.ts +1 -1
- package/src/lib/set/set.hashset.d.ts +3 -3
- package/src/lib/set/set.hashset.js +4 -4
- package/src/lib/set/set.hashset.js.map +1 -1
- package/src/lib/set/set.js +3 -3
- package/src/lib/set/set.js.map +1 -1
- package/src/lib/set/set.maybe.d.ts +1 -1
- package/src/lib/sort.js +1 -1
- package/src/lib/sort.js.map +1 -1
- package/src/lib/storage/storage.error.js +6 -2
- package/src/lib/storage/storage.error.js.map +1 -1
- package/src/lib/storage/storage.memory.d.ts +1 -1
- package/src/lib/storage/storage.memory.js +2 -1
- package/src/lib/storage/storage.memory.js.map +1 -1
- package/src/lib/storage/storage.object.js +3 -1
- package/src/lib/storage/storage.object.js.map +1 -1
- package/src/lib/string.d.ts +7 -4
- package/src/lib/string.js +2 -2
- package/src/lib/string.js.map +1 -1
- package/src/lib/tree/tree.array.d.ts +2 -2
- package/src/lib/tree/tree.array.js +2 -0
- package/src/lib/tree/tree.array.js.map +1 -1
- package/src/lib/tree/tree.expand.d.ts +2 -2
- package/src/lib/tree/tree.expand.js +4 -3
- package/src/lib/tree/tree.expand.js.map +1 -1
- package/src/lib/tree/tree.flatten.d.ts +7 -7
- package/src/lib/tree/tree.flatten.js.map +1 -1
- package/src/lib/tree/tree.js +2 -0
- package/src/lib/tree/tree.js.map +1 -1
- package/src/lib/type.d.ts +31 -5
- package/src/lib/value/build.d.ts +18 -0
- package/src/lib/value/build.js +16 -0
- package/src/lib/value/build.js.map +1 -0
- package/src/lib/value/equal.d.ts +3 -3
- package/src/lib/value/equal.js +1 -1
- package/src/lib/value/equal.js.map +1 -1
- package/src/lib/value/index.d.ts +1 -0
- package/src/lib/value/index.js +1 -0
- package/src/lib/value/index.js.map +1 -1
- package/src/lib/value/map.d.ts +25 -1
- package/src/lib/value/map.js +39 -0
- package/src/lib/value/map.js.map +1 -1
- package/src/lib/value/maybe.d.ts +12 -13
- package/src/lib/value/maybe.js +3 -13
- package/src/lib/value/maybe.js.map +1 -1
- package/src/lib/value/modifier.d.ts +2 -2
- package/src/lib/value/modifier.js.map +1 -1
- package/test/CHANGELOG.md +12 -0
- package/test/package.json +2 -3
- package/test/src/lib/jest.function.d.ts +1 -1
- package/test/src/lib/jest.js.map +1 -1
- package/test/src/lib/jest.wrap.d.ts +1 -1
- package/test/src/lib/jest.wrap.js.map +1 -1
- package/src/lib/context/context.d.ts +0 -1
- package/src/lib/context/context.js +0 -6
- package/src/lib/context/context.js.map +0 -1
- package/src/lib/context/index.d.ts +0 -0
- package/src/lib/context/index.js +0 -2
- package/src/lib/context/index.js.map +0 -1
|
@@ -33,7 +33,7 @@ export declare type StringOrGetter = GetterOrValue<string>;
|
|
|
33
33
|
* @param value
|
|
34
34
|
* @returns
|
|
35
35
|
*/
|
|
36
|
-
export declare function isGetter<T =
|
|
36
|
+
export declare function isGetter<T = unknown>(value: unknown): value is Getter<T>;
|
|
37
37
|
/**
|
|
38
38
|
* If the input is a function, it is executed. Otherwise, the value is returned.
|
|
39
39
|
*
|
|
@@ -41,10 +41,10 @@ export declare function isGetter<T = any>(value: any): value is Getter<T>;
|
|
|
41
41
|
* @returns
|
|
42
42
|
*/
|
|
43
43
|
export declare function getValueFromGetter<T>(input: GetterOrValue<T>): T;
|
|
44
|
-
export declare function getValueFromGetter<T>(this:
|
|
45
|
-
export declare function getValueFromGetter<T>(this:
|
|
46
|
-
export declare function getValueFromGetter<T, A>(this:
|
|
47
|
-
export declare function getValueFromGetter<T extends string | number | object | symbol, A>(this:
|
|
44
|
+
export declare function getValueFromGetter<T>(this: unknown, input: GetterOrValue<T>): T;
|
|
45
|
+
export declare function getValueFromGetter<T>(this: unknown, input: GetterOrValue<T>, inputArgs?: unknown): T;
|
|
46
|
+
export declare function getValueFromGetter<T, A>(this: unknown, input: GetterOrFactoryWithInput<T, A>, args?: A): T;
|
|
47
|
+
export declare function getValueFromGetter<T extends string | number | object | symbol, A>(this: unknown, input: GetterOrValueWithInput<T, A>, args?: A): T;
|
|
48
48
|
/**
|
|
49
49
|
* Returns the input as a getter.
|
|
50
50
|
*
|
package/src/lib/getter/getter.js
CHANGED
|
@@ -8,7 +8,7 @@ exports.makeGetter = exports.asGetter = exports.getValueFromGetter = exports.isG
|
|
|
8
8
|
* @returns
|
|
9
9
|
*/
|
|
10
10
|
function isGetter(value) {
|
|
11
|
-
return
|
|
11
|
+
return typeof value === 'function';
|
|
12
12
|
}
|
|
13
13
|
exports.isGetter = isGetter;
|
|
14
14
|
function getValueFromGetter(input, args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/getter/getter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/getter/getter.ts"],"names":[],"mappings":";;;AAqCA;;;;;GAKG;AACH,SAAgB,QAAQ,CAAc,KAAc;IAClD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC;AAFD,4BAEC;AAaD,SAAgB,kBAAkB,CAAsB,KAAc,EAAE,IAAQ;IAC9E,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;KACpB;SAAM;QACL,OAAO,KAAU,CAAC;KACnB;AACH,CAAC;AAND,gDAMC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAI,KAAuB;IACjD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;QAC/B,OAAO,KAAkB,CAAC;KAC3B;SAAM;QACL,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1B;AACH,CAAC;AAND,4BAMC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAI,KAAQ;IACpC,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;AACrB,CAAC;AAFD,gCAEC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MapFunction } from
|
|
2
|
-
import { Getter } from
|
|
1
|
+
import { MapFunction } from '../value/map';
|
|
2
|
+
import { Getter } from './getter';
|
|
3
3
|
export declare type MapGetterFactory<I, O> = (input: Getter<I>) => Getter<O>;
|
|
4
4
|
/**
|
|
5
5
|
* Maps the input getter.
|
package/src/lib/grouping.d.ts
CHANGED
package/src/lib/grouping.js
CHANGED
|
@@ -29,7 +29,7 @@ exports.batch = batch;
|
|
|
29
29
|
*/
|
|
30
30
|
function restoreOrderWithValues(orderValues, values, params) {
|
|
31
31
|
const { readKey } = params;
|
|
32
|
-
const orderKeys = orderValues.map(x => readKey(x));
|
|
32
|
+
const orderKeys = orderValues.map((x) => readKey(x));
|
|
33
33
|
return restoreOrder(orderKeys, values, params);
|
|
34
34
|
}
|
|
35
35
|
exports.restoreOrderWithValues = restoreOrderWithValues;
|
|
@@ -46,7 +46,7 @@ function restoreOrder(orderKeys, values, { readKey, chooseRetainedValue = (value
|
|
|
46
46
|
valuesMap.forEach((values, key) => {
|
|
47
47
|
const index = orderKeysMap.get(key);
|
|
48
48
|
function getValue() {
|
|
49
|
-
return
|
|
49
|
+
return values.length > 1 ? chooseRetainedValue(values) : values[0];
|
|
50
50
|
}
|
|
51
51
|
if (index != null) {
|
|
52
52
|
restoredOrder[index] = getValue();
|
|
@@ -55,7 +55,7 @@ function restoreOrder(orderKeys, values, { readKey, chooseRetainedValue = (value
|
|
|
55
55
|
newItems.push(getValue());
|
|
56
56
|
}
|
|
57
57
|
});
|
|
58
|
-
const result = [...restoredOrder, ...newItems].filter(x => x !== undefined); // Allow null to be passed.
|
|
58
|
+
const result = [...restoredOrder, ...newItems].filter((x) => x !== undefined); // Allow null to be passed.
|
|
59
59
|
return result;
|
|
60
60
|
}
|
|
61
61
|
exports.restoreOrder = restoreOrder;
|
|
@@ -92,7 +92,7 @@ function pairGroupValues(values, groupKeyFn) {
|
|
|
92
92
|
const map = makeValuesGroupMap(values, groupKeyFn);
|
|
93
93
|
const pairs = [];
|
|
94
94
|
const unpaired = [];
|
|
95
|
-
map.forEach((x
|
|
95
|
+
map.forEach((x) => {
|
|
96
96
|
if (x.length === 1) {
|
|
97
97
|
unpaired.push(x[0]);
|
|
98
98
|
}
|
|
@@ -114,7 +114,7 @@ exports.pairGroupValues = pairGroupValues;
|
|
|
114
114
|
* @returns
|
|
115
115
|
*/
|
|
116
116
|
function makeKeyPairs(values, keyFn) {
|
|
117
|
-
return values.map(x =>
|
|
117
|
+
return values.map((x) => [keyFn(x), x]);
|
|
118
118
|
}
|
|
119
119
|
exports.makeKeyPairs = makeKeyPairs;
|
|
120
120
|
/**
|
|
@@ -126,7 +126,7 @@ exports.makeKeyPairs = makeKeyPairs;
|
|
|
126
126
|
*/
|
|
127
127
|
function separateValues(values, checkInclusion) {
|
|
128
128
|
const result = groupValues(values, (x) => {
|
|
129
|
-
return
|
|
129
|
+
return checkInclusion(x) ? 'in' : 'out';
|
|
130
130
|
});
|
|
131
131
|
return {
|
|
132
132
|
included: result.in || [],
|
|
@@ -150,7 +150,7 @@ function makeValuesGroupMap(values, groupKeyFn) {
|
|
|
150
150
|
const map = new Map();
|
|
151
151
|
values.forEach((x) => {
|
|
152
152
|
const key = groupKeyFn(x);
|
|
153
|
-
|
|
153
|
+
const array = map.get(key);
|
|
154
154
|
if (array != null) {
|
|
155
155
|
array.push(x);
|
|
156
156
|
}
|
package/src/lib/grouping.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grouping.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/grouping.ts"],"names":[],"mappings":";;;AACA,qCAAuC;AA4CvC,kBAAkB;AAClB;;;;;;GAMG;AACH,SAAgB,KAAK,CAAI,KAAU,EAAE,SAAiB;IACpD,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAW,CAAC,CAAC,CAAC,iCAAiC;IACjE,MAAM,KAAK,GAAG,EAAE,CAAC;IAEjB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;KACxC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AATD,sBASC;AAED;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CAA2C,WAAgB,EAAE,MAAW,EAAE,MAAgC;IAC9I,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC3B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"grouping.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/grouping.ts"],"names":[],"mappings":"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"}
|
package/src/lib/hash.js
CHANGED
|
@@ -8,13 +8,13 @@ function decodeHashedValues(hashedValues, decodeValues, hashFn) {
|
|
|
8
8
|
}
|
|
9
9
|
exports.decodeHashedValues = decodeHashedValues;
|
|
10
10
|
function makeHashDecodeMap(decodeValues, hashFn) {
|
|
11
|
-
const keyValuePairs = decodeValues.map(x => [hashFn(x), x]);
|
|
11
|
+
const keyValuePairs = decodeValues.map((x) => [hashFn(x), x]);
|
|
12
12
|
const map = new Map(keyValuePairs);
|
|
13
13
|
return map;
|
|
14
14
|
}
|
|
15
15
|
exports.makeHashDecodeMap = makeHashDecodeMap;
|
|
16
16
|
function decodeHashedValuesWithDecodeMap(hashedValues, decodeMap) {
|
|
17
|
-
const values = hashedValues.map(x => decodeMap.get(x));
|
|
17
|
+
const values = hashedValues.map((x) => decodeMap.get(x));
|
|
18
18
|
return (0, array_1.filterMaybeValues)(values);
|
|
19
19
|
}
|
|
20
20
|
exports.decodeHashedValuesWithDecodeMap = decodeHashedValuesWithDecodeMap;
|
package/src/lib/hash.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/hash.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAM5C,SAAgB,kBAAkB,CAAC,YAAsB,EAAE,YAAsB,EAAE,MAAiC;IAClH,MAAM,aAAa,GAAG,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,+BAA+B,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AACtE,CAAC;AAHD,gDAGC;AAED,SAAgB,iBAAiB,CAAC,YAAsB,EAAE,MAAiC;IACzF,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/hash.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAM5C,SAAgB,kBAAkB,CAAC,YAAsB,EAAE,YAAsB,EAAE,MAAiC;IAClH,MAAM,aAAa,GAAG,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,+BAA+B,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AACtE,CAAC;AAHD,gDAGC;AAED,SAAgB,iBAAiB,CAAC,YAAsB,EAAE,MAAiC;IACzF,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAC,CAAC;IAClF,MAAM,GAAG,GAAkB,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,OAAO,GAAG,CAAC;AACb,CAAC;AAJD,8CAIC;AAED,SAAgB,+BAA+B,CAAC,YAAsB,EAAE,SAAwB;IAC9F,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,IAAA,yBAAiB,EAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAHD,0EAGC"}
|
package/src/lib/index.d.ts
CHANGED
package/src/lib/index.js
CHANGED
|
@@ -15,6 +15,7 @@ tslib_1.__exportStar(require("./model"), exports);
|
|
|
15
15
|
tslib_1.__exportStar(require("./misc"), exports);
|
|
16
16
|
tslib_1.__exportStar(require("./promise"), exports);
|
|
17
17
|
tslib_1.__exportStar(require("./relation"), exports);
|
|
18
|
+
tslib_1.__exportStar(require("./service"), exports);
|
|
18
19
|
tslib_1.__exportStar(require("./set"), exports);
|
|
19
20
|
tslib_1.__exportStar(require("./storage"), exports);
|
|
20
21
|
tslib_1.__exportStar(require("./tree"), exports);
|
package/src/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,sDAA4B;AAC5B,iDAAuB;AACvB,oDAA0B;AAC1B,kDAAwB;AACxB,mDAAyB;AACzB,qDAA2B;AAC3B,mDAAyB;AACzB,qDAA2B;AAC3B,gDAAsB;AACtB,kDAAwB;AACxB,iDAAuB;AACvB,oDAA0B;AAC1B,qDAA2B;AAC3B,gDAAsB;AACtB,oDAA0B;AAC1B,iDAAuB;AACvB,kDAAwB;AACxB,oDAA0B;AAC1B,iDAAuB;AACvB,sDAA4B;AAC5B,qDAA2B;AAC3B,iDAAuB;AACvB,oDAA0B;AAC1B,gDAAsB;AACtB,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,iDAAuB;AACvB,mDAAyB;AACzB,iDAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,sDAA4B;AAC5B,iDAAuB;AACvB,oDAA0B;AAC1B,kDAAwB;AACxB,mDAAyB;AACzB,qDAA2B;AAC3B,mDAAyB;AACzB,qDAA2B;AAC3B,gDAAsB;AACtB,kDAAwB;AACxB,iDAAuB;AACvB,oDAA0B;AAC1B,qDAA2B;AAC3B,oDAA0B;AAC1B,gDAAsB;AACtB,oDAA0B;AAC1B,iDAAuB;AACvB,kDAAwB;AACxB,oDAA0B;AAC1B,iDAAuB;AACvB,sDAA4B;AAC5B,qDAA2B;AAC3B,iDAAuB;AACvB,oDAA0B;AAC1B,gDAAsB;AACtB,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,iDAAuB;AACvB,mDAAyB;AACzB,iDAAuB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Maybe } from
|
|
1
|
+
import { Maybe } from '../value/maybe';
|
|
2
2
|
export declare type IterableOrValue<T> = T | Iterable<T>;
|
|
3
3
|
/**
|
|
4
4
|
* Returns true if the input is an Iterable.
|
|
@@ -6,7 +6,7 @@ export declare type IterableOrValue<T> = T | Iterable<T>;
|
|
|
6
6
|
* @param values
|
|
7
7
|
* @returns
|
|
8
8
|
*/
|
|
9
|
-
export declare function isIterable<T =
|
|
9
|
+
export declare function isIterable<T = unknown>(values: unknown): values is Iterable<T>;
|
|
10
10
|
/**
|
|
11
11
|
* Returns the first value from the Iterable. If there are no values, returns undefined. Order is not guranteed.
|
|
12
12
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/iterable/iterable.ts"],"names":[],"mappings":";;;AAKA,kBAAkB;AAClB;;;;;GAKG;AACH,SAAgB,UAAU,
|
|
1
|
+
{"version":3,"file":"iterable.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/iterable/iterable.ts"],"names":[],"mappings":";;;AAKA,kBAAkB;AAClB;;;;;GAKG;AACH,SAAgB,UAAU,CAAc,MAAe;IACrD,IAAI,MAAM,IAAK,MAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QACtD,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,gCAMC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAI,MAAmB;IAC3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAND,wDAMC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAI,MAAmB,EAAE,KAAa;IAC1E,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE;YACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;aAAM;YACL,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,wDAYC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAAmB,EAAE,EAAsB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,EAAE,CAAC,KAAK,CAAC,CAAC;KACX;AACH,CAAC;AAJD,8CAIC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,MAAiC,EAAE,EAAsB;IAC7F,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;YACtB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SAC/B;aAAM;YACL,EAAE,CAAC,MAAM,CAAC,CAAC;SACZ;KACF;AACH,CAAC;AARD,gDAQC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,MAAmB,EAAE,EAAyB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AARD,wCAQC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAI,MAAmB,EAAE,EAAyB;IAChF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AARD,4CAQC"}
|
package/src/lib/iterate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterate.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/iterate.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"iterate.js","sourceRoot":"","sources":["../../../../../packages/util/src/lib/iterate.ts"],"names":[],"mappings":";;;;AAGA;;GAEG;AACH,SAAsB,OAAO,CAAI,MAAW,EAAE,KAAmB;;QAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YACzC,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACxB;IACH,CAAC;CAAA;AAJD,0BAIC"}
|
package/src/lib/key.d.ts
CHANGED
package/src/lib/map/map.d.ts
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare type MapStringFn<T> = MapFn<string, T>;
|
|
1
|
+
import { ArrayOrValue } from '../array';
|
|
2
|
+
import { Maybe } from '../value';
|
|
4
3
|
/**
|
|
5
4
|
*
|
|
6
5
|
* @param maps
|
|
7
6
|
* @returns
|
|
8
7
|
*/
|
|
9
8
|
export declare function combineMaps<K, T>(...maps: Maybe<Map<K, T>>[]): Map<K, T>;
|
|
9
|
+
/**
|
|
10
|
+
* Sets the value to all of the input keys.
|
|
11
|
+
*
|
|
12
|
+
* @param map
|
|
13
|
+
* @param key
|
|
14
|
+
* @param value
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export declare function setKeysOnMap<K, T>(map: Map<K, T>, key: ArrayOrValue<K>, value: T): Map<K, T>;
|
package/src/lib/map/map.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.combineMaps = void 0;
|
|
3
|
+
exports.setKeysOnMap = exports.combineMaps = void 0;
|
|
4
|
+
const array_1 = require("../array");
|
|
4
5
|
/**
|
|
5
6
|
*
|
|
6
7
|
* @param maps
|
|
@@ -14,4 +15,17 @@ function combineMaps(...maps) {
|
|
|
14
15
|
return result;
|
|
15
16
|
}
|
|
16
17
|
exports.combineMaps = combineMaps;
|
|
18
|
+
/**
|
|
19
|
+
* Sets the value to all of the input keys.
|
|
20
|
+
*
|
|
21
|
+
* @param map
|
|
22
|
+
* @param key
|
|
23
|
+
* @param value
|
|
24
|
+
* @returns
|
|
25
|
+
*/
|
|
26
|
+
function setKeysOnMap(map, key, value) {
|
|
27
|
+
(0, array_1.asArray)(key).forEach((key) => map.set(key, value));
|
|
28
|
+
return map;
|
|
29
|
+
}
|
|
30
|
+
exports.setKeysOnMap = setKeysOnMap;
|
|
17
31
|
//# sourceMappingURL=map.js.map
|
package/src/lib/map/map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/map/map.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/map/map.ts"],"names":[],"mappings":";;;AAAA,oCAAiD;AAGjD;;;;GAIG;AACH,SAAgB,WAAW,CAAO,GAAG,IAAwB;IAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAQ,CAAC;IAE/B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,kCAQC;AAED;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAO,GAAc,EAAE,GAAoB,EAAE,KAAQ;IAC/E,IAAA,eAAO,EAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACnD,OAAO,GAAG,CAAC;AACb,CAAC;AAHD,oCAGC"}
|
package/src/lib/misc/host.d.ts
CHANGED
package/src/lib/model/index.d.ts
CHANGED
package/src/lib/model/index.js
CHANGED
|
@@ -4,4 +4,5 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./model"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./model.copy"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./model.conversion"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./model.conversion.field"), exports);
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/model/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,uDAA6B;AAC7B,6DAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/model/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,uDAA6B;AAC7B,6DAAmC;AACnC,mEAAyC"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
import { GetterOrValue } from
|
|
2
|
-
import { Maybe } from
|
|
3
|
-
import { ApplyMapFunctionWithOptions, MapFunction } from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { GetterOrValue } from '../getter/getter';
|
|
2
|
+
import { Maybe, MaybeSo } from '../value/maybe';
|
|
3
|
+
import { ApplyMapFunctionWithOptions, MapFunction } from '../value/map';
|
|
4
|
+
import { MergeReplace, ReplaceType } from '../type';
|
|
5
|
+
import { XOR } from 'ts-essentials';
|
|
6
|
+
/**
|
|
7
|
+
* Type used to declare a sister-type to the generic object.
|
|
8
|
+
*/
|
|
9
|
+
export declare type MappedModelData<I extends object, R extends object> = MergeReplace<I, R>;
|
|
10
|
+
export declare type TypedMappedModelData<I extends object, O extends object, X = any> = ReplaceType<I, O, X>;
|
|
11
|
+
export declare type ModelMapFunction<I extends object, O extends object> = ApplyMapFunctionWithOptions<Maybe<I>, O, ModelConversionOptions<I>>;
|
|
12
|
+
export declare type ModelMapFromFunction<V extends object, D extends object> = ModelMapFunction<D, V>;
|
|
13
|
+
export declare type ModelMapToFunction<V extends object, D extends object> = ModelMapFunction<V, D>;
|
|
7
14
|
export interface ModelMapFunctions<V extends object, D extends object> {
|
|
8
|
-
from:
|
|
9
|
-
to:
|
|
15
|
+
from: ModelMapFromFunction<V, D>;
|
|
16
|
+
to: ModelMapToFunction<V, D>;
|
|
10
17
|
}
|
|
11
|
-
export declare
|
|
12
|
-
|
|
13
|
-
};
|
|
14
|
-
export declare function makeModelMapFunctions<V extends object, D extends object>(fields: ModelFieldsConversionConfig<V>): ModelMapFunctions<V, D>;
|
|
15
|
-
export declare type ModelConversionFieldTuple<I extends object> = [keyof I, ModelFieldMapFunction<any, any>];
|
|
18
|
+
export declare function makeModelMapFunctions<V extends object, D extends object>(fields: ModelFieldConversions<V, D>): ModelMapFunctions<V, D>;
|
|
19
|
+
export declare type ModelConversionFieldTuple<I extends object> = [keyof I, ModelFieldMapFunction<unknown, unknown>];
|
|
16
20
|
export declare type ModelConversionFieldValuesConfig<I extends object> = ModelConversionFieldTuple<I>[];
|
|
17
|
-
export interface ModelConversionOptions<I extends object
|
|
21
|
+
export interface ModelConversionOptions<I extends object> {
|
|
18
22
|
/**
|
|
19
23
|
* Fields to include.
|
|
20
24
|
*/
|
|
@@ -24,40 +28,63 @@ export interface ModelConversionOptions<I extends object, O extends object> {
|
|
|
24
28
|
*/
|
|
25
29
|
definedOnly?: boolean;
|
|
26
30
|
}
|
|
27
|
-
export declare type ModelConversionFieldValuesFunction<I extends object, O extends object> = ApplyMapFunctionWithOptions<Maybe<I>, O, ModelConversionOptions<I
|
|
31
|
+
export declare type ModelConversionFieldValuesFunction<I extends object, O extends object> = ApplyMapFunctionWithOptions<Maybe<I>, O, ModelConversionOptions<I>>;
|
|
28
32
|
export declare function makeModelConversionFieldValuesFunction<I extends object, O extends object>(fields: ModelConversionFieldValuesConfig<I>): ModelConversionFieldValuesFunction<I, O>;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
export declare type
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
export declare
|
|
62
|
-
|
|
63
|
-
|
|
33
|
+
/**
|
|
34
|
+
* An object map containing a ModelFieldMapFunctions entry for each key (required and optional) from the generic object.
|
|
35
|
+
*/
|
|
36
|
+
export declare type ModelFieldConversions<V extends object, D extends object> = Required<{
|
|
37
|
+
[K in keyof V]: ModelFieldMapFunctions<V[K], TypedMappedModelData<V, D>[K]>;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* An object map containing a ModelFieldMapFunctionsConfig for each key (required and optional) from the generic object.
|
|
41
|
+
*/
|
|
42
|
+
export declare type ModelFieldConversionsConfig<V extends object, D extends object> = Required<{
|
|
43
|
+
[K in keyof V]: ModelFieldMapFunctionsConfig<V[K], TypedMappedModelData<V, D>[K]>;
|
|
44
|
+
}>;
|
|
45
|
+
export declare function modelFieldConversions<V extends object, D extends object>(config: ModelFieldConversionsConfig<V, D>): ModelFieldConversions<V, D>;
|
|
46
|
+
export declare type ModelFieldMapFunctions<I = unknown, O = unknown> = {
|
|
47
|
+
from: ModelFieldMapFromFunction<I, O>;
|
|
48
|
+
to: ModelFieldMapToFunction<I, O>;
|
|
49
|
+
};
|
|
50
|
+
export declare type ModelFieldMapFunctionsConfig<I = unknown, O = unknown> = {
|
|
51
|
+
from: ModelFieldMapFromConfig<I, O>;
|
|
52
|
+
to: ModelFieldMapToConfig<I, O>;
|
|
53
|
+
};
|
|
54
|
+
export declare function modelFieldMapFunctions<I = unknown, O = unknown>(config: ModelFieldMapFunctionsConfig<I, O>): ModelFieldMapFunctions<I, O>;
|
|
55
|
+
/**
|
|
56
|
+
* ModelFieldMapFunction configuration that can convert a MaybeValue to the target value.
|
|
57
|
+
*/
|
|
58
|
+
export declare type ModelFieldMapMaybeTooConfig<I, O> = {
|
|
59
|
+
convertMaybe: ModelFieldMapConvertMaybeFunction<I, O>;
|
|
60
|
+
};
|
|
61
|
+
export declare type ModelFieldMapMaybeWithDefaultValueConfig<I, O> = {
|
|
62
|
+
defaultInput: GetterOrValue<I>;
|
|
63
|
+
convert: ModelFieldMapConvertFunction<I, O>;
|
|
64
|
+
};
|
|
65
|
+
export declare type ModelFieldMapMaybeWithDefaultDataConfig<I, O> = {
|
|
66
|
+
convert: ModelFieldMapConvertFunction<I, O>;
|
|
67
|
+
default: GetterOrValue<O>;
|
|
68
|
+
};
|
|
69
|
+
export declare type ModelFieldMapConvertMaybeFunction<I, O> = MapFunction<Maybe<I>, O>;
|
|
70
|
+
export declare type ModelFieldMapConvertFunction<I, O> = MapFunction<MaybeSo<I>, O>;
|
|
71
|
+
/**
|
|
72
|
+
* ModelFieldMapFunction configuration that handles the MaybeNot case with undefined.
|
|
73
|
+
*/
|
|
74
|
+
export declare type ModelFieldMapMaybeWithDefaultConfig<I, O> = ModelFieldMapMaybeWithDefaultValueConfig<I, O> | ModelFieldMapMaybeWithDefaultDataConfig<I, O>;
|
|
75
|
+
/**
|
|
76
|
+
* Configuration is either a ModelFieldMapMaybeTooConfig or a ModelFieldMapMaybeWithDefaultConfig
|
|
77
|
+
*/
|
|
78
|
+
export declare type ModelFieldMapConfig<I, O> = XOR<ModelFieldMapMaybeTooConfig<I, O>, ModelFieldMapMaybeWithDefaultConfig<I, O>>;
|
|
79
|
+
export declare type ModelFieldMapFromConfig<I = unknown, O = unknown> = ModelFieldMapConfig<O, I>;
|
|
80
|
+
export declare type ModelFieldMapToConfig<I = unknown, O = unknown> = ModelFieldMapConfig<I, O>;
|
|
81
|
+
export declare type ModelFieldMapFunction<I = unknown, O = unknown> = MapFunction<Maybe<I>, O>;
|
|
82
|
+
export declare type ModelFieldMapFromFunction<I, O> = ModelFieldMapFunction<O, I>;
|
|
83
|
+
export declare type ModelFieldMapToFunction<I, O> = ModelFieldMapFunction<I, O>;
|
|
84
|
+
/**
|
|
85
|
+
* Creates a ModelFieldMapFunction.
|
|
86
|
+
*
|
|
87
|
+
* @param config
|
|
88
|
+
* @returns
|
|
89
|
+
*/
|
|
90
|
+
export declare function modelFieldMapFunction<I, O>(config: ModelFieldMapConfig<I, O>): ModelFieldMapFunction<I, O>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ModelFieldMapFunctionsConfig } from './model.conversion';
|
|
2
|
+
/**
|
|
3
|
+
* Field conversion that copies the same value across.
|
|
4
|
+
*
|
|
5
|
+
* @param defaultValue
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare function copyField<T>(defaultOutput: T): ModelFieldMapFunctionsConfig<T, T>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.copyField = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Field conversion that copies the same value across.
|
|
6
|
+
*
|
|
7
|
+
* @param defaultValue
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
function copyField(defaultOutput) {
|
|
11
|
+
return {
|
|
12
|
+
from: {
|
|
13
|
+
default: defaultOutput,
|
|
14
|
+
convert: (x) => x
|
|
15
|
+
},
|
|
16
|
+
to: {
|
|
17
|
+
default: defaultOutput,
|
|
18
|
+
convert: (x) => x
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
exports.copyField = copyField;
|
|
23
|
+
//# sourceMappingURL=model.conversion.field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.conversion.field.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/model/model.conversion.field.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,SAAgB,SAAS,CAAI,aAAgB;IAC3C,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC;SACrB;QACD,EAAE,EAAE;YACF,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC;SACrB;KACF,CAAC;AACJ,CAAC;AAXD,8BAWC"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/*eslint @typescript-eslint/no-explicit-any:"off"*/
|
|
3
|
+
// any is used with intent here, as there isn't enough typing information available when going from a parent of fields to the types of each child.
|
|
2
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
5
|
+
exports.modelFieldMapFunction = exports.modelFieldMapFunctions = exports.modelFieldConversions = exports.makeModelConversionFieldValuesFunction = exports.makeModelMapFunctions = void 0;
|
|
4
6
|
const getter_1 = require("../getter/getter");
|
|
5
7
|
const object_1 = require("../object/object");
|
|
8
|
+
const maybe_1 = require("../value/maybe");
|
|
9
|
+
const object_2 = require("../object");
|
|
6
10
|
function makeModelMapFunctions(fields) {
|
|
7
11
|
const keys = (0, object_1.filterKeyValueTuples)(fields);
|
|
8
|
-
const conversionsByKey = keys.map(([key, field]) => [key,
|
|
9
|
-
const fromConversions = conversionsByKey.map(([key, configs]) =>
|
|
10
|
-
const toConversions = conversionsByKey.map(([key, configs]) =>
|
|
12
|
+
const conversionsByKey = keys.map(([key, field]) => [key, field]);
|
|
13
|
+
const fromConversions = conversionsByKey.map(([key, configs]) => [key, configs.from]);
|
|
14
|
+
const toConversions = conversionsByKey.map(([key, configs]) => [key, configs.to]);
|
|
11
15
|
const from = makeModelConversionFieldValuesFunction(fromConversions);
|
|
12
16
|
const to = makeModelConversionFieldValuesFunction(toConversions);
|
|
13
17
|
return {
|
|
@@ -17,50 +21,61 @@ function makeModelMapFunctions(fields) {
|
|
|
17
21
|
}
|
|
18
22
|
exports.makeModelMapFunctions = makeModelMapFunctions;
|
|
19
23
|
function makeModelConversionFieldValuesFunction(fields) {
|
|
20
|
-
return (input,
|
|
21
|
-
target =
|
|
24
|
+
return (input, inputTarget, options) => {
|
|
25
|
+
const target = (inputTarget !== null && inputTarget !== void 0 ? inputTarget : {});
|
|
22
26
|
if (input) {
|
|
23
27
|
let targetFields = fields;
|
|
24
28
|
// if options are provided, filter down.
|
|
25
29
|
if (options) {
|
|
26
|
-
const
|
|
30
|
+
const fieldsToMap = new Set((0, object_1.findPOJOKeys)(input, {
|
|
27
31
|
keysFilter: options.fields,
|
|
28
|
-
valueFilter:
|
|
32
|
+
valueFilter: options.definedOnly === false ? object_1.KeyValueTypleValueFilter.NONE : object_1.KeyValueTypleValueFilter.UNDEFINED
|
|
29
33
|
}));
|
|
30
|
-
targetFields = fields.filter(x =>
|
|
34
|
+
targetFields = fields.filter((x) => fieldsToMap.has(x[0]));
|
|
31
35
|
}
|
|
32
|
-
targetFields.forEach(([key, convert]) => target[key] = convert(input[key]));
|
|
36
|
+
targetFields.forEach(([key, convert]) => (target[key] = convert(input[key])));
|
|
33
37
|
}
|
|
34
38
|
return target;
|
|
35
39
|
};
|
|
36
40
|
}
|
|
37
41
|
exports.makeModelConversionFieldValuesFunction = makeModelConversionFieldValuesFunction;
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
+
function modelFieldConversions(config) {
|
|
43
|
+
return (0, object_2.mapObjectMap)(config, (x) => modelFieldMapFunctions(x));
|
|
44
|
+
}
|
|
45
|
+
exports.modelFieldConversions = modelFieldConversions;
|
|
46
|
+
function modelFieldMapFunctions(config) {
|
|
47
|
+
return {
|
|
48
|
+
from: modelFieldMapFunction(config.from),
|
|
49
|
+
to: modelFieldMapFunction(config.to)
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
exports.modelFieldMapFunctions = modelFieldMapFunctions;
|
|
53
|
+
/**
|
|
54
|
+
* Creates a ModelFieldMapFunction.
|
|
55
|
+
*
|
|
56
|
+
* @param config
|
|
57
|
+
* @returns
|
|
58
|
+
*/
|
|
59
|
+
function modelFieldMapFunction(config) {
|
|
60
|
+
const convert = config.convert;
|
|
61
|
+
const convertMaybe = config.convertMaybe;
|
|
62
|
+
const defaultOutput = config.default;
|
|
63
|
+
const defaultInput = config.defaultInput;
|
|
64
|
+
const getDefaultOutput = (0, getter_1.asGetter)(defaultOutput);
|
|
65
|
+
const getDefaultInput = (0, getter_1.asGetter)(defaultInput);
|
|
42
66
|
return (input) => {
|
|
43
|
-
if (
|
|
67
|
+
if ((0, maybe_1.isMaybeSo)(input)) {
|
|
68
|
+
return convert(input);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
44
71
|
if (convertMaybe) {
|
|
45
|
-
return
|
|
72
|
+
return convertMaybe(input !== null && input !== void 0 ? input : getDefaultInput());
|
|
46
73
|
}
|
|
47
74
|
else {
|
|
48
|
-
return
|
|
75
|
+
return getDefaultOutput();
|
|
49
76
|
}
|
|
50
77
|
}
|
|
51
|
-
else {
|
|
52
|
-
return convert(input);
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
exports.makeModelFieldMapFunction = makeModelFieldMapFunction;
|
|
57
|
-
exports.makeModelFieldFromFunction = makeModelFieldMapFunction;
|
|
58
|
-
exports.makeModelFieldToFunction = makeModelFieldMapFunction;
|
|
59
|
-
function makeModelFieldMapFunctions(config) {
|
|
60
|
-
return {
|
|
61
|
-
from: makeModelFieldMapFunction(config.from),
|
|
62
|
-
to: makeModelFieldMapFunction(config.to),
|
|
63
78
|
};
|
|
64
79
|
}
|
|
65
|
-
exports.
|
|
80
|
+
exports.modelFieldMapFunction = modelFieldMapFunction;
|
|
66
81
|
//# sourceMappingURL=model.conversion.js.map
|