zek 17.3.86 → 17.3.88
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.
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdHRlbi10cmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kZWxzL2ZsYXR0ZW4tdHJlZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJRmxhdHRlblRyZWU8VEtleSA9IGFueSwgVFZhbHVlID0gYW55PiB7XHJcbiAgICBrZXk/OiBUS2V5IHwgbnVsbDtcclxuICAgIHZhbHVlPzogVFZhbHVlIHwgbnVsbDtcclxuICAgIGluZGVudDogbnVtYmVyO1xyXG4gICAgY291bnQ6IG51bWJlcjtcclxufVxyXG4iXX0=
|
|
@@ -75,54 +75,56 @@ export class ArrayHelper {
|
|
|
75
75
|
return array;
|
|
76
76
|
return array.filter(x => x !== undefined && x !== null && x[key] === filterValue);
|
|
77
77
|
}
|
|
78
|
-
static
|
|
78
|
+
static flatten(array, indent = 0) {
|
|
79
79
|
let result = [];
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
result.
|
|
84
|
-
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
return result;
|
|
88
|
-
}
|
|
89
|
-
static getChildren(tree, indent = 1) {
|
|
90
|
-
let result = [];
|
|
91
|
-
if (tree.children) {
|
|
92
|
-
tree.childrenCount = tree.children.length;
|
|
93
|
-
tree.children.forEach(child => {
|
|
94
|
-
child.indent = indent;
|
|
95
|
-
result.push(child);
|
|
96
|
-
result = result.concat(this.getChildren(child, indent + 1));
|
|
97
|
-
});
|
|
80
|
+
// If the input is an array of trees, we process each one
|
|
81
|
+
if (Array.isArray(array)) {
|
|
82
|
+
for (const item of array) {
|
|
83
|
+
result = result.concat(this.flatten(item, indent));
|
|
84
|
+
}
|
|
98
85
|
}
|
|
99
86
|
else {
|
|
100
|
-
tree
|
|
87
|
+
// Add the current tree node to the result
|
|
88
|
+
const item = Object.assign({}, array);
|
|
89
|
+
item.indent = indent;
|
|
90
|
+
item.count = Array.isArray(array.children)
|
|
91
|
+
? array.children.length
|
|
92
|
+
: 0;
|
|
93
|
+
delete item.children;
|
|
94
|
+
delete item.childrenIds;
|
|
95
|
+
result.push(item);
|
|
96
|
+
// If there are children, recursively flatten them
|
|
97
|
+
if (Array.isArray(array.children)) {
|
|
98
|
+
for (const child of array.children) {
|
|
99
|
+
result = result.concat(this.flatten(child, indent + 1));
|
|
100
|
+
}
|
|
101
|
+
}
|
|
101
102
|
}
|
|
102
|
-
delete tree.children;
|
|
103
|
-
delete tree.childrenIds;
|
|
104
|
-
//delete tree.childrenCount;
|
|
105
|
-
//delete tree.indent;
|
|
106
103
|
return result;
|
|
107
104
|
}
|
|
108
|
-
static
|
|
105
|
+
static flattenDropDownList(tree, indent = 0) {
|
|
109
106
|
let result = [];
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
result = result.concat(this.
|
|
114
|
-
}
|
|
107
|
+
// If the input is an array of trees, we process each one
|
|
108
|
+
if (Array.isArray(tree)) {
|
|
109
|
+
for (const item of tree) {
|
|
110
|
+
result = result.concat(this.flattenDropDownList(item, indent));
|
|
111
|
+
}
|
|
115
112
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
113
|
+
else {
|
|
114
|
+
// Add the current tree node to the result
|
|
115
|
+
let item = {
|
|
116
|
+
key: tree.key,
|
|
117
|
+
value: ' '.repeat(indent) + tree.value,
|
|
118
|
+
indent: indent,
|
|
119
|
+
count: Array.isArray(tree.children) ? tree.children.length : 0
|
|
120
|
+
};
|
|
121
|
+
result.push(item);
|
|
122
|
+
// If there are children, recursively flatten them
|
|
123
|
+
if (Array.isArray(tree.children)) {
|
|
124
|
+
for (const child of tree.children) {
|
|
125
|
+
result = result.concat(this.flattenDropDownList(child, indent + 1));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
126
128
|
}
|
|
127
129
|
return result;
|
|
128
130
|
}
|
|
@@ -147,4 +149,4 @@ export class ArrayHelper {
|
|
|
147
149
|
return this.enumToKeyPairBaseArray(value);
|
|
148
150
|
}
|
|
149
151
|
}
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvYXJyYXktaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNEQUFzRDtBQUN0RCwrQ0FBK0M7QUFLL0MsTUFBTSxPQUFPLFdBQVc7SUFDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsS0FBYSxFQUFFLElBQVM7UUFDaEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsSUFBUztRQUNqQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyx1Q0FBdUM7WUFDckQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQywyQ0FBMkM7UUFDdkUsQ0FBQztJQUNMLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFZLEVBQUUsSUFBUztRQUNwQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixPQUFPLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixFQUFFLENBQUMsQ0FBQztZQUNSLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUdELE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBWSxF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QyxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBRSxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBTyxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO1FBQ2Qsd0ZBQXdGO0lBQzVGLENBQUM7SUFDRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsS0FBVTtRQUNoQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBMEIsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFVO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUE0QixLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSBcIi4uL21vZGVscy9rZXktcGFpci5tb2RlbFwiO1xyXG4vLyBpbXBvcnQgeyBUcmVlIH0gZnJvbSBcIi4uL21vZGVscy90cmVlLm1vZGVsXCI7XHJcblxyXG5pbXBvcnQgeyBLZXlQYWlyLCBLZXlQYWlyRXgsIFRyZWUgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFycmF5SGVscGVyIHtcclxuICAgIHN0YXRpYyBpbnNlcnQoYXJyYXk6IGFueVtdLCBpbmRleDogbnVtYmVyLCBpdGVtOiBhbnkpIHtcclxuICAgICAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDAsIGl0ZW0pO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlbW92ZSBpdGVtIGZyb20gYXJyYXlcclxuICAgICAqIEBwYXJhbSBhcnJheSBcclxuICAgICAqIEBwYXJhbSBpdGVtIGl0ZW0gdG8gcmVtb3ZlXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyByZW1vdmUoYXJyYXk6IGFueVtdLCBpdGVtOiBhbnkpIHtcclxuICAgICAgICBjb25zdCBpbmRleCA9IGFycmF5LmluZGV4T2YoaXRlbSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHsgLy8gb25seSBzcGxpY2UgYXJyYXkgd2hlbiBpdGVtIGlzIGZvdW5kXHJcbiAgICAgICAgICAgIGFycmF5LnNwbGljZShpbmRleCwgMSk7IC8vIDJuZCBwYXJhbWV0ZXIgbWVhbnMgcmVtb3ZlIG9uZSBpdGVtIG9ubHlcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVtb3ZlIGFsbCBpdGVtcyBmcm9tIGFycmF5XHJcbiAgICAgKiBAcGFyYW0gYXJyYXkgXHJcbiAgICAgKiBAcGFyYW0gaXRlbSBpdGVtIHRvIHJlbW92ZVxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgcmVtb3ZlQWxsKGFycmF5OiBhbnlbXSwgaXRlbTogYW55KSB7XHJcbiAgICAgICAgdmFyIGkgPSAwO1xyXG4gICAgICAgIHdoaWxlIChpIDwgYXJyYXkubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGlmIChhcnJheVtpXSA9PT0gaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgYXJyYXkuc3BsaWNlKGksIDEpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgKytpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBzdGF0aWMgbW92ZShhcnJheTogYW55W10sIGZyb21JbmRleDogbnVtYmVyLCB0b0luZGV4OiBudW1iZXIpIHtcclxuXHJcbiAgICAgICAgY29uc3QgaXRlbSA9IGFycmF5W2Zyb21JbmRleF07XHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKGZyb21JbmRleCwgMSk7Ly9yZW1vdmUgaXRlbSBmcnJvbSBhcnJheVxyXG4gICAgICAgIGFycmF5LnNwbGljZSh0b0luZGV4LCAwLCBpdGVtKTsvL2luc2VydCBpdGVtIGludG8gYXJyYXlcclxuICAgICAgICByZXR1cm4gYXJyYXk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGNvbnRhaW5zKHZhbHVlOiBhbnlbXSwgdjogYW55KSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAodmFsdWVbaV0gPT09IHYpIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHN0YXRpYyBpc0FycmF5KHZhbHVlOiBhbnkpIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdmFsdWUubGVuZ3RoID4gMDtcclxuICAgIH1cclxuICAgIC8vIHN0YXRpYyBkaXN0aW5jdCh2YWx1ZTogYW55W10pIHtcclxuICAgIC8vICAgICB2YXIgYXJyOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcclxuICAgIC8vICAgICAgICAgbGV0IHZhbCA9IHZhbHVlW2ldO1xyXG4gICAgLy8gICAgICAgICBpZiAoIXRoaXMuY29udGFpbnMoYXJyLCB2YWwpKSB7XHJcbiAgICAvLyAgICAgICAgICAgICBhcnIucHVzaCh2YWwpO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIHJldHVybiBhcnI7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgc3RhdGljIGRpc3RpbmN0KGFycmF5OiBhbnlbXSkge1xyXG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSBbXVxyXG4gICAgICAgIGNvbnN0IHNlZW4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBhcnJheVtpbmRleF07XHJcbiAgICAgICAgICAgIGlmIChzZWVuLmhhcyh2YWx1ZSkpIGNvbnRpbnVlO1xyXG5cclxuICAgICAgICAgICAgc2Vlbi5hZGQodmFsdWUpO1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaCh2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBmaWx0ZXJCeUtleShmaWx0ZXJWYWx1ZTogYW55LCBrZXk6IHN0cmluZywgYXJyYXk6IGFueVtdKSB7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBmaWx0ZXJWYWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgZmlsdGVyVmFsdWUgPT0gbnVsbCB8fCAodHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiYga2V5Lmxlbmd0aCA9PT0gMCkpXHJcbiAgICAgICAgICAgIHJldHVybiBhcnJheTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGFycmF5LmZpbHRlcih4ID0+IHggIT09IHVuZGVmaW5lZCAmJiB4ICE9PSBudWxsICYmIHhba2V5XSA9PT0gZmlsdGVyVmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBmbGF0dGVuQXJyYXkoYXJyYXk6IGFueVtdKTogYW55W10ge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IGFueVtdID0gW107XHJcbiAgICAgICAgaWYgKGFycmF5KSB7XHJcbiAgICAgICAgICAgIGFycmF5LmZvckVhY2godHJlZSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0cmVlLmluZGVudCA9IDA7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCh0cmVlKTtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5jb25jYXQodGhpcy5nZXRDaGlsZHJlbih0cmVlKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIGdldENoaWxkcmVuKHRyZWU6IFRyZWUsIGluZGVudDogbnVtYmVyID0gMSk6IGFueVtdIHtcclxuICAgICAgICBsZXQgcmVzdWx0OiBhbnlbXSA9IFtdO1xyXG4gICAgICAgIGlmICh0cmVlLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgIHRyZWUuY2hpbGRyZW5Db3VudCA9IHRyZWUuY2hpbGRyZW4ubGVuZ3RoO1xyXG4gICAgICAgICAgICB0cmVlLmNoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4ge1xyXG4gICAgICAgICAgICAgICAgY2hpbGQuaW5kZW50ID0gaW5kZW50O1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goY2hpbGQpO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmdldENoaWxkcmVuKGNoaWxkLCBpbmRlbnQgKyAxKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRyZWUuY2hpbGRyZW5Db3VudCA9IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkZWxldGUgdHJlZS5jaGlsZHJlbjtcclxuICAgICAgICBkZWxldGUgdHJlZS5jaGlsZHJlbklkcztcclxuICAgICAgICAvL2RlbGV0ZSB0cmVlLmNoaWxkcmVuQ291bnQ7XHJcbiAgICAgICAgLy9kZWxldGUgdHJlZS5pbmRlbnQ7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIHN0YXRpYyB0cmVlVG9LZXlQYWlyQXJyYXkoYXJyYXk6IFRyZWVbXSkge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IEtleVBhaXJbXSA9IFtdO1xyXG4gICAgICAgIGlmIChhcnJheSkge1xyXG4gICAgICAgICAgICBhcnJheS5mb3JFYWNoKHRyZWUgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goeyBrZXk6IHRyZWUua2V5LCB2YWx1ZTogdHJlZS52YWx1ZSB9KTtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IHJlc3VsdC5jb25jYXQodGhpcy5nZXRJbmRlbnRDaGlsZHJlbih0cmVlKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0SW5kZW50Q2hpbGRyZW4odHJlZTogVHJlZSwgaW5kZW50OiBudW1iZXIgPSAxKTogS2V5UGFpcltdIHtcclxuICAgICAgICBsZXQgcmVzdWx0OiBLZXlQYWlyW10gPSBbXTtcclxuICAgICAgICBpZiAodHJlZS5jaGlsZHJlbikge1xyXG4gICAgICAgICAgICB0cmVlLmNoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4ge1xyXG4gICAgICAgICAgICAgICAgLy9yZXN1bHQucHVzaCh7IGtleTogY2hpbGQua2V5LCB2YWx1ZTogJ+KUlCcgKyAn4pSAJy5yZXBlYXQoaW5kZW50KSArIGNoaWxkLnZhbHVlIH0pO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goeyBrZXk6IGNoaWxkLmtleSwgdmFsdWU6ICcmZW1zcDsnLnJlcGVhdChpbmRlbnQpICsgY2hpbGQudmFsdWUgfSk7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZ2V0Q2hpbGRyZW4oY2hpbGQsIGluZGVudCArIDEpKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBlbnVtVG9LZXlQYWlyQmFzZUFycmF5PFQgZXh0ZW5kcyBLZXlQYWlyPG51bWJlciwgc3RyaW5nPj4odmFsdWU6IGFueSk6IFRbXSB7XHJcbiAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHZhbHVlKTtcclxuICAgICAgICBjb25zdCBzbGljZSA9IGtleXMubGVuZ3RoIC8gMjtcclxuICAgICAgICBjb25zdCByZXN1bHQ6IFRbXSA9IFtdO1xyXG4gICAgICAgIC8vIGZvciAobGV0IGkgPSAwOyBpIDwgc2xpY2U7IGkrKykge1xyXG4gICAgICAgIC8vICAgICByZXN1bHQucHVzaCh7IGtleTogK2tleXNbaV0sIHZhbHVlOiBrZXlzW2kgKyBzbGljZV0gfSBhcyBUKTtcclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IHNsaWNlOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBjb25zdCBuYW1lID0ga2V5c1tpXTtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goeyBrZXk6ICsgdmFsdWVbbmFtZV0sIHZhbHVlOiBuYW1lIH0gYXMgVCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgLy9yZXR1cm4gQXJyYXkuZnJvbShrZXlzLnNsaWNlKGtleXMubGVuZ3RoIC8gMiksIHggPT4geyBrZXk6eCwgdmFsdWU6J2FhYScgfSBhcyBPYmplY3QpO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGVudW1Ub0tleVBhaXJBcnJheSh2YWx1ZTogYW55KTogS2V5UGFpcjxudW1iZXIsIHN0cmluZz5bXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZW51bVRvS2V5UGFpckJhc2VBcnJheTxLZXlQYWlyPG51bWJlciwgc3RyaW5nPj4odmFsdWUpO1xyXG4gICAgfVxyXG4gICAgc3RhdGljIGVudW1Ub0tleVBhaXJFeEFycmF5KHZhbHVlOiBhbnkpOiBLZXlQYWlyRXg8bnVtYmVyLCBzdHJpbmc+W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVudW1Ub0tleVBhaXJCYXNlQXJyYXk8S2V5UGFpckV4PG51bWJlciwgc3RyaW5nPj4odmFsdWUpO1xyXG4gICAgfVxyXG59Il19
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvdXRpbHMvYXJyYXktaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNEQUFzRDtBQUN0RCwrQ0FBK0M7QUFNL0MsTUFBTSxPQUFPLFdBQVc7SUFDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsS0FBYSxFQUFFLElBQVM7UUFDaEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFZLEVBQUUsSUFBUztRQUNqQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyx1Q0FBdUM7WUFDckQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQywyQ0FBMkM7UUFDdkUsQ0FBQztJQUNMLENBQUM7SUFHRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFZLEVBQUUsSUFBUztRQUNwQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixPQUFPLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixFQUFFLENBQUMsQ0FBQztZQUNSLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUdELE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBWSxF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QyxFQUFFLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckIsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFPLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7UUFDZCx3RkFBd0Y7SUFDNUYsQ0FBQztJQUNELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFVO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUEwQixLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBQ0QsTUFBTSxDQUFDLG9CQUFvQixDQUFDLEtBQVU7UUFDbEMsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQTRCLEtBQUssQ0FBQyxDQUFDO0lBQ3pFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCB7IEtleVBhaXIgfSBmcm9tIFwiLi4vbW9kZWxzL2tleS1wYWlyLm1vZGVsXCI7XHJcbi8vIGltcG9ydCB7IFRyZWUgfSBmcm9tIFwiLi4vbW9kZWxzL3RyZWUubW9kZWxcIjtcclxuXHJcbmltcG9ydCB7IEtleVBhaXIsIEtleVBhaXJFeCwgVHJlZSB9IGZyb20gXCIuLi9tb2RlbHNcIjtcclxuaW1wb3J0IHsgSUZsYXR0ZW5UcmVlIH0gZnJvbSBcIi4uL21vZGVscy9mbGF0dGVuLXRyZWVcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgQXJyYXlIZWxwZXIge1xyXG4gICAgc3RhdGljIGluc2VydChhcnJheTogYW55W10sIGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSkge1xyXG4gICAgICAgIGFycmF5LnNwbGljZShpbmRleCwgMCwgaXRlbSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVtb3ZlIGl0ZW0gZnJvbSBhcnJheVxyXG4gICAgICogQHBhcmFtIGFycmF5IFxyXG4gICAgICogQHBhcmFtIGl0ZW0gaXRlbSB0byByZW1vdmVcclxuICAgICAqL1xyXG4gICAgc3RhdGljIHJlbW92ZShhcnJheTogYW55W10sIGl0ZW06IGFueSkge1xyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gYXJyYXkuaW5kZXhPZihpdGVtKTtcclxuICAgICAgICBpZiAoaW5kZXggPiAtMSkgeyAvLyBvbmx5IHNwbGljZSBhcnJheSB3aGVuIGl0ZW0gaXMgZm91bmRcclxuICAgICAgICAgICAgYXJyYXkuc3BsaWNlKGluZGV4LCAxKTsgLy8gMm5kIHBhcmFtZXRlciBtZWFucyByZW1vdmUgb25lIGl0ZW0gb25seVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgYWxsIGl0ZW1zIGZyb20gYXJyYXlcclxuICAgICAqIEBwYXJhbSBhcnJheSBcclxuICAgICAqIEBwYXJhbSBpdGVtIGl0ZW0gdG8gcmVtb3ZlXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyByZW1vdmVBbGwoYXJyYXk6IGFueVtdLCBpdGVtOiBhbnkpIHtcclxuICAgICAgICB2YXIgaSA9IDA7XHJcbiAgICAgICAgd2hpbGUgKGkgPCBhcnJheS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgaWYgKGFycmF5W2ldID09PSBpdGVtKSB7XHJcbiAgICAgICAgICAgICAgICBhcnJheS5zcGxpY2UoaSwgMSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICArK2k7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHN0YXRpYyBtb3ZlKGFycmF5OiBhbnlbXSwgZnJvbUluZGV4OiBudW1iZXIsIHRvSW5kZXg6IG51bWJlcikge1xyXG5cclxuICAgICAgICBjb25zdCBpdGVtID0gYXJyYXlbZnJvbUluZGV4XTtcclxuICAgICAgICBhcnJheS5zcGxpY2UoZnJvbUluZGV4LCAxKTsvL3JlbW92ZSBpdGVtIGZycm9tIGFycmF5XHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKHRvSW5kZXgsIDAsIGl0ZW0pOy8vaW5zZXJ0IGl0ZW0gaW50byBhcnJheVxyXG4gICAgICAgIHJldHVybiBhcnJheTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY29udGFpbnModmFsdWU6IGFueVtdLCB2OiBhbnkpIHtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZVtpXSA9PT0gdikgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3RhdGljIGlzQXJyYXkodmFsdWU6IGFueSkge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPiAwO1xyXG4gICAgfVxyXG4gICAgLy8gc3RhdGljIGRpc3RpbmN0KHZhbHVlOiBhbnlbXSkge1xyXG4gICAgLy8gICAgIHZhciBhcnI6IGFueVtdID0gW107XHJcbiAgICAvLyAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykge1xyXG4gICAgLy8gICAgICAgICBsZXQgdmFsID0gdmFsdWVbaV07XHJcbiAgICAvLyAgICAgICAgIGlmICghdGhpcy5jb250YWlucyhhcnIsIHZhbCkpIHtcclxuICAgIC8vICAgICAgICAgICAgIGFyci5wdXNoKHZhbCk7XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgcmV0dXJuIGFycjtcclxuICAgIC8vIH1cclxuXHJcbiAgICBzdGF0aWMgZGlzdGluY3QoYXJyYXk6IGFueVtdKSB7XHJcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gYXJyYXkubGVuZ3RoO1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdXHJcbiAgICAgICAgY29uc3Qgc2VlbiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGFycmF5W2luZGV4XTtcclxuICAgICAgICAgICAgaWYgKHNlZW4uaGFzKHZhbHVlKSkgY29udGludWU7XHJcblxyXG4gICAgICAgICAgICBzZWVuLmFkZCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGZpbHRlckJ5S2V5KGZpbHRlclZhbHVlOiBhbnksIGtleTogc3RyaW5nLCBhcnJheTogYW55W10pIHtcclxuICAgICAgICBpZiAodHlwZW9mIGZpbHRlclZhbHVlID09PSAndW5kZWZpbmVkJyB8fCBmaWx0ZXJWYWx1ZSA9PSBudWxsIHx8ICh0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJiBrZXkubGVuZ3RoID09PSAwKSlcclxuICAgICAgICAgICAgcmV0dXJuIGFycmF5O1xyXG5cclxuICAgICAgICByZXR1cm4gYXJyYXkuZmlsdGVyKHggPT4geCAhPT0gdW5kZWZpbmVkICYmIHggIT09IG51bGwgJiYgeFtrZXldID09PSBmaWx0ZXJWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHN0YXRpYyBmbGF0dGVuKGFycmF5OiBhbnksIGluZGVudDogbnVtYmVyID0gMCkge1xyXG4gICAgICAgIGxldCByZXN1bHQ6IGFueVtdID0gW107XHJcbiAgICAgICAgLy8gSWYgdGhlIGlucHV0IGlzIGFuIGFycmF5IG9mIHRyZWVzLCB3ZSBwcm9jZXNzIGVhY2ggb25lXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyYXkpKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnJheSkge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmZsYXR0ZW4oaXRlbSwgaW5kZW50KSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBBZGQgdGhlIGN1cnJlbnQgdHJlZSBub2RlIHRvIHRoZSByZXN1bHRcclxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IE9iamVjdC5hc3NpZ24oe30sIGFycmF5KTtcclxuICAgICAgICAgICAgaXRlbS5pbmRlbnQgPSBpbmRlbnQ7XHJcbiAgICAgICAgICAgIGl0ZW0uY291bnQgPSBBcnJheS5pc0FycmF5KGFycmF5LmNoaWxkcmVuKVxyXG4gICAgICAgICAgICAgICAgPyBhcnJheS5jaGlsZHJlbi5sZW5ndGhcclxuICAgICAgICAgICAgICAgIDogMDtcclxuICAgICAgICAgICAgZGVsZXRlIGl0ZW0uY2hpbGRyZW47XHJcbiAgICAgICAgICAgIGRlbGV0ZSBpdGVtLmNoaWxkcmVuSWRzO1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaChpdGVtKTtcclxuICAgICAgICAgICAgLy8gSWYgdGhlcmUgYXJlIGNoaWxkcmVuLCByZWN1cnNpdmVseSBmbGF0dGVuIHRoZW1cclxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyYXkuY2hpbGRyZW4pKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGFycmF5LmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0aGlzLmZsYXR0ZW4oY2hpbGQsIGluZGVudCArIDEpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZmxhdHRlbkRyb3BEb3duTGlzdCh0cmVlOiBUcmVlIHwgVHJlZVtdLCBpbmRlbnQ6IG51bWJlciA9IDApIHtcclxuICAgICAgICBsZXQgcmVzdWx0OiBJRmxhdHRlblRyZWVbXSA9IFtdO1xyXG4gICAgICAgIC8vIElmIHRoZSBpbnB1dCBpcyBhbiBhcnJheSBvZiB0cmVlcywgd2UgcHJvY2VzcyBlYWNoIG9uZVxyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRyZWUpKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0cmVlKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZmxhdHRlbkRyb3BEb3duTGlzdChpdGVtLCBpbmRlbnQpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIEFkZCB0aGUgY3VycmVudCB0cmVlIG5vZGUgdG8gdGhlIHJlc3VsdFxyXG4gICAgICAgICAgICBsZXQgaXRlbSA9IHtcclxuICAgICAgICAgICAgICAgIGtleTogdHJlZS5rZXksXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJyZlbXNwOycucmVwZWF0KGluZGVudCkgKyB0cmVlLnZhbHVlLFxyXG4gICAgICAgICAgICAgICAgaW5kZW50OiBpbmRlbnQsXHJcbiAgICAgICAgICAgICAgICBjb3VudDogQXJyYXkuaXNBcnJheSh0cmVlLmNoaWxkcmVuKSA/IHRyZWUuY2hpbGRyZW4ubGVuZ3RoIDogMFxyXG4gICAgICAgICAgICB9IGFzIElGbGF0dGVuVHJlZTtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgIC8vIElmIHRoZXJlIGFyZSBjaGlsZHJlbiwgcmVjdXJzaXZlbHkgZmxhdHRlbiB0aGVtXHJcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRyZWUuY2hpbGRyZW4pKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIHRyZWUuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KHRoaXMuZmxhdHRlbkRyb3BEb3duTGlzdChjaGlsZCwgaW5kZW50ICsgMSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIGVudW1Ub0tleVBhaXJCYXNlQXJyYXk8VCBleHRlbmRzIEtleVBhaXI8bnVtYmVyLCBzdHJpbmc+Pih2YWx1ZTogYW55KTogVFtdIHtcclxuICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModmFsdWUpO1xyXG4gICAgICAgIGNvbnN0IHNsaWNlID0ga2V5cy5sZW5ndGggLyAyO1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdDogVFtdID0gW107XHJcbiAgICAgICAgLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZTsgaSsrKSB7XHJcbiAgICAgICAgLy8gICAgIHJlc3VsdC5wdXNoKHsga2V5OiAra2V5c1tpXSwgdmFsdWU6IGtleXNbaSArIHNsaWNlXSB9IGFzIFQpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICBmb3IgKGxldCBpID0gc2xpY2U7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBrZXlzW2ldO1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaCh7IGtleTogKyB2YWx1ZVtuYW1lXSwgdmFsdWU6IG5hbWUgfSBhcyBUKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgICAvL3JldHVybiBBcnJheS5mcm9tKGtleXMuc2xpY2Uoa2V5cy5sZW5ndGggLyAyKSwgeCA9PiB7IGtleTp4LCB2YWx1ZTonYWFhJyB9IGFzIE9iamVjdCk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgZW51bVRvS2V5UGFpckFycmF5KHZhbHVlOiBhbnkpOiBLZXlQYWlyPG51bWJlciwgc3RyaW5nPltdIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5lbnVtVG9LZXlQYWlyQmFzZUFycmF5PEtleVBhaXI8bnVtYmVyLCBzdHJpbmc+Pih2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgZW51bVRvS2V5UGFpckV4QXJyYXkodmFsdWU6IGFueSk6IEtleVBhaXJFeDxudW1iZXIsIHN0cmluZz5bXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZW51bVRvS2V5UGFpckJhc2VBcnJheTxLZXlQYWlyRXg8bnVtYmVyLCBzdHJpbmc+Pih2YWx1ZSk7XHJcbiAgICB9XHJcbn0iXX0=
|
package/fesm2022/zek.mjs
CHANGED
|
@@ -97,54 +97,56 @@ class ArrayHelper {
|
|
|
97
97
|
return array;
|
|
98
98
|
return array.filter(x => x !== undefined && x !== null && x[key] === filterValue);
|
|
99
99
|
}
|
|
100
|
-
static
|
|
100
|
+
static flatten(array, indent = 0) {
|
|
101
101
|
let result = [];
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
result.
|
|
106
|
-
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
return result;
|
|
110
|
-
}
|
|
111
|
-
static getChildren(tree, indent = 1) {
|
|
112
|
-
let result = [];
|
|
113
|
-
if (tree.children) {
|
|
114
|
-
tree.childrenCount = tree.children.length;
|
|
115
|
-
tree.children.forEach(child => {
|
|
116
|
-
child.indent = indent;
|
|
117
|
-
result.push(child);
|
|
118
|
-
result = result.concat(this.getChildren(child, indent + 1));
|
|
119
|
-
});
|
|
102
|
+
// If the input is an array of trees, we process each one
|
|
103
|
+
if (Array.isArray(array)) {
|
|
104
|
+
for (const item of array) {
|
|
105
|
+
result = result.concat(this.flatten(item, indent));
|
|
106
|
+
}
|
|
120
107
|
}
|
|
121
108
|
else {
|
|
122
|
-
tree
|
|
109
|
+
// Add the current tree node to the result
|
|
110
|
+
const item = Object.assign({}, array);
|
|
111
|
+
item.indent = indent;
|
|
112
|
+
item.count = Array.isArray(array.children)
|
|
113
|
+
? array.children.length
|
|
114
|
+
: 0;
|
|
115
|
+
delete item.children;
|
|
116
|
+
delete item.childrenIds;
|
|
117
|
+
result.push(item);
|
|
118
|
+
// If there are children, recursively flatten them
|
|
119
|
+
if (Array.isArray(array.children)) {
|
|
120
|
+
for (const child of array.children) {
|
|
121
|
+
result = result.concat(this.flatten(child, indent + 1));
|
|
122
|
+
}
|
|
123
|
+
}
|
|
123
124
|
}
|
|
124
|
-
delete tree.children;
|
|
125
|
-
delete tree.childrenIds;
|
|
126
|
-
//delete tree.childrenCount;
|
|
127
|
-
//delete tree.indent;
|
|
128
125
|
return result;
|
|
129
126
|
}
|
|
130
|
-
static
|
|
127
|
+
static flattenDropDownList(tree, indent = 0) {
|
|
131
128
|
let result = [];
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
result = result.concat(this.
|
|
136
|
-
}
|
|
129
|
+
// If the input is an array of trees, we process each one
|
|
130
|
+
if (Array.isArray(tree)) {
|
|
131
|
+
for (const item of tree) {
|
|
132
|
+
result = result.concat(this.flattenDropDownList(item, indent));
|
|
133
|
+
}
|
|
137
134
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
135
|
+
else {
|
|
136
|
+
// Add the current tree node to the result
|
|
137
|
+
let item = {
|
|
138
|
+
key: tree.key,
|
|
139
|
+
value: ' '.repeat(indent) + tree.value,
|
|
140
|
+
indent: indent,
|
|
141
|
+
count: Array.isArray(tree.children) ? tree.children.length : 0
|
|
142
|
+
};
|
|
143
|
+
result.push(item);
|
|
144
|
+
// If there are children, recursively flatten them
|
|
145
|
+
if (Array.isArray(tree.children)) {
|
|
146
|
+
for (const child of tree.children) {
|
|
147
|
+
result = result.concat(this.flattenDropDownList(child, indent + 1));
|
|
148
|
+
}
|
|
149
|
+
}
|
|
148
150
|
}
|
|
149
151
|
return result;
|
|
150
152
|
}
|