@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
|
@@ -29,7 +29,7 @@ class PromiseUtility {
|
|
|
29
29
|
static runTasksForValues(input, taskFn, config) {
|
|
30
30
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
31
31
|
const results = yield PromiseUtility.performTasks(input, taskFn, Object.assign(Object.assign({}, config), { throwError: true }));
|
|
32
|
-
return results.results.map(x => x[1]);
|
|
32
|
+
return results.results.map((x) => x[1]);
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
// MARK: Perform
|
|
@@ -74,7 +74,7 @@ class PromiseUtility {
|
|
|
74
74
|
}
|
|
75
75
|
static performTask(taskFn, config) {
|
|
76
76
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
77
|
-
const [
|
|
77
|
+
const [, value, success] = yield PromiseUtility._performTask(0, () => taskFn(), config);
|
|
78
78
|
return { value, success };
|
|
79
79
|
});
|
|
80
80
|
}
|
|
@@ -95,22 +95,21 @@ class PromiseUtility {
|
|
|
95
95
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
96
96
|
const result = yield tryTask(value, tryNumber);
|
|
97
97
|
const success = result[1];
|
|
98
|
+
function doNextTry() {
|
|
99
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
100
|
+
const nextTryNumber = tryNumber + 1;
|
|
101
|
+
if (beforeRetry) {
|
|
102
|
+
yield beforeRetry(value, nextTryNumber);
|
|
103
|
+
}
|
|
104
|
+
return iterateTask(value, tryNumber + 1);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
98
107
|
if (success) {
|
|
99
108
|
return [value, ...result];
|
|
100
109
|
}
|
|
101
110
|
const retriesRemaining = retriesAllowed - tryNumber;
|
|
102
111
|
if (retriesRemaining > 0) {
|
|
103
|
-
|
|
104
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
105
|
-
const nextTryNumber = tryNumber + 1;
|
|
106
|
-
if (beforeRetry) {
|
|
107
|
-
yield beforeRetry(value, nextTryNumber);
|
|
108
|
-
}
|
|
109
|
-
return iterateTask(value, tryNumber + 1);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
;
|
|
113
|
-
return (retryWait) ? (0, wait_1.waitForMs)(retryWait).then(() => doNextTry()) : doNextTry();
|
|
112
|
+
return retryWait ? (0, wait_1.waitForMs)(retryWait).then(() => doNextTry()) : doNextTry();
|
|
114
113
|
}
|
|
115
114
|
else {
|
|
116
115
|
// Error out.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.ts"],"names":[],"mappings":";;;;AACA,iCAAmC;AAInC,SAAgB,SAAS,CAAI,KAAwB;IACnD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAFD,8BAEC;AAoCD,MAAa,cAAc;
|
|
1
|
+
{"version":3,"file":"promise.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,32 +3,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.performMakeLoop = exports.performTaskCountLoop = exports.performTaskLoop = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
function performTaskLoop(config) {
|
|
6
|
-
return
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
else {
|
|
21
|
-
resolve(config.initValue);
|
|
22
|
-
}
|
|
6
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
7
|
+
let result;
|
|
8
|
+
const initValue = config.initValue;
|
|
9
|
+
const startLoop = initValue == null || config.checkContinue(initValue, -1);
|
|
10
|
+
if (startLoop) {
|
|
11
|
+
let i = 0;
|
|
12
|
+
let prevValue = initValue;
|
|
13
|
+
let check;
|
|
14
|
+
do {
|
|
15
|
+
prevValue = yield config.next(i, prevValue);
|
|
16
|
+
i += 1;
|
|
17
|
+
check = config.checkContinue(prevValue, i);
|
|
18
|
+
} while (check);
|
|
19
|
+
result = prevValue;
|
|
23
20
|
}
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
else {
|
|
22
|
+
result = initValue;
|
|
26
23
|
}
|
|
27
|
-
|
|
24
|
+
return result;
|
|
25
|
+
});
|
|
28
26
|
}
|
|
29
27
|
exports.performTaskLoop = performTaskLoop;
|
|
30
28
|
function performTaskCountLoop(config) {
|
|
31
|
-
return performTaskLoop(Object.assign(Object.assign({}, config), { checkContinue: (_, i) =>
|
|
29
|
+
return performTaskLoop(Object.assign(Object.assign({}, config), { checkContinue: (_, i) => i < config.count }));
|
|
32
30
|
}
|
|
33
31
|
exports.performTaskCountLoop = performTaskCountLoop;
|
|
34
32
|
function performMakeLoop(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise.loop.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.loop.ts"],"names":[],"mappings":";;;;AAkBA,
|
|
1
|
+
{"version":3,"file":"promise.loop.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.loop.ts"],"names":[],"mappings":";;;;AAkBA,SAAsB,eAAe,CAAI,MAAmE;;QAC1G,IAAI,MAAS,CAAC;QACd,MAAM,SAAS,GAAI,MAA2C,CAAC,SAAS,CAAC;QACzE,MAAM,SAAS,GAAG,SAAS,IAAI,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;QAE3E,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,SAAS,GAAa,SAAS,CAAC;YACpC,IAAI,KAAc,CAAC;YAEnB,GAAG;gBACD,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC5C,CAAC,IAAI,CAAC,CAAC;gBACP,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;aAC5C,QAAQ,KAAK,EAAE;YAEhB,MAAM,GAAG,SAAS,CAAC;SACpB;aAAM;YACL,MAAM,GAAG,SAAS,CAAC;SACpB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CAAA;AAtBD,0CAsBC;AAcD,SAAgB,oBAAoB,CAAI,MAA6E;IACnH,OAAO,eAAe,CAAI,gCACrB,MAAM,KACT,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GACd,CAAC,CAAC;AACjC,CAAC;AALD,oDAKC;AAQD,SAAgB,eAAe,CAAI,MAAgC;IACjE,OAAO,oBAAoB,CAAM;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,SAAS,EAAE,EAAS;QACpB,IAAI,EAAE,CAAO,CAAC,EAAE,WAAgB,EAAE,EAAE;YAClC,MAAM,MAAM,GAAM,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YACpD,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,OAAO,WAAW,CAAC;QACrB,CAAC,CAAA;KACF,CAAC,CAAC;AACL,CAAC;AAVD,0CAUC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export interface PromiseFullRef<O =
|
|
1
|
+
export interface PromiseFullRef<O = unknown> {
|
|
2
2
|
readonly promise: Promise<O>;
|
|
3
3
|
readonly resolve: (value: O | PromiseLike<O>) => void;
|
|
4
|
-
readonly reject: (reason?:
|
|
4
|
+
readonly reject: (reason?: unknown) => void;
|
|
5
5
|
}
|
|
6
|
-
export declare type PromiseExecutor<O> = (resolve: (value: O | PromiseLike<O>) => void, reject: (reason?:
|
|
6
|
+
export declare type PromiseExecutor<O> = (resolve: (value: O | PromiseLike<O>) => void, reject: (reason?: unknown) => void) => void;
|
|
7
7
|
/**
|
|
8
8
|
* Creates a new promise and returns the full ref for it.
|
|
9
9
|
*/
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makePromiseFullRef = void 0;
|
|
4
|
-
let
|
|
4
|
+
let PROMISE_REF_NUMBER = 0;
|
|
5
5
|
/**
|
|
6
6
|
* Creates a new promise and returns the full ref for it.
|
|
7
7
|
*/
|
|
@@ -12,7 +12,7 @@ function makePromiseFullRef(executor) {
|
|
|
12
12
|
ref.reject = reject;
|
|
13
13
|
executor(resolve, reject);
|
|
14
14
|
});
|
|
15
|
-
ref.number =
|
|
15
|
+
ref.number = PROMISE_REF_NUMBER += 1; // added for debugging
|
|
16
16
|
return ref;
|
|
17
17
|
}
|
|
18
18
|
exports.makePromiseFullRef = makePromiseFullRef;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise.ref.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.ref.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"promise.ref.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/promise.ref.ts"],"names":[],"mappings":";;;AAUA,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAE3B;;GAEG;AACH,SAAgB,kBAAkB,CAAI,QAA4B;IAChE,MAAM,GAAG,GAAG,EAA0D,CAAC;IAEvE,GAAG,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5C,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,GAAG,kBAAkB,IAAI,CAAC,CAAC,CAAC,sBAAsB;IAE5D,OAAO,GAAG,CAAC;AACb,CAAC;AAZD,gDAYC"}
|
package/src/lib/promise/wait.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.waitForMs = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
function waitForMs(ms, value) {
|
|
6
6
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
7
|
-
return new Promise(resolve => setTimeout(() => resolve(value), ms));
|
|
7
|
+
return new Promise((resolve) => setTimeout(() => resolve(value), ms));
|
|
8
8
|
});
|
|
9
9
|
}
|
|
10
10
|
exports.waitForMs = waitForMs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/wait.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/promise/wait.ts"],"names":[],"mappings":";;;;AAMA,SAAsB,SAAS,CAAI,EAAU,EAAE,KAAS;;QACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;CAAA;AAFD,8BAEC"}
|
|
@@ -36,7 +36,6 @@ var RelationChange;
|
|
|
36
36
|
*/
|
|
37
37
|
RelationChange["INSERT"] = "insert";
|
|
38
38
|
})(RelationChange = exports.RelationChange || (exports.RelationChange = {}));
|
|
39
|
-
;
|
|
40
39
|
/**
|
|
41
40
|
* Utility class for modifying a collection of relational objects.
|
|
42
41
|
*
|
|
@@ -182,7 +181,7 @@ class ModelRelationUtility {
|
|
|
182
181
|
map.delete(key); // Remove from the map.
|
|
183
182
|
}
|
|
184
183
|
});
|
|
185
|
-
return currentKeyPairs.filter(x => map.has(x[0])).map(x => x[1]); // Retain order, remove from map.
|
|
184
|
+
return currentKeyPairs.filter((x) => map.has(x[0])).map((x) => x[1]); // Retain order, remove from map.
|
|
186
185
|
}
|
|
187
186
|
else {
|
|
188
187
|
return ModelRelationUtility.removeKeysFromCollection(current, remove.map(readKey), readKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/relation/relation.ts"],"names":[],"mappings":";;;AAAA,oCAAkD;AAClD,0CAAuG;AAGvG,IAAY,cA+BX;AA/BD,WAAY,cAAc;IACxB;;;;;OAKG;IACH,6BAAW,CAAA;IACX;;OAEG;IACH,6BAAW,CAAA;IACX;;;;OAIG;IACH,yDAAuC,CAAA;IACvC;;OAEG;IACH,mCAAiB,CAAA;IACjB;;;OAGG;IACH,mCAAiB,CAAA;IACjB;;OAEG;IACH,mCAAiB,CAAA;AACnB,CAAC,EA/BW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QA+BzB;
|
|
1
|
+
{"version":3,"file":"relation.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/relation/relation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { MapFunction } from '../value/map';
|
|
2
|
+
import { ArrayOrValue } from '../array/array';
|
|
3
|
+
import { PrimativeKey } from '../key';
|
|
4
|
+
import { Handler, HandlerAccessor, HandlerFunction, HandlerSetAccessor } from './handler';
|
|
5
|
+
/**
|
|
6
|
+
* Wraps a HandlerAccessor and the item it is bound to in order to be a HandlerSetAccessor.
|
|
7
|
+
*/
|
|
8
|
+
export interface HandlerBindAccessor<T, K extends PrimativeKey = string> extends HandlerSetAccessor<T, K> {
|
|
9
|
+
readonly accessor: HandlerAccessor<T, K>;
|
|
10
|
+
readonly boundTo: unknown;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Creates a HandlerBindAccessor<T, K> for the input values.
|
|
14
|
+
*
|
|
15
|
+
* @param bindTo
|
|
16
|
+
* @param accessor
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare function handlerBindAccessor<T, K extends PrimativeKey = string>(boundTo: unknown, accessor: HandlerAccessor<T, K>): HandlerBindAccessor<T, K>;
|
|
20
|
+
/**
|
|
21
|
+
* Contextual function that configures the context's Handler with the input function for the context's key.
|
|
22
|
+
*/
|
|
23
|
+
export declare type HandlerSetFunction<T> = (handlerFunction: HandlerFunction<T>) => void;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a HandlerSetFunction.
|
|
26
|
+
*
|
|
27
|
+
* @param accessor
|
|
28
|
+
* @param key
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
export declare function handlerSetFunction<T, K extends PrimativeKey = string>(accessor: HandlerSetAccessor<T, K>, key: ArrayOrValue<K>): HandlerSetFunction<T>;
|
|
32
|
+
export declare type HandlerMappedSetFunction<I> = (handlerFunction: HandlerFunction<I>) => void;
|
|
33
|
+
export declare function handlerMappedSetFunction<I, T, K extends PrimativeKey = string>(accessor: HandlerSetAccessor<T, K>, key: ArrayOrValue<K>, mapFn: MapFunction<T, I>): HandlerMappedSetFunction<I>;
|
|
34
|
+
/**
|
|
35
|
+
* Factory for a HandlerMappedSetFunction<I>.
|
|
36
|
+
*/
|
|
37
|
+
export declare type HandlerMappedSetFunctionFactory<I, K extends PrimativeKey = string> = (key: ArrayOrValue<K>) => HandlerMappedSetFunction<I>;
|
|
38
|
+
export declare function handlerMappedSetFunctionFactory<I, T, K extends PrimativeKey = string>(accessor: HandlerSetAccessor<T, K>, mapFn: MapFunction<T, I>): HandlerMappedSetFunctionFactory<I, K>;
|
|
39
|
+
export declare type HandlerConfigurerFunction<C extends HandlerBindAccessor<T, K>, T, K extends PrimativeKey = string> = (configurer: C) => void;
|
|
40
|
+
export declare type HandlerConfigurer<C extends HandlerBindAccessor<T, K>, T, K extends PrimativeKey = string> = (bindTo: unknown, configure: HandlerConfigurerFunction<C, T, K>) => void;
|
|
41
|
+
export declare type HandlerConfigurerFactory<C extends HandlerBindAccessor<T, K>, T, K extends PrimativeKey = string> = (handler: Handler<T, K>) => HandlerConfigurer<C, T, K>;
|
|
42
|
+
/**
|
|
43
|
+
* Config for handlerConfigurerFactory().
|
|
44
|
+
*/
|
|
45
|
+
export interface HandlerConfigurerFactoryConfig<C extends HandlerBindAccessor<T, K>, T, K extends PrimativeKey = string> {
|
|
46
|
+
configurerForAccessor: (accessor: HandlerBindAccessor<T, K>) => C;
|
|
47
|
+
}
|
|
48
|
+
export declare function handlerConfigurerFactory<C extends HandlerBindAccessor<T, K>, T, K extends PrimativeKey = string>(config: HandlerConfigurerFactoryConfig<C, T, K>): HandlerConfigurerFactory<C, T, K>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handlerConfigurerFactory = exports.handlerMappedSetFunctionFactory = exports.handlerMappedSetFunction = exports.handlerSetFunction = exports.handlerBindAccessor = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a HandlerBindAccessor<T, K> for the input values.
|
|
6
|
+
*
|
|
7
|
+
* @param bindTo
|
|
8
|
+
* @param accessor
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
function handlerBindAccessor(boundTo, accessor) {
|
|
12
|
+
return {
|
|
13
|
+
accessor,
|
|
14
|
+
boundTo,
|
|
15
|
+
set: (key, handle) => {
|
|
16
|
+
accessor.bindSet(boundTo, key, handle);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
exports.handlerBindAccessor = handlerBindAccessor;
|
|
21
|
+
/**
|
|
22
|
+
* Creates a HandlerSetFunction.
|
|
23
|
+
*
|
|
24
|
+
* @param accessor
|
|
25
|
+
* @param key
|
|
26
|
+
* @returns
|
|
27
|
+
*/
|
|
28
|
+
function handlerSetFunction(accessor, key) {
|
|
29
|
+
const fn = (handlerFunction) => {
|
|
30
|
+
accessor.set(key, handlerFunction); // set the handler on the pre-defined key.
|
|
31
|
+
};
|
|
32
|
+
fn.key = key;
|
|
33
|
+
return fn;
|
|
34
|
+
}
|
|
35
|
+
exports.handlerSetFunction = handlerSetFunction;
|
|
36
|
+
function handlerMappedSetFunction(accessor, key, mapFn) {
|
|
37
|
+
const handlerSet = handlerSetFunction(accessor, key);
|
|
38
|
+
return (handlerFunction) => {
|
|
39
|
+
// set an intermediary function that calls the target function. We don't use an arrow function so we have access to the "this", if bound.
|
|
40
|
+
handlerSet(function (value) {
|
|
41
|
+
const mapped = mapFn(value); // fowards "this" to the next call.
|
|
42
|
+
return handlerFunction.call(this, mapped);
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
exports.handlerMappedSetFunction = handlerMappedSetFunction;
|
|
47
|
+
function handlerMappedSetFunctionFactory(accessor, mapFn) {
|
|
48
|
+
return (key) => handlerMappedSetFunction(accessor, key, mapFn);
|
|
49
|
+
}
|
|
50
|
+
exports.handlerMappedSetFunctionFactory = handlerMappedSetFunctionFactory;
|
|
51
|
+
function handlerConfigurerFactory(config) {
|
|
52
|
+
return (handler) => {
|
|
53
|
+
return (bindTo, configure) => {
|
|
54
|
+
const accessor = handlerBindAccessor(bindTo, handler);
|
|
55
|
+
const configurer = config.configurerForAccessor(accessor);
|
|
56
|
+
configure(configurer);
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
exports.handlerConfigurerFactory = handlerConfigurerFactory;
|
|
61
|
+
//# sourceMappingURL=handler.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.config.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/service/handler.config.ts"],"names":[],"mappings":";;;AAaA;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAqC,OAAgB,EAAE,QAA+B;IACvH,OAAO;QACL,QAAQ;QACR,OAAO;QACP,GAAG,EAAE,CAAC,GAAoB,EAAE,MAA0B,EAAE,EAAE;YACxD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;AACJ,CAAC;AARD,kDAQC;AAOD;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAqC,QAAkC,EAAE,GAAoB;IAC7H,MAAM,EAAE,GAAG,CAAC,eAAmC,EAAE,EAAE;QACjD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,0CAA0C;IAChF,CAAC,CAAC;IAEF,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC;IAEb,OAAO,EAAE,CAAC;AACZ,CAAC;AARD,gDAQC;AAID,SAAgB,wBAAwB,CAAwC,QAAkC,EAAE,GAAoB,EAAE,KAAwB;IAChK,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO,CAAC,eAAmC,EAAE,EAAE;QAC7C,yIAAyI;QACzI,UAAU,CAAC,UAAyB,KAAQ;YAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC;YAChE,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AATD,4DASC;AAOD,SAAgB,+BAA+B,CAAwC,QAAkC,EAAE,KAAwB;IACjJ,OAAO,CAAC,GAAoB,EAAE,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAClF,CAAC;AAFD,0EAEC;AAaD,SAAgB,wBAAwB,CAA0E,MAA+C;IAC/J,OAAO,CAAC,OAAsB,EAAE,EAAE;QAChC,OAAO,CAAC,MAAe,EAAE,SAA6C,EAAE,EAAE;YACxE,MAAM,QAAQ,GAA8B,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,UAAU,GAAM,MAAM,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAC7D,SAAS,CAAC,UAAU,CAAC,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AARD,4DAQC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { PrimativeKey, ReadKeyFunction } from './../key';
|
|
2
|
+
import { ArrayOrValue } from './../array/array';
|
|
3
|
+
import { PromiseOrValue } from '@dereekb/util';
|
|
4
|
+
/**
|
|
5
|
+
* Key used to signify
|
|
6
|
+
*/
|
|
7
|
+
export declare const CATCH_ALL_HANDLE_RESULT_KEY = "__CATCH_ALL_HANDLE_RESULT_KEY__";
|
|
8
|
+
/**
|
|
9
|
+
* Whether or not the input value was handled.
|
|
10
|
+
*/
|
|
11
|
+
export declare type HandleResult = boolean;
|
|
12
|
+
export declare type HandlerCatchAllKey = typeof CATCH_ALL_HANDLE_RESULT_KEY;
|
|
13
|
+
export declare type HandlerKey<K extends PrimativeKey = string> = K | HandlerCatchAllKey;
|
|
14
|
+
/**
|
|
15
|
+
* Used to perform a task on the input value.
|
|
16
|
+
*
|
|
17
|
+
* If the value is not used/"handled", returns false.
|
|
18
|
+
*/
|
|
19
|
+
export declare type HandlerFunction<T> = (value: T) => PromiseOrValue<HandleResult>;
|
|
20
|
+
export interface HandlerSetAccessor<T, K extends PrimativeKey = string> {
|
|
21
|
+
/**
|
|
22
|
+
* Adds a new handler function to the current handler.
|
|
23
|
+
*
|
|
24
|
+
* @param key
|
|
25
|
+
* @param handle
|
|
26
|
+
*/
|
|
27
|
+
set(key: ArrayOrValue<HandlerKey<K>>, handle: HandlerFunction<T>): void;
|
|
28
|
+
}
|
|
29
|
+
export interface HandlerAccessor<T, K extends PrimativeKey = string> extends HandlerSetAccessor<T, K> {
|
|
30
|
+
/**
|
|
31
|
+
* Used to read a handler key from the input value.
|
|
32
|
+
*/
|
|
33
|
+
readonly readKey: ReadKeyFunction<T, K>;
|
|
34
|
+
/**
|
|
35
|
+
* Convenience function for binding a function. Useful for use within classes that pass their function and still need to be bound for when the function runs.
|
|
36
|
+
*
|
|
37
|
+
* @param bindTo
|
|
38
|
+
* @param key
|
|
39
|
+
* @param handle
|
|
40
|
+
*/
|
|
41
|
+
bindSet(bindTo: unknown, key: ArrayOrValue<HandlerKey<K>>, handle: HandlerFunction<T>): void;
|
|
42
|
+
}
|
|
43
|
+
export declare type Handler<T, K extends PrimativeKey = string> = HandlerFunction<T> & HandlerAccessor<T, K>;
|
|
44
|
+
export declare type HandlerFactory<T, K extends PrimativeKey = string> = () => Handler<T, K>;
|
|
45
|
+
export declare function handlerFactory<T, K extends PrimativeKey = string>(readKey: ReadKeyFunction<T, K>): HandlerFactory<T, K>;
|
|
46
|
+
export declare function makeHandler<T, K extends PrimativeKey = string>(readKey: ReadKeyFunction<T, K>): Handler<T, K>;
|
|
47
|
+
export declare function catchAllHandlerKey(): typeof CATCH_ALL_HANDLE_RESULT_KEY;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.catchAllHandlerKey = exports.makeHandler = exports.handlerFactory = exports.CATCH_ALL_HANDLE_RESULT_KEY = void 0;
|
|
4
|
+
const util_1 = require("@dereekb/util");
|
|
5
|
+
/**
|
|
6
|
+
* Key used to signify
|
|
7
|
+
*/
|
|
8
|
+
exports.CATCH_ALL_HANDLE_RESULT_KEY = '__CATCH_ALL_HANDLE_RESULT_KEY__';
|
|
9
|
+
function handlerFactory(readKey) {
|
|
10
|
+
return () => {
|
|
11
|
+
let catchAll;
|
|
12
|
+
const map = new Map();
|
|
13
|
+
const set = (key, handle) => {
|
|
14
|
+
if (key === exports.CATCH_ALL_HANDLE_RESULT_KEY) {
|
|
15
|
+
catchAll = handle;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
(0, util_1.setKeysOnMap)(map, key, handle);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
const bindSet = (bindTo, key, handle) => {
|
|
22
|
+
const bindHandle = handle.bind(bindTo);
|
|
23
|
+
set(key, bindHandle);
|
|
24
|
+
};
|
|
25
|
+
const fn = (0, util_1.build)({
|
|
26
|
+
base: ((value) => {
|
|
27
|
+
var _a;
|
|
28
|
+
const key = readKey(value);
|
|
29
|
+
const handler = (_a = (key != null ? map.get(key) : undefined)) !== null && _a !== void 0 ? _a : catchAll;
|
|
30
|
+
let handled = false;
|
|
31
|
+
if (handler) {
|
|
32
|
+
handled = handler(value);
|
|
33
|
+
}
|
|
34
|
+
return handled;
|
|
35
|
+
}),
|
|
36
|
+
build: (x) => {
|
|
37
|
+
x.readKey = readKey;
|
|
38
|
+
x.set = set;
|
|
39
|
+
x.bindSet = bindSet;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return fn;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
exports.handlerFactory = handlerFactory;
|
|
46
|
+
function makeHandler(readKey) {
|
|
47
|
+
return handlerFactory(readKey)();
|
|
48
|
+
}
|
|
49
|
+
exports.makeHandler = makeHandler;
|
|
50
|
+
function catchAllHandlerKey() {
|
|
51
|
+
return exports.CATCH_ALL_HANDLE_RESULT_KEY;
|
|
52
|
+
}
|
|
53
|
+
exports.catchAllHandlerKey = catchAllHandlerKey;
|
|
54
|
+
//# sourceMappingURL=handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/service/handler.ts"],"names":[],"mappings":";;;AAEA,wCAA2E;AAE3E;;GAEG;AACU,QAAA,2BAA2B,GAAG,iCAAiC,CAAC;AA8C7E,SAAgB,cAAc,CAAqC,OAA8B;IAC/F,OAAO,GAAG,EAAE;QACV,IAAI,QAAmC,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAyB,CAAC;QAE7C,MAAM,GAAG,GAAG,CAAC,GAAoB,EAAE,MAA0B,EAAE,EAAE;YAC/D,IAAI,GAAG,KAAK,mCAA2B,EAAE;gBACvC,QAAQ,GAAG,MAAM,CAAC;aACnB;iBAAM;gBACL,IAAA,mBAAY,EAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;aAChC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,CAAC,MAAe,EAAE,GAAoB,EAAE,MAA0B,EAAE,EAAE;YACpF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,MAAM,EAAE,GAAG,IAAA,YAAK,EAAgB;YAC9B,IAAI,EAAE,CAAC,CAAC,KAAQ,EAAE,EAAE;;gBAClB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,MAAA,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,QAAQ,CAAC;gBACrE,IAAI,OAAO,GAA4B,KAAK,CAAC;gBAE7C,IAAI,OAAO,EAAE;oBACX,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC1B;gBAED,OAAO,OAAO,CAAC;YACjB,CAAC,CAAkB;YACnB,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;gBACX,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;gBACpB,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;gBACZ,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;AACJ,CAAC;AAvCD,wCAuCC;AAED,SAAgB,WAAW,CAAqC,OAA8B;IAC5F,OAAO,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;AACnC,CAAC;AAFD,kCAEC;AAED,SAAgB,kBAAkB;IAChC,OAAO,mCAA2B,CAAC;AACrC,CAAC;AAFD,gDAEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/service/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,2DAAiC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PrimativeKey, ReadKeyFunction } from
|
|
2
|
-
import { Maybe } from
|
|
1
|
+
import { PrimativeKey, ReadKeyFunction } from '../key';
|
|
2
|
+
import { Maybe } from '../value/maybe';
|
|
3
3
|
export interface HashSetConfig<K extends PrimativeKey, T> {
|
|
4
4
|
readKey: ReadKeyFunction<T, K>;
|
|
5
5
|
}
|
|
@@ -19,7 +19,7 @@ export declare class HashSet<K extends PrimativeKey, T> implements Set<T> {
|
|
|
19
19
|
clear(): void;
|
|
20
20
|
delete(value: T): boolean;
|
|
21
21
|
has(value: T): boolean;
|
|
22
|
-
forEach(callbackfn: (value: T, value2: T, set: Set<T>) => void, thisArg?:
|
|
22
|
+
forEach(callbackfn: (value: T, value2: T, set: Set<T>) => void, thisArg?: unknown): void;
|
|
23
23
|
entries(): IterableIterator<[T, T]>;
|
|
24
24
|
keys(): IterableIterator<T>;
|
|
25
25
|
values(): IterableIterator<T>;
|
|
@@ -11,7 +11,7 @@ class HashSet {
|
|
|
11
11
|
this.config = config;
|
|
12
12
|
this._map = new Map();
|
|
13
13
|
if (values) {
|
|
14
|
-
values.forEach(x => this.add(x));
|
|
14
|
+
values.forEach((x) => this.add(x));
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
get size() {
|
|
@@ -21,7 +21,7 @@ class HashSet {
|
|
|
21
21
|
return this._map.values();
|
|
22
22
|
}
|
|
23
23
|
addAll(values) {
|
|
24
|
-
values === null || values === void 0 ? void 0 : values.forEach(x => this.add(x));
|
|
24
|
+
values === null || values === void 0 ? void 0 : values.forEach((x) => this.add(x));
|
|
25
25
|
return this;
|
|
26
26
|
}
|
|
27
27
|
add(value) {
|
|
@@ -41,13 +41,13 @@ class HashSet {
|
|
|
41
41
|
return this._map.has(key);
|
|
42
42
|
}
|
|
43
43
|
forEach(callbackfn, thisArg) {
|
|
44
|
-
return this._map.forEach((value
|
|
44
|
+
return this._map.forEach((value) => {
|
|
45
45
|
callbackfn.apply(thisArg, [value, value, this]);
|
|
46
46
|
});
|
|
47
47
|
}
|
|
48
48
|
entries() {
|
|
49
49
|
const result = this.valuesArray();
|
|
50
|
-
return result.map(x => [x, x]).values();
|
|
50
|
+
return result.map((x) => [x, x]).values();
|
|
51
51
|
}
|
|
52
52
|
keys() {
|
|
53
53
|
return this.values();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.hashset.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.hashset.ts"],"names":[],"mappings":";;;AAOA;;;;GAIG;AACH,MAAa,OAAO;
|
|
1
|
+
{"version":3,"file":"set.hashset.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.hashset.ts"],"names":[],"mappings":";;;AAOA;;;;GAIG;AACH,MAAa,OAAO;IAGlB,YAAqB,MAA2B,EAAE,MAAY;QAAzC,WAAM,GAAN,MAAM,CAAqB;QAFxC,SAAI,GAAG,IAAI,GAAG,EAAe,CAAC;QAGpC,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACpC;IACH,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,MAAkB;QACvB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,KAAQ;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAQ;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,KAAQ;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,UAAsD,EAAE,OAAiB;QAC/E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAW,CAAC,CAAC,MAAM,EAAE,CAAC;IACtD,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,WAAW;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;CACF;AApED,0BAoEC"}
|
package/src/lib/set/set.js
CHANGED
|
@@ -49,7 +49,7 @@ function excludeValuesFromSet(values, set) {
|
|
|
49
49
|
}
|
|
50
50
|
exports.excludeValuesFromSet = excludeValuesFromSet;
|
|
51
51
|
function filterValuesFromSet(values, set, exclude = false) {
|
|
52
|
-
const filterFn =
|
|
52
|
+
const filterFn = exclude ? (x) => !set.has(x) : (x) => set.has(x);
|
|
53
53
|
return values.filter(filterFn);
|
|
54
54
|
}
|
|
55
55
|
exports.filterValuesFromSet = filterValuesFromSet;
|
|
@@ -84,7 +84,7 @@ function containsAnyValueFromSet(values, valuesToFind) {
|
|
|
84
84
|
}
|
|
85
85
|
exports.containsAnyValueFromSet = containsAnyValueFromSet;
|
|
86
86
|
function setContainsAnyValue(valuesSet, valuesToFind) {
|
|
87
|
-
return
|
|
87
|
+
return valuesSet ? Array.from(valuesToFind).findIndex((x) => valuesSet.has(x)) !== -1 : false;
|
|
88
88
|
}
|
|
89
89
|
exports.setContainsAnyValue = setContainsAnyValue;
|
|
90
90
|
/**
|
|
@@ -108,7 +108,7 @@ exports.containsAllValues = containsAllValues;
|
|
|
108
108
|
* @returns
|
|
109
109
|
*/
|
|
110
110
|
function setContainsAllValues(valuesSet, valuesToFind) {
|
|
111
|
-
return
|
|
111
|
+
return valuesSet ? Array.from(valuesToFind).findIndex((x) => !valuesSet.has(x)) == -1 : false;
|
|
112
112
|
}
|
|
113
113
|
exports.setContainsAllValues = setContainsAllValues;
|
|
114
114
|
//# sourceMappingURL=set.js.map
|
package/src/lib/set/set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.ts"],"names":[],"mappings":";;;AACA,0CAA8C;AAC9C,mDAA2E;AAC3E,yCAAgD;AAEhD,SAAgB,KAAK,CAAI,MAA0B;IACjD,IAAI,GAAW,CAAC;IAEhB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;KACzB;SAAM;QACL,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QAChB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KACvB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAXD,sBAWC;AAED,SAAgB,QAAQ,CAAI,GAAW,EAAE,MAAiC;IACxE,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAFD,4BAEC;AAED,SAAgB,aAAa,CAAI,GAAW,EAAE,MAAiC;IAC7E,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,kBAAkB,CAAI,CAAqB,EAAE,CAAqB;IAChF,OAAO,IAAA,+BAAmB,EAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;AAC9D,CAAC;AAFD,gDAEC;AAED,SAAgB,uBAAuB,CAAI,CAAqB,EAAE,CAAqB;IACrF,OAAO,0BAA0B,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,0DAEC;AAED,SAAgB,0BAA0B,CAAI,CAAgB,EAAE,CAAgB;IAC9E,OAAO,KAAK,CAAC,IAAI,CAAC,IAAA,+BAAmB,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAFD,gEAEC;AAED,SAAgB,iBAAiB,CAAI,KAAY;IAC/C,OAAO,IAAI,GAAG,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC,CAAC;AACtC,CAAC;AAFD,8CAEC;AAED,SAAgB,iBAAiB,CAAI,MAAW,EAAE,GAAW;IAC3D,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAFD,8CAEC;AAED,SAAgB,oBAAoB,CAAI,MAAW,EAAE,GAAW;IAC9D,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC;AAFD,oDAEC;AAED,SAAgB,mBAAmB,CAAI,MAAW,EAAE,GAAW,EAAE,OAAO,GAAG,KAAK;IAC9E,MAAM,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.ts"],"names":[],"mappings":"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"}
|