@oscarpalmer/atoms 0.221.0 → 0.223.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/difference.d.mts +1 -3
- package/dist/array/difference.mjs +2 -3
- package/dist/array/exists.d.mts +1 -3
- package/dist/array/exists.mjs +11 -6
- package/dist/array/filter.d.mts +1 -3
- package/dist/array/filter.mjs +15 -6
- package/dist/array/find.d.mts +1 -3
- package/dist/array/find.mjs +9 -5
- package/dist/array/first.d.mts +1 -3
- package/dist/array/first.mjs +10 -5
- package/dist/array/flatten.d.mts +1 -3
- package/dist/array/flatten.mjs +1 -2
- package/dist/array/from.d.mts +1 -3
- package/dist/array/from.mjs +1 -2
- package/dist/array/group-by.d.mts +1 -3
- package/dist/array/group-by.mjs +1 -2
- package/dist/array/index.d.mts +4 -4
- package/dist/array/insert.d.mts +1 -3
- package/dist/array/insert.mjs +2 -3
- package/dist/array/intersection.d.mts +1 -3
- package/dist/array/intersection.mjs +2 -3
- package/dist/array/last.d.mts +1 -3
- package/dist/array/last.mjs +12 -5
- package/dist/array/move.d.mts +1 -3
- package/dist/array/move.mjs +1 -2
- package/dist/array/partition.d.mts +1 -3
- package/dist/array/partition.mjs +24 -5
- package/dist/array/push.d.mts +0 -2
- package/dist/array/push.mjs +2 -3
- package/dist/array/reverse.d.mts +1 -3
- package/dist/array/reverse.mjs +1 -2
- package/dist/array/select.d.mts +0 -2
- package/dist/array/select.mjs +40 -9
- package/dist/array/single.d.mts +1 -3
- package/dist/array/single.mjs +9 -7
- package/dist/array/slice.d.mts +1 -3
- package/dist/array/slice.mjs +1 -2
- package/dist/array/sort.d.mts +0 -2
- package/dist/array/sort.mjs +2 -3
- package/dist/array/splice.d.mts +1 -3
- package/dist/array/splice.mjs +2 -3
- package/dist/array/swap.d.mts +0 -2
- package/dist/array/swap.mjs +2 -3
- package/dist/array/to-map.d.mts +1 -3
- package/dist/array/to-map.mjs +1 -2
- package/dist/array/to-record.d.mts +1 -3
- package/dist/array/to-record.mjs +1 -2
- package/dist/array/to-set.d.mts +1 -3
- package/dist/array/to-set.mjs +1 -2
- package/dist/array/toggle.d.mts +1 -3
- package/dist/array/toggle.mjs +1 -2
- package/dist/array/union.d.mts +1 -3
- package/dist/array/union.mjs +2 -3
- package/dist/array/unique.d.mts +1 -3
- package/dist/array/unique.mjs +18 -5
- package/dist/array/update.d.mts +1 -3
- package/dist/array/update.mjs +1 -2
- package/dist/beacon.d.mts +3 -13
- package/dist/beacon.mjs +10 -21
- package/dist/color/constants.d.mts +1 -7
- package/dist/color/constants.mjs +3 -11
- package/dist/color/index.d.mts +0 -2
- package/dist/color/index.mjs +4 -5
- package/dist/color/instance.d.mts +1 -3
- package/dist/color/instance.mjs +5 -8
- package/dist/color/misc/alpha.d.mts +1 -3
- package/dist/color/misc/alpha.mjs +1 -2
- package/dist/color/misc/format.d.mts +1 -3
- package/dist/color/misc/format.mjs +1 -2
- package/dist/color/misc/get.d.mts +1 -3
- package/dist/color/misc/get.mjs +2 -3
- package/dist/color/misc/is.d.mts +1 -11
- package/dist/color/misc/is.mjs +4 -16
- package/dist/color/misc/state.d.mts +1 -3
- package/dist/color/misc/state.mjs +4 -5
- package/dist/color/space/hex.d.mts +1 -3
- package/dist/color/space/hex.mjs +2 -3
- package/dist/color/space/hsl.d.mts +1 -3
- package/dist/color/space/hsl.mjs +2 -3
- package/dist/color/space/hwb.d.mts +1 -3
- package/dist/color/space/hwb.mjs +3 -4
- package/dist/color/space/rgb.d.mts +1 -3
- package/dist/color/space/rgb.mjs +1 -2
- package/dist/function/limit.d.mts +1 -3
- package/dist/function/limit.mjs +2 -3
- package/dist/function/once.d.mts +1 -3
- package/dist/function/once.mjs +8 -9
- package/dist/function/retry.d.mts +1 -3
- package/dist/function/retry.mjs +11 -12
- package/dist/herald.d.mts +2 -2
- package/dist/herald.mjs +1 -1
- package/dist/index.d.mts +81 -359
- package/dist/index.mjs +514 -661
- package/dist/internal/aborter.d.mts +1 -3
- package/dist/internal/aborter.mjs +1 -2
- package/dist/internal/array/callbacks.d.mts +2 -4
- package/dist/internal/array/callbacks.mjs +1 -2
- package/dist/internal/array/chunk.d.mts +1 -3
- package/dist/internal/array/chunk.mjs +1 -2
- package/dist/internal/array/compact.d.mts +1 -3
- package/dist/internal/array/compact.mjs +1 -2
- package/dist/internal/array/find.d.mts +2 -8
- package/dist/internal/array/find.mjs +31 -124
- package/dist/internal/array/get.d.mts +1 -3
- package/dist/internal/array/get.mjs +1 -2
- package/dist/internal/array/group.d.mts +1 -3
- package/dist/internal/array/group.mjs +1 -2
- package/dist/internal/array/index-of.d.mts +1 -3
- package/dist/internal/array/index-of.mjs +10 -5
- package/dist/internal/array/insert.d.mts +1 -3
- package/dist/internal/array/insert.mjs +2 -3
- package/dist/internal/array/match.d.mts +2 -4
- package/dist/internal/array/match.mjs +2 -3
- package/dist/internal/array/overlap.d.mts +1 -3
- package/dist/internal/array/overlap.mjs +1 -2
- package/dist/internal/array/sets.d.mts +1 -3
- package/dist/internal/array/sets.mjs +5 -6
- package/dist/internal/array/shuffle.d.mts +1 -3
- package/dist/internal/array/shuffle.mjs +1 -2
- package/dist/internal/array/update.d.mts +1 -3
- package/dist/internal/array/update.mjs +1 -2
- package/dist/internal/defaults.d.mts +1 -3
- package/dist/internal/defaults.mjs +1 -2
- package/dist/internal/function/assert.d.mts +1 -3
- package/dist/internal/function/assert.mjs +1 -2
- package/dist/internal/function/limit.d.mts +2 -4
- package/dist/internal/function/limit.mjs +8 -9
- package/dist/internal/function/memoize.d.mts +1 -3
- package/dist/internal/function/memoize.mjs +4 -5
- package/dist/internal/function/misc.d.mts +1 -2
- package/dist/internal/function/misc.mjs +7 -3
- package/dist/internal/function/work.d.mts +1 -3
- package/dist/internal/function/work.mjs +5 -13
- package/dist/internal/herald.d.mts +2 -12
- package/dist/internal/herald.mjs +9 -33
- package/dist/internal/is.d.mts +1 -3
- package/dist/internal/is.mjs +1 -2
- package/dist/internal/math/aggregate.d.mts +1 -3
- package/dist/internal/math/aggregate.mjs +2 -3
- package/dist/internal/math/misc.d.mts +1 -3
- package/dist/internal/math/misc.mjs +1 -2
- package/dist/internal/number.d.mts +1 -3
- package/dist/internal/number.mjs +2 -3
- package/dist/internal/plan/index.d.mts +1 -3
- package/dist/internal/plan/index.mjs +2 -3
- package/dist/internal/plan/plan.generate.d.mts +1 -3
- package/dist/internal/plan/plan.generate.mjs +67 -22
- package/dist/internal/random.d.mts +1 -3
- package/dist/internal/random.mjs +1 -2
- package/dist/internal/result/attempt.d.mts +1 -3
- package/dist/internal/result/attempt.mjs +1 -2
- package/dist/internal/result/misc.d.mts +1 -3
- package/dist/internal/result/misc.mjs +1 -2
- package/dist/internal/sized/map.d.mts +4 -3
- package/dist/internal/sized/map.mjs +4 -2
- package/dist/internal/sized/misc.d.mts +1 -3
- package/dist/internal/sized/misc.mjs +1 -2
- package/dist/internal/string/case.d.mts +1 -3
- package/dist/internal/string/case.mjs +3 -4
- package/dist/internal/string/misc.d.mts +1 -3
- package/dist/internal/string/misc.mjs +1 -2
- package/dist/internal/subscription.d.mts +1 -3
- package/dist/internal/subscription.mjs +16 -29
- package/dist/internal/value/compare.d.mts +1 -3
- package/dist/internal/value/compare.mjs +2 -3
- package/dist/internal/value/equal.d.mts +1 -3
- package/dist/internal/value/equal.mjs +3 -4
- package/dist/internal/value/get.d.mts +1 -3
- package/dist/internal/value/get.mjs +1 -2
- package/dist/internal/value/handlers.d.mts +1 -3
- package/dist/internal/value/handlers.mjs +1 -2
- package/dist/internal/value/has.d.mts +1 -3
- package/dist/internal/value/has.mjs +1 -2
- package/dist/internal/value/misc.d.mts +1 -3
- package/dist/internal/value/misc.mjs +2 -3
- package/dist/internal/value/partial.d.mts +1 -3
- package/dist/internal/value/partial.mjs +1 -2
- package/dist/internal/value/set.d.mts +1 -3
- package/dist/internal/value/set.mjs +2 -3
- package/dist/is.d.mts +0 -2
- package/dist/is.mjs +2 -3
- package/dist/logger.d.mts +0 -2
- package/dist/logger.mjs +7 -7
- package/dist/math.d.mts +0 -2
- package/dist/math.mjs +2 -3
- package/dist/models/aborter.model.d.mts +1 -3
- package/dist/models/aborter.model.mjs +1 -2
- package/dist/models/array/array.match.model.d.mts +1 -3
- package/dist/models/array/array.match.model.mjs +1 -2
- package/dist/models/array/array.misc.model.d.mts +11 -2
- package/dist/models/array/array.misc.model.mjs +3 -3
- package/dist/models/array/array.sort.model.d.mts +1 -3
- package/dist/models/array/array.sort.model.mjs +1 -2
- package/dist/models/beacon.model.d.mts +4 -6
- package/dist/models/beacon.model.mjs +3 -10
- package/dist/models/color.model.d.mts +2 -4
- package/dist/models/function/assert.model.d.mts +1 -3
- package/dist/models/function/assert.model.mjs +1 -2
- package/dist/models/function/limiter.model.d.mts +2 -4
- package/dist/models/function/limiter.model.mjs +2 -4
- package/dist/models/function/memoize.model.d.mts +2 -4
- package/dist/models/function/memoize.model.mjs +1 -2
- package/dist/models/function/once.model.d.mts +0 -3
- package/dist/models/function/once.model.mjs +3 -5
- package/dist/models/function/retry.model.d.mts +1 -3
- package/dist/models/function/retry.model.mjs +1 -2
- package/dist/models/function/work.model.d.mts +2 -4
- package/dist/models/function/work.model.mjs +1 -2
- package/dist/models/herald.model.d.mts +8 -7
- package/dist/models/herald.model.mjs +3 -10
- package/dist/models/index.d.mts +0 -2
- package/dist/models/logger.model.d.mts +1 -4
- package/dist/models/logger.model.mjs +3 -5
- package/dist/models/math.model.d.mts +1 -3
- package/dist/models/math.model.mjs +1 -2
- package/dist/models/misc.model.d.mts +1 -3
- package/dist/models/misc.model.mjs +1 -2
- package/dist/models/plan.model.d.mts +35 -37
- package/dist/models/plan.model.mjs +1 -2
- package/dist/models/promise.model.d.mts +8 -10
- package/dist/models/promise.model.mjs +4 -5
- package/dist/models/query.model.d.mts +1 -3
- package/dist/models/query.model.mjs +1 -2
- package/dist/models/queue.model.d.mts +0 -3
- package/dist/models/queue.model.mjs +3 -5
- package/dist/models/random.model.d.mts +1 -3
- package/dist/models/random.model.mjs +1 -2
- package/dist/models/result.model.d.mts +0 -2
- package/dist/models/string/string.case.model.d.mts +1 -3
- package/dist/models/string/string.case.model.mjs +1 -2
- package/dist/models/string/string.fuzzy.model.d.mts +0 -3
- package/dist/models/string/string.fuzzy.model.mjs +3 -5
- package/dist/models/string/string.misc.model.d.mts +1 -3
- package/dist/models/string/string.misc.model.mjs +1 -2
- package/dist/models/string/string.normalize.model.d.mts +1 -3
- package/dist/models/string/string.normalize.model.mjs +1 -2
- package/dist/models/string/string.template.model.d.mts +1 -3
- package/dist/models/string/string.template.model.mjs +1 -2
- package/dist/models/subscription.model.d.mts +4 -23
- package/dist/models/subscription.model.mjs +3 -5
- package/dist/models/value/value.clone.model.d.mts +1 -3
- package/dist/models/value/value.clone.model.mjs +1 -2
- package/dist/models/value/value.diff.model.d.mts +1 -3
- package/dist/models/value/value.diff.model.mjs +1 -2
- package/dist/models/value/value.equal.model.d.mts +0 -2
- package/dist/models/value/value.equal.model.mjs +1 -2
- package/dist/models/value/value.handler.model.d.mts +1 -3
- package/dist/models/value/value.merge.model.d.mts +0 -2
- package/dist/models/value/value.merge.model.mjs +1 -2
- package/dist/models/value/value.misc.model.d.mts +0 -2
- package/dist/models/value/value.misc.model.mjs +1 -2
- package/dist/models/value/value.transform.model.d.mts +1 -3
- package/dist/models/value/value.transform.model.mjs +1 -2
- package/dist/plan/index.d.mts +1 -3
- package/dist/plan/index.mjs +2 -3
- package/dist/plan/is.d.mts +1 -3
- package/dist/plan/is.mjs +1 -2
- package/dist/plan/misc.d.mts +1 -3
- package/dist/plan/misc.mjs +2 -3
- package/dist/plan/models.d.mts +2 -2
- package/dist/plan/result.d.mts +8 -10
- package/dist/plan/result.mjs +2 -3
- package/dist/plan/run.d.mts +8 -10
- package/dist/plan/run.mjs +2 -3
- package/dist/plan/use.d.mts +1 -3
- package/dist/plan/use.mjs +14 -9
- package/dist/promise/delay.d.mts +1 -3
- package/dist/promise/delay.mjs +2 -3
- package/dist/promise/helpers.d.mts +1 -3
- package/dist/promise/helpers.mjs +2 -3
- package/dist/promise/index.d.mts +0 -2
- package/dist/promise/index.mjs +5 -6
- package/dist/promise/misc.d.mts +1 -3
- package/dist/promise/misc.mjs +2 -3
- package/dist/promise/models.d.mts +2 -2
- package/dist/promise/models.mjs +1 -1
- package/dist/promise/timed.d.mts +1 -3
- package/dist/promise/timed.mjs +4 -5
- package/dist/query.d.mts +1 -3
- package/dist/query.mjs +2 -3
- package/dist/queue.d.mts +0 -2
- package/dist/queue.mjs +11 -12
- package/dist/random.d.mts +0 -2
- package/dist/random.mjs +2 -3
- package/dist/result/match.d.mts +1 -3
- package/dist/result/match.mjs +1 -2
- package/dist/result/misc.d.mts +0 -2
- package/dist/result/misc.mjs +1 -2
- package/dist/result/work/flow.d.mts +1 -3
- package/dist/result/work/flow.mjs +5 -12
- package/dist/result/work/pipe.d.mts +0 -2
- package/dist/result/work/pipe.mjs +2 -3
- package/dist/sized/set.d.mts +4 -3
- package/dist/sized/set.mjs +4 -2
- package/dist/string/fuzzy.d.mts +0 -2
- package/dist/string/fuzzy.mjs +5 -7
- package/dist/string/index.d.mts +0 -2
- package/dist/string/index.mjs +2 -3
- package/dist/string/match.d.mts +1 -3
- package/dist/string/match.mjs +2 -3
- package/dist/string/normalize.d.mts +0 -2
- package/dist/string/normalize.mjs +3 -4
- package/dist/string/template.d.mts +0 -2
- package/dist/string/template.mjs +1 -2
- package/dist/subscription.d.mts +2 -2
- package/dist/value/clone.d.mts +1 -3
- package/dist/value/clone.mjs +2 -3
- package/dist/value/collection.d.mts +1 -3
- package/dist/value/collection.mjs +1 -2
- package/dist/value/diff.d.mts +0 -2
- package/dist/value/diff.mjs +1 -2
- package/dist/value/freeze.d.mts +1 -3
- package/dist/value/freeze.mjs +1 -2
- package/dist/value/handle.mjs +1 -1
- package/dist/value/merge.d.mts +0 -2
- package/dist/value/merge.mjs +1 -2
- package/dist/value/omit.d.mts +1 -3
- package/dist/value/omit.mjs +1 -2
- package/dist/value/pick.d.mts +1 -3
- package/dist/value/pick.mjs +1 -2
- package/dist/value/shake.d.mts +0 -2
- package/dist/value/shake.mjs +1 -2
- package/dist/value/smush.d.mts +0 -2
- package/dist/value/smush.mjs +2 -3
- package/dist/value/transform.d.mts +0 -2
- package/dist/value/transform.mjs +1 -2
- package/dist/value/unsmush.d.mts +0 -2
- package/dist/value/unsmush.mjs +1 -2
- package/package.json +6 -6
- package/dist/models/array/array.find.model.d.mts +0 -48
- package/dist/models/array/array.find.model.mjs +0 -8
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { join, words } from "./misc.mjs";
|
|
2
|
-
import { memoize } from "../function/memoize.mjs";
|
|
3
1
|
import { STRING_CASE_CAMEL, STRING_CASE_CAPITALIZE, STRING_CASE_KEBAB, STRING_CASE_LOWER, STRING_CASE_PASCAL, STRING_CASE_SNAKE, STRING_CASE_TITLE, STRING_CASE_UPPER, STRING_EXPRESSION_ACRONYM, STRING_EXPRESSION_CAMEL_CASE, STRING_REPLACEMENT_CAMEL_CASE, ignoreCachingCases } from "../../models/string/string.case.model.mjs";
|
|
4
|
-
|
|
2
|
+
import { memoize } from "../function/memoize.mjs";
|
|
3
|
+
import { join, words } from "./misc.mjs";
|
|
4
|
+
// src/internal/string/case.ts
|
|
5
5
|
/**
|
|
6
6
|
* Convert a string to camel case _(thisIsCamelCase)_
|
|
7
7
|
*
|
|
@@ -194,5 +194,4 @@ const delimiters = {
|
|
|
194
194
|
[STRING_CASE_SNAKE]: "_"
|
|
195
195
|
};
|
|
196
196
|
const simpleMemoizers = {};
|
|
197
|
-
//#endregion
|
|
198
197
|
export { camelCase, capitalize, kebabCase, lowerCase, pascalCase, snakeCase, titleCase, toCaseCallback, upperCase };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/internal/string/misc.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Get the string value from any value
|
|
4
3
|
*
|
|
@@ -57,5 +56,4 @@ export declare function tryEncode(value: boolean | number | string): unknown;
|
|
|
57
56
|
* @param value Original string
|
|
58
57
|
* @returns Array of words found in the string
|
|
59
58
|
*/
|
|
60
|
-
export declare function words(value: string): string[];
|
|
61
|
-
//#endregion
|
|
59
|
+
export declare function words(value: string): string[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { STRING_EXPRESSION_IGNORED, STRING_EXPRESSION_WORDS } from "../../models/string/string.misc.model.mjs";
|
|
2
2
|
import { unwrap } from "../result/misc.mjs";
|
|
3
3
|
import { attempt } from "../result/attempt.mjs";
|
|
4
|
-
|
|
4
|
+
// src/internal/string/misc.ts
|
|
5
5
|
/**
|
|
6
6
|
* Get the string value from any value
|
|
7
7
|
*
|
|
@@ -98,5 +98,4 @@ function words(value) {
|
|
|
98
98
|
if (typeof value === "string") return value.match(STRING_EXPRESSION_WORDS) ?? [];
|
|
99
99
|
return [];
|
|
100
100
|
}
|
|
101
|
-
//#endregion
|
|
102
101
|
export { getString, ignoreKey, interpolate, join, tryDecode, tryEncode, words };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Subscription, Subscriptions, SubscriptionsParameters } from "../models/subscription.model.mjs";
|
|
2
|
-
//#region src/internal/subscription.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Is the value a subscription?
|
|
5
4
|
*
|
|
@@ -20,5 +19,4 @@ export declare function isSubscriptions(value: unknown): value is Subscriptions;
|
|
|
20
19
|
* @param parameters Store parameters
|
|
21
20
|
* @returns Subscription store
|
|
22
21
|
*/
|
|
23
|
-
export declare function subscriptions<Value = unknown>(parameters?: SubscriptionsParameters): Subscriptions<Value>;
|
|
24
|
-
//#endregion
|
|
22
|
+
export declare function subscriptions<Value = unknown>(parameters?: SubscriptionsParameters): Subscriptions<Value>;
|
|
@@ -1,24 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { SUBSCRIPTION_DISALLOWED_KEY, SUBSCRIPTION_INVALID_KEY, SUBSCRIPTION_INVALID_VALUE, SUBSCRIPTION_NAME, SUBSCRIPTION_PROPERTY, SUBSCRIPTION_STORE, SUBSCRIPTION_SYMBOL } from "../models/subscription.model.mjs";
|
|
1
|
+
import { SUBSCRIPTION_DISALLOWED_KEY, SUBSCRIPTION_INVALID_KEY, SUBSCRIPTION_INVALID_VALUE, SUBSCRIPTION_NAME, SUBSCRIPTION_STORE, SUBSCRIPTION_SYMBOL } from "../models/subscription.model.mjs";
|
|
3
2
|
import { createAborter } from "./aborter.mjs";
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import { isKey, isPlainObject } from "./is.mjs";
|
|
4
|
+
// src/internal/subscription.ts
|
|
5
|
+
function Subscription(state, parameters) {
|
|
6
6
|
this[SUBSCRIPTION_SYMBOL] = state;
|
|
7
|
-
this[property.key] = property.value;
|
|
8
7
|
state.aborter = createAborter(parameters.signal, () => this.unsubscribe(subscriptions, this, state));
|
|
9
8
|
addSubscription(this);
|
|
10
9
|
}
|
|
11
|
-
Subscription.prototype[SUBSCRIPTION_PROPERTY] = SUBSCRIPTION_NAME;
|
|
12
10
|
Subscription.prototype.unsubscribe = removeSubscription;
|
|
13
11
|
Object.defineProperty(Subscription.prototype, "active", {
|
|
14
12
|
enumerable: true,
|
|
15
13
|
get: getSubscriptionActive
|
|
16
14
|
});
|
|
17
15
|
function Subscriptions(parameters) {
|
|
18
|
-
const { keys
|
|
19
|
-
this[SUBSCRIPTION_SYMBOL] = createSubscriptionsState(
|
|
16
|
+
const { keys } = createSubscriptionsParameters(parameters);
|
|
17
|
+
this[SUBSCRIPTION_SYMBOL] = createSubscriptionsState(keys);
|
|
20
18
|
}
|
|
21
|
-
Subscriptions.prototype[SUBSCRIPTION_PROPERTY] = SUBSCRIPTION_STORE;
|
|
22
19
|
Subscriptions.prototype.clear = clearSubscriptions;
|
|
23
20
|
Subscriptions.prototype.create = createSubscription;
|
|
24
21
|
Object.defineProperties(Subscriptions.prototype, {
|
|
@@ -74,7 +71,8 @@ function createSubscription(params) {
|
|
|
74
71
|
const state = {
|
|
75
72
|
parameters,
|
|
76
73
|
subscriptions,
|
|
77
|
-
active: true
|
|
74
|
+
active: true,
|
|
75
|
+
name: SUBSCRIPTION_NAME
|
|
78
76
|
};
|
|
79
77
|
const existing = getExistingSubscription(subscriptions, state);
|
|
80
78
|
if (existing != null) return [existing, true];
|
|
@@ -82,7 +80,7 @@ function createSubscription(params) {
|
|
|
82
80
|
if (subscriptions.keys === false) throw new Error(SUBSCRIPTION_DISALLOWED_KEY);
|
|
83
81
|
else if (subscriptions.keys !== true && !subscriptions.keys.has(parameters.key)) throw new Error(SUBSCRIPTION_INVALID_KEY);
|
|
84
82
|
}
|
|
85
|
-
return [new Subscription(state,
|
|
83
|
+
return [new Subscription(state, parameters), false];
|
|
86
84
|
}
|
|
87
85
|
function getExistingSubscription(subscriptions, state) {
|
|
88
86
|
const { values } = subscriptions;
|
|
@@ -114,26 +112,16 @@ function createSubscriptionsParameters(input) {
|
|
|
114
112
|
let keys;
|
|
115
113
|
if (values.keys instanceof Set) keys = values.keys;
|
|
116
114
|
else keys = typeof values.keys === "boolean" ? values.keys : false;
|
|
117
|
-
return {
|
|
118
|
-
keys,
|
|
119
|
-
property: createSubscriptionsProperty(values.property)
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
function createSubscriptionsProperty(input) {
|
|
123
|
-
const values = isPlainObject(input) ? input : {};
|
|
124
|
-
return {
|
|
125
|
-
key: typeof values.key === "string" ? values.key : SUBSCRIPTION_PROPERTY,
|
|
126
|
-
value: values.value ?? "subscription"
|
|
127
|
-
};
|
|
115
|
+
return { keys };
|
|
128
116
|
}
|
|
129
|
-
function createSubscriptionsState(
|
|
117
|
+
function createSubscriptionsState(keys) {
|
|
130
118
|
return {
|
|
131
119
|
keys,
|
|
132
|
-
property,
|
|
133
120
|
items: {
|
|
134
121
|
any: /* @__PURE__ */ new Set(),
|
|
135
122
|
keyed: keys === false ? void 0 : /* @__PURE__ */ new Map()
|
|
136
123
|
},
|
|
124
|
+
name: SUBSCRIPTION_STORE,
|
|
137
125
|
values: {
|
|
138
126
|
from: {
|
|
139
127
|
any: /* @__PURE__ */ new Map(),
|
|
@@ -153,10 +141,10 @@ function createSubscriptionsState(property, keys) {
|
|
|
153
141
|
* @returns `true` if the value is a subscription, otherwise `false`
|
|
154
142
|
*/
|
|
155
143
|
function isSubscription(value) {
|
|
156
|
-
return isSubscriptionInstance(
|
|
144
|
+
return isSubscriptionInstance(SUBSCRIPTION_NAME, value);
|
|
157
145
|
}
|
|
158
|
-
function isSubscriptionInstance(
|
|
159
|
-
return typeof value === "object" && value !== null &&
|
|
146
|
+
function isSubscriptionInstance(type, value) {
|
|
147
|
+
return typeof value === "object" && value !== null && SUBSCRIPTION_SYMBOL in value && value[SUBSCRIPTION_SYMBOL].name === type;
|
|
160
148
|
}
|
|
161
149
|
/**
|
|
162
150
|
* Is the value a subscriptions store?
|
|
@@ -165,7 +153,7 @@ function isSubscriptionInstance(value, name) {
|
|
|
165
153
|
* @returns `true` if the value is a subscriptions store, otherwise `false`
|
|
166
154
|
*/
|
|
167
155
|
function isSubscriptions(value) {
|
|
168
|
-
return isSubscriptionInstance(
|
|
156
|
+
return isSubscriptionInstance(SUBSCRIPTION_STORE, value);
|
|
169
157
|
}
|
|
170
158
|
function removeFromStore(items, values, subscription, value, key) {
|
|
171
159
|
items.delete(subscription);
|
|
@@ -205,5 +193,4 @@ function removeSubscription() {
|
|
|
205
193
|
function subscriptions(parameters) {
|
|
206
194
|
return new Subscriptions(parameters);
|
|
207
195
|
}
|
|
208
|
-
//#endregion
|
|
209
196
|
export { isSubscription, isSubscriptions, subscriptions };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Constructor } from "../../models/index.mjs";
|
|
2
2
|
import { CompareHandler } from "../../models/value/value.handler.model.mjs";
|
|
3
3
|
import { ComparisonHandler } from "../../models/value/value.misc.model.mjs";
|
|
4
|
-
//#region src/internal/value/compare.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Compare two values _(for sorting purposes)_
|
|
7
6
|
*
|
|
@@ -31,5 +30,4 @@ export declare namespace compare {
|
|
|
31
30
|
export var deregister: typeof deregisterComparator;
|
|
32
31
|
export var handler: CompareHandler<number>;
|
|
33
32
|
export var register: typeof registerComparator;
|
|
34
|
-
}
|
|
35
|
-
//#endregion
|
|
33
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { max } from "../math/aggregate.mjs";
|
|
2
1
|
import { COMPARE_NAME } from "../../models/value/value.misc.model.mjs";
|
|
2
|
+
import { max } from "../math/aggregate.mjs";
|
|
3
3
|
import { getString, words } from "../string/misc.mjs";
|
|
4
4
|
import { createCompareHandler } from "./handlers.mjs";
|
|
5
|
-
|
|
5
|
+
// src/internal/value/compare.ts
|
|
6
6
|
/**
|
|
7
7
|
* Compare two values _(for sorting purposes)_
|
|
8
8
|
*
|
|
@@ -85,5 +85,4 @@ const compareHandler = createCompareHandler(compare, {
|
|
|
85
85
|
compare.deregister = deregisterComparator;
|
|
86
86
|
compare.handler = compareHandler;
|
|
87
87
|
compare.register = registerComparator;
|
|
88
|
-
//#endregion
|
|
89
88
|
export { compare, deregisterComparator, registerComparator };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Constructor } from "../../models/index.mjs";
|
|
2
|
-
import { CompareHandler } from "../../models/value/value.handler.model.mjs";
|
|
3
2
|
import { EqualOptions, Equalizer, EqualizerOptions } from "../../models/value/value.equal.model.mjs";
|
|
4
|
-
|
|
3
|
+
import { CompareHandler } from "../../models/value/value.handler.model.mjs";
|
|
5
4
|
declare function Equalizer(this: any, options: EqualizerOptions): void;
|
|
6
5
|
/**
|
|
7
6
|
* Deregister a equality comparison handler for a specific class
|
|
@@ -53,5 +52,4 @@ export declare namespace equal {
|
|
|
53
52
|
export var initialize: typeof initializeEqualizer;
|
|
54
53
|
export var register: typeof registerEqualizer;
|
|
55
54
|
}
|
|
56
|
-
//#endregion
|
|
57
55
|
export type { EqualOptions, Equalizer };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { EQUAL_ERROR_PROPERTIES, EQUAL_EXPRESSION_PROPERTIES, EQUAL_SYMBOL } from "../../models/value/value.equal.model.mjs";
|
|
1
2
|
import { isNonPlainObject, isPlainObject, isPrimitive, isTypedArray } from "../is.mjs";
|
|
2
|
-
import { round } from "../math/misc.mjs";
|
|
3
3
|
import { min } from "../math/aggregate.mjs";
|
|
4
|
+
import { round } from "../math/misc.mjs";
|
|
4
5
|
import { createCompareHandler } from "./handlers.mjs";
|
|
5
|
-
|
|
6
|
-
//#region src/internal/value/equal.ts
|
|
6
|
+
// src/internal/value/equal.ts
|
|
7
7
|
function Equalizer(options) {
|
|
8
8
|
this[EQUAL_SYMBOL] = options;
|
|
9
9
|
}
|
|
@@ -176,5 +176,4 @@ equal.deregister = deregisterEqualizer;
|
|
|
176
176
|
equal.handler = equalHandler;
|
|
177
177
|
equal.initialize = initializeEqualizer;
|
|
178
178
|
equal.register = registerEqualizer;
|
|
179
|
-
//#endregion
|
|
180
179
|
export { deregisterEqualizer, equal, initializeEqualizer, registerEqualizer };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { NestedKeys, NestedValue, PlainObject } from "../../models/index.mjs";
|
|
2
|
-
//#region src/internal/value/get.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Get the value from an object using a known path
|
|
5
4
|
*
|
|
@@ -36,5 +35,4 @@ export declare function getValue<Data extends PlainObject, Path extends NestedKe
|
|
|
36
35
|
* getValue(data, 'foo.nope'); // => undefined
|
|
37
36
|
* ```
|
|
38
37
|
*/
|
|
39
|
-
export declare function getValue<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): unknown;
|
|
40
|
-
//#endregion
|
|
38
|
+
export declare function getValue<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): unknown;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { GenericCallback } from "../../models/index.mjs";
|
|
2
2
|
import { BaseHandlerOptions, CompareHandler, ValueHandler } from "../../models/value/value.handler.model.mjs";
|
|
3
|
-
//#region src/internal/value/handlers.d.ts
|
|
4
3
|
export declare function createCompareHandler<Value>(owner: GenericCallback, options: BaseHandlerOptions): CompareHandler<Value>;
|
|
5
|
-
export declare function createValueHandler(owner: GenericCallback, options: BaseHandlerOptions): ValueHandler;
|
|
6
|
-
//#endregion
|
|
4
|
+
export declare function createValueHandler(owner: GenericCallback, options: BaseHandlerOptions): ValueHandler;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isNonConstructor } from "../is.mjs";
|
|
2
|
-
|
|
2
|
+
// src/internal/value/handlers.ts
|
|
3
3
|
function BaseHandler(owner, options) {
|
|
4
4
|
this.handlers = /* @__PURE__ */ new WeakMap();
|
|
5
5
|
this.owner = owner;
|
|
@@ -51,5 +51,4 @@ function handleValue(value, ...parameters) {
|
|
|
51
51
|
if (handler == null) return this.base.options.callback(value, ...parameters);
|
|
52
52
|
return typeof handler === "function" ? handler(value) : value[handler]();
|
|
53
53
|
}
|
|
54
|
-
//#endregion
|
|
55
54
|
export { createCompareHandler, createValueHandler };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { NestedKeys, NestedValue, PlainObject, ToString } from "../../models/index.mjs";
|
|
2
2
|
import { Result } from "../../models/result.model.mjs";
|
|
3
|
-
//#region src/internal/value/has.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Check if a property is defined in an object
|
|
6
5
|
*
|
|
@@ -82,5 +81,4 @@ export declare function hasValueResult<Data extends PlainObject, Path extends Ne
|
|
|
82
81
|
export declare function hasValueResult<Data extends PlainObject>(data: Data, path: string, ignoreCase?: boolean): Result<unknown, string>;
|
|
83
82
|
export declare namespace hasValue {
|
|
84
83
|
export var get: typeof hasValueResult;
|
|
85
|
-
}
|
|
86
|
-
//#endregion
|
|
84
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getNestedValue } from "./misc.mjs";
|
|
2
|
-
|
|
2
|
+
// src/internal/value/has.ts
|
|
3
3
|
function hasValue(data, path, ignoreCase) {
|
|
4
4
|
return getNestedValue(data, path, ignoreCase === true).ok;
|
|
5
5
|
}
|
|
@@ -7,5 +7,4 @@ function hasValueResult(data, path, ignoreCase) {
|
|
|
7
7
|
return getNestedValue(data, path, ignoreCase === true);
|
|
8
8
|
}
|
|
9
9
|
hasValue.get = hasValueResult;
|
|
10
|
-
//#endregion
|
|
11
10
|
export { hasValue, hasValueResult };
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Result } from "../../models/result.model.mjs";
|
|
2
|
-
//#region src/internal/value/misc.d.ts
|
|
3
2
|
export declare function findKey(needle: string, haystack: object): string;
|
|
4
3
|
export declare function getNestedValue(data: object, path: string, ignoreCase: boolean): Result<unknown, string>;
|
|
5
4
|
export declare function getPaths(path: string, lowercase: boolean): string | string[];
|
|
6
5
|
export declare function handleValue(data: object, path: string, value: unknown, get: true, ignoreCase: boolean): Result<object, string>;
|
|
7
|
-
export declare function handleValue(data: object, path: string, value: unknown, get: false, ignoreCase: boolean): void;
|
|
8
|
-
//#endregion
|
|
6
|
+
export declare function handleValue(data: object, path: string, value: unknown, get: false, ignoreCase: boolean): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { VALUE_MISC_EXPRESSION_BRACKET, VALUE_MISC_EXPRESSION_DOTS, VALUE_MISC_EXPRESSION_NESTED, VALUE_MISC_NESTED_MESSAGE_INPUT, VALUE_MISC_NESTED_MESSAGE_MISSING, VALUE_MISC_NESTED_MESSAGE_PATH, VALUE_MISC_NESTED_MESSAGE_UNSAFE } from "../../models/value/value.misc.model.mjs";
|
|
2
1
|
import { error, ok } from "../result/misc.mjs";
|
|
2
|
+
import { VALUE_MISC_EXPRESSION_BRACKET, VALUE_MISC_EXPRESSION_DOTS, VALUE_MISC_EXPRESSION_NESTED, VALUE_MISC_NESTED_MESSAGE_INPUT, VALUE_MISC_NESTED_MESSAGE_MISSING, VALUE_MISC_NESTED_MESSAGE_PATH, VALUE_MISC_NESTED_MESSAGE_UNSAFE } from "../../models/value/value.misc.model.mjs";
|
|
3
3
|
import { ignoreKey } from "../string/misc.mjs";
|
|
4
|
-
|
|
4
|
+
// src/internal/value/misc.ts
|
|
5
5
|
function findKey(needle, haystack) {
|
|
6
6
|
const keys = Object.keys(haystack);
|
|
7
7
|
const index = keys.map((key) => key.toLowerCase()).indexOf(needle.toLowerCase());
|
|
@@ -38,5 +38,4 @@ function handleValue(data, path, value, get, ignoreCase) {
|
|
|
38
38
|
}
|
|
39
39
|
if (get) return error(VALUE_MISC_NESTED_MESSAGE_MISSING);
|
|
40
40
|
}
|
|
41
|
-
//#endregion
|
|
42
41
|
export { findKey, getNestedValue, getPaths, handleValue };
|
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
//#region src/internal/value/partial.d.ts
|
|
2
1
|
export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: true): Omit<Value, ValueKey>;
|
|
3
|
-
export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: false): Pick<Value, ValueKey>;
|
|
4
|
-
//#endregion
|
|
2
|
+
export declare function partial<Value extends object, ValueKey extends keyof Value>(value: unknown, keys: ValueKey[], omit: false): Pick<Value, ValueKey>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isPlainObject } from "../is.mjs";
|
|
2
|
-
|
|
2
|
+
// src/internal/value/partial.ts
|
|
3
3
|
function partial(value, providedKeys, omit) {
|
|
4
4
|
if (!isPlainObject(value)) return {};
|
|
5
5
|
let keys;
|
|
@@ -15,5 +15,4 @@ function partial(value, providedKeys, omit) {
|
|
|
15
15
|
}
|
|
16
16
|
return partials;
|
|
17
17
|
}
|
|
18
|
-
//#endregion
|
|
19
18
|
export { partial };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { NestedKeys, NestedValue, PlainObject } from "../../models/index.mjs";
|
|
2
|
-
//#region src/internal/value/set.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Update the value in an object using a known path
|
|
5
4
|
*
|
|
@@ -48,5 +47,4 @@ export declare function setValue<Data extends PlainObject, Path extends NestedKe
|
|
|
48
47
|
* setValue(data, 'Foo.Bar.Baz', 99, true); // => {foo: {bar: {baz: 99}}}
|
|
49
48
|
* ```
|
|
50
49
|
*/
|
|
51
|
-
export declare function setValue<Data extends PlainObject>(data: Data, path: string, value: unknown, ignoreCase?: boolean): Data;
|
|
52
|
-
//#endregion
|
|
50
|
+
export declare function setValue<Data extends PlainObject>(data: Data, path: string, value: unknown, ignoreCase?: boolean): Data;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { EXPRESSION_INTEGER } from "../../models/misc.model.mjs";
|
|
1
2
|
import { unwrap } from "../result/misc.mjs";
|
|
2
3
|
import { getPaths, handleValue } from "./misc.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/internal/value/set.ts
|
|
4
|
+
// src/internal/value/set.ts
|
|
5
5
|
function setValue(data, path, value, ignoreCase) {
|
|
6
6
|
if (typeof data !== "object" || data === null || typeof path !== "string" || path.trim().length === 0) return data;
|
|
7
7
|
const shouldIgnoreCase = ignoreCase === true;
|
|
@@ -30,5 +30,4 @@ function setValue(data, path, value, ignoreCase) {
|
|
|
30
30
|
}
|
|
31
31
|
return data;
|
|
32
32
|
}
|
|
33
|
-
//#endregion
|
|
34
33
|
export { setValue };
|
package/dist/is.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
|
|
2
|
-
//#region src/is.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Is the value empty, or only containing `null` or `undefined` values?
|
|
5
4
|
*
|
|
@@ -84,5 +83,4 @@ export declare function isNumerical(value: unknown): value is number | `${number
|
|
|
84
83
|
* @returns `true` if the value matches, otherwise `false`
|
|
85
84
|
*/
|
|
86
85
|
export declare function isObject(value: unknown): value is object;
|
|
87
|
-
//#endregion
|
|
88
86
|
export { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray };
|
package/dist/is.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
|
|
2
1
|
import { getArray } from "./internal/array/get.mjs";
|
|
2
|
+
import { isArrayOrPlainObject, isConstructor, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonInstanceOf, isNonKey, isNonNumber, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNumber, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray } from "./internal/is.mjs";
|
|
3
3
|
import { getString } from "./internal/string/misc.mjs";
|
|
4
4
|
import { EXPRESSION_WHITESPACE_ONLY } from "./models/misc.model.mjs";
|
|
5
|
-
|
|
5
|
+
// src/is.ts
|
|
6
6
|
/**
|
|
7
7
|
* Is the value empty, or only containing `null` or `undefined` values?
|
|
8
8
|
*
|
|
@@ -119,5 +119,4 @@ function isNumerical(value) {
|
|
|
119
119
|
function isObject(value) {
|
|
120
120
|
return typeof value === "object" && value !== null || typeof value === "function";
|
|
121
121
|
}
|
|
122
|
-
//#endregion
|
|
123
122
|
export { isArrayOrPlainObject, isConstructor, isEmpty, isInstanceOf, isKey, isNonArrayOrPlainObject, isNonConstructor, isNonEmpty, isNonInstanceOf, isNonKey, isNonNullable, isNonNullableOrEmpty, isNonNullableOrWhitespace, isNonNumber, isNonNumerical, isNonObject, isNonPlainObject, isNonPrimitive, isNonTemplateStringsArray, isNonTypedArray, isNullable, isNullableOrEmpty, isNullableOrWhitespace, isNumber, isNumerical, isObject, isPlainObject, isPrimitive, isTemplateStringsArray, isTypedArray };
|
package/dist/logger.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Lumberjack, TimeLogger } from "./models/logger.model.mjs";
|
|
2
|
-
//#region src/logger.d.ts
|
|
3
2
|
declare function TimeLogger(this: any, label: string): void;
|
|
4
3
|
/**
|
|
5
4
|
* Is the value a _Logger_?
|
|
@@ -21,5 +20,4 @@ declare function isTimeLogger(value: unknown): value is TimeLogger;
|
|
|
21
20
|
* _(Logging can be enabled or disabled by setting the `enabled` property)_
|
|
22
21
|
*/
|
|
23
22
|
declare const Logger: Lumberjack;
|
|
24
|
-
//#endregion
|
|
25
23
|
export { Logger, type TimeLogger, isLogger, isTimeLogger };
|
package/dist/logger.mjs
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { noop } from "./internal/function/misc.mjs";
|
|
2
2
|
import { getString } from "./internal/string/misc.mjs";
|
|
3
|
-
import { LOGGER_NAME, LOGGER_NAME_TIMED,
|
|
4
|
-
|
|
5
|
-
function Lumberjack() {
|
|
6
|
-
|
|
3
|
+
import { LOGGER_NAME, LOGGER_NAME_TIMED, LOGGER_SYMBOL } from "./models/logger.model.mjs";
|
|
4
|
+
// src/logger.ts
|
|
5
|
+
function Lumberjack() {
|
|
6
|
+
this[LOGGER_SYMBOL] = { name: LOGGER_NAME };
|
|
7
|
+
}
|
|
7
8
|
Lumberjack.prototype.time = getTimeLogger;
|
|
8
9
|
Object.defineProperties(Lumberjack.prototype, {
|
|
9
10
|
debug: { get: getLoggerCallback.bind("debug") },
|
|
@@ -23,6 +24,7 @@ Object.defineProperties(Lumberjack.prototype, {
|
|
|
23
24
|
function TimeLogger(label) {
|
|
24
25
|
this[LOGGER_SYMBOL] = {
|
|
25
26
|
label,
|
|
27
|
+
name: LOGGER_NAME_TIMED,
|
|
26
28
|
started: enabled,
|
|
27
29
|
stopped: false
|
|
28
30
|
};
|
|
@@ -31,7 +33,6 @@ function TimeLogger(label) {
|
|
|
31
33
|
};
|
|
32
34
|
if (this[LOGGER_SYMBOL].started) console.time(label);
|
|
33
35
|
}
|
|
34
|
-
TimeLogger.prototype[LOGGER_PROPERTY] = LOGGER_NAME_TIMED;
|
|
35
36
|
Object.defineProperties(TimeLogger.prototype, {
|
|
36
37
|
active: {
|
|
37
38
|
enumerable: true,
|
|
@@ -74,7 +75,7 @@ function isLogger(value) {
|
|
|
74
75
|
return isLoggerInstance(LOGGER_NAME, value);
|
|
75
76
|
}
|
|
76
77
|
function isLoggerInstance(name, value) {
|
|
77
|
-
return typeof value === "object" && value !== null &&
|
|
78
|
+
return typeof value === "object" && value !== null && LOGGER_SYMBOL in value && value[LOGGER_SYMBOL].name === name;
|
|
78
79
|
}
|
|
79
80
|
/**
|
|
80
81
|
* Is the value a _TimeLogger_?
|
|
@@ -95,5 +96,4 @@ function setLoggerEnabled(value) {
|
|
|
95
96
|
*/
|
|
96
97
|
const Logger = new Lumberjack();
|
|
97
98
|
let enabled = true;
|
|
98
|
-
//#endregion
|
|
99
99
|
export { Logger, isLogger, isTimeLogger };
|
package/dist/math.d.mts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { NumericalValues, PlainObject } from "./models/index.mjs";
|
|
2
2
|
import { max, min } from "./internal/math/aggregate.mjs";
|
|
3
3
|
import { floor, round } from "./internal/math/misc.mjs";
|
|
4
|
-
//#region src/math.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Get the average value from a list of items
|
|
7
6
|
*
|
|
@@ -194,5 +193,4 @@ export declare function sum<Item extends PlainObject>(items: Item[], key: keyof
|
|
|
194
193
|
* ```
|
|
195
194
|
*/
|
|
196
195
|
export declare function sum(values: number[]): number;
|
|
197
|
-
//#endregion
|
|
198
196
|
export { floor, max, min, round };
|
package/dist/math.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { isNumber } from "./internal/is.mjs";
|
|
2
|
+
import { aggregate, getAggregateCallback, getAggregated, max, min } from "./internal/math/aggregate.mjs";
|
|
2
3
|
import { floor, round, roundNumber } from "./internal/math/misc.mjs";
|
|
3
4
|
import { AGGREGATION_AVERAGE } from "./models/math.model.mjs";
|
|
4
|
-
|
|
5
|
-
//#region src/math.ts
|
|
5
|
+
// src/math.ts
|
|
6
6
|
function average(array, key) {
|
|
7
7
|
const aggregated = aggregate(AGGREGATION_AVERAGE, array, key);
|
|
8
8
|
return aggregated.count > 0 ? aggregated.value / aggregated.count : NaN;
|
|
@@ -55,5 +55,4 @@ function median(array, key) {
|
|
|
55
55
|
function sum(array, key) {
|
|
56
56
|
return getAggregated("sum", array, key);
|
|
57
57
|
}
|
|
58
|
-
//#endregion
|
|
59
58
|
export { average, ceil, count, floor, max, median, min, round, sum };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { GenericCallback } from "./index.mjs";
|
|
2
|
-
//#region src/models/aborter.model.d.ts
|
|
3
2
|
export type Aborter = {
|
|
4
3
|
callback: GenericCallback;
|
|
5
4
|
cancel(): void;
|
|
@@ -8,5 +7,4 @@ export type Aborter = {
|
|
|
8
7
|
export declare const ABORTER_EVENT = "abort";
|
|
9
8
|
export declare const ABORTER_OPTIONS: {
|
|
10
9
|
once: boolean;
|
|
11
|
-
};
|
|
12
|
-
//#endregion
|
|
10
|
+
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ArrayComparison } from "./array.misc.model.mjs";
|
|
2
|
-
//#region src/models/array/array.match.model.d.ts
|
|
3
2
|
export declare const ARRAY_MATCH_COMPARISON_END: ArrayComparison;
|
|
4
3
|
export declare const ARRAY_MATCH_COMPARISON_INSIDE: ArrayComparison;
|
|
5
4
|
export declare const ARRAY_MATCH_COMPARISON_INVALID: ArrayComparison;
|
|
@@ -10,5 +9,4 @@ export declare const arrayMatchEndings: Set<ArrayComparison>;
|
|
|
10
9
|
export declare const arrayMatchInvalid: readonly [-1, ArrayComparison];
|
|
11
10
|
export declare const arrayMatchOutside: readonly [-1, ArrayComparison];
|
|
12
11
|
export declare const arrayMatchOutsides: Set<ArrayComparison>;
|
|
13
|
-
export declare const arrayMatchStarts: Set<ArrayComparison>;
|
|
14
|
-
//#endregion
|
|
12
|
+
export declare const arrayMatchStarts: Set<ArrayComparison>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/models/array/array.match.model.ts
|
|
2
2
|
const ARRAY_MATCH_COMPARISON_END = "end";
|
|
3
3
|
const ARRAY_MATCH_COMPARISON_INSIDE = "inside";
|
|
4
4
|
const ARRAY_MATCH_COMPARISON_INVALID = "invalid";
|
|
@@ -10,5 +10,4 @@ const arrayMatchInvalid = [-1, ARRAY_MATCH_COMPARISON_INVALID];
|
|
|
10
10
|
const arrayMatchOutside = [-1, ARRAY_MATCH_COMPARISON_OUTSIDE];
|
|
11
11
|
const arrayMatchOutsides = /* @__PURE__ */ new Set([ARRAY_MATCH_COMPARISON_INVALID, ARRAY_MATCH_COMPARISON_OUTSIDE]);
|
|
12
12
|
const arrayMatchStarts = /* @__PURE__ */ new Set([ARRAY_MATCH_COMPARISON_START, ARRAY_MATCH_COMPARISON_SAME]);
|
|
13
|
-
//#endregion
|
|
14
13
|
export { ARRAY_MATCH_COMPARISON_END, ARRAY_MATCH_COMPARISON_INSIDE, ARRAY_MATCH_COMPARISON_INVALID, ARRAY_MATCH_COMPARISON_OUTSIDE, ARRAY_MATCH_COMPARISON_SAME, ARRAY_MATCH_COMPARISON_START, arrayMatchEndings, arrayMatchInvalid, arrayMatchOutside, arrayMatchOutsides, arrayMatchStarts };
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import { GenericCallback } from "../index.mjs";
|
|
2
|
-
//#region src/models/array/array.misc.model.d.ts
|
|
3
2
|
export type ArrayCompareSetsType = "difference" | "intersection" | "union";
|
|
4
3
|
/**
|
|
5
4
|
* Comparison of an array within another array
|
|
6
5
|
*/
|
|
7
6
|
export type ArrayComparison = "end" | "inside" | "invalid" | "outside" | "same" | "start";
|
|
8
7
|
export type ArrayExtractType = "drop" | "take";
|
|
8
|
+
export type ArrayFindParameters = {
|
|
9
|
+
bare?: boolean;
|
|
10
|
+
indiced?: boolean;
|
|
11
|
+
input: unknown[];
|
|
12
|
+
limit?: number;
|
|
13
|
+
reverse?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export type ArrayFindResult = {
|
|
16
|
+
values: unknown[];
|
|
17
|
+
};
|
|
9
18
|
export type ArrayFlattened<Value> = Value extends ReadonlyArray<infer Inner> ? Inner : Value;
|
|
10
19
|
export type ArrayGetCallbacks = {
|
|
11
20
|
bool?: GenericCallback;
|
|
@@ -31,4 +40,4 @@ export declare const ARRAY_SETS_COMPARE_INTERSECTION: ArrayCompareSetsType;
|
|
|
31
40
|
export declare const ARRAY_SETS_COMPARE_UNION: ArrayCompareSetsType;
|
|
32
41
|
export declare const ARRAY_SLICE_DROP: ArrayExtractType;
|
|
33
42
|
export declare const ARRAY_SLICE_TAKE: ArrayExtractType;
|
|
34
|
-
|
|
43
|
+
export declare const ARRAY_UNIQUE_THRESHOLD = 100;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/models/array/array.misc.model.ts
|
|
2
2
|
const ARRAY_CHUNK_MAX_SIZE = 5e3;
|
|
3
3
|
const ARRAY_INSERT_TYPE_INSERT = "insert";
|
|
4
4
|
const ARRAY_INSERT_TYPE_PUSH = "push";
|
|
@@ -8,5 +8,5 @@ const ARRAY_SETS_COMPARE_INTERSECTION = "intersection";
|
|
|
8
8
|
const ARRAY_SETS_COMPARE_UNION = "union";
|
|
9
9
|
const ARRAY_SLICE_DROP = "drop";
|
|
10
10
|
const ARRAY_SLICE_TAKE = "take";
|
|
11
|
-
|
|
12
|
-
export { ARRAY_CHUNK_MAX_SIZE, ARRAY_INSERT_TYPE_INSERT, ARRAY_INSERT_TYPE_PUSH, ARRAY_INSERT_TYPE_SPLICE, ARRAY_SETS_COMPARE_DIFFERENCE, ARRAY_SETS_COMPARE_INTERSECTION, ARRAY_SETS_COMPARE_UNION, ARRAY_SLICE_DROP, ARRAY_SLICE_TAKE };
|
|
11
|
+
const ARRAY_UNIQUE_THRESHOLD = 100;
|
|
12
|
+
export { ARRAY_CHUNK_MAX_SIZE, ARRAY_INSERT_TYPE_INSERT, ARRAY_INSERT_TYPE_PUSH, ARRAY_INSERT_TYPE_SPLICE, ARRAY_SETS_COMPARE_DIFFERENCE, ARRAY_SETS_COMPARE_INTERSECTION, ARRAY_SETS_COMPARE_UNION, ARRAY_SLICE_DROP, ARRAY_SLICE_TAKE, ARRAY_UNIQUE_THRESHOLD };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { PlainObject, Primitive } from "../index.mjs";
|
|
2
|
-
//#region src/models/array/array.sort.model.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Sorting information for arrays _(using a comparison callback)_
|
|
5
4
|
*/
|
|
@@ -118,5 +117,4 @@ export declare const SORT_THRESHOLD = 100;
|
|
|
118
117
|
export declare const SORT_DIRECTION_ASCENDING: SortDirection;
|
|
119
118
|
export declare const SORT_DIRECTION_DESCENDING: SortDirection;
|
|
120
119
|
export declare const SORTER_SYMBOL: unique symbol;
|
|
121
|
-
export declare const arrayModifiers: Record<string, number>;
|
|
122
|
-
//#endregion
|
|
120
|
+
export declare const arrayModifiers: Record<string, number>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/models/array/array.sort.model.ts
|
|
2
2
|
const SORT_PEEK_PERCENTAGE = 10;
|
|
3
3
|
const SORT_THRESHOLD = 100;
|
|
4
4
|
const SORT_DIRECTION_ASCENDING = "ascending";
|
|
@@ -8,5 +8,4 @@ const arrayModifiers = {
|
|
|
8
8
|
[SORT_DIRECTION_ASCENDING]: 1,
|
|
9
9
|
[SORT_DIRECTION_DESCENDING]: -1
|
|
10
10
|
};
|
|
11
|
-
//#endregion
|
|
12
11
|
export { SORTER_SYMBOL, SORT_DIRECTION_ASCENDING, SORT_DIRECTION_DESCENDING, SORT_PEEK_PERCENTAGE, SORT_THRESHOLD, arrayModifiers };
|