topkat-utils 1.2.1 → 1.2.2
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 +3 -0
- package/dist/index.js +8 -12
- package/dist/index.js.map +1 -1
- package/dist/src/array-utils.js +23 -45
- package/dist/src/array-utils.js.map +1 -1
- package/dist/src/clean-stack-trace.js +7 -7
- package/dist/src/clean-stack-trace.js.map +1 -1
- package/dist/src/config.js +5 -16
- package/dist/src/config.js.map +1 -1
- package/dist/src/date-utils.js +89 -139
- package/dist/src/date-utils.js.map +1 -1
- package/dist/src/env-utils.js +4 -4
- package/dist/src/env-utils.js.map +1 -1
- package/dist/src/error-utils.js +39 -116
- package/dist/src/error-utils.js.map +1 -1
- package/dist/src/isset.js +2 -6
- package/dist/src/isset.js.map +1 -1
- package/dist/src/logger-utils.js +138 -267
- package/dist/src/logger-utils.js.map +1 -1
- package/dist/src/loop-utils.js +35 -121
- package/dist/src/loop-utils.js.map +1 -1
- package/dist/src/math-utils.js +8 -24
- package/dist/src/math-utils.js.map +1 -1
- package/dist/src/mongo-utils.js +6 -20
- package/dist/src/mongo-utils.js.map +1 -1
- package/dist/src/object-utils.js +74 -114
- package/dist/src/object-utils.js.map +1 -1
- package/dist/src/regexp-utils.js +6 -7
- package/dist/src/regexp-utils.js.map +1 -1
- package/dist/src/remove-circular-json-stringify.js +4 -5
- package/dist/src/remove-circular-json-stringify.js.map +1 -1
- package/dist/src/string-utils.js +49 -107
- package/dist/src/string-utils.js.map +1 -1
- package/dist/src/tests-utils.js +19 -22
- package/dist/src/tests-utils.js.map +1 -1
- package/dist/src/timer-utils.js +37 -121
- package/dist/src/timer-utils.js.map +1 -1
- package/dist/src/transaction-utils.js +44 -129
- package/dist/src/transaction-utils.js.map +1 -1
- package/dist/src/validation-utils.js +79 -133
- package/dist/src/validation-utils.js.map +1 -1
- package/dist/src/wtf-utils.js +35 -40
- package/dist/src/wtf-utils.js.map +1 -1
- package/package.json +4 -4
- package/tsconfig.json +1 -1
package/dist/src/object-utils.js
CHANGED
|
@@ -1,20 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
-
if (ar || !(i in from)) {
|
|
5
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
-
ar[i] = from[i];
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.unflattenObject = exports.flattenObject = exports.mergeDeepConfigurable = exports.mergeDeepOverrideArrays = exports.mergeDeep = exports.ensureObjectProp = exports.sortObjKeyAccordingToValue = exports.objFilterUndefinedRecursive = exports.readOnlyForAll = exports.reassignForbidden = exports.readOnly = exports.objFilterUndefined = exports.deleteByAddress = exports.filterKeys = exports.deepClone = exports.cloneObject = exports.mergeMixins = exports.objForceWriteIfNotSet = exports.objForceWrite = exports.findByAddressAll = exports.findByAddress = exports.has = exports.simpleObjectMaskOrSelect = void 0;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
4
|
+
const error_utils_1 = require("./error-utils");
|
|
5
|
+
const loop_utils_1 = require("./loop-utils");
|
|
6
|
+
const isset_1 = require("./isset");
|
|
7
|
+
const is_object_1 = require("./is-object");
|
|
8
|
+
const error_utils_2 = require("./error-utils");
|
|
18
9
|
/**
|
|
19
10
|
*
|
|
20
11
|
* @param {Object} object main object
|
|
@@ -22,22 +13,20 @@ var error_utils_2 = require("./error-utils");
|
|
|
22
13
|
* @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.
|
|
23
14
|
* @param {Boolean} deleteKeysInsteadOfReturningAnewObject default:false; modify the existing object instead of creating a new instance
|
|
24
15
|
*/
|
|
25
|
-
function simpleObjectMaskOrSelect(object, maskedOrSelectedFields, isMask, deleteKeysInsteadOfReturningAnewObject) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var allKeys = Object.keys(object);
|
|
29
|
-
var keysToMask = allKeys.filter(function (keyName) {
|
|
16
|
+
function simpleObjectMaskOrSelect(object, maskedOrSelectedFields, isMask = true, deleteKeysInsteadOfReturningAnewObject = false) {
|
|
17
|
+
const allKeys = Object.keys(object);
|
|
18
|
+
const keysToMask = allKeys.filter(keyName => {
|
|
30
19
|
if (isMask)
|
|
31
20
|
return maskedOrSelectedFields.includes(keyName);
|
|
32
21
|
else
|
|
33
22
|
return !maskedOrSelectedFields.includes(keyName);
|
|
34
23
|
});
|
|
35
24
|
if (deleteKeysInsteadOfReturningAnewObject) {
|
|
36
|
-
keysToMask.forEach(
|
|
25
|
+
keysToMask.forEach(keyNameToDelete => delete object[keyNameToDelete]);
|
|
37
26
|
return object;
|
|
38
27
|
}
|
|
39
28
|
else {
|
|
40
|
-
return allKeys.reduce(
|
|
29
|
+
return allKeys.reduce((newObject, key) => {
|
|
41
30
|
if (!keysToMask.includes(key))
|
|
42
31
|
newObject[key] = object[key];
|
|
43
32
|
return newObject;
|
|
@@ -53,9 +42,9 @@ exports.simpleObjectMaskOrSelect = simpleObjectMaskOrSelect;
|
|
|
53
42
|
function has(obj, addr) {
|
|
54
43
|
if (!(0, isset_1.isset)(obj) || typeof obj !== 'object')
|
|
55
44
|
return;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
return propsArr.every(
|
|
45
|
+
let propsArr = addr.replace(/\.?\[(\d+)\]/g, '.$1').split('.'); // replace a[3] => a.3;
|
|
46
|
+
let objChain = obj;
|
|
47
|
+
return propsArr.every(prop => {
|
|
59
48
|
objChain = objChain[prop];
|
|
60
49
|
return (0, isset_1.isset)(objChain);
|
|
61
50
|
});
|
|
@@ -71,8 +60,8 @@ function findByAddress(obj, addr) {
|
|
|
71
60
|
return obj;
|
|
72
61
|
if (!(0, isset_1.isset)(obj) || typeof obj !== 'object')
|
|
73
62
|
return console.warn('Main object in `findByAddress` function is undefined or has the wrong type');
|
|
74
|
-
|
|
75
|
-
|
|
63
|
+
const propsArr = addr.replace(/\.?\[(\d+)\]/g, '.$1').split('.'); // replace .[4] AND [4] TO .4
|
|
64
|
+
const objRef = propsArr.reduce((objChain, prop) => {
|
|
76
65
|
if (!(0, isset_1.isset)(objChain) || typeof objChain !== 'object' || !(0, isset_1.isset)(objChain[prop]))
|
|
77
66
|
return;
|
|
78
67
|
else
|
|
@@ -81,18 +70,17 @@ function findByAddress(obj, addr) {
|
|
|
81
70
|
return objRef;
|
|
82
71
|
}
|
|
83
72
|
exports.findByAddress = findByAddress;
|
|
84
|
-
function findByAddressAll(obj, addr, returnAddresses) {
|
|
85
|
-
|
|
86
|
-
(0, error_utils_1.err500IfNotSet)({ obj: obj, addr: addr });
|
|
73
|
+
function findByAddressAll(obj, addr, returnAddresses = false) {
|
|
74
|
+
(0, error_utils_1.err500IfNotSet)({ obj, addr });
|
|
87
75
|
if (addr === '')
|
|
88
76
|
return obj;
|
|
89
|
-
|
|
77
|
+
const addrRegexp = new RegExp('^' + addr
|
|
90
78
|
.replace(/\.?\[(\d+)\]/g, '.$1') // replace .[4] AND [4] TO .4
|
|
91
79
|
.replace(/\./g, '\\.')
|
|
92
80
|
.replace(/\.\*/g, '.[^.]+') // replace * by [^. (all but a point)]
|
|
93
81
|
+ '$');
|
|
94
|
-
|
|
95
|
-
(0, loop_utils_1.recursiveGenericFunctionSync)(obj,
|
|
82
|
+
const matchingItems = [];
|
|
83
|
+
(0, loop_utils_1.recursiveGenericFunctionSync)(obj, (item, address) => {
|
|
96
84
|
if (addrRegexp.test(address))
|
|
97
85
|
matchingItems.push(returnAddresses ? [address, item] : item);
|
|
98
86
|
});
|
|
@@ -103,21 +91,21 @@ exports.findByAddressAll = findByAddressAll;
|
|
|
103
91
|
* NOTE: doesn't work with arrays
|
|
104
92
|
*/
|
|
105
93
|
function objForceWrite(obj, addr, item) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
chunks.forEach(
|
|
109
|
-
|
|
94
|
+
const chunks = addr.replace(/\.?\[(\d+)\]/g, '.[$1').split('.');
|
|
95
|
+
let lastItem = obj;
|
|
96
|
+
chunks.forEach((chunkRaw, i) => {
|
|
97
|
+
const chunk = chunkRaw.replace(/^\[/, '');
|
|
110
98
|
if (i === chunks.length - 1)
|
|
111
99
|
lastItem[chunk] = item;
|
|
112
100
|
else if (!(0, isset_1.isset)(lastItem[chunk])) {
|
|
113
|
-
|
|
101
|
+
const nextChunk = chunks[i + 1];
|
|
114
102
|
if ((0, isset_1.isset)(nextChunk) && nextChunk.startsWith('['))
|
|
115
103
|
lastItem[chunk] = [];
|
|
116
104
|
else
|
|
117
105
|
lastItem[chunk] = {};
|
|
118
106
|
}
|
|
119
107
|
else if (typeof lastItem[chunk] !== 'object')
|
|
120
|
-
throw new error_utils_2.DescriptiveError(
|
|
108
|
+
throw new error_utils_2.DescriptiveError(`itemNotTypeObjectOrArrayInAddrChainForObjForceWrite`, { code: 500, origin: 'Validator', chunks, actualValueOfItem: lastItem[chunk], actualChunk: chunk });
|
|
121
109
|
lastItem = lastItem[chunk];
|
|
122
110
|
});
|
|
123
111
|
}
|
|
@@ -133,13 +121,9 @@ function objForceWriteIfNotSet(obj, addr, item) {
|
|
|
133
121
|
}
|
|
134
122
|
exports.objForceWriteIfNotSet = objForceWriteIfNotSet;
|
|
135
123
|
/** Merge mixins into class. Use it in the constructor like: mergeMixins(this, {myMixin: true}) */
|
|
136
|
-
function mergeMixins(that) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
mixins[_i - 1] = arguments[_i];
|
|
140
|
-
}
|
|
141
|
-
mixins.forEach(function (mixin) {
|
|
142
|
-
for (var method in mixin) {
|
|
124
|
+
function mergeMixins(that, ...mixins) {
|
|
125
|
+
mixins.forEach(mixin => {
|
|
126
|
+
for (const method in mixin) {
|
|
143
127
|
that[method] = mixin[method];
|
|
144
128
|
}
|
|
145
129
|
});
|
|
@@ -150,12 +134,11 @@ function cloneObject(o) {
|
|
|
150
134
|
}
|
|
151
135
|
exports.cloneObject = cloneObject;
|
|
152
136
|
/** Deep clone. WILL REMOVE circular references */
|
|
153
|
-
function deepClone(obj, cache) {
|
|
154
|
-
|
|
155
|
-
var copy;
|
|
137
|
+
function deepClone(obj, cache = []) {
|
|
138
|
+
let copy;
|
|
156
139
|
// usefull to not modify 1st level objet by lower levels
|
|
157
140
|
// this is required for the same object to be referenced not in a redundant way
|
|
158
|
-
|
|
141
|
+
const newCache = [...cache];
|
|
159
142
|
if (obj instanceof Date)
|
|
160
143
|
return new Date(obj);
|
|
161
144
|
// Handle Array
|
|
@@ -189,8 +172,8 @@ exports.deepClone = deepClone;
|
|
|
189
172
|
* @param {function} filterFunc function that returns true if the key match the wanted criteria
|
|
190
173
|
*/
|
|
191
174
|
function filterKeys(obj, filter) {
|
|
192
|
-
|
|
193
|
-
(0, loop_utils_1.recursiveGenericFunctionSync)(obj,
|
|
175
|
+
const clone = cloneObject(obj);
|
|
176
|
+
(0, loop_utils_1.recursiveGenericFunctionSync)(obj, (item, addr, lastElementKey) => {
|
|
194
177
|
if (!filter(lastElementKey))
|
|
195
178
|
deleteByAddress(clone, addr.split('.'));
|
|
196
179
|
});
|
|
@@ -202,21 +185,21 @@ exports.filterKeys = filterKeys;
|
|
|
202
185
|
* @param {Array} addr addressArray on which to delete the property
|
|
203
186
|
*/
|
|
204
187
|
function deleteByAddress(obj, addr) {
|
|
205
|
-
|
|
206
|
-
for (
|
|
188
|
+
let current = obj;
|
|
189
|
+
for (let i = 0; i < addr.length - 2; i++)
|
|
207
190
|
current = current[addr[i]];
|
|
208
191
|
delete current[addr[addr.length - 1]];
|
|
209
192
|
}
|
|
210
193
|
exports.deleteByAddress = deleteByAddress;
|
|
211
194
|
/** Remove all key/values pair if value is undefined */
|
|
212
195
|
function objFilterUndefined(o) {
|
|
213
|
-
Object.keys(o).forEach(
|
|
196
|
+
Object.keys(o).forEach(k => !(0, isset_1.isset)(o[k]) && delete o[k]);
|
|
214
197
|
return o;
|
|
215
198
|
}
|
|
216
199
|
exports.objFilterUndefined = objFilterUndefined;
|
|
217
200
|
/** Lock all 1st level props of an object to read only */
|
|
218
201
|
function readOnly(o) {
|
|
219
|
-
|
|
202
|
+
const throwErr = () => { throw new error_utils_2.DescriptiveError('Cannot modify object that is read only', { code: 500 }); };
|
|
220
203
|
return new Proxy(o, {
|
|
221
204
|
set: throwErr,
|
|
222
205
|
defineProperty: throwErr,
|
|
@@ -229,21 +212,21 @@ function reassignForbidden(o) {
|
|
|
229
212
|
return new Proxy(o, {
|
|
230
213
|
defineProperty: function (that, key, value) {
|
|
231
214
|
if (key in that)
|
|
232
|
-
throw new error_utils_2.DescriptiveError(
|
|
215
|
+
throw new error_utils_2.DescriptiveError(`Cannot reassign the property ${key.toString()} of this object`, { code: 500 });
|
|
233
216
|
else {
|
|
234
217
|
that[key] = value;
|
|
235
218
|
return true;
|
|
236
219
|
}
|
|
237
220
|
},
|
|
238
221
|
deleteProperty: function (_, key) {
|
|
239
|
-
throw new error_utils_2.DescriptiveError(
|
|
222
|
+
throw new error_utils_2.DescriptiveError(`Cannot delete the property ${key.toString()} of this object`, { code: 500 });
|
|
240
223
|
}
|
|
241
224
|
});
|
|
242
225
|
}
|
|
243
226
|
exports.reassignForbidden = reassignForbidden;
|
|
244
227
|
/** All fileds and subFields of the object will become readOnly */
|
|
245
228
|
function readOnlyForAll(object) {
|
|
246
|
-
(0, loop_utils_1.recursiveGenericFunctionSync)(object,
|
|
229
|
+
(0, loop_utils_1.recursiveGenericFunctionSync)(object, (item, _, lastElementKey, parent) => {
|
|
247
230
|
if (typeof item === 'object')
|
|
248
231
|
parent[lastElementKey] = readOnly(item);
|
|
249
232
|
});
|
|
@@ -252,25 +235,24 @@ function readOnlyForAll(object) {
|
|
|
252
235
|
exports.readOnlyForAll = readOnlyForAll;
|
|
253
236
|
function objFilterUndefinedRecursive(obj) {
|
|
254
237
|
if (obj) {
|
|
255
|
-
|
|
256
|
-
Object.keys(
|
|
257
|
-
if (!(0, isset_1.isset)(
|
|
258
|
-
delete
|
|
238
|
+
const flattenedObj = flattenObject(obj);
|
|
239
|
+
Object.keys(flattenedObj).forEach(key => {
|
|
240
|
+
if (!(0, isset_1.isset)(flattenedObj[key])) {
|
|
241
|
+
delete flattenedObj[key];
|
|
259
242
|
}
|
|
260
243
|
});
|
|
261
|
-
return unflattenObject(
|
|
244
|
+
return unflattenObject(flattenedObj);
|
|
262
245
|
}
|
|
263
246
|
else
|
|
264
247
|
return obj;
|
|
265
248
|
}
|
|
266
249
|
exports.objFilterUndefinedRecursive = objFilterUndefinedRecursive;
|
|
267
|
-
function sortObjKeyAccordingToValue(unorderedObj, ascending) {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
var sortingConst = ascending ? 1 : -1;
|
|
250
|
+
function sortObjKeyAccordingToValue(unorderedObj, ascending = true) {
|
|
251
|
+
const orderedObj = {};
|
|
252
|
+
const sortingConst = ascending ? 1 : -1;
|
|
271
253
|
Object.keys(unorderedObj)
|
|
272
|
-
.sort(
|
|
273
|
-
.forEach(
|
|
254
|
+
.sort((keyA, keyB) => unorderedObj[keyA] < unorderedObj[keyB] ? sortingConst : -sortingConst)
|
|
255
|
+
.forEach(key => { orderedObj[key] = unorderedObj[key]; });
|
|
274
256
|
return orderedObj;
|
|
275
257
|
}
|
|
276
258
|
exports.sortObjKeyAccordingToValue = sortObjKeyAccordingToValue;
|
|
@@ -282,9 +264,8 @@ exports.sortObjKeyAccordingToValue = sortObjKeyAccordingToValue;
|
|
|
282
264
|
* @param {function} callback (obj[addr]) => processValue. Eg: myObjAddr => myObjAddr.push('bikou')
|
|
283
265
|
* @return obj[addr] eventually processed by the callback
|
|
284
266
|
*/
|
|
285
|
-
function ensureObjectProp(obj, addr, defaultValue, callback) {
|
|
286
|
-
|
|
287
|
-
(0, error_utils_1.err500IfNotSet)({ obj: obj, addr: addr, defaultValue: defaultValue, callback: callback });
|
|
267
|
+
function ensureObjectProp(obj, addr, defaultValue, callback = o => o) {
|
|
268
|
+
(0, error_utils_1.err500IfNotSet)({ obj, addr, defaultValue, callback });
|
|
288
269
|
if (!(0, isset_1.isset)(obj[addr]))
|
|
289
270
|
obj[addr] = defaultValue;
|
|
290
271
|
callback(obj[addr]);
|
|
@@ -295,28 +276,16 @@ exports.ensureObjectProp = ensureObjectProp;
|
|
|
295
276
|
* @warn /!\ Array will be merged and duplicate values will be deleted /!\
|
|
296
277
|
* @return {Object} new object result from merge
|
|
297
278
|
* NOTE: objects in params will NOT be modified*/
|
|
298
|
-
function mergeDeep() {
|
|
299
|
-
|
|
300
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
301
|
-
objects[_i] = arguments[_i];
|
|
302
|
-
}
|
|
303
|
-
return mergeDeepConfigurable.apply(void 0, __spreadArray([function (previousVal, currentVal) { return __spreadArray(__spreadArray([], previousVal, true), currentVal, true).filter(function (elm, i, arr) { return arr.indexOf(elm) === i; }); },
|
|
304
|
-
function (previousVal, currentVal) { return mergeDeep(previousVal, currentVal); },
|
|
305
|
-
undefined], objects, false));
|
|
279
|
+
function mergeDeep(...objects) {
|
|
280
|
+
return mergeDeepConfigurable((previousVal, currentVal) => [...previousVal, ...currentVal].filter((elm, i, arr) => arr.indexOf(elm) === i), (previousVal, currentVal) => mergeDeep(previousVal, currentVal), undefined, ...objects);
|
|
306
281
|
}
|
|
307
282
|
exports.mergeDeep = mergeDeep;
|
|
308
283
|
/** object and array merge
|
|
309
284
|
* @warn /!\ Array will be replaced by the latest object /!\
|
|
310
285
|
* @return {Object} new object result from merge
|
|
311
286
|
* NOTE: objects in params will NOT be modified */
|
|
312
|
-
function mergeDeepOverrideArrays() {
|
|
313
|
-
|
|
314
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
315
|
-
objects[_i] = arguments[_i];
|
|
316
|
-
}
|
|
317
|
-
return mergeDeepConfigurable.apply(void 0, __spreadArray([undefined,
|
|
318
|
-
function (previousVal, currentVal) { return mergeDeepOverrideArrays(previousVal, currentVal); },
|
|
319
|
-
undefined], objects, false));
|
|
287
|
+
function mergeDeepOverrideArrays(...objects) {
|
|
288
|
+
return mergeDeepConfigurable(undefined, (previousVal, currentVal) => mergeDeepOverrideArrays(previousVal, currentVal), undefined, ...objects);
|
|
320
289
|
}
|
|
321
290
|
exports.mergeDeepOverrideArrays = mergeDeepOverrideArrays;
|
|
322
291
|
/** object and array merge
|
|
@@ -327,17 +296,11 @@ exports.mergeDeepOverrideArrays = mergeDeepOverrideArrays;
|
|
|
327
296
|
* @return {Object} new object result from merge
|
|
328
297
|
* NOTE: objects in params will NOT be modified
|
|
329
298
|
*/
|
|
330
|
-
function mergeDeepConfigurable(replacerForArrays, replacerForObjects, replacerDefault) {
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
objects[_i - 3] = arguments[_i];
|
|
336
|
-
}
|
|
337
|
-
return objects.reduce(function (actuallyMerged, obj) {
|
|
338
|
-
Object.keys(obj).forEach(function (key) {
|
|
339
|
-
var previousVal = actuallyMerged[key];
|
|
340
|
-
var currentVal = obj[key];
|
|
299
|
+
function mergeDeepConfigurable(replacerForArrays = (prev, curr) => curr, replacerForObjects, replacerDefault = (prev, curr) => curr, ...objects) {
|
|
300
|
+
return objects.reduce((actuallyMerged, obj) => {
|
|
301
|
+
Object.keys(obj).forEach(key => {
|
|
302
|
+
const previousVal = actuallyMerged[key];
|
|
303
|
+
const currentVal = obj[key];
|
|
341
304
|
if (Array.isArray(previousVal) && Array.isArray(currentVal)) {
|
|
342
305
|
actuallyMerged[key] = replacerForArrays(previousVal, currentVal);
|
|
343
306
|
}
|
|
@@ -355,20 +318,19 @@ exports.mergeDeepConfigurable = mergeDeepConfigurable;
|
|
|
355
318
|
/** { a: {b:2}} => {'a.b':2} useful for translations
|
|
356
319
|
* NOTE: will remove circular references
|
|
357
320
|
*/
|
|
358
|
-
function flattenObject(data, config) {
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
var recurse = function (cur, prop) {
|
|
321
|
+
function flattenObject(data, config = {}) {
|
|
322
|
+
const { withoutArraySyntax = false, withArraySyntaxMinified = false } = config;
|
|
323
|
+
const result = {};
|
|
324
|
+
const seenObjects = []; // avoidCircular reference to infinite loop
|
|
325
|
+
const recurse = (cur, prop) => {
|
|
364
326
|
if (Array.isArray(cur)) {
|
|
365
|
-
|
|
366
|
-
|
|
327
|
+
let l = cur.length;
|
|
328
|
+
let i = 0;
|
|
367
329
|
if (withoutArraySyntax)
|
|
368
330
|
recurse(cur[0], prop);
|
|
369
331
|
else {
|
|
370
332
|
for (; i < l; i++)
|
|
371
|
-
recurse(cur[i], prop + (withArraySyntaxMinified ?
|
|
333
|
+
recurse(cur[i], prop + (withArraySyntaxMinified ? `.${i}` : `[${i}]`));
|
|
372
334
|
if (l == 0)
|
|
373
335
|
result[prop] = [];
|
|
374
336
|
}
|
|
@@ -379,8 +341,8 @@ function flattenObject(data, config) {
|
|
|
379
341
|
cur = deepClone(cur); // avoid circular ref but allow duplicate objects
|
|
380
342
|
else
|
|
381
343
|
seenObjects.push(cur);
|
|
382
|
-
|
|
383
|
-
for (
|
|
344
|
+
const isEmpty = Object.keys(cur).length === 0;
|
|
345
|
+
for (const p in cur)
|
|
384
346
|
recurse(cur[p], (prop ? prop + '.' : '') + p.replace(/\./g, '%')); // allow prop to contain special chars like points);
|
|
385
347
|
if (isEmpty && prop)
|
|
386
348
|
result[prop] = {};
|
|
@@ -398,11 +360,9 @@ function flattenObject(data, config) {
|
|
|
398
360
|
exports.flattenObject = flattenObject;
|
|
399
361
|
/** {'a.b':2} => { a: {b:2}} */
|
|
400
362
|
function unflattenObject(data) {
|
|
401
|
-
|
|
402
|
-
for (
|
|
403
|
-
var _b = _a[_i], addr = _b[0], value = _b[1];
|
|
363
|
+
const newO = {};
|
|
364
|
+
for (const [addr, value] of Object.entries(data))
|
|
404
365
|
objForceWrite(newO, addr, value);
|
|
405
|
-
}
|
|
406
366
|
return newO;
|
|
407
367
|
}
|
|
408
368
|
exports.unflattenObject = unflattenObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/regexp-utils.js
CHANGED
|
@@ -4,10 +4,9 @@ exports.allMatches = exports.firstMatch = exports.escapeRegexp = void 0;
|
|
|
4
4
|
//----------------------------------------
|
|
5
5
|
// REGEXP UTILS
|
|
6
6
|
//----------------------------------------
|
|
7
|
-
|
|
8
|
-
function escapeRegexp(str, config) {
|
|
9
|
-
|
|
10
|
-
var _a = config.parseStarChar, parseStarChar = _a === void 0 ? false : _a;
|
|
7
|
+
const logger_utils_1 = require("./logger-utils");
|
|
8
|
+
function escapeRegexp(str, config = {}) {
|
|
9
|
+
const { parseStarChar = false } = config;
|
|
11
10
|
if (parseStarChar)
|
|
12
11
|
return str.replace(/[-[\]{}()+?.,\\^$|#\s]/g, '\\$&').replace(/\*/g, '.*');
|
|
13
12
|
else
|
|
@@ -24,9 +23,9 @@ exports.firstMatch = firstMatch;
|
|
|
24
23
|
* NOTE: the G flag will be appended to regexp
|
|
25
24
|
*/
|
|
26
25
|
function allMatches(str, reg) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
let i = 0;
|
|
27
|
+
let matches;
|
|
28
|
+
const arr = [];
|
|
30
29
|
if (typeof str !== 'string')
|
|
31
30
|
logger_utils_1.C.error('Not a string provided as first argument for allMatches()');
|
|
32
31
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regexp-utils.js","sourceRoot":"","sources":["../../src/regexp-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,eAAe;AACf,0CAA0C;AAC1C
|
|
1
|
+
{"version":3,"file":"regexp-utils.js","sourceRoot":"","sources":["../../src/regexp-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,eAAe;AACf,0CAA0C;AAC1C,iDAAkC;AAElC,SAAgB,YAAY,CAAC,GAAW,EAAE,SAAsC,EAAE;IAC9E,MAAM,EAAE,aAAa,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;IACxC,IAAI,aAAa;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;;QACxF,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,GAAG,EAAE,CAAA;IACd,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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.removeCircularJSONstringify = void 0;
|
|
4
|
-
function removeCircularJSONstringify(object, indent) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return function (key, value) {
|
|
4
|
+
function removeCircularJSONstringify(object, indent = 2) {
|
|
5
|
+
const getCircularReplacer = () => {
|
|
6
|
+
const seen = new WeakSet();
|
|
7
|
+
return (key, value) => {
|
|
9
8
|
if (typeof value === 'object' && value !== null) {
|
|
10
9
|
if (seen.has(value)) {
|
|
11
10
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove-circular-json-stringify.js","sourceRoot":"","sources":["../../src/remove-circular-json-stringify.ts"],"names":[],"mappings":";;;AACA,SAAgB,2BAA2B,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"remove-circular-json-stringify.js","sourceRoot":"","sources":["../../src/remove-circular-json-stringify.ts"],"names":[],"mappings":";;;AACA,SAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;IAC1D,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAA;QAC1B,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAClB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;gBAC7C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;oBACjB,OAAM;iBACT;gBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;aAClB;YACD,OAAO,KAAK,CAAA;QAChB,CAAC,CAAA;IACL,CAAC,CAAA;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,MAAM,CAAC,CAAA;AAChE,CAAC;AAfD,kEAeC"}
|