@archtx/utils 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/exports.d.ts +25 -0
- package/dist/exports.js +26 -0
- package/dist/exports.js.map +1 -0
- package/dist/src/array-values-or-undefined.d.ts +1 -0
- package/dist/src/array-values-or-undefined.js +6 -0
- package/dist/src/array-values-or-undefined.js.map +1 -0
- package/dist/src/bool-or-undefined.d.ts +1 -0
- package/dist/src/bool-or-undefined.js +2 -0
- package/dist/src/bool-or-undefined.js.map +1 -0
- package/dist/src/constants/millisecond-time.d.ts +7 -0
- package/dist/src/constants/millisecond-time.js +8 -0
- package/dist/src/constants/millisecond-time.js.map +1 -0
- package/dist/src/constants/second-time.d.ts +6 -0
- package/dist/src/constants/second-time.js +7 -0
- package/dist/src/constants/second-time.js.map +1 -0
- package/dist/src/deep-clone.d.ts +1 -0
- package/dist/src/deep-clone.js +27 -0
- package/dist/src/deep-clone.js.map +1 -0
- package/dist/src/deep-equal.d.ts +7 -0
- package/dist/src/deep-equal.js +52 -0
- package/dist/src/deep-equal.js.map +1 -0
- package/dist/src/deep-equal.test.d.ts +1 -0
- package/dist/src/deep-equal.test.js +97 -0
- package/dist/src/deep-equal.test.js.map +1 -0
- package/dist/src/deep-freeze.d.ts +7 -0
- package/dist/src/deep-freeze.js +20 -0
- package/dist/src/deep-freeze.js.map +1 -0
- package/dist/src/deep-merge.d.ts +1 -0
- package/dist/src/deep-merge.js +27 -0
- package/dist/src/deep-merge.js.map +1 -0
- package/dist/src/ensure-array.d.ts +16 -0
- package/dist/src/ensure-array.js +26 -0
- package/dist/src/ensure-array.js.map +1 -0
- package/dist/src/format-decimal.d.ts +1 -0
- package/dist/src/format-decimal.js +9 -0
- package/dist/src/format-decimal.js.map +1 -0
- package/dist/src/is-email.d.ts +1 -0
- package/dist/src/is-email.js +5 -0
- package/dist/src/is-email.js.map +1 -0
- package/dist/src/is-hex-color.d.ts +1 -0
- package/dist/src/is-hex-color.js +4 -0
- package/dist/src/is-hex-color.js.map +1 -0
- package/dist/src/is-prod.d.ts +1 -0
- package/dist/src/is-prod.js +2 -0
- package/dist/src/is-prod.js.map +1 -0
- package/dist/src/is-url.d.ts +1 -0
- package/dist/src/is-url.js +10 -0
- package/dist/src/is-url.js.map +1 -0
- package/dist/src/make-uuid.d.ts +16 -0
- package/dist/src/make-uuid.js +23 -0
- package/dist/src/make-uuid.js.map +1 -0
- package/dist/src/make-uuid.test.d.ts +1 -0
- package/dist/src/make-uuid.test.js +22 -0
- package/dist/src/make-uuid.test.js.map +1 -0
- package/dist/src/obfuscate-string.d.ts +21 -0
- package/dist/src/obfuscate-string.js +46 -0
- package/dist/src/obfuscate-string.js.map +1 -0
- package/dist/src/object-diff-paths.d.ts +9 -0
- package/dist/src/object-diff-paths.js +39 -0
- package/dist/src/object-diff-paths.js.map +1 -0
- package/dist/src/object-diff-paths.test.d.ts +1 -0
- package/dist/src/object-diff-paths.test.js +141 -0
- package/dist/src/object-diff-paths.test.js.map +1 -0
- package/dist/src/object-values-to-dot-notation.d.ts +1 -0
- package/dist/src/object-values-to-dot-notation.js +23 -0
- package/dist/src/object-values-to-dot-notation.js.map +1 -0
- package/dist/src/object-values-to-dot-notation.test.d.ts +1 -0
- package/dist/src/object-values-to-dot-notation.test.js +21 -0
- package/dist/src/object-values-to-dot-notation.test.js.map +1 -0
- package/dist/src/object.d.ts +7 -0
- package/dist/src/object.js +19 -0
- package/dist/src/object.js.map +1 -0
- package/dist/src/pluralize.d.ts +5 -0
- package/dist/src/pluralize.js +17 -0
- package/dist/src/pluralize.js.map +1 -0
- package/dist/src/random-color.d.ts +1 -0
- package/dist/src/random-color.js +4 -0
- package/dist/src/random-color.js.map +1 -0
- package/dist/src/sanitize-obj-props.d.ts +1 -0
- package/dist/src/sanitize-obj-props.js +5 -0
- package/dist/src/sanitize-obj-props.js.map +1 -0
- package/dist/src/sleep.d.ts +1 -0
- package/dist/src/sleep.js +6 -0
- package/dist/src/sleep.js.map +1 -0
- package/dist/src/timeout.d.ts +8 -0
- package/dist/src/timeout.js +14 -0
- package/dist/src/timeout.js.map +1 -0
- package/dist/src/undefined-default.d.ts +1 -0
- package/dist/src/undefined-default.js +2 -0
- package/dist/src/undefined-default.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +27 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
type ObfuscatedString = string;
|
|
2
|
+
export declare function isObfuscatedString(str: string): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* This function is used to obfuscate a string so that it can be used in a URL
|
|
5
|
+
* and is not easily guessable.
|
|
6
|
+
*
|
|
7
|
+
* @note this function earmarks an obfuscated string with a prefix to identify
|
|
8
|
+
* it as an obfuscated string. This is useful for when you need to determine
|
|
9
|
+
* whether a string is obfuscated or not.
|
|
10
|
+
*/
|
|
11
|
+
export declare function obfuscateString(str: string): ObfuscatedString;
|
|
12
|
+
/**
|
|
13
|
+
* This function is used to de-obfuscate a string that was obfuscated using
|
|
14
|
+
* the obfuscateString function.
|
|
15
|
+
*
|
|
16
|
+
* @note this function will throw an error if the string is not obfuscated
|
|
17
|
+
*/
|
|
18
|
+
export declare function deObfuscateString(obufscatedString: ObfuscatedString, opts?: {
|
|
19
|
+
throw?: boolean;
|
|
20
|
+
}): string;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ParamError } from '@archtx/core';
|
|
2
|
+
const OBFUSCATED_STRING_PREFIX = 'oBfSs';
|
|
3
|
+
export function isObfuscatedString(str) {
|
|
4
|
+
return str.startsWith(OBFUSCATED_STRING_PREFIX);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* This function is used to obfuscate a string so that it can be used in a URL
|
|
8
|
+
* and is not easily guessable.
|
|
9
|
+
*
|
|
10
|
+
* @note this function earmarks an obfuscated string with a prefix to identify
|
|
11
|
+
* it as an obfuscated string. This is useful for when you need to determine
|
|
12
|
+
* whether a string is obfuscated or not.
|
|
13
|
+
*/
|
|
14
|
+
export function obfuscateString(str) {
|
|
15
|
+
if (!str)
|
|
16
|
+
throw new ParamError('obfuscateString str is required');
|
|
17
|
+
if (isObfuscatedString(str))
|
|
18
|
+
throw new ParamError('obfuscateString str is already obfuscated');
|
|
19
|
+
const encoded = Buffer.from(str).toString('base64');
|
|
20
|
+
return (OBFUSCATED_STRING_PREFIX +
|
|
21
|
+
encoded.replace('+', '-').replace('/', '_').replace(/=+$/g, ''));
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* This function is used to de-obfuscate a string that was obfuscated using
|
|
25
|
+
* the obfuscateString function.
|
|
26
|
+
*
|
|
27
|
+
* @note this function will throw an error if the string is not obfuscated
|
|
28
|
+
*/
|
|
29
|
+
export function deObfuscateString(obufscatedString, opts = { throw: true }) {
|
|
30
|
+
if (!obufscatedString)
|
|
31
|
+
throw new ParamError('deObfuscateString string is required');
|
|
32
|
+
if (!isObfuscatedString(obufscatedString)) {
|
|
33
|
+
if (opts?.throw) {
|
|
34
|
+
throw new ParamError('obfuscateString str is already obfuscated');
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
return obufscatedString;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// remove the earmark prefix
|
|
41
|
+
obufscatedString = obufscatedString.replace(OBFUSCATED_STRING_PREFIX, '');
|
|
42
|
+
obufscatedString += Array(5 - (obufscatedString.length % 4)).join('=');
|
|
43
|
+
obufscatedString = obufscatedString.replace('-', '+').replace('_', '/');
|
|
44
|
+
return Buffer.from(obufscatedString, 'base64').toString();
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=obfuscate-string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"obfuscate-string.js","sourceRoot":"","sources":["../../src/obfuscate-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAIzC,MAAM,wBAAwB,GAAG,OAAO,CAAA;AAExC,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,OAAO,GAAG,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAA;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,UAAU,CAAC,iCAAiC,CAAC,CAAA;IAEjE,IAAI,kBAAkB,CAAC,GAAG,CAAC;QACzB,MAAM,IAAI,UAAU,CAClB,2CAA2C,CAC5C,CAAA;IAEH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAEnD,OAAO,CACL,wBAAwB;QACxB,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAChE,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,gBAAkC,EAClC,OAA4B,EAAE,KAAK,EAAE,IAAI,EAAE;IAE3C,IAAI,CAAC,gBAAgB;QACnB,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAA;IAE9D,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC1C,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,UAAU,CAClB,2CAA2C,CAC5C,CAAA;QACH,CAAC;aAAM,CAAC;YACN,OAAO,gBAAgB,CAAA;QACzB,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAA;IAEzE,gBAAgB,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEtE,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAEvE,OAAO,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC3D,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the "lodash" paths of deep difference values between two objects or arrays.
|
|
3
|
+
*
|
|
4
|
+
* @param o1 {object|array}
|
|
5
|
+
* @param o2 {object|array}
|
|
6
|
+
* @param curPath {string}
|
|
7
|
+
* @param diffs {array<string>} ie: ["a.b.c.z", "a.c.[1].name"]
|
|
8
|
+
*/
|
|
9
|
+
export declare function objectDiffPaths(o1: Record<any, any> | any, o2: Record<any, any> | any, curPath?: string, diffs?: string[]): string[];
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the "lodash" paths of deep difference values between two objects or arrays.
|
|
3
|
+
*
|
|
4
|
+
* @param o1 {object|array}
|
|
5
|
+
* @param o2 {object|array}
|
|
6
|
+
* @param curPath {string}
|
|
7
|
+
* @param diffs {array<string>} ie: ["a.b.c.z", "a.c.[1].name"]
|
|
8
|
+
*/
|
|
9
|
+
export function objectDiffPaths(o1, o2, curPath = '', diffs = []) {
|
|
10
|
+
if (typeof o1 !== typeof o2)
|
|
11
|
+
return curPath ? diffs.concat(curPath) : [];
|
|
12
|
+
if (typeof o1 !== 'object') {
|
|
13
|
+
if (o1 !== o2) {
|
|
14
|
+
diffs = curPath ? diffs.concat(curPath) : [];
|
|
15
|
+
}
|
|
16
|
+
return diffs;
|
|
17
|
+
}
|
|
18
|
+
const keys = unionKeys(o1, o2);
|
|
19
|
+
for (const key of keys) {
|
|
20
|
+
const isArr = Array.isArray(o1);
|
|
21
|
+
const path = curPath
|
|
22
|
+
? curPath + '.' + (isArr ? '[' : '') + key + (isArr ? ']' : '')
|
|
23
|
+
: key;
|
|
24
|
+
diffs = objectDiffPaths(o1[key], o2[key], path, diffs);
|
|
25
|
+
}
|
|
26
|
+
return diffs;
|
|
27
|
+
}
|
|
28
|
+
function unionKeys(o1, o2) {
|
|
29
|
+
const keys = getKeys(o1).concat(getKeys(o2));
|
|
30
|
+
const o = keys.reduce((acc, cur) => {
|
|
31
|
+
acc[cur] = true;
|
|
32
|
+
return acc;
|
|
33
|
+
}, {});
|
|
34
|
+
return Object.keys(o);
|
|
35
|
+
}
|
|
36
|
+
function getKeys(o) {
|
|
37
|
+
return typeof o === 'undefined' || o === null ? [] : Object.keys(o);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=object-diff-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-diff-paths.js","sourceRoot":"","sources":["../../src/object-diff-paths.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,EAA0B,EAC1B,EAA0B,EAC1B,OAAO,GAAG,EAAE,EACZ,QAAkB,EAAE;IAEpB,IAAI,OAAO,EAAE,KAAK,OAAO,EAAE;QAAE,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAExE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACd,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9C,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IAE9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,OAAO;YAClB,CAAC,CAAC,OAAO,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,CAAC,CAAC,GAAG,CAAA;QACP,KAAK,GAAG,eAAe,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,SAAS,CAAC,EAAoB,EAAE,EAAoB;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,GAAG,EAAE,EAAE;QACtC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;QAEf,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAE,CAAC,CAAA;IACN,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACvB,CAAC;AAED,SAAS,OAAO,CAAC,CAAmB;IAClC,OAAO,OAAO,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACrE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import assert from 'assert';
|
|
2
|
+
import { get } from 'lodash-es';
|
|
3
|
+
import { objectDiffPaths } from './object-diff-paths';
|
|
4
|
+
describe('object diff', () => {
|
|
5
|
+
it('different types', () => {
|
|
6
|
+
const o1 = 1;
|
|
7
|
+
const o2 = true;
|
|
8
|
+
const diff = objectDiffPaths(o1, o2);
|
|
9
|
+
assert.deepEqual(diff, []);
|
|
10
|
+
});
|
|
11
|
+
it('empty objects', () => {
|
|
12
|
+
const o1 = {};
|
|
13
|
+
const o2 = {};
|
|
14
|
+
const diff = objectDiffPaths(o1, o2);
|
|
15
|
+
assert.deepEqual(diff, []);
|
|
16
|
+
});
|
|
17
|
+
it('empty objects', () => {
|
|
18
|
+
const o1 = {};
|
|
19
|
+
const o2 = {};
|
|
20
|
+
const diff = objectDiffPaths(o1, o2);
|
|
21
|
+
assert.deepEqual(diff, []);
|
|
22
|
+
});
|
|
23
|
+
it('a single object entry is different', () => {
|
|
24
|
+
const o1 = {
|
|
25
|
+
a: {
|
|
26
|
+
b: {
|
|
27
|
+
c: { s: 't' },
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
const o2 = { ...o1, a: { ...o1.a, b: { ...o1.a.b, d: 'e' } } };
|
|
32
|
+
const diff = objectDiffPaths(o1, o2);
|
|
33
|
+
assert.deepEqual(diff, ['a.b.d']);
|
|
34
|
+
});
|
|
35
|
+
it('null vs undefined', () => {
|
|
36
|
+
const o1 = {
|
|
37
|
+
foo: null,
|
|
38
|
+
};
|
|
39
|
+
const o2 = {
|
|
40
|
+
foo: undefined,
|
|
41
|
+
};
|
|
42
|
+
const diff = objectDiffPaths(o1, o2);
|
|
43
|
+
assert.deepEqual(diff, ['foo']);
|
|
44
|
+
});
|
|
45
|
+
it('entries are missing/different from each objects', () => {
|
|
46
|
+
const o1 = {
|
|
47
|
+
a: {
|
|
48
|
+
b: {
|
|
49
|
+
fn: () => 4,
|
|
50
|
+
arr: [1, 2, 3],
|
|
51
|
+
c: {
|
|
52
|
+
s: 't',
|
|
53
|
+
y: 'g',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
const o2 = {
|
|
59
|
+
...o1,
|
|
60
|
+
a: {
|
|
61
|
+
...o1.a,
|
|
62
|
+
b: {
|
|
63
|
+
...o1.a.b,
|
|
64
|
+
fn: () => 4,
|
|
65
|
+
arr: [1, 2, 3, 4, 5],
|
|
66
|
+
c: { s: 'e', t: 'e' },
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
const diff = objectDiffPaths(o1, o2);
|
|
71
|
+
assert.deepEqual(diff, [
|
|
72
|
+
'a.b.fn',
|
|
73
|
+
'a.b.arr.[3]',
|
|
74
|
+
'a.b.arr.[4]',
|
|
75
|
+
'a.b.c.s',
|
|
76
|
+
'a.b.c.y',
|
|
77
|
+
'a.b.c.t',
|
|
78
|
+
]);
|
|
79
|
+
});
|
|
80
|
+
it('nested arrays', () => {
|
|
81
|
+
const o1 = {
|
|
82
|
+
a: {
|
|
83
|
+
arr: [
|
|
84
|
+
1,
|
|
85
|
+
[{ one: 1, two: 1 }],
|
|
86
|
+
{
|
|
87
|
+
foo: 'bar',
|
|
88
|
+
},
|
|
89
|
+
4,
|
|
90
|
+
],
|
|
91
|
+
},
|
|
92
|
+
};
|
|
93
|
+
const o2 = {
|
|
94
|
+
...o1,
|
|
95
|
+
a: {
|
|
96
|
+
...o1.a,
|
|
97
|
+
arr: [
|
|
98
|
+
1,
|
|
99
|
+
[{ one: 2, two: 2 }],
|
|
100
|
+
{
|
|
101
|
+
foo: 'bar',
|
|
102
|
+
},
|
|
103
|
+
4,
|
|
104
|
+
],
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
const diff = objectDiffPaths(o1, o2);
|
|
108
|
+
assert.deepEqual(diff, ['a.arr.[1].[0].one', 'a.arr.[1].[0].two']);
|
|
109
|
+
});
|
|
110
|
+
it('lodash compatibility', () => {
|
|
111
|
+
const o1 = {
|
|
112
|
+
a: {
|
|
113
|
+
arr: [
|
|
114
|
+
1,
|
|
115
|
+
[{ one: 1, two: 1 }],
|
|
116
|
+
{
|
|
117
|
+
foo: 'bar',
|
|
118
|
+
},
|
|
119
|
+
4,
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
const o2 = {
|
|
124
|
+
...o1,
|
|
125
|
+
a: {
|
|
126
|
+
...o1.a,
|
|
127
|
+
arr: [
|
|
128
|
+
1,
|
|
129
|
+
[{ one: 42, two: 2 }],
|
|
130
|
+
{
|
|
131
|
+
foo: 'bar',
|
|
132
|
+
},
|
|
133
|
+
4,
|
|
134
|
+
],
|
|
135
|
+
},
|
|
136
|
+
};
|
|
137
|
+
const diff = objectDiffPaths(o1, o2);
|
|
138
|
+
assert.equal(get(o2, diff[0]), 42);
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
//# sourceMappingURL=object-diff-paths.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-diff-paths.test.js","sourceRoot":"","sources":["../../src/object-diff-paths.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const objectValuesToDotNotation: (obj: Record<string, unknown>) => [string, unknown][];
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// credit: https://github.com/segment-boneyard/tableize
|
|
2
|
+
function tableize(obj) {
|
|
3
|
+
const ret = {};
|
|
4
|
+
type(ret, obj, '');
|
|
5
|
+
return ret;
|
|
6
|
+
}
|
|
7
|
+
function type(schema, obj, prefix) {
|
|
8
|
+
Object.keys(obj).forEach((key) => {
|
|
9
|
+
const val = obj[key];
|
|
10
|
+
key = prefix + key;
|
|
11
|
+
if (typeof val === 'object') {
|
|
12
|
+
type(schema, val, key + '.');
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
schema[key] = val;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
export const objectValuesToDotNotation = (obj) => {
|
|
20
|
+
const results = tableize(obj);
|
|
21
|
+
return Object.entries(results);
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=object-values-to-dot-notation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-values-to-dot-notation.js","sourceRoot":"","sources":["../../src/object-values-to-dot-notation.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,SAAS,QAAQ,CAAC,GAA4B;IAC5C,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;IAClB,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,IAAI,CACX,MAA+B,EAC/B,GAA4B,EAC5B,MAAc;IAEd,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC/B,MAAM,GAAG,GAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;QAEzB,GAAG,GAAG,MAAM,GAAG,GAAG,CAAA;QAElB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;QACnB,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,GAA4B,EACP,EAAE;IACvB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAE7B,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;AAChC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { objectValuesToDotNotation } from './object-values-to-dot-notation';
|
|
2
|
+
describe('objectValuesToDotNotation', () => {
|
|
3
|
+
it('converts an object to dot notation', () => {
|
|
4
|
+
const anpObj = {
|
|
5
|
+
admin: {
|
|
6
|
+
permissions: {
|
|
7
|
+
manageOrganization: true,
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
ops: {
|
|
11
|
+
access: {
|
|
12
|
+
canViewOtherUsers: true
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
const result = objectValuesToDotNotation(anpObj);
|
|
17
|
+
expect(result[0]).toEqual(['admin.permissions.manageOrganization', true]);
|
|
18
|
+
expect(result[1]).toEqual(['ops.access.canViewOtherUsers', true]);
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
//# sourceMappingURL=object-values-to-dot-notation.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-values-to-dot-notation.test.js","sourceRoot":"","sources":["../../src/object-values-to-dot-notation.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAA;AAE3E,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,MAAM,GAAG;YACb,KAAK,EAAE;gBACL,WAAW,EAAE;oBACX,kBAAkB,EAAE,IAAI;iBACzB;aACF;YACD,GAAG,EAAE;gBACH,MAAM,EAAE;oBACN,iBAAiB,EAAE,IAAI;iBACxB;aACF;SACF,CAAA;QAED,MAAM,MAAM,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC,CAAA;QACzE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks an object for a property and that it's not undefined.
|
|
3
|
+
* @param obj
|
|
4
|
+
* @param key
|
|
5
|
+
*/
|
|
6
|
+
export declare function hasPropertyDefined(obj: Record<string, any>, key: string): boolean;
|
|
7
|
+
export declare function removeUndefined(obj: Record<any, any>): Partial<Record<any, any>>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import clean from 'clean-deep';
|
|
2
|
+
/**
|
|
3
|
+
* Checks an object for a property and that it's not undefined.
|
|
4
|
+
* @param obj
|
|
5
|
+
* @param key
|
|
6
|
+
*/
|
|
7
|
+
export function hasPropertyDefined(obj, key) {
|
|
8
|
+
return key in obj && obj[key] !== undefined;
|
|
9
|
+
}
|
|
10
|
+
export function removeUndefined(obj) {
|
|
11
|
+
return clean(obj, {
|
|
12
|
+
emptyArrays: false,
|
|
13
|
+
emptyObjects: false,
|
|
14
|
+
NaNValues: true,
|
|
15
|
+
nullValues: false,
|
|
16
|
+
undefinedValues: true,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=object.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAwB,EAAE,GAAW;IACtE,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAqB;IACnD,OAAO,KAAK,CAAC,GAAG,EAAE;QAChB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;QACnB,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,IAAI;KACtB,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @example pluralize('Location', 3) // "Locations"
|
|
3
|
+
* @example pluralize(['Entry', 'Entries'], 2) // "Entries"
|
|
4
|
+
*/
|
|
5
|
+
export function pluralize(txt, count = 0) {
|
|
6
|
+
if (count > 1) {
|
|
7
|
+
if (Array.isArray(txt)) {
|
|
8
|
+
return txt[1];
|
|
9
|
+
}
|
|
10
|
+
return txt + 's';
|
|
11
|
+
}
|
|
12
|
+
if (Array.isArray(txt)) {
|
|
13
|
+
return txt[0];
|
|
14
|
+
}
|
|
15
|
+
return txt;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=pluralize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluralize.js","sourceRoot":"","sources":["../../src/pluralize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,GAAsB,EAAE,KAAK,GAAE,CAAC;IACxD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QACf,CAAC;QACD,OAAO,GAAG,GAAG,GAAG,CAAA;IAClB,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;IACf,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function randomHEXColor(): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random-color.js","sourceRoot":"","sources":["../../src/random-color.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc;IAC5B,OAAO,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAC9E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function sanitizeObjProps<Props>(allowedProperties: string[], props: Props): Props;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sanitize-obj-props.js","sourceRoot":"","sources":["../../src/sanitize-obj-props.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,UAAU,gBAAgB,CAC9B,iBAA2B,EAC3B,KAAY;IAEZ,OAAO,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAU,CAAA;AAChD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const sleep: (ms?: number) => Promise<unknown>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/sleep.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,GAAE,CAAC,EAAE,EAAE,CAC7B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IACtB,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,CAAC,IAAI,CAAC,CAAA;IACf,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Invokes a callback function after a specified timeout.
|
|
3
|
+
*
|
|
4
|
+
* @param {function} callback - The callback function to be invoked after the timeout.
|
|
5
|
+
* @param {number} timeoutMs - The timeout duration in milliseconds.
|
|
6
|
+
* @return {Promise<function>} A promise that resolves to a function that can be called to cancel the timeout.
|
|
7
|
+
*/
|
|
8
|
+
export declare function timeout(callback: () => void, timeoutMs: number): Promise<() => void>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Invokes a callback function after a specified timeout.
|
|
3
|
+
*
|
|
4
|
+
* @param {function} callback - The callback function to be invoked after the timeout.
|
|
5
|
+
* @param {number} timeoutMs - The timeout duration in milliseconds.
|
|
6
|
+
* @return {Promise<function>} A promise that resolves to a function that can be called to cancel the timeout.
|
|
7
|
+
*/
|
|
8
|
+
export async function timeout(callback, timeoutMs) {
|
|
9
|
+
const clearTimer = setTimeout(callback, timeoutMs);
|
|
10
|
+
return () => {
|
|
11
|
+
clearTimeout(clearTimer);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../src/timeout.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,QAAoB,EACpB,SAAiB;IAEjB,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAElD,OAAO,GAAG,EAAE;QACV,YAAY,CAAC,UAAU,CAAC,CAAA;IAC1B,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const undefinedDefault: (value: any, defaultValue: any) => any;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"undefined-default.js","sourceRoot":"","sources":["../../src/undefined-default.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,YAAiB,EAAE,EAAE,CAC9D,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAA"}
|