topkat-utils 1.2.43 → 1.2.44
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/.eslintrc +61 -4
- package/CHANGELOG.md +5 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/src/loop-utils.js +2 -2
- package/dist/src/loop-utils.js.map +1 -1
- package/dist/src/object-utils.d.ts +1 -1
- package/dist/src/object-utils.js +7 -9
- package/dist/src/object-utils.js.map +1 -1
- package/dist/src/regexp-utils.d.ts +3 -1
- package/dist/src/regexp-utils.js +4 -3
- package/dist/src/regexp-utils.js.map +1 -1
- package/index.ts +5 -3
- package/package.json +1 -1
- package/src/loop-utils.ts +2 -2
- package/src/object-utils.ts +31 -31
- package/src/regexp-utils.ts +6 -5
package/.eslintrc
CHANGED
|
@@ -16,9 +16,14 @@
|
|
|
16
16
|
"allowImportExportEverywhere": true
|
|
17
17
|
},
|
|
18
18
|
"rules": {
|
|
19
|
+
"indent": "off",
|
|
20
|
+
"@typescript-eslint/indent": [
|
|
21
|
+
"warn",
|
|
22
|
+
4
|
|
23
|
+
],
|
|
19
24
|
"no-inner-declarations": "off",
|
|
20
25
|
"no-console": "warn",
|
|
21
|
-
"no-unused-vars":
|
|
26
|
+
"no-unused-vars": 0,
|
|
22
27
|
"no-global-assign": "warn",
|
|
23
28
|
"require-atomic-updates": "off",
|
|
24
29
|
"no-prototype-builtins": "off",
|
|
@@ -45,14 +50,66 @@
|
|
|
45
50
|
"allowSingleLine": true
|
|
46
51
|
}
|
|
47
52
|
],
|
|
48
|
-
"
|
|
53
|
+
"no-underscore-dangle": 0,
|
|
54
|
+
"space-in-parens": [
|
|
49
55
|
"warn",
|
|
50
|
-
|
|
56
|
+
"never"
|
|
57
|
+
],
|
|
58
|
+
"object-curly-spacing": [
|
|
59
|
+
"warn",
|
|
60
|
+
"always"
|
|
61
|
+
],
|
|
62
|
+
"array-bracket-spacing": [
|
|
63
|
+
"warn",
|
|
64
|
+
"never"
|
|
65
|
+
],
|
|
66
|
+
"comma-spacing": [
|
|
67
|
+
"error",
|
|
68
|
+
{
|
|
69
|
+
"before": false,
|
|
70
|
+
"after": true
|
|
71
|
+
}
|
|
72
|
+
],
|
|
73
|
+
"keyword-spacing": 1,
|
|
74
|
+
"key-spacing": [
|
|
75
|
+
"warn",
|
|
76
|
+
{
|
|
77
|
+
"beforeColon": false,
|
|
78
|
+
"afterColon": true
|
|
79
|
+
}
|
|
51
80
|
],
|
|
81
|
+
"arrow-body-style": 0,
|
|
82
|
+
"no-multi-spaces": 1,
|
|
83
|
+
"comma-dangle": 0,
|
|
84
|
+
"no-else-return": 0,
|
|
85
|
+
"no-shadow": 0,
|
|
86
|
+
"class-methods-use-this": 0,
|
|
87
|
+
"no-use-before-define": 0,
|
|
88
|
+
"global-require": 0,
|
|
89
|
+
"max-len": 0,
|
|
90
|
+
"object-curly-newline": 0,
|
|
91
|
+
"operator-linebreak": 0,
|
|
92
|
+
"no-nested-ternary": 0,
|
|
93
|
+
// "no-undef": 2,
|
|
94
|
+
"no-param-reassign": 0,
|
|
95
|
+
"no-throw-literal": 0,
|
|
96
|
+
"no-useless-catch": 0,
|
|
97
|
+
"no-implicit-globals": 2,
|
|
98
|
+
"no-loop-func": 0,
|
|
99
|
+
"no-plusplus": 0,
|
|
100
|
+
"arrow-parens": 0,
|
|
101
|
+
"consistent-return": 0,
|
|
102
|
+
"camelcase": 0,
|
|
103
|
+
"import/no-cycle": 0,
|
|
104
|
+
"prefer-const": 1,
|
|
105
|
+
"no-trailing-spaces": 1,
|
|
106
|
+
"import/prefer-default-export": 0,
|
|
107
|
+
"no-case-declarations": 0,
|
|
52
108
|
"@typescript-eslint/no-explicit-any": 0,
|
|
53
109
|
"@typescript-eslint/no-unused-vars": 1,
|
|
54
110
|
"@typescript-eslint/no-empty-function": 1,
|
|
55
111
|
"@typescript-eslint/triple-slash-reference": 0,
|
|
56
|
-
"@typescript-eslint/ban-types": 0
|
|
112
|
+
"@typescript-eslint/ban-types": 0,
|
|
113
|
+
"space-infix-ops": 1
|
|
57
114
|
}
|
|
58
115
|
}
|
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ import { kebabCase, snakeCase } from './src/string-utils';
|
|
|
24
24
|
import { shuffleArray, noDuplicateFilter } from './src/array-utils';
|
|
25
25
|
import { issetOr, validator } from './src/validation-utils';
|
|
26
26
|
import { objFilterUndefinedRecursive } from './src/object-utils';
|
|
27
|
+
import { escapeRegexp } from './src/regexp-utils';
|
|
27
28
|
export declare const int: (n: string | number) => number;
|
|
28
29
|
export declare const average: typeof moyenne;
|
|
29
30
|
export declare const arrayUniqueValue: typeof noDuplicateFilter;
|
|
@@ -34,3 +35,4 @@ export declare const dashCase: typeof kebabCase;
|
|
|
34
35
|
export declare const underscoreCase: typeof snakeCase;
|
|
35
36
|
export declare const required: typeof validator;
|
|
36
37
|
export declare const orIsset: typeof issetOr;
|
|
38
|
+
export declare const parseRegexp: typeof escapeRegexp;
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.orIsset = exports.required = exports.underscoreCase = exports.dashCase = exports.randomizeArray = exports.removeUndefinedKeys = exports.JSONstringyParse = exports.arrayUniqueValue = exports.average = exports.int = exports.registerConfig = void 0;
|
|
17
|
+
exports.parseRegexp = exports.orIsset = exports.required = exports.underscoreCase = exports.dashCase = exports.randomizeArray = exports.removeUndefinedKeys = exports.JSONstringyParse = exports.arrayUniqueValue = exports.average = exports.int = exports.registerConfig = void 0;
|
|
18
18
|
__exportStar(require("./src/array-utils"), exports);
|
|
19
19
|
__exportStar(require("./src/date-utils"), exports);
|
|
20
20
|
__exportStar(require("./src/env-utils"), exports);
|
|
@@ -43,7 +43,8 @@ const array_utils_1 = require("./src/array-utils");
|
|
|
43
43
|
const validation_utils_1 = require("./src/validation-utils");
|
|
44
44
|
const object_utils_1 = require("./src/object-utils");
|
|
45
45
|
const remove_circular_json_stringify_1 = require("./src/remove-circular-json-stringify");
|
|
46
|
-
|
|
46
|
+
const regexp_utils_1 = require("./src/regexp-utils");
|
|
47
|
+
// ALIASES mainly used for readability
|
|
47
48
|
const int = (n) => typeof n === 'number' ? n : parseInt(n);
|
|
48
49
|
exports.int = int;
|
|
49
50
|
exports.average = math_utils_1.moyenne;
|
|
@@ -54,6 +55,7 @@ exports.removeUndefinedKeys = object_utils_1.objFilterUndefinedRecursive;
|
|
|
54
55
|
exports.randomizeArray = array_utils_1.shuffleArray;
|
|
55
56
|
exports.dashCase = string_utils_1.kebabCase;
|
|
56
57
|
exports.underscoreCase = string_utils_1.snakeCase;
|
|
57
|
-
exports.required = validation_utils_1.validator;
|
|
58
|
+
exports.required = validation_utils_1.validator;
|
|
58
59
|
exports.orIsset = validation_utils_1.issetOr;
|
|
60
|
+
exports.parseRegexp = regexp_utils_1.escapeRegexp;
|
|
59
61
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,mDAAgC;AAChC,kDAA+B;AAC/B,oDAAiC;AACjC,8CAA2B;AAC3B,qDAAkC;AAClC,mDAAgC;AAChC,mDAAgC;AAChC,oDAAiC;AACjC,qDAAkC;AAClC,qDAAkC;AAClC,kDAA+B;AAC/B,yDAAsC;AACtC,0DAAuC;AACvC,oDAAiC;AACjC,iDAA8B;AAC9B,uEAAoD;AACpD,kDAA+B;AAC/B,qDAAkC;AAClC,0DAAuC;AACvC,uCAA6C;AAApC,wGAAA,cAAc,OAAA;AAEvB,iDAA0C;AAC1C,qDAAyD;AACzD,mDAAmE;AACnE,6DAA2D;AAC3D,qDAAgE;AAChE,yFAAkF;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,mDAAgC;AAChC,kDAA+B;AAC/B,oDAAiC;AACjC,8CAA2B;AAC3B,qDAAkC;AAClC,mDAAgC;AAChC,mDAAgC;AAChC,oDAAiC;AACjC,qDAAkC;AAClC,qDAAkC;AAClC,kDAA+B;AAC/B,yDAAsC;AACtC,0DAAuC;AACvC,oDAAiC;AACjC,iDAA8B;AAC9B,uEAAoD;AACpD,kDAA+B;AAC/B,qDAAkC;AAClC,0DAAuC;AACvC,uCAA6C;AAApC,wGAAA,cAAc,OAAA;AAEvB,iDAA0C;AAC1C,qDAAyD;AACzD,mDAAmE;AACnE,6DAA2D;AAC3D,qDAAgE;AAChE,yFAAkF;AAClF,qDAAiD;AAEjD,sCAAsC;AAC/B,MAAM,GAAG,GAAG,CAAC,CAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAArE,QAAA,GAAG,OAAkE;AACrE,QAAA,OAAO,GAAG,oBAAO,CAAA;AACjB,QAAA,gBAAgB,GAAG,+BAAiB,CAAA;AAC1C,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAA,4DAA2B,EAAC,CAAC,CAAC,CAAC,CAAA;AAAlE,QAAA,gBAAgB,oBAAkD;AAClE,QAAA,mBAAmB,GAAG,0CAA2B,CAAA;AACjD,QAAA,cAAc,GAAG,0BAAY,CAAA;AAC7B,QAAA,QAAQ,GAAG,wBAAS,CAAA;AACpB,QAAA,cAAc,GAAG,wBAAS,CAAA;AAC1B,QAAA,QAAQ,GAAG,4BAAS,CAAA;AACpB,QAAA,OAAO,GAAG,0BAAO,CAAA;AACjB,QAAA,WAAW,GAAG,2BAAY,CAAA"}
|
package/dist/src/loop-utils.js
CHANGED
|
@@ -48,7 +48,7 @@ async function recursiveGenericFunction(item, callback, config = {}, addr$ = '',
|
|
|
48
48
|
else if ((0, is_object_1.isObject)(item)) {
|
|
49
49
|
if ((config === null || config === void 0 ? void 0 : config.disableCircularDependencyRemoval) !== true)
|
|
50
50
|
techFieldToAvoidCircularDependency.push(item);
|
|
51
|
-
await Promise.all(Object.entries(item).map(([key, val]) => recursiveGenericFunction(val, callback, config, addr$ ? addr$ + '.' : '' + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency)));
|
|
51
|
+
await Promise.all(Object.entries(item).map(([key, val]) => recursiveGenericFunction(val, callback, config, (addr$ ? addr$ + '.' : '') + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency)));
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -84,7 +84,7 @@ function recursiveGenericFunctionSync(item, callback, config = {}, addr$ = '', l
|
|
|
84
84
|
else if ((0, is_object_1.isObject)(item)) {
|
|
85
85
|
if ((config === null || config === void 0 ? void 0 : config.disableCircularDependencyRemoval) !== true)
|
|
86
86
|
techFieldToAvoidCircularDependency.push(item);
|
|
87
|
-
Object.entries(item).forEach(([key, val]) => recursiveGenericFunctionSync(val, callback, config, addr$ ? addr$ + '.' : '' + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency));
|
|
87
|
+
Object.entries(item).forEach(([key, val]) => recursiveGenericFunctionSync(val, callback, config, (addr$ ? addr$ + '.' : '') + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency));
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-utils.js","sourceRoot":"","sources":["../../src/loop-utils.ts"],"names":[],"mappings":";;;AAIA,+CAA8C;AAC9C,2CAAsC;AAEtC,SAAgB,IAAI,CAAwB,YAAoB,EAAE,QAA4E;IAC1I,MAAM,OAAO,GAAU,EAAE,CAAA;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC7C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;KAChD;IACD,OAAO,OAAO,CAAA;AAClB,CAAC;AAPD,oBAOC;AAEM,KAAK,UAAU,SAAS,CAAwB,YAAoB,EAAE,QAAuB;IAChG,MAAM,OAAO,GAAU,EAAE,CAAA;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;QACnC,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;KAClC;IACD,OAAO,OAAO,CAAA;AAClB,CAAC;AAND,8BAMC;AAMD;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,wBAAwB,CAAC,IAA2B,EAAE,QAA2B,EAAE,SAA0B,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,iBAAkC,EAAE,EAAE,MAAO,EAAE,qCAA4C,EAAE;IAC5O,IAAA,4BAAc,EAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE5B,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACpD,MAAM,MAAM,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,CAAA;QAExF,IAAI,MAAM,KAAK,KAAK,EAAE;YAClB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACrB,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gCAAgC,MAAK,IAAI;oBAAE,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACpG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CACtB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,kCAAkC,CAAC,CAC9H,CAAC,CAAA;aACL;iBAAM,IAAI,IAAA,oBAAQ,EAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gCAAgC,MAAK,IAAI;oBAAE,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACpG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CACtC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,kCAAkC,CAAC,
|
|
1
|
+
{"version":3,"file":"loop-utils.js","sourceRoot":"","sources":["../../src/loop-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/object-utils.js
CHANGED
|
@@ -6,6 +6,7 @@ const loop_utils_1 = require("./loop-utils");
|
|
|
6
6
|
const isset_1 = require("./isset");
|
|
7
7
|
const is_object_1 = require("./is-object");
|
|
8
8
|
const error_utils_2 = require("./error-utils");
|
|
9
|
+
const regexp_utils_1 = require("./regexp-utils");
|
|
9
10
|
/**
|
|
10
11
|
*
|
|
11
12
|
* @param {Object} object main object
|
|
@@ -42,7 +43,7 @@ exports.simpleObjectMaskOrSelect = simpleObjectMaskOrSelect;
|
|
|
42
43
|
function has(obj, addr) {
|
|
43
44
|
if (!(0, isset_1.isset)(obj) || typeof obj !== 'object')
|
|
44
45
|
return;
|
|
45
|
-
|
|
46
|
+
const propsArr = addr.replace(/\.?\[(\d+)\]/g, '.$1').split('.'); // replace a[3] => a.3;
|
|
46
47
|
let objChain = obj;
|
|
47
48
|
return propsArr.every(prop => {
|
|
48
49
|
objChain = objChain[prop];
|
|
@@ -74,11 +75,8 @@ function findByAddressAll(obj, addr, returnAddresses = false) {
|
|
|
74
75
|
(0, error_utils_1.err500IfNotSet)({ obj, addr });
|
|
75
76
|
if (addr === '')
|
|
76
77
|
return obj;
|
|
77
|
-
const addrRegexp = new RegExp('^' + addr
|
|
78
|
-
|
|
79
|
-
.replace(/\./g, '\\.') //
|
|
80
|
-
.replace(/\.\*/g, '.[^.]+') // replace * by [^. (all but a point)]
|
|
81
|
-
+ '$');
|
|
78
|
+
const addrRegexp = new RegExp('^' + (0, regexp_utils_1.escapeRegexp)(addr.replace(/\.?\[(\d+)\]/g, '.$1'), // replace .[4] AND [4] TO .4
|
|
79
|
+
{ parseStarChar: true, wildcardNotMatchingChars: '.[' }) + '$');
|
|
82
80
|
const matchingItems = [];
|
|
83
81
|
(0, loop_utils_1.recursiveGenericFunctionSync)(obj, (item, address) => {
|
|
84
82
|
if (addrRegexp.test(address))
|
|
@@ -160,7 +158,7 @@ function deepClone(obj, cache = []) {
|
|
|
160
158
|
return [];
|
|
161
159
|
newCache.push(obj);
|
|
162
160
|
copy = [];
|
|
163
|
-
for (
|
|
161
|
+
for (let i = 0, len = obj.length; i < len; i++) {
|
|
164
162
|
copy[i] = deepClone(obj[i], newCache);
|
|
165
163
|
}
|
|
166
164
|
return copy;
|
|
@@ -170,7 +168,7 @@ function deepClone(obj, cache = []) {
|
|
|
170
168
|
return {};
|
|
171
169
|
newCache.push(obj);
|
|
172
170
|
copy = {};
|
|
173
|
-
for (
|
|
171
|
+
for (const key in obj) {
|
|
174
172
|
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
175
173
|
copy[key] = deepClone(obj[key], newCache);
|
|
176
174
|
}
|
|
@@ -344,7 +342,7 @@ function flattenObject(data, config = {}) {
|
|
|
344
342
|
const seenObjects = []; // avoidCircular reference to infinite loop
|
|
345
343
|
const recurse = (cur, prop) => {
|
|
346
344
|
if (Array.isArray(cur)) {
|
|
347
|
-
|
|
345
|
+
const l = cur.length;
|
|
348
346
|
let i = 0;
|
|
349
347
|
if (withoutArraySyntax)
|
|
350
348
|
recurse(cur[0], prop);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":";;;AAIA,+CAA8C;AAC9C,6CAA2D;AAC3D,mCAA+B;AAC/B,2CAAsC;AACtC,+CAAgD;AAEhD;;;;;;GAMG;AACH,SAAgB,wBAAwB,CAAC,MAAqB,EAAE,sBAAgC,EAAE,MAAM,GAAG,IAAI,EAAE,sCAAsC,GAAG,KAAK;IAC3J,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACxC,IAAI,MAAM;YAAE,OAAO,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;;YACtD,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IACF,IAAI,sCAAsC,EAAE;QACxC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,MAAM,CAAC,eAAe,CAAC,CAAC,CAAA;QACrE,OAAO,MAAM,CAAA;KAChB;SAAM;QACH,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;YACrC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;YAC3D,OAAO,SAAS,CAAA;QACpB,CAAC,EAAE,EAAE,CAAC,CAAA;KACT;AACL,CAAC;AAfD,4DAeC;AAED;;;;GAIG;AACH,SAAgB,GAAG,CAAC,GAAkB,EAAE,IAAY;IAChD,IAAI,CAAC,IAAA,aAAK,EAAC,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAM;IAClD,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA,CAAC,uBAAuB;IACtF,IAAI,QAAQ,GAAG,GAAG,CAAA;IAClB,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QACzB,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QACzB,OAAO,IAAA,aAAK,EAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC,CAAC,CAAA;AACN,CAAC;AARD,kBAQC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,GAAkB,EAAE,IAAuB;IACrE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IACjC,IAAI,CAAC,IAAA,aAAK,EAAC,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAA;IAC7I,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA,CAAC,6BAA6B;IAC3H,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;QAC9C,IAAI,CAAC,IAAA,aAAK,EAAC,QAAQ,CAAC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,IAAA,aAAK,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAAE,OAAM;;YACjF,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC,EAAE,GAAG,CAAC,CAAA;IACP,OAAO,MAAM,CAAA;AACjB,CAAC;AATD,sCASC;AAMD,SAAgB,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,eAAe,GAAG,KAAK;IAC/D,IAAA,4BAAc,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7B,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,GAAG,CAAA;IAC3B,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,IAAI;SACnC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,6BAA6B;SAC7D,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE;SACxB,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,sCAAsC;UAChE,GAAG,CAAC,CAAA;IAEV,MAAM,aAAa,GAAU,EAAE,CAAA;IAE/B,IAAA,yCAA4B,EAAC,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;QAChD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IACF,OAAO,aAAa,CAAA;AACxB,CAAC;AAfD,4CAeC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAsC,GAAY,EAAE,IAAY,EAAE,IAAI,EAAE,UAA8C,EAAE;IACjJ,MAAM,EAAE,oBAAoB,GAAG,KAAK,EAAE,GAAG,OAAO,CAAA;IAChD,MAAM,eAAe,GAAG,CAAC,oBAAoB,CAAA;IAE7C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/D,IAAI,QAAQ,GAAQ,GAAG,CAAA;IACvB,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;QAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACzC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,IAAI,eAAe;gBAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAA;SAC9C;aAAM,IAAI,CAAC,IAAA,aAAK,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC/B,IAAI,IAAA,aAAK,EAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;;gBAClE,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;SAC5B;aAAM,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE;YAC5C,MAAM,IAAI,8BAAgB,CAAC,qDAAqD,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAA;SACtP;QACD,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACd,CAAC;AApBD,sCAoBC;AAED,SAAgB,iBAAiB,CAAsC,GAAY,EAAE,IAAY;IAC7F,OAAO,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAA;AAC9E,CAAC;AAFD,8CAEC;AAEY,QAAA,iBAAiB,GAAG,iBAAiB,CAAA;AAElD;;;;GAIG;AACH,SAAgB,qBAAqB,CAAsC,GAAY,EAAE,IAAY,EAAE,IAAI;IACvG,IAAI,CAAC,IAAA,aAAK,EAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAAE,OAAO,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;;QACtE,OAAO,GAAG,CAAA;AACnB,CAAC;AAHD,sDAGC;AAED,kGAAkG;AAClG,SAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,MAAM;IACvC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnB,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE;YACxB,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;SAC/B;IACL,CAAC,CAAC,CAAA;AACN,CAAC;AAND,kCAMC;AAED,SAAgB,WAAW,CAAsC,CAAU;IACvE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AACxC,CAAC;AAFD,kCAEC;AAED,kDAAkD;AAClD,SAAgB,SAAS,CAAsC,GAAY,EAAE,KAAK,GAAG,EAAE;IAEnF,IAAI,IAAiB,CAAA;IACrB,wDAAwD;IACxD,+EAA+E;IAC/E,MAAM,QAAQ,GAAU,CAAC,GAAG,KAAK,CAAC,CAAA;IAClC,IAAI,GAAG,YAAY,IAAI;QAAE,OAAO,IAAI,IAAI,CAAC,GAAG,CAAQ,CAAA;IAEpD,eAAe;IACf,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACpB,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,EAAS,CAAA;QAC5C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,IAAI,GAAG,EAAE,CAAA;QACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC5C,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAe,CAAC,CAAA;SAC/C;QACD,OAAO,IAAI,CAAA;KACd;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,EAAE;QAC5F,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,EAAS,CAAA;QAC5C,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,IAAI,GAAG,EAAE,CAAA;QACT,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE;YACjB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;gBAChD,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAe,CAAC,CAAA;aACnD;SACJ;QACD,OAAO,IAAI,CAAA;KACd;IAED,OAAO,GAAG,CAAA,CAAC,oBAAoB;AACnC,CAAC;AAhCD,8BAgCC;AAGD;;;GAGG;AACH,SAAgB,UAAU,CAAsC,GAAY,EAAE,MAAM;IAChF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;IAC9B,IAAA,yCAA4B,EAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE;QAC7D,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YAAE,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IACxE,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AAChB,CAAC;AAND,gCAMC;AACD;;;GAGG;AACH,SAAgB,eAAe,CAAC,GAAW,EAAE,IAAuB;IAChE,IAAI,OAAO,GAAG,GAAG,CAAA;IACjB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;QACtD,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC,WAAW,CAAC,CAAA;;YACpD,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;KACtC;AACL,CAAC;AARD,0CAQC;AAID,wDAAwD;AACxD,SAAgB,kBAAkB,CAAsC,CAAU;IAC9E,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,aAAK,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACxD,OAAO,CAAC,CAAA;AACZ,CAAC;AAHD,gDAGC;AAED,yDAAyD;AACzD,SAAgB,QAAQ,CAAsC,CAAU;IACpE,MAAM,QAAQ,GAAG,GAAG,EAAE,GAAG,MAAM,IAAI,8BAAgB,CAAC,wCAAwC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA,CAAC,CAAC,CAAA;IAC9G,OAAO,IAAI,KAAK,CAAC,CAAC,EAAE;QAChB,GAAG,EAAE,QAAQ;QACb,cAAc,EAAE,QAAQ;QACxB,cAAc,EAAE,QAAQ;KAC3B,CAAC,CAAA;AACN,CAAC;AAPD,4BAOC;AAED,+DAA+D;AAC/D,SAAgB,iBAAiB,CAAC,CAAC;IAC/B,OAAO,IAAI,KAAK,CAAC,CAAC,EAAE;QAChB,cAAc,EAAE,UAAU,IAAI,EAAE,GAAG,EAAE,KAAK;YACtC,IAAI,GAAG,IAAI,IAAI;gBAAE,MAAM,IAAI,8BAAgB,CAAC,gCAAgC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;iBACtH;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;gBACjB,OAAO,IAAI,CAAA;aACd;QACL,CAAC;QACD,cAAc,EAAE,UAAU,CAAC,EAAE,GAAG;YAC5B,MAAM,IAAI,8BAAgB,CAAC,8BAA8B,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;QAC5G,CAAC;KACJ,CAAC,CAAA;AACN,CAAC;AAbD,8CAaC;AAED,kEAAkE;AAClE,SAAgB,cAAc,CAAC,MAAM;IACjC,IAAA,yCAA4B,EAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE;QACrE,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,MAAM,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IACzE,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACjB,CAAC;AALD,wCAKC;AAED,SAAgB,2BAA2B,CAAC,GAAG;IAC3C,IAAI,GAAG,EAAE;QACL,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACpC,IAAI,CAAC,IAAA,aAAK,EAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC3B,OAAO,YAAY,CAAC,GAAG,CAAC,CAAA;aAC3B;QACL,CAAC,CAAC,CAAA;QACF,OAAO,eAAe,CAAC,YAAY,CAAC,CAAA;KACvC;;QAAM,OAAO,GAAG,CAAA;AACrB,CAAC;AAVD,kEAUC;AAED,SAAgB,0BAA0B,CAAC,YAAY,EAAE,SAAS,GAAG,IAAI;IACrE,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;SACpB,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;SAC5F,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IAC5D,OAAO,UAAU,CAAA;AACrB,CAAC;AAPD,gEAOC;AAED;;;;;;;GAOG;AACH,SAAgB,gBAAgB,CAA2D,GAAY,EAAE,IAAU,EAAE,YAAY,EAAE,QAAyB;IACxJ,IAAA,4BAAc,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAA;IACrD,IAAI,CAAC,IAAA,aAAK,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,GAAG,YAAY,CAAA;IAC/C,IAAI,QAAQ;QAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IACjC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAA;AACpB,CAAC;AALD,4CAKC;AAGD;;;iDAGiD;AACjD,SAAgB,SAAS,CAOvB,GAAG,OAAsC;IACvC,OAAO,qBAAqB,CACxB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAC5G,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,EAC/D,SAAS,EACT,GAAG,OAAO,CACb,CAAA;AACL,CAAC;AAdD,8BAcC;AAED;;;kDAGkD;AAClD,SAAgB,uBAAuB,CAOrC,GAAG,OAAsC;IACvC,OAAO,qBAAqB,CACxB,SAAS,EACT,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,uBAAuB,CAAC,WAAW,EAAE,UAAU,CAAC,EAC7E,SAAS,EACT,GAAG,OAAO,CACb,CAAA;AACL,CAAC;AAdD,0DAcC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAQjC,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,kBAAkB,EAC5D,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EACtC,GAAG,OAAsC;IAEzC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,cAAc,EAAE,GAAG,EAAE,EAAE;QAC1C,IAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC9D,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;gBACvC,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;gBAE3B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBACzD,cAAc,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;iBACnE;qBAAM,IAAI,IAAA,oBAAQ,EAAC,WAAW,CAAC,IAAI,IAAA,oBAAQ,EAAC,UAAU,CAAC,EAAE;oBACtD,cAAc,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;iBACpE;qBAAM;oBACH,cAAc,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;iBACjE;YACL,CAAC,CAAC,CAAA;QAEF,OAAO,cAAc,CAAA;IACzB,CAAC,EAAE,EAAE,CAAQ,CAAA;AACjB,CAAC;AA5BD,sDA4BC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,IAAI,EAAE,SAA8E,EAAE;IAChH,MAAM,EAAE,kBAAkB,GAAG,KAAK,EAAE,uBAAuB,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;IAC9E,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,MAAM,WAAW,GAAU,EAAE,CAAA,CAAC,2CAA2C;IACzE,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAA;YAClB,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,IAAI,kBAAkB;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;iBACxC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;gBACzF,IAAI,CAAC,IAAI,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;aAChC;SACJ;aAAM,IAAI,IAAA,oBAAQ,EAAC,GAAG,CAAC,EAAE,EAAE,YAAY;YACpC,IAAI;gBACA,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA,CAAC,iDAAiD;;oBAChG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAE1B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;gBAE7C,KAAK,MAAM,CAAC,IAAI,GAAG;oBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA,CAAC,oDAAoD;gBAE3I,IAAI,OAAO,IAAI,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;aACzC;YAAC,OAAO,KAAK,EAAE;gBACZ,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAA;aAC3E;SACJ;;YAAM,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;IAC7B,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACjB,OAAO,MAAM,CAAA;AACjB,CAAC;AA9BD,sCA8BC;AAED,+BAA+B;AAC/B,SAAgB,eAAe,CAAC,IAAyB;IACrD,MAAM,IAAI,GAAG,EAAE,CAAA;IACf,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAClF,OAAO,IAAI,CAAA;AACf,CAAC;AAJD,0CAIC"}
|
|
1
|
+
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/** ESCAPE REGEXP
|
|
2
|
-
* * parseStarChar config will replace '*' by '.*?' which is the best for 'match all until'
|
|
2
|
+
* * parseStarChar => config will replace '*' by '.*?' which is the best for 'match all until'
|
|
3
|
+
* * wildcardNotMatchingChars => list of characters not to match, eg: '.[' will match all except '.' and '[' /!\ will be outputted as a regexp [^.[] so don't forget to ESCAPE characters like ']' => '\]'
|
|
3
4
|
*/
|
|
4
5
|
export declare function escapeRegexp(str: string, config?: {
|
|
5
6
|
parseStarChar?: boolean;
|
|
7
|
+
wildcardNotMatchingChars?: string;
|
|
6
8
|
}): string;
|
|
7
9
|
/** Get first match of the first capturing group of regexp
|
|
8
10
|
* Eg: const basePath = firstMatch(apiFile, /basePath = '(.*?)'/); will get what is inside quotes
|
package/dist/src/regexp-utils.js
CHANGED
|
@@ -6,12 +6,13 @@ exports.allMatches = exports.firstMatch = exports.escapeRegexp = void 0;
|
|
|
6
6
|
//----------------------------------------
|
|
7
7
|
const logger_utils_1 = require("./logger-utils");
|
|
8
8
|
/** ESCAPE REGEXP
|
|
9
|
-
* * parseStarChar config will replace '*' by '.*?' which is the best for 'match all until'
|
|
9
|
+
* * parseStarChar => config will replace '*' by '.*?' which is the best for 'match all until'
|
|
10
|
+
* * wildcardNotMatchingChars => list of characters not to match, eg: '.[' will match all except '.' and '[' /!\ will be outputted as a regexp [^.[] so don't forget to ESCAPE characters like ']' => '\]'
|
|
10
11
|
*/
|
|
11
12
|
function escapeRegexp(str, config = {}) {
|
|
12
|
-
const { parseStarChar = false } = config;
|
|
13
|
+
const { parseStarChar = false, wildcardNotMatchingChars } = config;
|
|
13
14
|
if (parseStarChar)
|
|
14
|
-
return str.replace(/[-[\]{}()+?.,\\^$|#\s]/g, '\\$&').replace(/\*/g, '.*?');
|
|
15
|
+
return str.replace(/[-[\]{}()+?.,\\^$|#\s]/g, '\\$&').replace(/\*/g, wildcardNotMatchingChars ? `[^${wildcardNotMatchingChars}]` : '.*?');
|
|
15
16
|
else
|
|
16
17
|
return str.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
|
|
17
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regexp-utils.js","sourceRoot":"","sources":["../../src/regexp-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,eAAe;AACf,0CAA0C;AAC1C,iDAAkC;AAElC
|
|
1
|
+
{"version":3,"file":"regexp-utils.js","sourceRoot":"","sources":["../../src/regexp-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,eAAe;AACf,0CAA0C;AAC1C,iDAAkC;AAElC;;;GAGG;AACH,SAAgB,YAAY,CAAC,GAAW,EAAE,SAAyE,EAAE;IACjH,MAAM,EAAE,aAAa,GAAG,KAAK,EAAE,wBAAwB,EAAE,GAAG,MAAM,CAAA;IAClE,IAAI,aAAa;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,KAAK,wBAAwB,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;;QACvJ,OAAO,GAAG,CAAC,OAAO,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAA;AAC/D,CAAC;AAJD,oCAIC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW,EAAE,MAAc,IAAwB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC;AAAnH,gCAAmH;AAEnH;;;GAGG;AACH,SAAgB,UAAU,CAAC,GAAW,EAAE,GAAW;IAC/C,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,IAAI,OAAO,CAAA;IACX,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,gBAAC,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAA;SAC3F;QACD,GAAG,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC1B,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YAC9B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACjB,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE;gBACV,gBAAC,CAAC,KAAK,CAAC,OAAO,EAAE,oDAAoD,CAAC,CAAA;gBACtE,MAAK;aACR;SACJ;KACJ;IACD,OAAO,GAAG,CAAA;AACd,CAAC;AAhBD,gCAgBC"}
|
package/index.ts
CHANGED
|
@@ -26,8 +26,9 @@ import { shuffleArray, noDuplicateFilter } from './src/array-utils'
|
|
|
26
26
|
import { issetOr, validator } from './src/validation-utils'
|
|
27
27
|
import { objFilterUndefinedRecursive } from './src/object-utils'
|
|
28
28
|
import { removeCircularJSONstringify } from './src/remove-circular-json-stringify'
|
|
29
|
+
import { escapeRegexp } from './src/regexp-utils'
|
|
29
30
|
|
|
30
|
-
// ALIASES
|
|
31
|
+
// ALIASES mainly used for readability
|
|
31
32
|
export const int = (n: string | number) => typeof n === 'number' ? n : parseInt(n)
|
|
32
33
|
export const average = moyenne
|
|
33
34
|
export const arrayUniqueValue = noDuplicateFilter
|
|
@@ -36,5 +37,6 @@ export const removeUndefinedKeys = objFilterUndefinedRecursive
|
|
|
36
37
|
export const randomizeArray = shuffleArray
|
|
37
38
|
export const dashCase = kebabCase
|
|
38
39
|
export const underscoreCase = snakeCase
|
|
39
|
-
export const required = validator
|
|
40
|
-
export const orIsset = issetOr
|
|
40
|
+
export const required = validator
|
|
41
|
+
export const orIsset = issetOr
|
|
42
|
+
export const parseRegexp = escapeRegexp
|
package/package.json
CHANGED
package/src/loop-utils.ts
CHANGED
|
@@ -56,7 +56,7 @@ export async function recursiveGenericFunction(item: ObjectGeneric | any[], call
|
|
|
56
56
|
} else if (isObject(item)) {
|
|
57
57
|
if (config?.disableCircularDependencyRemoval !== true) techFieldToAvoidCircularDependency.push(item)
|
|
58
58
|
await Promise.all(Object.entries(item).map(
|
|
59
|
-
([key, val]) => recursiveGenericFunction(val, callback, config, addr$ ? addr$ + '.' : '' + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency)
|
|
59
|
+
([key, val]) => recursiveGenericFunction(val, callback, config, (addr$ ? addr$ + '.' : '') + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency)
|
|
60
60
|
))
|
|
61
61
|
}
|
|
62
62
|
}
|
|
@@ -92,7 +92,7 @@ export function recursiveGenericFunctionSync(item: ObjectGeneric | any[], callba
|
|
|
92
92
|
item.forEach((e, i) => recursiveGenericFunctionSync(e, callback, config, addr$ + '[' + i + ']', i, item, techFieldToAvoidCircularDependency))
|
|
93
93
|
} else if (isObject(item)) {
|
|
94
94
|
if (config?.disableCircularDependencyRemoval !== true) techFieldToAvoidCircularDependency.push(item)
|
|
95
|
-
Object.entries(item).forEach(([key, val]) => recursiveGenericFunctionSync(val, callback, config, addr$ ? addr$ + '.' : '' + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency))
|
|
95
|
+
Object.entries(item).forEach(([key, val]) => recursiveGenericFunctionSync(val, callback, config, (addr$ ? addr$ + '.' : '') + key.replace(/\./g, '%'), key, item, techFieldToAvoidCircularDependency))
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
}
|
package/src/object-utils.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
//----------------------------------------
|
|
2
2
|
// OBJECT UTILS
|
|
3
3
|
//----------------------------------------
|
|
4
|
-
import { ObjectGeneric } from
|
|
5
|
-
import { err500IfNotSet } from
|
|
6
|
-
import { recursiveGenericFunctionSync } from
|
|
7
|
-
import { isset } from
|
|
8
|
-
import { isObject } from
|
|
9
|
-
import { DescriptiveError } from
|
|
4
|
+
import { ObjectGeneric } from './types'
|
|
5
|
+
import { err500IfNotSet } from './error-utils'
|
|
6
|
+
import { recursiveGenericFunctionSync } from './loop-utils'
|
|
7
|
+
import { isset } from './isset'
|
|
8
|
+
import { isObject } from './is-object'
|
|
9
|
+
import { DescriptiveError } from './error-utils'
|
|
10
|
+
import { escapeRegexp } from './regexp-utils'
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
|
-
*
|
|
13
|
+
*
|
|
13
14
|
* @param {Object} object main object
|
|
14
15
|
* @param {String[]} maskedOrSelectedFields array of fields
|
|
15
16
|
* @param {Boolean} isMask default: true; determine the behavior of the function. If is mask, selected fields will not appear in the resulting object. If it's a select, only selected fields will appear.
|
|
@@ -39,7 +40,7 @@ export function simpleObjectMaskOrSelect(object: ObjectGeneric, maskedOrSelected
|
|
|
39
40
|
*/
|
|
40
41
|
export function has(obj: ObjectGeneric, addr: string) {
|
|
41
42
|
if (!isset(obj) || typeof obj !== 'object') return
|
|
42
|
-
|
|
43
|
+
const propsArr = addr.replace(/\.?\[(\d+)\]/g, '.$1').split('.') // replace a[3] => a.3;
|
|
43
44
|
let objChain = obj
|
|
44
45
|
return propsArr.every(prop => {
|
|
45
46
|
objChain = objChain[prop]
|
|
@@ -70,11 +71,10 @@ export function findByAddressAll(obj: Record<string, any>, addr: string, returnA
|
|
|
70
71
|
export function findByAddressAll(obj, addr, returnAddresses = false) {
|
|
71
72
|
err500IfNotSet({ obj, addr })
|
|
72
73
|
if (addr === '') return obj
|
|
73
|
-
const addrRegexp = new RegExp('^' +
|
|
74
|
-
.replace(/\.?\[(\d+)\]/g, '.$1') // replace .[4] AND [4] TO .4
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
+ '$')
|
|
74
|
+
const addrRegexp = new RegExp('^' + escapeRegexp(
|
|
75
|
+
addr.replace(/\.?\[(\d+)\]/g, '.$1'), // replace .[4] AND [4] TO .4
|
|
76
|
+
{ parseStarChar: true, wildcardNotMatchingChars: '.[' }) + '$'
|
|
77
|
+
)
|
|
78
78
|
|
|
79
79
|
const matchingItems: any[] = []
|
|
80
80
|
|
|
@@ -152,7 +152,7 @@ export function deepClone<MainObj extends Record<string, any>>(obj: MainObj, cac
|
|
|
152
152
|
if (newCache.includes(obj)) return [] as any
|
|
153
153
|
newCache.push(obj)
|
|
154
154
|
copy = []
|
|
155
|
-
for (
|
|
155
|
+
for (let i = 0, len = obj.length; i < len; i++) {
|
|
156
156
|
copy[i] = deepClone(obj[i], newCache as any)
|
|
157
157
|
}
|
|
158
158
|
return copy
|
|
@@ -162,7 +162,7 @@ export function deepClone<MainObj extends Record<string, any>>(obj: MainObj, cac
|
|
|
162
162
|
if (newCache.includes(obj)) return {} as any
|
|
163
163
|
newCache.push(obj)
|
|
164
164
|
copy = {}
|
|
165
|
-
for (
|
|
165
|
+
for (const key in obj) {
|
|
166
166
|
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
167
167
|
copy[key] = deepClone(obj[key], newCache as any)
|
|
168
168
|
}
|
|
@@ -283,12 +283,12 @@ export function ensureObjectProp<MainObj extends Record<string, any>, Addr exten
|
|
|
283
283
|
* @return {Object} new object result from merge
|
|
284
284
|
* NOTE: objects in params will NOT be modified*/
|
|
285
285
|
export function mergeDeep<
|
|
286
|
-
O1 extends Record<string, any>,
|
|
287
|
-
O2 extends Record<string, any> = Record<string, any>,
|
|
288
|
-
O3 extends Record<string, any> = Record<string, any>,
|
|
289
|
-
O4 extends Record<string, any> = Record<string, any>,
|
|
290
|
-
O5 extends Record<string, any> = Record<string, any>,
|
|
291
|
-
O6 extends Record<string, any> = Record<string, any>,
|
|
286
|
+
O1 extends Record<string, any>,
|
|
287
|
+
O2 extends Record<string, any> = Record<string, any>,
|
|
288
|
+
O3 extends Record<string, any> = Record<string, any>,
|
|
289
|
+
O4 extends Record<string, any> = Record<string, any>,
|
|
290
|
+
O5 extends Record<string, any> = Record<string, any>,
|
|
291
|
+
O6 extends Record<string, any> = Record<string, any>,
|
|
292
292
|
>(...objects: [O1, O2?, O3?, O4?, O5?, O6?]) : O1 & O2 & O3 & O4 & O5 & O6 {
|
|
293
293
|
return mergeDeepConfigurable(
|
|
294
294
|
(previousVal, currentVal) => [...previousVal, ...currentVal].filter((elm, i, arr) => arr.indexOf(elm) === i),
|
|
@@ -303,12 +303,12 @@ O6 extends Record<string, any> = Record<string, any>,
|
|
|
303
303
|
* @return {Object} new object result from merge
|
|
304
304
|
* NOTE: objects in params will NOT be modified */
|
|
305
305
|
export function mergeDeepOverrideArrays<
|
|
306
|
-
O1 extends Record<string, any>,
|
|
307
|
-
O2 extends Record<string, any> = Record<string, any>,
|
|
308
|
-
O3 extends Record<string, any> = Record<string, any>,
|
|
309
|
-
O4 extends Record<string, any> = Record<string, any>,
|
|
310
|
-
O5 extends Record<string, any> = Record<string, any>,
|
|
311
|
-
O6 extends Record<string, any> = Record<string, any>,
|
|
306
|
+
O1 extends Record<string, any>,
|
|
307
|
+
O2 extends Record<string, any> = Record<string, any>,
|
|
308
|
+
O3 extends Record<string, any> = Record<string, any>,
|
|
309
|
+
O4 extends Record<string, any> = Record<string, any>,
|
|
310
|
+
O5 extends Record<string, any> = Record<string, any>,
|
|
311
|
+
O6 extends Record<string, any> = Record<string, any>,
|
|
312
312
|
>(...objects: [O1, O2?, O3?, O4?, O5?, O6?]) : O1 & O2 & O3 & O4 & O5 & O6 {
|
|
313
313
|
return mergeDeepConfigurable(
|
|
314
314
|
undefined,
|
|
@@ -334,12 +334,12 @@ export function mergeDeepConfigurable<
|
|
|
334
334
|
O5 extends Record<string, any> = Record<string, any>,
|
|
335
335
|
O6 extends Record<string, any> = Record<string, any>,
|
|
336
336
|
>(
|
|
337
|
-
replacerForArrays = (prev, curr) => curr, replacerForObjects,
|
|
338
|
-
replacerDefault = (prev, curr) => curr,
|
|
337
|
+
replacerForArrays = (prev, curr) => curr, replacerForObjects,
|
|
338
|
+
replacerDefault = (prev, curr) => curr,
|
|
339
339
|
...objects: [O1, O2?, O3?, O4?, O5?, O6?]
|
|
340
340
|
): O1 & O2 & O3 & O4 & O5 & O6 {
|
|
341
341
|
return objects.reduce((actuallyMerged, obj) => {
|
|
342
|
-
if(obj && typeof obj === 'object') Object.keys(obj).forEach(key => {
|
|
342
|
+
if (obj && typeof obj === 'object') Object.keys(obj).forEach(key => {
|
|
343
343
|
const previousVal = actuallyMerged[key]
|
|
344
344
|
const currentVal = obj[key]
|
|
345
345
|
|
|
@@ -365,7 +365,7 @@ export function flattenObject(data, config: { withoutArraySyntax?: boolean, with
|
|
|
365
365
|
const seenObjects: any[] = [] // avoidCircular reference to infinite loop
|
|
366
366
|
const recurse = (cur, prop) => {
|
|
367
367
|
if (Array.isArray(cur)) {
|
|
368
|
-
|
|
368
|
+
const l = cur.length
|
|
369
369
|
let i = 0
|
|
370
370
|
if (withoutArraySyntax) recurse(cur[0], prop)
|
|
371
371
|
else {
|
package/src/regexp-utils.ts
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
//----------------------------------------
|
|
2
2
|
// REGEXP UTILS
|
|
3
3
|
//----------------------------------------
|
|
4
|
-
import { C } from
|
|
4
|
+
import { C } from './logger-utils'
|
|
5
5
|
|
|
6
6
|
/** ESCAPE REGEXP
|
|
7
|
-
* * parseStarChar config will replace '*' by '.*?' which is the best for 'match all until'
|
|
7
|
+
* * parseStarChar => config will replace '*' by '.*?' which is the best for 'match all until'
|
|
8
|
+
* * wildcardNotMatchingChars => list of characters not to match, eg: '.[' will match all except '.' and '[' /!\ will be outputted as a regexp [^.[] so don't forget to ESCAPE characters like ']' => '\]'
|
|
8
9
|
*/
|
|
9
|
-
export function escapeRegexp(str: string, config: { parseStarChar?: boolean } = {}): string {
|
|
10
|
-
const { parseStarChar = false } = config
|
|
11
|
-
if (parseStarChar) return str.replace(/[-[\]{}()+?.,\\^$|#\s]/g, '\\$&').replace(/\*/g, '.*?')
|
|
10
|
+
export function escapeRegexp(str: string, config: { parseStarChar?: boolean, wildcardNotMatchingChars?: string } = {}): string {
|
|
11
|
+
const { parseStarChar = false, wildcardNotMatchingChars } = config
|
|
12
|
+
if (parseStarChar) return str.replace(/[-[\]{}()+?.,\\^$|#\s]/g, '\\$&').replace(/\*/g, wildcardNotMatchingChars ? `[^${wildcardNotMatchingChars}]` : '.*?')
|
|
12
13
|
else return str.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&')
|
|
13
14
|
}
|
|
14
15
|
|