lodash-walk-object 18.0.20 → 18.0.21
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/browser/esm2022/lib/index.mjs +19 -16
- package/browser/fesm2022/lodash-walk-object.mjs +18 -15
- package/browser/fesm2022/lodash-walk-object.mjs.map +1 -1
- package/client/esm2022/lib/index.mjs +19 -16
- package/client/fesm2022/lodash-walk-object.mjs +18 -15
- package/client/fesm2022/lodash-walk-object.mjs.map +1 -1
- package/index.js +15 -2
- package/index.js.map +1 -1
- package/lib/build-info._auto-generated_.js.map +1 -1
- package/lib/index._auto-generated_.d.ts +1 -0
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/index.js +133 -134
- package/lib/index.js.map +1 -1
- package/lib/models.js.map +1 -1
- package/migrations/index.js +15 -2
- package/migrations/index.js.map +1 -1
- package/migrations/migrations_index._auto-generated_.d.ts +1 -0
- package/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/package.json +16 -63
- package/src.d.ts +1 -1
- package/tmp-environment.json +8 -401
- package/websql/esm2022/lib/index.mjs +19 -16
- package/websql/fesm2022/lodash-walk-object.mjs +18 -15
- package/websql/fesm2022/lodash-walk-object.mjs.map +1 -1
- package/browser/package.json +0 -25
- package/taon.jsonc +0 -44
- package/websql/package.json +0 -25
|
@@ -235,25 +235,25 @@ export class Helpers {
|
|
|
235
235
|
}
|
|
236
236
|
return options;
|
|
237
237
|
}
|
|
238
|
-
static _walk(json,
|
|
238
|
+
static _walk(json, objOrWhatever, iterator, lodashPath = '', options, depthLevel = 0) {
|
|
239
239
|
if (!options) {
|
|
240
240
|
options = {};
|
|
241
241
|
}
|
|
242
242
|
// @ts-ignore
|
|
243
243
|
if (!options.breadthWalk) {
|
|
244
244
|
// @ts-ignore
|
|
245
|
-
options = this.prepareOptions(options,
|
|
245
|
+
options = this.prepareOptions(options, objOrWhatever, lodashPath);
|
|
246
246
|
// @ts-ignore
|
|
247
247
|
if (this._shoudlReturn(options.include, options.exclude, lodashPath)) {
|
|
248
248
|
return;
|
|
249
249
|
}
|
|
250
250
|
// @ts-ignore
|
|
251
251
|
if (options.hasIterator && lodashPath !== '') {
|
|
252
|
-
iterator(
|
|
252
|
+
iterator(objOrWhatever, lodashPath, this._changeValue(json, lodashPath, false, options), options);
|
|
253
253
|
}
|
|
254
254
|
// @ts-ignore
|
|
255
255
|
if (options._valueChanged) {
|
|
256
|
-
|
|
256
|
+
objOrWhatever = _.get(json, lodashPath);
|
|
257
257
|
}
|
|
258
258
|
options._valueChanged = false;
|
|
259
259
|
if (options.isCircural) {
|
|
@@ -310,16 +310,19 @@ export class Helpers {
|
|
|
310
310
|
else {
|
|
311
311
|
// @ts-ignore
|
|
312
312
|
const { walkGetters } = options;
|
|
313
|
-
if (Array.isArray(
|
|
314
|
-
|
|
313
|
+
if (Array.isArray(objOrWhatever)) {
|
|
314
|
+
objOrWhatever.forEach((o, i) => {
|
|
315
315
|
// @ts-ignore
|
|
316
|
-
this._walk(json,
|
|
316
|
+
this._walk(json, objOrWhatever[i], iterator, `${lodashPath}[${i}]`, options, depthLevel + 1);
|
|
317
317
|
});
|
|
318
318
|
}
|
|
319
|
-
else if (_.isObject(
|
|
320
|
-
const allKeys = !walkGetters
|
|
321
|
-
|
|
322
|
-
|
|
319
|
+
else if (_.isObject(objOrWhatever)) {
|
|
320
|
+
const allKeys = !walkGetters
|
|
321
|
+
? []
|
|
322
|
+
: Object.getOwnPropertyNames(objOrWhatever);
|
|
323
|
+
// @ts-ignore
|
|
324
|
+
for (const key in objOrWhatever) {
|
|
325
|
+
if (_.isObject(objOrWhatever) && objOrWhatever.hasOwnProperty(key)) {
|
|
323
326
|
_.pull(allKeys, key);
|
|
324
327
|
let newPropKey = key;
|
|
325
328
|
options.isGetter = false;
|
|
@@ -327,23 +330,23 @@ export class Helpers {
|
|
|
327
330
|
newPropKey = `['${newPropKey}']`;
|
|
328
331
|
}
|
|
329
332
|
// @ts-ignore
|
|
330
|
-
this._walk(json,
|
|
333
|
+
this._walk(json, objOrWhatever[newPropKey], iterator, `${lodashPath === '' ? '' : `${lodashPath}.`}${newPropKey}`, options, depthLevel + 1);
|
|
331
334
|
}
|
|
332
335
|
}
|
|
333
336
|
if (walkGetters) {
|
|
334
337
|
for (let index = 0; index < allKeys.length; index++) {
|
|
335
|
-
if (_.isObject(
|
|
338
|
+
if (_.isObject(objOrWhatever)) {
|
|
336
339
|
const key = allKeys[index];
|
|
337
340
|
// @ts-ignore
|
|
338
341
|
options.isGetter = true;
|
|
339
342
|
// @ts-ignore
|
|
340
|
-
this._walk(json,
|
|
343
|
+
this._walk(json, objOrWhatever[key], iterator, `${lodashPath === '' ? '' : `${lodashPath}.`}${key}`, options, depthLevel + 1);
|
|
341
344
|
}
|
|
342
345
|
}
|
|
343
346
|
}
|
|
344
347
|
}
|
|
345
348
|
// @ts-ignore
|
|
346
|
-
if (options._exit && json ===
|
|
349
|
+
if (options._exit && json === objOrWhatever) {
|
|
347
350
|
// @ts-ignore
|
|
348
351
|
options._exit = false;
|
|
349
352
|
}
|
|
@@ -357,4 +360,4 @@ export const walk = {
|
|
|
357
360
|
};
|
|
358
361
|
;
|
|
359
362
|
({}); // @--end-of-file-for-module=lodash-walk-object lib/index.ts
|
|
360
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9sb2Rhc2gtd2Fsay1vYmplY3QvcHJvamVjdHMvbG9kYXNoLXdhbGstb2JqZWN0L3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUd6RCxjQUFjLFVBQVUsQ0FBQztBQUV6QixTQUFTLFlBQVksQ0FDbkIsR0FBZSxFQUNmLEVBQVUsRUFDVixXQUFvQjtJQUVwQixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ25CLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN0QixPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7U0FBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQixNQUFNLE9BQU8sR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEUsTUFBTSxRQUFRLEdBQWlCLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLElBQ0UsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQ2Ys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QUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO3dCQUNwRCxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQzs0QkFDcEIsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDOzRCQUUzQixhQUFhOzRCQUNiLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDOzRCQUN4QixhQUFhOzRCQUNiLElBQUksQ0FBQyxLQUFLLENBQ1IsSUFBSSxFQUNKLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFDUixRQUFRLEVBQ1IsR0FBRyxVQUFVLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQ3BELE9BQU8sRUFDUCxVQUFVLEdBQUcsQ0FBQyxDQUNmLENBQUM7d0JBQ0osQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDO1lBRUQsYUFBYTtZQUNiLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ2xDLGFBQWE7Z0JBQ2IsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDeEIsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUc7SUFDbEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTTtJQUMzQixRQUFRLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRO0NBQ2hDLENBQUM7QUFFRCxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBDTEFTUyB9IGZyb20gJ3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9icm93c2VyJztcblxuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMnO1xuXG5mdW5jdGlvbiBmaW5kQ2hpbGRyZW4oXG4gIHZlcjogTW9kZWxzLlZlcixcbiAgbHA6IHN0cmluZyxcbiAgd2Fsa0dldHRlcnM6IGJvb2xlYW4sXG4pOiBNb2RlbHMuVmVyW10ge1xuICBjb25zdCBvYmogPSB2ZXIudjtcbiAgaWYgKF8uaXNBcnJheShvYmopKSB7XG4gICAgcmV0dXJuIG9iai5tYXAoKHYsIGkpID0+IHtcbiAgICAgIHJldHVybiB7IHYsIHA6IGAke2xwfVske2l9XWAsIHBhcmVudDogdmVyLCBpc0dldHRlcjogZmFsc2UgfTtcbiAgICB9KTtcbiAgfSBlbHNlIGlmIChfLmlzT2JqZWN0KG9iaikpIHtcbiAgICBjb25zdCBhbGxLZXlzID0gIXdhbGtHZXR0ZXJzID8gW10gOiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhvYmopO1xuICAgIGNvbnN0IGNoaWxkcmVuOiBNb2RlbHMuVmVyW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgIGlmIChcbiAgICAgICAgXy5pc09iamVjdChvYmopICYmXG4gICAgICAgIF8uaXNGdW5jdGlvbihvYmouaGFzT3duUHJvcGVydHkpICYmXG4gICAgICAgIG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpXG4gICAgICApIHtcbiAgICAgICAgXy5wdWxsKGFsbEtleXMsIGtleSk7XG4gICAgICAgIGNoaWxkcmVuLnB1c2goe1xuICAgICAgICAgIHY6IG9ialtrZXldLFxuICAgICAgICAgIHA6IGAke2xwID09PSAnJyA/ICcnIDogYCR7bHB9LmB9JHtrZXl9YCxcbiAgICAgICAgICBwYXJlbnQ6IHZlcixcbiAgICAgICAgICBpc0dldHRlcjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAod2Fsa0dldHRlcnMpIHtcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBhbGxLZXlzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBpZiAoXy5pc09iamVjdChvYmopKSB7XG4gICAgICAgICAgY29uc3Qga2V5ID0gYWxsS2V5c1tpbmRleF07XG4gICAgICAgICAgY2hpbGRyZW4ucHVzaCh7XG4gICAgICAgICAgICB2OiBvYmpba2V5XSxcbiAgICAgICAgICAgIHA6IGAke2xwID09PSAnJyA/ICcnIDogYCR7bHB9LmB9JHtrZXl9YCxcbiAgICAgICAgICAgIHBhcmVudDogdmVyLFxuICAgICAgICAgICAgaXNHZXR0ZXI6IHRydWUsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNoaWxkcmVuO1xuICB9XG4gIHJldHVybiBbXTtcbn1cblxuZXhwb3J0IHR5cGUgSXRlcmF0b3IgPSAoXG4gIHZhbHVlOiBhbnksXG4gIGxvZGFzaFBhdGg6IHN0cmluZyxcbiAgLy8gQHRzLWlnbm9yZVxuICBjaGFuZ2VWYWx1ZVRvOiAobmV3VmFsdWUpID0+IHZvaWQsXG4gIG9wdGlvbnM/OiBNb2RlbHMuQWRkaXRpb25hbEl0ZXJhdG9yT3B0aW9ucyxcbikgPT4gdm9pZDtcbmV4cG9ydCBjbGFzcyBIZWxwZXJzIHtcbiAgcHVibGljIHN0YXRpYyBnZXQgV2FsaygpIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICByZXR1cm4ge1xuICAgICAgT2JqZWN0KFxuICAgICAgICBqc29uOiBPYmplY3QsXG4gICAgICAgIGl0ZXJhdG9yOiBJdGVyYXRvcixcbiAgICAgICAgb3B0aW9uc09yV2Fsa0dldHRlcnNWYWx1ZT86IE1vZGVscy5TdGFydEl0ZXJhdG9yT3B0aW9ucyxcbiAgICAgICkge1xuICAgICAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zT3JXYWxrR2V0dGVyc1ZhbHVlKSkge1xuICAgICAgICAgIG9wdGlvbnNPcldhbGtHZXR0ZXJzVmFsdWUgPSB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIChvcHRpb25zT3JXYWxrR2V0dGVyc1ZhbHVlIGFzIE1vZGVscy5JbnRlcm5hbFZhbHVlcykuaGFzSXRlcmF0b3IgPVxuICAgICAgICAgIF8uaXNGdW5jdGlvbihpdGVyYXRvcik7XG5cbiAgICAgICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9uc09yV2Fsa0dldHRlcnNWYWx1ZS5icmVhZHRoV2FsaykpIHtcbiAgICAgICAgICBvcHRpb25zT3JXYWxrR2V0dGVyc1ZhbHVlLmJyZWFkdGhXYWxrID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgeyBjaXJjdXJhbCB9ID0gc2VsZi5fd2FsayhcbiAgICAgICAgICBqc29uLFxuICAgICAgICAgIGpzb24sXG4gICAgICAgICAgaXRlcmF0b3IsXG4gICAgICAgICAgdm9pZCAwLFxuICAgICAgICAgIG9wdGlvbnNPcldhbGtHZXR0ZXJzVmFsdWUgYXMgYW55LFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiB7IGNpcmNzOiBjaXJjdXJhbCB9O1xuICAgICAgfSxcbiAgICAgIE9iamVjdEJ5KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICBpbkNvbnRleHQ6IE9iamVjdCxcbiAgICAgICAgaXRlcmF0b3I6IEl0ZXJhdG9yLFxuICAgICAgICBvcHRpb25zPzogTW9kZWxzLlN0YXJ0SXRlcmF0b3JPcHRpb25zLFxuICAgICAgKSB7XG4gICAgICAgIGlmIChfLmlzRnVuY3Rpb24oaXRlcmF0b3IpKSB7XG4gICAgICAgICAgaXRlcmF0b3IoaW5Db250ZXh0LCAnJywgc2VsZi5fY2hhbmdlVmFsdWUoaW5Db250ZXh0LCBwcm9wZXJ0eSwgdHJ1ZSkpOyAvLyBUT0RPIEFkZCBvcHRvaW5zXG4gICAgICAgIH1cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBjb25zdCBqc29uID0gaW5Db250ZXh0W3Byb3BlcnR5XTtcbiAgICAgICAgcmV0dXJuIHNlbGYuV2Fsay5PYmplY3QoanNvbiwgaXRlcmF0b3IsIG9wdGlvbnMpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX2NoYW5nZVZhbHVlKFxuICAgIGpzb246IE9iamVjdCxcbiAgICBsb2RhaFBhdGg6IHN0cmluZyxcbiAgICBzaW1wbGVDaGFuZ2UgPSBmYWxzZSxcbiAgICBvcHRpb25zPzogTW9kZWxzLkludGVybmFsVmFsdWVzLFxuICApIHtcbiAgICB2YXIgeyBjb250ZXh0UGF0aCwgcHJvcGVydHkgfSA9IHRoaXMuX3ByZXBhcmVQYXJhbXMobG9kYWhQYXRoKTtcbiAgICB2YXIgY29udGV4dCA9IF8uZ2V0KGpzb24sIGNvbnRleHRQYXRoKTtcblxuICAgIHJldHVybiAobmV3VmFsdWU6IGFueSkgPT4ge1xuICAgICAgaWYgKGNvbnRleHRQYXRoID09PSAnJykge1xuICAgICAgICBzaW1wbGVDaGFuZ2UgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoc2ltcGxlQ2hhbmdlKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAganNvbltwcm9wZXJ0eV0gPSBuZXdWYWx1ZTtcbiAgICAgIH0gZWxzZSB7XG5cblxuICAgICAgICBpZiAoY29udGV4dCkge1xuICAgICAgICAgIGNvbnRleHRbcHJvcGVydHldID0gbmV3VmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zKSB7XG4gICAgICAgIG9wdGlvbnMuX3ZhbHVlQ2hhbmdlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIF9wcmVwYXJlUGFyYW1zKGxvZGFzaFBhdGg6IHN0cmluZykge1xuXG4gICAgY29uc3QgY29udGV4dFBhdGggPSB0aGlzLl9IZWxwZXJzLlBhdGguZ2V0Q29udGV4dFBhdGgobG9kYXNoUGF0aCk7XG5cblxuICAgIGxldCBwcm9wZXJ0eSA9IHRoaXMuX0hlbHBlcnMuUGF0aC5nZXRQcm9wZXJ0eVBhdGgobG9kYXNoUGF0aCwgY29udGV4dFBhdGgpO1xuXG4gICAgaWYgKFxuICAgICAgXy5pc1N0cmluZyhwcm9wZXJ0eSkgJiZcbiAgICAgIHByb3BlcnR5LnRyaW0oKSAhPT0gJycgJiZcbiAgICAgICFfLmlzTmFOKE51bWJlcihwcm9wZXJ0eSkpXG4gICAgKSB7XG4gICAgICBwcm9wZXJ0eSA9IE51bWJlcihwcm9wZXJ0eSk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBjb250ZXh0UGF0aCxcbiAgICAgIHByb3BlcnR5LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBnZXQgX0hlbHBlcnMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldCBQYXRoKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBnZXRQcm9wZXJ0eVBhdGgobG9kYWhQYXRoLCBjb250ZXRQYXRoKSB7XG4gICAgICAgICAgICByZXR1cm4gbG9kYWhQYXRoXG4gICAgICAgICAgICAgIC5yZXBsYWNlKGNvbnRldFBhdGgsICcnKVxuICAgICAgICAgICAgICAucmVwbGFjZSgvXlxcLi8sICcnKVxuICAgICAgICAgICAgICAucmVwbGFjZSgvXFxbLywgJycpXG4gICAgICAgICAgICAgIC5yZXBsYWNlKC9cXF0vLCAnJyk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBnZXRDb250ZXh0UGF0aChwOiBzdHJpbmcpIHtcbiAgICAgICAgICAgIGxldCByZXM6IHN0cmluZztcbiAgICAgICAgICAgIGlmIChwLmVuZHNXaXRoKCddJykpIHtcbiAgICAgICAgICAgICAgcmVzID0gcC5yZXBsYWNlKC9cXFsoXFxcInxcXCcpP1swLTldKyhcXFwifFxcJyk/XFxdJC8sICcnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJlcyA9IHAucmVwbGFjZSgvXFwuKFthLXpBLVowLTldfFxcJHxcXF98XFxAfFxcLXxcXC98XFw6KSskLywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlcyA9PT0gcCA/ICcnIDogcmVzO1xuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfc2hvdWRsUmV0dXJuKGluY2x1ZGUgPSBbXSwgZXhjbHVkZSA9IFtdLCBsb2Rhc2hQYXRoOiBzdHJpbmcpIHtcbiAgICBsZXQgcmVzID0gZmFsc2U7XG4gICAgaWYgKGxvZGFzaFBhdGgucmVwbGFjZSgvXlxcWyhcXCd8XFxcIik/WzAtOV0qKFxcJ3xcXFwiKT9cXF0vLCAnJykudHJpbSgpICE9PSAnJykge1xuICAgICAgbG9kYXNoUGF0aCA9IGxvZGFzaFBhdGgucmVwbGFjZSgvXlxcWyhcXCd8XFxcIik/WzAtOV0qKFxcJ3xcXFwiKT9cXF1cXC4vLCAnJyk7XG4gICAgICByZXMgPVxuICAgICAgICAoXy5pc0FycmF5KGluY2x1ZGUpICYmXG4gICAgICAgICAgaW5jbHVkZS5sZW5ndGggPiAwICYmXG4gICAgICAgICAgIWluY2x1ZGUuZmluZChwID0+IGxvZGFzaFBhdGguc3RhcnRzV2l0aChwKSkpIHx8XG4gICAgICAgIChfLmlzQXJyYXkoZXhjbHVkZSkgJiZcbiAgICAgICAgICBleGNsdWRlLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAhIWV4Y2x1ZGUuZmluZChwID0+IGxvZGFzaFBhdGguc3RhcnRzV2l0aChwKSkpO1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICAvLyBAdHMtaWdub3JlXG4gIHByaXZhdGUgc3RhdGljIHByZXBhcmVPcHRpb25zKFxuICAgIG9wdGlvbnM6IE1vZGVscy5JbnRlcm5hbFZhbHVlcyxcbiAgICBvYmosXG4gICAgbG9kYXNoUGF0aCxcbiAgKSB7XG4gICAgaWYgKG9wdGlvbnMuX2V4aXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLndhbGtHZXR0ZXJzKSkge1xuICAgICAgb3B0aW9ucy53YWxrR2V0dGVycyA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5jaGVja0NpcmN1cmFsKSkge1xuICAgICAgb3B0aW9ucy5jaGVja0NpcmN1cmFsID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5pc0dldHRlcikpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG9wdGlvbnMuaXNHZXR0ZXIgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLl92YWx1ZUNoYW5nZWQpKSB7XG4gICAgICBvcHRpb25zLl92YWx1ZUNoYW5nZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLl9leGl0KSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgb3B0aW9ucy5fZXhpdCA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuZXhpdCkpIHtcbiAgICAgIG9wdGlvbnMuZXhpdCA9ICgpID0+IHtcbiAgICAgICAgb3B0aW9ucy5fZXhpdCA9IHRydWU7XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuX3NraXApKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBvcHRpb25zLl9za2lwID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5za2lwT2JqZWN0KSkge1xuICAgICAgb3B0aW9ucy5za2lwT2JqZWN0ID0gKCkgPT4ge1xuICAgICAgICBvcHRpb25zLl9za2lwID0gdHJ1ZTtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuY2hlY2tDaXJjdXJhbCkge1xuICAgICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5kYikpIHtcbiAgICAgICAgb3B0aW9ucy5kYiA9IHt9O1xuICAgICAgfVxuXG4gICAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLnN0YWNrKSkge1xuICAgICAgICBvcHRpb25zLnN0YWNrID0gW107XG4gICAgICB9XG5cbiAgICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuY2lyY3VyYWwpKSB7XG4gICAgICAgIG9wdGlvbnMuY2lyY3VyYWwgPSBbXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB7IGRiLCBzdGFjayB9ID0gb3B0aW9ucztcbiAgICBvcHRpb25zLmlzQ2lyY3VyYWwgPSBmYWxzZTtcblxuICAgIGlmIChvcHRpb25zLmNoZWNrQ2lyY3VyYWwgJiYgXy5pc09iamVjdChvYmopKSB7XG4gICAgICBsZXQgaW5kZXhWYWx1ZSA9IENMQVNTLk9CSkVDVChvYmopLmluZGV4VmFsdWU7XG4gICAgICBpZiAoQ0xBU1MuT0JKRUNUKG9iaikuaXNDbGFzc09iamVjdCAmJiAhXy5pc1VuZGVmaW5lZChpbmRleFZhbHVlKSkge1xuICAgICAgICBsZXQgY2xhc3NOYW1lID0gQ0xBU1MuZ2V0TmFtZUZyb21PYmplY3Qob2JqKTtcbiAgICAgICAgbGV0IHAgPSBgJHtjbGFzc05hbWV9LmlkXyR7aW5kZXhWYWx1ZX1gO1xuICAgICAgICBjb25zdCBpbkRCOiBNb2RlbHMuSW5EQlR5cGUgPSBfLmdldChkYiwgcCk7XG5cbiAgICAgICAgaWYgKGluREIgJiYgQ0xBU1MuT0JKRUNUKGluREIudGFyZ2V0KS5pc0VxdWFsKG9iaikpIHtcbiAgICAgICAgICBjb25zdCBjaXJjOiBNb2RlbHMuQ2lyYyA9IHtcbiAgICAgICAgICAgIHBhdGhUb09iajogbG9kYXNoUGF0aCxcbiAgICAgICAgICAgIGNpcmN1cmFsVGFyZ2V0UGF0aDogaW5EQi5wYXRoLFxuICAgICAgICAgIH07XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIG9wdGlvbnMuY2lyY3VyYWwucHVzaChjaXJjKTtcbiAgICAgICAgICBvcHRpb25zLmlzQ2lyY3VyYWwgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIF8uc2V0KGRiLCBwLCB7XG4gICAgICAgICAgICBwYXRoOiBsb2Rhc2hQYXRoLFxuICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgfSBhcyBNb2RlbHMuSW5EQlR5cGUpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGNvbnN0IGluU3RhY2sgPSBzdGFjay5maW5kKChjOiBNb2RlbHMuSW5EQlR5cGUpID0+IGMudGFyZ2V0ID09IG9iaik7XG5cbiAgICAgICAgaWYgKCFfLmlzVW5kZWZpbmVkKGluU3RhY2spKSB7XG4gICAgICAgICAgY29uc3QgY2lyYzogTW9kZWxzLkNpcmMgPSB7XG4gICAgICAgICAgICBwYXRoVG9PYmo6IGxvZGFzaFBhdGgsXG4gICAgICAgICAgICBjaXJjdXJhbFRhcmdldFBhdGg6IGluU3RhY2sucGF0aCxcbiAgICAgICAgICB9O1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBvcHRpb25zLmNpcmN1cmFsLnB1c2goY2lyYyk7XG4gICAgICAgICAgb3B0aW9ucy5pc0NpcmN1cmFsID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgc3RhY2sucHVzaCh7XG4gICAgICAgICAgICBwYXRoOiBsb2Rhc2hQYXRoLFxuICAgICAgICAgICAgdGFyZ2V0OiBvYmosXG4gICAgICAgICAgfSBhcyBNb2RlbHMuSW5EQlR5cGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX3dhbGsoXG4gICAganNvbjogT2JqZWN0LFxuICAgIG9iajogT2JqZWN0LFxuICAgIGl0ZXJhdG9yOiBJdGVyYXRvcixcbiAgICBsb2Rhc2hQYXRoID0gJycsXG4gICAgb3B0aW9ucz86IE1vZGVscy5JbnRlcm5hbFZhbHVlcyxcbiAgICBkZXB0aExldmVsID0gMCxcbiAgKSB7XG4gICAgaWYgKCFvcHRpb25zKSB7XG4gICAgICBvcHRpb25zID0ge30gYXMgYW55O1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoIW9wdGlvbnMuYnJlYWR0aFdhbGspIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG9wdGlvbnMgPSB0aGlzLnByZXBhcmVPcHRpb25zKG9wdGlvbnMsIG9iaiwgbG9kYXNoUGF0aCk7XG5cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLl9zaG91ZGxSZXR1cm4ob3B0aW9ucy5pbmNsdWRlLCBvcHRpb25zLmV4Y2x1ZGUsIGxvZGFzaFBhdGgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgaWYgKG9wdGlvbnMuaGFzSXRlcmF0b3IgJiYgbG9kYXNoUGF0aCAhPT0gJycpIHtcbiAgICAgICAgaXRlcmF0b3IoXG4gICAgICAgICAgb2JqLFxuICAgICAgICAgIGxvZGFzaFBhdGgsXG4gICAgICAgICAgdGhpcy5fY2hhbmdlVmFsdWUoanNvbiwgbG9kYXNoUGF0aCwgZmFsc2UsIG9wdGlvbnMpLFxuICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmIChvcHRpb25zLl92YWx1ZUNoYW5nZWQpIHtcbiAgICAgICAgb2JqID0gXy5nZXQoanNvbiwgbG9kYXNoUGF0aCk7XG4gICAgICB9XG4gICAgICBvcHRpb25zLl92YWx1ZUNoYW5nZWQgPSBmYWxzZTtcblxuICAgICAgaWYgKG9wdGlvbnMuaXNDaXJjdXJhbCkge1xuICAgICAgICBvcHRpb25zLl9za2lwID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG9wdGlvbnMuX3NraXApIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBvcHRpb25zLl9za2lwID0gZmFsc2U7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5icmVhZHRoV2Fsaykge1xuICAgICAgbGV0IHF1ZXVlOiBNb2RlbHMuVmVyW10gPSBbeyB2OiBqc29uLCBwOiBsb2Rhc2hQYXRoLCBwYXJlbnQ6IHZvaWQgMCB9XTtcblxuXG4gICAgICB3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCB2ZXIgPSBxdWV1ZS5zaGlmdCgpO1xuXG5cblxuXG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBpZiAodGhpcy5fc2hvdWRsUmV0dXJuKG9wdGlvbnMuaW5jbHVkZSwgb3B0aW9ucy5leGNsdWRlLCB2ZXIucCkpIHtcblxuXG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuXG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBsZXQgeyB2LCBwIH0gPSB2ZXI7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgb3B0aW9ucyA9IHRoaXMucHJlcGFyZU9wdGlvbnMob3B0aW9ucywgdiwgcCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuX2V4aXQpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnRVhJVCcpO1xuICAgICAgICAgIHJldHVybiBvcHRpb25zO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmhhc0l0ZXJhdG9yICYmIHAgIT09ICcnKSB7XG4gICAgICAgICAgaXRlcmF0b3IodiwgcCwgdGhpcy5fY2hhbmdlVmFsdWUoanNvbiwgcCwgZmFsc2UsIG9wdGlvbnMpLCBvcHRpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKG9wdGlvbnMuX3ZhbHVlQ2hhbmdlZCkge1xuICAgICAgICAgIHZlci52ID0gXy5nZXQoanNvbiwgcCk7XG4gICAgICAgIH1cbiAgICAgICAgb3B0aW9ucy5fdmFsdWVDaGFuZ2VkID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuaXNDaXJjdXJhbCkge1xuXG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5fc2tpcCkge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBvcHRpb25zLl9za2lwID0gZmFsc2U7XG5cbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChfLmlzQXJyYXkodikpIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcXVldWUgPSBxdWV1ZS5jb25jYXQoZmluZENoaWxkcmVuKHZlciwgcCwgb3B0aW9ucy53YWxrR2V0dGVycykpO1xuICAgICAgICB9IGVsc2UgaWYgKF8uaXNPYmplY3QodikpIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcXVldWUgPSBxdWV1ZS5jb25jYXQoZmluZENoaWxkcmVuKHZlciwgcCwgb3B0aW9ucy53YWxrR2V0dGVycykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbnN0IHsgd2Fsa0dldHRlcnMgfSA9IG9wdGlvbnM7XG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICAgICAgb2JqLmZvckVhY2goKG8sIGkpID0+IHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgdGhpcy5fd2FsayhcbiAgICAgICAgICAgIGpzb24sXG4gICAgICAgICAgICBvYmpbaV0sXG4gICAgICAgICAgICBpdGVyYXRvcixcbiAgICAgICAgICAgIGAke2xvZGFzaFBhdGh9WyR7aX1dYCxcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBkZXB0aExldmVsICsgMSxcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoXy5pc09iamVjdChvYmopKSB7XG4gICAgICAgIGNvbnN0IGFsbEtleXMgPSAhd2Fsa0dldHRlcnMgPyBbXSA6IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG9iaik7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xuXG4gICAgICAgICAgaWYgKF8uaXNPYmplY3Qob2JqKSAmJiBvYmouaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICAgICAgXy5wdWxsKGFsbEtleXMsIGtleSk7XG5cbiAgICAgICAgICAgIGxldCBuZXdQcm9wS2V5ID0ga2V5O1xuICAgICAgICAgICAgb3B0aW9ucy5pc0dldHRlciA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKG5ld1Byb3BLZXkuaW5jbHVkZXMoJy4nKSkge1xuICAgICAgICAgICAgICBuZXdQcm9wS2V5ID0gYFsnJHtuZXdQcm9wS2V5fSddYDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHRoaXMuX3dhbGsoXG4gICAgICAgICAgICAgIGpzb24sXG4gICAgICAgICAgICAgIG9ialtuZXdQcm9wS2V5XSxcbiAgICAgICAgICAgICAgaXRlcmF0b3IsXG4gICAgICAgICAgICAgIGAke2xvZGFzaFBhdGggPT09ICcnID8gJycgOiBgJHtsb2Rhc2hQYXRofS5gfSR7bmV3UHJvcEtleX1gLFxuICAgICAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgICAgICBkZXB0aExldmVsICsgMSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh3YWxrR2V0dGVycykge1xuICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBhbGxLZXlzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICAgICAgaWYgKF8uaXNPYmplY3Qob2JqKSkge1xuICAgICAgICAgICAgICBjb25zdCBrZXkgPSBhbGxLZXlzW2luZGV4XTtcblxuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIG9wdGlvbnMuaXNHZXR0ZXIgPSB0cnVlO1xuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIHRoaXMuX3dhbGsoXG4gICAgICAgICAgICAgICAganNvbixcbiAgICAgICAgICAgICAgICBvYmpba2V5XSxcbiAgICAgICAgICAgICAgICBpdGVyYXRvcixcbiAgICAgICAgICAgICAgICBgJHtsb2Rhc2hQYXRoID09PSAnJyA/ICcnIDogYCR7bG9kYXNoUGF0aH0uYH0ke2tleX1gLFxuICAgICAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICAgICAgZGVwdGhMZXZlbCArIDEsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmIChvcHRpb25zLl9leGl0ICYmIGpzb24gPT09IG9iaikge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIG9wdGlvbnMuX2V4aXQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxufVxuXG5leHBvcnQgY29uc3Qgd2FsayA9IHtcbiAgT2JqZWN0OiBIZWxwZXJzLldhbGsuT2JqZWN0LFxuICBPYmplY3RCeTogSGVscGVycy5XYWxrLk9iamVjdEJ5LFxufTtcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPWxvZGFzaC13YWxrLW9iamVjdCBsaWIvaW5kZXgudHMiXX0=
|
|
363
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9sb2Rhc2gtd2Fsay1vYmplY3QvcHJvamVjdHMvbG9kYXNoLXdhbGstb2JqZWN0L3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUd6RCxjQUFjLFVBQVUsQ0FBQztBQUV6QixTQUFTLFlBQVksQ0FDbkIsR0FBZSxFQUNmLEVBQVUsRUFDVixXQUFvQjtJQUVwQixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ25CLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN0QixPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7U0FBTSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQixNQUFNLE9BQU8sR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEUsTUFBTSxRQUFRLEdBQWlCLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLElBQ0UsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQ2Ys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QUFDO29CQUNoQixLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO3dCQUNwRCxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQzs0QkFDOUIsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDOzRCQUUzQixhQUFhOzRCQUNiLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDOzRCQUN4QixhQUFhOzRCQUNiLElBQUksQ0FBQyxLQUFLLENBQ1IsSUFBSSxFQUNKLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFDbEIsUUFBUSxFQUNSLEdBQUcsVUFBVSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUNwRCxPQUFPLEVBQ1AsVUFBVSxHQUFHLENBQUMsQ0FDZixDQUFDO3dCQUNKLENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztZQUVELGFBQWE7WUFDYixJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxLQUFLLGFBQWEsRUFBRSxDQUFDO2dCQUM1QyxhQUFhO2dCQUNiLE9BQU8sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHO0lBQ2xCLE1BQU0sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU07SUFDM0IsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUTtDQUNoQyxDQUFDO0FBRUQsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw0REFBNEQiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgQ0xBU1MgfSBmcm9tICd0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvYnJvd3Nlcic7XG5cbmltcG9ydCB7IE1vZGVscyB9IGZyb20gJy4vbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcblxuZnVuY3Rpb24gZmluZENoaWxkcmVuKFxuICB2ZXI6IE1vZGVscy5WZXIsXG4gIGxwOiBzdHJpbmcsXG4gIHdhbGtHZXR0ZXJzOiBib29sZWFuLFxuKTogTW9kZWxzLlZlcltdIHtcbiAgY29uc3Qgb2JqID0gdmVyLnY7XG4gIGlmIChfLmlzQXJyYXkob2JqKSkge1xuICAgIHJldHVybiBvYmoubWFwKCh2LCBpKSA9PiB7XG4gICAgICByZXR1cm4geyB2LCBwOiBgJHtscH1bJHtpfV1gLCBwYXJlbnQ6IHZlciwgaXNHZXR0ZXI6IGZhbHNlIH07XG4gICAgfSk7XG4gIH0gZWxzZSBpZiAoXy5pc09iamVjdChvYmopKSB7XG4gICAgY29uc3QgYWxsS2V5cyA9ICF3YWxrR2V0dGVycyA/IFtdIDogT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMob2JqKTtcbiAgICBjb25zdCBjaGlsZHJlbjogTW9kZWxzLlZlcltdID0gW107XG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgICBpZiAoXG4gICAgICAgIF8uaXNPYmplY3Qob2JqKSAmJlxuICAgICAgICBfLmlzRnVuY3Rpb24ob2JqLmhhc093blByb3BlcnR5KSAmJlxuICAgICAgICBvYmouaGFzT3duUHJvcGVydHkoa2V5KVxuICAgICAgKSB7XG4gICAgICAgIF8ucHVsbChhbGxLZXlzLCBrZXkpO1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHtcbiAgICAgICAgICB2OiBvYmpba2V5XSxcbiAgICAgICAgICBwOiBgJHtscCA9PT0gJycgPyAnJyA6IGAke2xwfS5gfSR7a2V5fWAsXG4gICAgICAgICAgcGFyZW50OiB2ZXIsXG4gICAgICAgICAgaXNHZXR0ZXI6IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHdhbGtHZXR0ZXJzKSB7XG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWxsS2V5cy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgaWYgKF8uaXNPYmplY3Qob2JqKSkge1xuICAgICAgICAgIGNvbnN0IGtleSA9IGFsbEtleXNbaW5kZXhdO1xuICAgICAgICAgIGNoaWxkcmVuLnB1c2goe1xuICAgICAgICAgICAgdjogb2JqW2tleV0sXG4gICAgICAgICAgICBwOiBgJHtscCA9PT0gJycgPyAnJyA6IGAke2xwfS5gfSR7a2V5fWAsXG4gICAgICAgICAgICBwYXJlbnQ6IHZlcixcbiAgICAgICAgICAgIGlzR2V0dGVyOiB0cnVlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjaGlsZHJlbjtcbiAgfVxuICByZXR1cm4gW107XG59XG5cbmV4cG9ydCB0eXBlIEl0ZXJhdG9yID0gKFxuICB2YWx1ZTogYW55LFxuICBsb2Rhc2hQYXRoOiBzdHJpbmcsXG4gIC8vIEB0cy1pZ25vcmVcbiAgY2hhbmdlVmFsdWVUbzogKG5ld1ZhbHVlKSA9PiB2b2lkLFxuICBvcHRpb25zPzogTW9kZWxzLkFkZGl0aW9uYWxJdGVyYXRvck9wdGlvbnMsXG4pID0+IHZvaWQ7XG5leHBvcnQgY2xhc3MgSGVscGVycyB7XG4gIHB1YmxpYyBzdGF0aWMgZ2V0IFdhbGsoKSB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgcmV0dXJuIHtcbiAgICAgIE9iamVjdChcbiAgICAgICAganNvbjogT2JqZWN0LFxuICAgICAgICBpdGVyYXRvcjogSXRlcmF0b3IsXG4gICAgICAgIG9wdGlvbnNPcldhbGtHZXR0ZXJzVmFsdWU/OiBNb2RlbHMuU3RhcnRJdGVyYXRvck9wdGlvbnMsXG4gICAgICApIHtcbiAgICAgICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9uc09yV2Fsa0dldHRlcnNWYWx1ZSkpIHtcbiAgICAgICAgICBvcHRpb25zT3JXYWxrR2V0dGVyc1ZhbHVlID0ge307XG4gICAgICAgIH1cblxuICAgICAgICAob3B0aW9uc09yV2Fsa0dldHRlcnNWYWx1ZSBhcyBNb2RlbHMuSW50ZXJuYWxWYWx1ZXMpLmhhc0l0ZXJhdG9yID1cbiAgICAgICAgICBfLmlzRnVuY3Rpb24oaXRlcmF0b3IpO1xuXG4gICAgICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnNPcldhbGtHZXR0ZXJzVmFsdWUuYnJlYWR0aFdhbGspKSB7XG4gICAgICAgICAgb3B0aW9uc09yV2Fsa0dldHRlcnNWYWx1ZS5icmVhZHRoV2FsayA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHsgY2lyY3VyYWwgfSA9IHNlbGYuX3dhbGsoXG4gICAgICAgICAganNvbixcbiAgICAgICAgICBqc29uLFxuICAgICAgICAgIGl0ZXJhdG9yLFxuICAgICAgICAgIHZvaWQgMCxcbiAgICAgICAgICBvcHRpb25zT3JXYWxrR2V0dGVyc1ZhbHVlIGFzIGFueSxcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4geyBjaXJjczogY2lyY3VyYWwgfTtcbiAgICAgIH0sXG4gICAgICBPYmplY3RCeShcbiAgICAgICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICAgICAgaW5Db250ZXh0OiBPYmplY3QsXG4gICAgICAgIGl0ZXJhdG9yOiBJdGVyYXRvcixcbiAgICAgICAgb3B0aW9ucz86IE1vZGVscy5TdGFydEl0ZXJhdG9yT3B0aW9ucyxcbiAgICAgICkge1xuICAgICAgICBpZiAoXy5pc0Z1bmN0aW9uKGl0ZXJhdG9yKSkge1xuICAgICAgICAgIGl0ZXJhdG9yKGluQ29udGV4dCwgJycsIHNlbGYuX2NoYW5nZVZhbHVlKGluQ29udGV4dCwgcHJvcGVydHksIHRydWUpKTsgLy8gVE9ETyBBZGQgb3B0b2luc1xuICAgICAgICB9XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgY29uc3QganNvbiA9IGluQ29udGV4dFtwcm9wZXJ0eV07XG4gICAgICAgIHJldHVybiBzZWxmLldhbGsuT2JqZWN0KGpzb24sIGl0ZXJhdG9yLCBvcHRpb25zKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIF9jaGFuZ2VWYWx1ZShcbiAgICBqc29uOiBPYmplY3QsXG4gICAgbG9kYWhQYXRoOiBzdHJpbmcsXG4gICAgc2ltcGxlQ2hhbmdlID0gZmFsc2UsXG4gICAgb3B0aW9ucz86IE1vZGVscy5JbnRlcm5hbFZhbHVlcyxcbiAgKSB7XG4gICAgdmFyIHsgY29udGV4dFBhdGgsIHByb3BlcnR5IH0gPSB0aGlzLl9wcmVwYXJlUGFyYW1zKGxvZGFoUGF0aCk7XG4gICAgdmFyIGNvbnRleHQgPSBfLmdldChqc29uLCBjb250ZXh0UGF0aCk7XG5cbiAgICByZXR1cm4gKG5ld1ZhbHVlOiBhbnkpID0+IHtcbiAgICAgIGlmIChjb250ZXh0UGF0aCA9PT0gJycpIHtcbiAgICAgICAgc2ltcGxlQ2hhbmdlID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNpbXBsZUNoYW5nZSkge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGpzb25bcHJvcGVydHldID0gbmV3VmFsdWU7XG4gICAgICB9IGVsc2Uge1xuXG5cbiAgICAgICAgaWYgKGNvbnRleHQpIHtcbiAgICAgICAgICBjb250ZXh0W3Byb3BlcnR5XSA9IG5ld1ZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICBvcHRpb25zLl92YWx1ZUNoYW5nZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfcHJlcGFyZVBhcmFtcyhsb2Rhc2hQYXRoOiBzdHJpbmcpIHtcblxuICAgIGNvbnN0IGNvbnRleHRQYXRoID0gdGhpcy5fSGVscGVycy5QYXRoLmdldENvbnRleHRQYXRoKGxvZGFzaFBhdGgpO1xuXG5cbiAgICBsZXQgcHJvcGVydHkgPSB0aGlzLl9IZWxwZXJzLlBhdGguZ2V0UHJvcGVydHlQYXRoKGxvZGFzaFBhdGgsIGNvbnRleHRQYXRoKTtcblxuICAgIGlmIChcbiAgICAgIF8uaXNTdHJpbmcocHJvcGVydHkpICYmXG4gICAgICBwcm9wZXJ0eS50cmltKCkgIT09ICcnICYmXG4gICAgICAhXy5pc05hTihOdW1iZXIocHJvcGVydHkpKVxuICAgICkge1xuICAgICAgcHJvcGVydHkgPSBOdW1iZXIocHJvcGVydHkpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgY29udGV4dFBhdGgsXG4gICAgICBwcm9wZXJ0eSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0IF9IZWxwZXJzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBnZXQgUGF0aCgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgZ2V0UHJvcGVydHlQYXRoKGxvZGFoUGF0aCwgY29udGV0UGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuIGxvZGFoUGF0aFxuICAgICAgICAgICAgICAucmVwbGFjZShjb250ZXRQYXRoLCAnJylcbiAgICAgICAgICAgICAgLnJlcGxhY2UoL15cXC4vLCAnJylcbiAgICAgICAgICAgICAgLnJlcGxhY2UoL1xcWy8sICcnKVxuICAgICAgICAgICAgICAucmVwbGFjZSgvXFxdLywgJycpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZ2V0Q29udGV4dFBhdGgocDogc3RyaW5nKSB7XG4gICAgICAgICAgICBsZXQgcmVzOiBzdHJpbmc7XG4gICAgICAgICAgICBpZiAocC5lbmRzV2l0aCgnXScpKSB7XG4gICAgICAgICAgICAgIHJlcyA9IHAucmVwbGFjZSgvXFxbKFxcXCJ8XFwnKT9bMC05XSsoXFxcInxcXCcpP1xcXSQvLCAnJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXMgPSBwLnJlcGxhY2UoL1xcLihbYS16QS1aMC05XXxcXCR8XFxffFxcQHxcXC18XFwvfFxcOikrJC8sICcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiByZXMgPT09IHAgPyAnJyA6IHJlcztcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX3Nob3VkbFJldHVybihpbmNsdWRlID0gW10sIGV4Y2x1ZGUgPSBbXSwgbG9kYXNoUGF0aDogc3RyaW5nKSB7XG4gICAgbGV0IHJlcyA9IGZhbHNlO1xuICAgIGlmIChsb2Rhc2hQYXRoLnJlcGxhY2UoL15cXFsoXFwnfFxcXCIpP1swLTldKihcXCd8XFxcIik/XFxdLywgJycpLnRyaW0oKSAhPT0gJycpIHtcbiAgICAgIGxvZGFzaFBhdGggPSBsb2Rhc2hQYXRoLnJlcGxhY2UoL15cXFsoXFwnfFxcXCIpP1swLTldKihcXCd8XFxcIik/XFxdXFwuLywgJycpO1xuICAgICAgcmVzID1cbiAgICAgICAgKF8uaXNBcnJheShpbmNsdWRlKSAmJlxuICAgICAgICAgIGluY2x1ZGUubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICFpbmNsdWRlLmZpbmQocCA9PiBsb2Rhc2hQYXRoLnN0YXJ0c1dpdGgocCkpKSB8fFxuICAgICAgICAoXy5pc0FycmF5KGV4Y2x1ZGUpICYmXG4gICAgICAgICAgZXhjbHVkZS5sZW5ndGggPiAwICYmXG4gICAgICAgICAgISFleGNsdWRlLmZpbmQocCA9PiBsb2Rhc2hQYXRoLnN0YXJ0c1dpdGgocCkpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBwcml2YXRlIHN0YXRpYyBwcmVwYXJlT3B0aW9ucyhcbiAgICBvcHRpb25zOiBNb2RlbHMuSW50ZXJuYWxWYWx1ZXMsXG4gICAgb2JqLFxuICAgIGxvZGFzaFBhdGgsXG4gICkge1xuICAgIGlmIChvcHRpb25zLl9leGl0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy53YWxrR2V0dGVycykpIHtcbiAgICAgIG9wdGlvbnMud2Fsa0dldHRlcnMgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuY2hlY2tDaXJjdXJhbCkpIHtcbiAgICAgIG9wdGlvbnMuY2hlY2tDaXJjdXJhbCA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuaXNHZXR0ZXIpKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBvcHRpb25zLmlzR2V0dGVyID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5fdmFsdWVDaGFuZ2VkKSkge1xuICAgICAgb3B0aW9ucy5fdmFsdWVDaGFuZ2VkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5fZXhpdCkpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG9wdGlvbnMuX2V4aXQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLmV4aXQpKSB7XG4gICAgICBvcHRpb25zLmV4aXQgPSAoKSA9PiB7XG4gICAgICAgIG9wdGlvbnMuX2V4aXQgPSB0cnVlO1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLl9za2lwKSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgb3B0aW9ucy5fc2tpcCA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuc2tpcE9iamVjdCkpIHtcbiAgICAgIG9wdGlvbnMuc2tpcE9iamVjdCA9ICgpID0+IHtcbiAgICAgICAgb3B0aW9ucy5fc2tpcCA9IHRydWU7XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmNoZWNrQ2lyY3VyYWwpIHtcbiAgICAgIGlmIChfLmlzVW5kZWZpbmVkKG9wdGlvbnMuZGIpKSB7XG4gICAgICAgIG9wdGlvbnMuZGIgPSB7fTtcbiAgICAgIH1cblxuICAgICAgaWYgKF8uaXNVbmRlZmluZWQob3B0aW9ucy5zdGFjaykpIHtcbiAgICAgICAgb3B0aW9ucy5zdGFjayA9IFtdO1xuICAgICAgfVxuXG4gICAgICBpZiAoXy5pc1VuZGVmaW5lZChvcHRpb25zLmNpcmN1cmFsKSkge1xuICAgICAgICBvcHRpb25zLmNpcmN1cmFsID0gW107XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgeyBkYiwgc3RhY2sgfSA9IG9wdGlvbnM7XG4gICAgb3B0aW9ucy5pc0NpcmN1cmFsID0gZmFsc2U7XG5cbiAgICBpZiAob3B0aW9ucy5jaGVja0NpcmN1cmFsICYmIF8uaXNPYmplY3Qob2JqKSkge1xuICAgICAgbGV0IGluZGV4VmFsdWUgPSBDTEFTUy5PQkpFQ1Qob2JqKS5pbmRleFZhbHVlO1xuICAgICAgaWYgKENMQVNTLk9CSkVDVChvYmopLmlzQ2xhc3NPYmplY3QgJiYgIV8uaXNVbmRlZmluZWQoaW5kZXhWYWx1ZSkpIHtcbiAgICAgICAgbGV0IGNsYXNzTmFtZSA9IENMQVNTLmdldE5hbWVGcm9tT2JqZWN0KG9iaik7XG4gICAgICAgIGxldCBwID0gYCR7Y2xhc3NOYW1lfS5pZF8ke2luZGV4VmFsdWV9YDtcbiAgICAgICAgY29uc3QgaW5EQjogTW9kZWxzLkluREJUeXBlID0gXy5nZXQoZGIsIHApO1xuXG4gICAgICAgIGlmIChpbkRCICYmIENMQVNTLk9CSkVDVChpbkRCLnRhcmdldCkuaXNFcXVhbChvYmopKSB7XG4gICAgICAgICAgY29uc3QgY2lyYzogTW9kZWxzLkNpcmMgPSB7XG4gICAgICAgICAgICBwYXRoVG9PYmo6IGxvZGFzaFBhdGgsXG4gICAgICAgICAgICBjaXJjdXJhbFRhcmdldFBhdGg6IGluREIucGF0aCxcbiAgICAgICAgICB9O1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBvcHRpb25zLmNpcmN1cmFsLnB1c2goY2lyYyk7XG4gICAgICAgICAgb3B0aW9ucy5pc0NpcmN1cmFsID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBfLnNldChkYiwgcCwge1xuICAgICAgICAgICAgcGF0aDogbG9kYXNoUGF0aCxcbiAgICAgICAgICAgIHRhcmdldDogb2JqLFxuICAgICAgICAgIH0gYXMgTW9kZWxzLkluREJUeXBlKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBjb25zdCBpblN0YWNrID0gc3RhY2suZmluZCgoYzogTW9kZWxzLkluREJUeXBlKSA9PiBjLnRhcmdldCA9PSBvYmopO1xuXG4gICAgICAgIGlmICghXy5pc1VuZGVmaW5lZChpblN0YWNrKSkge1xuICAgICAgICAgIGNvbnN0IGNpcmM6IE1vZGVscy5DaXJjID0ge1xuICAgICAgICAgICAgcGF0aFRvT2JqOiBsb2Rhc2hQYXRoLFxuICAgICAgICAgICAgY2lyY3VyYWxUYXJnZXRQYXRoOiBpblN0YWNrLnBhdGgsXG4gICAgICAgICAgfTtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgb3B0aW9ucy5jaXJjdXJhbC5wdXNoKGNpcmMpO1xuICAgICAgICAgIG9wdGlvbnMuaXNDaXJjdXJhbCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHN0YWNrLnB1c2goe1xuICAgICAgICAgICAgcGF0aDogbG9kYXNoUGF0aCxcbiAgICAgICAgICAgIHRhcmdldDogb2JqLFxuICAgICAgICAgIH0gYXMgTW9kZWxzLkluREJUeXBlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIF93YWxrKFxuICAgIGpzb246IE9iamVjdCxcbiAgICBvYmpPcldoYXRldmVyOiB1bmtub3duLFxuICAgIGl0ZXJhdG9yOiBJdGVyYXRvcixcbiAgICBsb2Rhc2hQYXRoID0gJycsXG4gICAgb3B0aW9ucz86IE1vZGVscy5JbnRlcm5hbFZhbHVlcyxcbiAgICBkZXB0aExldmVsID0gMCxcbiAgKSB7XG4gICAgaWYgKCFvcHRpb25zKSB7XG4gICAgICBvcHRpb25zID0ge30gYXMgYW55O1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAoIW9wdGlvbnMuYnJlYWR0aFdhbGspIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG9wdGlvbnMgPSB0aGlzLnByZXBhcmVPcHRpb25zKG9wdGlvbnMsIG9iak9yV2hhdGV2ZXIsIGxvZGFzaFBhdGgpO1xuXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBpZiAodGhpcy5fc2hvdWRsUmV0dXJuKG9wdGlvbnMuaW5jbHVkZSwgb3B0aW9ucy5leGNsdWRlLCBsb2Rhc2hQYXRoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmIChvcHRpb25zLmhhc0l0ZXJhdG9yICYmIGxvZGFzaFBhdGggIT09ICcnKSB7XG4gICAgICAgIGl0ZXJhdG9yKFxuICAgICAgICAgIG9iak9yV2hhdGV2ZXIsXG4gICAgICAgICAgbG9kYXNoUGF0aCxcbiAgICAgICAgICB0aGlzLl9jaGFuZ2VWYWx1ZShqc29uLCBsb2Rhc2hQYXRoLCBmYWxzZSwgb3B0aW9ucyksXG4gICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgaWYgKG9wdGlvbnMuX3ZhbHVlQ2hhbmdlZCkge1xuICAgICAgICBvYmpPcldoYXRldmVyID0gXy5nZXQoanNvbiwgbG9kYXNoUGF0aCk7XG4gICAgICB9XG4gICAgICBvcHRpb25zLl92YWx1ZUNoYW5nZWQgPSBmYWxzZTtcblxuICAgICAgaWYgKG9wdGlvbnMuaXNDaXJjdXJhbCkge1xuICAgICAgICBvcHRpb25zLl9za2lwID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG9wdGlvbnMuX3NraXApIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBvcHRpb25zLl9za2lwID0gZmFsc2U7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5icmVhZHRoV2Fsaykge1xuICAgICAgbGV0IHF1ZXVlOiBNb2RlbHMuVmVyW10gPSBbeyB2OiBqc29uLCBwOiBsb2Rhc2hQYXRoLCBwYXJlbnQ6IHZvaWQgMCB9XTtcblxuXG4gICAgICB3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCB2ZXIgPSBxdWV1ZS5zaGlmdCgpO1xuXG5cblxuXG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBpZiAodGhpcy5fc2hvdWRsUmV0dXJuKG9wdGlvbnMuaW5jbHVkZSwgb3B0aW9ucy5leGNsdWRlLCB2ZXIucCkpIHtcblxuXG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuXG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBsZXQgeyB2LCBwIH0gPSB2ZXI7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgb3B0aW9ucyA9IHRoaXMucHJlcGFyZU9wdGlvbnMob3B0aW9ucywgdiwgcCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuX2V4aXQpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnRVhJVCcpO1xuICAgICAgICAgIHJldHVybiBvcHRpb25zO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmhhc0l0ZXJhdG9yICYmIHAgIT09ICcnKSB7XG4gICAgICAgICAgaXRlcmF0b3IodiwgcCwgdGhpcy5fY2hhbmdlVmFsdWUoanNvbiwgcCwgZmFsc2UsIG9wdGlvbnMpLCBvcHRpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKG9wdGlvbnMuX3ZhbHVlQ2hhbmdlZCkge1xuICAgICAgICAgIHZlci52ID0gXy5nZXQoanNvbiwgcCk7XG4gICAgICAgIH1cbiAgICAgICAgb3B0aW9ucy5fdmFsdWVDaGFuZ2VkID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuaXNDaXJjdXJhbCkge1xuXG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5fc2tpcCkge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBvcHRpb25zLl9za2lwID0gZmFsc2U7XG5cbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChfLmlzQXJyYXkodikpIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcXVldWUgPSBxdWV1ZS5jb25jYXQoZmluZENoaWxkcmVuKHZlciwgcCwgb3B0aW9ucy53YWxrR2V0dGVycykpO1xuICAgICAgICB9IGVsc2UgaWYgKF8uaXNPYmplY3QodikpIHtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcXVldWUgPSBxdWV1ZS5jb25jYXQoZmluZENoaWxkcmVuKHZlciwgcCwgb3B0aW9ucy53YWxrR2V0dGVycykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbnN0IHsgd2Fsa0dldHRlcnMgfSA9IG9wdGlvbnM7XG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KG9iak9yV2hhdGV2ZXIpKSB7XG4gICAgICAgIG9iak9yV2hhdGV2ZXIuZm9yRWFjaCgobywgaSkgPT4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICB0aGlzLl93YWxrKFxuICAgICAgICAgICAganNvbixcbiAgICAgICAgICAgIG9iak9yV2hhdGV2ZXJbaV0sXG4gICAgICAgICAgICBpdGVyYXRvcixcbiAgICAgICAgICAgIGAke2xvZGFzaFBhdGh9WyR7aX1dYCxcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBkZXB0aExldmVsICsgMSxcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoXy5pc09iamVjdChvYmpPcldoYXRldmVyKSkge1xuICAgICAgICBjb25zdCBhbGxLZXlzID0gIXdhbGtHZXR0ZXJzXG4gICAgICAgICAgPyBbXVxuICAgICAgICAgIDogT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMob2JqT3JXaGF0ZXZlcik7XG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmpPcldoYXRldmVyKSB7XG5cbiAgICAgICAgICBpZiAoXy5pc09iamVjdChvYmpPcldoYXRldmVyKSAmJiBvYmpPcldoYXRldmVyLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgIF8ucHVsbChhbGxLZXlzLCBrZXkpO1xuXG4gICAgICAgICAgICBsZXQgbmV3UHJvcEtleSA9IGtleTtcbiAgICAgICAgICAgIG9wdGlvbnMuaXNHZXR0ZXIgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChuZXdQcm9wS2V5LmluY2x1ZGVzKCcuJykpIHtcbiAgICAgICAgICAgICAgbmV3UHJvcEtleSA9IGBbJyR7bmV3UHJvcEtleX0nXWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0aGlzLl93YWxrKFxuICAgICAgICAgICAgICBqc29uLFxuICAgICAgICAgICAgICBvYmpPcldoYXRldmVyW25ld1Byb3BLZXldLFxuICAgICAgICAgICAgICBpdGVyYXRvcixcbiAgICAgICAgICAgICAgYCR7bG9kYXNoUGF0aCA9PT0gJycgPyAnJyA6IGAke2xvZGFzaFBhdGh9LmB9JHtuZXdQcm9wS2V5fWAsXG4gICAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICAgIGRlcHRoTGV2ZWwgKyAxLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHdhbGtHZXR0ZXJzKSB7XG4gICAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGFsbEtleXMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBpZiAoXy5pc09iamVjdChvYmpPcldoYXRldmVyKSkge1xuICAgICAgICAgICAgICBjb25zdCBrZXkgPSBhbGxLZXlzW2luZGV4XTtcblxuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIG9wdGlvbnMuaXNHZXR0ZXIgPSB0cnVlO1xuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIHRoaXMuX3dhbGsoXG4gICAgICAgICAgICAgICAganNvbixcbiAgICAgICAgICAgICAgICBvYmpPcldoYXRldmVyW2tleV0sXG4gICAgICAgICAgICAgICAgaXRlcmF0b3IsXG4gICAgICAgICAgICAgICAgYCR7bG9kYXNoUGF0aCA9PT0gJycgPyAnJyA6IGAke2xvZGFzaFBhdGh9LmB9JHtrZXl9YCxcbiAgICAgICAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgICAgICAgIGRlcHRoTGV2ZWwgKyAxLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBpZiAob3B0aW9ucy5fZXhpdCAmJiBqc29uID09PSBvYmpPcldoYXRldmVyKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgb3B0aW9ucy5fZXhpdCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBvcHRpb25zO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCB3YWxrID0ge1xuICBPYmplY3Q6IEhlbHBlcnMuV2Fsay5PYmplY3QsXG4gIE9iamVjdEJ5OiBIZWxwZXJzLldhbGsuT2JqZWN0QnksXG59O1xuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9bG9kYXNoLXdhbGstb2JqZWN0IGxpYi9pbmRleC50cyJdfQ==
|
|
@@ -238,25 +238,25 @@ class Helpers {
|
|
|
238
238
|
}
|
|
239
239
|
return options;
|
|
240
240
|
}
|
|
241
|
-
static _walk(json,
|
|
241
|
+
static _walk(json, objOrWhatever, iterator, lodashPath = '', options, depthLevel = 0) {
|
|
242
242
|
if (!options) {
|
|
243
243
|
options = {};
|
|
244
244
|
}
|
|
245
245
|
// @ts-ignore
|
|
246
246
|
if (!options.breadthWalk) {
|
|
247
247
|
// @ts-ignore
|
|
248
|
-
options = this.prepareOptions(options,
|
|
248
|
+
options = this.prepareOptions(options, objOrWhatever, lodashPath);
|
|
249
249
|
// @ts-ignore
|
|
250
250
|
if (this._shoudlReturn(options.include, options.exclude, lodashPath)) {
|
|
251
251
|
return;
|
|
252
252
|
}
|
|
253
253
|
// @ts-ignore
|
|
254
254
|
if (options.hasIterator && lodashPath !== '') {
|
|
255
|
-
iterator(
|
|
255
|
+
iterator(objOrWhatever, lodashPath, this._changeValue(json, lodashPath, false, options), options);
|
|
256
256
|
}
|
|
257
257
|
// @ts-ignore
|
|
258
258
|
if (options._valueChanged) {
|
|
259
|
-
|
|
259
|
+
objOrWhatever = _.get(json, lodashPath);
|
|
260
260
|
}
|
|
261
261
|
options._valueChanged = false;
|
|
262
262
|
if (options.isCircural) {
|
|
@@ -313,16 +313,19 @@ class Helpers {
|
|
|
313
313
|
else {
|
|
314
314
|
// @ts-ignore
|
|
315
315
|
const { walkGetters } = options;
|
|
316
|
-
if (Array.isArray(
|
|
317
|
-
|
|
316
|
+
if (Array.isArray(objOrWhatever)) {
|
|
317
|
+
objOrWhatever.forEach((o, i) => {
|
|
318
318
|
// @ts-ignore
|
|
319
|
-
this._walk(json,
|
|
319
|
+
this._walk(json, objOrWhatever[i], iterator, `${lodashPath}[${i}]`, options, depthLevel + 1);
|
|
320
320
|
});
|
|
321
321
|
}
|
|
322
|
-
else if (_.isObject(
|
|
323
|
-
const allKeys = !walkGetters
|
|
324
|
-
|
|
325
|
-
|
|
322
|
+
else if (_.isObject(objOrWhatever)) {
|
|
323
|
+
const allKeys = !walkGetters
|
|
324
|
+
? []
|
|
325
|
+
: Object.getOwnPropertyNames(objOrWhatever);
|
|
326
|
+
// @ts-ignore
|
|
327
|
+
for (const key in objOrWhatever) {
|
|
328
|
+
if (_.isObject(objOrWhatever) && objOrWhatever.hasOwnProperty(key)) {
|
|
326
329
|
_.pull(allKeys, key);
|
|
327
330
|
let newPropKey = key;
|
|
328
331
|
options.isGetter = false;
|
|
@@ -330,23 +333,23 @@ class Helpers {
|
|
|
330
333
|
newPropKey = `['${newPropKey}']`;
|
|
331
334
|
}
|
|
332
335
|
// @ts-ignore
|
|
333
|
-
this._walk(json,
|
|
336
|
+
this._walk(json, objOrWhatever[newPropKey], iterator, `${lodashPath === '' ? '' : `${lodashPath}.`}${newPropKey}`, options, depthLevel + 1);
|
|
334
337
|
}
|
|
335
338
|
}
|
|
336
339
|
if (walkGetters) {
|
|
337
340
|
for (let index = 0; index < allKeys.length; index++) {
|
|
338
|
-
if (_.isObject(
|
|
341
|
+
if (_.isObject(objOrWhatever)) {
|
|
339
342
|
const key = allKeys[index];
|
|
340
343
|
// @ts-ignore
|
|
341
344
|
options.isGetter = true;
|
|
342
345
|
// @ts-ignore
|
|
343
|
-
this._walk(json,
|
|
346
|
+
this._walk(json, objOrWhatever[key], iterator, `${lodashPath === '' ? '' : `${lodashPath}.`}${key}`, options, depthLevel + 1);
|
|
344
347
|
}
|
|
345
348
|
}
|
|
346
349
|
}
|
|
347
350
|
}
|
|
348
351
|
// @ts-ignore
|
|
349
|
-
if (options._exit && json ===
|
|
352
|
+
if (options._exit && json === objOrWhatever) {
|
|
350
353
|
// @ts-ignore
|
|
351
354
|
options._exit = false;
|
|
352
355
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lodash-walk-object.mjs","sources":["../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lib/models.ts","../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lib/index.ts","../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lodash-walk-object.ts"],"sourcesContent":["\n\nexport namespace Models {\n\n export type InDBType = { target: any; path: string; };\n export type Circ = { pathToObj: string; circuralTargetPath: string; };\n\n\n // @ts-ignore\n export type Ver = { v: any; p: string; parent: Ver; isGetter?: boolean; }\n\n export interface StartIteratorOptions {\n walkGetters?: boolean;\n\n /**\n * Default in breadhTwalk\n */\n checkCircural?: boolean;\n breadthWalk?: boolean;\n include?: string[];\n exclude?: string[];\n }\n\n export interface AdditionalIteratorOptions extends StartIteratorOptions {\n skipObject?: () => void;\n isGetter?: boolean;\n /**\n * Breadth walk will skip content of circural objects\n */\n isCircural?: boolean;\n exit?: () => void;\n\n }\n\n export interface InternalValues extends AdditionalIteratorOptions {\n db?: any;\n stack?: any[];\n circural?: Circ[];\n hasIterator?: boolean;\n _valueChanged: boolean;\n _skip: boolean;\n _exit: boolean;\n }\n}\n\n ;({}); // @--end-of-file-for-module=lodash-walk-object lib/models.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\n\nimport { Models } from './models';\nexport * from './models';\n\nfunction findChildren(\n ver: Models.Ver,\n lp: string,\n walkGetters: boolean,\n): Models.Ver[] {\n const obj = ver.v;\n if (_.isArray(obj)) {\n return obj.map((v, i) => {\n return { v, p: `${lp}[${i}]`, parent: ver, isGetter: false };\n });\n } else if (_.isObject(obj)) {\n const allKeys = !walkGetters ? [] : Object.getOwnPropertyNames(obj);\n const children: Models.Ver[] = [];\n for (const key in obj) {\n if (\n _.isObject(obj) &&\n _.isFunction(obj.hasOwnProperty) &&\n obj.hasOwnProperty(key)\n ) {\n _.pull(allKeys, key);\n children.push({\n v: obj[key],\n p: `${lp === '' ? '' : `${lp}.`}${key}`,\n parent: ver,\n isGetter: false,\n });\n }\n }\n if (walkGetters) {\n for (let index = 0; index < allKeys.length; index++) {\n if (_.isObject(obj)) {\n const key = allKeys[index];\n children.push({\n v: obj[key],\n p: `${lp === '' ? '' : `${lp}.`}${key}`,\n parent: ver,\n isGetter: true,\n });\n }\n }\n }\n return children;\n }\n return [];\n}\n\nexport type Iterator = (\n value: any,\n lodashPath: string,\n // @ts-ignore\n changeValueTo: (newValue) => void,\n options?: Models.AdditionalIteratorOptions,\n) => void;\nexport class Helpers {\n public static get Walk() {\n const self = this;\n return {\n Object(\n json: Object,\n iterator: Iterator,\n optionsOrWalkGettersValue?: Models.StartIteratorOptions,\n ) {\n if (_.isUndefined(optionsOrWalkGettersValue)) {\n optionsOrWalkGettersValue = {};\n }\n\n (optionsOrWalkGettersValue as Models.InternalValues).hasIterator =\n _.isFunction(iterator);\n\n if (_.isUndefined(optionsOrWalkGettersValue.breadthWalk)) {\n optionsOrWalkGettersValue.breadthWalk = false;\n }\n\n let { circural } = self._walk(\n json,\n json,\n iterator,\n void 0,\n optionsOrWalkGettersValue as any,\n );\n\n return { circs: circural };\n },\n ObjectBy(\n property: string,\n inContext: Object,\n iterator: Iterator,\n options?: Models.StartIteratorOptions,\n ) {\n if (_.isFunction(iterator)) {\n iterator(inContext, '', self._changeValue(inContext, property, true)); // TODO Add optoins\n }\n // @ts-ignore\n const json = inContext[property];\n return self.Walk.Object(json, iterator, options);\n },\n };\n }\n\n private static _changeValue(\n json: Object,\n lodahPath: string,\n simpleChange = false,\n options?: Models.InternalValues,\n ) {\n var { contextPath, property } = this._prepareParams(lodahPath);\n var context = _.get(json, contextPath);\n\n return (newValue: any) => {\n if (contextPath === '') {\n simpleChange = true;\n }\n\n if (simpleChange) {\n // @ts-ignore\n json[property] = newValue;\n } else {\n\n\n if (context) {\n context[property] = newValue;\n }\n }\n if (options) {\n options._valueChanged = true;\n }\n };\n }\n\n private static _prepareParams(lodashPath: string) {\n\n const contextPath = this._Helpers.Path.getContextPath(lodashPath);\n\n\n let property = this._Helpers.Path.getPropertyPath(lodashPath, contextPath);\n\n if (\n _.isString(property) &&\n property.trim() !== '' &&\n !_.isNaN(Number(property))\n ) {\n property = Number(property);\n }\n return {\n contextPath,\n property,\n };\n }\n\n private static get _Helpers() {\n return {\n get Path() {\n return {\n // @ts-ignore\n getPropertyPath(lodahPath, contetPath) {\n return lodahPath\n .replace(contetPath, '')\n .replace(/^\\./, '')\n .replace(/\\[/, '')\n .replace(/\\]/, '');\n },\n getContextPath(p: string) {\n let res: string;\n if (p.endsWith(']')) {\n res = p.replace(/\\[(\\\"|\\')?[0-9]+(\\\"|\\')?\\]$/, '');\n } else {\n res = p.replace(/\\.([a-zA-Z0-9]|\\$|\\_|\\@|\\-|\\/|\\:)+$/, '');\n }\n return res === p ? '' : res;\n },\n };\n },\n };\n }\n\n private static _shoudlReturn(include = [], exclude = [], lodashPath: string) {\n let res = false;\n if (lodashPath.replace(/^\\[(\\'|\\\")?[0-9]*(\\'|\\\")?\\]/, '').trim() !== '') {\n lodashPath = lodashPath.replace(/^\\[(\\'|\\\")?[0-9]*(\\'|\\\")?\\]\\./, '');\n res =\n (_.isArray(include) &&\n include.length > 0 &&\n !include.find(p => lodashPath.startsWith(p))) ||\n (_.isArray(exclude) &&\n exclude.length > 0 &&\n !!exclude.find(p => lodashPath.startsWith(p)));\n }\n\n return res;\n }\n\n // @ts-ignore\n private static prepareOptions(\n options: Models.InternalValues,\n obj,\n lodashPath,\n ) {\n if (options._exit) {\n return;\n }\n\n if (_.isUndefined(options.walkGetters)) {\n options.walkGetters = true;\n }\n\n if (_.isUndefined(options.checkCircural)) {\n options.checkCircural = false;\n }\n\n if (_.isUndefined(options.isGetter)) {\n // @ts-ignore\n options.isGetter = false;\n }\n\n if (_.isUndefined(options._valueChanged)) {\n options._valueChanged = false;\n }\n\n if (_.isUndefined(options._exit)) {\n // @ts-ignore\n options._exit = false;\n }\n\n if (_.isUndefined(options.exit)) {\n options.exit = () => {\n options._exit = true;\n };\n }\n\n if (_.isUndefined(options._skip)) {\n // @ts-ignore\n options._skip = false;\n }\n\n if (_.isUndefined(options.skipObject)) {\n options.skipObject = () => {\n options._skip = true;\n };\n }\n\n if (options.checkCircural) {\n if (_.isUndefined(options.db)) {\n options.db = {};\n }\n\n if (_.isUndefined(options.stack)) {\n options.stack = [];\n }\n\n if (_.isUndefined(options.circural)) {\n options.circural = [];\n }\n }\n\n const { db, stack } = options;\n options.isCircural = false;\n\n if (options.checkCircural && _.isObject(obj)) {\n let indexValue = CLASS.OBJECT(obj).indexValue;\n if (CLASS.OBJECT(obj).isClassObject && !_.isUndefined(indexValue)) {\n let className = CLASS.getNameFromObject(obj);\n let p = `${className}.id_${indexValue}`;\n const inDB: Models.InDBType = _.get(db, p);\n\n if (inDB && CLASS.OBJECT(inDB.target).isEqual(obj)) {\n const circ: Models.Circ = {\n pathToObj: lodashPath,\n circuralTargetPath: inDB.path,\n };\n // @ts-ignore\n options.circural.push(circ);\n options.isCircural = true;\n } else {\n _.set(db, p, {\n path: lodashPath,\n target: obj,\n } as Models.InDBType);\n }\n } else {\n // @ts-ignore\n const inStack = stack.find((c: Models.InDBType) => c.target == obj);\n\n if (!_.isUndefined(inStack)) {\n const circ: Models.Circ = {\n pathToObj: lodashPath,\n circuralTargetPath: inStack.path,\n };\n // @ts-ignore\n options.circural.push(circ);\n options.isCircural = true;\n } else {\n // @ts-ignore\n stack.push({\n path: lodashPath,\n target: obj,\n } as Models.InDBType);\n }\n }\n }\n return options;\n }\n\n private static _walk(\n json: Object,\n obj: Object,\n iterator: Iterator,\n lodashPath = '',\n options?: Models.InternalValues,\n depthLevel = 0,\n ) {\n if (!options) {\n options = {} as any;\n }\n\n // @ts-ignore\n if (!options.breadthWalk) {\n // @ts-ignore\n options = this.prepareOptions(options, obj, lodashPath);\n\n // @ts-ignore\n if (this._shoudlReturn(options.include, options.exclude, lodashPath)) {\n return;\n }\n\n // @ts-ignore\n if (options.hasIterator && lodashPath !== '') {\n iterator(\n obj,\n lodashPath,\n this._changeValue(json, lodashPath, false, options),\n options,\n );\n }\n\n // @ts-ignore\n if (options._valueChanged) {\n obj = _.get(json, lodashPath);\n }\n options._valueChanged = false;\n\n if (options.isCircural) {\n options._skip = true;\n }\n\n if (options._skip) {\n // @ts-ignore\n options._skip = false;\n return;\n }\n }\n\n if (options.breadthWalk) {\n let queue: Models.Ver[] = [{ v: json, p: lodashPath, parent: void 0 }];\n\n\n while (queue.length > 0) {\n const ver = queue.shift();\n\n\n\n\n\n // @ts-ignore\n if (this._shoudlReturn(options.include, options.exclude, ver.p)) {\n\n\n continue;\n }\n\n\n\n // @ts-ignore\n let { v, p } = ver;\n // @ts-ignore\n options = this.prepareOptions(options, v, p);\n\n if (options._exit) {\n console.log('EXIT');\n return options;\n }\n if (options.hasIterator && p !== '') {\n iterator(v, p, this._changeValue(json, p, false, options), options);\n }\n\n // @ts-ignore\n if (options._valueChanged) {\n ver.v = _.get(json, p);\n }\n options._valueChanged = false;\n\n if (options.isCircural) {\n\n continue;\n }\n\n if (options._skip) {\n // @ts-ignore\n options._skip = false;\n\n continue;\n }\n\n if (_.isArray(v)) {\n // @ts-ignore\n queue = queue.concat(findChildren(ver, p, options.walkGetters));\n } else if (_.isObject(v)) {\n // @ts-ignore\n queue = queue.concat(findChildren(ver, p, options.walkGetters));\n }\n }\n } else {\n // @ts-ignore\n const { walkGetters } = options;\n\n if (Array.isArray(obj)) {\n obj.forEach((o, i) => {\n // @ts-ignore\n this._walk(\n json,\n obj[i],\n iterator,\n `${lodashPath}[${i}]`,\n options,\n depthLevel + 1,\n );\n });\n } else if (_.isObject(obj)) {\n const allKeys = !walkGetters ? [] : Object.getOwnPropertyNames(obj);\n for (const key in obj) {\n\n if (_.isObject(obj) && obj.hasOwnProperty(key)) {\n _.pull(allKeys, key);\n\n let newPropKey = key;\n options.isGetter = false;\n if (newPropKey.includes('.')) {\n newPropKey = `['${newPropKey}']`;\n }\n // @ts-ignore\n this._walk(\n json,\n obj[newPropKey],\n iterator,\n `${lodashPath === '' ? '' : `${lodashPath}.`}${newPropKey}`,\n options,\n depthLevel + 1,\n );\n }\n }\n if (walkGetters) {\n for (let index = 0; index < allKeys.length; index++) {\n if (_.isObject(obj)) {\n const key = allKeys[index];\n\n // @ts-ignore\n options.isGetter = true;\n // @ts-ignore\n this._walk(\n json,\n obj[key],\n iterator,\n `${lodashPath === '' ? '' : `${lodashPath}.`}${key}`,\n options,\n depthLevel + 1,\n );\n }\n }\n }\n }\n\n // @ts-ignore\n if (options._exit && json === obj) {\n // @ts-ignore\n options._exit = false;\n }\n }\n\n return options;\n }\n}\n\nexport const walk = {\n Object: Helpers.Walk.Object,\n ObjectBy: Helpers.Walk.ObjectBy,\n};\n\n ;({}); // @--end-of-file-for-module=lodash-walk-object lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lodash-walk-object.mjs","sources":["../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lib/models.ts","../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lib/index.ts","../../../tmp-libs-for-dist/lodash-walk-object/projects/lodash-walk-object/src/lodash-walk-object.ts"],"sourcesContent":["\n\nexport namespace Models {\n\n export type InDBType = { target: any; path: string; };\n export type Circ = { pathToObj: string; circuralTargetPath: string; };\n\n\n // @ts-ignore\n export type Ver = { v: any; p: string; parent: Ver; isGetter?: boolean; }\n\n export interface StartIteratorOptions {\n walkGetters?: boolean;\n\n /**\n * Default in breadhTwalk\n */\n checkCircural?: boolean;\n breadthWalk?: boolean;\n include?: string[];\n exclude?: string[];\n }\n\n export interface AdditionalIteratorOptions extends StartIteratorOptions {\n skipObject?: () => void;\n isGetter?: boolean;\n /**\n * Breadth walk will skip content of circural objects\n */\n isCircural?: boolean;\n exit?: () => void;\n\n }\n\n export interface InternalValues extends AdditionalIteratorOptions {\n db?: any;\n stack?: any[];\n circural?: Circ[];\n hasIterator?: boolean;\n _valueChanged: boolean;\n _skip: boolean;\n _exit: boolean;\n }\n}\n\n ;({}); // @--end-of-file-for-module=lodash-walk-object lib/models.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\n\nimport { Models } from './models';\nexport * from './models';\n\nfunction findChildren(\n ver: Models.Ver,\n lp: string,\n walkGetters: boolean,\n): Models.Ver[] {\n const obj = ver.v;\n if (_.isArray(obj)) {\n return obj.map((v, i) => {\n return { v, p: `${lp}[${i}]`, parent: ver, isGetter: false };\n });\n } else if (_.isObject(obj)) {\n const allKeys = !walkGetters ? [] : Object.getOwnPropertyNames(obj);\n const children: Models.Ver[] = [];\n for (const key in obj) {\n if (\n _.isObject(obj) &&\n _.isFunction(obj.hasOwnProperty) &&\n obj.hasOwnProperty(key)\n ) {\n _.pull(allKeys, key);\n children.push({\n v: obj[key],\n p: `${lp === '' ? '' : `${lp}.`}${key}`,\n parent: ver,\n isGetter: false,\n });\n }\n }\n if (walkGetters) {\n for (let index = 0; index < allKeys.length; index++) {\n if (_.isObject(obj)) {\n const key = allKeys[index];\n children.push({\n v: obj[key],\n p: `${lp === '' ? '' : `${lp}.`}${key}`,\n parent: ver,\n isGetter: true,\n });\n }\n }\n }\n return children;\n }\n return [];\n}\n\nexport type Iterator = (\n value: any,\n lodashPath: string,\n // @ts-ignore\n changeValueTo: (newValue) => void,\n options?: Models.AdditionalIteratorOptions,\n) => void;\nexport class Helpers {\n public static get Walk() {\n const self = this;\n return {\n Object(\n json: Object,\n iterator: Iterator,\n optionsOrWalkGettersValue?: Models.StartIteratorOptions,\n ) {\n if (_.isUndefined(optionsOrWalkGettersValue)) {\n optionsOrWalkGettersValue = {};\n }\n\n (optionsOrWalkGettersValue as Models.InternalValues).hasIterator =\n _.isFunction(iterator);\n\n if (_.isUndefined(optionsOrWalkGettersValue.breadthWalk)) {\n optionsOrWalkGettersValue.breadthWalk = false;\n }\n\n let { circural } = self._walk(\n json,\n json,\n iterator,\n void 0,\n optionsOrWalkGettersValue as any,\n );\n\n return { circs: circural };\n },\n ObjectBy(\n property: string,\n inContext: Object,\n iterator: Iterator,\n options?: Models.StartIteratorOptions,\n ) {\n if (_.isFunction(iterator)) {\n iterator(inContext, '', self._changeValue(inContext, property, true)); // TODO Add optoins\n }\n // @ts-ignore\n const json = inContext[property];\n return self.Walk.Object(json, iterator, options);\n },\n };\n }\n\n private static _changeValue(\n json: Object,\n lodahPath: string,\n simpleChange = false,\n options?: Models.InternalValues,\n ) {\n var { contextPath, property } = this._prepareParams(lodahPath);\n var context = _.get(json, contextPath);\n\n return (newValue: any) => {\n if (contextPath === '') {\n simpleChange = true;\n }\n\n if (simpleChange) {\n // @ts-ignore\n json[property] = newValue;\n } else {\n\n\n if (context) {\n context[property] = newValue;\n }\n }\n if (options) {\n options._valueChanged = true;\n }\n };\n }\n\n private static _prepareParams(lodashPath: string) {\n\n const contextPath = this._Helpers.Path.getContextPath(lodashPath);\n\n\n let property = this._Helpers.Path.getPropertyPath(lodashPath, contextPath);\n\n if (\n _.isString(property) &&\n property.trim() !== '' &&\n !_.isNaN(Number(property))\n ) {\n property = Number(property);\n }\n return {\n contextPath,\n property,\n };\n }\n\n private static get _Helpers() {\n return {\n get Path() {\n return {\n // @ts-ignore\n getPropertyPath(lodahPath, contetPath) {\n return lodahPath\n .replace(contetPath, '')\n .replace(/^\\./, '')\n .replace(/\\[/, '')\n .replace(/\\]/, '');\n },\n getContextPath(p: string) {\n let res: string;\n if (p.endsWith(']')) {\n res = p.replace(/\\[(\\\"|\\')?[0-9]+(\\\"|\\')?\\]$/, '');\n } else {\n res = p.replace(/\\.([a-zA-Z0-9]|\\$|\\_|\\@|\\-|\\/|\\:)+$/, '');\n }\n return res === p ? '' : res;\n },\n };\n },\n };\n }\n\n private static _shoudlReturn(include = [], exclude = [], lodashPath: string) {\n let res = false;\n if (lodashPath.replace(/^\\[(\\'|\\\")?[0-9]*(\\'|\\\")?\\]/, '').trim() !== '') {\n lodashPath = lodashPath.replace(/^\\[(\\'|\\\")?[0-9]*(\\'|\\\")?\\]\\./, '');\n res =\n (_.isArray(include) &&\n include.length > 0 &&\n !include.find(p => lodashPath.startsWith(p))) ||\n (_.isArray(exclude) &&\n exclude.length > 0 &&\n !!exclude.find(p => lodashPath.startsWith(p)));\n }\n\n return res;\n }\n\n // @ts-ignore\n private static prepareOptions(\n options: Models.InternalValues,\n obj,\n lodashPath,\n ) {\n if (options._exit) {\n return;\n }\n\n if (_.isUndefined(options.walkGetters)) {\n options.walkGetters = true;\n }\n\n if (_.isUndefined(options.checkCircural)) {\n options.checkCircural = false;\n }\n\n if (_.isUndefined(options.isGetter)) {\n // @ts-ignore\n options.isGetter = false;\n }\n\n if (_.isUndefined(options._valueChanged)) {\n options._valueChanged = false;\n }\n\n if (_.isUndefined(options._exit)) {\n // @ts-ignore\n options._exit = false;\n }\n\n if (_.isUndefined(options.exit)) {\n options.exit = () => {\n options._exit = true;\n };\n }\n\n if (_.isUndefined(options._skip)) {\n // @ts-ignore\n options._skip = false;\n }\n\n if (_.isUndefined(options.skipObject)) {\n options.skipObject = () => {\n options._skip = true;\n };\n }\n\n if (options.checkCircural) {\n if (_.isUndefined(options.db)) {\n options.db = {};\n }\n\n if (_.isUndefined(options.stack)) {\n options.stack = [];\n }\n\n if (_.isUndefined(options.circural)) {\n options.circural = [];\n }\n }\n\n const { db, stack } = options;\n options.isCircural = false;\n\n if (options.checkCircural && _.isObject(obj)) {\n let indexValue = CLASS.OBJECT(obj).indexValue;\n if (CLASS.OBJECT(obj).isClassObject && !_.isUndefined(indexValue)) {\n let className = CLASS.getNameFromObject(obj);\n let p = `${className}.id_${indexValue}`;\n const inDB: Models.InDBType = _.get(db, p);\n\n if (inDB && CLASS.OBJECT(inDB.target).isEqual(obj)) {\n const circ: Models.Circ = {\n pathToObj: lodashPath,\n circuralTargetPath: inDB.path,\n };\n // @ts-ignore\n options.circural.push(circ);\n options.isCircural = true;\n } else {\n _.set(db, p, {\n path: lodashPath,\n target: obj,\n } as Models.InDBType);\n }\n } else {\n // @ts-ignore\n const inStack = stack.find((c: Models.InDBType) => c.target == obj);\n\n if (!_.isUndefined(inStack)) {\n const circ: Models.Circ = {\n pathToObj: lodashPath,\n circuralTargetPath: inStack.path,\n };\n // @ts-ignore\n options.circural.push(circ);\n options.isCircural = true;\n } else {\n // @ts-ignore\n stack.push({\n path: lodashPath,\n target: obj,\n } as Models.InDBType);\n }\n }\n }\n return options;\n }\n\n private static _walk(\n json: Object,\n objOrWhatever: unknown,\n iterator: Iterator,\n lodashPath = '',\n options?: Models.InternalValues,\n depthLevel = 0,\n ) {\n if (!options) {\n options = {} as any;\n }\n\n // @ts-ignore\n if (!options.breadthWalk) {\n // @ts-ignore\n options = this.prepareOptions(options, objOrWhatever, lodashPath);\n\n // @ts-ignore\n if (this._shoudlReturn(options.include, options.exclude, lodashPath)) {\n return;\n }\n\n // @ts-ignore\n if (options.hasIterator && lodashPath !== '') {\n iterator(\n objOrWhatever,\n lodashPath,\n this._changeValue(json, lodashPath, false, options),\n options,\n );\n }\n\n // @ts-ignore\n if (options._valueChanged) {\n objOrWhatever = _.get(json, lodashPath);\n }\n options._valueChanged = false;\n\n if (options.isCircural) {\n options._skip = true;\n }\n\n if (options._skip) {\n // @ts-ignore\n options._skip = false;\n return;\n }\n }\n\n if (options.breadthWalk) {\n let queue: Models.Ver[] = [{ v: json, p: lodashPath, parent: void 0 }];\n\n\n while (queue.length > 0) {\n const ver = queue.shift();\n\n\n\n\n\n // @ts-ignore\n if (this._shoudlReturn(options.include, options.exclude, ver.p)) {\n\n\n continue;\n }\n\n\n\n // @ts-ignore\n let { v, p } = ver;\n // @ts-ignore\n options = this.prepareOptions(options, v, p);\n\n if (options._exit) {\n console.log('EXIT');\n return options;\n }\n if (options.hasIterator && p !== '') {\n iterator(v, p, this._changeValue(json, p, false, options), options);\n }\n\n // @ts-ignore\n if (options._valueChanged) {\n ver.v = _.get(json, p);\n }\n options._valueChanged = false;\n\n if (options.isCircural) {\n\n continue;\n }\n\n if (options._skip) {\n // @ts-ignore\n options._skip = false;\n\n continue;\n }\n\n if (_.isArray(v)) {\n // @ts-ignore\n queue = queue.concat(findChildren(ver, p, options.walkGetters));\n } else if (_.isObject(v)) {\n // @ts-ignore\n queue = queue.concat(findChildren(ver, p, options.walkGetters));\n }\n }\n } else {\n // @ts-ignore\n const { walkGetters } = options;\n\n if (Array.isArray(objOrWhatever)) {\n objOrWhatever.forEach((o, i) => {\n // @ts-ignore\n this._walk(\n json,\n objOrWhatever[i],\n iterator,\n `${lodashPath}[${i}]`,\n options,\n depthLevel + 1,\n );\n });\n } else if (_.isObject(objOrWhatever)) {\n const allKeys = !walkGetters\n ? []\n : Object.getOwnPropertyNames(objOrWhatever);\n\n // @ts-ignore\n for (const key in objOrWhatever) {\n\n if (_.isObject(objOrWhatever) && objOrWhatever.hasOwnProperty(key)) {\n _.pull(allKeys, key);\n\n let newPropKey = key;\n options.isGetter = false;\n if (newPropKey.includes('.')) {\n newPropKey = `['${newPropKey}']`;\n }\n // @ts-ignore\n this._walk(\n json,\n objOrWhatever[newPropKey],\n iterator,\n `${lodashPath === '' ? '' : `${lodashPath}.`}${newPropKey}`,\n options,\n depthLevel + 1,\n );\n }\n }\n if (walkGetters) {\n for (let index = 0; index < allKeys.length; index++) {\n if (_.isObject(objOrWhatever)) {\n const key = allKeys[index];\n\n // @ts-ignore\n options.isGetter = true;\n // @ts-ignore\n this._walk(\n json,\n objOrWhatever[key],\n iterator,\n `${lodashPath === '' ? '' : `${lodashPath}.`}${key}`,\n options,\n depthLevel + 1,\n );\n }\n }\n }\n }\n\n // @ts-ignore\n if (options._exit && json === objOrWhatever) {\n // @ts-ignore\n options._exit = false;\n }\n }\n\n return options;\n }\n}\n\nexport const walk = {\n Object: Helpers.Walk.Object,\n ObjectBy: Helpers.Walk.ObjectBy,\n};\n\n ;({}); // @--end-of-file-for-module=lodash-walk-object lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/index.js
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
tslib_1.__exportStar(require("./lib"), exports);
|
|
17
|
+
__exportStar(require("./lib"), exports);
|
|
5
18
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":[""],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["/Users/dfilipiak/projects/npm/taon-dev/lodash-walk-object/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":["/Users/dfilipiak/projects/npm/taon-dev/lodash-walk-object/src/lib/build-info._auto-generated_.ts"],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|
|
1
|
+
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":["/Users/dfilipiak/projects/npm/taon-dev/lodash-walk-object/src/lib/index._auto-generated_.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|