@stemy/ngx-utils 17.1.6 → 17.2.1

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.
@@ -1,19 +1,35 @@
1
+ import { ObjectUtils } from "./object.utils";
1
2
  export class FileSystemEntry {
2
- constructor(label, meta, image, data, parent, openCb) {
3
+ get parent() {
4
+ return this.level === 0 ? null : this.path[this.level - 1] || null;
5
+ }
6
+ constructor(label, meta, image, data, openCb, parent = null, classes) {
3
7
  this.label = label;
4
8
  this.meta = meta;
5
9
  this.image = image;
6
10
  this.data = data;
7
- this.parent = parent;
8
11
  this.openCb = openCb;
9
12
  this.path = !parent ? [this] : parent.path.concat([this]);
10
13
  this.level = this.path.length - 1;
11
- this.classes = this.path
12
- .filter(t => typeof t.data === "string" && t.data.length > 0).map(t => t.data)
13
- .concat([`level-${this.level}`]);
14
+ this.classes = [`level-${this.level}`].concat(classes ?? this.path
15
+ .map(t => {
16
+ if (ObjectUtils.isString(t.data)) {
17
+ return t.data;
18
+ }
19
+ if (ObjectUtils.isObject(t.data)) {
20
+ const list = Object.keys(t.data).map(k => {
21
+ const value = t.data[k];
22
+ return ObjectUtils.isString(value) && value.length > 0 && value.length < 50
23
+ ? `${k}-${value}`
24
+ : null;
25
+ });
26
+ return list.filter(i => !!i).join(" ");
27
+ }
28
+ return null;
29
+ }).filter(t => !!t));
14
30
  }
15
31
  open() {
16
- this.result = this.result || this.openCb(this.data, this);
32
+ this.result = this.result || this.openCb(this);
17
33
  this.result.then(res => {
18
34
  if (Array.isArray(res))
19
35
  return;
@@ -22,4 +38,4 @@ export class FileSystemEntry {
22
38
  return this.result;
23
39
  }
24
40
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zeXN0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3V0aWxzL2ZpbGUtc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxlQUFlO0lBUXhCLFlBQXFCLEtBQWEsRUFDYixJQUFZLEVBQ1osS0FBYSxFQUNiLElBQU8sRUFDUCxNQUF1QixFQUN0QixNQUE2QjtRQUw5QixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixTQUFJLEdBQUosSUFBSSxDQUFHO1FBQ1AsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBdUI7UUFDL0MsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUk7YUFDbkIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQzdFLE1BQU0sQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFBRSxPQUFPO1lBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEZpbGVTeXN0ZW1FbnRyeU9wZW5SZXN1bHQ8VCA9IGFueT4gPSBSZWFkb25seUFycmF5PEZpbGVTeXN0ZW1FbnRyeTxUPj4gfCBudWxsO1xuXG5leHBvcnQgdHlwZSBGaWxlU3lzdGVtRW50cnlPcGVuQ2IgPSAoZGF0YTogYW55LCBwYXJlbnQ6IEZpbGVTeXN0ZW1FbnRyeSkgPT4gUHJvbWlzZTxGaWxlU3lzdGVtRW50cnlPcGVuUmVzdWx0PjtcblxuZXhwb3J0IGNsYXNzIEZpbGVTeXN0ZW1FbnRyeTxUID0gYW55LCBSID0gYW55PiB7XG5cbiAgICBwcm90ZWN0ZWQgcmVzdWx0OiBQcm9taXNlPEZpbGVTeXN0ZW1FbnRyeU9wZW5SZXN1bHQ+O1xuXG4gICAgcmVhZG9ubHkgcGF0aDogUmVhZG9ubHlBcnJheTxGaWxlU3lzdGVtRW50cnk+O1xuICAgIHJlYWRvbmx5IGxldmVsOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgY2xhc3NlczogUmVhZG9ubHlBcnJheTxzdHJpbmc+O1xuXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgbGFiZWw6IHN0cmluZyxcbiAgICAgICAgICAgICAgICByZWFkb25seSBtZXRhOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgaW1hZ2U6IHN0cmluZyxcbiAgICAgICAgICAgICAgICByZWFkb25seSBkYXRhOiBULFxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IHBhcmVudDogRmlsZVN5c3RlbUVudHJ5LFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBvcGVuQ2I6IEZpbGVTeXN0ZW1FbnRyeU9wZW5DYikge1xuICAgICAgICB0aGlzLnBhdGggPSAhcGFyZW50ID8gW3RoaXNdIDogcGFyZW50LnBhdGguY29uY2F0KFt0aGlzXSk7XG4gICAgICAgIHRoaXMubGV2ZWwgPSB0aGlzLnBhdGgubGVuZ3RoIC0gMTtcbiAgICAgICAgdGhpcy5jbGFzc2VzID0gdGhpcy5wYXRoXG4gICAgICAgICAgICAuZmlsdGVyKHQgPT4gdHlwZW9mIHQuZGF0YSA9PT0gXCJzdHJpbmdcIiAmJiB0LmRhdGEubGVuZ3RoID4gMCkubWFwKHQgPT4gdC5kYXRhKVxuICAgICAgICAgICAgLmNvbmNhdChbYGxldmVsLSR7dGhpcy5sZXZlbH1gXSk7XG4gICAgfVxuXG4gICAgb3BlbjxPID0gUj4oKTogUHJvbWlzZTxGaWxlU3lzdGVtRW50cnlPcGVuUmVzdWx0PE8+PiB7XG4gICAgICAgIHRoaXMucmVzdWx0ID0gdGhpcy5yZXN1bHQgfHwgdGhpcy5vcGVuQ2IodGhpcy5kYXRhLCB0aGlzKTtcbiAgICAgICAgdGhpcy5yZXN1bHQudGhlbihyZXMgPT4ge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkgcmV0dXJuO1xuICAgICAgICAgICAgdGhpcy5yZXN1bHQgPSBudWxsO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVzdWx0O1xuICAgIH1cbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zeXN0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3V0aWxzL2ZpbGUtc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQU0zQyxNQUFNLE9BQU8sZUFBZTtJQVF4QixJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDdkUsQ0FBQztJQUVELFlBQXFCLEtBQWEsRUFDYixJQUFZLEVBQ1osS0FBYSxFQUNiLElBQU8sRUFDTixNQUFtQyxFQUM3QyxTQUEwQixJQUFJLEVBQzlCLE9BQWtCO1FBTlQsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsU0FBSSxHQUFKLElBQUksQ0FBRztRQUNOLFdBQU0sR0FBTixNQUFNLENBQTZCO1FBR3JELElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJO2FBQzdELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNMLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xCLENBQUM7WUFDRCxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDckMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDeEIsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRTt3QkFDdkUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssRUFBRTt3QkFDakIsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDZixDQUFDLENBQUMsQ0FBQztnQkFDSCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNDLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ25CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQUUsT0FBTztZQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi9vYmplY3QudXRpbHNcIjtcblxuZXhwb3J0IHR5cGUgRmlsZVN5c3RlbUVudHJ5T3BlblJlc3VsdDxEID0gYW55LCBSID0gYW55PiA9IFByb21pc2U8cmVhZG9ubHkgRmlsZVN5c3RlbUVudHJ5PEQsIFI+W10+O1xuXG5leHBvcnQgdHlwZSBGaWxlU3lzdGVtRW50cnlPcGVuQ2I8UEQsIEQgPSBhbnksIFIgPSBhbnk+ID0gKHBhcmVudDogRmlsZVN5c3RlbUVudHJ5PFBEPikgPT4gRmlsZVN5c3RlbUVudHJ5T3BlblJlc3VsdDxELCBSPjtcblxuZXhwb3J0IGNsYXNzIEZpbGVTeXN0ZW1FbnRyeTxEID0gYW55LCBSID0gYW55PiB7XG5cbiAgICBwcm90ZWN0ZWQgcmVzdWx0OiBGaWxlU3lzdGVtRW50cnlPcGVuUmVzdWx0O1xuXG4gICAgcmVhZG9ubHkgcGF0aDogUmVhZG9ubHlBcnJheTxGaWxlU3lzdGVtRW50cnk+O1xuICAgIHJlYWRvbmx5IGxldmVsOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgY2xhc3NlczogUmVhZG9ubHlBcnJheTxzdHJpbmc+O1xuXG4gICAgZ2V0IHBhcmVudCgpOiBGaWxlU3lzdGVtRW50cnkge1xuICAgICAgICByZXR1cm4gdGhpcy5sZXZlbCA9PT0gMCA/IG51bGwgOiB0aGlzLnBhdGhbdGhpcy5sZXZlbCAtIDFdIHx8IG51bGw7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgbGFiZWw6IHN0cmluZyxcbiAgICAgICAgICAgICAgICByZWFkb25seSBtZXRhOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgaW1hZ2U6IHN0cmluZyxcbiAgICAgICAgICAgICAgICByZWFkb25seSBkYXRhOiBELFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBvcGVuQ2I6IEZpbGVTeXN0ZW1FbnRyeU9wZW5DYjxELCBSPixcbiAgICAgICAgICAgICAgICBwYXJlbnQ6IEZpbGVTeXN0ZW1FbnRyeSA9IG51bGwsXG4gICAgICAgICAgICAgICAgY2xhc3Nlcz86IHN0cmluZ1tdKSB7XG4gICAgICAgIHRoaXMucGF0aCA9ICFwYXJlbnQgPyBbdGhpc10gOiBwYXJlbnQucGF0aC5jb25jYXQoW3RoaXNdKTtcbiAgICAgICAgdGhpcy5sZXZlbCA9IHRoaXMucGF0aC5sZW5ndGggLSAxO1xuICAgICAgICB0aGlzLmNsYXNzZXMgPSBbYGxldmVsLSR7dGhpcy5sZXZlbH1gXS5jb25jYXQoY2xhc3NlcyA/PyB0aGlzLnBhdGhcbiAgICAgICAgICAgIC5tYXAodCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdFV0aWxzLmlzU3RyaW5nKHQuZGF0YSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHQuZGF0YTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdFV0aWxzLmlzT2JqZWN0KHQuZGF0YSkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlzdCA9IE9iamVjdC5rZXlzKHQuZGF0YSkubWFwKGsgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0LmRhdGFba107XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuaXNTdHJpbmcodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA+IDAgJiYgdmFsdWUubGVuZ3RoIDwgNTBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGAke2t9LSR7dmFsdWV9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBsaXN0LmZpbHRlcihpID0+ICEhaSkuam9pbihcIiBcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfSkuZmlsdGVyKHQgPT4gISF0KSk7XG4gICAgfVxuXG4gICAgb3BlbjxPID0gYW55PigpOiBGaWxlU3lzdGVtRW50cnlPcGVuUmVzdWx0PFIsIE8+IHtcbiAgICAgICAgdGhpcy5yZXN1bHQgPSB0aGlzLnJlc3VsdCB8fCB0aGlzLm9wZW5DYih0aGlzKTtcbiAgICAgICAgdGhpcy5yZXN1bHQudGhlbihyZXMgPT4ge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkgcmV0dXJuO1xuICAgICAgICAgICAgdGhpcy5yZXN1bHQgPSBudWxsO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVzdWx0O1xuICAgIH1cbn1cbiJdfQ==
@@ -1613,21 +1613,36 @@ class GenericValue extends Subject {
1613
1613
  }
1614
1614
 
1615
1615
  class FileSystemEntry {
1616
- constructor(label, meta, image, data, parent, openCb) {
1616
+ get parent() {
1617
+ return this.level === 0 ? null : this.path[this.level - 1] || null;
1618
+ }
1619
+ constructor(label, meta, image, data, openCb, parent = null, classes) {
1617
1620
  this.label = label;
1618
1621
  this.meta = meta;
1619
1622
  this.image = image;
1620
1623
  this.data = data;
1621
- this.parent = parent;
1622
1624
  this.openCb = openCb;
1623
1625
  this.path = !parent ? [this] : parent.path.concat([this]);
1624
1626
  this.level = this.path.length - 1;
1625
- this.classes = this.path
1626
- .filter(t => typeof t.data === "string" && t.data.length > 0).map(t => t.data)
1627
- .concat([`level-${this.level}`]);
1627
+ this.classes = [`level-${this.level}`].concat(classes ?? this.path
1628
+ .map(t => {
1629
+ if (ObjectUtils.isString(t.data)) {
1630
+ return t.data;
1631
+ }
1632
+ if (ObjectUtils.isObject(t.data)) {
1633
+ const list = Object.keys(t.data).map(k => {
1634
+ const value = t.data[k];
1635
+ return ObjectUtils.isString(value) && value.length > 0 && value.length < 50
1636
+ ? `${k}-${value}`
1637
+ : null;
1638
+ });
1639
+ return list.filter(i => !!i).join(" ");
1640
+ }
1641
+ return null;
1642
+ }).filter(t => !!t));
1628
1643
  }
1629
1644
  open() {
1630
- this.result = this.result || this.openCb(this.data, this);
1645
+ this.result = this.result || this.openCb(this);
1631
1646
  this.result.then(res => {
1632
1647
  if (Array.isArray(res))
1633
1648
  return;