@oscarpalmer/atoms 0.204.0 → 0.205.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.
- package/dist/array/filter.d.mts +1 -1
- package/dist/array/find.d.mts +3 -3
- package/dist/array/first.d.mts +3 -4
- package/dist/array/first.mjs +1 -1
- package/dist/array/group-by.d.mts +3 -3
- package/dist/array/index.d.mts +2 -5
- package/dist/array/index.mjs +2 -5
- package/dist/array/last.d.mts +3 -4
- package/dist/array/last.mjs +1 -1
- package/dist/array/move.d.mts +4 -4
- package/dist/array/push.d.mts +2 -1
- package/dist/array/push.mjs +1 -1
- package/dist/array/select.d.mts +95 -84
- package/dist/array/select.mjs +6 -6
- package/dist/array/sort.d.mts +6 -6
- package/dist/array/swap.d.mts +3 -3
- package/dist/array/swap.mjs +1 -1
- package/dist/array/to-map.d.mts +3 -3
- package/dist/array/to-record.d.mts +3 -3
- package/dist/beacon.mjs +2 -2
- package/dist/color/constants.d.mts +14 -41
- package/dist/color/instance.d.mts +0 -1
- package/dist/color/misc/state.d.mts +2 -29
- package/dist/color/models.d.mts +18 -4
- package/dist/function/limit.d.mts +4 -4
- package/dist/function/once.d.mts +6 -8
- package/dist/function/retry.d.mts +2 -2
- package/dist/index.d.mts +1011 -1020
- package/dist/index.mjs +113 -102
- package/dist/internal/array/compact.d.mts +1 -1
- package/dist/internal/array/find.d.mts +4 -4
- package/dist/internal/array/index-of.d.mts +3 -3
- package/dist/internal/array/insert.d.mts +1 -1
- package/dist/internal/array/match.d.mts +1 -1
- package/dist/internal/array/sets.d.mts +1 -1
- package/dist/internal/function/assert.d.mts +7 -7
- package/dist/internal/function/limit.d.mts +1 -1
- package/dist/internal/function/work.d.mts +4 -4
- package/dist/internal/herald.d.mts +1 -1
- package/dist/internal/math/aggregate.d.mts +2 -2
- package/dist/internal/result/misc.d.mts +6 -6
- package/dist/internal/sized/map.d.mts +2 -2
- package/dist/internal/value/compare.d.mts +7 -19
- package/dist/internal/value/equal.d.mts +8 -31
- package/dist/internal/value/handlers.d.mts +2 -5
- package/dist/internal/value/has.d.mts +3 -3
- package/dist/is.d.mts +6 -6
- package/dist/is.mjs +2 -2
- package/dist/promise/helpers.d.mts +2 -2
- package/dist/promise/index.d.mts +7 -7
- package/dist/promise/models.d.mts +1 -1
- package/dist/promise/timed.d.mts +1 -1
- package/dist/queue.d.mts +1 -1
- package/dist/result/index.d.mts +1 -1
- package/dist/result/index.mjs +3 -1
- package/dist/result/match.d.mts +3 -3
- package/dist/result/work/flow.d.mts +1 -1
- package/dist/result/work/pipe.d.mts +1 -1
- package/dist/sized/set.d.mts +1 -1
- package/dist/string/fuzzy.d.mts +4 -4
- package/dist/string/normalize.d.mts +1 -1
- package/dist/string/template.d.mts +1 -2
- package/dist/value/clone.d.mts +8 -20
- package/dist/value/diff.d.mts +1 -1
- package/dist/value/freeze.d.mts +4 -4
- package/dist/value/merge.d.mts +5 -5
- package/dist/value/transform.d.mts +1 -1
- package/package.json +25 -10
- package/plugin/index.js +1 -1
package/dist/index.mjs
CHANGED
|
@@ -115,6 +115,15 @@ function filter(array, ...parameters) {
|
|
|
115
115
|
}
|
|
116
116
|
filter.remove = exclude;
|
|
117
117
|
//#endregion
|
|
118
|
+
//#region src/array/find.ts
|
|
119
|
+
function find(array, ...parameters) {
|
|
120
|
+
return findValue(FIND_VALUE_ITEM, array, parameters, false);
|
|
121
|
+
}
|
|
122
|
+
function findLast(array, ...parameters) {
|
|
123
|
+
return findValue(FIND_VALUE_ITEM, array, parameters, true);
|
|
124
|
+
}
|
|
125
|
+
find.last = findLast;
|
|
126
|
+
//#endregion
|
|
118
127
|
//#region src/array/first.ts
|
|
119
128
|
function first(array, ...parameters) {
|
|
120
129
|
return findAbsoluteValueOrDefault(array, parameters, void 0, false, false);
|
|
@@ -122,7 +131,7 @@ function first(array, ...parameters) {
|
|
|
122
131
|
function firstOrDefault(array, defaultValue, ...parameters) {
|
|
123
132
|
return findAbsoluteValueOrDefault(array, parameters, defaultValue, true, false);
|
|
124
133
|
}
|
|
125
|
-
first.
|
|
134
|
+
first.defaulted = firstOrDefault;
|
|
126
135
|
//#endregion
|
|
127
136
|
//#region src/internal/array/group.ts
|
|
128
137
|
function groupValues(array, key, value, arrays) {
|
|
@@ -297,6 +306,15 @@ function isNonPrimitive(value) {
|
|
|
297
306
|
return !isPrimitive(value);
|
|
298
307
|
}
|
|
299
308
|
/**
|
|
309
|
+
* Is the value not a template strings array?
|
|
310
|
+
*
|
|
311
|
+
* @param value Value to check
|
|
312
|
+
* @returns `true` if the value is not a `TemplateStringsArray`, otherwise `false`
|
|
313
|
+
*/
|
|
314
|
+
function isNonTemplateStringsArray(value) {
|
|
315
|
+
return !isTemplateStringsArray(value);
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
300
318
|
* Is the value not a typed array?
|
|
301
319
|
*
|
|
302
320
|
* @param value Value to check
|
|
@@ -388,15 +406,6 @@ function getArray(value, indiced) {
|
|
|
388
406
|
return array;
|
|
389
407
|
}
|
|
390
408
|
//#endregion
|
|
391
|
-
//#region src/internal/array/index-of.ts
|
|
392
|
-
function indexOf(array, ...parameters) {
|
|
393
|
-
return findValue(FIND_VALUE_INDEX, array, parameters, false);
|
|
394
|
-
}
|
|
395
|
-
function lastIndexOf(array, ...parameters) {
|
|
396
|
-
return findValue(FIND_VALUE_INDEX, array, parameters, true);
|
|
397
|
-
}
|
|
398
|
-
indexOf.last = lastIndexOf;
|
|
399
|
-
//#endregion
|
|
400
409
|
//#region src/internal/array/match.ts
|
|
401
410
|
function endsWithArray(haystack, needle, key) {
|
|
402
411
|
return endings.has(getPosition(haystack, needle, key)[1]);
|
|
@@ -542,15 +551,6 @@ function exists(array, ...parameters) {
|
|
|
542
551
|
return findValue(FIND_VALUE_INDEX, array, parameters, false) > -1;
|
|
543
552
|
}
|
|
544
553
|
//#endregion
|
|
545
|
-
//#region src/array/find.ts
|
|
546
|
-
function find(array, ...parameters) {
|
|
547
|
-
return findValue(FIND_VALUE_ITEM, array, parameters, false);
|
|
548
|
-
}
|
|
549
|
-
function findLast(array, ...parameters) {
|
|
550
|
-
return findValue(FIND_VALUE_ITEM, array, parameters, true);
|
|
551
|
-
}
|
|
552
|
-
find.last = findLast;
|
|
553
|
-
//#endregion
|
|
554
554
|
//#region src/array/flatten.ts
|
|
555
555
|
/**
|
|
556
556
|
* Flatten an array _(using native `flat` and maximum depth)_
|
|
@@ -668,24 +668,6 @@ function reverse(array) {
|
|
|
668
668
|
return array;
|
|
669
669
|
}
|
|
670
670
|
//#endregion
|
|
671
|
-
//#region src/array/select.ts
|
|
672
|
-
function reverseSelect(array, ...parameters) {
|
|
673
|
-
return findValues("all", array, parameters, {
|
|
674
|
-
callback: parameters.shift(),
|
|
675
|
-
reverse: true
|
|
676
|
-
}).matched;
|
|
677
|
-
}
|
|
678
|
-
function select(array, ...parameters) {
|
|
679
|
-
return selectValues(array, parameters);
|
|
680
|
-
}
|
|
681
|
-
function selectValues(array, parameters) {
|
|
682
|
-
return findValues("all", array, parameters, {
|
|
683
|
-
callback: parameters.pop(),
|
|
684
|
-
reverse: false
|
|
685
|
-
}).matched;
|
|
686
|
-
}
|
|
687
|
-
select.reverse = reverseSelect;
|
|
688
|
-
//#endregion
|
|
689
671
|
//#region src/array/single.ts
|
|
690
672
|
function single(array, ...parameters) {
|
|
691
673
|
const { matched } = findValues("all", array, parameters);
|
|
@@ -812,7 +794,7 @@ function last(array, ...parameters) {
|
|
|
812
794
|
function lastOrDefault(array, defaultValue, ...parameters) {
|
|
813
795
|
return findAbsoluteValueOrDefault(array, parameters, defaultValue, true, true);
|
|
814
796
|
}
|
|
815
|
-
last.
|
|
797
|
+
last.defaulted = lastOrDefault;
|
|
816
798
|
//#endregion
|
|
817
799
|
//#region src/internal/array/overlap.ts
|
|
818
800
|
function arraysOverlap(first, second) {
|
|
@@ -907,6 +889,24 @@ function moveToIndex(array, value, index, key) {
|
|
|
907
889
|
move.indices = moveIndices;
|
|
908
890
|
move.toIndex = moveToIndex;
|
|
909
891
|
//#endregion
|
|
892
|
+
//#region src/array/select.ts
|
|
893
|
+
function filterAndMap(array, ...parameters) {
|
|
894
|
+
return selectValues(array, parameters);
|
|
895
|
+
}
|
|
896
|
+
function mapAndFilter(array, ...parameters) {
|
|
897
|
+
return findValues("all", array, parameters, {
|
|
898
|
+
callback: parameters.shift(),
|
|
899
|
+
reverse: true
|
|
900
|
+
}).matched;
|
|
901
|
+
}
|
|
902
|
+
function selectValues(array, parameters) {
|
|
903
|
+
return findValues("all", array, parameters, {
|
|
904
|
+
callback: parameters.pop(),
|
|
905
|
+
reverse: false
|
|
906
|
+
}).matched;
|
|
907
|
+
}
|
|
908
|
+
filterAndMap.reverse = mapAndFilter;
|
|
909
|
+
//#endregion
|
|
910
910
|
//#region src/internal/math/aggregate.ts
|
|
911
911
|
function aggregate(type, array, key, first) {
|
|
912
912
|
const length = Array.isArray(array) ? array.length : 0;
|
|
@@ -1338,6 +1338,15 @@ sort.getIndex = getSortedIndex;
|
|
|
1338
1338
|
sort.initialize = initializeSorter;
|
|
1339
1339
|
sort.is = isSorted;
|
|
1340
1340
|
//#endregion
|
|
1341
|
+
//#region src/internal/array/index-of.ts
|
|
1342
|
+
function indexOf(array, ...parameters) {
|
|
1343
|
+
return findValue(FIND_VALUE_INDEX, array, parameters, false);
|
|
1344
|
+
}
|
|
1345
|
+
function lastIndexOf(array, ...parameters) {
|
|
1346
|
+
return findValue(FIND_VALUE_INDEX, array, parameters, true);
|
|
1347
|
+
}
|
|
1348
|
+
indexOf.last = lastIndexOf;
|
|
1349
|
+
//#endregion
|
|
1341
1350
|
//#region src/array/swap.ts
|
|
1342
1351
|
function swap(array, first, second, third) {
|
|
1343
1352
|
if (!Array.isArray(array)) return [];
|
|
@@ -2055,66 +2064,6 @@ const RETRY_MESSAGE_EXPECTATION = "Retry expected a function";
|
|
|
2055
2064
|
const RETRY_MESSAGE_FAILED = "Retry failed";
|
|
2056
2065
|
retry.async = asyncRetry;
|
|
2057
2066
|
//#endregion
|
|
2058
|
-
//#region src/internal/function/work.ts
|
|
2059
|
-
function asyncFlow(...fns) {
|
|
2060
|
-
assertFlowFunctions(fns);
|
|
2061
|
-
return (...args) => asyncWork(args.map((value) => {
|
|
2062
|
-
if (isError(value)) throw value.error;
|
|
2063
|
-
return isOk(value) ? value.value : value;
|
|
2064
|
-
}), fns, true);
|
|
2065
|
-
}
|
|
2066
|
-
function flow(...fns) {
|
|
2067
|
-
assertFlowFunctions(fns);
|
|
2068
|
-
return (...args) => work(args.map((value) => {
|
|
2069
|
-
if (isError(value)) throw value.error;
|
|
2070
|
-
return isOk(value) ? value.value : value;
|
|
2071
|
-
}), fns, true);
|
|
2072
|
-
}
|
|
2073
|
-
async function asyncPipe(value, ...pipes) {
|
|
2074
|
-
assertPipeFunctions(pipes);
|
|
2075
|
-
return asyncWork(value, pipes, false);
|
|
2076
|
-
}
|
|
2077
|
-
function pipe(value, ...pipes) {
|
|
2078
|
-
assertPipeFunctions(pipes);
|
|
2079
|
-
return work(value, pipes, false);
|
|
2080
|
-
}
|
|
2081
|
-
async function asyncWork(initial, functions, flow) {
|
|
2082
|
-
const { length } = functions;
|
|
2083
|
-
let transformed = unwrapValue(initial);
|
|
2084
|
-
for (let index = 0; index < length; index += 1) {
|
|
2085
|
-
const fn = functions[index];
|
|
2086
|
-
transformed = unwrapValue(flow && index === 0 && Array.isArray(initial) ? await fn(...initial) : await fn(transformed));
|
|
2087
|
-
}
|
|
2088
|
-
return transformed;
|
|
2089
|
-
}
|
|
2090
|
-
function unwrapValue(value, flow, nested) {
|
|
2091
|
-
if (typeof value === "function") {
|
|
2092
|
-
if (nested != null) throw new TypeError(WORK_MESSAGE_NESTING);
|
|
2093
|
-
return unwrapValue(value(), flow, true);
|
|
2094
|
-
}
|
|
2095
|
-
if (flow != null && value instanceof Promise) throw new TypeError(flow ? WORK_MESSAGE_FLOW_PROMISE : WORK_MESSAGE_PIPE_PROMISE);
|
|
2096
|
-
if (isError(value)) throw value.error;
|
|
2097
|
-
return isOk(value) ? value.value : value;
|
|
2098
|
-
}
|
|
2099
|
-
function work(initial, functions, flow) {
|
|
2100
|
-
const { length } = functions;
|
|
2101
|
-
let transformed = unwrapValue(initial, flow);
|
|
2102
|
-
for (let index = 0; index < length; index += 1) {
|
|
2103
|
-
const fn = functions[index];
|
|
2104
|
-
transformed = unwrapValue(flow && index === 0 && Array.isArray(initial) ? fn(...initial) : fn(transformed), flow);
|
|
2105
|
-
}
|
|
2106
|
-
return transformed;
|
|
2107
|
-
}
|
|
2108
|
-
const WORK_MESSAGE_FLOW_ARRAY = "Flow expected to receive an array of functions";
|
|
2109
|
-
const WORK_MESSAGE_FLOW_PROMISE = "Synchronous Flow received a promise. Use `flow.async` instead.";
|
|
2110
|
-
const WORK_MESSAGE_NESTING = "Return values are too deeply nested.";
|
|
2111
|
-
const WORK_MESSAGE_PIPE_ARRAY = "Pipe expected to receive an array of functions";
|
|
2112
|
-
const WORK_MESSAGE_PIPE_PROMISE = "Synchronous Pipe received a promise. Use `pipe.async` instead.";
|
|
2113
|
-
const assertFlowFunctions = assert.condition((value) => Array.isArray(value) && value.every((item) => typeof item === "function"), WORK_MESSAGE_FLOW_ARRAY, TypeError);
|
|
2114
|
-
const assertPipeFunctions = assert.condition((value) => Array.isArray(value) && value.every((item) => typeof item === "function"), WORK_MESSAGE_PIPE_ARRAY, TypeError);
|
|
2115
|
-
flow.async = asyncFlow;
|
|
2116
|
-
pipe.async = asyncPipe;
|
|
2117
|
-
//#endregion
|
|
2118
2067
|
//#region src/internal/number.ts
|
|
2119
2068
|
/**
|
|
2120
2069
|
* Is the number between a minimum and maximum value?
|
|
@@ -2327,6 +2276,66 @@ const MEMOIZED_CALLBACK = "Memoized requires a callback function";
|
|
|
2327
2276
|
const MEMOIZED_KEY_SEPARATOR = "_";
|
|
2328
2277
|
const MEMOIZED_SYMBOL = Symbol("memoized");
|
|
2329
2278
|
//#endregion
|
|
2279
|
+
//#region src/internal/function/work.ts
|
|
2280
|
+
function asyncFlow(...fns) {
|
|
2281
|
+
assertFlowFunctions(fns);
|
|
2282
|
+
return (...args) => asyncWork(args.map((value) => {
|
|
2283
|
+
if (isError(value)) throw value.error;
|
|
2284
|
+
return isOk(value) ? value.value : value;
|
|
2285
|
+
}), fns, true);
|
|
2286
|
+
}
|
|
2287
|
+
function flow(...fns) {
|
|
2288
|
+
assertFlowFunctions(fns);
|
|
2289
|
+
return (...args) => work(args.map((value) => {
|
|
2290
|
+
if (isError(value)) throw value.error;
|
|
2291
|
+
return isOk(value) ? value.value : value;
|
|
2292
|
+
}), fns, true);
|
|
2293
|
+
}
|
|
2294
|
+
async function asyncPipe(value, ...pipes) {
|
|
2295
|
+
assertPipeFunctions(pipes);
|
|
2296
|
+
return asyncWork(value, pipes, false);
|
|
2297
|
+
}
|
|
2298
|
+
function pipe(value, ...pipes) {
|
|
2299
|
+
assertPipeFunctions(pipes);
|
|
2300
|
+
return work(value, pipes, false);
|
|
2301
|
+
}
|
|
2302
|
+
async function asyncWork(initial, functions, flow) {
|
|
2303
|
+
const { length } = functions;
|
|
2304
|
+
let transformed = unwrapValue(initial);
|
|
2305
|
+
for (let index = 0; index < length; index += 1) {
|
|
2306
|
+
const fn = functions[index];
|
|
2307
|
+
transformed = unwrapValue(flow && index === 0 && Array.isArray(initial) ? await fn(...initial) : await fn(transformed));
|
|
2308
|
+
}
|
|
2309
|
+
return transformed;
|
|
2310
|
+
}
|
|
2311
|
+
function unwrapValue(value, flow, nested) {
|
|
2312
|
+
if (typeof value === "function") {
|
|
2313
|
+
if (nested != null) throw new TypeError(WORK_MESSAGE_NESTING);
|
|
2314
|
+
return unwrapValue(value(), flow, true);
|
|
2315
|
+
}
|
|
2316
|
+
if (flow != null && value instanceof Promise) throw new TypeError(flow ? WORK_MESSAGE_FLOW_PROMISE : WORK_MESSAGE_PIPE_PROMISE);
|
|
2317
|
+
if (isError(value)) throw value.error;
|
|
2318
|
+
return isOk(value) ? value.value : value;
|
|
2319
|
+
}
|
|
2320
|
+
function work(initial, functions, flow) {
|
|
2321
|
+
const { length } = functions;
|
|
2322
|
+
let transformed = unwrapValue(initial, flow);
|
|
2323
|
+
for (let index = 0; index < length; index += 1) {
|
|
2324
|
+
const fn = functions[index];
|
|
2325
|
+
transformed = unwrapValue(flow && index === 0 && Array.isArray(initial) ? fn(...initial) : fn(transformed), flow);
|
|
2326
|
+
}
|
|
2327
|
+
return transformed;
|
|
2328
|
+
}
|
|
2329
|
+
const WORK_MESSAGE_FLOW_ARRAY = "Flow expected to receive an array of functions";
|
|
2330
|
+
const WORK_MESSAGE_FLOW_PROMISE = "Synchronous Flow received a promise. Use `flow.async` instead.";
|
|
2331
|
+
const WORK_MESSAGE_NESTING = "Return values are too deeply nested.";
|
|
2332
|
+
const WORK_MESSAGE_PIPE_ARRAY = "Pipe expected to receive an array of functions";
|
|
2333
|
+
const WORK_MESSAGE_PIPE_PROMISE = "Synchronous Pipe received a promise. Use `pipe.async` instead.";
|
|
2334
|
+
const assertFlowFunctions = assert.condition((value) => Array.isArray(value) && value.every((item) => typeof item === "function"), WORK_MESSAGE_FLOW_ARRAY, TypeError);
|
|
2335
|
+
const assertPipeFunctions = assert.condition((value) => Array.isArray(value) && value.every((item) => typeof item === "function"), WORK_MESSAGE_PIPE_ARRAY, TypeError);
|
|
2336
|
+
flow.async = asyncFlow;
|
|
2337
|
+
pipe.async = asyncPipe;
|
|
2338
|
+
//#endregion
|
|
2330
2339
|
//#region src/internal/string/case.ts
|
|
2331
2340
|
/**
|
|
2332
2341
|
* Convert a string to camel case _(thisIsCamelCase)_
|
|
@@ -2970,7 +2979,9 @@ promises.result = resultPromises;
|
|
|
2970
2979
|
//#region src/result/index.ts
|
|
2971
2980
|
async function asyncAttempt(value, err) {
|
|
2972
2981
|
try {
|
|
2973
|
-
let result
|
|
2982
|
+
let result;
|
|
2983
|
+
if (typeof value === "function") result = value();
|
|
2984
|
+
else result = value;
|
|
2974
2985
|
if (result instanceof Promise) result = await result;
|
|
2975
2986
|
return ok(result);
|
|
2976
2987
|
} catch (thrown) {
|
|
@@ -4483,7 +4494,7 @@ function Observable(beacon) {
|
|
|
4483
4494
|
};
|
|
4484
4495
|
}
|
|
4485
4496
|
Observable.prototype[BEACON_PROPERTY] = BEACON_OBSERVABLE;
|
|
4486
|
-
Observable.prototype.deactivate =
|
|
4497
|
+
Observable.prototype.deactivate = deactivateObservable;
|
|
4487
4498
|
Observable.prototype.subscribe = subscribeToObservable;
|
|
4488
4499
|
Object.defineProperty(Observable.prototype, "active", {
|
|
4489
4500
|
enumerable: true,
|
|
@@ -4532,7 +4543,7 @@ function createObserver(first, second, third) {
|
|
|
4532
4543
|
function deactivateBeacon() {
|
|
4533
4544
|
closeBeacon(this[BEACON_SYMBOL], false);
|
|
4534
4545
|
}
|
|
4535
|
-
function
|
|
4546
|
+
function deactivateObservable() {
|
|
4536
4547
|
this[BEACON_SYMBOL].active = false;
|
|
4537
4548
|
}
|
|
4538
4549
|
function emitBeaconError(error, finish) {
|
|
@@ -6836,4 +6847,4 @@ var SizedSet = class extends Set {
|
|
|
6836
6847
|
}
|
|
6837
6848
|
};
|
|
6838
6849
|
//#endregion
|
|
6839
|
-
export { CancelablePromise, Logger, PromiseTimeoutError, QueueError, RetryError, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SizedMap, SizedSet, assert, assertCondition, assertDefined, assertInstanceOf, assertIs, assertProperty, assign, asyncAttempt, asyncDebounce, asyncFlow, asyncMatchResult, asyncOnce, asyncPipe, asyncThrottle, attempt, attemptAsyncFlow, attemptAsyncPipe, attemptFlow, attemptPipe, attemptPromise, average, beacon, between, camelCase, cancelable, capitalize, ceil, chunk, clamp, clone, compact, compare, copy, count, debounce, deburr, dedent, delay, deregisterCloner, deregisterComparator, deregisterEqualizer, diff, difference, drop, endsWith, endsWithArray, equal, error, exclude, exists, filter, find, findLast, first, firstOrDefault, flatFreeze, flatten, floor, flow, freeze, fromQuery, toPromise as fromResult, toPromise, fuzzy, fuzzyMatch, getArray, getArrayComparison, getColor, getForegroundColor, getHexColor, getHexaColor, getHslColor, getHslaColor, getHwbColor, getHwbaColor, getNormalizedHex, getNumber, getRandomBoolean, getRandomCharacters, getRandomColor, getRandomFloatingNumber as getRandomFloat, getRandomHex, getRandomInteger, getRandomItem, getRandomItems, getRgbColor, getRgbaColor, getSortedIndex, getString, getTimedPromise, getUuid, getValue, groupArraysBy, groupBy, handleResult, hasValue, hasValueResult, herald, hexToHsl, hexToHsla, hexToHwb, hexToHwba, hexToRgb, hexToRgba, hslToHex, hslToHwb, hslToHwba, hslToRgb, hslToRgba, hwbToHex, hwbToHsl, hwbToHsla, hwbToRgb, hwbToRgba, ignoreKey, inMap, inSet, includes, includesArray, indexOf, indexOfArray, initializeAssigner, initializeCloner, initializeEqualizer, initializeMerger, initializeNormalizer, initializeSorter, initializeTemplater, initializeTransformer, insert, interpolate, intersection, isArrayOrPlainObject, isAsyncOnce, isBeacon, isBeaconSubscription, isColor, isConstructor, isEmpty, isError, isFrozen, isFulfilled, isFuzzy, isHerald, isHeraldEvents, isHeraldSubscription, isHexColor, isHslColor, isHslaColor, isHwbColor, isHwbaColor, isInstanceOf, isKey, isKeyedQueue, isLogger, isNonArrayOrPlainObject, isNonConstructor, isNonEmpty, isNonInstanceOf, isNonKey, isNonNullable, isNonNullableOrEmpty, isNonNullableOrWhitespace, isNonNumber, isNonNumerical, isNonObject, isNonPlainObject, isNonPrimitive, isNonTypedArray, isNullable, isNullableOrEmpty, isNullableOrWhitespace, isNumber, isNumerical, isObject, isObservable, isOk, isOnce, isPlainObject, isPrimitive, isQueue, isQueueInstance, isRejected, isResult, isRgbColor, isRgbaColor, isSorted, isSubscription, isSubscriptions, isTimeLogger, isTypedArray, join, kebabCase, keyedQueue, last, lastIndexOf, lastOrDefault, lowerCase, matchResult, max, median, memoize, merge, min, move, moveIndices, moveToIndex, noop, normalize, ok, omit, once, parse, partition, pascalCase, pick, pipe, promises,
|
|
6850
|
+
export { CancelablePromise, Logger, PromiseTimeoutError, QueueError, RetryError, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SizedMap, SizedSet, push as append, push, assert, assertCondition, assertDefined, assertInstanceOf, assertIs, assertProperty, assign, asyncAttempt, asyncDebounce, asyncFlow, asyncMatchResult, asyncOnce, asyncPipe, asyncThrottle, attempt, attemptAsyncFlow, attemptAsyncPipe, attemptFlow, attemptPipe, attemptPromise, average, beacon, between, camelCase, cancelable, capitalize, ceil, chunk, clamp, clone, compact, compare, copy, count, debounce, deburr, dedent, delay, deregisterCloner, deregisterComparator, deregisterEqualizer, diff, difference, drop, endsWith, endsWithArray, equal, error, exclude, exists, filter, filterAndMap, filterAndMap as select, find, findLast, first, firstOrDefault, flatFreeze, flatten, floor, flow, freeze, fromQuery, toPromise as fromResult, toPromise, fuzzy, fuzzyMatch, getArray, getArrayComparison, getColor, getForegroundColor, getHexColor, getHexaColor, getHslColor, getHslaColor, getHwbColor, getHwbaColor, getNormalizedHex, getNumber, getRandomBoolean, getRandomCharacters, getRandomColor, getRandomFloatingNumber as getRandomFloat, getRandomHex, getRandomInteger, getRandomItem, getRandomItems, getRgbColor, getRgbaColor, getSortedIndex, getString, getTimedPromise, getUuid, getValue, groupArraysBy, groupBy, handleResult, hasValue, hasValueResult, herald, hexToHsl, hexToHsla, hexToHwb, hexToHwba, hexToRgb, hexToRgba, hslToHex, hslToHwb, hslToHwba, hslToRgb, hslToRgba, hwbToHex, hwbToHsl, hwbToHsla, hwbToRgb, hwbToRgba, ignoreKey, inMap, inSet, includes, includesArray, indexOf, indexOfArray, initializeAssigner, initializeCloner, initializeEqualizer, initializeMerger, initializeNormalizer, initializeSorter, initializeTemplater, initializeTransformer, insert, interpolate, intersection, isArrayOrPlainObject, isAsyncOnce, isBeacon, isBeaconSubscription, isColor, isConstructor, isEmpty, isError, isFrozen, isFulfilled, isFuzzy, isHerald, isHeraldEvents, isHeraldSubscription, isHexColor, isHslColor, isHslaColor, isHwbColor, isHwbaColor, isInstanceOf, isKey, isKeyedQueue, isLogger, isNonArrayOrPlainObject, isNonConstructor, isNonEmpty, isNonInstanceOf, isNonKey, isNonNullable, isNonNullableOrEmpty, isNonNullableOrWhitespace, isNonNumber, isNonNumerical, isNonObject, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNullable, isNullableOrEmpty, isNullableOrWhitespace, isNumber, isNumerical, isObject, isObservable, isOk, isOnce, isPlainObject, isPrimitive, isQueue, isQueueInstance, isRejected, isResult, isRgbColor, isRgbaColor, isSorted, isSubscription, isSubscriptions, isTemplateStringsArray, isTimeLogger, isTypedArray, join, kebabCase, keyedQueue, last, lastIndexOf, lastOrDefault, lowerCase, mapAndFilter, mapAndFilter as reverseSelect, matchResult, max, median, memoize, merge, min, move, moveIndices, moveToIndex, noop, normalize, ok, omit, once, parse, partition, pascalCase, pick, pipe, promises, queue, range, registerCloner, registerComparator, registerEqualizer, resultPromises, retry, reverse, rgbToHex, rgbToHsl, rgbToHsla, rgbToHwb, rgbToHwba, round, setValue, settlePromise, shake, shuffle, single, slice, smush, snakeCase, sort, splice, startsWith, startsWithArray, subscriptions, sum, swap, take, template, throttle, timed, times, titleCase, toMap, toMapArrays, toQuery, toRecord, toRecordArrays, toResult, toSet, toggle, transform, trim, truncate, tryDecode, tryEncode, union, unique, unsmush, unwrap, update, upperCase, words };
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* compact([0, 1, '', 'hello', false, true, null, undefined]); // => [1, 'hello', true]
|
|
12
12
|
* ```
|
|
13
13
|
*/
|
|
14
|
-
export declare function compact<Item>(array: Item[], strict: true): Array<Exclude<Item, 0 |
|
|
14
|
+
export declare function compact<Item>(array: Item[], strict: true): Array<Exclude<Item, 0 | "" | false | null | undefined>>;
|
|
15
15
|
/**
|
|
16
16
|
* Compact an array _(removing all `null` and `undefined` values)_
|
|
17
17
|
*
|
|
@@ -3,20 +3,20 @@ type FindMapper = {
|
|
|
3
3
|
callback: unknown;
|
|
4
4
|
reverse: boolean;
|
|
5
5
|
};
|
|
6
|
-
type FindValueType =
|
|
6
|
+
type FindValueType = "index" | "item";
|
|
7
7
|
type FindValuesResult = {
|
|
8
8
|
matched: unknown[];
|
|
9
9
|
notMatched: unknown[];
|
|
10
10
|
};
|
|
11
|
-
type FindValuesType =
|
|
11
|
+
type FindValuesType = "all" | "unique";
|
|
12
12
|
type Parameters = {
|
|
13
13
|
bool?: unknown;
|
|
14
14
|
key?: unknown;
|
|
15
15
|
value?: unknown;
|
|
16
16
|
};
|
|
17
17
|
export declare function createFindParameters(original: unknown[]): Parameters;
|
|
18
|
-
export declare function findValue(type: Exclude<FindValueType,
|
|
19
|
-
export declare function findValue(type: Exclude<FindValueType,
|
|
18
|
+
export declare function findValue(type: Exclude<FindValueType, "item">, array: unknown[], parameters: unknown[], reversed: boolean): number;
|
|
19
|
+
export declare function findValue(type: Exclude<FindValueType, "index">, array: unknown[], parameters: unknown[], reversed: boolean): unknown;
|
|
20
20
|
export declare function findAbsoluteValueOrDefault(array: unknown[], parameters: unknown[], defaultValue: unknown, useDefaultValue: boolean, reversed: boolean): unknown;
|
|
21
21
|
export declare function findValues(type: FindValuesType, array: unknown[], parameters: unknown[], mapper?: FindMapper): FindValuesResult;
|
|
22
22
|
export declare const FIND_VALUE_INDEX = "index";
|
|
@@ -65,9 +65,6 @@ export declare function indexOf<Item>(array: Item[], filter: (item: Item, index:
|
|
|
65
65
|
* ```
|
|
66
66
|
*/
|
|
67
67
|
export declare function indexOf<Item>(array: Item[], item: Item): number;
|
|
68
|
-
export declare namespace indexOf {
|
|
69
|
-
var last: typeof lastIndexOf;
|
|
70
|
-
}
|
|
71
68
|
/**
|
|
72
69
|
* Get the index of the last matching item by callback
|
|
73
70
|
*
|
|
@@ -141,4 +138,7 @@ export declare function lastIndexOf<Item>(array: Item[], filter: (item: Item, in
|
|
|
141
138
|
* ```
|
|
142
139
|
*/
|
|
143
140
|
export declare function lastIndexOf<Item>(array: Item[], item: Item): number;
|
|
141
|
+
export declare namespace indexOf {
|
|
142
|
+
export var last: typeof lastIndexOf;
|
|
143
|
+
}
|
|
144
144
|
//#endregion
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/internal/array/insert.d.ts
|
|
2
|
-
type InsertType =
|
|
2
|
+
type InsertType = "insert" | "push" | "splice";
|
|
3
3
|
export declare function insertValues(type: InsertType, array: unknown, items: unknown, start: unknown, deleteCount: number): unknown;
|
|
4
4
|
export declare const INSERT_TYPE_INSERT: InsertType;
|
|
5
5
|
export declare const INSERT_TYPE_PUSH: InsertType;
|
|
@@ -3,7 +3,7 @@ import { PlainObject } from "../../models.mjs";
|
|
|
3
3
|
/**
|
|
4
4
|
* Comparison of an array within another array
|
|
5
5
|
*/
|
|
6
|
-
export type ArrayComparison =
|
|
6
|
+
export type ArrayComparison = "end" | "inside" | "invalid" | "outside" | "same" | "start";
|
|
7
7
|
/**
|
|
8
8
|
* Is the needle array at the end of the haystack array?
|
|
9
9
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region src/internal/array/sets.d.ts
|
|
2
|
-
type CompareSetsType =
|
|
2
|
+
type CompareSetsType = "difference" | "intersection" | "union";
|
|
3
3
|
export declare function compareSets(type: CompareSetsType, first: unknown[], second: unknown[], key?: unknown): unknown[];
|
|
4
4
|
export declare const SETS_COMPARE_DIFFERENCE: CompareSetsType;
|
|
5
5
|
export declare const SETS_COMPARE_INTERSECTION: CompareSetsType;
|
|
@@ -17,13 +17,6 @@ type NestedPick<Value, Path extends string> = Value extends PlainObject ? Path e
|
|
|
17
17
|
* @param error Error constructor _(defaults to `Error`)_
|
|
18
18
|
*/
|
|
19
19
|
export declare function assert<Condition extends () => boolean>(condition: Condition, message: string, error?: ErrorConstructor): asserts condition;
|
|
20
|
-
export declare namespace assert {
|
|
21
|
-
var condition: typeof assertCondition;
|
|
22
|
-
var defined: typeof assertDefined;
|
|
23
|
-
var instanceOf: typeof assertInstanceOf;
|
|
24
|
-
var is: typeof assertIs;
|
|
25
|
-
var property: typeof assertProperty;
|
|
26
|
-
}
|
|
27
20
|
/**
|
|
28
21
|
* Creates an _Asserter_ that asserts a condition is true, throwing an error if it is not
|
|
29
22
|
*
|
|
@@ -79,4 +72,11 @@ export declare function assertIs<Value>(condition: (value: unknown) => value is
|
|
|
79
72
|
* @returns _Asserter_
|
|
80
73
|
*/
|
|
81
74
|
export declare function assertProperty<Value extends PlainObject, Path extends NestedKeys<Value>>(path: Path, condition: (value: NestedValue<Value, Path>) => boolean, message: string, error?: ErrorConstructor): Asserter<NestedPick<Value, Path>>;
|
|
75
|
+
export declare namespace assert {
|
|
76
|
+
export var condition: typeof assertCondition;
|
|
77
|
+
export var defined: typeof assertDefined;
|
|
78
|
+
export var instanceOf: typeof assertInstanceOf;
|
|
79
|
+
export var is: typeof assertIs;
|
|
80
|
+
export var property: typeof assertProperty;
|
|
81
|
+
}
|
|
82
82
|
//#endregion
|
|
@@ -32,7 +32,7 @@ export type Limiter<Callback extends GenericCallback> = {
|
|
|
32
32
|
*/
|
|
33
33
|
run(...parameters: Parameters<Callback>): ReturnType<Callback>;
|
|
34
34
|
};
|
|
35
|
-
type LimiterType =
|
|
35
|
+
type LimiterType = "debounce" | "throttle" | "wait";
|
|
36
36
|
export declare function getAsyncLimiter<Callback extends GenericAsyncCallback | GenericCallback>(type: LimiterType, callback: Callback, time?: number): AsyncLimiter<Callback>;
|
|
37
37
|
export declare function getLimiter<Callback extends GenericCallback>(type: LimiterType, callback: Callback, time?: number): Limiter<Callback>;
|
|
38
38
|
export declare const LIMITER_DEBOUNCE: LimiterType;
|
|
@@ -177,9 +177,6 @@ export declare function flow<First extends GenericCallback>(first: First, ...fns
|
|
|
177
177
|
* @returns _Flow_ function
|
|
178
178
|
*/
|
|
179
179
|
export declare function flow(...fns: GenericCallback[]): (...args: unknown[]) => unknown;
|
|
180
|
-
export declare namespace flow {
|
|
181
|
-
var async: typeof asyncFlow;
|
|
182
|
-
}
|
|
183
180
|
/**
|
|
184
181
|
* Pipe a value through a function
|
|
185
182
|
*
|
|
@@ -372,7 +369,10 @@ export declare function pipe<Value>(value: Value, ...pipes: Array<(value: Value)
|
|
|
372
369
|
* @returns _Piped_ result
|
|
373
370
|
*/
|
|
374
371
|
export declare function pipe(value: unknown, ...pipes: Array<(value: unknown) => unknown>): unknown;
|
|
372
|
+
export declare namespace flow {
|
|
373
|
+
export var async: typeof asyncFlow;
|
|
374
|
+
}
|
|
375
375
|
export declare namespace pipe {
|
|
376
|
-
var async: typeof asyncPipe;
|
|
376
|
+
export var async: typeof asyncPipe;
|
|
377
377
|
}
|
|
378
378
|
//#endregion
|
|
@@ -31,7 +31,7 @@ export type Herald<Events extends Record<string, GenericCallback>> = {
|
|
|
31
31
|
*/
|
|
32
32
|
subscribe<Event extends keyof Events>(event: Event, callback: Events[Event], signal?: AbortSignal): Subscription;
|
|
33
33
|
};
|
|
34
|
-
export type HeraldEvents<Events extends Record<string, GenericCallback>> = { [Key in keyof Events]: Key extends
|
|
34
|
+
export type HeraldEvents<Events extends Record<string, GenericCallback>> = { [Key in keyof Events]: Key extends "*" ? never : (callback: Events[Key], signal?: AbortSignal) => void; };
|
|
35
35
|
type HeraldOnCreate<Events extends Record<string, GenericCallback>> = <Event extends keyof Events>(event: Event, callback: Events[Event], subscription: Subscription) => void;
|
|
36
36
|
export type HeraldOptions<Events extends Record<string, GenericCallback>> = {
|
|
37
37
|
names: Array<keyof Events>;
|
|
@@ -7,8 +7,8 @@ type Aggregation = {
|
|
|
7
7
|
items?: Record<number, unknown[]>;
|
|
8
8
|
value: number;
|
|
9
9
|
};
|
|
10
|
-
export type AggregationType =
|
|
11
|
-
type NonAverageAggregationType =
|
|
10
|
+
export type AggregationType = "average" | "max" | "min" | "sum";
|
|
11
|
+
type NonAverageAggregationType = "max" | "min" | "sum";
|
|
12
12
|
export declare function aggregate(type: AggregationType, array: unknown[], key: unknown, first?: unknown): Aggregation;
|
|
13
13
|
export declare function getAggregateCallback(key: unknown): Function | undefined;
|
|
14
14
|
export declare function getAggregated(type: NonAverageAggregationType, array: unknown[], key?: unknown, first?: unknown): unknown;
|
|
@@ -15,9 +15,6 @@ export declare function error<E>(value: E, original: Error): ExtendedErr<E>;
|
|
|
15
15
|
* @returns Error result
|
|
16
16
|
*/
|
|
17
17
|
export declare function error<E>(value: E): Err<E>;
|
|
18
|
-
export declare namespace error {
|
|
19
|
-
var is: typeof isError;
|
|
20
|
-
}
|
|
21
18
|
export declare function getError<E>(value: E, original?: Error): Err<E> | ExtendedErr<E>;
|
|
22
19
|
/**
|
|
23
20
|
* Is the _Result_ an extended error?
|
|
@@ -78,9 +75,6 @@ export declare function isResult(value: unknown): value is ExtendedErr<unknown>
|
|
|
78
75
|
* @returns Ok result
|
|
79
76
|
*/
|
|
80
77
|
export declare function ok<Value>(value: Value): Ok<Value>;
|
|
81
|
-
export declare namespace ok {
|
|
82
|
-
var is: typeof isOk;
|
|
83
|
-
}
|
|
84
78
|
/**
|
|
85
79
|
* Gets the value of an ok result _(or a default value)_
|
|
86
80
|
*
|
|
@@ -97,4 +91,10 @@ export declare function unwrap<Value, E = Error>(value: Result<Value, E>, defaul
|
|
|
97
91
|
* @returns Value of the _Result_ _(or the default value)_
|
|
98
92
|
*/
|
|
99
93
|
export declare function unwrap(value: unknown, defaultValue: unknown): unknown;
|
|
94
|
+
export declare namespace error {
|
|
95
|
+
export var is: typeof isError;
|
|
96
|
+
}
|
|
97
|
+
export declare namespace ok {
|
|
98
|
+
export var is: typeof isOk;
|
|
99
|
+
}
|
|
100
100
|
//#endregion
|
|
@@ -39,10 +39,10 @@ export declare class SizedMap<SizedKey = unknown, SizedValue = unknown> extends
|
|
|
39
39
|
/**
|
|
40
40
|
* @inheritdoc
|
|
41
41
|
*/
|
|
42
|
-
get(key: SizedKey): SizedValue | undefined;
|
|
42
|
+
override get(key: SizedKey): SizedValue | undefined;
|
|
43
43
|
/**
|
|
44
44
|
* @inheritdoc
|
|
45
45
|
*/
|
|
46
|
-
set(key: SizedKey, value: SizedValue): this;
|
|
46
|
+
override set(key: SizedKey, value: SizedValue): this;
|
|
47
47
|
}
|
|
48
48
|
//#endregion
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Constructor
|
|
1
|
+
import { Constructor } from "../../models.mjs";
|
|
2
|
+
import { CompareHandler } from "./handlers.mjs";
|
|
2
3
|
//#region src/internal/value/compare.d.ts
|
|
3
4
|
type Comparator<Value = any> = (first: Value, second: Value) => number;
|
|
4
5
|
/**
|
|
@@ -9,24 +10,6 @@ type Comparator<Value = any> = (first: Value, second: Value) => number;
|
|
|
9
10
|
* @returns `0` if equal; `-1` first comes before second; `1` first comes after second
|
|
10
11
|
*/
|
|
11
12
|
export declare function compare(first: unknown, second: unknown): number;
|
|
12
|
-
export declare namespace compare {
|
|
13
|
-
var deregister: typeof deregisterComparator;
|
|
14
|
-
var handler: {
|
|
15
|
-
base: {
|
|
16
|
-
handlers: WeakMap<WeakKey, string | GenericCallback>;
|
|
17
|
-
options: {
|
|
18
|
-
callback: GenericCallback;
|
|
19
|
-
method?: string;
|
|
20
|
-
};
|
|
21
|
-
owner: GenericCallback;
|
|
22
|
-
deregister: (constructor: Constructor) => void;
|
|
23
|
-
get: (first: unknown, second: unknown) => string | GenericCallback | undefined;
|
|
24
|
-
register: (constructor: Constructor, handler?: string | GenericCallback) => void;
|
|
25
|
-
};
|
|
26
|
-
handle(first: unknown, second: unknown, ...parameters: unknown[]): number;
|
|
27
|
-
};
|
|
28
|
-
var register: typeof registerComparator;
|
|
29
|
-
}
|
|
30
13
|
/**
|
|
31
14
|
* Deregister a custom comparison handler for a class
|
|
32
15
|
*
|
|
@@ -44,4 +27,9 @@ export declare function deregisterComparator<Instance>(constructor: Constructor<
|
|
|
44
27
|
* @param handler Method name or comparison function _(defaults to `compare`)_
|
|
45
28
|
*/
|
|
46
29
|
export declare function registerComparator<Instance>(constructor: Constructor<Instance>, handler?: string | Comparator<Instance>): void;
|
|
30
|
+
export declare namespace compare {
|
|
31
|
+
export var deregister: typeof deregisterComparator;
|
|
32
|
+
export var handler: CompareHandler<number>;
|
|
33
|
+
export var register: typeof registerComparator;
|
|
34
|
+
}
|
|
47
35
|
//#endregion
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Constructor
|
|
1
|
+
import { Constructor } from "../../models.mjs";
|
|
2
|
+
import { CompareHandler } from "./handlers.mjs";
|
|
2
3
|
//#region src/internal/value/equal.d.ts
|
|
3
4
|
/**
|
|
4
5
|
* Options for value equality comparison
|
|
@@ -54,17 +55,6 @@ type Equalizer = {
|
|
|
54
55
|
*/
|
|
55
56
|
register: <Instance>(constructor: Constructor<Instance>, handler: (first: Instance, second: Instance) => boolean) => void;
|
|
56
57
|
};
|
|
57
|
-
type Options = {
|
|
58
|
-
ignoreCase: boolean;
|
|
59
|
-
ignoreExpressions: OptionsKeys<RegExp[]>;
|
|
60
|
-
ignoreKeys: OptionsKeys<Set<string>>;
|
|
61
|
-
relaxedNullish: boolean;
|
|
62
|
-
};
|
|
63
|
-
type OptionsKeys<Values> = {
|
|
64
|
-
enabled: boolean;
|
|
65
|
-
values: Values;
|
|
66
|
-
};
|
|
67
|
-
declare function Equalizer(this: any, options: Options): void;
|
|
68
58
|
/**
|
|
69
59
|
* Deregister a equality comparison handler for a specific class
|
|
70
60
|
*
|
|
@@ -91,25 +81,6 @@ export declare function equal(first: string, second: string, ignoreCase?: boolea
|
|
|
91
81
|
* @returns `true` if the values are equal, otherwise `false`
|
|
92
82
|
*/
|
|
93
83
|
export declare function equal(first: unknown, second: unknown, options?: EqualOptions): boolean;
|
|
94
|
-
export declare namespace equal {
|
|
95
|
-
var deregister: typeof deregisterEqualizer;
|
|
96
|
-
var handler: {
|
|
97
|
-
base: {
|
|
98
|
-
handlers: WeakMap<WeakKey, string | GenericCallback>;
|
|
99
|
-
options: {
|
|
100
|
-
callback: GenericCallback;
|
|
101
|
-
method?: string;
|
|
102
|
-
};
|
|
103
|
-
owner: GenericCallback;
|
|
104
|
-
deregister: (constructor: Constructor) => void;
|
|
105
|
-
get: (first: unknown, second: unknown) => string | GenericCallback | undefined;
|
|
106
|
-
register: (constructor: Constructor, handler?: string | GenericCallback) => void;
|
|
107
|
-
};
|
|
108
|
-
handle(first: unknown, second: unknown, ...parameters: unknown[]): boolean;
|
|
109
|
-
};
|
|
110
|
-
var initialize: typeof initializeEqualizer;
|
|
111
|
-
var register: typeof registerEqualizer;
|
|
112
|
-
}
|
|
113
84
|
/**
|
|
114
85
|
* Create an equalizer with predefined options
|
|
115
86
|
*
|
|
@@ -128,4 +99,10 @@ export declare function initializeEqualizer(options?: EqualOptions): Equalizer;
|
|
|
128
99
|
* @param handler Comparison function
|
|
129
100
|
*/
|
|
130
101
|
export declare function registerEqualizer<Instance>(constructor: Constructor<Instance>, handler: (first: Instance, second: Instance) => boolean): void;
|
|
102
|
+
export declare namespace equal {
|
|
103
|
+
export var deregister: typeof deregisterEqualizer;
|
|
104
|
+
export var handler: CompareHandler<boolean>;
|
|
105
|
+
export var initialize: typeof initializeEqualizer;
|
|
106
|
+
export var register: typeof registerEqualizer;
|
|
107
|
+
}
|
|
131
108
|
//#endregion
|
|
@@ -12,17 +12,14 @@ type BaseHandlerOptions = {
|
|
|
12
12
|
callback: GenericCallback;
|
|
13
13
|
method?: string;
|
|
14
14
|
};
|
|
15
|
-
type CompareHandler<Value> = {
|
|
15
|
+
export type CompareHandler<Value> = {
|
|
16
16
|
base: BaseHandler;
|
|
17
17
|
handle(first: unknown, second: unknown, ...parameters: unknown[]): Value;
|
|
18
18
|
};
|
|
19
|
-
type ValueHandler = {
|
|
19
|
+
export type ValueHandler = {
|
|
20
20
|
base: BaseHandler;
|
|
21
21
|
handle(value: unknown, ...parameters: unknown[]): unknown;
|
|
22
22
|
};
|
|
23
|
-
declare function BaseHandler(this: any, owner: GenericCallback, options: BaseHandlerOptions): void;
|
|
24
|
-
declare function CompareHandler(this: any, base: BaseHandler): void;
|
|
25
|
-
declare function ValueHandler(this: any, value: BaseHandler): void;
|
|
26
23
|
export declare function createCompareHandler<Value>(owner: GenericCallback, options: BaseHandlerOptions): CompareHandler<Value>;
|
|
27
24
|
export declare function createValueHandler(owner: GenericCallback, options: BaseHandlerOptions): ValueHandler;
|
|
28
25
|
//#endregion
|