@dereekb/util 7.2.0 → 7.3.0

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.
Files changed (84) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/package.json +1 -1
  3. package/src/lib/array/array.boolean.d.ts +1 -1
  4. package/src/lib/array/array.d.ts +1 -1
  5. package/src/lib/array/array.index.d.ts +1 -1
  6. package/src/lib/array/array.limit.d.ts +1 -1
  7. package/src/lib/array/array.map.d.ts +1 -1
  8. package/src/lib/array/array.string.js +1 -1
  9. package/src/lib/array/array.string.js.map +1 -1
  10. package/src/lib/array/array.unique.d.ts +1 -1
  11. package/src/lib/array/array.value.d.ts +14 -2
  12. package/src/lib/array/array.value.js +24 -6
  13. package/src/lib/array/array.value.js.map +1 -1
  14. package/src/lib/auth/auth.role.claims.d.ts +1 -1
  15. package/src/lib/auth/auth.role.claims.js +13 -10
  16. package/src/lib/auth/auth.role.claims.js.map +1 -1
  17. package/src/lib/auth/auth.role.d.ts +1 -1
  18. package/src/lib/date/date.d.ts +1 -1
  19. package/src/lib/date/date.time.d.ts +1 -1
  20. package/src/lib/error/error.d.ts +1 -1
  21. package/src/lib/error/error.server.d.ts +1 -1
  22. package/src/lib/filter/filter.d.ts +3 -0
  23. package/src/lib/filter/filter.js.map +1 -1
  24. package/src/lib/grouping.d.ts +1 -1
  25. package/src/lib/iterable/iterable.d.ts +8 -1
  26. package/src/lib/iterable/iterable.js +14 -1
  27. package/src/lib/iterable/iterable.js.map +1 -1
  28. package/src/lib/key.d.ts +1 -1
  29. package/src/lib/misc/host.d.ts +1 -1
  30. package/src/lib/model/model.conversion.d.ts +1 -1
  31. package/src/lib/model/model.conversion.js +7 -6
  32. package/src/lib/model/model.conversion.js.map +1 -1
  33. package/src/lib/model/model.copy.d.ts +1 -1
  34. package/src/lib/model/model.d.ts +1 -1
  35. package/src/lib/model/model.modify.d.ts +1 -1
  36. package/src/lib/object/index.d.ts +3 -0
  37. package/src/lib/object/index.js +3 -0
  38. package/src/lib/object/index.js.map +1 -1
  39. package/src/lib/object/object.d.ts +4 -112
  40. package/src/lib/object/object.empty.d.ts +7 -0
  41. package/src/lib/object/object.empty.js +27 -0
  42. package/src/lib/object/object.empty.js.map +1 -0
  43. package/src/lib/object/object.filter.pojo.d.ts +154 -0
  44. package/src/lib/object/object.filter.pojo.js +235 -0
  45. package/src/lib/object/object.filter.pojo.js.map +1 -0
  46. package/src/lib/object/object.filter.tuple.d.ts +64 -0
  47. package/src/lib/object/object.filter.tuple.js +120 -0
  48. package/src/lib/object/object.filter.tuple.js.map +1 -0
  49. package/src/lib/object/object.js +6 -224
  50. package/src/lib/object/object.js.map +1 -1
  51. package/src/lib/object/object.map.d.ts +23 -1
  52. package/src/lib/object/object.map.js +26 -4
  53. package/src/lib/object/object.map.js.map +1 -1
  54. package/src/lib/page/page.d.ts +1 -1
  55. package/src/lib/promise/promise.d.ts +1 -1
  56. package/src/lib/promise/promise.loop.d.ts +1 -1
  57. package/src/lib/relation/relation.d.ts +8 -7
  58. package/src/lib/relation/relation.js +2 -1
  59. package/src/lib/relation/relation.js.map +1 -1
  60. package/src/lib/service/typed.service.js +2 -2
  61. package/src/lib/service/typed.service.js.map +1 -1
  62. package/src/lib/set/set.allowed.d.ts +1 -1
  63. package/src/lib/set/set.d.ts +1 -1
  64. package/src/lib/set/set.hashset.d.ts +1 -1
  65. package/src/lib/set/set.maybe.d.ts +1 -1
  66. package/src/lib/storage/storage.memory.d.ts +1 -1
  67. package/src/lib/storage/storage.object.d.ts +1 -1
  68. package/src/lib/storage/storage.object.js +4 -3
  69. package/src/lib/storage/storage.object.js.map +1 -1
  70. package/src/lib/string.d.ts +1 -1
  71. package/src/lib/tree/tree.expand.d.ts +1 -1
  72. package/src/lib/value/index.d.ts +1 -0
  73. package/src/lib/value/index.js +1 -0
  74. package/src/lib/value/index.js.map +1 -1
  75. package/src/lib/value/map.d.ts +1 -1
  76. package/src/lib/value/maybe.d.ts +16 -41
  77. package/src/lib/value/maybe.js +57 -4
  78. package/src/lib/value/maybe.js.map +1 -1
  79. package/src/lib/value/maybe.type.d.ts +19 -0
  80. package/src/lib/value/maybe.type.js +3 -0
  81. package/src/lib/value/maybe.type.js.map +1 -0
  82. package/src/lib/value/modifier.d.ts +1 -1
  83. package/test/CHANGELOG.md +4 -0
  84. package/test/package.json +2 -2
@@ -1,9 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.overrideInObject = exports.mergeObjects = exports.objectIsEmpty = exports.filterKeyValueTupleFunction = exports.filterKeyValueTuples = exports.forEachKeyValue = exports.KeyValueTypleValueFilter = exports.allKeyValueTuples = exports.valuesFromPOJO = exports.assignValuesToPOJO = exports.filterFromPOJO = exports.countPOJOKeys = exports.findPOJOKeys = exports.allMaybeSoKeys = exports.allNonUndefinedKeys = exports.filterUndefinedValues = exports.filterNullAndUndefinedValues = exports.mapToObject = exports.applyToMultipleFields = exports.objectHasKey = exports.objectHasNoKeys = void 0;
4
- const maybe_1 = require("../value/maybe");
5
- const array_value_1 = require("../array/array.value");
6
- const filter_1 = require("../filter/filter");
3
+ exports.copyObject = exports.mapToObject = exports.applyToMultipleFields = exports.objectHasKey = exports.objectHasNoKeys = void 0;
7
4
  function objectHasNoKeys(obj) {
8
5
  return Object.keys(obj).length === 0;
9
6
  }
@@ -29,228 +26,13 @@ function mapToObject(map) {
29
26
  }
30
27
  exports.mapToObject = mapToObject;
31
28
  /**
32
- * Returns a copy of the input object with all null and undefined values filtered from it.
29
+ * Creates a shallow copy of an object using the spread operator.
33
30
  *
34
- * @param obj
31
+ * @param input
35
32
  * @returns
36
33
  */
37
- function filterNullAndUndefinedValues(obj) {
38
- return filterUndefinedValues(obj, true);
34
+ function copyObject(input) {
35
+ return Object.assign({}, input);
39
36
  }
40
- exports.filterNullAndUndefinedValues = filterNullAndUndefinedValues;
41
- /**
42
- * Returns a copy of the input object with all undefined values filtered from it.
43
- *
44
- * @param obj
45
- * @returns
46
- */
47
- function filterUndefinedValues(obj, filterNull = false) {
48
- return filterFromPOJO(obj, { copy: true, filter: { valueFilter: filterNull ? KeyValueTypleValueFilter.NULL : KeyValueTypleValueFilter.UNDEFINED } });
49
- }
50
- exports.filterUndefinedValues = filterUndefinedValues;
51
- /**
52
- * Returns all keys that are not associated with an undefined value.
53
- *
54
- * @param obj
55
- * @returns
56
- */
57
- function allNonUndefinedKeys(obj) {
58
- return findPOJOKeys(obj, { valueFilter: KeyValueTypleValueFilter.UNDEFINED });
59
- }
60
- exports.allNonUndefinedKeys = allNonUndefinedKeys;
61
- function allMaybeSoKeys(obj) {
62
- return findPOJOKeys(obj, { valueFilter: KeyValueTypleValueFilter.NULL });
63
- }
64
- exports.allMaybeSoKeys = allMaybeSoKeys;
65
- /**
66
- * Finds keys from the POJO that meet the filter.
67
- *
68
- * @param obj
69
- * @param filter
70
- * @returns
71
- */
72
- function findPOJOKeys(obj, filter) {
73
- const keys = [];
74
- forEachKeyValue(obj, {
75
- filter,
76
- forEach: ([key]) => {
77
- keys.push(key);
78
- }
79
- });
80
- return keys;
81
- }
82
- exports.findPOJOKeys = findPOJOKeys;
83
- /**
84
- * Finds and counts the number of keys from the POJO that meet the filter.
85
- *
86
- * @param obj
87
- * @param filter
88
- * @returns
89
- */
90
- function countPOJOKeys(obj, filter = KeyValueTypleValueFilter.UNDEFINED) {
91
- let count = 0;
92
- forEachKeyValue(obj, {
93
- filter,
94
- forEach: () => (count += 1)
95
- });
96
- return count;
97
- }
98
- exports.countPOJOKeys = countPOJOKeys;
99
- /**
100
- * Removes values, per the the filter config, from the input object.
101
- *
102
- * @param obj POJO to remove undefined values from.
103
- * @param copy Whether or not to return a copy of the input object. Default is true.
104
- */
105
- function filterFromPOJO(obj, { copy = false, filter = { valueFilter: KeyValueTypleValueFilter.UNDEFINED } } = {}) {
106
- if (copy) {
107
- obj = Object.assign({}, obj);
108
- }
109
- forEachKeyValue(obj, {
110
- filter: Object.assign(Object.assign({}, filter), { invertFilter: !filter.invertFilter }),
111
- forEach: ([key]) => {
112
- delete obj[key];
113
- }
114
- });
115
- return obj;
116
- }
117
- exports.filterFromPOJO = filterFromPOJO;
118
- function assignValuesToPOJO(target, obj, filter = KeyValueTypleValueFilter.UNDEFINED) {
119
- forEachKeyValue(obj, {
120
- filter,
121
- forEach: ([key, value]) => {
122
- target[key] = value;
123
- }
124
- });
125
- return obj;
126
- }
127
- exports.assignValuesToPOJO = assignValuesToPOJO;
128
- /**
129
- * Reads all values from the pojo based on the filter and puts them into an array.
130
- *
131
- * @param target
132
- * @param filter
133
- * @returns
134
- */
135
- function valuesFromPOJO(target, filter = KeyValueTypleValueFilter.UNDEFINED) {
136
- const values = [];
137
- forEachKeyValue(target, {
138
- filter,
139
- forEach: ([, value]) => {
140
- values.push(value);
141
- }
142
- });
143
- return values;
144
- }
145
- exports.valuesFromPOJO = valuesFromPOJO;
146
- function allKeyValueTuples(obj) {
147
- return Object.entries(obj);
148
- }
149
- exports.allKeyValueTuples = allKeyValueTuples;
150
- var KeyValueTypleValueFilter;
151
- (function (KeyValueTypleValueFilter) {
152
- /**
153
- * No filter
154
- */
155
- KeyValueTypleValueFilter[KeyValueTypleValueFilter["NONE"] = 0] = "NONE";
156
- /**
157
- * Only undefined values.
158
- */
159
- KeyValueTypleValueFilter[KeyValueTypleValueFilter["UNDEFINED"] = 1] = "UNDEFINED";
160
- /**
161
- * All values that are null or undefined.
162
- */
163
- KeyValueTypleValueFilter[KeyValueTypleValueFilter["NULL"] = 2] = "NULL";
164
- /**
165
- * All values that are falsy.
166
- */
167
- KeyValueTypleValueFilter[KeyValueTypleValueFilter["FALSY"] = 3] = "FALSY";
168
- })(KeyValueTypleValueFilter = exports.KeyValueTypleValueFilter || (exports.KeyValueTypleValueFilter = {}));
169
- function forEachKeyValue(obj, { forEach, filter }) {
170
- const keyValues = filterKeyValueTuples(obj, filter);
171
- keyValues.forEach(forEach);
172
- }
173
- exports.forEachKeyValue = forEachKeyValue;
174
- function filterKeyValueTuples(obj, filter) {
175
- let pairs = allKeyValueTuples(obj);
176
- if (filter) {
177
- const filterFn = filterKeyValueTupleFunction(filter);
178
- pairs = pairs.filter(filterFn);
179
- }
180
- return pairs;
181
- }
182
- exports.filterKeyValueTuples = filterKeyValueTuples;
183
- function filterKeyValueTupleFunction(input) {
184
- const filter = typeof input === 'object' ? input : { valueFilter: input };
185
- const { valueFilter: type, invertFilter: inverseFilter = false, keysFilter } = filter;
186
- let filterFn;
187
- switch (type) {
188
- case KeyValueTypleValueFilter.UNDEFINED:
189
- filterFn = ([, x]) => x !== undefined;
190
- break;
191
- case KeyValueTypleValueFilter.NULL:
192
- filterFn = ([, x]) => x != null;
193
- break;
194
- case KeyValueTypleValueFilter.FALSY:
195
- filterFn = ([, x]) => Boolean(x);
196
- break;
197
- case KeyValueTypleValueFilter.NONE:
198
- default:
199
- filterFn = () => true;
200
- break;
201
- }
202
- if (keysFilter) {
203
- const filterByTypeFn = filterFn;
204
- const keysSet = new Set(keysFilter);
205
- filterFn = (x, i) => filterByTypeFn(x, i) && keysSet.has(x[0]);
206
- }
207
- return (0, filter_1.invertFilter)(filterFn, inverseFilter);
208
- }
209
- exports.filterKeyValueTupleFunction = filterKeyValueTupleFunction;
210
- /**
211
- * Recursively function that returns true if the input is not an object or if every key on the object is empty.
212
- *
213
- * @param obj
214
- */
215
- function objectIsEmpty(obj) {
216
- if (obj != null && typeof obj === 'object') {
217
- const keys = Object.keys(obj);
218
- if (keys.length > 0) {
219
- for (let i = 0; i < keys.length; i += 1) {
220
- const key = keys[i];
221
- const value = obj[key];
222
- const isEmpty = typeof obj === 'object' ? objectIsEmpty(value) : !(0, maybe_1.hasValueOrNotEmpty)(value);
223
- if (!isEmpty) {
224
- return false;
225
- }
226
- }
227
- }
228
- }
229
- return true;
230
- }
231
- exports.objectIsEmpty = objectIsEmpty;
232
- /**
233
- * Merges all input objects into one. The order of overrides is kept, so the right-most item in the array will have priority over all objects before it.
234
- *
235
- * @param objects
236
- */
237
- function mergeObjects(objects, filter) {
238
- const object = {};
239
- overrideInObject(object, { from: (0, array_value_1.filterMaybeValues)(objects), filter });
240
- return object;
241
- }
242
- exports.mergeObjects = mergeObjects;
243
- /**
244
- * Assigns all undefined valeus from one or more objects into the target object.
245
- *
246
- * @param object
247
- */
248
- function overrideInObject(target, { from, filter }) {
249
- from.forEach((x) => {
250
- const relevantValues = filterFromPOJO(Object.assign({}, x), { filter, copy: false });
251
- Object.assign(target, relevantValues);
252
- });
253
- return target;
254
- }
255
- exports.overrideInObject = overrideInObject;
37
+ exports.copyObject = copyObject;
256
38
  //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/object.ts"],"names":[],"mappings":";;;AAIA,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACvC,CAAC;AAFD,0CAEC;AAID,SAAgB,YAAY,CAAI,GAAM,EAAE,GAAW;IACjD,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAFD,oCAEC;AAED,SAAgB,qBAAqB,CAAgC,KAAQ,EAAE,MAAwB;IACrG,MAAM,MAAM,GAAG,EAA2B,CAAC;IAE3C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvB,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,sDAQC;AAED,SAAgB,WAAW,CAA2B,GAAc;IAClE,MAAM,MAAM,GAAG,EAA+B,CAAC;IAE/C,GAAG,CAAC,OAAO,CAAC,CAAC,CAAI,EAAE,GAAM,EAAE,EAAE;QAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,kCAQC;AAID;;;;;GAKG;AACH,SAAgB,UAAU,CAAmB,KAAQ;IACnD,yBAAY,KAAK,EAAG;AACtB,CAAC;AAFD,gCAEC"}
@@ -1,3 +1,4 @@
1
+ import { MapFunction } from '../value/map';
1
2
  /**
2
3
  * An object with values of a specific type keyed by either string or number or symbols.
3
4
  */
@@ -27,9 +28,30 @@ export declare function objectToMap<T>(object: ObjectMap<T>): Map<string, T>;
27
28
  * @returns
28
29
  */
29
30
  export declare function objectToTuples<T>(object: ObjectMap<T>): [string, T][];
31
+ /**
32
+ * Maps an ObjectMap of one type to another ObjectMap with the mapped values.
33
+ */
34
+ export declare type MapObjectMapFunction<M extends ObjectMap<I>, I = unknown, O = unknown> = MapFunction<M, MappedObjectMap<M, O>>;
35
+ /**
36
+ * Creates a MapObjectMapFunction that calls mapObjectMap().
37
+ *
38
+ * @param mapFn
39
+ * @returns
40
+ */
41
+ export declare function mapObjectMapFunction<M extends ObjectMap<I>, I = unknown, O = unknown>(mapFn: MapObjectMapValueFunction<M, I, O>): MapObjectMapFunction<M, I, O>;
42
+ export declare type MapObjectMapValueFunction<M extends ObjectMap<I>, I = unknown, O = unknown> = <K extends keyof M>(value: M[K], key: K) => O;
30
43
  /**
31
44
  * Maps the values of an ObjectMap from one type to another and returns an ObjectMap containing that type.
32
45
  *
33
46
  * @param object
34
47
  */
35
- export declare function mapObjectMap<M extends ObjectMap<I>, I = unknown, O = unknown>(object: M, mapFn: <K extends keyof M>(value: M[K], key: K) => O): MappedObjectMap<M, O>;
48
+ export declare function mapObjectMap<M extends ObjectMap<I>, I = unknown, O = unknown>(object: M, mapFn: MapObjectMapValueFunction<M, I, O>): MappedObjectMap<M, O>;
49
+ /**
50
+ * Maps the values of an ObjectMap from one type to the target and return the target.
51
+ *
52
+ * @param object
53
+ * @param target
54
+ * @param mapFn
55
+ * @returns
56
+ */
57
+ export declare function mapObjectToTargetObject<M extends ObjectMap<I>, I = unknown, O = unknown>(object: M, target: MappedObjectMap<M, O>, mapFn: MapObjectMapValueFunction<M, I, O>): MappedObjectMap<M, O>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapObjectMap = exports.objectToTuples = exports.objectToMap = void 0;
3
+ exports.mapObjectToTargetObject = exports.mapObjectMap = exports.mapObjectMapFunction = exports.objectToTuples = exports.objectToMap = void 0;
4
4
  /**
5
5
  * Converts an ObjectMap into a Map.
6
6
  *
@@ -22,6 +22,16 @@ function objectToTuples(object) {
22
22
  return keys.map((x) => [x, object[x]]);
23
23
  }
24
24
  exports.objectToTuples = objectToTuples;
25
+ /**
26
+ * Creates a MapObjectMapFunction that calls mapObjectMap().
27
+ *
28
+ * @param mapFn
29
+ * @returns
30
+ */
31
+ function mapObjectMapFunction(mapFn) {
32
+ return (object) => mapObjectMap(object, mapFn);
33
+ }
34
+ exports.mapObjectMapFunction = mapObjectMapFunction;
25
35
  /**
26
36
  * Maps the values of an ObjectMap from one type to another and returns an ObjectMap containing that type.
27
37
  *
@@ -29,12 +39,24 @@ exports.objectToTuples = objectToTuples;
29
39
  */
30
40
  function mapObjectMap(object, mapFn) {
31
41
  const mappedObject = {};
42
+ return mapObjectToTargetObject(object, mappedObject, mapFn);
43
+ }
44
+ exports.mapObjectMap = mapObjectMap;
45
+ /**
46
+ * Maps the values of an ObjectMap from one type to the target and return the target.
47
+ *
48
+ * @param object
49
+ * @param target
50
+ * @param mapFn
51
+ * @returns
52
+ */
53
+ function mapObjectToTargetObject(object, target, mapFn) {
32
54
  const keys = Object.keys(object);
33
55
  keys.forEach((key) => {
34
56
  const value = object[key];
35
- mappedObject[key] = mapFn(value, key);
57
+ target[key] = mapFn(value, key);
36
58
  });
37
- return mappedObject;
59
+ return target;
38
60
  }
39
- exports.mapObjectMap = mapObjectMap;
61
+ exports.mapObjectToTargetObject = mapObjectToTargetObject;
40
62
  //# sourceMappingURL=object.map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.map.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/object.map.ts"],"names":[],"mappings":";;;AAkBA;;;;;GAKG;AACH,SAAgB,WAAW,CAAI,MAAoB;IACjD,OAAO,IAAI,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AACzC,CAAC;AAFD,kCAEC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,MAAoB;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAHD,wCAGC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAmD,MAAS,EAAE,KAAoD;IAC5I,MAAM,YAAY,GAA0B,EAA2B,CAAC;IAExE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAgB,CAAC;IAChD,IAAI,CAAC,OAAO,CAAC,CAAoB,GAAM,EAAE,EAAE;QACzC,MAAM,KAAK,GAAS,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC;AAVD,oCAUC"}
1
+ {"version":3,"file":"object.map.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/object.map.ts"],"names":[],"mappings":";;;AAoBA;;;;;GAKG;AACH,SAAgB,WAAW,CAAI,MAAoB;IACjD,OAAO,IAAI,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;AACzC,CAAC;AAFD,kCAEC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,MAAoB;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAHD,wCAGC;AAOD;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAmD,KAAyC;IAC9H,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAFD,oDAEC;AAID;;;;GAIG;AACH,SAAgB,YAAY,CAAmD,MAAS,EAAE,KAAyC;IACjI,MAAM,YAAY,GAAG,EAA2B,CAAC;IACjD,OAAO,uBAAuB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AAHD,oCAGC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CAAmD,MAAS,EAAE,MAA6B,EAAE,KAAyC;IAC3K,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjC,IAAI,CAAC,OAAO,CAAC,CAAoB,GAAM,EAAE,EAAE;QACzC,MAAM,KAAK,GAAS,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AATD,0DASC"}
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * Page value used when no list items have been loaded.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export declare type PromiseOrValue<T> = Promise<T> | T;
3
3
  export declare function asPromise<T>(input: PromiseOrValue<T>): Promise<T>;
4
4
  export declare type PromiseTaskFn<T, K = unknown> = (value: T, tryNumber?: number) => Promise<K>;
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export interface PerformTaskLoopConfig<O> {
3
3
  next: (i: number, prev: Maybe<O>) => Promise<O>;
4
4
  checkContinue: (prev: Maybe<O>, i: number) => boolean;
@@ -1,3 +1,4 @@
1
+ import { Maybe } from '../value/maybe.type';
1
2
  export declare enum RelationChange {
2
3
  /**
3
4
  * Adds a model to the relation. If the model already exists in
@@ -68,9 +69,9 @@ export interface UpdateMiltiTypeRelationConfig<T> extends UpdateRelationConfig<T
68
69
  * For instance, a string collection of keys.
69
70
  */
70
71
  export declare class ModelRelationUtility {
71
- static modifyStringCollection(current: RelationString[], change: RelationChange, mods: RelationString[]): RelationString[];
72
- static modifyCollection<T extends RelationObject>(current: T[], change: RelationChange, mods: T[], config: UpdateRelationConfig<T>): T[];
73
- static modifyCollection<T extends RelationObject>(current: T[], change: RelationChange, mods: T[], config: UpdateMiltiTypeRelationConfig<T>): T[];
72
+ static modifyStringCollection(current: Maybe<RelationString[]>, change: RelationChange, mods: RelationString[]): RelationString[];
73
+ static modifyCollection<T extends RelationObject>(current: Maybe<T[]>, change: RelationChange, mods: T[], config: UpdateRelationConfig<T>): T[];
74
+ static modifyCollection<T extends RelationObject>(current: Maybe<T[]>, change: RelationChange, mods: T[], config: UpdateMiltiTypeRelationConfig<T>): T[];
74
75
  /**
75
76
  * The mask results are merged together.
76
77
  *
@@ -87,9 +88,9 @@ export declare class ModelRelationUtility {
87
88
  private static _modifyMultiTypeCollection;
88
89
  private static _insertSingleTypeCollection;
89
90
  private static _updateSingleTypeCollection;
90
- static addToCollection<T extends RelationObject>(current: T[], add: T[], readKey: ReadRelationKeyFn<T>): T[];
91
- static removeFromCollection<T extends RelationObject>(current: T[], remove: T[], readKey: ReadRelationKeyFn<T>, shouldRemove?: (x: T) => boolean): T[];
92
- static removeKeysFromCollection<T extends RelationObject>(current: T[], keysToRemove: string[], readKey: ReadRelationKeyFn<T>): T[];
93
- static removeDuplicates<T>(relations: T[], readKey: ReadRelationKeyFn<T>, additionalKeys?: string[]): T[];
91
+ static addToCollection<T extends RelationObject>(current: Maybe<T[]>, add: T[], readKey: ReadRelationKeyFn<T>): T[];
92
+ static removeFromCollection<T extends RelationObject>(current: Maybe<T[]>, remove: T[], readKey: ReadRelationKeyFn<T>, shouldRemove?: (x: T) => boolean): T[];
93
+ static removeKeysFromCollection<T extends RelationObject>(current: Maybe<T[]>, keysToRemove: string[], readKey: ReadRelationKeyFn<T>): T[];
94
+ static removeDuplicates<T>(relations: Maybe<T[]>, readKey: ReadRelationKeyFn<T>, additionalKeys?: string[]): T[];
94
95
  private static _assertMergeProvided;
95
96
  }
@@ -47,6 +47,7 @@ class ModelRelationUtility {
47
47
  }
48
48
  static modifyCollection(current, change, mods, config) {
49
49
  const { mask, readKey } = config;
50
+ current = current !== null && current !== void 0 ? current : []; //init current if not set.
50
51
  if (mask) {
51
52
  const { included: currentModify, excluded: currentRetain } = (0, grouping_1.separateValues)(current, mask);
52
53
  const { included: modModify } = (0, grouping_1.separateValues)(mods, mask);
@@ -195,7 +196,7 @@ class ModelRelationUtility {
195
196
  return ModelRelationUtility.removeDuplicates(current, readKey, keysToRemove);
196
197
  }
197
198
  static removeDuplicates(relations, readKey, additionalKeys = []) {
198
- return (0, array_1.findUnique)(relations, readKey, additionalKeys);
199
+ return (relations === null || relations === void 0 ? void 0 : relations.length) ? (0, array_1.findUnique)(relations, readKey, additionalKeys) : [];
199
200
  }
200
201
  // MARK: Internal Utility
201
202
  static _assertMergeProvided(merge) {
@@ -1 +1 @@
1
- {"version":3,"file":"relation.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/relation/relation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relation.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/relation/relation.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.typedServiceRegistry = exports.TypedServiceRegistryInstance = void 0;
4
4
  const getter_1 = require("../getter/getter");
5
- const object_1 = require("../object/object");
5
+ const object_filter_tuple_1 = require("../object/object.filter.tuple");
6
6
  /**
7
7
  * TypedServiceRegistry implementation.
8
8
  */
@@ -30,7 +30,7 @@ exports.TypedServiceRegistryInstance = TypedServiceRegistryInstance;
30
30
  */
31
31
  function typedServiceRegistry(config) {
32
32
  const instance = new TypedServiceRegistryInstance();
33
- (0, object_1.forEachKeyValue)(config.services, {
33
+ (0, object_filter_tuple_1.forEachKeyValue)(config.services, {
34
34
  forEach: ([key, service]) => {
35
35
  instance.registerServiceForType(key, service);
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typed.service.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/service/typed.service.ts"],"names":[],"mappings":";;;AAAA,6CAAmE;AACnE,6CAAmD;AAcnD;;GAEG;AACH,MAAa,4BAA4B;IAAzC;QACU,SAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IAiBzC,CAAC;IAfC,sBAAsB,CAAC,IAAO,EAAE,OAAyB;QACvD,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,cAAc,CAAC,IAAO;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;QAE3B,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAC;SAC7D;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAlBD,oEAkBC;AAQD;;;GAGG;AACH,SAAgB,oBAAoB,CAA+B,MAA6C;IAC9G,MAAM,QAAQ,GAAG,IAAI,4BAA4B,EAAQ,CAAC;IAE1D,IAAA,wBAAe,EAAC,MAAM,CAAC,QAAQ,EAAE;QAC/B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;YAC1B,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,oDAUC"}
1
+ {"version":3,"file":"typed.service.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/service/typed.service.ts"],"names":[],"mappings":";;;AAAA,6CAAmE;AACnE,uEAAgE;AAchE;;GAEG;AACH,MAAa,4BAA4B;IAAzC;QACU,SAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IAiBzC,CAAC;IAfC,sBAAsB,CAAC,IAAO,EAAE,OAAyB;QACvD,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,cAAc,CAAC,IAAO;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;QAE3B,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAC;SAC7D;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAlBD,oEAkBC;AAQD;;;GAGG;AACH,SAAgB,oBAAoB,CAA+B,MAA6C;IAC9G,MAAM,QAAQ,GAAG,IAAI,4BAA4B,EAAQ,CAAC;IAE1D,IAAA,qCAAe,EAAC,MAAM,CAAC,QAAQ,EAAE;QAC/B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;YAC1B,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,oDAUC"}
@@ -1,5 +1,5 @@
1
1
  import { ArrayOrValue } from './../array/array';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  /**
4
4
  * Pair of allowed/disallowed values.
5
5
  */
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  import { IterableOrValue } from '../iterable/iterable';
3
3
  export declare function asSet<T>(values: IterableOrValue<T>): Set<T>;
4
4
  export declare function copySetAndDo<T>(set: Set<T>, fn: (set: Set<T>) => void): Set<T>;
@@ -1,5 +1,5 @@
1
1
  import { PrimativeKey, ReadKeyFunction } from '../key';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  export interface HashSetConfig<K extends PrimativeKey, T> {
4
4
  readKey: ReadKeyFunction<T, K>;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { ArrayOrValue } from './../array/array';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  /**
4
4
  * Creates a Maybe Set with the input.
5
5
  *
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  import { StorageObject } from './storage.object';
3
3
  export declare class MemoryStorageInstance implements StorageObject {
4
4
  private _length;
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  import { StoredDataStorageKey } from './storage';
3
3
  /**
4
4
  * Limited Class/Interface for storing string values synchronously.
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StorageObjectUtility = exports.FullStorageObject = exports.StorageObject = exports.SimpleStorageObject = void 0;
4
- const array_1 = require("../array");
4
+ const array_number_1 = require("../array/array.number");
5
+ const maybe_1 = require("../value/maybe");
5
6
  /**
6
7
  * Limited Class/Interface for storing string values synchronously.
7
8
  */
@@ -24,9 +25,9 @@ class StorageObjectUtility {
24
25
  const length = storageObject.length;
25
26
  let result;
26
27
  if (length > 0) {
27
- result = (0, array_1.range)({ start: 0, end: length })
28
+ result = (0, array_number_1.range)({ start: 0, end: length })
28
29
  .map((x) => storageObject.key(x))
29
- .filter(array_1.filterMaybeValuesFn);
30
+ .filter(maybe_1.hasNonNullValue);
30
31
  if (prefix) {
31
32
  result = result.filter((x) => x.startsWith(prefix));
32
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"storage.object.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/storage/storage.object.ts"],"names":[],"mappings":";;;AACA,oCAAsD;AAGtD;;GAEG;AACH,MAAsB,mBAAmB;CAMxC;AAND,kDAMC;AAED;;;;GAIG;AACH,MAAsB,aAAc,SAAQ,mBAAmB;CAS9D;AATD,sCASC;AAED,MAAsB,iBAAkB,SAAQ,aAAa;CAM5D;AAND,8CAMC;AAED,MAAa,oBAAoB;IAC/B,MAAM,CAAC,wBAAwB,CAAC,aAA4B,EAAE,MAAe;QAC3E,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QACpC,IAAI,MAA8B,CAAC;QAEnC,IAAI,MAAM,GAAG,CAAC,EAAE;YACd,MAAM,GAAG,IAAA,aAAK,EAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;iBACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAChC,MAAM,CAAC,2BAAmB,CAAC,CAAC;YAE/B,IAAI,MAAM,EAAE;gBACV,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACF;aAAM;YACL,MAAM,GAAG,EAAE,CAAC;SACb;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAnBD,oDAmBC"}
1
+ {"version":3,"file":"storage.object.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/storage/storage.object.ts"],"names":[],"mappings":";;;AACA,wDAA8C;AAE9C,0CAAiD;AAEjD;;GAEG;AACH,MAAsB,mBAAmB;CAMxC;AAND,kDAMC;AAED;;;;GAIG;AACH,MAAsB,aAAc,SAAQ,mBAAmB;CAS9D;AATD,sCASC;AAED,MAAsB,iBAAkB,SAAQ,aAAa;CAM5D;AAND,8CAMC;AAED,MAAa,oBAAoB;IAC/B,MAAM,CAAC,wBAAwB,CAAC,aAA4B,EAAE,MAAe;QAC3E,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QACpC,IAAI,MAA8B,CAAC;QAEnC,IAAI,MAAM,GAAG,CAAC,EAAE;YACd,MAAM,GAAG,IAAA,oBAAK,EAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;iBACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAChC,MAAM,CAAC,uBAAe,CAAC,CAAC;YAE3B,IAAI,MAAM,EAAE;gBACV,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACF;aAAM;YACL,MAAM,GAAG,EAAE,CAAC;SACb;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAnBD,oDAmBC"}
@@ -1,5 +1,5 @@
1
1
  import { MapFunction } from './value/map';
2
- import { Maybe } from './value/maybe';
2
+ import { Maybe } from './value/maybe.type';
3
3
  export declare type MapStringFunction<T> = MapFunction<string, T>;
4
4
  /**
5
5
  * Represents a string that is made up of comma-separated values.
@@ -1,5 +1,5 @@
1
1
  import { TreeNode, TreeNodeWithoutChildren } from './tree';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  /**
4
4
  * ExpandTreeFunction configuration.
5
5
  */
@@ -1,6 +1,7 @@
1
1
  export * from './build';
2
2
  export * from './equal';
3
3
  export * from './map';
4
+ export * from './maybe.type';
4
5
  export * from './maybe';
5
6
  export * from './modifier';
6
7
  export * from './url';
@@ -4,6 +4,7 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./build"), exports);
5
5
  tslib_1.__exportStar(require("./equal"), exports);
6
6
  tslib_1.__exportStar(require("./map"), exports);
7
+ tslib_1.__exportStar(require("./maybe.type"), exports);
7
8
  tslib_1.__exportStar(require("./maybe"), exports);
8
9
  tslib_1.__exportStar(require("./modifier"), exports);
9
10
  tslib_1.__exportStar(require("./url"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/value/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,kDAAwB;AACxB,gDAAsB;AACtB,kDAAwB;AACxB,qDAA2B;AAC3B,gDAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/value/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,kDAAwB;AACxB,gDAAsB;AACtB,uDAA6B;AAC7B,kDAAwB;AACxB,qDAA2B;AAC3B,gDAAsB"}
@@ -1,4 +1,4 @@
1
- import { Maybe } from './maybe';
1
+ import { Maybe } from './maybe.type';
2
2
  /**
3
3
  * Converts one value to another.
4
4
  */