@maxclicks/utilities 1.6.0 → 1.6.3
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/helpers/deepClone.d.ts +1 -0
- package/dist/helpers/deepClone.d.ts.map +1 -1
- package/dist/helpers/deepClone.js +1 -0
- package/dist/helpers/deepClone.js.map +1 -1
- package/dist/helpers/delay.d.ts +7 -1
- package/dist/helpers/delay.d.ts.map +1 -1
- package/dist/helpers/delay.js +1 -1
- package/dist/helpers/delay.js.map +1 -1
- package/dist/helpers/error-warning/alterError.d.ts +7 -1
- package/dist/helpers/error-warning/alterError.d.ts.map +1 -1
- package/dist/helpers/error-warning/alterError.js +6 -0
- package/dist/helpers/error-warning/alterError.js.map +1 -1
- package/dist/helpers/error-warning/combineMessages.d.ts +6 -0
- package/dist/helpers/error-warning/combineMessages.d.ts.map +1 -1
- package/dist/helpers/error-warning/combineMessages.js +6 -0
- package/dist/helpers/error-warning/combineMessages.js.map +1 -1
- package/dist/helpers/error-warning/getErrorMessage.d.ts +1 -0
- package/dist/helpers/error-warning/getErrorMessage.d.ts.map +1 -1
- package/dist/helpers/error-warning/getErrorMessage.js +1 -0
- package/dist/helpers/error-warning/getErrorMessage.js.map +1 -1
- package/dist/helpers/error-warning/prependMessage.d.ts +6 -0
- package/dist/helpers/error-warning/prependMessage.d.ts.map +1 -1
- package/dist/helpers/error-warning/prependMessage.js +6 -0
- package/dist/helpers/error-warning/prependMessage.js.map +1 -1
- package/dist/helpers/error-warning/throwError.d.ts +7 -0
- package/dist/helpers/error-warning/throwError.d.ts.map +1 -1
- package/dist/helpers/error-warning/throwError.js +9 -0
- package/dist/helpers/error-warning/throwError.js.map +1 -1
- package/dist/helpers/escapeForRegExp.d.ts +1 -0
- package/dist/helpers/escapeForRegExp.d.ts.map +1 -1
- package/dist/helpers/escapeForRegExp.js +2 -1
- package/dist/helpers/escapeForRegExp.js.map +1 -1
- package/dist/helpers/formatCurrencyUsd.d.ts +1 -0
- package/dist/helpers/formatCurrencyUsd.d.ts.map +1 -1
- package/dist/helpers/formatCurrencyUsd.js +1 -0
- package/dist/helpers/formatCurrencyUsd.js.map +1 -1
- package/dist/helpers/generateRandomKey.d.ts +6 -0
- package/dist/helpers/generateRandomKey.d.ts.map +1 -1
- package/dist/helpers/generateRandomKey.js +6 -0
- package/dist/helpers/generateRandomKey.js.map +1 -1
- package/dist/helpers/generateRuntimeId.d.ts +1 -0
- package/dist/helpers/generateRuntimeId.d.ts.map +1 -1
- package/dist/helpers/generateRuntimeId.js +1 -0
- package/dist/helpers/generateRuntimeId.js.map +1 -1
- package/dist/helpers/generateSequence.d.ts +5 -0
- package/dist/helpers/generateSequence.d.ts.map +1 -1
- package/dist/helpers/generateSequence.js +5 -0
- package/dist/helpers/generateSequence.js.map +1 -1
- package/dist/helpers/getEnumKeyValues.d.ts +1 -0
- package/dist/helpers/getEnumKeyValues.d.ts.map +1 -1
- package/dist/helpers/getEnumKeyValues.js +2 -0
- package/dist/helpers/getEnumKeyValues.js.map +1 -1
- package/dist/helpers/haveSameContents.d.ts +1 -0
- package/dist/helpers/haveSameContents.d.ts.map +1 -1
- package/dist/helpers/haveSameContents.js +1 -0
- package/dist/helpers/haveSameContents.js.map +1 -1
- package/dist/helpers/isOneOf.d.ts +5 -0
- package/dist/helpers/isOneOf.d.ts.map +1 -1
- package/dist/helpers/isOneOf.js +5 -0
- package/dist/helpers/isOneOf.js.map +1 -1
- package/dist/helpers/native/arrayHelpers.d.ts +4 -0
- package/dist/helpers/native/arrayHelpers.d.ts.map +1 -1
- package/dist/helpers/native/arrayHelpers.js +1 -1
- package/dist/helpers/native/arrayHelpers.js.map +1 -1
- package/dist/helpers/native/objectHelpers.d.ts +3 -0
- package/dist/helpers/native/objectHelpers.d.ts.map +1 -1
- package/dist/helpers/native/stringHelpers.d.ts +3 -0
- package/dist/helpers/native/stringHelpers.d.ts.map +1 -1
- package/dist/helpers/optional.d.ts +3 -0
- package/dist/helpers/optional.d.ts.map +1 -1
- package/dist/helpers/optional.js +3 -0
- package/dist/helpers/optional.js.map +1 -1
- package/dist/helpers/percent.d.ts +2 -0
- package/dist/helpers/percent.d.ts.map +1 -1
- package/dist/helpers/percent.js +2 -0
- package/dist/helpers/percent.js.map +1 -1
- package/dist/helpers/typed.d.ts +19 -0
- package/dist/helpers/typed.d.ts.map +1 -1
- package/dist/helpers/typed.js +19 -0
- package/dist/helpers/typed.js.map +1 -1
- package/dist/modules/common-normalizers/descriptionNormalizer.d.ts +1 -0
- package/dist/modules/common-normalizers/descriptionNormalizer.d.ts.map +1 -1
- package/dist/modules/common-normalizers/descriptionNormalizer.js +1 -0
- package/dist/modules/common-normalizers/descriptionNormalizer.js.map +1 -1
- package/dist/modules/common-normalizers/labelNormalizer.d.ts +1 -0
- package/dist/modules/common-normalizers/labelNormalizer.d.ts.map +1 -1
- package/dist/modules/common-normalizers/labelNormalizer.js +1 -0
- package/dist/modules/common-normalizers/labelNormalizer.js.map +1 -1
- package/dist/modules/common-normalizers/nameNormalizer.d.ts +1 -0
- package/dist/modules/common-normalizers/nameNormalizer.d.ts.map +1 -1
- package/dist/modules/common-normalizers/nameNormalizer.js +1 -0
- package/dist/modules/common-normalizers/nameNormalizer.js.map +1 -1
- package/dist/modules/common-normalizers/widthHeightNormalizer.d.ts +1 -0
- package/dist/modules/common-normalizers/widthHeightNormalizer.d.ts.map +1 -1
- package/dist/modules/common-normalizers/widthHeightNormalizer.js +1 -0
- package/dist/modules/common-normalizers/widthHeightNormalizer.js.map +1 -1
- package/dist/types/Address.d.ts +1 -0
- package/dist/types/Address.d.ts.map +1 -1
- package/dist/types/Color.d.ts +1 -0
- package/dist/types/Color.d.ts.map +1 -1
- package/dist/types/DateOnly.d.ts +2 -0
- package/dist/types/DateOnly.d.ts.map +1 -1
- package/dist/types/DateOnly.js +1 -0
- package/dist/types/DateOnly.js.map +1 -1
- package/dist/types/DateTime.d.ts +1 -0
- package/dist/types/DateTime.d.ts.map +1 -1
- package/dist/types/Decimal.d.ts +1 -0
- package/dist/types/Decimal.d.ts.map +1 -1
- package/dist/types/Email.d.ts +1 -0
- package/dist/types/Email.d.ts.map +1 -1
- package/dist/types/Geolocation.d.ts +1 -0
- package/dist/types/Geolocation.d.ts.map +1 -1
- package/dist/types/Json/Json.d.ts +7 -0
- package/dist/types/Json/Json.d.ts.map +1 -1
- package/dist/types/Json/Json.js +6 -0
- package/dist/types/Json/Json.js.map +1 -1
- package/dist/types/Json/jsonNormalizerWithSchemaFactory.js +13 -0
- package/dist/types/Json/jsonNormalizerWithSchemaFactory.js.map +1 -1
- package/dist/types/Json/jsonSchemaNormalizer.js +11 -0
- package/dist/types/Json/jsonSchemaNormalizer.js.map +1 -1
- package/dist/types/Json/jsonSchemaSatisfies.d.ts +9 -0
- package/dist/types/Json/jsonSchemaSatisfies.d.ts.map +1 -1
- package/dist/types/Json/jsonSchemaSatisfies.js +55 -3
- package/dist/types/Json/jsonSchemaSatisfies.js.map +1 -1
- package/dist/types/Json/jsonSchemaSimplifiedSatisfies.d.ts +1 -0
- package/dist/types/Json/jsonSchemaSimplifiedSatisfies.d.ts.map +1 -1
- package/dist/types/Json/jsonSchemaSimplifiedSatisfies.js +2 -0
- package/dist/types/Json/jsonSchemaSimplifiedSatisfies.js.map +1 -1
- package/dist/types/Lazily.d.ts +39 -0
- package/dist/types/Lazily.d.ts.map +1 -1
- package/dist/types/Lazily.js +2 -0
- package/dist/types/Lazily.js.map +1 -1
- package/dist/types/Normalizer.d.ts +78 -0
- package/dist/types/Normalizer.d.ts.map +1 -1
- package/dist/types/Normalizer.js +54 -0
- package/dist/types/Normalizer.js.map +1 -1
- package/dist/types/Phone.d.ts +1 -0
- package/dist/types/Phone.d.ts.map +1 -1
- package/dist/types/Slug.d.ts +1 -0
- package/dist/types/Slug.d.ts.map +1 -1
- package/dist/types/TimeOnly.d.ts +1 -0
- package/dist/types/TimeOnly.d.ts.map +1 -1
- package/dist/types/Url.d.ts +1 -0
- package/dist/types/Url.d.ts.map +1 -1
- package/dist/types/Uuid.d.ts +1 -0
- package/dist/types/Uuid.d.ts.map +1 -1
- package/dist/types.d.ts +29 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DeepWritable } from '../types';
|
|
2
2
|
import { Json } from '../types/Json';
|
|
3
|
+
/** Creates a deep copy of a JSON value, removing readonly modifiers from the type. */
|
|
3
4
|
export declare function deepClone<T extends Json>(value: T): DeepWritable<T>;
|
|
4
5
|
//# sourceMappingURL=deepClone.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepClone.d.ts","sourceRoot":"","sources":["../../src/helpers/deepClone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"deepClone.d.ts","sourceRoot":"","sources":["../../src/helpers/deepClone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEpC,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAMnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepClone.js","sourceRoot":"","sources":["../../src/helpers/deepClone.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deepClone.js","sourceRoot":"","sources":["../../src/helpers/deepClone.ts"],"names":[],"mappings":"AAGA,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAiB,KAAQ;IAChD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAY,CAAA;IAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAQ,CAAA;IAC5D,MAAM,MAAM,GAAQ,EAAE,CAAA;IACtB,KAAK,MAAM,GAAG,IAAI,KAAK;QAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,KAAa,CAAC,GAAG,CAAC,CAAC,CAAA;IACrE,OAAO,MAAM,CAAA;AACf,CAAC"}
|
package/dist/helpers/delay.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
export { delay };
|
|
2
|
+
/**
|
|
3
|
+
* Creates a promise that resolves after the specified delay.
|
|
4
|
+
*
|
|
5
|
+
* Handles large delays (>24.86 days) safely and supports abortion via `AbortSignal`.
|
|
6
|
+
*
|
|
7
|
+
* @param abortHandling - `'resolve'` returns `'aborted'`, `'reject'` throws an error.
|
|
8
|
+
*/
|
|
2
9
|
declare function delay(milliseconds?: number): Promise<void>;
|
|
3
|
-
declare function delay(milliseconds: number, abortSignal: AbortSignal, abortHandling: 'reject'): Promise<void>;
|
|
4
10
|
declare function delay(milliseconds: number, abortSignal: AbortSignal, abortHandling?: 'resolve' | 'reject'): Promise<void | 'aborted'>;
|
|
5
11
|
//# sourceMappingURL=delay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delay.d.ts","sourceRoot":"","sources":["../../src/helpers/delay.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"delay.d.ts","sourceRoot":"","sources":["../../src/helpers/delay.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,CAAA;AAEhB;;;;;;GAMG;AACH,iBAAe,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1D,iBAAe,KAAK,CAClB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,WAAW,EACxB,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GACnC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAAA"}
|
package/dist/helpers/delay.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const MAXIMUM_VALID_DELAY_MILLISECONDS = 2147483647;
|
|
1
|
+
const MAXIMUM_VALID_DELAY_MILLISECONDS = 2147483647; // = 2 ** 31 - 1 ≈ 24.86 days, larger delay values cause the timeout function to be executed immediately.
|
|
2
2
|
function getSafeDelayMilliseconds(milliseconds) {
|
|
3
3
|
return Math.max(Math.min(milliseconds, MAXIMUM_VALID_DELAY_MILLISECONDS), 0);
|
|
4
4
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delay.js","sourceRoot":"","sources":["../../src/helpers/delay.ts"],"names":[],"mappings":"AAAA,MAAM,gCAAgC,GAAG,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"delay.js","sourceRoot":"","sources":["../../src/helpers/delay.ts"],"names":[],"mappings":"AAAA,MAAM,gCAAgC,GAAG,UAAU,CAAA,CAAC,yGAAyG;AAE7J,SAAS,wBAAwB,CAAC,YAAoB;IACpD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,gCAAgC,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,CAAA;AAehB,KAAK,UAAU,KAAK,CAClB,YAAY,GAAG,CAAC,EAChB,WAAyB,EACzB,gBAAsC,SAAS;IAE/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YACvG,OAAM;QACR,CAAC;QAED,IAAI,OAAO,GAAyC,IAAI,CAAA;QAExD,MAAM,WAAW,GAAG,CAAC,KAAY,EAAQ,EAAE;YACzC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,YAAY,CAAC,OAAO,CAAC,CAAA;gBACrB,OAAO,GAAG,IAAI,CAAA;gBACd,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;gBACtD,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YACjF,CAAC;QACH,CAAC,CAAA;QAED,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAEnD,KAAK,CAAC,SAAS,cAAc;YAC3B,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAA;YACpE,YAAY,IAAI,qBAAqB,CAAA;YACrC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,WAAW,EAAE,OAAO;oBAAE,OAAM;gBAChC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBACrB,cAAc,EAAE,CAAA;gBAClB,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,IAAI,CAAA;oBACd,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;oBACtD,OAAO,EAAE,CAAA;gBACX,CAAC;YACH,CAAC,EAAE,qBAAqB,CAAC,CAAA;QAC3B,CAAC,CAAC,EAAE,CAAA;IACN,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { Falsy } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Executes an action, allowing error transformation if it throws.
|
|
4
|
+
*
|
|
5
|
+
* @param handleError - Returns a new error message/Error to throw, or falsy to rethrow original.
|
|
6
|
+
*/
|
|
2
7
|
export declare function alterError<R>(action: () => R, handleError: (error: unknown) => string | Error | Falsy): R;
|
|
3
8
|
export declare namespace alterError {
|
|
4
|
-
|
|
9
|
+
/** Async variant of `alterError`. */
|
|
10
|
+
function async<R>(action: () => R, handleError: (error: unknown) => string | Error | Falsy): Promise<Awaited<R>>;
|
|
5
11
|
}
|
|
6
12
|
//# sourceMappingURL=alterError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alterError.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/alterError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"alterError.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/alterError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEnC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC,CASzG;AAED,yBAAiB,UAAU,CAAC;IAC1B,qCAAqC;IACrC,SAAsB,KAAK,CAAC,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,EACf,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,KAAK,GAAG,KAAK,GACtD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CASrB;CACF"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes an action, allowing error transformation if it throws.
|
|
3
|
+
*
|
|
4
|
+
* @param handleError - Returns a new error message/Error to throw, or falsy to rethrow original.
|
|
5
|
+
*/
|
|
1
6
|
export function alterError(action, handleError) {
|
|
2
7
|
try {
|
|
3
8
|
return action();
|
|
@@ -12,6 +17,7 @@ export function alterError(action, handleError) {
|
|
|
12
17
|
}
|
|
13
18
|
}
|
|
14
19
|
(function (alterError) {
|
|
20
|
+
/** Async variant of `alterError`. */
|
|
15
21
|
async function async(action, handleError) {
|
|
16
22
|
try {
|
|
17
23
|
return await action();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alterError.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/alterError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"alterError.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/alterError.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAI,MAAe,EAAE,WAAuD;IACpG,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAA;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QACvC,IAAI,CAAC,YAAY;YAAE,MAAM,KAAK,CAAA;QAC9B,IAAI,OAAO,YAAY,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;QACnE,MAAM,YAAY,CAAA;IACpB,CAAC;AACH,CAAC;AAED,WAAiB,UAAU;IACzB,qCAAqC;IAC9B,KAAK,UAAU,KAAK,CACzB,MAAe,EACf,WAAuD;QAEvD,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,EAAE,CAAA;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;YACvC,IAAI,CAAC,YAAY;gBAAE,MAAM,KAAK,CAAA;YAC9B,IAAI,OAAO,YAAY,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;YACnE,MAAM,YAAY,CAAA;QACpB,CAAC;IACH,CAAC;IAZqB,gBAAK,QAY1B,CAAA;AACH,CAAC,EAfgB,UAAU,KAAV,UAAU,QAe1B"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { Falsy } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Combines an object of keyed messages into a single newline-separated string.
|
|
4
|
+
* Each message is prefixed with its key.
|
|
5
|
+
*/
|
|
2
6
|
export declare function combineMessages(messagesByKey: {
|
|
3
7
|
readonly [key: string]: string | Falsy;
|
|
4
8
|
}): string | undefined;
|
|
5
9
|
export declare namespace combineMessages {
|
|
10
|
+
/** Combines `errorMessage` properties from normalized results. */
|
|
6
11
|
function errors(normalizedByKey: {
|
|
7
12
|
readonly [key: string]: string | Falsy | {
|
|
8
13
|
readonly errorMessage?: string | Falsy;
|
|
9
14
|
};
|
|
10
15
|
}): string | undefined;
|
|
16
|
+
/** Combines `warningMessage` properties from normalized results. */
|
|
11
17
|
function warnings(normalizedByKey: {
|
|
12
18
|
readonly [key: string]: string | Falsy | {
|
|
13
19
|
readonly warningMessage?: string | Falsy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combineMessages.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/combineMessages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"combineMessages.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/combineMessages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAKnC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;CAAE,GAAG,MAAM,GAAG,SAAS,CAM7G;AAED,yBAAiB,eAAe,CAAC;IAC/B,kEAAkE;IAClE,SAAgB,MAAM,CAAC,eAAe,EAAE;QACtC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG;YAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;SAAE,CAAA;KACpF,GAAG,MAAM,GAAG,SAAS,CAMrB;IAED,oEAAoE;IACpE,SAAgB,QAAQ,CAAC,eAAe,EAAE;QACxC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG;YAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;SAAE,CAAA;KACtF,GAAG,MAAM,GAAG,SAAS,CAMrB;CACF"}
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
import { arrayHelpers } from '../native/arrayHelpers';
|
|
2
2
|
import { objectHelpers } from '../native/objectHelpers';
|
|
3
3
|
import { prependMessage } from './prependMessage';
|
|
4
|
+
/**
|
|
5
|
+
* Combines an object of keyed messages into a single newline-separated string.
|
|
6
|
+
* Each message is prefixed with its key.
|
|
7
|
+
*/
|
|
4
8
|
export function combineMessages(messagesByKey) {
|
|
5
9
|
return (arrayHelpers
|
|
6
10
|
.mapFilter(objectHelpers.entries(messagesByKey), ([key, value]) => value && prependMessage(key, value))
|
|
7
11
|
.join('\n') || undefined);
|
|
8
12
|
}
|
|
9
13
|
(function (combineMessages) {
|
|
14
|
+
/** Combines `errorMessage` properties from normalized results. */
|
|
10
15
|
function errors(normalizedByKey) {
|
|
11
16
|
return combineMessages(objectHelpers.map(normalizedByKey, (key, value) => !value ? undefined : typeof value === 'string' ? value : value.errorMessage));
|
|
12
17
|
}
|
|
13
18
|
combineMessages.errors = errors;
|
|
19
|
+
/** Combines `warningMessage` properties from normalized results. */
|
|
14
20
|
function warnings(normalizedByKey) {
|
|
15
21
|
return combineMessages(objectHelpers.map(normalizedByKey, (key, value) => !value ? undefined : typeof value === 'string' ? value : value.warningMessage));
|
|
16
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combineMessages.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/combineMessages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"combineMessages.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/combineMessages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,aAAyD;IACvF,OAAO,CACL,YAAY;SACT,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACtG,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAC3B,CAAA;AACH,CAAC;AAED,WAAiB,eAAe;IAC9B,kEAAkE;IAClE,SAAgB,MAAM,CAAC,eAEtB;QACC,OAAO,eAAe,CACpB,aAAa,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAChD,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAC5E,CACF,CAAA;IACH,CAAC;IARe,sBAAM,SAQrB,CAAA;IAED,oEAAoE;IACpE,SAAgB,QAAQ,CAAC,eAExB;QACC,OAAO,eAAe,CACpB,aAAa,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAChD,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAC9E,CACF,CAAA;IACH,CAAC;IARe,wBAAQ,WAQvB,CAAA;AACH,CAAC,EAtBgB,eAAe,KAAf,eAAe,QAsB/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getErrorMessage.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/getErrorMessage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getErrorMessage.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/getErrorMessage.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,SAAmB,GAAG,MAAM,CAKrF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getErrorMessage.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/getErrorMessage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getErrorMessage.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/getErrorMessage.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,MAAM,UAAU,eAAe,CAAC,KAAU,EAAE,cAAc,GAAG,gBAAgB;IAC3E,OAAO,CACL,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,cAAc,CAAC,CAAC;QACrG,cAAc,CACf,CAAA;AACH,CAAC"}
|
|
@@ -1,2 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prepends a prefix to a message, handling multi-line messages by indenting.
|
|
3
|
+
*
|
|
4
|
+
* - Single-line: `"prefix: message"`
|
|
5
|
+
* - Multi-line: prefix on its own line, message indented below
|
|
6
|
+
*/
|
|
1
7
|
export declare function prependMessage<E extends string | undefined>(prefix: string | undefined, message: E): E;
|
|
2
8
|
//# sourceMappingURL=prependMessage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prependMessage.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/prependMessage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prependMessage.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/prependMessage.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAMtG"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { stringHelpers } from '../native/stringHelpers';
|
|
2
|
+
/**
|
|
3
|
+
* Prepends a prefix to a message, handling multi-line messages by indenting.
|
|
4
|
+
*
|
|
5
|
+
* - Single-line: `"prefix: message"`
|
|
6
|
+
* - Multi-line: prefix on its own line, message indented below
|
|
7
|
+
*/
|
|
2
8
|
export function prependMessage(prefix, message) {
|
|
3
9
|
if (!message || !prefix)
|
|
4
10
|
return message;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prependMessage.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/prependMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"prependMessage.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/prependMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAA+B,MAA0B,EAAE,OAAU;IACjG,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,CAAA;IAEvC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,MAAM,MAAM,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAO,CAAA;IAE5F,OAAO,GAAG,MAAM,KAAK,OAAO,EAAO,CAAA;AACrC,CAAC"}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* It's effectively the same as `throw new Error(message)` but with two differences:
|
|
3
|
+
* - It's a function call and can be used inline inside expressions.
|
|
4
|
+
* - TypeScript won't consider the following lines "unreachable", so we may use it
|
|
5
|
+
* inside the `switch` blocks' `default` sections while having TypeScript still
|
|
6
|
+
* complaining about the missing `case` sections.
|
|
7
|
+
*/
|
|
1
8
|
export declare function throwError<R = void>(error?: string | Error): R;
|
|
2
9
|
//# sourceMappingURL=throwError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throwError.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/throwError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"throwError.d.ts","sourceRoot":"","sources":["../../../src/helpers/error-warning/throwError.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,CAAC,CAE9D"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
// The return type should be `void`, not `never`; this way TypeScript still complains
|
|
2
|
+
// about missing return values even if it encounters this call:
|
|
3
|
+
/**
|
|
4
|
+
* It's effectively the same as `throw new Error(message)` but with two differences:
|
|
5
|
+
* - It's a function call and can be used inline inside expressions.
|
|
6
|
+
* - TypeScript won't consider the following lines "unreachable", so we may use it
|
|
7
|
+
* inside the `switch` blocks' `default` sections while having TypeScript still
|
|
8
|
+
* complaining about the missing `case` sections.
|
|
9
|
+
*/
|
|
1
10
|
export function throwError(error) {
|
|
2
11
|
throw typeof error === 'string' ? new Error(error) : error;
|
|
3
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throwError.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/throwError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"throwError.js","sourceRoot":"","sources":["../../../src/helpers/error-warning/throwError.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,+DAA+D;AAC/D;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAW,KAAsB;IACzD,MAAM,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escapeForRegExp.d.ts","sourceRoot":"","sources":["../../src/helpers/escapeForRegExp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"escapeForRegExp.d.ts","sourceRoot":"","sources":["../../src/helpers/escapeForRegExp.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAErD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
+
/** Escapes special RegExp characters in a string for safe use in `new RegExp()`. */
|
|
1
2
|
export function escapeForRegExp(value) {
|
|
2
|
-
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
3
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string.
|
|
3
4
|
}
|
|
4
5
|
//# sourceMappingURL=escapeForRegExp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escapeForRegExp.js","sourceRoot":"","sources":["../../src/helpers/escapeForRegExp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"escapeForRegExp.js","sourceRoot":"","sources":["../../src/helpers/escapeForRegExp.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA,CAAC,qCAAqC;AAC3F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatCurrencyUsd.d.ts","sourceRoot":"","sources":["../../src/helpers/formatCurrencyUsd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"formatCurrencyUsd.d.ts","sourceRoot":"","sources":["../../src/helpers/formatCurrencyUsd.ts"],"names":[],"mappings":"AAKA,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatCurrencyUsd.js","sourceRoot":"","sources":["../../src/helpers/formatCurrencyUsd.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;IAC9C,KAAK,EAAE,UAAU;IACjB,QAAQ,EAAE,KAAK;CAChB,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"formatCurrencyUsd.js","sourceRoot":"","sources":["../../src/helpers/formatCurrencyUsd.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;IAC9C,KAAK,EAAE,UAAU;IACjB,QAAQ,EAAE,KAAK;CAChB,CAAC,CAAA;AAEF,2DAA2D;AAC3D,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRandomKey.d.ts","sourceRoot":"","sources":["../../src/helpers/generateRandomKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateRandomKey.d.ts","sourceRoot":"","sources":["../../src/helpers/generateRandomKey.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE;IAC9B,IAAI,MAAM,CAAA;IACV,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,CAAA;IAC1C,CAAC,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;KAAE,GAAG,MAAM,CAAA;CAoBzE,CAAA"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a random alphanumeric string.
|
|
3
|
+
*
|
|
4
|
+
* @param length - Key length (default: 16)
|
|
5
|
+
* @param accept - Optional predicate to regenerate until accepted
|
|
6
|
+
*/
|
|
1
7
|
export const generateRandomKey = (arg) => {
|
|
2
8
|
let length = 16;
|
|
3
9
|
let accept = (key) => true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRandomKey.js","sourceRoot":"","sources":["../../src/helpers/generateRandomKey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateRandomKey.js","sourceRoot":"","sources":["../../src/helpers/generateRandomKey.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAK1B,CAAC,GAAiG,EAAU,EAAE;IAChH,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAA;IAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,CAAA;IACd,CAAC;SAAM,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,CAAA;IACd,CAAC;SAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,CAAA;QAC7B,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,CAAA;IAC/B,CAAC;IACD,IAAI,GAAW,CAAA;IACf,GAAG,CAAC;QACF,GAAG,GAAG,EAAE,CAAA;QACR,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;QACzE,CAAC;IACH,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAC;IACtB,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,gEAAgE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRuntimeId.d.ts","sourceRoot":"","sources":["../../src/helpers/generateRuntimeId.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateRuntimeId.d.ts","sourceRoot":"","sources":["../../src/helpers/generateRuntimeId.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,wBAAgB,iBAAiB,IAAI,MAAM,CAG1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRuntimeId.js","sourceRoot":"","sources":["../../src/helpers/generateRuntimeId.ts"],"names":[],"mappings":"AAAA,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"generateRuntimeId.js","sourceRoot":"","sources":["../../src/helpers/generateRuntimeId.ts"],"names":[],"mappings":"AAAA,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;AAErB,oFAAoF;AACpF,MAAM,UAAU,iBAAiB;IAC/B,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;IAClB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACtB,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a timestamp-based sequence string for ordering.
|
|
3
|
+
*
|
|
4
|
+
* Can generate sequences between two existing ones for insertion.
|
|
5
|
+
*/
|
|
1
6
|
export declare function generateSequence(options?: {
|
|
2
7
|
readonly timestampMicroseconds?: number;
|
|
3
8
|
readonly previousSequence?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateSequence.d.ts","sourceRoot":"","sources":["../../src/helpers/generateSequence.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateSequence.d.ts","sourceRoot":"","sources":["../../src/helpers/generateSequence.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IACvC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB,GAAG,MAAM,CAOT"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a timestamp-based sequence string for ordering.
|
|
3
|
+
*
|
|
4
|
+
* Can generate sequences between two existing ones for insertion.
|
|
5
|
+
*/
|
|
1
6
|
export function generateSequence(options) {
|
|
2
7
|
const currentTimestampMicroseconds = (options?.timestampMicroseconds ?? Math.floor(Date.now() * 1000)) + (options?.offset || 0);
|
|
3
8
|
if (!options?.nextSequence)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateSequence.js","sourceRoot":"","sources":["../../src/helpers/generateSequence.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateSequence.js","sourceRoot":"","sources":["../../src/helpers/generateSequence.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAKhC;IACC,MAAM,4BAA4B,GAChC,CAAC,OAAO,EAAE,qBAAqB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;IAC5F,IAAI,CAAC,OAAO,EAAE,YAAY;QAAE,OAAO,GAAG,4BAA4B,2BAA2B,CAAA;IAC7F,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAC3B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC5F,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AACnG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnumKeyValues.d.ts","sourceRoot":"","sources":["../../src/helpers/getEnumKeyValues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getEnumKeyValues.d.ts","sourceRoot":"","sources":["../../src/helpers/getEnumKeyValues.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,EAAE,CAShF"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
/** Extracts `{ key, value }` pairs from a TypeScript enum. */
|
|
1
2
|
export function getEnumKeyValues(enumObject) {
|
|
2
3
|
const allKeys = Object.keys(enumObject);
|
|
4
|
+
// Since only keys with number values are stored reversed too:
|
|
3
5
|
const straightKeys = allKeys.filter(key => !/^\d+$/.test(key));
|
|
4
6
|
const keyValues = straightKeys.map(key => ({ key, value: enumObject[key] }));
|
|
5
7
|
return keyValues;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnumKeyValues.js","sourceRoot":"","sources":["../../src/helpers/getEnumKeyValues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getEnumKeyValues.js","sourceRoot":"","sources":["../../src/helpers/getEnumKeyValues.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,MAAM,UAAU,gBAAgB,CAAI,UAAe;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAEvC,8DAA8D;IAC9D,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAE9D,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAE5E,OAAO,SAAgB,CAAA;AACzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"haveSameContents.d.ts","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"haveSameContents.d.ts","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAGA,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAiCjE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { arrayHelpers } from './native/arrayHelpers';
|
|
2
2
|
import { objectHelpers } from './native/objectHelpers';
|
|
3
|
+
/** Deep equality check for JSON-like values. Handles `NaN` and `Date` objects. */
|
|
3
4
|
export function haveSameContents(first, second) {
|
|
4
5
|
switch (typeof first) {
|
|
5
6
|
case 'string':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"haveSameContents.js","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"haveSameContents.js","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEtD,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,KAAU,EAAE,MAAW;IACtD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,KAAK,KAAK,MAAM,CAAA;QAEzB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAA;QAEtE,KAAK,QAAQ;YACX,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,KAAK,MAAM,CAAA;YACnC,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO,CACL,CAAC,CAAC,MAAM;oBACR,OAAO,MAAM,KAAK,QAAQ;oBAC1B,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;oBAC5B,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;oBAC9B,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CACpE,CAAA;YACH,IAAI,KAAK,YAAY,IAAI,IAAI,MAAM,YAAY,IAAI;gBACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,MAAM,CAAC,OAAO,EAAE,CAAA;YAClH,OAAO,CACL,CAAC,CAAC,MAAM;gBACR,OAAO,MAAM,KAAK,QAAQ;gBAC1B,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7B,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3G,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,CACtD,CAAA;IACL,CAAC;AACH,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard that checks if `target` equals any of the provided items.
|
|
3
|
+
*
|
|
4
|
+
* Narrows the type to the union of matching items.
|
|
5
|
+
*/
|
|
1
6
|
export declare const isOneOf: {
|
|
2
7
|
<T, T1 extends T>(target: T, item1: T1): target is T1;
|
|
3
8
|
<T, T1 extends T, T2 extends Exclude<T, T1>>(target: T, item1: T1, item2: T2): target is T1 | T2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isOneOf.d.ts","sourceRoot":"","sources":["../../src/helpers/isOneOf.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"isOneOf.d.ts","sourceRoot":"","sources":["../../src/helpers/isOneOf.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/isOneOf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isOneOf.js","sourceRoot":"","sources":["../../src/helpers/isOneOf.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"isOneOf.js","sourceRoot":"","sources":["../../src/helpers/isOneOf.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAW,EAAE,GAAG,KAAY,EAAW,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAgHxF,CAAA"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { Falsy, Trucy } from '../../types';
|
|
2
2
|
interface ArrayHelpers {
|
|
3
|
+
/** Array.isArray only works correctly on writable arrays not readonly ones. */
|
|
3
4
|
isArray(value: any): value is readonly any[];
|
|
4
5
|
equals<T>(firstArray: readonly T[], secondArray: readonly T[], itemsEqual?: (firstItem: T, secondItem: T) => any): boolean;
|
|
6
|
+
/** Since `Array.prototype.at(0)` is not widely supported yet, we use this helper method instead. */
|
|
5
7
|
first<T>(array: readonly T[]): T | undefined;
|
|
8
|
+
/** Since `Array.prototype.at(-1)` is not widely supported yet, we use this helper method instead. */
|
|
6
9
|
last<T>(array: readonly T[]): T | undefined;
|
|
7
10
|
sortBy<T>(array: T[], ...propertySelectors: (keyof T | ((item: T) => any))[]): T[];
|
|
8
11
|
sortByDescending<T>(array: T[], ...propertySelectors: (keyof T | ((item: T) => any))[]): T[];
|
|
@@ -30,6 +33,7 @@ interface ArrayHelpers {
|
|
|
30
33
|
mapFindLast<T, U>(array: readonly T[], mapper: (item: T, itemIndex: number, items: readonly T[]) => U, predicate?: (mappedItem: U, item: T, itemIndex: number, items: readonly T[]) => any): U | undefined;
|
|
31
34
|
mapFilter<T, U>(array: readonly T[], mapper: (item: T, itemIndex: number, items: readonly T[]) => U): Trucy<U>[];
|
|
32
35
|
mapFilter<T, U>(array: readonly T[], mapper: (item: T, itemIndex: number, items: readonly T[]) => U, predicate?: (mappedItem: U, item: T, itemIndex: number, items: readonly T[]) => any): U[];
|
|
36
|
+
/** Almost the same as array.filter(Boolean) but with a better typing. */
|
|
33
37
|
filterFalsy<T>(array: readonly (T | Falsy)[]): T[];
|
|
34
38
|
buildTruthy<T>(...items: readonly (T | Falsy)[]): T[];
|
|
35
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrayHelpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/native/arrayHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAE1C,UAAU,YAAY;
|
|
1
|
+
{"version":3,"file":"arrayHelpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/native/arrayHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -109,7 +109,7 @@ export const arrayHelpers = {
|
|
|
109
109
|
if (index === -1)
|
|
110
110
|
return [...array];
|
|
111
111
|
const result = [...array];
|
|
112
|
-
result.splice(index, 1, ...newItems);
|
|
112
|
+
result.splice(index, 1, ...newItems); // TODO: This doesn't work for indexes out of bound. We may do it the old manual way!
|
|
113
113
|
return result;
|
|
114
114
|
},
|
|
115
115
|
mapFind(array, mapper, predicate) {
|