@ezez/utils 1.9.0 → 2.0.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/CHANGELOG.md +10 -1
- package/README.md +3 -0
- package/dist/deserialize.d.ts +13 -0
- package/dist/deserialize.d.ts.map +1 -0
- package/dist/deserialize.js +42 -0
- package/dist/deserialize.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/omit.js +3 -1
- package/dist/omit.js.map +1 -1
- package/dist/replace.d.ts.map +1 -1
- package/dist/replace.js.map +1 -1
- package/dist/replaceDeep.d.ts +3 -0
- package/dist/replaceDeep.d.ts.map +1 -0
- package/dist/replaceDeep.js +26 -0
- package/dist/replaceDeep.js.map +1 -0
- package/dist/safe.d.ts.map +1 -1
- package/dist/safe.js +1 -1
- package/dist/safe.js.map +1 -1
- package/dist/serialize.d.ts +16 -0
- package/dist/serialize.d.ts.map +1 -0
- package/dist/serialize.js +61 -0
- package/dist/serialize.js.map +1 -0
- package/dist/setImmutable.js +1 -1
- package/dist/setImmutable.js.map +1 -1
- package/dist/sortBy.js +1 -2
- package/dist/sortBy.js.map +1 -1
- package/dist/sortProps.d.ts.map +1 -1
- package/dist/sortProps.js.map +1 -1
- package/dist/throttle.js +5 -7
- package/dist/throttle.js.map +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/functions/cap.html +11 -6
- package/docs/functions/capitalize.html +11 -6
- package/docs/functions/coalesce.html +11 -6
- package/docs/functions/compareArrays.html +11 -6
- package/docs/functions/compareProps.html +11 -6
- package/docs/functions/deserialize.html +148 -0
- package/docs/functions/ensureArray.html +11 -6
- package/docs/functions/ensureDate.html +11 -6
- package/docs/functions/ensureError.html +11 -6
- package/docs/functions/ensurePrefix.html +11 -6
- package/docs/functions/ensureSuffix.html +11 -6
- package/docs/functions/ensureTimestamp.html +11 -6
- package/docs/functions/escapeRegExp.html +11 -6
- package/docs/functions/formatDate.html +11 -6
- package/docs/functions/get.html +11 -6
- package/docs/functions/getMultiple.html +11 -6
- package/docs/functions/insertSeparator.html +11 -6
- package/docs/functions/isEmpty.html +11 -6
- package/docs/functions/isNumericString.html +11 -6
- package/docs/functions/isPlainObject.html +11 -6
- package/docs/functions/last.html +11 -6
- package/docs/functions/later-1.html +11 -6
- package/docs/functions/mapAsync.html +11 -6
- package/docs/functions/mapValues.html +11 -6
- package/docs/functions/match.html +11 -6
- package/docs/functions/merge.html +19 -14
- package/docs/functions/mostFrequent.html +11 -6
- package/docs/functions/noop.html +11 -6
- package/docs/functions/occurrences.html +11 -6
- package/docs/functions/omit.html +11 -6
- package/docs/functions/pick.html +11 -6
- package/docs/functions/pull.html +11 -6
- package/docs/functions/remove.html +11 -6
- package/docs/functions/removeCommonProperties.html +11 -6
- package/docs/functions/replace.html +11 -6
- package/docs/functions/replaceDeep.html +153 -0
- package/docs/functions/rethrow.html +11 -6
- package/docs/functions/safe.html +12 -7
- package/docs/functions/scale.html +11 -6
- package/docs/functions/seq.html +11 -6
- package/docs/functions/seqEarlyBreak.html +11 -6
- package/docs/functions/serialize.html +153 -0
- package/docs/functions/set.html +11 -6
- package/docs/functions/setImmutable.html +11 -6
- package/docs/functions/sortBy.html +11 -6
- package/docs/functions/sortProps.html +14 -7
- package/docs/functions/stripPrefix.html +11 -6
- package/docs/functions/stripSuffix.html +11 -6
- package/docs/functions/throttle.html +11 -6
- package/docs/functions/truthy.html +11 -6
- package/docs/functions/unique.html +11 -6
- package/docs/functions/wait.html +11 -6
- package/docs/functions/waitFor.html +11 -6
- package/docs/functions/waitSync.html +11 -6
- package/docs/index.html +13 -5
- package/docs/interfaces/ComparePropsOptions.html +6 -6
- package/docs/interfaces/GetMultipleSource.html +11 -6
- package/docs/interfaces/GetSource.html +11 -6
- package/docs/interfaces/IsNumericStringOptions.html +9 -9
- package/docs/interfaces/OccurencesOptions.html +6 -6
- package/docs/interfaces/SetImmutableSource.html +11 -6
- package/docs/interfaces/SetSource.html +11 -6
- package/docs/interfaces/ThrottleOptions.html +7 -7
- package/docs/interfaces/ThrottledFunctionExtras.html +7 -7
- package/docs/modules.html +15 -5
- package/docs/pages/CHANGELOG.html +65 -39
- package/docs/pages/Introduction.html +10 -5
- package/docs/types/CustomDeserializers.html +151 -0
- package/docs/types/CustomSerializers.html +151 -0
- package/docs/types/Later.html +11 -6
- package/docs/types/MapValuesFn.html +11 -6
- package/docs/types/MatchCallback.html +11 -6
- package/docs/types/SeqEarlyBreaker.html +11 -6
- package/docs/types/SeqFn.html +11 -6
- package/docs/types/SeqFunctions.html +11 -6
- package/docs/types/SetImmutablePath.html +11 -6
- package/docs/types/ThrottledFunction.html +11 -6
- package/docs/variables/mapValuesUNSET.html +11 -6
- package/docs/variables/mergeUNSET.html +11 -6
- package/esm/deserialize.d.ts +13 -0
- package/esm/deserialize.d.ts.map +1 -0
- package/esm/deserialize.js +39 -0
- package/esm/deserialize.js.map +1 -0
- package/esm/index.d.ts +3 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +3 -0
- package/esm/index.js.map +1 -1
- package/esm/replace.d.ts.map +1 -1
- package/esm/replace.js.map +1 -1
- package/esm/replaceDeep.d.ts +3 -0
- package/esm/replaceDeep.d.ts.map +1 -0
- package/esm/replaceDeep.js +23 -0
- package/esm/replaceDeep.js.map +1 -0
- package/esm/safe.d.ts.map +1 -1
- package/esm/safe.js.map +1 -1
- package/esm/serialize.d.ts +16 -0
- package/esm/serialize.d.ts.map +1 -0
- package/esm/serialize.js +58 -0
- package/esm/serialize.js.map +1 -0
- package/esm/sortBy.js +1 -2
- package/esm/sortBy.js.map +1 -1
- package/esm/sortProps.d.ts.map +1 -1
- package/esm/sortProps.js.map +1 -1
- package/esm/throttle.js +5 -7
- package/esm/throttle.js.map +1 -1
- package/package.json +26 -25
- package/pnpm-lock.yaml +5223 -0
- package/src/deserialize.spec.ts +69 -0
- package/src/deserialize.ts +74 -0
- package/src/index.ts +3 -0
- package/src/replace.ts +0 -1
- package/src/replaceDeep.spec.ts +71 -0
- package/src/replaceDeep.ts +44 -0
- package/src/safe.ts +0 -1
- package/src/serialize.spec.ts +83 -0
- package/src/serialize.ts +102 -0
- package/src/sortProps.ts +4 -1
- package/babel.config.cjs +0 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,17 @@
|
|
|
1
1
|
All notable changes to this project will be documented in this file.
|
|
2
2
|
|
|
3
|
-
The format is based on [
|
|
3
|
+
The format is based on [EZEZ Chanelog](https://ezez.dev/changelog/)
|
|
4
4
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
5
5
|
|
|
6
|
+
## [2.0.0] - 2023-10-09
|
|
7
|
+
### Breaking
|
|
8
|
+
- code is compiled to es2020 due to `bigint` usage, if you are not using `serialize` or `deserialize` you can still
|
|
9
|
+
transpile this lib yourself
|
|
10
|
+
### Added
|
|
11
|
+
- `serialize` method
|
|
12
|
+
- `deserialize` method
|
|
13
|
+
- `replaceDeep` method
|
|
14
|
+
|
|
6
15
|
## [1.9.0] - 2023-07-07
|
|
7
16
|
### Added
|
|
8
17
|
- `removeCommonProperties` method
|
package/README.md
CHANGED
|
@@ -57,12 +57,15 @@ object, with just some properties copied. Easy, right? Few lines of code? Lodash
|
|
|
57
57
|
|
|
58
58
|
### Object related
|
|
59
59
|
- `compareProps` - compare two objects and return list of different properties
|
|
60
|
+
- `deserialize` - deserialize values serialized with `serialize`
|
|
60
61
|
- `isPlainObject` - check if given value is a plain object
|
|
61
62
|
- `mapValues` - map values of an object
|
|
62
63
|
- `merge` - merge two objects shallowly, allowing to remove properties while doing so
|
|
63
64
|
- `omit` - omit properties from an object
|
|
64
65
|
- `pick` - pick some properties from an object
|
|
66
|
+
- `replaceDeep` - recursively replace all occurrences of a value in an object/array
|
|
65
67
|
- `sortProps` - sort object properties by key
|
|
68
|
+
- `serialize` - like JSON.stringify but any data type is allowed
|
|
66
69
|
|
|
67
70
|
### Date related
|
|
68
71
|
- `ensureDate` - ensure that given value is a Date instance
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type CustomDeserializers = {
|
|
2
|
+
[key: string]: (data: string) => unknown;
|
|
3
|
+
s?: never;
|
|
4
|
+
n?: never;
|
|
5
|
+
u?: never;
|
|
6
|
+
l?: never;
|
|
7
|
+
b?: never;
|
|
8
|
+
i?: never;
|
|
9
|
+
};
|
|
10
|
+
declare const deserialize: <T>(serializedString: string, customDeserializers?: CustomDeserializers) => T;
|
|
11
|
+
export { deserialize };
|
|
12
|
+
export type { CustomDeserializers };
|
|
13
|
+
//# sourceMappingURL=deserialize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deserialize.d.ts","sourceRoot":"","sources":["../src/deserialize.ts"],"names":[],"mappings":"AAMA,KAAK,mBAAmB,GAAG;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACzC,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;CACb,CAAC;AAYF,QAAA,MAAM,WAAW,wBAAyB,MAAM,wBAAwB,mBAAmB,MA2C1F,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deserialize = void 0;
|
|
4
|
+
const replaceDeep_js_1 = require("./replaceDeep.js");
|
|
5
|
+
const UNDEFINED = Symbol("undefined");
|
|
6
|
+
const deserialize = (serializedString, customDeserializers) => {
|
|
7
|
+
let hasUndefined = false;
|
|
8
|
+
const replacer = (_key, value) => {
|
|
9
|
+
if (typeof value === "string") {
|
|
10
|
+
if (value.startsWith("s:")) {
|
|
11
|
+
return value.slice(2);
|
|
12
|
+
}
|
|
13
|
+
if (value.startsWith("n:")) {
|
|
14
|
+
return Number(value.slice(2));
|
|
15
|
+
}
|
|
16
|
+
if (value.startsWith("i:")) {
|
|
17
|
+
return BigInt(value.slice(2));
|
|
18
|
+
}
|
|
19
|
+
if (value === "u:") {
|
|
20
|
+
hasUndefined = true;
|
|
21
|
+
return UNDEFINED;
|
|
22
|
+
}
|
|
23
|
+
if (value === "l:") {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
if (value.startsWith("b:")) {
|
|
27
|
+
return value.slice(2) === "1";
|
|
28
|
+
}
|
|
29
|
+
const semiColonIndex = value.indexOf(":");
|
|
30
|
+
const type = value.slice(0, semiColonIndex);
|
|
31
|
+
if (customDeserializers && type in customDeserializers) {
|
|
32
|
+
return customDeserializers[type](value.slice(semiColonIndex + 1));
|
|
33
|
+
}
|
|
34
|
+
throw new Error(`Unsupported data type: ${type}`);
|
|
35
|
+
}
|
|
36
|
+
return value;
|
|
37
|
+
};
|
|
38
|
+
const parsed = JSON.parse(serializedString, replacer);
|
|
39
|
+
return hasUndefined ? (0, replaceDeep_js_1.replaceDeep)(parsed, UNDEFINED, undefined) : parsed;
|
|
40
|
+
};
|
|
41
|
+
exports.deserialize = deserialize;
|
|
42
|
+
//# sourceMappingURL=deserialize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deserialize.js","sourceRoot":"","sources":["../src/deserialize.ts"],"names":[],"mappings":";;;AAAA,qDAA+C;AAI/C,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAsBtC,MAAM,WAAW,GAAG,CAAI,gBAAwB,EAAE,mBAAyC,EAAK,EAAE;IAC9F,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;QAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAExB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACzB;YACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAExB,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACjC;YACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAExB,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACjC;YACD,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,YAAY,GAAG,IAAI,CAAC;gBACpB,OAAO,SAAS,CAAC;aACpB;YACD,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,OAAO,IAAI,CAAC;aACf;YACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAExB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;aACjC;YAED,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC5C,IAAI,mBAAmB,IAAI,IAAI,IAAI,mBAAmB,EAAE;gBACpD,OAAO,mBAAmB,CAAC,IAAI,CAAE,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;aACtE;YAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;SACrD;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,QAAQ,CAAM,CAAC;IAG3D,OAAO,YAAY,CAAC,CAAC,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC7E,CAAC,CAAC;AAEO,kCAAW"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export * from "./capitalize.js";
|
|
|
5
5
|
export * from "./coalesce.js";
|
|
6
6
|
export * from "./compareArrays.js";
|
|
7
7
|
export * from "./compareProps.js";
|
|
8
|
+
export * from "./deserialize.js";
|
|
8
9
|
export * from "./ensureArray.js";
|
|
9
10
|
export * from "./ensureDate.js";
|
|
10
11
|
export * from "./ensureError.js";
|
|
@@ -32,10 +33,12 @@ export * from "./pull.js";
|
|
|
32
33
|
export * from "./remove.js";
|
|
33
34
|
export * from "./removeCommonProperties.js";
|
|
34
35
|
export * from "./replace.js";
|
|
36
|
+
export * from "./replaceDeep.js";
|
|
35
37
|
export * from "./rethrow.js";
|
|
36
38
|
export * from "./safe.js";
|
|
37
39
|
export * from "./scale.js";
|
|
38
40
|
export * from "./seq.js";
|
|
41
|
+
export * from "./serialize.js";
|
|
39
42
|
export * from "./set.js";
|
|
40
43
|
export * from "./setImmutable.js";
|
|
41
44
|
export * from "./sortBy.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -21,6 +21,7 @@ __exportStar(require("./capitalize.js"), exports);
|
|
|
21
21
|
__exportStar(require("./coalesce.js"), exports);
|
|
22
22
|
__exportStar(require("./compareArrays.js"), exports);
|
|
23
23
|
__exportStar(require("./compareProps.js"), exports);
|
|
24
|
+
__exportStar(require("./deserialize.js"), exports);
|
|
24
25
|
__exportStar(require("./ensureArray.js"), exports);
|
|
25
26
|
__exportStar(require("./ensureDate.js"), exports);
|
|
26
27
|
__exportStar(require("./ensureError.js"), exports);
|
|
@@ -48,10 +49,12 @@ __exportStar(require("./pull.js"), exports);
|
|
|
48
49
|
__exportStar(require("./remove.js"), exports);
|
|
49
50
|
__exportStar(require("./removeCommonProperties.js"), exports);
|
|
50
51
|
__exportStar(require("./replace.js"), exports);
|
|
52
|
+
__exportStar(require("./replaceDeep.js"), exports);
|
|
51
53
|
__exportStar(require("./rethrow.js"), exports);
|
|
52
54
|
__exportStar(require("./safe.js"), exports);
|
|
53
55
|
__exportStar(require("./scale.js"), exports);
|
|
54
56
|
__exportStar(require("./seq.js"), exports);
|
|
57
|
+
__exportStar(require("./serialize.js"), exports);
|
|
55
58
|
__exportStar(require("./set.js"), exports);
|
|
56
59
|
__exportStar(require("./setImmutable.js"), exports);
|
|
57
60
|
__exportStar(require("./sortBy.js"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,oDAAkC;AAClC,oDAAkC;AAClC,2CAAyB;AACzB,kDAAgC;AAChC,gDAA8B;AAC9B,qDAAmC;AACnC,oDAAkC;AAClC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,uDAAqC;AACrC,oDAAkC;AAClC,kDAAgC;AAChC,2CAAyB;AACzB,mDAAiC;AACjC,uDAAqC;AACrC,+CAA6B;AAC7B,uDAAqC;AACrC,qDAAmC;AACnC,4CAA0B;AAC1B,6CAA2B;AAC3B,gDAA8B;AAC9B,iDAA+B;AAC/B,6CAA2B;AAC3B,6CAA2B;AAC3B,oDAAkC;AAClC,4CAA0B;AAC1B,mDAAiC;AACjC,4CAA0B;AAC1B,4CAA0B;AAC1B,4CAA0B;AAC1B,8CAA4B;AAC5B,8DAA4C;AAC5C,+CAA6B;AAC7B,+CAA6B;AAC7B,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,oDAAkC;AAClC,8CAA4B;AAC5B,iDAA+B;AAC/B,mDAAiC;AACjC,mDAAiC;AACjC,gDAA8B;AAC9B,8CAA4B;AAC5B,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B;AAC7B,gDAA8B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,oDAAkC;AAClC,oDAAkC;AAClC,2CAAyB;AACzB,kDAAgC;AAChC,gDAA8B;AAC9B,qDAAmC;AACnC,oDAAkC;AAClC,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,uDAAqC;AACrC,oDAAkC;AAClC,kDAAgC;AAChC,2CAAyB;AACzB,mDAAiC;AACjC,uDAAqC;AACrC,+CAA6B;AAC7B,uDAAqC;AACrC,qDAAmC;AACnC,4CAA0B;AAC1B,6CAA2B;AAC3B,gDAA8B;AAC9B,iDAA+B;AAC/B,6CAA2B;AAC3B,6CAA2B;AAC3B,oDAAkC;AAClC,4CAA0B;AAC1B,mDAAiC;AACjC,4CAA0B;AAC1B,4CAA0B;AAC1B,4CAA0B;AAC1B,8CAA4B;AAC5B,8DAA4C;AAC5C,+CAA6B;AAC7B,mDAAiC;AACjC,+CAA6B;AAC7B,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,iDAA+B;AAC/B,2CAAyB;AACzB,oDAAkC;AAClC,8CAA4B;AAC5B,iDAA+B;AAC/B,mDAAiC;AACjC,mDAAiC;AACjC,gDAA8B;AAC9B,8CAA4B;AAC5B,8CAA4B;AAC5B,4CAA0B;AAC1B,+CAA6B;AAC7B,gDAA8B"}
|
package/dist/omit.js
CHANGED
package/dist/omit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omit.js","sourceRoot":"","sources":["../src/omit.ts"],"names":[],"mappings":";;;AAeA,MAAM,IAAI,GAAG,CACT,MAAgB,EAAE,KAAU,EAC0B,EAAE;IACxD,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,EAAE;QAEzE,OAAO,EAAE,CAAC;KACb;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QAExC,
|
|
1
|
+
{"version":3,"file":"omit.js","sourceRoot":"","sources":["../src/omit.ts"],"names":[],"mappings":";;;AAeA,MAAM,IAAI,GAAG,CACT,MAAgB,EAAE,KAAU,EAC0B,EAAE;IACxD,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,EAAE;QAEzE,OAAO,EAAE,CAAC;KACb;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QAExC,OAAO;YACH,GAAG,MAAM;SACZ,CAAC;KACL;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEnC,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;QACtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxB,MAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;SACpC;KACJ;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEO,oBAAI"}
|
package/dist/replace.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replace.d.ts","sourceRoot":"","sources":["../src/replace.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"replace.d.ts","sourceRoot":"","sources":["../src/replace.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,OAAO,WAAY,MAAM,cAAc,OAAO,MAAM,EAAE,MAAM,CAAC,WAQlE,CAAC;AAEF,OAAO,EACH,OAAO,GACV,CAAC"}
|
package/dist/replace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replace.js","sourceRoot":"","sources":["../src/replace.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"replace.js","sourceRoot":"","sources":["../src/replace.ts"],"names":[],"mappings":";;;AAAA,uDAAiD;AASjD,MAAM,OAAO,GAAG,CAAC,MAAc,EAAE,UAAkC,EAAE,EAAE;IACnE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACnB,OAAO,MAAM,CAAC;KACjB;IAED,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,8BAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAChE,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC,CAAC;AACpE,CAAC,CAAC;AAGE,0BAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replaceDeep.d.ts","sourceRoot":"","sources":["../src/replaceDeep.ts"],"names":[],"mappings":"AAaA,QAAA,MAAM,WAAW,yBAA0B,OAAO,SAAS,OAAO,MA0BjE,CAAC;AAEF,OAAO,EACH,WAAW,GACd,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.replaceDeep = void 0;
|
|
4
|
+
const replaceDeep = (source, search, value) => {
|
|
5
|
+
if (Object.is(source, search)) {
|
|
6
|
+
return value;
|
|
7
|
+
}
|
|
8
|
+
if (source == null) {
|
|
9
|
+
return source;
|
|
10
|
+
}
|
|
11
|
+
if (typeof source === "object") {
|
|
12
|
+
if (Array.isArray(source)) {
|
|
13
|
+
for (let i = 0; i < source.length; i++) {
|
|
14
|
+
source[i] = replaceDeep(source[i], search, value);
|
|
15
|
+
}
|
|
16
|
+
return source;
|
|
17
|
+
}
|
|
18
|
+
return Object.keys(source).reduce((acc, key) => {
|
|
19
|
+
acc[key] = replaceDeep(source[key], search, value);
|
|
20
|
+
return acc;
|
|
21
|
+
}, {});
|
|
22
|
+
}
|
|
23
|
+
return source;
|
|
24
|
+
};
|
|
25
|
+
exports.replaceDeep = replaceDeep;
|
|
26
|
+
//# sourceMappingURL=replaceDeep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replaceDeep.js","sourceRoot":"","sources":["../src/replaceDeep.ts"],"names":[],"mappings":";;;AAaA,MAAM,WAAW,GAAG,CAAI,MAAS,EAAE,MAAe,EAAE,KAAc,EAAK,EAAE;IACrE,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;QAC3B,OAAO,KAAU,CAAC;KACrB;IAED,IAAI,MAAM,IAAI,IAAI,EAAE;QAChB,OAAO,MAAM,CAAC;KACjB;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAEpC,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;aACrD;YACD,OAAO,MAAM,CAAC;SACjB;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAEpE,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAE,MAAkC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAChF,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAM,CAAC;KACf;IAED,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAGE,kCAAW"}
|
package/dist/safe.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe.d.ts","sourceRoot":"","sources":["../src/safe.ts"],"names":[],"mappings":"AAAA,iBAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAC7C,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"safe.d.ts","sourceRoot":"","sources":["../src/safe.ts"],"names":[],"mappings":"AAAA,iBAAS,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAC7C,iBAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAqBhD,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
package/dist/safe.js
CHANGED
package/dist/safe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe.js","sourceRoot":"","sources":["../src/safe.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"safe.js","sourceRoot":"","sources":["../src/safe.ts"],"names":[],"mappings":";;;AAYA,SAAS,IAAI,CAAO,EAAW,EAAE,GAAO;IAEpC,IAAI;QACA,OAAO,EAAE,EAAE,CAAC;KACf;IACD,MAAM;QACF,OAAO,GAAG,CAAC;KACd;AACL,CAAC;AAEQ,oBAAI"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type CustomSerializers = {
|
|
2
|
+
[key: string]: (data: unknown) => (string | null);
|
|
3
|
+
s?: never;
|
|
4
|
+
n?: never;
|
|
5
|
+
u?: never;
|
|
6
|
+
l?: never;
|
|
7
|
+
b?: never;
|
|
8
|
+
i?: never;
|
|
9
|
+
};
|
|
10
|
+
type Options = {
|
|
11
|
+
sortProps?: boolean;
|
|
12
|
+
};
|
|
13
|
+
declare const serialize: (data: unknown, customSerializers?: CustomSerializers, options?: Options) => string;
|
|
14
|
+
export type { CustomSerializers };
|
|
15
|
+
export { serialize };
|
|
16
|
+
//# sourceMappingURL=serialize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"AAEA,KAAK,iBAAiB,GAAG;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;IACV,CAAC,CAAC,EAAE,KAAK,CAAC;CACb,CAAC;AAEF,KAAK,OAAO,GAAG;IACX,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAoBF,QAAA,MAAM,SAAS,SAAU,OAAO,sBAAsB,iBAAiB,YAAY,OAAO,WAgEzF,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.serialize = void 0;
|
|
4
|
+
const sortProps_js_1 = require("./sortProps.js");
|
|
5
|
+
const serialize = (data, customSerializers, options) => {
|
|
6
|
+
const replacer = (_key, value) => {
|
|
7
|
+
if (typeof value === "string") {
|
|
8
|
+
return `s:${value}`;
|
|
9
|
+
}
|
|
10
|
+
if (typeof value === "number") {
|
|
11
|
+
return `n:${value}`;
|
|
12
|
+
}
|
|
13
|
+
if (typeof value === "bigint") {
|
|
14
|
+
return `i:${value}`;
|
|
15
|
+
}
|
|
16
|
+
if (typeof value === "undefined") {
|
|
17
|
+
return "u:";
|
|
18
|
+
}
|
|
19
|
+
if (typeof value === "boolean") {
|
|
20
|
+
return "b:" + (value ? "1" : "");
|
|
21
|
+
}
|
|
22
|
+
if (value === null) {
|
|
23
|
+
return "l:";
|
|
24
|
+
}
|
|
25
|
+
const serializerKeys = Object.keys(customSerializers ?? {});
|
|
26
|
+
for (const key of serializerKeys) {
|
|
27
|
+
const serialized = customSerializers[key](value);
|
|
28
|
+
if (typeof serialized === "string") {
|
|
29
|
+
return `${key}:${serialized}`;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (typeof value === "object") {
|
|
33
|
+
return value;
|
|
34
|
+
}
|
|
35
|
+
throw new Error(`Unsupported data type: ${typeof value}`);
|
|
36
|
+
};
|
|
37
|
+
if (data == null
|
|
38
|
+
|| typeof data === "string"
|
|
39
|
+
|| typeof data === "number"
|
|
40
|
+
|| typeof data === "bigint"
|
|
41
|
+
|| typeof data === "undefined"
|
|
42
|
+
|| typeof data === "boolean"
|
|
43
|
+
|| Array.isArray(data)) {
|
|
44
|
+
return JSON.stringify(data, replacer);
|
|
45
|
+
}
|
|
46
|
+
const serializerKeysGlobal = Object.keys(customSerializers ?? {});
|
|
47
|
+
for (const key of serializerKeysGlobal) {
|
|
48
|
+
const serialized = customSerializers[key](data);
|
|
49
|
+
if (typeof serialized === "string") {
|
|
50
|
+
return `"${key}:${serialized}"`;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (typeof data === "object") {
|
|
54
|
+
return JSON.stringify(options?.sortProps === false
|
|
55
|
+
? data
|
|
56
|
+
: (0, sortProps_js_1.sortProps)(data), replacer);
|
|
57
|
+
}
|
|
58
|
+
throw new Error(`Unsupported data type: ${typeof data}`);
|
|
59
|
+
};
|
|
60
|
+
exports.serialize = serialize;
|
|
61
|
+
//# sourceMappingURL=serialize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":";;;AAAA,iDAA2C;AAkC3C,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,iBAAqC,EAAE,OAAiB,EAAE,EAAE;IAC1F,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;QAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,KAAK,EAAE,CAAC;SACvB;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,KAAK,EAAE,CAAC;SACvB;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,KAAK,EAAE,CAAC;SACvB;QACD,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,CAAC;SACf;QACD,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACpC;QACD,IAAI,KAAK,KAAK,IAAI,EAAE;YAChB,OAAO,IAAI,CAAC;SACf;QACD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE;YAC9B,MAAM,UAAU,GAAG,iBAAkB,CAAC,GAAG,CAAE,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;gBAChC,OAAO,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;aACjC;SACJ;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC,CAAC;IAEF,IACI,IAAI,IAAI,IAAI;WACT,OAAO,IAAI,KAAK,QAAQ;WACxB,OAAO,IAAI,KAAK,QAAQ;WACxB,OAAO,IAAI,KAAK,QAAQ;WACxB,OAAO,IAAI,KAAK,WAAW;WAC3B,OAAO,IAAI,KAAK,SAAS;WACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EACxB;QACE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACzC;IAED,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IAClE,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE;QACpC,MAAM,UAAU,GAAG,iBAAkB,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAChC,OAAO,IAAI,GAAG,IAAI,UAAU,GAAG,CAAC;SACnC;KACJ;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC1B,OAAO,IAAI,CAAC,SAAS,CACjB,OAAO,EAAE,SAAS,KAAK,KAAK;YACxB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,IAAA,wBAAS,EAAC,IAA+B,CAAC,EAChD,QAAQ,CACX,CAAC;KACL;IAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAGO,8BAAS"}
|
package/dist/setImmutable.js
CHANGED
package/dist/setImmutable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setImmutable.js","sourceRoot":"","sources":["../src/setImmutable.ts"],"names":[],"mappings":";;;AAOA,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC;AAElH,MAAM,KAAK,GAAG,CAAC,KAAyB,EAAE,EAAE;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,GAAG,KAA2B,CAAC,CAAC;KAC3C;IACD,
|
|
1
|
+
{"version":3,"file":"setImmutable.js","sourceRoot":"","sources":["../src/setImmutable.ts"],"names":[],"mappings":";;;AAOA,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC;AAElH,MAAM,KAAK,GAAG,CAAC,KAAyB,EAAE,EAAE;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,GAAG,KAA2B,CAAC,CAAC;KAC3C;IACD,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,KAAgB,EAAE,EAAE;IAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QACf,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QACtB,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC;QACzB,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,IAAI,KAAK,QAAQ,CAAC;IACnE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAUF,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,EAAE;IAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC1B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KACzB;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KAC1B;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,IAAI,CAAC;KACf;IACD,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;AAC9F,CAAC,CAAC;AAwBF,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,IAAU,EAAE,KAAc,EAAoB,EAAE;IAClF,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE;QACd,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;KACxE;IACD,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC;IAE7B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAErD,IAAI,OAAO,GAAqB,MAAM,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC1B,MAAM,MAAM,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;QAC1B,IAAI,MAAM,EAAE;YACP,OAAkB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACjC,OAAO,MAAM,CAAC;SACjB;QACD,IAAI,CAAC,QAAQ,CAAE,OAAkB,CAAC,GAAG,CAAC,CAAC,EAAE;YACpC,OAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SACjC;aACI;YACA,OAAkB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAE,OAAkB,CAAC,GAAG,CAAuB,CAAC,CAAC;SACpF;QACD,OAAO,GAAI,OAAkB,CAAC,GAAG,CAAC,CAAC;KACtC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEO,oCAAY"}
|
package/dist/sortBy.js
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.sortBy = void 0;
|
|
4
4
|
const sortBy = (propertyName, asc = true, defaultValue = null) => (a, b) => {
|
|
5
|
-
var _a, _b;
|
|
6
5
|
if (a[propertyName] === b[propertyName]) {
|
|
7
6
|
return 0;
|
|
8
7
|
}
|
|
9
|
-
if ((
|
|
8
|
+
if ((a[propertyName] ?? defaultValue) > (b[propertyName] ?? defaultValue)) {
|
|
10
9
|
return asc ? 1 : -1;
|
|
11
10
|
}
|
|
12
11
|
return asc ? -1 : 1;
|
package/dist/sortBy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortBy.js","sourceRoot":"","sources":["../src/sortBy.ts"],"names":[],"mappings":";;;AAOA,MAAM,MAAM,GAAG,CAAI,YAAqB,EAAE,GAAG,GAAG,IAAI,EAAE,eAAwB,IAAI,EAAE,EAAE,CAAC,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"sortBy.js","sourceRoot":"","sources":["../src/sortBy.ts"],"names":[],"mappings":";;;AAOA,MAAM,MAAM,GAAG,CAAI,YAAqB,EAAE,GAAG,GAAG,IAAI,EAAE,eAAwB,IAAI,EAAE,EAAE,CAAC,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE;IAClG,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE;QACrC,OAAO,CAAC,CAAC;KACZ;IAGD,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,EAAE;QAEvE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACvB;IAED,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC,CAAC;AAGE,wBAAM"}
|
package/dist/sortProps.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortProps.d.ts","sourceRoot":"","sources":["../src/sortProps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sortProps.d.ts","sourceRoot":"","sources":["../src/sortProps.ts"],"names":[],"mappings":"AAUA,QAAA,MAAM,SAAS,oEASd,CAAC;AAEF,OAAO,EACH,SAAS,GACZ,CAAC"}
|
package/dist/sortProps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortProps.js","sourceRoot":"","sources":["../src/sortProps.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"sortProps.js","sourceRoot":"","sources":["../src/sortProps.ts"],"names":[],"mappings":";;;AAUA,MAAM,SAAS,GAAG,CAAoC,MAAS,EAAE,GAAG,GAAG,IAAI,EAAK,EAAE;IAC9E,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,GAAG,EAAE;QAAE,IAAI,CAAC,IAAI,EAAE,CAAC;KAAE;SACpB;QAAE,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;KAAE;IAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACpB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;KAC7B;IACD,OAAO,MAAW,CAAC;AACvB,CAAC,CAAC;AAGE,8BAAS"}
|
package/dist/throttle.js
CHANGED
|
@@ -6,10 +6,9 @@ const defaultOptions = {
|
|
|
6
6
|
trailing: true,
|
|
7
7
|
};
|
|
8
8
|
const throttle = (fn, time = 0, options) => {
|
|
9
|
-
var _a, _b;
|
|
10
9
|
const opts = {
|
|
11
|
-
leading:
|
|
12
|
-
trailing:
|
|
10
|
+
leading: options?.leading ?? defaultOptions.leading,
|
|
11
|
+
trailing: options?.trailing ?? defaultOptions.trailing,
|
|
13
12
|
};
|
|
14
13
|
if (!opts.trailing && !opts.leading) {
|
|
15
14
|
throw new TypeError("Throttle with trailing & leading options `false` won't do anything.");
|
|
@@ -21,7 +20,6 @@ const throttle = (fn, time = 0, options) => {
|
|
|
21
20
|
let lastRun = 0, timeoutId = null, lastResult, lastArgs, lastTime = typeof time === "number" ? time : time[0], leadingCalled = false;
|
|
22
21
|
const times = typeof time === "number" ? [time] : [...time];
|
|
23
22
|
const throttledFn = ((...args) => {
|
|
24
|
-
var _a, _b, _c;
|
|
25
23
|
lastArgs = args;
|
|
26
24
|
if (timeoutId !== null) {
|
|
27
25
|
return lastResult;
|
|
@@ -30,20 +28,20 @@ const throttle = (fn, time = 0, options) => {
|
|
|
30
28
|
if (Date.now() - lastRun < lastTime) {
|
|
31
29
|
return lastResult;
|
|
32
30
|
}
|
|
33
|
-
lastTime =
|
|
31
|
+
lastTime = times.shift() ?? finalTime;
|
|
34
32
|
lastRun = Date.now();
|
|
35
33
|
lastResult = fn(...args);
|
|
36
34
|
return lastResult;
|
|
37
35
|
}
|
|
38
36
|
const diffLastRun = Date.now() - lastRun;
|
|
39
|
-
if (opts.leading && (!leadingCalled || typeof time === "number") && diffLastRun >= (
|
|
37
|
+
if (opts.leading && (!leadingCalled || typeof time === "number") && diffLastRun >= (times[0] ?? finalTime)) {
|
|
40
38
|
lastRun = Date.now();
|
|
41
39
|
lastResult = fn(...args);
|
|
42
40
|
leadingCalled = true;
|
|
43
41
|
return lastResult;
|
|
44
42
|
}
|
|
45
43
|
if (lastRun || !opts.leading) {
|
|
46
|
-
lastTime =
|
|
44
|
+
lastTime = times.shift() ?? finalTime;
|
|
47
45
|
}
|
|
48
46
|
timeoutId = setTimeout(() => {
|
|
49
47
|
timeoutId = null;
|
package/dist/throttle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../src/throttle.ts"],"names":[],"mappings":";;;AAsBA,MAAM,cAAc,GAAmB;IACnC,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;CACjB,CAAC;AAuBF,MAAM,QAAQ,GAAG,CACb,EAAK,EAAE,OAAuC,CAAC,EAAE,OAAc,EACjC,EAAE
|
|
1
|
+
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../src/throttle.ts"],"names":[],"mappings":"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"}
|