@tetacom/ng-components 1.0.44 → 1.0.45

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.
@@ -2,7 +2,7 @@ export declare class ArrayUtil {
2
2
  static asArray<T>(value: T | T[]): T[];
3
3
  static flatten(data: any[], children?: string | ((item: any) => any[]), onlyLeafs?: boolean): any[];
4
4
  static findRecursive(tree: any[], comparer: (iterableNode: any) => boolean, children?: string): any;
5
- static filterRecursive(array: any[], filter: (item: any) => boolean, children?: string, keepChildren?: boolean): any;
5
+ static filterRecursive(array: any[], filter: (item: any) => boolean, children?: string, keepChildren?: boolean, fullscanChildren?: boolean): any;
6
6
  static distinct<T>(array: T[], comparator: (item: T) => any): T[];
7
7
  static findParents(tree: any[], item: any): any;
8
8
  static moveItem(list: any[], sourceIndex: any, targetIndex: any): any[];
@@ -53,7 +53,7 @@ export class ArrayUtil {
53
53
  }
54
54
  return null;
55
55
  }
56
- static filterRecursive(array, filter, children = 'children', keepChildren = true) {
56
+ static filterRecursive(array, filter, children = 'children', keepChildren = true, fullscanChildren = false) {
57
57
  const result = [];
58
58
  if (array && array.length) {
59
59
  for (const item of array) {
@@ -62,12 +62,15 @@ export class ArrayUtil {
62
62
  result.push(resultItem);
63
63
  if (!keepChildren) {
64
64
  resultItem[children] = [];
65
+ if (fullscanChildren) {
66
+ continue;
67
+ }
65
68
  break;
66
69
  }
67
70
  }
68
71
  else if (item[children] && item[children].length > 0) {
69
72
  resultItem[children] = [];
70
- const found = ArrayUtil.filterRecursive(item[children], filter, children, keepChildren);
73
+ const found = ArrayUtil.filterRecursive(item[children], filter, children, keepChildren, fullscanChildren);
71
74
  if (found?.length > 0) {
72
75
  resultItem[children] = found;
73
76
  result.push(resultItem);
@@ -116,4 +119,4 @@ export class ArrayUtil {
116
119
  return res;
117
120
  }
118
121
  }
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tb24vdXRpbC9hcnJheS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxTQUFTO0lBQ2IsTUFBTSxDQUFDLE9BQU8sQ0FBSSxLQUFjO1FBQ3JDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3pDLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FDbkIsSUFBVyxFQUNYLFFBQTBDLEVBQzFDLFNBQW1CO1FBRW5CLE1BQU0sTUFBTSxHQUFVLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDckIsSUFBSSxVQUFpQixDQUFDO1lBQ3RCLElBQUksUUFBUSxFQUFFO2dCQUNaLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFO29CQUNoQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM5QjtnQkFDRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFVBQVUsRUFBRTtvQkFDbEMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDOUI7YUFDRjtpQkFBTTtnQkFDTCxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQzthQUM3QjtZQUNELElBQ0UsVUFBVSxLQUFLLElBQUk7Z0JBQ25CLFVBQVUsS0FBSyxTQUFTO2dCQUN4QixVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDckI7Z0JBQ0EsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUNwQjtnQkFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7YUFDcEU7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNwQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQ2xCLElBQVcsRUFDWCxRQUF3QyxFQUN4QyxXQUFtQixVQUFVO1FBRTdCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3pDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzNDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxFQUFFO2dCQUMzQyxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDOUQsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7b0JBQ3JDLE9BQU8sR0FBRyxDQUFDO2lCQUNaO2FBQ0Y7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQ3BCLEtBQVksRUFDWixNQUE4QixFQUM5QixXQUFtQixVQUFVLEVBQzdCLGVBQXdCLElBQUk7UUFFNUIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDekIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7Z0JBQ3hCLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRTtvQkFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDeEIsSUFBSSxDQUFDLFlBQVksRUFBRTt3QkFDakIsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQzt3QkFDMUIsTUFBTTtxQkFDUDtpQkFDRjtxQkFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDdEQsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDMUIsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUNkLE1BQU0sRUFDTixRQUFRLEVBQ1IsWUFBWSxDQUNiLENBQUM7b0JBQ0YsSUFBSSxLQUFLLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDckIsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQzt3QkFDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztxQkFDekI7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUksS0FBVSxFQUFFLFVBQTRCO1FBQ3pELE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUN2QixJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3pCLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFO2dCQUN4QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxLQUFLLEVBQUU7b0JBQ1YsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDbkI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBVyxFQUFFLElBQVM7UUFDdkMsSUFBSSxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxFQUFFO2dCQUMzQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzlELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDOUIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDdkM7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBVyxFQUFFLFdBQVcsRUFBRSxXQUFXO1FBQ25ELE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsSUFBSSxXQUFXLEdBQUcsV0FBVyxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNqQyxHQUFHLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUM1QjthQUFNO1lBQ0wsR0FBRyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQXJyYXlVdGlsIHtcbiAgcHVibGljIHN0YXRpYyBhc0FycmF5PFQ+KHZhbHVlOiBUIHwgVFtdKTogVFtdIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gW3ZhbHVlXTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZmxhdHRlbihcbiAgICBkYXRhOiBhbnlbXSxcbiAgICBjaGlsZHJlbj86IHN0cmluZyB8ICgoaXRlbTogYW55KSA9PiBhbnlbXSksXG4gICAgb25seUxlYWZzPzogYm9vbGVhblxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgcmVzdWx0OiBhbnlbXSA9IFtdO1xuICAgIGRhdGEuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIGxldCBjaGlsZEl0ZW1zOiBhbnlbXTtcbiAgICAgIGlmIChjaGlsZHJlbikge1xuICAgICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZFtjaGlsZHJlbl07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBjaGlsZHJlbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZHJlbihjaGlsZCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZC5jaGlsZHJlbjtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgY2hpbGRJdGVtcyAhPT0gbnVsbCAmJlxuICAgICAgICBjaGlsZEl0ZW1zICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgY2hpbGRJdGVtcy5sZW5ndGggPiAwXG4gICAgICApIHtcbiAgICAgICAgaWYgKCFvbmx5TGVhZnMpIHtcbiAgICAgICAgICByZXN1bHQucHVzaChjaGlsZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0LnB1c2goLi4uQXJyYXlVdGlsLmZsYXR0ZW4oY2hpbGRJdGVtcywgY2hpbGRyZW4sIG9ubHlMZWFmcykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0LnB1c2goY2hpbGQpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzdGF0aWMgZmluZFJlY3Vyc2l2ZShcbiAgICB0cmVlOiBhbnlbXSxcbiAgICBjb21wYXJlcjogKGl0ZXJhYmxlTm9kZTogYW55KSA9PiBib29sZWFuLFxuICAgIGNoaWxkcmVuOiBzdHJpbmcgPSAnY2hpbGRyZW4nXG4gICk6IGFueSB7XG4gICAgY29uc3QgZm91bmQgPSB0cmVlLmZpbmQoKHgpID0+IGNvbXBhcmVyKHgpKTtcbiAgICBpZiAoZm91bmQgIT09IG51bGwgJiYgZm91bmQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZvdW5kO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRyZWUubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCBpdGVtID0gdHJlZVtpXTtcbiAgICAgIGlmIChpdGVtW2NoaWxkcmVuXSAmJiBpdGVtW2NoaWxkcmVuXS5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgcmVzID0gQXJyYXlVdGlsLmZpbmRSZWN1cnNpdmUoaXRlbVtjaGlsZHJlbl0sIGNvbXBhcmVyKTtcbiAgICAgICAgaWYgKHJlcyAhPT0gbnVsbCAmJiByZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzdGF0aWMgZmlsdGVyUmVjdXJzaXZlKFxuICAgIGFycmF5OiBhbnlbXSxcbiAgICBmaWx0ZXI6IChpdGVtOiBhbnkpID0+IGJvb2xlYW4sXG4gICAgY2hpbGRyZW46IHN0cmluZyA9ICdjaGlsZHJlbicsXG4gICAga2VlcENoaWxkcmVuOiBib29sZWFuID0gdHJ1ZVxuICApOiBhbnkge1xuICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgIGlmIChhcnJheSAmJiBhcnJheS5sZW5ndGgpIHtcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnJheSkge1xuICAgICAgICBjb25zdCByZXN1bHRJdGVtID0gT2JqZWN0LmFzc2lnbih7fSwgaXRlbSk7XG4gICAgICAgIGlmIChmaWx0ZXIocmVzdWx0SXRlbSkpIHtcbiAgICAgICAgICByZXN1bHQucHVzaChyZXN1bHRJdGVtKTtcbiAgICAgICAgICBpZiAoIWtlZXBDaGlsZHJlbikge1xuICAgICAgICAgICAgcmVzdWx0SXRlbVtjaGlsZHJlbl0gPSBbXTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChpdGVtW2NoaWxkcmVuXSAmJiBpdGVtW2NoaWxkcmVuXS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcmVzdWx0SXRlbVtjaGlsZHJlbl0gPSBbXTtcbiAgICAgICAgICBjb25zdCBmb3VuZCA9IEFycmF5VXRpbC5maWx0ZXJSZWN1cnNpdmUoXG4gICAgICAgICAgICBpdGVtW2NoaWxkcmVuXSxcbiAgICAgICAgICAgIGZpbHRlcixcbiAgICAgICAgICAgIGNoaWxkcmVuLFxuICAgICAgICAgICAga2VlcENoaWxkcmVuXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoZm91bmQ/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJlc3VsdEl0ZW1bY2hpbGRyZW5dID0gZm91bmQ7XG4gICAgICAgICAgICByZXN1bHQucHVzaChyZXN1bHRJdGVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHN0YXRpYyBkaXN0aW5jdDxUPihhcnJheTogVFtdLCBjb21wYXJhdG9yOiAoaXRlbTogVCkgPT4gYW55KTogVFtdIHtcbiAgICBjb25zdCByZXN1bHQ6IFRbXSA9IFtdO1xuICAgIGlmIChhcnJheSAmJiBhcnJheS5sZW5ndGgpIHtcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhcnJheSkge1xuICAgICAgICBjb25zdCBmb3VuZCA9IHJlc3VsdC5maW5kKChfKSA9PiBjb21wYXJhdG9yKF8pID09PSBjb21wYXJhdG9yKGl0ZW0pKTtcbiAgICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzdGF0aWMgZmluZFBhcmVudHModHJlZTogYW55W10sIGl0ZW06IGFueSkge1xuICAgIGlmICh0cmVlPy5pbmRleE9mKGl0ZW0pID49IDApIHtcbiAgICAgIHJldHVybiB0cmVlO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0cmVlKSkge1xuICAgICAgZm9yIChjb25zdCB0cmVlTm9kZSBvZiB0cmVlKSB7XG4gICAgICAgIGNvbnN0IGNoaWxkUmVzdWx0ID0gdGhpcy5maW5kUGFyZW50cyh0cmVlTm9kZS5jaGlsZHJlbiwgaXRlbSk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkUmVzdWx0KSkge1xuICAgICAgICAgIHJldHVybiBbdHJlZU5vZGVdLmNvbmNhdChjaGlsZFJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdGF0aWMgbW92ZUl0ZW0obGlzdDogYW55W10sIHNvdXJjZUluZGV4LCB0YXJnZXRJbmRleCkge1xuICAgIGNvbnN0IHJlcyA9IFsuLi5saXN0XTtcbiAgICBjb25zdCBpdGVtID0gbGlzdFtzb3VyY2VJbmRleF07XG4gICAgaWYgKHRhcmdldEluZGV4ID4gc291cmNlSW5kZXgpIHtcbiAgICAgIHJlcy5zcGxpY2UodGFyZ2V0SW5kZXgsIDAsIGl0ZW0pO1xuICAgICAgcmVzLnNwbGljZShzb3VyY2VJbmRleCwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlcy5zcGxpY2Uoc291cmNlSW5kZXgsIDEpO1xuICAgICAgcmVzLnNwbGljZSh0YXJnZXRJbmRleCwgMCwgaXRlbSk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cbiJdfQ==
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tb24vdXRpbC9hcnJheS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxTQUFTO0lBQ2IsTUFBTSxDQUFDLE9BQU8sQ0FBSSxLQUFjO1FBQ3JDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3pDLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FDbkIsSUFBVyxFQUNYLFFBQTBDLEVBQzFDLFNBQW1CO1FBRW5CLE1BQU0sTUFBTSxHQUFVLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDckIsSUFBSSxVQUFpQixDQUFDO1lBQ3RCLElBQUksUUFBUSxFQUFFO2dCQUNaLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFO29CQUNoQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM5QjtnQkFDRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFVBQVUsRUFBRTtvQkFDbEMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDOUI7YUFDRjtpQkFBTTtnQkFDTCxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQzthQUM3QjtZQUNELElBQ0UsVUFBVSxLQUFLLElBQUk7Z0JBQ25CLFVBQVUsS0FBSyxTQUFTO2dCQUN4QixVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDckI7Z0JBQ0EsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxD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QUM7UUFDL0IsSUFBSSxXQUFXLEdBQUcsV0FBVyxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNqQyxHQUFHLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUM1QjthQUFNO1lBQ0wsR0FBRyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQXJyYXlVdGlsIHtcbiAgcHVibGljIHN0YXRpYyBhc0FycmF5PFQ+KHZhbHVlOiBUIHwgVFtdKTogVFtdIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gW3ZhbHVlXTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZmxhdHRlbihcbiAgICBkYXRhOiBhbnlbXSxcbiAgICBjaGlsZHJlbj86IHN0cmluZyB8ICgoaXRlbTogYW55KSA9PiBhbnlbXSksXG4gICAgb25seUxlYWZzPzogYm9vbGVhblxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgcmVzdWx0OiBhbnlbXSA9IFtdO1xuICAgIGRhdGEuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgIGxldCBjaGlsZEl0ZW1zOiBhbnlbXTtcbiAgICAgIGlmIChjaGlsZHJlbikge1xuICAgICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZFtjaGlsZHJlbl07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBjaGlsZHJlbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZHJlbihjaGlsZCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkSXRlbXMgPSBjaGlsZC5jaGlsZHJlbjtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgY2hpbGRJdGVtcyAhPT0gbnVsbCAmJlxuICAgICAgICBjaGlsZEl0ZW1zICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgY2hpbGRJdGVtcy5sZW5ndGggPiAwXG4gICAgICApIHtcbiAgICAgICAgaWYgKCFvbmx5TGVhZnMpIHtcbiAgICAgICAgICByZXN1bHQucHVzaChjaGlsZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0LnB1c2goLi4uQXJyYXlVdGlsLmZsYXR0ZW4oY2hpbGRJdGVtcywgY2hpbGRyZW4sIG9ubHlMZWFmcykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0LnB1c2goY2hpbGQpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzdGF0aWMgZmluZFJlY3Vyc2l2ZShcbiAgICB0cmVlOiBhbnlbXSxcbiAgICBjb21wYXJlcjogKGl0ZXJhYmxlTm9kZTogYW55KSA9PiBib29sZWFuLFxuICAgIGNoaWxkcmVuOiBzdHJpbmcgPSAnY2hpbGRyZW4nXG4gICk6IGFueSB7XG4gICAgY29uc3QgZm91bmQgPSB0cmVlLmZpbmQoKHgpID0+IGNvbXBhcmVyKHgpKTtcbiAgICBpZiAoZm91bmQgIT09IG51bGwgJiYgZm91bmQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZvdW5kO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRyZWUubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCBpdGVtID0gdHJlZVtpXTtcbiAgICAgIGlmIChpdGVtW2NoaWxkcmVuXSAmJiBpdGVtW2NoaWxkcmVuXS5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgcmVzID0gQXJyYXlVdGlsLmZpbmRSZWN1cnNpdmUoaXRlbVtjaGlsZHJlbl0sIGNvbXBhcmVyKTtcbiAgICAgICAgaWYgKHJlcyAhPT0gbnVsbCAmJiByZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzdGF0aWMgZmlsdGVyUmVjdXJzaXZlKFxuICAgIGFycmF5OiBhbnlbXSxcbiAgICBmaWx0ZXI6IChpdGVtOiBhbnkpID0+IGJvb2xlYW4sXG4gICAgY2hpbGRyZW46IHN0cmluZyA9ICdjaGlsZHJlbicsXG4gICAga2VlcENoaWxkcmVuOiBib29sZWFuID0gdHJ1ZSxcbiAgICBmdWxsc2NhbkNoaWxkcmVuOiBib29sZWFuID0gZmFsc2VcbiAgKTogYW55IHtcbiAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICBpZiAoYXJyYXkgJiYgYXJyYXkubGVuZ3RoKSB7XG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgYXJyYXkpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0SXRlbSA9IE9iamVjdC5hc3NpZ24oe30sIGl0ZW0pO1xuICAgICAgICBpZiAoZmlsdGVyKHJlc3VsdEl0ZW0pKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2gocmVzdWx0SXRlbSk7XG4gICAgICAgICAgaWYgKCFrZWVwQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgIHJlc3VsdEl0ZW1bY2hpbGRyZW5dID0gW107XG4gICAgICAgICAgICBpZiAoZnVsbHNjYW5DaGlsZHJlbikge1xuICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGl0ZW1bY2hpbGRyZW5dICYmIGl0ZW1bY2hpbGRyZW5dLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICByZXN1bHRJdGVtW2NoaWxkcmVuXSA9IFtdO1xuICAgICAgICAgIGNvbnN0IGZvdW5kID0gQXJyYXlVdGlsLmZpbHRlclJlY3Vyc2l2ZShcbiAgICAgICAgICAgIGl0ZW1bY2hpbGRyZW5dLFxuICAgICAgICAgICAgZmlsdGVyLFxuICAgICAgICAgICAgY2hpbGRyZW4sXG4gICAgICAgICAgICBrZWVwQ2hpbGRyZW4sXG4gICAgICAgICAgICBmdWxsc2NhbkNoaWxkcmVuXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoZm91bmQ/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJlc3VsdEl0ZW1bY2hpbGRyZW5dID0gZm91bmQ7XG4gICAgICAgICAgICByZXN1bHQucHVzaChyZXN1bHRJdGVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgc3RhdGljIGRpc3RpbmN0PFQ+KGFycmF5OiBUW10sIGNvbXBhcmF0b3I6IChpdGVtOiBUKSA9PiBhbnkpOiBUW10ge1xuICAgIGNvbnN0IHJlc3VsdDogVFtdID0gW107XG4gICAgaWYgKGFycmF5ICYmIGFycmF5Lmxlbmd0aCkge1xuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGFycmF5KSB7XG4gICAgICAgIGNvbnN0IGZvdW5kID0gcmVzdWx0LmZpbmQoKF8pID0+IGNvbXBhcmF0b3IoXykgPT09IGNvbXBhcmF0b3IoaXRlbSkpO1xuICAgICAgICBpZiAoIWZvdW5kKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goaXRlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHN0YXRpYyBmaW5kUGFyZW50cyh0cmVlOiBhbnlbXSwgaXRlbTogYW55KSB7XG4gICAgaWYgKHRyZWU/LmluZGV4T2YoaXRlbSkgPj0gMCkge1xuICAgICAgcmV0dXJuIHRyZWU7XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KHRyZWUpKSB7XG4gICAgICBmb3IgKGNvbnN0IHRyZWVOb2RlIG9mIHRyZWUpIHtcbiAgICAgICAgY29uc3QgY2hpbGRSZXN1bHQgPSB0aGlzLmZpbmRQYXJlbnRzKHRyZWVOb2RlLmNoaWxkcmVuLCBpdGVtKTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRSZXN1bHQpKSB7XG4gICAgICAgICAgcmV0dXJuIFt0cmVlTm9kZV0uY29uY2F0KGNoaWxkUmVzdWx0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBtb3ZlSXRlbShsaXN0OiBhbnlbXSwgc291cmNlSW5kZXgsIHRhcmdldEluZGV4KSB7XG4gICAgY29uc3QgcmVzID0gWy4uLmxpc3RdO1xuICAgIGNvbnN0IGl0ZW0gPSBsaXN0W3NvdXJjZUluZGV4XTtcbiAgICBpZiAodGFyZ2V0SW5kZXggPiBzb3VyY2VJbmRleCkge1xuICAgICAgcmVzLnNwbGljZSh0YXJnZXRJbmRleCwgMCwgaXRlbSk7XG4gICAgICByZXMuc3BsaWNlKHNvdXJjZUluZGV4LCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzLnNwbGljZShzb3VyY2VJbmRleCwgMSk7XG4gICAgICByZXMuc3BsaWNlKHRhcmdldEluZGV4LCAwLCBpdGVtKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuIl19
@@ -3056,7 +3056,7 @@ class ArrayUtil {
3056
3056
  }
3057
3057
  return null;
3058
3058
  }
3059
- static filterRecursive(array, filter, children = 'children', keepChildren = true) {
3059
+ static filterRecursive(array, filter, children = 'children', keepChildren = true, fullscanChildren = false) {
3060
3060
  const result = [];
3061
3061
  if (array && array.length) {
3062
3062
  for (const item of array) {
@@ -3065,12 +3065,15 @@ class ArrayUtil {
3065
3065
  result.push(resultItem);
3066
3066
  if (!keepChildren) {
3067
3067
  resultItem[children] = [];
3068
+ if (fullscanChildren) {
3069
+ continue;
3070
+ }
3068
3071
  break;
3069
3072
  }
3070
3073
  }
3071
3074
  else if (item[children] && item[children].length > 0) {
3072
3075
  resultItem[children] = [];
3073
- const found = ArrayUtil.filterRecursive(item[children], filter, children, keepChildren);
3076
+ const found = ArrayUtil.filterRecursive(item[children], filter, children, keepChildren, fullscanChildren);
3074
3077
  if ((found === null || found === void 0 ? void 0 : found.length) > 0) {
3075
3078
  resultItem[children] = found;
3076
3079
  result.push(resultItem);