@dignite-ng/expand.file-explorer 3.0.0-rc.2 → 3.0.0-rc.3

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.
Files changed (42) hide show
  1. package/esm2022/lib/components/dynamic-form/file-explorer/file-explorer-config.component.mjs +4 -2
  2. package/esm2022/lib/components/dynamic-form/file-explorer/file-explorer-control.component.mjs +5 -3
  3. package/esm2022/lib/file-explorer.module.mjs +1 -1
  4. package/esm2022/lib/previews/file-preview.component.mjs +1 -1
  5. package/esm2022/public-api.mjs +4 -3
  6. package/fesm2022/dignite-ng-expand.file-explorer.mjs +7 -77
  7. package/fesm2022/dignite-ng-expand.file-explorer.mjs.map +1 -1
  8. package/lib/components/dynamic-form/file-explorer/file-explorer-config.component.d.ts +1 -0
  9. package/lib/components/dynamic-form/file-explorer/file-explorer-control.component.d.ts +1 -0
  10. package/lib/previews/file-preview.component.d.ts +2 -2
  11. package/package.json +1 -1
  12. package/public-api.d.ts +1 -2
  13. package/esm2022/lib/proxy/dignite/file-explorer/index.mjs +0 -4
  14. package/esm2022/lib/proxy/dignite/index.mjs +0 -3
  15. package/esm2022/lib/proxy/index.mjs +0 -5
  16. package/esm2022/lib/proxy/microsoft/asp-net-core/index.mjs +0 -3
  17. package/esm2022/lib/proxy/microsoft/asp-net-core/mvc/index.mjs +0 -2
  18. package/esm2022/lib/proxy/microsoft/extensions/index.mjs +0 -3
  19. package/esm2022/lib/proxy/microsoft/extensions/primitives/index.mjs +0 -2
  20. package/esm2022/lib/proxy/microsoft/index.mjs +0 -5
  21. package/esm2022/lib/proxy/microsoft/net/http/headers/index.mjs +0 -2
  22. package/esm2022/lib/proxy/microsoft/net/http/index.mjs +0 -3
  23. package/esm2022/lib/proxy/microsoft/net/index.mjs +0 -3
  24. package/esm2022/lib/proxy/volo/abp/content/index.mjs +0 -2
  25. package/esm2022/lib/proxy/volo/abp/index.mjs +0 -3
  26. package/esm2022/lib/proxy/volo/index.mjs +0 -3
  27. package/esm2022/lib/services/index.mjs +0 -2
  28. package/lib/proxy/dignite/file-explorer/index.d.ts +0 -3
  29. package/lib/proxy/dignite/index.d.ts +0 -2
  30. package/lib/proxy/index.d.ts +0 -4
  31. package/lib/proxy/microsoft/asp-net-core/index.d.ts +0 -2
  32. package/lib/proxy/microsoft/asp-net-core/mvc/index.d.ts +0 -1
  33. package/lib/proxy/microsoft/extensions/index.d.ts +0 -2
  34. package/lib/proxy/microsoft/extensions/primitives/index.d.ts +0 -1
  35. package/lib/proxy/microsoft/index.d.ts +0 -4
  36. package/lib/proxy/microsoft/net/http/headers/index.d.ts +0 -1
  37. package/lib/proxy/microsoft/net/http/index.d.ts +0 -2
  38. package/lib/proxy/microsoft/net/index.d.ts +0 -2
  39. package/lib/proxy/volo/abp/content/index.d.ts +0 -1
  40. package/lib/proxy/volo/abp/index.d.ts +0 -2
  41. package/lib/proxy/volo/index.d.ts +0 -2
  42. package/lib/services/index.d.ts +0 -1
@@ -1,4 +1,4 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
1
+ import { ChangeDetectorRef, Component, inject, Input, ViewChild } from '@angular/core';
2
2
  import { FileExplorerConfig } from './file-explorer-config';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/forms";
@@ -7,6 +7,7 @@ import * as i3 from "@ngx-validate/core";
7
7
  export class FileExplorerConfigComponent {
8
8
  constructor(fb) {
9
9
  this.fb = fb;
10
+ this.cdr = inject(ChangeDetectorRef);
10
11
  }
11
12
  set type(v) {
12
13
  this._type = v;
@@ -26,6 +27,7 @@ export class FileExplorerConfigComponent {
26
27
  async dataLoaded() {
27
28
  if (this._Entity && this._type) {
28
29
  await this.AfterInit();
30
+ this.cdr.detectChanges(); // 手动触发变更检测
29
31
  this.submitclick?.nativeElement?.click();
30
32
  }
31
33
  }
@@ -56,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
56
58
  type: ViewChild,
57
59
  args: ['submitclick', { static: true }]
58
60
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2ZpbGUtZXhwbG9yZXIvZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2ZpbGUtZXhwbG9yZXIvZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQU81RCxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLFlBQ1UsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7SUFDckIsQ0FBQztJQUdMLElBQ1csSUFBSSxDQUFDLENBQU07UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUE7UUFDZCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUdELElBQ1csTUFBTSxDQUFDLENBQVk7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFHRCxJQUNXLFFBQVEsQ0FBQyxDQUFNO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFBO1FBRWxCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBQ0QsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBYyxDQUFBO0lBQzNELENBQUM7SUFHRCxLQUFLLENBQUMsVUFBVTtRQUNkLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7WUFDdEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3JGLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7b0JBQ2hDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUI7aUJBQ3BDLENBQUMsQ0FBQTtZQUNKLENBQUM7WUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDZixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OEdBaERVLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDJQQ1R4Qyx5K0JBaUJPOzsyRkRSTSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UseUJBQXlCO2dGQVd4QixJQUFJO3NCQURkLEtBQUs7Z0JBUUssTUFBTTtzQkFEaEIsS0FBSztnQkFRSyxRQUFRO3NCQURsQixLQUFLO2dCQVNzQyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJDb25maWcgfSBmcm9tICcuL2ZpbGUtZXhwbG9yZXItY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmUtZmlsZS1leHBsb3Jlci1jb25maWcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLWV4cGxvcmVyLWNvbmZpZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVFeHBsb3JlckNvbmZpZ0NvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICApIHsgfVxuICAvKirooajljZXmjqfku7bnsbvlnosgKi9cbiAgX3R5cGU6IGFueVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHR5cGUodjogYW55KSB7XG4gICAgdGhpcy5fdHlwZSA9IHZcbiAgICB0aGlzLmRhdGFMb2FkZWQoKVxuICB9XG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfRW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWRcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBFbnRpdHkodjogRm9ybUdyb3VwKSB7XG4gICAgdGhpcy5fRW50aXR5ID0gdjtcbiAgICB0aGlzLmRhdGFMb2FkZWQoKVxuICB9XG4gIC8qKumAieaLqeeahOihqOWNleS/oeaBryAqL1xuICBfc2VsZWN0ZWQ6IGFueVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkKHY6IGFueSkge1xuICAgIHRoaXMuX3NlbGVjdGVkID0gdlxuXG4gICAgdGhpcy5kYXRhTG9hZGVkKClcbiAgfVxuICBnZXQgZm9ybUNvbmZpZ3VyYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX0VudGl0eS5nZXQoJ2Zvcm1Db25maWd1cmF0aW9uJykgYXMgRm9ybUdyb3VwXG4gIH1cbiAgQFZpZXdDaGlsZCgnc3VibWl0Y2xpY2snLCB7IHN0YXRpYzogdHJ1ZSB9KSBzdWJtaXRjbGljazogRWxlbWVudFJlZjtcblxuICBhc3luYyBkYXRhTG9hZGVkKCkge1xuICAgIGlmICh0aGlzLl9FbnRpdHkgJiYgdGhpcy5fdHlwZSkge1xuICAgICAgYXdhaXQgdGhpcy5BZnRlckluaXQoKVxuICAgICAgdGhpcy5zdWJtaXRjbGljaz8ubmF0aXZlRWxlbWVudD8uY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBBZnRlckluaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3RzKSA9PiB7XG4gICAgICB0aGlzLl9FbnRpdHkuc2V0Q29udHJvbCgnZm9ybUNvbmZpZ3VyYXRpb24nLCB0aGlzLmZiLmdyb3VwKG5ldyBGaWxlRXhwbG9yZXJDb25maWcoKSkpXG4gICAgICBpZiAodGhpcy5fc2VsZWN0ZWQgJiYgdGhpcy5fc2VsZWN0ZWQuZm9ybUNvbnRyb2xOYW1lID09IHRoaXMuX3R5cGUpIHtcbiAgICAgICAgdGhpcy5mb3JtQ29uZmlndXJhdGlvbi5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAuLi50aGlzLl9zZWxlY3RlZC5mb3JtQ29uZmlndXJhdGlvblxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgcmVzb2x2ZSh0cnVlKVxuICAgIH0pXG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiX0VudGl0eVwiPlxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cImZvcm1Db25maWd1cmF0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3snRGlnbml0ZUFicER5bmFtaWNGb3Jtc0ZpbGVFeHBsb3Jlcjo6RmlsZUNvbnRhaW5lck5hbWUnIHwgYWJwTG9jYWxpemF0aW9ufX08L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJGaWxlRXhwbG9yZXIuRmlsZUNvbnRhaW5lck5hbWVcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLWlubGluZVwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwiY2hlY2tib3hcIiBmb3JtQ29udHJvbE5hbWU9XCJGaWxlRXhwbG9yZXIuVXBsb2FkRmlsZU11bHRpcGxlXCIgaWQ9XCJmbGV4UmFkaW9EZWZhdWx0MVwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIiBmb3I9XCJmbGV4UmFkaW9EZWZhdWx0MVwiPlxuICAgICAgICAgICAgICAgICAgICB7eydEaWduaXRlQWJwRHluYW1pY0Zvcm1zRmlsZUV4cGxvcmVyOjpVcGxvYWRGaWxlTXVsdGlwbGUnIHwgYWJwTG9jYWxpemF0aW9ufX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAoYWJwSW5pdCk9XCJzdWJtaXRjbGljaz8ubmF0aXZlRWxlbWVudD8uY2xpY2soKVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIlxuICAgICAgICAgICAgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9mb3JtPiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2ZpbGUtZXhwbG9yZXIvZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2ZpbGUtZXhwbG9yZXIvZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFRNUQsTUFBTSxPQUFPLDJCQUEyQjtJQUN0QyxZQUNVLEVBQWU7UUFBZixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBNkJqQixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUE1QnBDLENBQUM7SUFHTCxJQUNXLElBQUksQ0FBQyxDQUFNO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ2QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFHRCxJQUNXLE1BQU0sQ0FBQyxDQUFZO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBR0QsSUFDVyxRQUFRLENBQUMsQ0FBTTtRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQTtRQUVsQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUNELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQWMsQ0FBQTtJQUMzRCxDQUFDO0lBSUQsS0FBSyxDQUFDLFVBQVU7UUFDZCxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxXQUFXO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzNDLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUNyRixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNuRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDO29CQUNoQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCO2lCQUNwQyxDQUFDLENBQUE7WUFDSixDQUFDO1lBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2YsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzhHQWxEVSwyQkFBMkI7a0dBQTNCLDJCQUEyQiwyUENWeEMseStCQWlCTzs7MkZEUE0sMkJBQTJCO2tCQU52QyxTQUFTOytCQUVFLHlCQUF5QjtnRkFXeEIsSUFBSTtzQkFEZCxLQUFLO2dCQVFLLE1BQU07c0JBRGhCLEtBQUs7Z0JBUUssUUFBUTtzQkFEbEIsS0FBSztnQkFTc0MsV0FBVztzQkFBdEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmlsZUV4cGxvcmVyQ29uZmlnIH0gZnJvbSAnLi9maWxlLWV4cGxvcmVyLWNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2ZlLWZpbGUtZXhwbG9yZXItY29uZmlnJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtZXhwbG9yZXItY29uZmlnLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS1leHBsb3Jlci1jb25maWcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlRXhwbG9yZXJDb25maWdDb21wb25lbnQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgKSB7IH1cbiAgLyoq6KGo5Y2V5o6n5Lu257G75Z6LICovXG4gIF90eXBlOiBhbnlcbiAgQElucHV0KClcbiAgcHVibGljIHNldCB0eXBlKHY6IGFueSkge1xuICAgIHRoaXMuX3R5cGUgPSB2XG4gICAgdGhpcy5kYXRhTG9hZGVkKClcbiAgfVxuICAvKirooajljZXlrp7kvZMgKi9cbiAgX0VudGl0eTogRm9ybUdyb3VwIHwgdW5kZWZpbmVkXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgRW50aXR5KHY6IEZvcm1Hcm91cCkge1xuICAgIHRoaXMuX0VudGl0eSA9IHY7XG4gICAgdGhpcy5kYXRhTG9hZGVkKClcbiAgfVxuICAvKirpgInmi6nnmoTooajljZXkv6Hmga8gKi9cbiAgX3NlbGVjdGVkOiBhbnlcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3RlZCh2OiBhbnkpIHtcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHZcblxuICAgIHRoaXMuZGF0YUxvYWRlZCgpXG4gIH1cbiAgZ2V0IGZvcm1Db25maWd1cmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9FbnRpdHkuZ2V0KCdmb3JtQ29uZmlndXJhdGlvbicpIGFzIEZvcm1Hcm91cFxuICB9XG4gIEBWaWV3Q2hpbGQoJ3N1Ym1pdGNsaWNrJywgeyBzdGF0aWM6IHRydWUgfSkgc3VibWl0Y2xpY2s6IEVsZW1lbnRSZWY7XG5cbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBhc3luYyBkYXRhTG9hZGVkKCkge1xuICAgIGlmICh0aGlzLl9FbnRpdHkgJiYgdGhpcy5fdHlwZSkge1xuICAgICAgYXdhaXQgdGhpcy5BZnRlckluaXQoKTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTsgLy8g5omL5Yqo6Kem5Y+R5Y+Y5pu05qOA5rWLXG4gICAgICB0aGlzLnN1Ym1pdGNsaWNrPy5uYXRpdmVFbGVtZW50Py5jbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIEFmdGVySW5pdCgpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdHMpID0+IHtcbiAgICAgIHRoaXMuX0VudGl0eS5zZXRDb250cm9sKCdmb3JtQ29uZmlndXJhdGlvbicsIHRoaXMuZmIuZ3JvdXAobmV3IEZpbGVFeHBsb3JlckNvbmZpZygpKSlcbiAgICAgIGlmICh0aGlzLl9zZWxlY3RlZCAmJiB0aGlzLl9zZWxlY3RlZC5mb3JtQ29udHJvbE5hbWUgPT0gdGhpcy5fdHlwZSkge1xuICAgICAgICB0aGlzLmZvcm1Db25maWd1cmF0aW9uLnBhdGNoVmFsdWUoe1xuICAgICAgICAgIC4uLnRoaXMuX3NlbGVjdGVkLmZvcm1Db25maWd1cmF0aW9uXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICByZXNvbHZlKHRydWUpXG4gICAgfSlcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJfRW50aXR5XCI+XG4gICAgPGRpdiBmb3JtR3JvdXBOYW1lPVwiZm9ybUNvbmZpZ3VyYXRpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIj57eydEaWduaXRlQWJwRHluYW1pY0Zvcm1zRmlsZUV4cGxvcmVyOjpGaWxlQ29udGFpbmVyTmFtZScgfCBhYnBMb2NhbGl6YXRpb259fTwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cIkZpbGVFeHBsb3Jlci5GaWxlQ29udGFpbmVyTmFtZVwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lXCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiIGZvcm1Db250cm9sTmFtZT1cIkZpbGVFeHBsb3Jlci5VcGxvYWRGaWxlTXVsdGlwbGVcIiBpZD1cImZsZXhSYWRpb0RlZmF1bHQxXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiIGZvcj1cImZsZXhSYWRpb0RlZmF1bHQxXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7J0RpZ25pdGVBYnBEeW5hbWljRm9ybXNGaWxlRXhwbG9yZXI6OlVwbG9hZEZpbGVNdWx0aXBsZScgfCBhYnBMb2NhbGl6YXRpb259fVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIChhYnBJbml0KT1cInN1Ym1pdGNsaWNrPy5uYXRpdmVFbGVtZW50Py5jbGljaygpXCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiXG4gICAgICAgICAgICAjc3VibWl0Y2xpY2s+PC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Zvcm0+Il19
@@ -1,4 +1,4 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
1
+ import { ChangeDetectorRef, Component, inject, Input, ViewChild } from '@angular/core';
2
2
  import { Validators } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/forms";
@@ -10,6 +10,7 @@ export class FileExplorerControlComponent {
10
10
  this.fb = fb;
11
11
  /**字段配置列表 */
12
12
  this._fields = '';
13
+ this.cdr = inject(ChangeDetectorRef);
13
14
  /**字段配置 */
14
15
  this.formConfiguration = '';
15
16
  /**文件容器名称 */
@@ -44,7 +45,8 @@ export class FileExplorerControlComponent {
44
45
  async dataLoaded() {
45
46
  if (this._fields && this._entity && this._parentFiledName) {
46
47
  await this.AfterInit();
47
- this.submitclick.nativeElement.click();
48
+ this.cdr.detectChanges(); // 手动触发变更检测
49
+ this.submitclick?.nativeElement?.click();
48
50
  }
49
51
  }
50
52
  AfterInit() {
@@ -89,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
89
91
  type: ViewChild,
90
92
  args: ['submitclick', { static: true }]
91
93
  }] } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9maWxlLWV4cGxvcmVyL2ZpbGUtZXhwbG9yZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQVFwRSxNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLFlBQ1UsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFhekIsWUFBWTtRQUNaLFlBQU8sR0FBUSxFQUFFLENBQUE7UUFxQ2pCLFVBQVU7UUFDVixzQkFBaUIsR0FBUSxFQUFFLENBQUE7UUFDM0IsWUFBWTtRQUNaLHNCQUFpQixHQUFRLEVBQUUsQ0FBQTtRQW1CekIscUJBQXFCO1FBQ3JCLHNCQUFpQixHQUFPLEVBQUUsQ0FBQTtJQXZFNUIsQ0FBQztJQUlELElBQ1csTUFBTSxDQUFDLENBQU07UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBRyxDQUFDO1lBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFJRCxJQUNXLE1BQU0sQ0FBQyxDQUFNO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLElBQUcsQ0FBQztZ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RSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmUtZmlsZS1leHBsb3Jlci1jb250cm9sJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtZXhwbG9yZXItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtZXhwbG9yZXItY29udHJvbC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVFeHBsb3JlckNvbnRyb2xDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICApIHtcblxuICB9XG5cbiAgLyoq6KGo5Y2V5a6e5L2TICovXG4gIF9lbnRpdHk6IEZvcm1Hcm91cCB8IHVuZGVmaW5lZFxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVudGl0eSh2OiBhbnkpIHtcbiAgICB0aGlzLl9lbnRpdHkgPSB2O1xuICAgIGlmKHYpIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG5cbiAgLyoq5a2X5q616YWN572u5YiX6KGoICovXG4gIF9maWVsZHM6IGFueSA9ICcnXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZmllbGRzKHY6IGFueSkge1xuICAgIHRoaXMuX2ZpZWxkcyA9IHY7XG4gICAgaWYodikgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cblxuICAvKirniLbnuqflrZfmrrXlkI3np7DvvIznlKjkuo7kuLrooajljZXorr7nva7mjqfku7botYvlgLwgKi9cbiAgX3BhcmVudEZpbGVkTmFtZTogYW55XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGFyZW50RmlsZWROYW1lKHY6IGFueSkge1xuICAgIHRoaXMuX3BhcmVudEZpbGVkTmFtZSA9IHY7XG4gICAgaWYodikgdGhpcy5kYXRhTG9hZGVkKCk7XG4gIH1cblxuICAvKirniLbnuqflrZfmrrXlkI3np7DvvIznlKjkuo7kuLrooajljZXorr7nva7mjqfku7botYvlgLwgKi9cbiAgX3NlbGVjdGVkOiBhbnlcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3RlZCh2OiBhbnkpIHtcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHZcbiAgICBpZih2JiZ2Lmxlbmd0aD4wKSB0aGlzLmRhdGFMb2FkZWQoKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ3N1Ym1pdGNsaWNrJywgeyBzdGF0aWM6IHRydWUgfSkgc3VibWl0Y2xpY2s6IEVsZW1lbnRSZWY7XG5cblxuICBnZXQgZXh0cmFQcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkuZ2V0KCdleHRyYVByb3BlcnRpZXMnKSBhcyBGb3JtR3JvdXBcbiAgfVxuXG4gIC8qKuaVsOaNruWKoOi9veWujOaIkCAqL1xuICBhc3luYyBkYXRhTG9hZGVkKCkge1xuICAgIGlmICh0aGlzLl9maWVsZHMgJiYgdGhpcy5fZW50aXR5JiZ0aGlzLl9wYXJlbnRGaWxlZE5hbWUpIHtcbiAgICAgIGF3YWl0IHRoaXMuQWZ0ZXJJbml0KClcbiAgICAgIHRoaXMuc3VibWl0Y2xpY2submF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgIH1cbiAgfVxuICAvKirlrZfmrrXphY3nva4gKi9cbiAgZm9ybUNvbmZpZ3VyYXRpb246IGFueSA9ICcnXG4gIC8qKuaWh+S7tuWuueWZqOWQjeensCAqL1xuICBGaWxlQ29udGFpbmVyTmFtZTogYW55ID0gJydcbiAgQWZ0ZXJJbml0KCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0cykgPT4ge1xuICAgICAgbGV0IFZhbGlkYXRvcnNBcnJheSA9IFtdXG4gICAgICBpZiAodGhpcy5fZmllbGRzLnJlcXVpcmVkKSB7XG4gICAgICAgIFZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gICAgICB9XG4gICAgICB0aGlzLmZvcm1Db25maWd1cmF0aW9uID0gdGhpcy5fZmllbGRzLmZpZWxkLmZvcm1Db25maWd1cmF0aW9uXG4gICAgICB0aGlzLkZpbGVDb250YWluZXJOYW1lID0gdGhpcy5mb3JtQ29uZmlndXJhdGlvblsnRmlsZUV4cGxvcmVyLkZpbGVDb250YWluZXJOYW1lJ11cbiAgICAgIGlmKHRoaXMuX3NlbGVjdGVkJiZ0aGlzLl9zZWxlY3RlZC5sZW5ndGg+MCl7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlR3JvdXA9dGhpcy5fc2VsZWN0ZWRcbiAgICAgIH1cbiAgICAgIGxldCBuZXdDb250cm9sID0gdGhpcy5mYi5jb250cm9sKHRoaXMuX3NlbGVjdGVkLCBWYWxpZGF0b3JzQXJyYXkpXG4gICAgICB0aGlzLmV4dHJhUHJvcGVydGllcy5zZXRDb250cm9sKHRoaXMuX2ZpZWxkcy5maWVsZC5uYW1lLCBuZXdDb250cm9sKVxuICAgICAgcmVzb2x2ZSh0cnVlKVxuICAgIH0pXG4gIH1cblxuXG4gICAgLyoq6YCJ5oup5paH5Lu2LeW8ueeql+eahC3lt7LpgInlrprnmoTmlofku7YgKi9cbiAgICBzZWxlY3RlZEZpbGVHcm91cDphbnlbXT1bXVxuXG4gICAgLyoqX3NlbGVjdGVkRmlsZeaUueWPmOWbnuiwgyAqL1xuICAgIF9zZWxlY3RlZEZpbGVDaGFuZ2UoZXZlbnQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlR3JvdXAgPSBldmVudFxuICAgICAgbGV0IGZpZWxkTmFtZT10aGlzLl9maWVsZHMuZmllbGQubmFtZVxuICAgICAgbGV0IG9iaj17fVxuICAgICAgb2JqW2ZpZWxkTmFtZV09ZXZlbnRcbiAgICAgIHRoaXMuZXh0cmFQcm9wZXJ0aWVzLnBhdGNoVmFsdWUob2JqKVxuICAgIH1cblxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJfZW50aXR5XCI+XG4gICAgPGRpdiBmb3JtR3JvdXBOYW1lPVwiZXh0cmFQcm9wZXJ0aWVzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgKm5nSWY9XCJfZmllbGRzLmRpc3BsYXlOYW1lXCI+e3sgX2ZpZWxkcy5kaXNwbGF5TmFtZSB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZmUtZmlsZS1waWNrZXIgW3NlbGVjdEZvcm1GaWxlXT1cInNlbGVjdGVkRmlsZUdyb3VwXCIgW211bHRpcGxlXT1cImZvcm1Db25maWd1cmF0aW9uWydGaWxlRXhwbG9yZXIuVXBsb2FkRmlsZU11bHRpcGxlJ11cIlxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEZpbGVDaGFuZ2UpPVwiX3NlbGVjdGVkRmlsZUNoYW5nZSgkZXZlbnQpXCIgW2ZpbGVDb250YWluZXJOYW1lXT1cIkZpbGVDb250YWluZXJOYW1lXCI+PC9mZS1maWxlLXBpY2tlcj5cbiAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImZvcm0tdGV4dCB0ZXh0LW11dGVkIGQtYmxvY2tcIiAqbmdJZj1cIl9maWVsZHMuZmllbGQuZGVzY3JpcHRpb25cIj57e19maWVsZHMuZmllbGQuZGVzY3JpcHRpb259fTwvc21hbGw+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIiAjc3VibWl0Y2xpY2s+PC9idXR0b24+XG48L2Zvcm0+Il19
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9maWxlLWV4cGxvcmVyL2ZpbGUtZXhwbG9yZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFRcEUsTUFBTSxPQUFPLDRCQUE0QjtJQUN2QyxZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQVVuQyxZQUFZO1FBQ1osWUFBTyxHQUFRLEVBQUUsQ0FBQztRQTRCVixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFVeEMsVUFBVTtRQUNWLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUM1QixZQUFZO1FBQ1osc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBa0I1QixxQkFBcUI7UUFDckIsc0JBQWlCLEdBQVUsRUFBRSxDQUFDO0lBdkVRLENBQUM7SUFJdkMsSUFDVyxNQUFNLENBQUMsQ0FBTTtRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUM7WUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUlELElBQ1csTUFB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QURoQixLQUFLO2dCQVNLLE1BQU07c0JBRGhCLEtBQUs7Z0JBU0ssZUFBZTtzQkFEekIsS0FBSztnQkFTSyxRQUFRO3NCQURsQixLQUFLO2dCQU1zQyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2ZlLWZpbGUtZXhwbG9yZXItY29udHJvbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsZUV4cGxvcmVyQ29udHJvbENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7fVxuXG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfZW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZW50aXR5KHY6IGFueSkge1xuICAgIHRoaXMuX2VudGl0eSA9IHY7XG4gICAgaWYgKHYpIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG5cbiAgLyoq5a2X5q616YWN572u5YiX6KGoICovXG4gIF9maWVsZHM6IGFueSA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZpZWxkcyh2OiBhbnkpIHtcbiAgICB0aGlzLl9maWVsZHMgPSB2O1xuICAgIGlmICh2KSB0aGlzLmRhdGFMb2FkZWQoKTtcbiAgfVxuXG4gIC8qKueItue6p+Wtl+auteWQjeensO+8jOeUqOS6juS4uuihqOWNleiuvue9ruaOp+S7tui1i+WAvCAqL1xuICBfcGFyZW50RmlsZWROYW1lOiBhbnk7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGFyZW50RmlsZWROYW1lKHY6IGFueSkge1xuICAgIHRoaXMuX3BhcmVudEZpbGVkTmFtZSA9IHY7XG4gICAgaWYgKHYpIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG5cbiAgLyoq54i257qn5a2X5q615ZCN56ew77yM55So5LqO5Li66KGo5Y2V6K6+572u5o6n5Lu26LWL5YC8ICovXG4gIF9zZWxlY3RlZDogYW55O1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkKHY6IGFueSkge1xuICAgIHRoaXMuX3NlbGVjdGVkID0gdjtcbiAgICBpZiAodiAmJiB2Lmxlbmd0aCA+IDApIHRoaXMuZGF0YUxvYWRlZCgpO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnc3VibWl0Y2xpY2snLCB7IHN0YXRpYzogdHJ1ZSB9KSBzdWJtaXRjbGljazogRWxlbWVudFJlZjtcblxuICBnZXQgZXh0cmFQcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkuZ2V0KCdleHRyYVByb3BlcnRpZXMnKSBhcyBGb3JtR3JvdXA7XG4gIH1cbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAvKirmlbDmja7liqDovb3lrozmiJAgKi9cbiAgYXN5bmMgZGF0YUxvYWRlZCgpIHtcbiAgICBpZiAodGhpcy5fZmllbGRzICYmIHRoaXMuX2VudGl0eSAmJiB0aGlzLl9wYXJlbnRGaWxlZE5hbWUpIHtcbiAgICAgIGF3YWl0IHRoaXMuQWZ0ZXJJbml0KCk7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7IC8vIOaJi+WKqOinpuWPkeWPmOabtOajgOa1i1xuICAgICAgdGhpcy5zdWJtaXRjbGljaz8ubmF0aXZlRWxlbWVudD8uY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvKirlrZfmrrXphY3nva4gKi9cbiAgZm9ybUNvbmZpZ3VyYXRpb246IGFueSA9ICcnO1xuICAvKirmlofku7blrrnlmajlkI3np7AgKi9cbiAgRmlsZUNvbnRhaW5lck5hbWU6IGFueSA9ICcnO1xuICBBZnRlckluaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3RzKSA9PiB7XG4gICAgICBsZXQgVmFsaWRhdG9yc0FycmF5ID0gW107XG4gICAgICBpZiAodGhpcy5fZmllbGRzLnJlcXVpcmVkKSB7XG4gICAgICAgIFZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgICAgfVxuICAgICAgdGhpcy5mb3JtQ29uZmlndXJhdGlvbiA9IHRoaXMuX2ZpZWxkcy5maWVsZC5mb3JtQ29uZmlndXJhdGlvbjtcbiAgICAgIHRoaXMuRmlsZUNvbnRhaW5lck5hbWUgPSB0aGlzLmZvcm1Db25maWd1cmF0aW9uWydGaWxlRXhwbG9yZXIuRmlsZUNvbnRhaW5lck5hbWUnXTtcbiAgICAgIGlmICh0aGlzLl9zZWxlY3RlZCAmJiB0aGlzLl9zZWxlY3RlZC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlR3JvdXAgPSB0aGlzLl9zZWxlY3RlZDtcbiAgICAgIH1cbiAgICAgIGxldCBuZXdDb250cm9sID0gdGhpcy5mYi5jb250cm9sKHRoaXMuX3NlbGVjdGVkLCBWYWxpZGF0b3JzQXJyYXkpO1xuICAgICAgdGhpcy5leHRyYVByb3BlcnRpZXMuc2V0Q29udHJvbCh0aGlzLl9maWVsZHMuZmllbGQubmFtZSwgbmV3Q29udHJvbCk7XG4gICAgICByZXNvbHZlKHRydWUpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoq6YCJ5oup5paH5Lu2LeW8ueeql+eahC3lt7LpgInlrprnmoTmlofku7YgKi9cbiAgc2VsZWN0ZWRGaWxlR3JvdXA6IGFueVtdID0gW107XG5cbiAgLyoqX3NlbGVjdGVkRmlsZeaUueWPmOWbnuiwgyAqL1xuICBfc2VsZWN0ZWRGaWxlQ2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5zZWxlY3RlZEZpbGVHcm91cCA9IGV2ZW50O1xuICAgIGxldCBmaWVsZE5hbWUgPSB0aGlzLl9maWVsZHMuZmllbGQubmFtZTtcbiAgICBsZXQgb2JqID0ge307XG4gICAgb2JqW2ZpZWxkTmFtZV0gPSBldmVudDtcbiAgICB0aGlzLmV4dHJhUHJvcGVydGllcy5wYXRjaFZhbHVlKG9iaik7XG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiX2VudGl0eVwiPlxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cImV4dHJhUHJvcGVydGllc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiICpuZ0lmPVwiX2ZpZWxkcy5kaXNwbGF5TmFtZVwiPnt7IF9maWVsZHMuZGlzcGxheU5hbWUgfX08L2xhYmVsPlxuICAgICAgICAgICAgPGZlLWZpbGUtcGlja2VyIFtzZWxlY3RGb3JtRmlsZV09XCJzZWxlY3RlZEZpbGVHcm91cFwiIFttdWx0aXBsZV09XCJmb3JtQ29uZmlndXJhdGlvblsnRmlsZUV4cGxvcmVyLlVwbG9hZEZpbGVNdWx0aXBsZSddXCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0ZWRGaWxlQ2hhbmdlKT1cIl9zZWxlY3RlZEZpbGVDaGFuZ2UoJGV2ZW50KVwiIFtmaWxlQ29udGFpbmVyTmFtZV09XCJGaWxlQ29udGFpbmVyTmFtZVwiPjwvZmUtZmlsZS1waWNrZXI+XG4gICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJmb3JtLXRleHQgdGV4dC1tdXRlZCBkLWJsb2NrXCIgKm5nSWY9XCJfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9uXCI+e3tfZmllbGRzLmZpZWxkLmRlc2NyaXB0aW9ufX08L3NtYWxsPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgI3N1Ym1pdGNsaWNrPjwvYnV0dG9uPlxuPC9mb3JtPiJdfQ==
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
85
85
  ],
86
86
  }]
87
87
  }] });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvZmlsZS1leHBsb3Jlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3JILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDOztBQXlDdkgsTUFBTSxPQUFPLGtCQUFrQjs4R0FBbEIsa0JBQWtCOytHQUFsQixrQkFBa0IsaUJBdEMzQixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQixzQkFBc0I7WUFDdEIsaUJBQWlCO1lBQ2pCLG9CQUFvQjtZQUNwQiwyQkFBMkI7WUFDM0IsNEJBQTRCLGFBRzVCLFdBQVc7WUFDWCxVQUFVO1lBQ1YsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixpQkFBaUI7WUFDakIsWUFBWTtZQUNaLHFCQUFxQjtZQUNyQix5QkFBeUIsYUFHekIsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsc0JBQXNCO1lBQ3RCLGlCQUFpQjtZQUNqQixvQkFBb0I7K0dBYVgsa0JBQWtCLFlBNUIzQixXQUFXO1lBQ1gsVUFBVTtZQUNWLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixxQkFBcUI7WUFDckIseUJBQXlCOzsyRkFxQmhCLGtCQUFrQjtrQkF4QzlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsaUJBQWlCO3dCQUNqQixvQkFBb0I7d0JBQ3BCLDJCQUEyQjt3QkFDM0IsNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQiwrQkFBK0I7d0JBQy9CLGdDQUFnQztxQkFDakM7b0JBQ0QsU0FBUyxFQUFFO29CQUNULGdCQUFnQjtvQkFDaEIsZUFBZTtvQkFDZixnQkFBZ0I7b0JBQ2hCLCtEQUErRDtvQkFDL0QsMEVBQTBFO29CQUMxRSx3REFBd0Q7cUJBQ3pEO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTnpUcmVlTW9kdWxlIH0gZnJvbSAnbmctem9ycm8tYW50ZC90cmVlJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBGaWxlRXhwbG9yZXJSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9maWxlLWV4cGxvcmVyLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IEZpbGVFZGl0Q29tcG9uZW50LCBGaWxlUGlja2VyQ29tcG9uZW50LCBGaWxlTW9kYWxDb21wb25lbnQsIEZpbGVNb2RhbFRyZWVDb21wb25lbnQsIEZpbGVEb21lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbGVQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9wcmV2aWV3cy9maWxlLXByZXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVFeHBsb3JlckNvbmZpZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbmZpZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZUV4cGxvcmVyQ29udHJvbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50JztcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZpbGVFZGl0Q29tcG9uZW50LFxuICAgIEZpbGVQaWNrZXJDb21wb25lbnQsXG4gICAgRmlsZU1vZGFsQ29tcG9uZW50LFxuICAgIEZpbGVNb2RhbFRyZWVDb21wb25lbnQsXG4gICAgRmlsZURvbWVDb21wb25lbnQsXG4gICAgRmlsZVByZXZpZXdDb21wb25lbnQsXG4gICAgRmlsZUV4cGxvcmVyQ29uZmlnQ29tcG9uZW50LFxuICAgIEZpbGVFeHBsb3JlckNvbnRyb2xDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG4gICAgTnpUcmVlTW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBGaWxlRXhwbG9yZXJSb3V0aW5nTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRmlsZUVkaXRDb21wb25lbnQsXG4gICAgRmlsZVBpY2tlckNvbXBvbmVudCxcbiAgICBGaWxlTW9kYWxDb21wb25lbnQsXG4gICAgRmlsZU1vZGFsVHJlZUNvbXBvbmVudCxcbiAgICBGaWxlRG9tZUNvbXBvbmVudCxcbiAgICBGaWxlUHJldmlld0NvbXBvbmVudCxcbiAgICAvLyBGaWxlRXhwbG9yZXJDb25maWdDb21wb25lbnQsXG4gICAgLy8gRmlsZUV4cGxvcmVyQ29udHJvbENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gLy8gW1JlcXVpcmVkXVxuICAgIC8vIExpc3RTZXJ2aWNlLFxuICAgIC8vIC8vIFtPcHRpb25hbF1cbiAgICAvLyAvLyBQcm92aWRlIHRoaXMgdG9rZW4gaWYgeW91IHdhbnQgYSBkaWZmZXJlbnQgZGVib3VuY2UgdGltZS5cbiAgICAvLyAvLyBEZWZhdWx0IGlzIDMwMC4gQ2Fubm90IGJlIDAuIEFueSB2YWx1ZSBiZWxvdyAxMDAgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgIC8vIHsgcHJvdmlkZTogTElTVF9RVUVSWV9ERUJPVU5DRV9USU1FLCB1c2VWYWx1ZTogNTAwIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVFeHBsb3Jlck1vZHVsZSB7XG5cbn1cbiJdfQ==
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1leHBsb3Jlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvZmlsZS1leHBsb3Jlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLGlCQUFpQixFQUF5QixNQUFNLGNBQWMsQ0FBQztBQUM1SixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUNySCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQzs7QUF5Q3ZILE1BQU0sT0FBTyxrQkFBa0I7OEdBQWxCLGtCQUFrQjsrR0FBbEIsa0JBQWtCLGlCQXRDM0IsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsc0JBQXNCO1lBQ3RCLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsMkJBQTJCO1lBQzNCLDRCQUE0QixhQUc1QixXQUFXO1lBQ1gsVUFBVTtZQUNWLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixxQkFBcUI7WUFDckIseUJBQXlCLGFBR3pCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLHNCQUFzQjtZQUN0QixpQkFBaUI7WUFDakIsb0JBQW9COytHQWFYLGtCQUFrQixZQTVCM0IsV0FBVztZQUNYLFVBQVU7WUFDVixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1oscUJBQXFCO1lBQ3JCLHlCQUF5Qjs7MkZBcUJoQixrQkFBa0I7a0JBeEM5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQiwyQkFBMkI7d0JBQzNCLDRCQUE0QjtxQkFDN0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFdBQVc7d0JBQ1gsVUFBVTt3QkFDVixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLHFCQUFxQjt3QkFDckIseUJBQXlCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLG9CQUFvQjt3QkFDcEIsK0JBQStCO3dCQUMvQixnQ0FBZ0M7cUJBQ2pDO29CQUNELFNBQVMsRUFBRTtvQkFDVCxnQkFBZ0I7b0JBQ2hCLGVBQWU7b0JBQ2YsZ0JBQWdCO29CQUNoQiwrREFBK0Q7b0JBQy9ELDBFQUEwRTtvQkFDMUUsd0RBQXdEO3FCQUN6RDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE56VHJlZU1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvdHJlZSc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgRmlsZUV4cGxvcmVyUm91dGluZ01vZHVsZSB9IGZyb20gJy4vZmlsZS1leHBsb3Jlci1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBGaWxlRWRpdENvbXBvbmVudCwgRmlsZVBpY2tlckNvbXBvbmVudCwgRmlsZU1vZGFsQ29tcG9uZW50LCBGaWxlTW9kYWxUcmVlQ29tcG9uZW50LCBGaWxlRG9tZUNvbXBvbmVudCwgZmllbEZpZWxkQ29udHJvbEdyb3VwIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZpbGVQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9wcmV2aWV3cy9maWxlLXByZXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVFeHBsb3JlckNvbmZpZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbmZpZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZUV4cGxvcmVyQ29udHJvbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmlsZS1leHBsb3Jlci9maWxlLWV4cGxvcmVyLWNvbnRyb2wuY29tcG9uZW50JztcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZpbGVFZGl0Q29tcG9uZW50LFxuICAgIEZpbGVQaWNrZXJDb21wb25lbnQsXG4gICAgRmlsZU1vZGFsQ29tcG9uZW50LFxuICAgIEZpbGVNb2RhbFRyZWVDb21wb25lbnQsXG4gICAgRmlsZURvbWVDb21wb25lbnQsXG4gICAgRmlsZVByZXZpZXdDb21wb25lbnQsXG4gICAgRmlsZUV4cGxvcmVyQ29uZmlnQ29tcG9uZW50LFxuICAgIEZpbGVFeHBsb3JlckNvbnRyb2xDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG4gICAgTnpUcmVlTW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBGaWxlRXhwbG9yZXJSb3V0aW5nTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRmlsZUVkaXRDb21wb25lbnQsXG4gICAgRmlsZVBpY2tlckNvbXBvbmVudCxcbiAgICBGaWxlTW9kYWxDb21wb25lbnQsXG4gICAgRmlsZU1vZGFsVHJlZUNvbXBvbmVudCxcbiAgICBGaWxlRG9tZUNvbXBvbmVudCxcbiAgICBGaWxlUHJldmlld0NvbXBvbmVudCxcbiAgICAvLyBGaWxlRXhwbG9yZXJDb25maWdDb21wb25lbnQsXG4gICAgLy8gRmlsZUV4cGxvcmVyQ29udHJvbENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gLy8gW1JlcXVpcmVkXVxuICAgIC8vIExpc3RTZXJ2aWNlLFxuICAgIC8vIC8vIFtPcHRpb25hbF1cbiAgICAvLyAvLyBQcm92aWRlIHRoaXMgdG9rZW4gaWYgeW91IHdhbnQgYSBkaWZmZXJlbnQgZGVib3VuY2UgdGltZS5cbiAgICAvLyAvLyBEZWZhdWx0IGlzIDMwMC4gQ2Fubm90IGJlIDAuIEFueSB2YWx1ZSBiZWxvdyAxMDAgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgIC8vIHsgcHJvdmlkZTogTElTVF9RVUVSWV9ERUJPVU5DRV9USU1FLCB1c2VWYWx1ZTogNTAwIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVFeHBsb3Jlck1vZHVsZSB7XG5cbn1cbiJdfQ==
@@ -93,4 +93,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
93
93
  }], name: [{
94
94
  type: Input
95
95
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL2xpYi9wcmV2aWV3cy9maWxlLXByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL3ByZXZpZXdzL2ZpbGUtcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7OztBQVEzQyxNQUFNLE9BQU8sb0JBQW9CO0lBdUIvQixZQUNVLFlBQXNCO1FBQXRCLGlCQUFZLEdBQVosWUFBWSxDQUFVO1FBdEJoQyxVQUFVO1FBQ0QsVUFBSyxHQUFRLE9BQU8sQ0FBQTtRQUM3QixTQUFTO1FBQ0EsUUFBRyxHQUFRLEVBQUUsQ0FBQTtRQUN0QixjQUFjO1FBQ0wsWUFBTyxHQUFRLElBQUksQ0FBQztRQUM3QixVQUFVO1FBQ0QsU0FBSSxHQUFRLEVBQUUsQ0FBQTtRQUN2QixVQUFVO1FBQ0QsU0FBSSxHQUFRLEVBQUUsQ0FBQTtRQUV2QixXQUFXO1FBQ1gsWUFBTyxHQUFHLElBQUksQ0FBQTtRQUNkLFdBQVc7UUFDWCxZQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ2YsV0FBVztRQUNYLFlBQU8sR0FBRyxLQUFLLENBQUE7UUFDZixhQUFhO1FBQ2IscUJBQWdCLEdBQUcsZUFBZSxDQUFBO1FBMEJsQyxVQUFVO1FBQ1YsU0FBSSxHQUFXLEVBQUUsQ0FBQTtRQUNqQixRQUFRO1FBQ1IsV0FBTSxHQUFXLENBQUMsQ0FBQTtJQXhCZCxDQUFDO0lBRUwsa0JBQWtCO1FBQ2hCLHlGQUF5RjtRQUN6RixpREFBaUQ7UUFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBQ25ELENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDM0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsVUFBVTtJQUNWLFlBQVk7SUFFWixDQUFDO0lBV0QsWUFBWTtJQUNaLGdCQUFnQixDQUFDLE9BQXlCO1FBRXhDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzlDLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGdCQUFnQixFQUFFLGlCQUFpQjtTQUNwQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3ZCLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDWCxDQUFDLEVBQ0QsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNULElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2hCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUNELFVBQVU7SUFDVixNQUFNO1FBQ0osSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUNwQixJQUFJLElBQUksSUFBSSxFQUFFO1lBQUUsT0FBTTtRQUN0QixJQUFJLEVBQUUsQ0FBQTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQ2xCLENBQUM7SUFDRCxVQUFVO0lBQ1YsT0FBTztRQUNMLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDcEIsSUFBSSxJQUFJLElBQUksQ0FBQztZQUFFLE9BQU07UUFDckIsSUFBSSxFQUFFLENBQUE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUNsQixDQUFDO0lBQ0QsU0FBUztJQUNULFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksR0FBRztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUE7UUFDOUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUE7SUFDbkIsQ0FBQzs4R0FyRlUsb0JBQW9CO2tHQUFwQixvQkFBb0IsK0lDVGpDLDJ1REE4QmM7OzJGRHJCRCxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCOzZFQU9sQixLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEltYWdlVHlwZU9wdGlvbiB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IE5nYk1vZGFsLCBOZ2JNb2RhbFJlZiB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmUtZmlsZS1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtcHJldmlldy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVQcmV2aWV3Q29tcG9uZW50IHtcblxuICAvKirmlofku7blrr3luqYgKi9cbiAgQElucHV0KCkgd2lkdGg6IGFueSA9ICcxMDBweCdcbiAgLyrmlofku7bpk77mjqUgKi9cbiAgQElucHV0KCkgc3JjOiBhbnkgPSAnJ1xuICAvKirmmK/lkKbmlK/mjIHlpKflm77pooTop4ggKi9cbiAgQElucHV0KCkgcHJldmlldzogYW55ID0gdHJ1ZTtcbiAgLyoq5paH5Lu257G75Z6LICovXG4gIEBJbnB1dCgpIHR5cGU6IGFueSA9ICcnXG4gIC8qKuaWh+S7tuWQjeensCAqL1xuICBASW5wdXQoKSBuYW1lOiBhbnkgPSAnJ1xuXG4gIC8qKuaYr+WQpuaYr+aWh+S7tiAqL1xuICBpc0ltYWdlID0gdHJ1ZVxuICAvKirmmK/lkKbmmK/op4bpopEgKi9cbiAgaXNBdWRpbyA9IGZhbHNlXG4gIC8qKuaYr+WQpuaYr+mfs+mikSAqL1xuICBpc1ZpZGVvID0gZmFsc2VcbiAgLyoq5paH5Lu257G75Z6L5Y+K5Zu+5qCHICovXG4gIF9JbWFnZVR5cGVPcHRpb24gPSBJbWFnZVR5cGVPcHRpb25cblxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbFxuICApIHsgfVxuICBcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIC8vQ2FsbGVkIGFmdGVyIG5nT25Jbml0IHdoZW4gdGhlIGNvbXBvbmVudCdzIG9yIGRpcmVjdGl2ZSdzIGNvbnRlbnQgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuXG4gICAgLy9BZGQgJ2ltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCcgdG8gdGhlIGNsYXNzLlxuICAgIGlmICghdGhpcy50eXBlKSB7XG4gICAgICB0aGlzLnR5cGUgPSB0aGlzLm5hbWUuaW5jbHVkZXMoJy43eicpID8gJzd6JyA6ICcnXG4gICAgfVxuICAgIHRoaXMuaXNJbWFnZSA9IHRoaXMudHlwZS5pbmNsdWRlcygnaW1hZ2UvJylcbiAgICB0aGlzLmlzQXVkaW8gPSB0aGlzLnR5cGUuaW5jbHVkZXMoJ2F1ZGlvLycpXG4gICAgdGhpcy5pc1ZpZGVvID0gdGhpcy50eXBlLmluY2x1ZGVzKCd2aWRlby8nKVxuICB9XG5cbiAgLyoq6aKE6KeI5Zu+54mHICovXG4gIHByZXZpZXdJbWFnZSgpIHtcblxuICB9XG5cbiAgLyoq5qih5oCB5qGG5a6e5L6LICovXG4gIG1vZGFsUmVmITogTmdiTW9kYWxSZWY7XG5cbiAgLyoq5pS+5aSn5YCN5pWwICovXG4gIHpvb206IG51bWJlciA9IDEwXG4gIC8qKuaXi+i9rCAqL1xuICByb3RhdGU6IG51bWJlciA9IDBcblxuXG4gIC8qKuaJk+W8gOmihOiniOW8ueeqlyAqL1xuICBPcGVuUHJldmlld0ltYWdlKGNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4pIHtcblxuICAgIHRoaXMubW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGNvbnRlbnQsIHtcbiAgICAgIGZ1bGxzY3JlZW46IHRydWUsXG4gICAgICBtb2RhbERpYWxvZ0NsYXNzOiAnZGlnbml0ZS1wcmV2aWV3JyxcbiAgICB9KTtcbiAgICB0aGlzLm1vZGFsUmVmLnJlc3VsdC50aGVuKFxuICAgICAgKHJlc3VsdCkgPT4ge1xuICAgICAgfSxcbiAgICAgIChyZWFzb24pID0+IHtcbiAgICAgICAgdGhpcy56b29tID0gMTBcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuICAvKirmlL7lpKflm77lg48gKi9cbiAgem9vbUluKCkge1xuICAgIGxldCB6b29tID0gdGhpcy56b29tXG4gICAgaWYgKHpvb20gPT0gMjApIHJldHVyblxuICAgIHpvb20rK1xuICAgIHRoaXMuem9vbSA9IHpvb21cbiAgfVxuICAvKirnvKnlsI/lm77lg48gKi9cbiAgem9vbU91dCgpIHtcbiAgICBsZXQgem9vbSA9IHRoaXMuem9vbVxuICAgIGlmICh6b29tID09IDMpIHJldHVyblxuICAgIHpvb20tLVxuICAgIHRoaXMuem9vbSA9IHpvb21cbiAgfVxuICAvKirlj7Pml4vovawgKi9cbiAgUm90YXRlUmlnaHQoKSB7XG4gICAgaWYgKHRoaXMucm90YXRlID09IDM2MCkgcmV0dXJuIHRoaXMucm90YXRlID0gMFxuICAgIHRoaXMucm90YXRlICs9IDkwXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpbWFnZV9ib3hcIiAgW3N0eWxlXT1cInt3aWR0aDp3aWR0aCxtYXhXaWR0aDonMTAwJSd9XCI+XG4gICAgPGRpdiBjbGFzcz1cImltZ19ib3hcIiAqbmdJZj1cImlzSW1hZ2VcIj5cbiAgICAgICAgPGltZyBbc3JjXT1cInNyY1wiICAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uX2JveFwiICpuZ0lmPVwicHJldmlld1wiPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1leWUgXCIgKGNsaWNrLnN0b3ApPVwiT3BlblByZXZpZXdJbWFnZShjb250ZW50KVwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGEgW2hyZWZdPVwic3JjXCIgW2Rvd25sb2FkXT1cIm5hbWVcIiB0YXJnZXQ+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtZmlsZS1hdWRpby1vIGZzLTFcIiAqbmdJZj1cImlzQXVkaW9cIj48L2k+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtZmlsZS12aWRlby1vIGZzLTFcIiAqbmdJZj1cImlzVmlkZW9cIj48L2k+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKGlzSW1hZ2V8fGlzQXVkaW98fGlzVmlkZW8pXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIF9JbWFnZVR5cGVPcHRpb247IGxldCBpPWluZGV4XCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmcy0xXCIgW25nQ2xhc3NdPVwiaXRlbS5pY29uXCIgKm5nSWY9XCJpdGVtLnR5cGU9PT10eXBlXCI+PC9pPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvYT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQgbGV0LW1vZGFsPlxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIHctMTAwIGZzLTNcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwibXgtMiBmYSAgZmEgZmEtcmVwZWF0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCLlj7Pml4vovaxcIiByb2xlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIlJvdGF0ZVJpZ2h0KClcIj48L2k+XG4gICAgICAgICAgICA8aSBjbGFzcz1cIm14LTIgZmEgIGZhLXNlYXJjaC1taW51c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwi57yp5bCPXCIgcm9sZT1cImJ1dHRvblwiIChjbGljayk9XCJ6b29tT3V0KClcIj48L2k+XG4gICAgICAgICAgICA8aSBjbGFzcz1cIm14LTIgZmEgIGZhLXNlYXJjaC1wbHVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGl0bGU9XCLmlL7lpKdcIiByb2xlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInpvb21JbigpXCI+PC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJteC0yIGZhICBmYS10aW1lc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHJvbGU9XCJidXR0b25cIiAoY2xpY2spPVwibW9kYWwuZGlzbWlzcygnQ3Jvc3MgY2xpY2snKVwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+IFxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBcIj5cbiAgICAgICAgPGltZyB3aWR0aD1cIjQwMFwiIGNsYXNzPVwibW9kYWwtYm9keS1wcmV2aWV3XCIgIFtzcmNdPVwic3JjXCIgW3N0eWxlLnRyYW5zZm9ybV09XCInc2NhbGUoJyt6b29tLzEwKycpIHJvdGF0ZSgnK3JvdGF0ZSsnZGVnKSdcIiAgID5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL2xpYi9wcmV2aWV3cy9maWxlLXByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmlsZS1leHBsb3Jlci9zcmMvbGliL3ByZXZpZXdzL2ZpbGUtcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7QUFTM0MsTUFBTSxPQUFPLG9CQUFvQjtJQXVCL0IsWUFDVSxZQUFzQjtRQUF0QixpQkFBWSxHQUFaLFlBQVksQ0FBVTtRQXRCaEMsVUFBVTtRQUNELFVBQUssR0FBUSxPQUFPLENBQUE7UUFDN0IsU0FBUztRQUNBLFFBQUcsR0FBUSxFQUFFLENBQUE7UUFDdEIsY0FBYztRQUNMLFlBQU8sR0FBUSxJQUFJLENBQUM7UUFDN0IsVUFBVTtRQUNELFNBQUksR0FBUSxFQUFFLENBQUE7UUFDdkIsVUFBVTtRQUNELFNBQUksR0FBUSxFQUFFLENBQUE7UUFFdkIsV0FBVztRQUNYLFlBQU8sR0FBRyxJQUFJLENBQUE7UUFDZCxXQUFXO1FBQ1gsWUFBTyxHQUFHLEtBQUssQ0FBQTtRQUNmLFdBQVc7UUFDWCxZQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ2YsYUFBYTtRQUNiLHFCQUFnQixHQUFHLGVBQWUsQ0FBQTtRQTBCbEMsVUFBVTtRQUNWLFNBQUksR0FBVyxFQUFFLENBQUE7UUFDakIsUUFBUTtRQUNSLFdBQU0sR0FBVyxDQUFDLENBQUE7SUF4QmQsQ0FBQztJQUVMLGtCQUFrQjtRQUNoQix5RkFBeUY7UUFDekYsaURBQWlEO1FBQ2pELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtRQUNuRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVELFVBQVU7SUFDVixZQUFZO0lBRVosQ0FBQztJQVdELFlBQVk7SUFDWixnQkFBZ0IsQ0FBQyxPQUF5QjtRQUV4QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUM5QyxVQUFVLEVBQUUsSUFBSTtZQUNoQixnQkFBZ0IsRUFBRSxpQkFBaUI7U0FDcEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN2QixDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQ1gsQ0FBQyxFQUNELENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUNoQixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFDRCxVQUFVO0lBQ1YsTUFBTTtRQUNKLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDcEIsSUFBSSxJQUFJLElBQUksRUFBRTtZQUFFLE9BQU07UUFDdEIsSUFBSSxFQUFFLENBQUE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUNsQixDQUFDO0lBQ0QsVUFBVTtJQUNWLE9BQU87UUFDTCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFBO1FBQ3BCLElBQUksSUFBSSxJQUFJLENBQUM7WUFBRSxPQUFNO1FBQ3JCLElBQUksRUFBRSxDQUFBO1FBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7SUFDbEIsQ0FBQztJQUNELFNBQVM7SUFDVCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO1FBQzlDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFBO0lBQ25CLENBQUM7OEdBckZVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLCtJQ1ZqQywydURBOEJjOzsyRkRwQkQsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUVFLGlCQUFpQjs2RUFPbEIsS0FBSztzQkFBYixLQUFLO2dCQUVHLEdBQUc7c0JBQVgsS0FBSztnQkFFRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbWFnZVR5cGVPcHRpb24gfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBOZ2JNb2RhbCwgTmdiTW9kYWxSZWYgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2ZlLWZpbGUtcHJldmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXByZXZpZXcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXR7XG5cbiAgLyoq5paH5Lu25a695bqmICovXG4gIEBJbnB1dCgpIHdpZHRoOiBhbnkgPSAnMTAwcHgnXG4gIC8q5paH5Lu26ZO+5o6lICovXG4gIEBJbnB1dCgpIHNyYzogYW55ID0gJydcbiAgLyoq5piv5ZCm5pSv5oyB5aSn5Zu+6aKE6KeIICovXG4gIEBJbnB1dCgpIHByZXZpZXc6IGFueSA9IHRydWU7XG4gIC8qKuaWh+S7tuexu+WeiyAqL1xuICBASW5wdXQoKSB0eXBlOiBhbnkgPSAnJ1xuICAvKirmlofku7blkI3np7AgKi9cbiAgQElucHV0KCkgbmFtZTogYW55ID0gJydcblxuICAvKirmmK/lkKbmmK/mlofku7YgKi9cbiAgaXNJbWFnZSA9IHRydWVcbiAgLyoq5piv5ZCm5piv6KeG6aKRICovXG4gIGlzQXVkaW8gPSBmYWxzZVxuICAvKirmmK/lkKbmmK/pn7PpopEgKi9cbiAgaXNWaWRlbyA9IGZhbHNlXG4gIC8qKuaWh+S7tuexu+Wei+WPiuWbvuaghyAqL1xuICBfSW1hZ2VUeXBlT3B0aW9uID0gSW1hZ2VUeXBlT3B0aW9uXG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWxcbiAgKSB7IH1cbiAgXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAvL0NhbGxlZCBhZnRlciBuZ09uSW5pdCB3aGVuIHRoZSBjb21wb25lbnQncyBvciBkaXJlY3RpdmUncyBjb250ZW50IGhhcyBiZWVuIGluaXRpYWxpemVkLlxuICAgIC8vQWRkICdpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQnIHRvIHRoZSBjbGFzcy5cbiAgICBpZiAoIXRoaXMudHlwZSkge1xuICAgICAgdGhpcy50eXBlID0gdGhpcy5uYW1lLmluY2x1ZGVzKCcuN3onKSA/ICc3eicgOiAnJ1xuICAgIH1cbiAgICB0aGlzLmlzSW1hZ2UgPSB0aGlzLnR5cGUuaW5jbHVkZXMoJ2ltYWdlLycpXG4gICAgdGhpcy5pc0F1ZGlvID0gdGhpcy50eXBlLmluY2x1ZGVzKCdhdWRpby8nKVxuICAgIHRoaXMuaXNWaWRlbyA9IHRoaXMudHlwZS5pbmNsdWRlcygndmlkZW8vJylcbiAgfVxuXG4gIC8qKumihOiniOWbvueJhyAqL1xuICBwcmV2aWV3SW1hZ2UoKSB7XG5cbiAgfVxuXG4gIC8qKuaooeaAgeahhuWunuS+iyAqL1xuICBtb2RhbFJlZiE6IE5nYk1vZGFsUmVmO1xuXG4gIC8qKuaUvuWkp+WAjeaVsCAqL1xuICB6b29tOiBudW1iZXIgPSAxMFxuICAvKirml4vovawgKi9cbiAgcm90YXRlOiBudW1iZXIgPSAwXG5cblxuICAvKirmiZPlvIDpooTop4jlvLnnqpcgKi9cbiAgT3BlblByZXZpZXdJbWFnZShjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG5cbiAgICB0aGlzLm1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3Blbihjb250ZW50LCB7XG4gICAgICBmdWxsc2NyZWVuOiB0cnVlLFxuICAgICAgbW9kYWxEaWFsb2dDbGFzczogJ2RpZ25pdGUtcHJldmlldycsXG4gICAgfSk7XG4gICAgdGhpcy5tb2RhbFJlZi5yZXN1bHQudGhlbihcbiAgICAgIChyZXN1bHQpID0+IHtcbiAgICAgIH0sXG4gICAgICAocmVhc29uKSA9PiB7XG4gICAgICAgIHRoaXMuem9vbSA9IDEwXG4gICAgICB9LFxuICAgICk7XG4gIH1cbiAgLyoq5pS+5aSn5Zu+5YOPICovXG4gIHpvb21JbigpIHtcbiAgICBsZXQgem9vbSA9IHRoaXMuem9vbVxuICAgIGlmICh6b29tID09IDIwKSByZXR1cm5cbiAgICB6b29tKytcbiAgICB0aGlzLnpvb20gPSB6b29tXG4gIH1cbiAgLyoq57yp5bCP5Zu+5YOPICovXG4gIHpvb21PdXQoKSB7XG4gICAgbGV0IHpvb20gPSB0aGlzLnpvb21cbiAgICBpZiAoem9vbSA9PSAzKSByZXR1cm5cbiAgICB6b29tLS1cbiAgICB0aGlzLnpvb20gPSB6b29tXG4gIH1cbiAgLyoq5Y+z5peL6L2sICovXG4gIFJvdGF0ZVJpZ2h0KCkge1xuICAgIGlmICh0aGlzLnJvdGF0ZSA9PSAzNjApIHJldHVybiB0aGlzLnJvdGF0ZSA9IDBcbiAgICB0aGlzLnJvdGF0ZSArPSA5MFxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaW1hZ2VfYm94XCIgIFtzdHlsZV09XCJ7d2lkdGg6d2lkdGgsbWF4V2lkdGg6JzEwMCUnfVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpbWdfYm94XCIgKm5nSWY9XCJpc0ltYWdlXCI+XG4gICAgICAgIDxpbWcgW3NyY109XCJzcmNcIiAgLz5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvbl9ib3hcIiAqbmdJZj1cInByZXZpZXdcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtZXllIFwiIChjbGljay5zdG9wKT1cIk9wZW5QcmV2aWV3SW1hZ2UoY29udGVudClcIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxhIFtocmVmXT1cInNyY1wiIFtkb3dubG9hZF09XCJuYW1lXCIgdGFyZ2V0PlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWZpbGUtYXVkaW8tbyBmcy0xXCIgKm5nSWY9XCJpc0F1ZGlvXCI+PC9pPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWZpbGUtdmlkZW8tbyBmcy0xXCIgKm5nSWY9XCJpc1ZpZGVvXCI+PC9pPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShpc0ltYWdlfHxpc0F1ZGlvfHxpc1ZpZGVvKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBfSW1hZ2VUeXBlT3B0aW9uOyBsZXQgaT1pbmRleFwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZnMtMVwiIFtuZ0NsYXNzXT1cIml0ZW0uaWNvblwiICpuZ0lmPVwiaXRlbS50eXBlPT09dHlwZVwiPjwvaT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2E+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50IGxldC1tb2RhbD5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCB3LTEwMCBmcy0zXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cIm14LTIgZmEgIGZhIGZhLXJlcGVhdFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwi5Y+z5peL6L2sXCIgcm9sZT1cImJ1dHRvblwiIChjbGljayk9XCJSb3RhdGVSaWdodCgpXCI+PC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJteC0yIGZhICBmYS1zZWFyY2gtbWludXNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0aXRsZT1cIue8qeWwj1wiIHJvbGU9XCJidXR0b25cIiAoY2xpY2spPVwiem9vbU91dCgpXCI+PC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJteC0yIGZhICBmYS1zZWFyY2gtcGx1c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRpdGxlPVwi5pS+5aSnXCIgcm9sZT1cImJ1dHRvblwiIChjbGljayk9XCJ6b29tSW4oKVwiPjwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwibXgtMiBmYSAgZmEtdGltZXNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiByb2xlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm1vZGFsLmRpc21pc3MoJ0Nyb3NzIGNsaWNrJylcIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PiBcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgXCI+XG4gICAgICAgIDxpbWcgd2lkdGg9XCI0MDBcIiBjbGFzcz1cIm1vZGFsLWJvZHktcHJldmlld1wiICBbc3JjXT1cInNyY1wiIFtzdHlsZS50cmFuc2Zvcm1dPVwiJ3NjYWxlKCcrem9vbS8xMCsnKSByb3RhdGUoJytyb3RhdGUrJ2RlZyknXCIgICA+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -2,8 +2,9 @@
2
2
  * Public API Surface of file-explorer
3
3
  */
4
4
  export * from './lib/file-explorer.module';
5
+ export * from './lib/components/dynamic-form/form-control-group';
5
6
  export * from './lib/components';
6
- export * from './lib/services';
7
- export * from './lib/proxy';
7
+ // export * from './lib/services';
8
+ // export * from './lib/proxy';
8
9
  export * from './lib/previews';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFHSCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBmaWxlLWV4cGxvcmVyXG4gKi9cblxuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9maWxlLWV4cGxvcmVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Byb3h5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXZpZXdzJztcbiJdfQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtZXhwbG9yZXIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFHSCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxrQ0FBa0M7QUFDbEMsK0JBQStCO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGZpbGUtZXhwbG9yZXJcbiAqL1xuXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbGUtZXhwbG9yZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2Zvcm0tY29udHJvbC1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL3Byb3h5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXZpZXdzJztcbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Component, Input, EventEmitter, Output, ViewChild, inject, NgModule } from '@angular/core';
2
+ import { Injectable, Component, Input, EventEmitter, Output, ViewChild, inject, NgModule, ChangeDetectorRef } from '@angular/core';
3
3
  import * as i3 from '@abp/ng.core';
4
4
  import { ListService, LIST_QUERY_DEBOUNCE_TIME, CoreModule } from '@abp/ng.core';
5
5
  import * as i2$1 from '@abp/ng.theme.shared';
@@ -398,11 +398,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
398
398
  }]
399
399
  }], ctorParameters: () => [{ type: i3.RestService }] });
400
400
 
401
- var index$e = /*#__PURE__*/Object.freeze({
402
- __proto__: null,
403
- FileDescriptorService: FileDescriptorService$1
404
- });
405
-
406
401
  class FileDescriptorService {
407
402
  constructor(restService) {
408
403
  this.restService = restService;
@@ -446,11 +441,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
446
441
  }]
447
442
  }], ctorParameters: () => [{ type: i3.RestService }] });
448
443
 
449
- var index$d = /*#__PURE__*/Object.freeze({
450
- __proto__: null,
451
- FileDescriptorService: FileDescriptorService
452
- });
453
-
454
444
  /* eslint-disable @angular-eslint/component-selector */
455
445
  var that$1;
456
446
  class FileModalTreeComponent {
@@ -992,6 +982,7 @@ class FileExplorerConfig {
992
982
  class FileExplorerConfigComponent {
993
983
  constructor(fb) {
994
984
  this.fb = fb;
985
+ this.cdr = inject(ChangeDetectorRef);
995
986
  }
996
987
  set type(v) {
997
988
  this._type = v;
@@ -1011,6 +1002,7 @@ class FileExplorerConfigComponent {
1011
1002
  async dataLoaded() {
1012
1003
  if (this._Entity && this._type) {
1013
1004
  await this.AfterInit();
1005
+ this.cdr.detectChanges(); // 手动触发变更检测
1014
1006
  this.submitclick?.nativeElement?.click();
1015
1007
  }
1016
1008
  }
@@ -1047,6 +1039,7 @@ class FileExplorerControlComponent {
1047
1039
  this.fb = fb;
1048
1040
  /**字段配置列表 */
1049
1041
  this._fields = '';
1042
+ this.cdr = inject(ChangeDetectorRef);
1050
1043
  /**字段配置 */
1051
1044
  this.formConfiguration = '';
1052
1045
  /**文件容器名称 */
@@ -1081,7 +1074,8 @@ class FileExplorerControlComponent {
1081
1074
  async dataLoaded() {
1082
1075
  if (this._fields && this._entity && this._parentFiledName) {
1083
1076
  await this.AfterInit();
1084
- this.submitclick.nativeElement.click();
1077
+ this.cdr.detectChanges(); // 手动触发变更检测
1078
+ this.submitclick?.nativeElement?.click();
1085
1079
  }
1086
1080
  }
1087
1081
  AfterInit() {
@@ -1222,70 +1216,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
1222
1216
  }]
1223
1217
  }] });
1224
1218
 
1225
- var index$c = /*#__PURE__*/Object.freeze({
1226
- __proto__: null,
1227
- Directories: index$d,
1228
- Files: index$e
1229
- });
1230
-
1231
- var index$b = /*#__PURE__*/Object.freeze({
1232
- __proto__: null,
1233
- FileExplorer: index$c
1234
- });
1235
-
1236
- var index$a = /*#__PURE__*/Object.freeze({
1237
- __proto__: null
1238
- });
1239
-
1240
- var index$9 = /*#__PURE__*/Object.freeze({
1241
- __proto__: null,
1242
- Mvc: index$a
1243
- });
1244
-
1245
- var index$8 = /*#__PURE__*/Object.freeze({
1246
- __proto__: null
1247
- });
1248
-
1249
- var index$7 = /*#__PURE__*/Object.freeze({
1250
- __proto__: null,
1251
- Primitives: index$8
1252
- });
1253
-
1254
- var index$6 = /*#__PURE__*/Object.freeze({
1255
- __proto__: null
1256
- });
1257
-
1258
- var index$5 = /*#__PURE__*/Object.freeze({
1259
- __proto__: null,
1260
- Headers: index$6
1261
- });
1262
-
1263
- var index$4 = /*#__PURE__*/Object.freeze({
1264
- __proto__: null,
1265
- Http: index$5
1266
- });
1267
-
1268
- var index$3 = /*#__PURE__*/Object.freeze({
1269
- __proto__: null,
1270
- AspNetCore: index$9,
1271
- Extensions: index$7,
1272
- Net: index$4
1273
- });
1274
-
1275
- var index$2 = /*#__PURE__*/Object.freeze({
1276
- __proto__: null
1277
- });
1278
-
1279
- var index$1 = /*#__PURE__*/Object.freeze({
1280
- __proto__: null,
1281
- Content: index$2
1282
- });
1283
-
1284
- var index = /*#__PURE__*/Object.freeze({
1285
- __proto__: null,
1286
- Abp: index$1
1287
- });
1288
-
1289
1219
  /*
1290
1220
  * Public API Surface of file-explorer
1291
1221
  */
@@ -1294,5 +1224,5 @@ var index = /*#__PURE__*/Object.freeze({
1294
1224
  * Generated bundle index. Do not edit.
1295
1225
  */
1296
1226
 
1297
- export { AddFieldControlGroup, index$b as Dignite, FileApiService, FileDomeComponent, FileEditComponent, FileExplorerModule, FileModalComponent, FileModalTreeComponent, FilePickerComponent, FilePreviewComponent, ImageTypeOption, index$3 as Microsoft, index as Volo, fielFieldControlGroup, getExcludeAssignControl };
1227
+ export { AddFieldControlGroup, FileDomeComponent, FileEditComponent, FileExplorerModule, FileModalComponent, FileModalTreeComponent, FilePickerComponent, FilePreviewComponent, ImageTypeOption, fielFieldControlGroup, getExcludeAssignControl };
1298
1228
  //# sourceMappingURL=dignite-ng-expand.file-explorer.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dignite-ng-expand.file-explorer.mjs","sources":["../../../projects/file-explorer/src/lib/services/file-api.service.ts","../../../projects/file-explorer/src/lib/previews/models.ts","../../../projects/file-explorer/src/lib/previews/file-preview.component.ts","../../../projects/file-explorer/src/lib/previews/file-preview.component.html","../../../projects/file-explorer/src/lib/components/file-edit/file-edit.component.ts","../../../projects/file-explorer/src/lib/components/file-edit/file-edit.component.html","../../../projects/file-explorer/src/lib/proxy/dignite/file-explorer/files/file-descriptor.service.ts","../../../projects/file-explorer/src/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.ts","../../../projects/file-explorer/src/lib/components/file-modal-tree/file-modal-tree.component.ts","../../../projects/file-explorer/src/lib/components/file-modal-tree/file-modal-tree.component.html","../../../projects/file-explorer/src/lib/components/file-modal/file-modal.component.ts","../../../projects/file-explorer/src/lib/components/file-modal/file-modal.component.html","../../../projects/file-explorer/src/lib/components/file-picker/file-picker.component.ts","../../../projects/file-explorer/src/lib/components/file-picker/file-picker.component.html","../../../projects/file-explorer/src/lib/components/dome/file-dome.component.ts","../../../projects/file-explorer/src/lib/components/dome/file-dome.component.html","../../../projects/file-explorer/src/lib/file-explorer-routing.module.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.component.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.component.html","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-control.component.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-control.component.html","../../../projects/file-explorer/src/lib/components/dynamic-form/form-control-group.ts","../../../projects/file-explorer/src/lib/file-explorer.module.ts","../../../projects/file-explorer/src/public-api.ts","../../../projects/file-explorer/src/dignite-ng-expand.file-explorer.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileApiService {\n\n constructor() { }\n\n /**转换文件大小单位 输入k */\n formatFileSize(bytes: any) {\n const units = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n let size:any = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n // 保留两位小数,四舍五入\n size = size.toFixed(1)\n return `${size} ${units[unitIndex]}`;\n }\n /**获取图片的本地连接 */\n getImageLacolBase64Url(file: File) {\n return new Promise((resolve, rejects) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = (e: any) => {\n resolve(e.target.result)\n };\n reader.onerror = error => rejects(error);\n })\n }\n /**\n * 深拷贝--方法\n * $api.deepClone() */\n deepClone(obj) {\n if (typeof obj !== 'object' || obj === null) return obj;\n const result = Array.isArray(obj) ? [] : {};\n for (let key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (typeof obj[key] === 'object' && obj[key] !== null) {\n if (obj[key] instanceof Date) {\n result[key] = new Date(obj[key].getTime());\n } else if (obj[key] instanceof RegExp) {\n result[key] = new RegExp(obj[key]);\n } else if (obj[key] instanceof File) {\n result[key]=obj[key]\n } else {\n result[key] = this.deepClone(obj[key]);\n }\n } else {\n result[key] = obj[key];\n }\n }\n }\n return result;\n }\n\n}\n","\r\n\r\nexport let ImageTypeOption=[{\r\n label:'',\r\n type:'image/jpeg',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/webp',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/gif',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/png',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/bmp',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'audio/ogg',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'video/mp4',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'application/pdf',\r\n icon:'fa fa-file-pdf-o',\r\n},{\r\n label:'',\r\n type:'application/msword',\r\n icon:'fa fa-file-word-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n icon:'fa fa-file-word-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.ms-powerpoint',\r\n icon:'fa fa-file-powerpoint-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.presentationml.presentation',\r\n icon:'fa fa-file-powerpoint-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.ms-excel',\r\n icon:'fa fa-file-excel-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\r\n icon:'fa fa-file-excel-o',\r\n},{\r\n label:'',\r\n type:'application/x-zip-compressed',\r\n icon:'fa fa-file-archive-o',\r\n},{\r\n label:'',\r\n type:'7z',\r\n icon:'fa fa-file-archive-o',\r\n},{\r\n label:'',\r\n type:'text/plain',\r\n icon:'fa fa-file-text-o',\r\n\r\n},{\r\n label:'',\r\n type:'',\r\n icon:'fa fa-file-o',\r\n}\r\n] ","import { Component, Input, TemplateRef } from '@angular/core';\nimport { ImageTypeOption } from './models';\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n selector: 'fe-file-preview',\n templateUrl: './file-preview.component.html',\n styleUrls: ['./file-preview.component.scss']\n})\nexport class FilePreviewComponent {\n\n /**文件宽度 */\n @Input() width: any = '100px'\n /*文件链接 */\n @Input() src: any = ''\n /**是否支持大图预览 */\n @Input() preview: any = true;\n /**文件类型 */\n @Input() type: any = ''\n /**文件名称 */\n @Input() name: any = ''\n\n /**是否是文件 */\n isImage = true\n /**是否是视频 */\n isAudio = false\n /**是否是音频 */\n isVideo = false\n /**文件类型及图标 */\n _ImageTypeOption = ImageTypeOption\n\n\n constructor(\n private modalService: NgbModal\n ) { }\n \n ngAfterContentInit(): void {\n //Called after ngOnInit when the component's or directive's content has been initialized.\n //Add 'implements AfterContentInit' to the class.\n if (!this.type) {\n this.type = this.name.includes('.7z') ? '7z' : ''\n }\n this.isImage = this.type.includes('image/')\n this.isAudio = this.type.includes('audio/')\n this.isVideo = this.type.includes('video/')\n }\n\n /**预览图片 */\n previewImage() {\n\n }\n\n /**模态框实例 */\n modalRef!: NgbModalRef;\n\n /**放大倍数 */\n zoom: number = 10\n /**旋转 */\n rotate: number = 0\n\n\n /**打开预览弹窗 */\n OpenPreviewImage(content: TemplateRef<any>) {\n\n this.modalRef = this.modalService.open(content, {\n fullscreen: true,\n modalDialogClass: 'dignite-preview',\n });\n this.modalRef.result.then(\n (result) => {\n },\n (reason) => {\n this.zoom = 10\n },\n );\n }\n /**放大图像 */\n zoomIn() {\n let zoom = this.zoom\n if (zoom == 20) return\n zoom++\n this.zoom = zoom\n }\n /**缩小图像 */\n zoomOut() {\n let zoom = this.zoom\n if (zoom == 3) return\n zoom--\n this.zoom = zoom\n }\n /**右旋转 */\n RotateRight() {\n if (this.rotate == 360) return this.rotate = 0\n this.rotate += 90\n }\n}\n","<div class=\"image_box\" [style]=\"{width:width,maxWidth:'100%'}\">\n <div class=\"img_box\" *ngIf=\"isImage\">\n <img [src]=\"src\" />\n <div class=\"option_box\" *ngIf=\"preview\">\n <i class=\"fa fa-eye \" (click.stop)=\"OpenPreviewImage(content)\"></i>\n </div>\n </div>\n <a [href]=\"src\" [download]=\"name\" target>\n <i class=\"fa fa-file-audio-o fs-1\" *ngIf=\"isAudio\"></i>\n <i class=\"fa fa-file-video-o fs-1\" *ngIf=\"isVideo\"></i>\n <ng-container *ngIf=\"!(isImage||isAudio||isVideo)\">\n <ng-container *ngFor=\"let item of _ImageTypeOption; let i=index\">\n <i class=\"fs-1\" [ngClass]=\"item.icon\" *ngIf=\"item.type===type\"></i>\n </ng-container>\n </ng-container>\n </a>\n</div>\n\n<ng-template #content let-modal>\n <div class=\"modal-header\">\n <div class=\"d-flex justify-content-end w-100 fs-3\">\n <i class=\"mx-2 fa fa fa-repeat\" aria-hidden=\"true\" title=\"右旋转\" role=\"button\" (click)=\"RotateRight()\"></i>\n <i class=\"mx-2 fa fa-search-minus\" aria-hidden=\"true\" title=\"缩小\" role=\"button\" (click)=\"zoomOut()\"></i>\n <i class=\"mx-2 fa fa-search-plus\" aria-hidden=\"true\" title=\"放大\" role=\"button\" (click)=\"zoomIn()\"></i>\n <i class=\"mx-2 fa fa-times\" aria-hidden=\"true\" role=\"button\" (click)=\"modal.dismiss('Cross click')\"></i>\n </div>\n </div> \n <div class=\"modal-body d-flex justify-content-center align-items-center \">\n <img width=\"400\" class=\"modal-body-preview\" [src]=\"src\" [style.transform]=\"'scale('+zoom/10+') rotate('+rotate+'deg)'\" >\n </div>\n</ng-template>","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n selector: 'fe-file-edit',\n templateUrl: './file-edit.component.html',\n styleUrls: ['./file-edit.component.scss']\n})\nexport class FileEditComponent {\n constructor(\n public _FileApiService: FileApiService,\n ) { }\n\n /**是否多选 */\n _multiple: boolean = true\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n if (v) { }\n }\n /**文件数据--已上传的数据 */\n _fileData: any[] = []\n @Input()\n public set fileData(v: any[]) {\n this._fileData = v;\n if (v.length > 0) {\n this.getFileChange({ target: { files: v } })\n }\n }\n /** 跟随表单提交--已提交的数据,或选择的数据源--回调*/\n @Output() fileDataChange = new EventEmitter()\n\n /**文件大小限制 \n * @param 1mb\n */\n sizeLimit: number = 1048576\n @Input()\n public set limit(v: number) {\n this.sizeLimit = v;\n }\n\n /**文件表格数据 */\n filesTableData: any[] = []\n /** 待删除已上传的文件们*/\n deleteTheUploadedFiles: any[] = []\n\n /**获取文件选择框的元素 */\n @ViewChild('fileEdit', { static: true }) fileEdit: ElementRef;\n\n\n /**获取文件信息改变 */\n async getFileChange(event) {\n let files = new Array(...event.target.files)\n /**需要等待setfileSizeUnits执行完后在执行其他方法--需要完善 */\n await this.waitFileToAddTable(files)\n this.fileHandling()\n }\n\n /**等待将文件数据加入到文件表格数据中 */\n waitFileToAddTable(files) {\n return new Promise(async (resolve, rejects) => {\n this.filesTableData.push(...await this.setfileSizeUnits(files))\n resolve(true)\n })\n }\n\n /**删除文件表格的项 */\n deleteFileTableItem(index, item) {\n this.filesTableData.splice(index, 1)\n if (item.id) {\n this.deleteTheUploadedFiles.push(item)\n }\n this.fileHandling()\n }\n\n /**文件处理-调用回调函数 */\n fileHandling() {\n let theFilesToBeUploaded = this.filesTableData.filter(el => !el.id)\n //判断图片大小是否超过限制-用于判断表单是否允许提交\n let isSubmit = !this.filesTableData.some(el => el.size > this.sizeLimit);\n this.fileDataChange.emit({ theFilesToBeUploaded, deleteTheUploadedFiles: this.deleteTheUploadedFiles, isSubmit })\n }\n\n /**设置值文件大小单位/ */\n async setfileSizeUnits(files: File[] | any[]): Promise<any> {\n return new Promise((resolve, rejects) => {\n let formattedFiles = []\n files.forEach(async (file) => {\n file.fileSize = this._FileApiService.formatFileSize(file.size)\n formattedFiles.push(file)\n //设置选择图片的本地url\n if (!file.src) file.src = await this._FileApiService.getImageLacolBase64Url(file);\n });\n resolve(files)\n })\n }\n\n}\n","<div class=\"input-group mb-3\">\n <input type=\"file\" class=\"form-control\" #fileEdit [multiple]=\"_multiple\" (change)=\"getFileChange($event)\">\n</div>\n\n<table class=\"table\" *ngIf=\"filesTableData.length>0\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of filesTableData;let i =index\">\n <tr>\n <td>\n <fe-file-preview [width]=\"'80px'\" [src]=\"item.src\" [name]=\"item.name\" [type]=\"item.type\" [preview]=\"true\"></fe-file-preview>\n </td>\n <th scope=\"row\">\n <div>{{item.name}}</div>\n <div class=\"form-text text-danger\" *ngIf=\"item.size > sizeLimit\">\n {{'FileExplorer::ExceedsMaximumSize' |\n abpLocalization:_FileApiService.formatFileSize(sizeLimit)}}</div>\n </th>\n <td>{{item.fileSize}}</td>\n <td>\n <button class=\"btn btn-sm p-0 btn-light \" (click.stop)=\"deleteFileTableItem(i,item)\">\n <i class=\"fas fa-trash p-2\"></i>\n </button>\n </td>\n </tr>\n </ng-container>\n </tbody>\n</table>","import type { CreateFileInput, FileContainerConfigurationDto, FileDescriptorDto, GetFilesInput, ImageResizeInput, UpdateFileInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\nimport type { FileResult } from '../../../microsoft/asp-net-core/mvc/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\r\n body: input.file,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n download = (containerName: string, blobName: string, fileName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileResult>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/download/${containerName}/${blobName}`,\r\n params: { fileName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getFileContainerConfiguration = (containerName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileContainerConfigurationDto>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files/configuration',\r\n params: { containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetFilesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<FileDescriptorDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, directoryId: input.directoryId, creatorId: input.creatorId, filter: input.filter, entityId: input.entityId, sorting: input.sorting, skipCount: input.skipCount, maxResultCount: input.maxResultCount },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getStream = (containerName: string, blobName: string, imageResize?: ImageResizeInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, Blob>({\r\n method: 'GET',\r\n responseType: 'blob',\r\n url: `/api/file-explorer/files/${containerName}/${blobName}`,\r\n params: { width: imageResize.width, height: imageResize.height },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/files/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","import type { CreateDirectoryInput, DirectoryDescriptorDto, DirectoryDescriptorInfoDto, GetDirectoriesInput, MoveDirectoryInput, UpdateDirectoryInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/directories',\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetDirectoriesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<DirectoryDescriptorInfoDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/directories',\r\n params: { containerName: input.containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n move = (id: string, input: MoveDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}/move`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","/* eslint-disable @angular-eslint/component-selector */\nimport { Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { NzFormatEmitEvent } from 'ng-zorro-antd/tree';\nimport * as DescriptorService from '../../proxy/dignite/file-explorer/directories';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { NzFormatBeforeDropEvent } from 'ng-zorro-antd/tree';\nimport { of } from 'rxjs';\nimport { FileApiService } from '../../services/file-api.service';\nimport { LocalizationService } from '@abp/ng.core';\nvar that;\n@Component({\n selector: 'fe-file-modal-tree',\n templateUrl: './file-modal-tree.component.html',\n styleUrls: ['./file-modal-tree.component.scss']\n})\nexport class FileModalTreeComponent {\n constructor(\n private _DescriptorService: DescriptorService.FileDescriptorService,\n private fb: FormBuilder,\n private toaster: ToasterService,\n public _FileApiService: FileApiService,\n public _LocalizationService: LocalizationService,\n ) {\n that = this\n }\n\n /**文件分组列表 */\n fileGroupList: any[] = [];\n\n /**选择的tree节点 */\n _theSelectedTreeNode: any = '';\n @Input()\n public set theSelectedTreeNode(v: any) {\n this._theSelectedTreeNode = v;\n if (v.length > 0) {\n this.loadData()\n }\n }\n\n /**正在编辑的节点 */\n theNodeBeingEdited: any = '';\n\n /**已展开的节点 */\n anExpandedNode: any[] = [];\n\n /**图片容器 */\n _fileContainerName: string;\n\n /**tree节点选择回调 */\n @Output() nodeClick = new EventEmitter();\n\n\n @Input()\n public set fileContainerName(v: string) {\n if (v) {\n this._fileContainerName = v;\n this.loadData()\n }\n }\n\n handleClick = (event) => event.stopPropagation();\n\n loadData() {\n if (this._fileContainerName) {\n this.getFileGroupList()\n }\n }\n\n\n /**获取文件分组 */\n getFileGroupList() {\n this._DescriptorService.getList({\n containerName: this._fileContainerName,\n }).subscribe(async (res) => {\n this.fileGroupList = await this.setTheValueOfTheNodeRecursively(res.items)\n })\n }\n \n /**递归设置节点的值 */\n setTheValueOfTheNodeRecursively(array: any[]): any {\n return new Promise((reslove, rejects) => {\n array.forEach((el) => {\n el.title = el.name\n el.key = el.id\n el.expanded = this.anExpandedNode.includes(el.key)\n if (el.children.length > 0) {\n this.setTheValueOfTheNodeRecursively(el.children)\n }\n })\n reslove(array)\n })\n }\n\n /**tree-拖拽 */\n nzEvent(event: NzFormatEmitEvent): void {\n }\n\n /**tree-拖拽 -验证*/\n beforeDrop(arg: NzFormatBeforeDropEvent) {\n if (arg.pos === 0 || arg.pos === 1) {\n that._DescriptorService.move(arg.dragNode.key, {\n \"parentId\": arg.pos === 1 ? (arg.node.parentNode?.key||'') : arg.node.key,\n \"order\": arg.pos === 1 ? arg.node.origin.order + 1 : arg.node.origin.children.length + 1\n }).subscribe(res => {\n that.getFileGroupList()\n })\n return of(true)\n } else {\n return of(false);\n }\n }\n\n /**tree--选择节点 */\n activeNode(event) {\n this._theSelectedTreeNode = event.node\n this.nodeClick.emit(event.node)\n }\n\n /**判断节点是否选中 */\n isNodeSelected = (el) => el.key === this._theSelectedTreeNode?.key\n\n /**点击展开树节点图标触发 */\n nzExpandChange(event) {\n let anExpandedNode = this.anExpandedNode\n if (anExpandedNode.includes(event.node.key)) {\n anExpandedNode = anExpandedNode.filter(key => key !== event.node.key)\n } else {\n anExpandedNode.push(event.node.key)\n }\n this.anExpandedNode = anExpandedNode\n }\n\n\n /**增加分组 */\n addDescriptorBtn(items: any = '', edit = false) {\n this.ModalDescriptorOpen = true\n this.ModalDescriptorForm = this.fb.group({\n containerName: [this._fileContainerName || '', Validators.required],\n name: ['', Validators.required],\n parentId: [items?.key || '', Validators.required],\n })\n /**编辑 */\n if (edit) {\n this.theNodeBeingEdited = items.origin\n this.ModalDescriptorForm.patchValue({\n name: items.origin.name\n })\n }\n }\n\n /**删除分组 */\n deleteDescriptorBtn(node) {\n this._DescriptorService.delete(node.key).subscribe(res => {\n this.ModalDescriptorOpen = false\n if (this.theNodeBeingEdited.key == node.key) this.theNodeBeingEdited = ''\n this.getFileGroupList()\n })\n }\n\n \n\n /**分组 */\n /**模态框-状态-是否打开 */\n ModalDescriptorOpen: boolean = false\n\n /**模态框-descriptor-繁忙状态-用于确定模态的繁忙状态是否为真 */\n ModalDescriptorBusy: boolean = false\n\n /**模态框-descriptor-表单 */\n ModalDescriptorForm: FormGroup | undefined;\n \n /**模态框-descriptor-表单--控件模板-动态赋值表单控件 */\n @ViewChild('ModalFormDescriptorSubmit', { static: false }) ModalFormDescriptorSubmit: ElementRef;\n\n /**模态框-descriptor-状态改变回调 */\n ModalDescriptorVisibleChange(event) {\n if (!event) {\n this.ModalDescriptorForm = undefined\n this.theNodeBeingEdited = ''\n return\n }\n }\n\n /**f分组模态框保存 */\n createOrEditSave() {\n let input = this.ModalDescriptorForm.value\n if (this.theNodeBeingEdited) {\n this._DescriptorService.update(this.theNodeBeingEdited.key, input).subscribe(res => {\n this.ModalDescriptorOpen = false\n this.getFileGroupList()\n })\n return\n }\n this._DescriptorService.create(input).subscribe(res => {\n this.ModalDescriptorOpen = false\n this.getFileGroupList()\n })\n }\n\n\n\n\n}\n","<div class=\"card-header p-0 mb-1 d-flex justify-content-between align-items-center\">\n <h6 class=\"h6 mb-0\">{{'FileExplorer::MyDirectories' | abpLocalization}}</h6>\n <button type=\"button\" class=\"btn btn-light btn-sm ms-2\" (click.stop)=\"addDescriptorBtn()\"><i\n class=\"fas fa-plus-circle\" aria-hidden=\"true\"></i></button>\n</div>\n<nz-tree [nzData]=\"fileGroupList\" class=\"ng-zorro-antd-tree\" nzDraggable nzBlockNode nzShowIcon\n [nzExpandedIcon]=\"multiExpandedIconTpl\" (nzOnDrop)=\"nzEvent($event)\" [nzBeforeDrop]=\"beforeDrop\"\n (nzClick)=\"activeNode($event)\" (nzExpandChange)=\"nzExpandChange($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\n <div class=\"custom-node d-inline-block ng-star-inserted dropdown\" [title]=\"node.title\">\n <div #dropdown=\"ngbDropdown\" class=\"d-inline-block\" ngbDropdown placement=\"bottom\" container=\"body\">\n <div class=\"btn-group\" [class.selected]=\"isNodeSelected(node)\">\n <button class=\"btn btn-sm p-0 px-1\">{{ node.title }}</button>\n <button class=\"btn btn-sm p-0\" (click)=\"handleClick($event)\" ngbDropdownToggle\n [class.dropdown-toggle]=\"false\" aria-hidden=\"true\">\n <i class=\"fas fa-caret-down text-muted p-1\"></i>\n </button>\n </div>\n <div ngbDropdownMenu>\n <button ngbDropdownItem\n (click.stop)=\"addDescriptorBtn(node)\">{{'FileExplorer::NewDirectory' | abpLocalization}}</button>\n <button ngbDropdownItem\n (click.stop)=\"addDescriptorBtn(node,true)\">{{'AbpUi::Edit' | abpLocalization}}</button>\n <button ngbDropdownItem\n (click.stop)=\"deleteDescriptorBtn(node)\">{{'AbpUi::Delete' | abpLocalization}}</button>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #multiExpandedIconTpl let-node let-origin=\"origin\">\n <ng-container *ngIf=\"node.children.length > 0\">\n <i [class]=\"node.isExpanded ? 'fas fa-caret-down' : 'fas fa-caret-right'\"></i>\n </ng-container>\n </ng-template>\n</nz-tree>\n\n\n<abp-modal [(visible)]=\"ModalDescriptorOpen\" [busy]=\"ModalDescriptorBusy\"\n (visibleChange)=\"ModalDescriptorVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{theNodeBeingEdited?('AbpUi::Edit' | abpLocalization):('FileExplorer::NewDirectory' | abpLocalization)}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <ng-container *ngIf=\"ModalDescriptorForm; else loaderRef\">\n <form class=\"sites-modal-form\" #myForm=\"ngForm\" [formGroup]=\"ModalDescriptorForm\"\n (keydown.enter)=\"$event.preventDefault()\" (submit)=\"createOrEditSave()\">\n <button type=\"submit\" #ModalFormDescriptorSubmit style=\"display: none\"></button>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'FileExplorer::DirectoryName' | abpLocalization}}</label>\n <input type=\"email\" class=\"form-control\" formControlName=\"name\">\n </div>\n </form>\n </ng-container>\n </ng-template>\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\"\n (click)=\"ModalFormDescriptorSubmit.nativeElement.click()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>","import { Component, EventEmitter, Input, Output, SimpleChanges, inject } from '@angular/core';\nimport * as FileService from '../../proxy/dignite/file-explorer/files';\nimport { Confirmation, ConfirmationService, ToasterService } from '@abp/ng.theme.shared';\nimport { PagedResultDto, ABP, ListService, Rest, RestService, LocalizationService, LIST_QUERY_DEBOUNCE_TIME } from '@abp/ng.core';\nimport { FileDescriptorDto, FileDescriptorService, GetFilesInput } from '../../proxy/dignite/file-explorer/files';\nimport { FileApiService } from '../../services/file-api.service';\nimport { SelectionType } from '@swimlane/ngx-datatable';\nvar that\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-modal',\n templateUrl: './file-modal.component.html',\n styleUrls: ['./file-modal.component.scss'],\n providers: [\n // [Required]\n ListService,\n // [Optional]\n // Provide this token if you want a different debounce time.\n // Default is 300. Cannot be 0. Any value below 100 is not recommended.\n { provide: LIST_QUERY_DEBOUNCE_TIME, useValue: 500 },\n ]\n})\nexport class FileModalComponent {\n\n constructor(\n private _FileService: FileService.FileDescriptorService,\n private toaster: ToasterService,\n public readonly list: ListService,\n public _FileApiService: FileApiService,\n private restService: RestService,\n private confirmation: ConfirmationService,\n private _LocalizationService: LocalizationService,\n ) {\n that = this\n \n }\n\n private _FileDescriptorService=inject(FileDescriptorService)\n /**获取目录配置 */\n getFilesConfiguration(){\n this._FileDescriptorService.getFileContainerConfiguration(this._fileContainerName).subscribe(res=>{\n this.createDirectoryPermissionName=res?.createDirectoryPermissionName\n })\n }\n /**目录的权限名称 */\n createDirectoryPermissionName:string=null\n\n /**图片容器 */\n _fileContainerName: string\n @Input()\n public set fileContainerName(v: string) {\n if (v) {\n this._fileContainerName = v;\n this.loadData()\n }\n }\n\n /**是否多选 */\n _multiple: boolean = false\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n if (v) { }\n }\n\n /**文件大小限制 \n* @param 1mb\n*/\n sizeLimit: number = 1048576\n @Input()\n public set limit(v: number) {\n this.sizeLimit = v;\n }\n /**父组件传递的模态框状态 */\n @Input()\n public set visible(v: boolean) {\n this.ModalOpen = v;\n if (v) {\n this.loadData()\n }\n }\n\n /**模态框状态回调 */\n @Output() visibleChange = new EventEmitter()\n\n\n\n /**模态框-状态-是否打开 */\n ModalOpen: boolean = false\n\n /**模态框-繁忙状态-用于确定模态的繁忙状态是否为真 */\n ModalBusy: boolean = false\n\n\n\n /**模态框-状态改变回调 */\n ModalVisibleChange(event) {\n if (!event) {\n this.visibleChange.emit(event)\n return\n }\n }\n\n /**模态框保存 */\n modalSave() {\n let selectedTablearr = this._FileApiService.deepClone(this.selectedTable)\n this.selectFilefn.emit(selectedTablearr)\n\n this.ModalVisibleChange(false)\n }\n /**dignite-file-modal-tree */\n /**选择的tree节点 */\n _theSelectedTreeNode: any = ''\n\n /**初始化数据 */\n loadData() {\n if (this.ModalOpen && this._fileContainerName) {\n this.hookToQuery()\n this.getFilesConfiguration()\n }\n }\n\n /**tree-节点选择 */\n _nodeClick(event) {\n this._theSelectedTreeNode = event\n this.list.get()\n }\n\n /**图片上传-要上传图片的状态文件列表 */\n uploadPictureStatusList: any[] = []\n\n /**图片上传-获取文件信息改变 */\n async getFileChange(event) {\n let files = new Array(...event.target.files)\n this.uploadPictureStatusList = files\n for (const file of files) {\n if (file.size > this.sizeLimit) {\n this.setuploadPictureStatus(file, 2)\n continue;\n }\n await this.uploadingFile(file).then(() => {\n this.setuploadPictureStatus(file, 1)\n this.list.get()\n }).catch(() => {\n this.setuploadPictureStatus(file, 2)\n }); // 等待每个文件上传完成 \n }\n this.list.get()\n let isSubmit = !this.uploadPictureStatusList.some(el => el.status == 2);\n if (isSubmit) {\n // this.toaster.success(\"上传完成\");\n setTimeout(() => {\n this.uploadPictureStatusList = []\n }, 6000)\n }\n }\n\n /**图片上传-设置uploadPictureStatusList的状态 */\n setuploadPictureStatus(file, type) {\n this.uploadPictureStatusList.map(el => {\n if (el == file) el.status = type\n })\n }\n\n\n /**图片上传-递归按顺序上传 */\n uploadingFile(file) {\n return new Promise((resolve, rejects) => {\n let formData = new FormData();\n formData.append('file', file, file.name);\n this.createFile({\n file: formData,\n containerName: this._fileContainerName,\n directoryId: this._theSelectedTreeNode?.key || '',\n entityId: ''\n }).subscribe(res => {\n resolve(true)\n }, (err) => {\n rejects(false)\n })\n })\n }\n\n\n /**文件表格-数据*/\n data: PagedResultDto<FileDescriptorDto> = {\n items: [],\n totalCount: 0,\n };\n\n /**文件表格-条件*/\n filters = {} as GetFilesInput;\n\n /**文件表格-表格自带选择类型 */\n SelectionType = SelectionType;\n\n /**文件表格-选择的表格数据项 */\n selectedTable = []\n\n /**已选定的文件 */\n @Input() selectPickerFile: any[]\n\n ngOnChanges(changes: SimpleChanges): void {\n //Called before any other lifecycle hook. Use it to inject dependencies, but avoid any serious work here.\n //Add '${implements OnChanges}' to the class.\n this.selectedTable = this._FileApiService.deepClone(this.selectPickerFile)\n }\n /**当前选择的table项 id */\n nowSelectId: any = ''\n\n /**选择文件回调 */\n @Output() selectFilefn = new EventEmitter<any[]>()\n\n /**文件表格-获取表格数据 */\n hookToQuery() {\n const getData = (query: ABP.PageQueryParams) => this._FileService.getList({\n ...query,\n ...this.filters,\n containerName: this._fileContainerName,\n directoryId: this._theSelectedTreeNode.key\n });\n const setData = (list: PagedResultDto<FileDescriptorDto>) => (this.data = list);\n this.list.hookToQuery(getData).subscribe(setData);\n }\n\n /**文件表格-查看所有分组的文件数据 */\n lookAllFile() {\n this._theSelectedTreeNode = ''\n this.list.get()\n }\n\n /**选择表格项 */\n onSelectTableItem({ selected }) {\n this.selectedTable = this._FileApiService.deepClone(selected)\n let selectedTablearr = this.removeDuplicatesById(this.selectedTable)\n if (selected.length > selectedTablearr.length) {\n selectedTablearr = selectedTablearr.filter(el => el.id !== this.nowSelectId)\n }\n this.selectedTable = selectedTablearr\n }\n\n /**删除数组中重复的项 */\n removeDuplicatesById(array) {\n const seenIds = {};\n return array.filter(item => {\n if (!seenIds[item.id]) {\n seenIds[item.id] = true;\n return true;\n }\n return false;\n });\n }\n\n /**一个布尔or函数,可用于检查是否要根据条件选择特定行。 */\n selectCheck = (row, column, value) => {\n this.nowSelectId = row.id\n return true;\n }\n\n /**判断row是否选中 */\n selectedcheckbox = (id) => {\n return this.selectedTable.some(el => el.id == id)\n }\n\n\n\n /**删除图片 */\n deleteFile(file) {\n\n this.confirmation\n .warn('', { key: '', defaultValue: this._LocalizationService.instant(`AbpUi::ItemWillBeDeletedMessage`) })\n .subscribe((status: Confirmation.Status) => {\n if (status == 'confirm') {\n this._FileService.delete(file.id).subscribe(res => {\n this.toaster.success(this._LocalizationService.instant(`AbpUi::DeletedSuccessfully`));\n this.list.get()\n })\n }\n });\n }\n\n /**关闭文件状态弹窗 */\n closeFileStatusModal() {\n this.uploadPictureStatusList = []\n }\n\n /**创建图片的接口,代理中的file类型不匹配,切换为any类型 */\n createFile = (input: any, config?: Partial<Rest.Config>) =>\n this.restService.request<any, FileDescriptorDto>({\n method: 'POST',\n url: '/api/file-explorer/files',\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\n body: input.file,\n },\n { apiName: 'FileExplorer', ...config });\n}\n","<abp-modal [(visible)]=\"ModalOpen\" (visibleChange)=\"ModalVisibleChange($event)\"\n [options]=\"{ size: 'xl', scrollable: false }\">\n <ng-template #abpHeader>\n <h3>{{'FileExplorer::FileExplorer' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <div class=\"row file-explorer-modal-body file-modal\">\n <div class=\"col-3\" *ngIf=\"createDirectoryPermissionName\" style=\"overflow: auto; height: calc(100vh - 240px)\">\n <fe-file-modal-tree [theSelectedTreeNode]=\"_theSelectedTreeNode\" (nodeClick)=\"_nodeClick($event)\"\n [fileContainerName]=\"_fileContainerName\"></fe-file-modal-tree>\n </div>\n <div [class]=\"createDirectoryPermissionName?'col-9':'col-12'\" style=\"height: calc(100vh - 240px)\">\n <div class=\"mb-3 d-flex justify-content-between align-items-center\">\n <div class=\"btn-link\" role=button style=\"flex: 2\" (click)=\"lookAllFile()\">{{'FileExplorer::AllFiles' | abpLocalization}}</div>\n <div class=\"input-group form-file\" style=\"flex: 2\">\n <input type=\"file\" class=\"form-control\" #fileEdit [multiple]=\"_multiple\" \n (change)=\"getFileChange($event)\" />\n </div>\n </div>\n <div>\n <ngx-datatable class=\"material container-height\" [rows]=\"data.items\" [list]=\"list\" columnMode=\"flex\"\n [columns]=\"columns\" [headerHeight]=\"50\" [footerHeight]=\"50\" rowHeight=\"auto\" [scrollbarV]=\"true\"\n [virtualization]=\"false\" [externalPaging]=\"true\" [count]=\"data.totalCount\" [selected]=\"selectedTable\"\n [selectCheck]=\"selectCheck\" [selectionType]=\"_multiple?SelectionType.multiClick:SelectionType.single\" (select)=\"onSelectTableItem($event)\">\n <ngx-datatable-column [width]=\"50\" prop=\"id\" [sortable]=\"false\" [canAutoResize]=\"false\" [draggable]=\"false\"\n [resizeable]=\"false\">\n <ng-template ngx-datatable-header-template let-value=\"value\" let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\">\n <input type=\"checkbox\" class=\"form-check-input\" [checked]=\"allRowsSelected\"\n (change)=\"selectFn(!allRowsSelected)\" />\n </ng-template>\n <ng-template ngx-datatable-cell-template let-row=\"row\" let-value=\"value\" let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\">\n <input type=\"checkbox\" class=\"form-check-input\" [checked]=\"selectedcheckbox(value)\"\n (change)=\"onCheckboxChangeFn($event)\" />\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [flexGrow]=\"2\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n <fe-file-preview [width]=\"'80px'\" [src]=\"row.url\" [name]=\"row.name\" [type]=\"row.mimeType\" [preview]=\"true\"></fe-file-preview>\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::FileName' | abpLocalization\" prop=\"name\" [flexGrow]=\"4\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::FileSize' | abpLocalization\" prop=\"size\" [flexGrow]=\"1.5\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ _FileApiService.formatFileSize(value) }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::Directory' | abpLocalization\" prop=\"cellName\" [flexGrow]=\"1\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::CreationTime' | abpLocalization\" prop=\"creationTime\" [flexGrow]=\"2\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value | date : 'YYYY/MM/dd HH:mm:s' }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [flexGrow]=\"1\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n <button class=\"btn btn-sm btn-light p-0\" (click.stop)=\"deleteFile(row)\">\n <i class=\"fas fa-trash text-primary p-2\"></i>\n </button>\n </ng-template>\n </ngx-datatable-column>\n </ngx-datatable>\n </div>\n <div *ngIf=\"uploadPictureStatusList.length > 0\"\n class=\"position-fixed bottom-0 end-0 shadow-lg file-status-modal m-5\"\n style=\"border-radius: 10px\">\n <div class=\"card p-1\">\n <div class=\"card-header d-flex align-items-center justify-content-between p-0 py-1 border-bottom\">\n <div>{{'FileExplorer::UploadFiles' | abpLocalization}}</div>\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\" (click.stop)=\"closeFileStatusModal()\"></button>\n </div>\n <div class=\"card-body\">\n <table class=\"table\">\n <thead>\n <tr>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of uploadPictureStatusList; let i = index\">\n <tr>\n <th scope=\"row\">\n <div>{{ item.name }}</div>\n <div class=\"form-text text-danger\" *ngIf=\"item.size > sizeLimit\">\n {{'FileExplorer::ExceedsMaximumSize' | abpLocalization:_FileApiService.formatFileSize(sizeLimit)}}\n </div>\n </th>\n <td>{{ item.fileSize }}</td>\n <td>\n <i *ngIf=\"item.status === 1\" class=\"fas fa-check text-primary\"></i>\n <i *ngIf=\"item.status === 2\" class=\"fas fa-times-circle text-danger\"></i>\n </td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" (click)=\"modalSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>","/* eslint-disable @angular-eslint/component-selector */\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n selector: 'fe-file-picker',\n templateUrl: './file-picker.component.html',\n styleUrls: ['./file-picker.component.scss']\n})\nexport class FilePickerComponent implements OnChanges {\n\n\n\n constructor(\n private _FileApiService: FileApiService,\n ) {\n\n }\n\n\n /**是否多选 */\n _multiple: boolean = false\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n }\n\n /**图片容器 */\n _fileContainerName: string = 'Images'\n @Input()\n public set fileContainerName(v: string) {\n this._fileContainerName = v;\n }\n\n /**已选定的文件 */\n @Input() selectFormFile: any[]\n\n ngOnChanges(changes: SimpleChanges): void {\n let selectFormFilengOnChanges = changes.selectFormFile['currentValue']\n if (selectFormFilengOnChanges.length > 0) {\n this._fileShowTable = selectFormFilengOnChanges\n }\n }\n\n @Output() selectedFileChange = new EventEmitter()\n\n _fileShowTable: any[] = []\n\n /**表格选择的文件回调 */\n _selectFilefn(event: any[]) {\n let _fileShowTable = this._FileApiService.deepClone(event)\n this._fileShowTable = _fileShowTable\n this.selectFormFile = _fileShowTable\n this.selectedFileChange.emit(_fileShowTable)\n }\n\n /**模态框-状态-是否打开 */\n ModalOpen: boolean = false\n\n /**删除文件表格项 */\n deleteFileTableItem(i, file) {\n this._fileShowTable.splice(i, 1)\n this.selectFormFile = this._fileShowTable\n this.selectedFileChange.emit([])\n this.selectedFileChange.emit(this.selectFormFile)\n }\n\n}\n","<button class=\"btn btn-sm btn-primary ms-2 float-end\" type=\"button\" (click.stop)=\"ModalOpen = true\">{{'FileExplorer::SelectFile' | abpLocalization}}</button>\n<fe-file-modal [(visible)]=\"ModalOpen\" [selectPickerFile]=\"selectFormFile\" [multiple]=\"_multiple\" (selectFilefn)=\"_selectFilefn($event)\" [fileContainerName]=\"_fileContainerName\"></fe-file-modal>\n<table class=\"table\" *ngIf=\"_fileShowTable.length>0\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of _fileShowTable;let i =index\">\n <tr>\n <td>\n <fe-file-preview [width]=\"'80px'\" [src]=\"item.url||item.Url\" [name]=\"item.name||item.Name\" [type]=\"item.mimeType||item.MimeType\" [preview]=\"true\"></fe-file-preview>\n </td>\n <th scope=\"row\">\n <div>{{item.name||item.Name}}</div>\n </th>\n <td >{{_FileApiService.formatFileSize(item.Size||item.size)}}</td>\n <td>\n <button class=\"btn btn-sm p-0 btn-light \" (click.stop)=\"deleteFileTableItem(i,item)\">\n <i class=\"fas fa-trash p-2\"></i>\n </button>\n </td>\n </tr>\n </ng-container>\n </tbody>\n</table>\n\n\n","import { Component, inject } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-dome',\n templateUrl: './file-dome.component.html',\n styleUrls: ['./file-dome.component.scss']\n})\nexport class FileDomeComponent {\n\n /**跟随表单提交--已提交的数据,或选择的数据源 */\n fileSubmittedData: any[] = []\n\n /**跟随表单提交--待提交的数据\n * \n * @param 待上传的文件们\n * @param 待删除已上传的文件们\n */\n fileDataToBeSubmitted: any\n\nprivate FileApiService=inject(FileApiService)\n /**跟随表单提交--数据发生改变回调 */\n fileDataChange(event) {\n this.fileDataToBeSubmitted = event\n }\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup:any[]=[]\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event\n }\n}\n","<div class=\"row\">\r\n <div class=\"col\">\r\n <div class=\"card\">\r\n <div class=\"card-header py-2 border-bottom\">Send file stream with form</div>\r\n <div class=\"card-body\">\r\n <fe-file-edit [(fileData)]=\"fileSubmittedData\" (fileDataChange)=\"fileDataChange($event)\"></fe-file-edit>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col\">\r\n <div class=\"card\">\r\n <div class=\"card-header py-2 border-bottom\">Send file stream with form</div>\r\n <div class=\"card-body\">\r\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" fileContainerName=\"SampleContainer\" (selectedFileChange)=\"_selectedFileChange($event)\" ></fe-file-picker>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { FileDomeComponent } from './components/dome/file-dome.component';\n\nconst routes: Routes = [\n {\n path: 'file-dome',\n component: FileDomeComponent\n},\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class FileExplorerRoutingModule { \n \n}\n","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class FileExplorerConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n 'FileExplorer.FileContainerName': any = ['', [Validators.required]];\r\n /**多选 */\r\n 'FileExplorer.UploadFileMultiple': any = [false, []];\r\n \r\n\r\n constructor(data?: FileExplorerConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { FileExplorerConfig } from './file-explorer-config';\n\n@Component({\n selector: 'fe-file-explorer-config',\n templateUrl: './file-explorer-config.component.html',\n styleUrls: ['./file-explorer-config.component.scss']\n})\nexport class FileExplorerConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit()\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new FileExplorerConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsFileExplorer::FileContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FileExplorer.FileContainerName\">\n </div>\n <div class=\"mb-3\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"FileExplorer.UploadFileMultiple\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpDynamicFormsFileExplorer::UploadFileMultiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n\n@Component({\n selector: 'fe-file-explorer-control',\n templateUrl: './file-explorer-control.component.html',\n styleUrls: ['./file-explorer-control.component.scss']\n})\nexport class FileExplorerControlComponent {\n\n constructor(\n private fb: FormBuilder,\n ) {\n\n }\n\n /**表单实体 */\n _entity: FormGroup | undefined\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if(v) this.dataLoaded();\n }\n\n /**字段配置列表 */\n _fields: any = ''\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if(v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n if(v&&v.length>0) this.dataLoaded();\n }\n\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup\n }\n\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity&&this._parentFiledName) {\n await this.AfterInit()\n this.submitclick.nativeElement.click();\n }\n }\n /**字段配置 */\n formConfiguration: any = ''\n /**文件容器名称 */\n FileContainerName: any = ''\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = []\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required)\n }\n this.formConfiguration = this._fields.field.formConfiguration\n this.FileContainerName = this.formConfiguration['FileExplorer.FileContainerName']\n if(this._selected&&this._selected.length>0){\n this.selectedFileGroup=this._selected\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray)\n this.extraProperties.setControl(this._fields.field.name, newControl)\n resolve(true)\n })\n }\n\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup:any[]=[]\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event\n let fieldName=this._fields.field.name\n let obj={}\n obj[fieldName]=event\n this.extraProperties.patchValue(obj)\n }\n\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" [multiple]=\"formConfiguration['FileExplorer.UploadFileMultiple']\"\n (selectedFileChange)=\"_selectedFileChange($event)\" [fileContainerName]=\"FileContainerName\"></fe-file-picker>\n <small class=\"form-text text-muted d-block\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","// import { TableConfigComponent, TableControlComponent, MatrixConfigComponent, MatrixControlComponent } from \"@dignite-ng/expand.cms\";\r\nimport { Type } from \"@angular/core\";\r\nimport { FileExplorerConfigComponent, FileExplorerControlComponent } from \"./file-explorer\";\r\n\r\nexport interface FieldControlGroupInterfaces {\r\n displayName: string\r\n name: string\r\n // type: TextEditMode,\r\n /**\r\n * 动态表单控件\r\n */\r\n fieldComponent?: Type<any>;\r\n\r\n /**\r\n * 表单控件配置组件\r\n */\r\n fieldConfigComponent?: Type<any>;\r\n\r\n /**\r\n * 条目列表中显示的组件\r\n */\r\n fieldViewComponent?: Type<any>;\r\n}\r\n\r\n\r\n\r\n/**\r\n * 表单控件分组-包含配置,控件,显示的数组\r\n */\r\nexport const fielFieldControlGroup: FieldControlGroupInterfaces[] = [\r\n \r\n {\r\n displayName: '文件管理',\r\n name: 'FileExplorer',\r\n fieldConfigComponent: FileExplorerConfigComponent,\r\n fieldComponent: FileExplorerControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }\r\n];\r\nexport function getExcludeAssignControl(typeName) {\r\n // return FieldControlGroup.filter(el => el.name !== typeName)\r\n return fielFieldControlGroup\r\n}\r\n\r\nexport function AddFieldControlGroup(array=[]) {\r\n fielFieldControlGroup.push(...array)\r\n}","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { FileExplorerRoutingModule } from './file-explorer-routing.module';\nimport { FileEditComponent, FilePickerComponent, FileModalComponent, FileModalTreeComponent, FileDomeComponent } from './components';\nimport { FilePreviewComponent } from './previews/file-preview.component';\nimport { FileExplorerConfigComponent } from './components/dynamic-form/file-explorer/file-explorer-config.component';\nimport { FileExplorerControlComponent } from './components/dynamic-form/file-explorer/file-explorer-control.component';\n@NgModule({\n declarations: [\n FileEditComponent,\n FilePickerComponent,\n FileModalComponent,\n FileModalTreeComponent,\n FileDomeComponent,\n FilePreviewComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n ],\n imports: [\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n NgbDropdownModule,\n NzTreeModule,\n NgxValidateCoreModule,\n FileExplorerRoutingModule,\n ],\n exports: [\n FileEditComponent,\n FilePickerComponent,\n FileModalComponent,\n FileModalTreeComponent,\n FileDomeComponent,\n FilePreviewComponent,\n // FileExplorerConfigComponent,\n // FileExplorerControlComponent,\n ],\n providers: [\n // // [Required]\n // ListService,\n // // [Optional]\n // // Provide this token if you want a different debounce time.\n // // Default is 300. Cannot be 0. Any value below 100 is not recommended.\n // { provide: LIST_QUERY_DEBOUNCE_TIME, useValue: 500 },\n ],\n})\nexport class FileExplorerModule {\n\n}\n","/*\n * Public API Surface of file-explorer\n */\n\n\nexport * from './lib/file-explorer.module';\nexport * from './lib/components';\nexport * from './lib/services';\nexport * from './lib/proxy';\nexport * from './lib/previews';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i1.FileApiService","i4.FilePreviewComponent","FileDescriptorService","that","i1.FileDescriptorService","i2","i3","i4.FileApiService","i5","i6","i7","i7.FileModalTreeComponent","i8.FilePreviewComponent","i4.FileModalComponent","i5.FilePreviewComponent","i1.FileEditComponent","i2.FilePickerComponent","i4.FilePickerComponent"],"mappings":"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"}
1
+ {"version":3,"file":"dignite-ng-expand.file-explorer.mjs","sources":["../../../projects/file-explorer/src/lib/services/file-api.service.ts","../../../projects/file-explorer/src/lib/previews/models.ts","../../../projects/file-explorer/src/lib/previews/file-preview.component.ts","../../../projects/file-explorer/src/lib/previews/file-preview.component.html","../../../projects/file-explorer/src/lib/components/file-edit/file-edit.component.ts","../../../projects/file-explorer/src/lib/components/file-edit/file-edit.component.html","../../../projects/file-explorer/src/lib/proxy/dignite/file-explorer/files/file-descriptor.service.ts","../../../projects/file-explorer/src/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.ts","../../../projects/file-explorer/src/lib/components/file-modal-tree/file-modal-tree.component.ts","../../../projects/file-explorer/src/lib/components/file-modal-tree/file-modal-tree.component.html","../../../projects/file-explorer/src/lib/components/file-modal/file-modal.component.ts","../../../projects/file-explorer/src/lib/components/file-modal/file-modal.component.html","../../../projects/file-explorer/src/lib/components/file-picker/file-picker.component.ts","../../../projects/file-explorer/src/lib/components/file-picker/file-picker.component.html","../../../projects/file-explorer/src/lib/components/dome/file-dome.component.ts","../../../projects/file-explorer/src/lib/components/dome/file-dome.component.html","../../../projects/file-explorer/src/lib/file-explorer-routing.module.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.component.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-config.component.html","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-control.component.ts","../../../projects/file-explorer/src/lib/components/dynamic-form/file-explorer/file-explorer-control.component.html","../../../projects/file-explorer/src/lib/components/dynamic-form/form-control-group.ts","../../../projects/file-explorer/src/lib/file-explorer.module.ts","../../../projects/file-explorer/src/public-api.ts","../../../projects/file-explorer/src/dignite-ng-expand.file-explorer.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileApiService {\n\n constructor() { }\n\n /**转换文件大小单位 输入k */\n formatFileSize(bytes: any) {\n const units = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n let size:any = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n // 保留两位小数,四舍五入\n size = size.toFixed(1)\n return `${size} ${units[unitIndex]}`;\n }\n /**获取图片的本地连接 */\n getImageLacolBase64Url(file: File) {\n return new Promise((resolve, rejects) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = (e: any) => {\n resolve(e.target.result)\n };\n reader.onerror = error => rejects(error);\n })\n }\n /**\n * 深拷贝--方法\n * $api.deepClone() */\n deepClone(obj) {\n if (typeof obj !== 'object' || obj === null) return obj;\n const result = Array.isArray(obj) ? [] : {};\n for (let key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (typeof obj[key] === 'object' && obj[key] !== null) {\n if (obj[key] instanceof Date) {\n result[key] = new Date(obj[key].getTime());\n } else if (obj[key] instanceof RegExp) {\n result[key] = new RegExp(obj[key]);\n } else if (obj[key] instanceof File) {\n result[key]=obj[key]\n } else {\n result[key] = this.deepClone(obj[key]);\n }\n } else {\n result[key] = obj[key];\n }\n }\n }\n return result;\n }\n\n}\n","\r\n\r\nexport let ImageTypeOption=[{\r\n label:'',\r\n type:'image/jpeg',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/webp',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/gif',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/png',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'image/bmp',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'audio/ogg',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'video/mp4',\r\n icon:'',\r\n},{\r\n label:'',\r\n type:'application/pdf',\r\n icon:'fa fa-file-pdf-o',\r\n},{\r\n label:'',\r\n type:'application/msword',\r\n icon:'fa fa-file-word-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n icon:'fa fa-file-word-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.ms-powerpoint',\r\n icon:'fa fa-file-powerpoint-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.presentationml.presentation',\r\n icon:'fa fa-file-powerpoint-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.ms-excel',\r\n icon:'fa fa-file-excel-o',\r\n},{\r\n label:'',\r\n type:'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\r\n icon:'fa fa-file-excel-o',\r\n},{\r\n label:'',\r\n type:'application/x-zip-compressed',\r\n icon:'fa fa-file-archive-o',\r\n},{\r\n label:'',\r\n type:'7z',\r\n icon:'fa fa-file-archive-o',\r\n},{\r\n label:'',\r\n type:'text/plain',\r\n icon:'fa fa-file-text-o',\r\n\r\n},{\r\n label:'',\r\n type:'',\r\n icon:'fa fa-file-o',\r\n}\r\n] ","import { AfterContentInit, Component, Input, TemplateRef } from '@angular/core';\nimport { ImageTypeOption } from './models';\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-preview',\n templateUrl: './file-preview.component.html',\n styleUrls: ['./file-preview.component.scss']\n})\nexport class FilePreviewComponent implements AfterContentInit{\n\n /**文件宽度 */\n @Input() width: any = '100px'\n /*文件链接 */\n @Input() src: any = ''\n /**是否支持大图预览 */\n @Input() preview: any = true;\n /**文件类型 */\n @Input() type: any = ''\n /**文件名称 */\n @Input() name: any = ''\n\n /**是否是文件 */\n isImage = true\n /**是否是视频 */\n isAudio = false\n /**是否是音频 */\n isVideo = false\n /**文件类型及图标 */\n _ImageTypeOption = ImageTypeOption\n\n\n constructor(\n private modalService: NgbModal\n ) { }\n \n ngAfterContentInit(): void {\n //Called after ngOnInit when the component's or directive's content has been initialized.\n //Add 'implements AfterContentInit' to the class.\n if (!this.type) {\n this.type = this.name.includes('.7z') ? '7z' : ''\n }\n this.isImage = this.type.includes('image/')\n this.isAudio = this.type.includes('audio/')\n this.isVideo = this.type.includes('video/')\n }\n\n /**预览图片 */\n previewImage() {\n\n }\n\n /**模态框实例 */\n modalRef!: NgbModalRef;\n\n /**放大倍数 */\n zoom: number = 10\n /**旋转 */\n rotate: number = 0\n\n\n /**打开预览弹窗 */\n OpenPreviewImage(content: TemplateRef<any>) {\n\n this.modalRef = this.modalService.open(content, {\n fullscreen: true,\n modalDialogClass: 'dignite-preview',\n });\n this.modalRef.result.then(\n (result) => {\n },\n (reason) => {\n this.zoom = 10\n },\n );\n }\n /**放大图像 */\n zoomIn() {\n let zoom = this.zoom\n if (zoom == 20) return\n zoom++\n this.zoom = zoom\n }\n /**缩小图像 */\n zoomOut() {\n let zoom = this.zoom\n if (zoom == 3) return\n zoom--\n this.zoom = zoom\n }\n /**右旋转 */\n RotateRight() {\n if (this.rotate == 360) return this.rotate = 0\n this.rotate += 90\n }\n}\n","<div class=\"image_box\" [style]=\"{width:width,maxWidth:'100%'}\">\n <div class=\"img_box\" *ngIf=\"isImage\">\n <img [src]=\"src\" />\n <div class=\"option_box\" *ngIf=\"preview\">\n <i class=\"fa fa-eye \" (click.stop)=\"OpenPreviewImage(content)\"></i>\n </div>\n </div>\n <a [href]=\"src\" [download]=\"name\" target>\n <i class=\"fa fa-file-audio-o fs-1\" *ngIf=\"isAudio\"></i>\n <i class=\"fa fa-file-video-o fs-1\" *ngIf=\"isVideo\"></i>\n <ng-container *ngIf=\"!(isImage||isAudio||isVideo)\">\n <ng-container *ngFor=\"let item of _ImageTypeOption; let i=index\">\n <i class=\"fs-1\" [ngClass]=\"item.icon\" *ngIf=\"item.type===type\"></i>\n </ng-container>\n </ng-container>\n </a>\n</div>\n\n<ng-template #content let-modal>\n <div class=\"modal-header\">\n <div class=\"d-flex justify-content-end w-100 fs-3\">\n <i class=\"mx-2 fa fa fa-repeat\" aria-hidden=\"true\" title=\"右旋转\" role=\"button\" (click)=\"RotateRight()\"></i>\n <i class=\"mx-2 fa fa-search-minus\" aria-hidden=\"true\" title=\"缩小\" role=\"button\" (click)=\"zoomOut()\"></i>\n <i class=\"mx-2 fa fa-search-plus\" aria-hidden=\"true\" title=\"放大\" role=\"button\" (click)=\"zoomIn()\"></i>\n <i class=\"mx-2 fa fa-times\" aria-hidden=\"true\" role=\"button\" (click)=\"modal.dismiss('Cross click')\"></i>\n </div>\n </div> \n <div class=\"modal-body d-flex justify-content-center align-items-center \">\n <img width=\"400\" class=\"modal-body-preview\" [src]=\"src\" [style.transform]=\"'scale('+zoom/10+') rotate('+rotate+'deg)'\" >\n </div>\n</ng-template>","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n selector: 'fe-file-edit',\n templateUrl: './file-edit.component.html',\n styleUrls: ['./file-edit.component.scss']\n})\nexport class FileEditComponent {\n constructor(\n public _FileApiService: FileApiService,\n ) { }\n\n /**是否多选 */\n _multiple: boolean = true\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n if (v) { }\n }\n /**文件数据--已上传的数据 */\n _fileData: any[] = []\n @Input()\n public set fileData(v: any[]) {\n this._fileData = v;\n if (v.length > 0) {\n this.getFileChange({ target: { files: v } })\n }\n }\n /** 跟随表单提交--已提交的数据,或选择的数据源--回调*/\n @Output() fileDataChange = new EventEmitter()\n\n /**文件大小限制 \n * @param 1mb\n */\n sizeLimit: number = 1048576\n @Input()\n public set limit(v: number) {\n this.sizeLimit = v;\n }\n\n /**文件表格数据 */\n filesTableData: any[] = []\n /** 待删除已上传的文件们*/\n deleteTheUploadedFiles: any[] = []\n\n /**获取文件选择框的元素 */\n @ViewChild('fileEdit', { static: true }) fileEdit: ElementRef;\n\n\n /**获取文件信息改变 */\n async getFileChange(event) {\n let files = new Array(...event.target.files)\n /**需要等待setfileSizeUnits执行完后在执行其他方法--需要完善 */\n await this.waitFileToAddTable(files)\n this.fileHandling()\n }\n\n /**等待将文件数据加入到文件表格数据中 */\n waitFileToAddTable(files) {\n return new Promise(async (resolve, rejects) => {\n this.filesTableData.push(...await this.setfileSizeUnits(files))\n resolve(true)\n })\n }\n\n /**删除文件表格的项 */\n deleteFileTableItem(index, item) {\n this.filesTableData.splice(index, 1)\n if (item.id) {\n this.deleteTheUploadedFiles.push(item)\n }\n this.fileHandling()\n }\n\n /**文件处理-调用回调函数 */\n fileHandling() {\n let theFilesToBeUploaded = this.filesTableData.filter(el => !el.id)\n //判断图片大小是否超过限制-用于判断表单是否允许提交\n let isSubmit = !this.filesTableData.some(el => el.size > this.sizeLimit);\n this.fileDataChange.emit({ theFilesToBeUploaded, deleteTheUploadedFiles: this.deleteTheUploadedFiles, isSubmit })\n }\n\n /**设置值文件大小单位/ */\n async setfileSizeUnits(files: File[] | any[]): Promise<any> {\n return new Promise((resolve, rejects) => {\n let formattedFiles = []\n files.forEach(async (file) => {\n file.fileSize = this._FileApiService.formatFileSize(file.size)\n formattedFiles.push(file)\n //设置选择图片的本地url\n if (!file.src) file.src = await this._FileApiService.getImageLacolBase64Url(file);\n });\n resolve(files)\n })\n }\n\n}\n","<div class=\"input-group mb-3\">\n <input type=\"file\" class=\"form-control\" #fileEdit [multiple]=\"_multiple\" (change)=\"getFileChange($event)\">\n</div>\n\n<table class=\"table\" *ngIf=\"filesTableData.length>0\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of filesTableData;let i =index\">\n <tr>\n <td>\n <fe-file-preview [width]=\"'80px'\" [src]=\"item.src\" [name]=\"item.name\" [type]=\"item.type\" [preview]=\"true\"></fe-file-preview>\n </td>\n <th scope=\"row\">\n <div>{{item.name}}</div>\n <div class=\"form-text text-danger\" *ngIf=\"item.size > sizeLimit\">\n {{'FileExplorer::ExceedsMaximumSize' |\n abpLocalization:_FileApiService.formatFileSize(sizeLimit)}}</div>\n </th>\n <td>{{item.fileSize}}</td>\n <td>\n <button class=\"btn btn-sm p-0 btn-light \" (click.stop)=\"deleteFileTableItem(i,item)\">\n <i class=\"fas fa-trash p-2\"></i>\n </button>\n </td>\n </tr>\n </ng-container>\n </tbody>\n</table>","import type { CreateFileInput, FileContainerConfigurationDto, FileDescriptorDto, GetFilesInput, ImageResizeInput, UpdateFileInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\nimport type { FileResult } from '../../../microsoft/asp-net-core/mvc/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\r\n body: input.file,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n download = (containerName: string, blobName: string, fileName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileResult>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/download/${containerName}/${blobName}`,\r\n params: { fileName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/files/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getFileContainerConfiguration = (containerName: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileContainerConfigurationDto>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files/configuration',\r\n params: { containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetFilesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<FileDescriptorDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/files',\r\n params: { containerName: input.containerName, directoryId: input.directoryId, creatorId: input.creatorId, filter: input.filter, entityId: input.entityId, sorting: input.sorting, skipCount: input.skipCount, maxResultCount: input.maxResultCount },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getStream = (containerName: string, blobName: string, imageResize?: ImageResizeInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, Blob>({\r\n method: 'GET',\r\n responseType: 'blob',\r\n url: `/api/file-explorer/files/${containerName}/${blobName}`,\r\n params: { width: imageResize.width, height: imageResize.height },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateFileInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, FileDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/files/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","import type { CreateDirectoryInput, DirectoryDescriptorDto, DirectoryDescriptorInfoDto, GetDirectoriesInput, MoveDirectoryInput, UpdateDirectoryInput } from './models';\r\nimport { RestService, Rest } from '@abp/ng.core';\r\nimport type { PagedResultDto } from '@abp/ng.core';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FileDescriptorService {\r\n apiName = 'FileExplorer';\r\n \r\n\r\n create = (input: CreateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'POST',\r\n url: '/api/file-explorer/directories',\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n delete = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, void>({\r\n method: 'DELETE',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n get = (id: string, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'GET',\r\n url: `/api/file-explorer/directories/${id}`,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n getList = (input: GetDirectoriesInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, PagedResultDto<DirectoryDescriptorInfoDto>>({\r\n method: 'GET',\r\n url: '/api/file-explorer/directories',\r\n params: { containerName: input.containerName },\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n move = (id: string, input: MoveDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}/move`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n \r\n\r\n update = (id: string, input: UpdateDirectoryInput, config?: Partial<Rest.Config>) =>\r\n this.restService.request<any, DirectoryDescriptorDto>({\r\n method: 'PUT',\r\n url: `/api/file-explorer/directories/${id}`,\r\n body: input,\r\n },\r\n { apiName: this.apiName,...config });\r\n\r\n constructor(private restService: RestService) {}\r\n}\r\n","/* eslint-disable @angular-eslint/component-selector */\nimport { Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { NzFormatEmitEvent } from 'ng-zorro-antd/tree';\nimport * as DescriptorService from '../../proxy/dignite/file-explorer/directories';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { NzFormatBeforeDropEvent } from 'ng-zorro-antd/tree';\nimport { of } from 'rxjs';\nimport { FileApiService } from '../../services/file-api.service';\nimport { LocalizationService } from '@abp/ng.core';\nvar that;\n@Component({\n selector: 'fe-file-modal-tree',\n templateUrl: './file-modal-tree.component.html',\n styleUrls: ['./file-modal-tree.component.scss']\n})\nexport class FileModalTreeComponent {\n constructor(\n private _DescriptorService: DescriptorService.FileDescriptorService,\n private fb: FormBuilder,\n private toaster: ToasterService,\n public _FileApiService: FileApiService,\n public _LocalizationService: LocalizationService,\n ) {\n that = this\n }\n\n /**文件分组列表 */\n fileGroupList: any[] = [];\n\n /**选择的tree节点 */\n _theSelectedTreeNode: any = '';\n @Input()\n public set theSelectedTreeNode(v: any) {\n this._theSelectedTreeNode = v;\n if (v.length > 0) {\n this.loadData()\n }\n }\n\n /**正在编辑的节点 */\n theNodeBeingEdited: any = '';\n\n /**已展开的节点 */\n anExpandedNode: any[] = [];\n\n /**图片容器 */\n _fileContainerName: string;\n\n /**tree节点选择回调 */\n @Output() nodeClick = new EventEmitter();\n\n\n @Input()\n public set fileContainerName(v: string) {\n if (v) {\n this._fileContainerName = v;\n this.loadData()\n }\n }\n\n handleClick = (event) => event.stopPropagation();\n\n loadData() {\n if (this._fileContainerName) {\n this.getFileGroupList()\n }\n }\n\n\n /**获取文件分组 */\n getFileGroupList() {\n this._DescriptorService.getList({\n containerName: this._fileContainerName,\n }).subscribe(async (res) => {\n this.fileGroupList = await this.setTheValueOfTheNodeRecursively(res.items)\n })\n }\n \n /**递归设置节点的值 */\n setTheValueOfTheNodeRecursively(array: any[]): any {\n return new Promise((reslove, rejects) => {\n array.forEach((el) => {\n el.title = el.name\n el.key = el.id\n el.expanded = this.anExpandedNode.includes(el.key)\n if (el.children.length > 0) {\n this.setTheValueOfTheNodeRecursively(el.children)\n }\n })\n reslove(array)\n })\n }\n\n /**tree-拖拽 */\n nzEvent(event: NzFormatEmitEvent): void {\n }\n\n /**tree-拖拽 -验证*/\n beforeDrop(arg: NzFormatBeforeDropEvent) {\n if (arg.pos === 0 || arg.pos === 1) {\n that._DescriptorService.move(arg.dragNode.key, {\n \"parentId\": arg.pos === 1 ? (arg.node.parentNode?.key||'') : arg.node.key,\n \"order\": arg.pos === 1 ? arg.node.origin.order + 1 : arg.node.origin.children.length + 1\n }).subscribe(res => {\n that.getFileGroupList()\n })\n return of(true)\n } else {\n return of(false);\n }\n }\n\n /**tree--选择节点 */\n activeNode(event) {\n this._theSelectedTreeNode = event.node\n this.nodeClick.emit(event.node)\n }\n\n /**判断节点是否选中 */\n isNodeSelected = (el) => el.key === this._theSelectedTreeNode?.key\n\n /**点击展开树节点图标触发 */\n nzExpandChange(event) {\n let anExpandedNode = this.anExpandedNode\n if (anExpandedNode.includes(event.node.key)) {\n anExpandedNode = anExpandedNode.filter(key => key !== event.node.key)\n } else {\n anExpandedNode.push(event.node.key)\n }\n this.anExpandedNode = anExpandedNode\n }\n\n\n /**增加分组 */\n addDescriptorBtn(items: any = '', edit = false) {\n this.ModalDescriptorOpen = true\n this.ModalDescriptorForm = this.fb.group({\n containerName: [this._fileContainerName || '', Validators.required],\n name: ['', Validators.required],\n parentId: [items?.key || '', Validators.required],\n })\n /**编辑 */\n if (edit) {\n this.theNodeBeingEdited = items.origin\n this.ModalDescriptorForm.patchValue({\n name: items.origin.name\n })\n }\n }\n\n /**删除分组 */\n deleteDescriptorBtn(node) {\n this._DescriptorService.delete(node.key).subscribe(res => {\n this.ModalDescriptorOpen = false\n if (this.theNodeBeingEdited.key == node.key) this.theNodeBeingEdited = ''\n this.getFileGroupList()\n })\n }\n\n \n\n /**分组 */\n /**模态框-状态-是否打开 */\n ModalDescriptorOpen: boolean = false\n\n /**模态框-descriptor-繁忙状态-用于确定模态的繁忙状态是否为真 */\n ModalDescriptorBusy: boolean = false\n\n /**模态框-descriptor-表单 */\n ModalDescriptorForm: FormGroup | undefined;\n \n /**模态框-descriptor-表单--控件模板-动态赋值表单控件 */\n @ViewChild('ModalFormDescriptorSubmit', { static: false }) ModalFormDescriptorSubmit: ElementRef;\n\n /**模态框-descriptor-状态改变回调 */\n ModalDescriptorVisibleChange(event) {\n if (!event) {\n this.ModalDescriptorForm = undefined\n this.theNodeBeingEdited = ''\n return\n }\n }\n\n /**f分组模态框保存 */\n createOrEditSave() {\n let input = this.ModalDescriptorForm.value\n if (this.theNodeBeingEdited) {\n this._DescriptorService.update(this.theNodeBeingEdited.key, input).subscribe(res => {\n this.ModalDescriptorOpen = false\n this.getFileGroupList()\n })\n return\n }\n this._DescriptorService.create(input).subscribe(res => {\n this.ModalDescriptorOpen = false\n this.getFileGroupList()\n })\n }\n\n\n\n\n}\n","<div class=\"card-header p-0 mb-1 d-flex justify-content-between align-items-center\">\n <h6 class=\"h6 mb-0\">{{'FileExplorer::MyDirectories' | abpLocalization}}</h6>\n <button type=\"button\" class=\"btn btn-light btn-sm ms-2\" (click.stop)=\"addDescriptorBtn()\"><i\n class=\"fas fa-plus-circle\" aria-hidden=\"true\"></i></button>\n</div>\n<nz-tree [nzData]=\"fileGroupList\" class=\"ng-zorro-antd-tree\" nzDraggable nzBlockNode nzShowIcon\n [nzExpandedIcon]=\"multiExpandedIconTpl\" (nzOnDrop)=\"nzEvent($event)\" [nzBeforeDrop]=\"beforeDrop\"\n (nzClick)=\"activeNode($event)\" (nzExpandChange)=\"nzExpandChange($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\n <div class=\"custom-node d-inline-block ng-star-inserted dropdown\" [title]=\"node.title\">\n <div #dropdown=\"ngbDropdown\" class=\"d-inline-block\" ngbDropdown placement=\"bottom\" container=\"body\">\n <div class=\"btn-group\" [class.selected]=\"isNodeSelected(node)\">\n <button class=\"btn btn-sm p-0 px-1\">{{ node.title }}</button>\n <button class=\"btn btn-sm p-0\" (click)=\"handleClick($event)\" ngbDropdownToggle\n [class.dropdown-toggle]=\"false\" aria-hidden=\"true\">\n <i class=\"fas fa-caret-down text-muted p-1\"></i>\n </button>\n </div>\n <div ngbDropdownMenu>\n <button ngbDropdownItem\n (click.stop)=\"addDescriptorBtn(node)\">{{'FileExplorer::NewDirectory' | abpLocalization}}</button>\n <button ngbDropdownItem\n (click.stop)=\"addDescriptorBtn(node,true)\">{{'AbpUi::Edit' | abpLocalization}}</button>\n <button ngbDropdownItem\n (click.stop)=\"deleteDescriptorBtn(node)\">{{'AbpUi::Delete' | abpLocalization}}</button>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #multiExpandedIconTpl let-node let-origin=\"origin\">\n <ng-container *ngIf=\"node.children.length > 0\">\n <i [class]=\"node.isExpanded ? 'fas fa-caret-down' : 'fas fa-caret-right'\"></i>\n </ng-container>\n </ng-template>\n</nz-tree>\n\n\n<abp-modal [(visible)]=\"ModalDescriptorOpen\" [busy]=\"ModalDescriptorBusy\"\n (visibleChange)=\"ModalDescriptorVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{theNodeBeingEdited?('AbpUi::Edit' | abpLocalization):('FileExplorer::NewDirectory' | abpLocalization)}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <ng-container *ngIf=\"ModalDescriptorForm; else loaderRef\">\n <form class=\"sites-modal-form\" #myForm=\"ngForm\" [formGroup]=\"ModalDescriptorForm\"\n (keydown.enter)=\"$event.preventDefault()\" (submit)=\"createOrEditSave()\">\n <button type=\"submit\" #ModalFormDescriptorSubmit style=\"display: none\"></button>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'FileExplorer::DirectoryName' | abpLocalization}}</label>\n <input type=\"email\" class=\"form-control\" formControlName=\"name\">\n </div>\n </form>\n </ng-container>\n </ng-template>\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\"\n (click)=\"ModalFormDescriptorSubmit.nativeElement.click()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>","import { Component, EventEmitter, Input, Output, SimpleChanges, inject } from '@angular/core';\nimport * as FileService from '../../proxy/dignite/file-explorer/files';\nimport { Confirmation, ConfirmationService, ToasterService } from '@abp/ng.theme.shared';\nimport { PagedResultDto, ABP, ListService, Rest, RestService, LocalizationService, LIST_QUERY_DEBOUNCE_TIME } from '@abp/ng.core';\nimport { FileDescriptorDto, FileDescriptorService, GetFilesInput } from '../../proxy/dignite/file-explorer/files';\nimport { FileApiService } from '../../services/file-api.service';\nimport { SelectionType } from '@swimlane/ngx-datatable';\nvar that\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-modal',\n templateUrl: './file-modal.component.html',\n styleUrls: ['./file-modal.component.scss'],\n providers: [\n // [Required]\n ListService,\n // [Optional]\n // Provide this token if you want a different debounce time.\n // Default is 300. Cannot be 0. Any value below 100 is not recommended.\n { provide: LIST_QUERY_DEBOUNCE_TIME, useValue: 500 },\n ]\n})\nexport class FileModalComponent {\n\n constructor(\n private _FileService: FileService.FileDescriptorService,\n private toaster: ToasterService,\n public readonly list: ListService,\n public _FileApiService: FileApiService,\n private restService: RestService,\n private confirmation: ConfirmationService,\n private _LocalizationService: LocalizationService,\n ) {\n that = this\n \n }\n\n private _FileDescriptorService=inject(FileDescriptorService)\n /**获取目录配置 */\n getFilesConfiguration(){\n this._FileDescriptorService.getFileContainerConfiguration(this._fileContainerName).subscribe(res=>{\n this.createDirectoryPermissionName=res?.createDirectoryPermissionName\n })\n }\n /**目录的权限名称 */\n createDirectoryPermissionName:string=null\n\n /**图片容器 */\n _fileContainerName: string\n @Input()\n public set fileContainerName(v: string) {\n if (v) {\n this._fileContainerName = v;\n this.loadData()\n }\n }\n\n /**是否多选 */\n _multiple: boolean = false\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n if (v) { }\n }\n\n /**文件大小限制 \n* @param 1mb\n*/\n sizeLimit: number = 1048576\n @Input()\n public set limit(v: number) {\n this.sizeLimit = v;\n }\n /**父组件传递的模态框状态 */\n @Input()\n public set visible(v: boolean) {\n this.ModalOpen = v;\n if (v) {\n this.loadData()\n }\n }\n\n /**模态框状态回调 */\n @Output() visibleChange = new EventEmitter()\n\n\n\n /**模态框-状态-是否打开 */\n ModalOpen: boolean = false\n\n /**模态框-繁忙状态-用于确定模态的繁忙状态是否为真 */\n ModalBusy: boolean = false\n\n\n\n /**模态框-状态改变回调 */\n ModalVisibleChange(event) {\n if (!event) {\n this.visibleChange.emit(event)\n return\n }\n }\n\n /**模态框保存 */\n modalSave() {\n let selectedTablearr = this._FileApiService.deepClone(this.selectedTable)\n this.selectFilefn.emit(selectedTablearr)\n\n this.ModalVisibleChange(false)\n }\n /**dignite-file-modal-tree */\n /**选择的tree节点 */\n _theSelectedTreeNode: any = ''\n\n /**初始化数据 */\n loadData() {\n if (this.ModalOpen && this._fileContainerName) {\n this.hookToQuery()\n this.getFilesConfiguration()\n }\n }\n\n /**tree-节点选择 */\n _nodeClick(event) {\n this._theSelectedTreeNode = event\n this.list.get()\n }\n\n /**图片上传-要上传图片的状态文件列表 */\n uploadPictureStatusList: any[] = []\n\n /**图片上传-获取文件信息改变 */\n async getFileChange(event) {\n let files = new Array(...event.target.files)\n this.uploadPictureStatusList = files\n for (const file of files) {\n if (file.size > this.sizeLimit) {\n this.setuploadPictureStatus(file, 2)\n continue;\n }\n await this.uploadingFile(file).then(() => {\n this.setuploadPictureStatus(file, 1)\n this.list.get()\n }).catch(() => {\n this.setuploadPictureStatus(file, 2)\n }); // 等待每个文件上传完成 \n }\n this.list.get()\n let isSubmit = !this.uploadPictureStatusList.some(el => el.status == 2);\n if (isSubmit) {\n // this.toaster.success(\"上传完成\");\n setTimeout(() => {\n this.uploadPictureStatusList = []\n }, 6000)\n }\n }\n\n /**图片上传-设置uploadPictureStatusList的状态 */\n setuploadPictureStatus(file, type) {\n this.uploadPictureStatusList.map(el => {\n if (el == file) el.status = type\n })\n }\n\n\n /**图片上传-递归按顺序上传 */\n uploadingFile(file) {\n return new Promise((resolve, rejects) => {\n let formData = new FormData();\n formData.append('file', file, file.name);\n this.createFile({\n file: formData,\n containerName: this._fileContainerName,\n directoryId: this._theSelectedTreeNode?.key || '',\n entityId: ''\n }).subscribe(res => {\n resolve(true)\n }, (err) => {\n rejects(false)\n })\n })\n }\n\n\n /**文件表格-数据*/\n data: PagedResultDto<FileDescriptorDto> = {\n items: [],\n totalCount: 0,\n };\n\n /**文件表格-条件*/\n filters = {} as GetFilesInput;\n\n /**文件表格-表格自带选择类型 */\n SelectionType = SelectionType;\n\n /**文件表格-选择的表格数据项 */\n selectedTable = []\n\n /**已选定的文件 */\n @Input() selectPickerFile: any[]\n\n ngOnChanges(changes: SimpleChanges): void {\n //Called before any other lifecycle hook. Use it to inject dependencies, but avoid any serious work here.\n //Add '${implements OnChanges}' to the class.\n this.selectedTable = this._FileApiService.deepClone(this.selectPickerFile)\n }\n /**当前选择的table项 id */\n nowSelectId: any = ''\n\n /**选择文件回调 */\n @Output() selectFilefn = new EventEmitter<any[]>()\n\n /**文件表格-获取表格数据 */\n hookToQuery() {\n const getData = (query: ABP.PageQueryParams) => this._FileService.getList({\n ...query,\n ...this.filters,\n containerName: this._fileContainerName,\n directoryId: this._theSelectedTreeNode.key\n });\n const setData = (list: PagedResultDto<FileDescriptorDto>) => (this.data = list);\n this.list.hookToQuery(getData).subscribe(setData);\n }\n\n /**文件表格-查看所有分组的文件数据 */\n lookAllFile() {\n this._theSelectedTreeNode = ''\n this.list.get()\n }\n\n /**选择表格项 */\n onSelectTableItem({ selected }) {\n this.selectedTable = this._FileApiService.deepClone(selected)\n let selectedTablearr = this.removeDuplicatesById(this.selectedTable)\n if (selected.length > selectedTablearr.length) {\n selectedTablearr = selectedTablearr.filter(el => el.id !== this.nowSelectId)\n }\n this.selectedTable = selectedTablearr\n }\n\n /**删除数组中重复的项 */\n removeDuplicatesById(array) {\n const seenIds = {};\n return array.filter(item => {\n if (!seenIds[item.id]) {\n seenIds[item.id] = true;\n return true;\n }\n return false;\n });\n }\n\n /**一个布尔or函数,可用于检查是否要根据条件选择特定行。 */\n selectCheck = (row, column, value) => {\n this.nowSelectId = row.id\n return true;\n }\n\n /**判断row是否选中 */\n selectedcheckbox = (id) => {\n return this.selectedTable.some(el => el.id == id)\n }\n\n\n\n /**删除图片 */\n deleteFile(file) {\n\n this.confirmation\n .warn('', { key: '', defaultValue: this._LocalizationService.instant(`AbpUi::ItemWillBeDeletedMessage`) })\n .subscribe((status: Confirmation.Status) => {\n if (status == 'confirm') {\n this._FileService.delete(file.id).subscribe(res => {\n this.toaster.success(this._LocalizationService.instant(`AbpUi::DeletedSuccessfully`));\n this.list.get()\n })\n }\n });\n }\n\n /**关闭文件状态弹窗 */\n closeFileStatusModal() {\n this.uploadPictureStatusList = []\n }\n\n /**创建图片的接口,代理中的file类型不匹配,切换为any类型 */\n createFile = (input: any, config?: Partial<Rest.Config>) =>\n this.restService.request<any, FileDescriptorDto>({\n method: 'POST',\n url: '/api/file-explorer/files',\n params: { containerName: input.containerName, cellName: input.cellName, directoryId: input.directoryId, entityId: input.entityId },\n body: input.file,\n },\n { apiName: 'FileExplorer', ...config });\n}\n","<abp-modal [(visible)]=\"ModalOpen\" (visibleChange)=\"ModalVisibleChange($event)\"\n [options]=\"{ size: 'xl', scrollable: false }\">\n <ng-template #abpHeader>\n <h3>{{'FileExplorer::FileExplorer' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <div class=\"row file-explorer-modal-body file-modal\">\n <div class=\"col-3\" *ngIf=\"createDirectoryPermissionName\" style=\"overflow: auto; height: calc(100vh - 240px)\">\n <fe-file-modal-tree [theSelectedTreeNode]=\"_theSelectedTreeNode\" (nodeClick)=\"_nodeClick($event)\"\n [fileContainerName]=\"_fileContainerName\"></fe-file-modal-tree>\n </div>\n <div [class]=\"createDirectoryPermissionName?'col-9':'col-12'\" style=\"height: calc(100vh - 240px)\">\n <div class=\"mb-3 d-flex justify-content-between align-items-center\">\n <div class=\"btn-link\" role=button style=\"flex: 2\" (click)=\"lookAllFile()\">{{'FileExplorer::AllFiles' | abpLocalization}}</div>\n <div class=\"input-group form-file\" style=\"flex: 2\">\n <input type=\"file\" class=\"form-control\" #fileEdit [multiple]=\"_multiple\" \n (change)=\"getFileChange($event)\" />\n </div>\n </div>\n <div>\n <ngx-datatable class=\"material container-height\" [rows]=\"data.items\" [list]=\"list\" columnMode=\"flex\"\n [columns]=\"columns\" [headerHeight]=\"50\" [footerHeight]=\"50\" rowHeight=\"auto\" [scrollbarV]=\"true\"\n [virtualization]=\"false\" [externalPaging]=\"true\" [count]=\"data.totalCount\" [selected]=\"selectedTable\"\n [selectCheck]=\"selectCheck\" [selectionType]=\"_multiple?SelectionType.multiClick:SelectionType.single\" (select)=\"onSelectTableItem($event)\">\n <ngx-datatable-column [width]=\"50\" prop=\"id\" [sortable]=\"false\" [canAutoResize]=\"false\" [draggable]=\"false\"\n [resizeable]=\"false\">\n <ng-template ngx-datatable-header-template let-value=\"value\" let-allRowsSelected=\"allRowsSelected\"\n let-selectFn=\"selectFn\">\n <input type=\"checkbox\" class=\"form-check-input\" [checked]=\"allRowsSelected\"\n (change)=\"selectFn(!allRowsSelected)\" />\n </ng-template>\n <ng-template ngx-datatable-cell-template let-row=\"row\" let-value=\"value\" let-isSelected=\"isSelected\"\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\">\n <input type=\"checkbox\" class=\"form-check-input\" [checked]=\"selectedcheckbox(value)\"\n (change)=\"onCheckboxChangeFn($event)\" />\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [flexGrow]=\"2\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n <fe-file-preview [width]=\"'80px'\" [src]=\"row.url\" [name]=\"row.name\" [type]=\"row.mimeType\" [preview]=\"true\"></fe-file-preview>\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::FileName' | abpLocalization\" prop=\"name\" [flexGrow]=\"4\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::FileSize' | abpLocalization\" prop=\"size\" [flexGrow]=\"1.5\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ _FileApiService.formatFileSize(value) }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::Directory' | abpLocalization\" prop=\"cellName\" [flexGrow]=\"1\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [name]=\"'FileExplorer::CreationTime' | abpLocalization\" prop=\"creationTime\" [flexGrow]=\"2\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n {{ value | date : 'YYYY/MM/dd HH:mm:s' }}\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column [flexGrow]=\"1\">\n <ng-template let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\n <button class=\"btn btn-sm btn-light p-0\" (click.stop)=\"deleteFile(row)\">\n <i class=\"fas fa-trash text-primary p-2\"></i>\n </button>\n </ng-template>\n </ngx-datatable-column>\n </ngx-datatable>\n </div>\n <div *ngIf=\"uploadPictureStatusList.length > 0\"\n class=\"position-fixed bottom-0 end-0 shadow-lg file-status-modal m-5\"\n style=\"border-radius: 10px\">\n <div class=\"card p-1\">\n <div class=\"card-header d-flex align-items-center justify-content-between p-0 py-1 border-bottom\">\n <div>{{'FileExplorer::UploadFiles' | abpLocalization}}</div>\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\" (click.stop)=\"closeFileStatusModal()\"></button>\n </div>\n <div class=\"card-body\">\n <table class=\"table\">\n <thead>\n <tr>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of uploadPictureStatusList; let i = index\">\n <tr>\n <th scope=\"row\">\n <div>{{ item.name }}</div>\n <div class=\"form-text text-danger\" *ngIf=\"item.size > sizeLimit\">\n {{'FileExplorer::ExceedsMaximumSize' | abpLocalization:_FileApiService.formatFileSize(sizeLimit)}}\n </div>\n </th>\n <td>{{ item.fileSize }}</td>\n <td>\n <i *ngIf=\"item.status === 1\" class=\"fas fa-check text-primary\"></i>\n <i *ngIf=\"item.status === 2\" class=\"fas fa-times-circle text-danger\"></i>\n </td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" (click)=\"modalSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>","/* eslint-disable @angular-eslint/component-selector */\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n selector: 'fe-file-picker',\n templateUrl: './file-picker.component.html',\n styleUrls: ['./file-picker.component.scss']\n})\nexport class FilePickerComponent implements OnChanges {\n\n\n\n constructor(\n private _FileApiService: FileApiService,\n ) {\n\n }\n\n\n /**是否多选 */\n _multiple: boolean = false\n @Input()\n public set multiple(v: boolean) {\n this._multiple = v;\n }\n\n /**图片容器 */\n _fileContainerName: string = 'Images'\n @Input()\n public set fileContainerName(v: string) {\n this._fileContainerName = v;\n }\n\n /**已选定的文件 */\n @Input() selectFormFile: any[]\n\n ngOnChanges(changes: SimpleChanges): void {\n let selectFormFilengOnChanges = changes.selectFormFile['currentValue']\n if (selectFormFilengOnChanges.length > 0) {\n this._fileShowTable = selectFormFilengOnChanges\n }\n }\n\n @Output() selectedFileChange = new EventEmitter()\n\n _fileShowTable: any[] = []\n\n /**表格选择的文件回调 */\n _selectFilefn(event: any[]) {\n let _fileShowTable = this._FileApiService.deepClone(event)\n this._fileShowTable = _fileShowTable\n this.selectFormFile = _fileShowTable\n this.selectedFileChange.emit(_fileShowTable)\n }\n\n /**模态框-状态-是否打开 */\n ModalOpen: boolean = false\n\n /**删除文件表格项 */\n deleteFileTableItem(i, file) {\n this._fileShowTable.splice(i, 1)\n this.selectFormFile = this._fileShowTable\n this.selectedFileChange.emit([])\n this.selectedFileChange.emit(this.selectFormFile)\n }\n\n}\n","<button class=\"btn btn-sm btn-primary ms-2 float-end\" type=\"button\" (click.stop)=\"ModalOpen = true\">{{'FileExplorer::SelectFile' | abpLocalization}}</button>\n<fe-file-modal [(visible)]=\"ModalOpen\" [selectPickerFile]=\"selectFormFile\" [multiple]=\"_multiple\" (selectFilefn)=\"_selectFilefn($event)\" [fileContainerName]=\"_fileContainerName\"></fe-file-modal>\n<table class=\"table\" *ngIf=\"_fileShowTable.length>0\">\n <thead>\n <tr>\n <th scope=\"col\"></th>\n <th scope=\"col\">{{'FileExplorer::FileName' | abpLocalization}}</th>\n <th scope=\"col\">{{'FileExplorer::FileSize' | abpLocalization}}</th>\n <th scope=\"col\"></th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of _fileShowTable;let i =index\">\n <tr>\n <td>\n <fe-file-preview [width]=\"'80px'\" [src]=\"item.url||item.Url\" [name]=\"item.name||item.Name\" [type]=\"item.mimeType||item.MimeType\" [preview]=\"true\"></fe-file-preview>\n </td>\n <th scope=\"row\">\n <div>{{item.name||item.Name}}</div>\n </th>\n <td >{{_FileApiService.formatFileSize(item.Size||item.size)}}</td>\n <td>\n <button class=\"btn btn-sm p-0 btn-light \" (click.stop)=\"deleteFileTableItem(i,item)\">\n <i class=\"fas fa-trash p-2\"></i>\n </button>\n </td>\n </tr>\n </ng-container>\n </tbody>\n</table>\n\n\n","import { Component, inject } from '@angular/core';\nimport { FileApiService } from '../../services/file-api.service';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-dome',\n templateUrl: './file-dome.component.html',\n styleUrls: ['./file-dome.component.scss']\n})\nexport class FileDomeComponent {\n\n /**跟随表单提交--已提交的数据,或选择的数据源 */\n fileSubmittedData: any[] = []\n\n /**跟随表单提交--待提交的数据\n * \n * @param 待上传的文件们\n * @param 待删除已上传的文件们\n */\n fileDataToBeSubmitted: any\n\nprivate FileApiService=inject(FileApiService)\n /**跟随表单提交--数据发生改变回调 */\n fileDataChange(event) {\n this.fileDataToBeSubmitted = event\n }\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup:any[]=[]\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event\n }\n}\n","<div class=\"row\">\r\n <div class=\"col\">\r\n <div class=\"card\">\r\n <div class=\"card-header py-2 border-bottom\">Send file stream with form</div>\r\n <div class=\"card-body\">\r\n <fe-file-edit [(fileData)]=\"fileSubmittedData\" (fileDataChange)=\"fileDataChange($event)\"></fe-file-edit>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col\">\r\n <div class=\"card\">\r\n <div class=\"card-header py-2 border-bottom\">Send file stream with form</div>\r\n <div class=\"card-body\">\r\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" fileContainerName=\"SampleContainer\" (selectedFileChange)=\"_selectedFileChange($event)\" ></fe-file-picker>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { FileDomeComponent } from './components/dome/file-dome.component';\n\nconst routes: Routes = [\n {\n path: 'file-dome',\n component: FileDomeComponent\n},\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class FileExplorerRoutingModule { \n \n}\n","import { FormControl, Validators } from \"@angular/forms\";\r\n\r\nexport class FileExplorerConfig {\r\n\r\n\r\n /**文件容器名称 */\r\n 'FileExplorer.FileContainerName': any = ['', [Validators.required]];\r\n /**多选 */\r\n 'FileExplorer.UploadFileMultiple': any = [false, []];\r\n \r\n\r\n constructor(data?: FileExplorerConfig) {\r\n if (data) {\r\n for (const key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n this[key] = data[key];\r\n }\r\n }\r\n }\r\n\r\n\r\n }\r\n}","import { ChangeDetectorRef, Component, ElementRef, inject, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { FileExplorerConfig } from './file-explorer-config';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-explorer-config',\n templateUrl: './file-explorer-config.component.html',\n styleUrls: ['./file-explorer-config.component.scss']\n})\nexport class FileExplorerConfigComponent {\n constructor(\n private fb: FormBuilder,\n ) { }\n /**表单控件类型 */\n _type: any\n @Input()\n public set type(v: any) {\n this._type = v\n this.dataLoaded()\n }\n /**表单实体 */\n _Entity: FormGroup | undefined\n @Input()\n public set Entity(v: FormGroup) {\n this._Entity = v;\n this.dataLoaded()\n }\n /**选择的表单信息 */\n _selected: any\n @Input()\n public set selected(v: any) {\n this._selected = v\n\n this.dataLoaded()\n }\n get formConfiguration() {\n return this._Entity.get('formConfiguration') as FormGroup\n }\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n private cdr = inject(ChangeDetectorRef);\n async dataLoaded() {\n if (this._Entity && this._type) {\n await this.AfterInit();\n this.cdr.detectChanges(); // 手动触发变更检测\n this.submitclick?.nativeElement?.click();\n }\n }\n\n AfterInit() {\n return new Promise((resolve, rejects) => {\n this._Entity.setControl('formConfiguration', this.fb.group(new FileExplorerConfig()))\n if (this._selected && this._selected.formControlName == this._type) {\n this.formConfiguration.patchValue({\n ...this._selected.formConfiguration\n })\n }\n resolve(true)\n })\n }\n}\n","<form [formGroup]=\"_Entity\">\n <div formGroupName=\"formConfiguration\">\n <div class=\"mb-3\">\n <label class=\"form-label\">{{'DigniteAbpDynamicFormsFileExplorer::FileContainerName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"FileExplorer.FileContainerName\">\n </div>\n <div class=\"mb-3\">\n <div class=\"form-check form-check-inline\">\n <input class=\"form-check-input\" type=\"checkbox\" formControlName=\"FileExplorer.UploadFileMultiple\" id=\"flexRadioDefault1\">\n <label class=\"form-check-label\" for=\"flexRadioDefault1\">\n {{'DigniteAbpDynamicFormsFileExplorer::UploadFileMultiple' | abpLocalization}}\n </label>\n </div>\n </div>\n <button type=\"submit\" (abpInit)=\"submitclick?.nativeElement?.click()\" style=\"display: none;\"\n #submitclick></button>\n </div>\n</form>","import { ChangeDetectorRef, Component, ElementRef, inject, Input, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'fe-file-explorer-control',\n templateUrl: './file-explorer-control.component.html',\n styleUrls: ['./file-explorer-control.component.scss'],\n})\nexport class FileExplorerControlComponent {\n constructor(private fb: FormBuilder) {}\n\n /**表单实体 */\n _entity: FormGroup | undefined;\n @Input()\n public set entity(v: any) {\n this._entity = v;\n if (v) this.dataLoaded();\n }\n\n /**字段配置列表 */\n _fields: any = '';\n @Input()\n public set fields(v: any) {\n this._fields = v;\n if (v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _parentFiledName: any;\n @Input()\n public set parentFiledName(v: any) {\n this._parentFiledName = v;\n if (v) this.dataLoaded();\n }\n\n /**父级字段名称,用于为表单设置控件赋值 */\n _selected: any;\n @Input()\n public set selected(v: any) {\n this._selected = v;\n if (v && v.length > 0) this.dataLoaded();\n }\n\n @ViewChild('submitclick', { static: true }) submitclick: ElementRef;\n\n get extraProperties() {\n return this._entity.get('extraProperties') as FormGroup;\n }\n private cdr = inject(ChangeDetectorRef);\n /**数据加载完成 */\n async dataLoaded() {\n if (this._fields && this._entity && this._parentFiledName) {\n await this.AfterInit();\n this.cdr.detectChanges(); // 手动触发变更检测\n this.submitclick?.nativeElement?.click();\n }\n }\n\n /**字段配置 */\n formConfiguration: any = '';\n /**文件容器名称 */\n FileContainerName: any = '';\n AfterInit() {\n return new Promise((resolve, rejects) => {\n let ValidatorsArray = [];\n if (this._fields.required) {\n ValidatorsArray.push(Validators.required);\n }\n this.formConfiguration = this._fields.field.formConfiguration;\n this.FileContainerName = this.formConfiguration['FileExplorer.FileContainerName'];\n if (this._selected && this._selected.length > 0) {\n this.selectedFileGroup = this._selected;\n }\n let newControl = this.fb.control(this._selected, ValidatorsArray);\n this.extraProperties.setControl(this._fields.field.name, newControl);\n resolve(true);\n });\n }\n\n /**选择文件-弹窗的-已选定的文件 */\n selectedFileGroup: any[] = [];\n\n /**_selectedFile改变回调 */\n _selectedFileChange(event) {\n this.selectedFileGroup = event;\n let fieldName = this._fields.field.name;\n let obj = {};\n obj[fieldName] = event;\n this.extraProperties.patchValue(obj);\n }\n}\n","<form [formGroup]=\"_entity\">\n <div formGroupName=\"extraProperties\">\n <div class=\"mb-3\">\n <label class=\"form-label\" *ngIf=\"_fields.displayName\">{{ _fields.displayName }}</label>\n <fe-file-picker [selectFormFile]=\"selectedFileGroup\" [multiple]=\"formConfiguration['FileExplorer.UploadFileMultiple']\"\n (selectedFileChange)=\"_selectedFileChange($event)\" [fileContainerName]=\"FileContainerName\"></fe-file-picker>\n <small class=\"form-text text-muted d-block\" *ngIf=\"_fields.field.description\">{{_fields.field.description}}</small>\n </div>\n </div>\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n</form>","// import { TableConfigComponent, TableControlComponent, MatrixConfigComponent, MatrixControlComponent } from \"@dignite-ng/expand.cms\";\r\nimport { Type } from \"@angular/core\";\r\nimport { FileExplorerConfigComponent, FileExplorerControlComponent } from \"./file-explorer\";\r\n\r\nexport interface FieldControlGroupInterfaces {\r\n displayName: string\r\n name: string\r\n // type: TextEditMode,\r\n /**\r\n * 动态表单控件\r\n */\r\n fieldComponent?: Type<any>;\r\n\r\n /**\r\n * 表单控件配置组件\r\n */\r\n fieldConfigComponent?: Type<any>;\r\n\r\n /**\r\n * 条目列表中显示的组件\r\n */\r\n fieldViewComponent?: Type<any>;\r\n}\r\n\r\n\r\n\r\n/**\r\n * 表单控件分组-包含配置,控件,显示的数组\r\n */\r\nexport const fielFieldControlGroup: FieldControlGroupInterfaces[] = [\r\n \r\n {\r\n displayName: '文件管理',\r\n name: 'FileExplorer',\r\n fieldConfigComponent: FileExplorerConfigComponent,\r\n fieldComponent: FileExplorerControlComponent,\r\n // fieldViewComponent:TextBoxViewComponent,\r\n }\r\n];\r\nexport function getExcludeAssignControl(typeName) {\r\n // return FieldControlGroup.filter(el => el.name !== typeName)\r\n return fielFieldControlGroup\r\n}\r\n\r\nexport function AddFieldControlGroup(array=[]) {\r\n fielFieldControlGroup.push(...array)\r\n}","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { FileExplorerRoutingModule } from './file-explorer-routing.module';\nimport { FileEditComponent, FilePickerComponent, FileModalComponent, FileModalTreeComponent, FileDomeComponent, fielFieldControlGroup } from './components';\nimport { FilePreviewComponent } from './previews/file-preview.component';\nimport { FileExplorerConfigComponent } from './components/dynamic-form/file-explorer/file-explorer-config.component';\nimport { FileExplorerControlComponent } from './components/dynamic-form/file-explorer/file-explorer-control.component';\n@NgModule({\n declarations: [\n FileEditComponent,\n FilePickerComponent,\n FileModalComponent,\n FileModalTreeComponent,\n FileDomeComponent,\n FilePreviewComponent,\n FileExplorerConfigComponent,\n FileExplorerControlComponent,\n ],\n imports: [\n FormsModule,\n CoreModule,\n ThemeSharedModule,\n ReactiveFormsModule,\n NgbDropdownModule,\n NzTreeModule,\n NgxValidateCoreModule,\n FileExplorerRoutingModule,\n ],\n exports: [\n FileEditComponent,\n FilePickerComponent,\n FileModalComponent,\n FileModalTreeComponent,\n FileDomeComponent,\n FilePreviewComponent,\n // FileExplorerConfigComponent,\n // FileExplorerControlComponent,\n ],\n providers: [\n // // [Required]\n // ListService,\n // // [Optional]\n // // Provide this token if you want a different debounce time.\n // // Default is 300. Cannot be 0. Any value below 100 is not recommended.\n // { provide: LIST_QUERY_DEBOUNCE_TIME, useValue: 500 },\n ],\n})\nexport class FileExplorerModule {\n\n}\n","/*\n * Public API Surface of file-explorer\n */\n\n\nexport * from './lib/file-explorer.module';\nexport * from './lib/components/dynamic-form/form-control-group';\nexport * from './lib/components';\n// export * from './lib/services';\n// export * from './lib/proxy';\nexport * from './lib/previews';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i1.FileApiService","i4.FilePreviewComponent","FileDescriptorService","that","i1.FileDescriptorService","i2","i3","i4.FileApiService","i5","i6","i7","i7.FileModalTreeComponent","i8.FilePreviewComponent","i4.FileModalComponent","i5.FilePreviewComponent","i1.FileEditComponent","i2.FilePickerComponent","i4.FilePickerComponent"],"mappings":"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"}
@@ -15,6 +15,7 @@ export declare class FileExplorerConfigComponent {
15
15
  set selected(v: any);
16
16
  get formConfiguration(): FormGroup;
17
17
  submitclick: ElementRef;
18
+ private cdr;
18
19
  dataLoaded(): Promise<void>;
19
20
  AfterInit(): Promise<unknown>;
20
21
  static ɵfac: i0.ɵɵFactoryDeclaration<FileExplorerConfigComponent, never>;
@@ -18,6 +18,7 @@ export declare class FileExplorerControlComponent {
18
18
  set selected(v: any);
19
19
  submitclick: ElementRef;
20
20
  get extraProperties(): FormGroup;
21
+ private cdr;
21
22
  /**数据加载完成 */
22
23
  dataLoaded(): Promise<void>;
23
24
  /**字段配置 */
@@ -1,7 +1,7 @@
1
- import { TemplateRef } from '@angular/core';
1
+ import { AfterContentInit, TemplateRef } from '@angular/core';
2
2
  import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';
3
3
  import * as i0 from "@angular/core";
4
- export declare class FilePreviewComponent {
4
+ export declare class FilePreviewComponent implements AfterContentInit {
5
5
  private modalService;
6
6
  /**文件宽度 */
7
7
  width: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dignite-ng/expand.file-explorer",
3
- "version": "3.0.0-rc.02",
3
+ "version": "3.0.0-rc.03",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.1.0",
6
6
  "@angular/core": "^18.1.0"
package/public-api.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  export * from './lib/file-explorer.module';
2
+ export * from './lib/components/dynamic-form/form-control-group';
2
3
  export * from './lib/components';
3
- export * from './lib/services';
4
- export * from './lib/proxy';
5
4
  export * from './lib/previews';
@@ -1,4 +0,0 @@
1
- import * as Directories from './directories';
2
- import * as Files from './files';
3
- export { Directories, Files };
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvZGlnbml0ZS9maWxlLWV4cGxvcmVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBEaXJlY3RvcmllcyBmcm9tICcuL2RpcmVjdG9yaWVzJztcbmltcG9ydCAqIGFzIEZpbGVzIGZyb20gJy4vZmlsZXMnO1xuZXhwb3J0IHsgRGlyZWN0b3JpZXMsIEZpbGVzIH07XG4iXX0=
@@ -1,3 +0,0 @@
1
- import * as FileExplorer from './file-explorer';
2
- export { FileExplorer };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvZGlnbml0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssWUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEZpbGVFeHBsb3JlciBmcm9tICcuL2ZpbGUtZXhwbG9yZXInO1xuZXhwb3J0IHsgRmlsZUV4cGxvcmVyIH07XG4iXX0=
@@ -1,5 +0,0 @@
1
- import * as Dignite from './dignite';
2
- import * as Microsoft from './microsoft';
3
- import * as Volo from './volo';
4
- export { Dignite, Microsoft, Volo };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxLQUFLLFNBQVMsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxLQUFLLElBQUksTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBEaWduaXRlIGZyb20gJy4vZGlnbml0ZSc7XG5pbXBvcnQgKiBhcyBNaWNyb3NvZnQgZnJvbSAnLi9taWNyb3NvZnQnO1xuaW1wb3J0ICogYXMgVm9sbyBmcm9tICcuL3ZvbG8nO1xuZXhwb3J0IHsgRGlnbml0ZSwgTWljcm9zb2Z0LCBWb2xvIH07XG4iXX0=
@@ -1,3 +0,0 @@
1
- import * as Mvc from './mvc';
2
- export { Mvc };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L2FzcC1uZXQtY29yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLE9BQU8sQ0FBQztBQUM3QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBNdmMgZnJvbSAnLi9tdmMnO1xuZXhwb3J0IHsgTXZjIH07XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './models';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L2FzcC1uZXQtY29yZS9tdmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XG4iXX0=
@@ -1,3 +0,0 @@
1
- import * as Primitives from './primitives';
2
- export { Primitives };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L2V4dGVuc2lvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUHJpbWl0aXZlcyBmcm9tICcuL3ByaW1pdGl2ZXMnO1xuZXhwb3J0IHsgUHJpbWl0aXZlcyB9O1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './models';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L2V4dGVuc2lvbnMvcHJpbWl0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- import * as AspNetCore from './asp-net-core';
2
- import * as Extensions from './extensions';
3
- import * as Net from './net';
4
- export { AspNetCore, Extensions, Net };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxVQUFVLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxLQUFLLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxLQUFLLEdBQUcsTUFBTSxPQUFPLENBQUM7QUFDN0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBBc3BOZXRDb3JlIGZyb20gJy4vYXNwLW5ldC1jb3JlJztcbmltcG9ydCAqIGFzIEV4dGVuc2lvbnMgZnJvbSAnLi9leHRlbnNpb25zJztcbmltcG9ydCAqIGFzIE5ldCBmcm9tICcuL25ldCc7XG5leHBvcnQgeyBBc3BOZXRDb3JlLCBFeHRlbnNpb25zLCBOZXQgfTtcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './models';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L25ldC9odHRwL2hlYWRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XG4iXX0=
@@ -1,3 +0,0 @@
1
- import * as Headers from './headers';
2
- export { Headers };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L25ldC9odHRwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEhlYWRlcnMgZnJvbSAnLi9oZWFkZXJzJztcbmV4cG9ydCB7IEhlYWRlcnMgfTtcbiJdfQ==
@@ -1,3 +0,0 @@
1
- import * as Http from './http';
2
- export { Http };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvbWljcm9zb2Z0L25ldC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssSUFBSSxNQUFNLFFBQVEsQ0FBQztBQUMvQixPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBIdHRwIGZyb20gJy4vaHR0cCc7XG5leHBvcnQgeyBIdHRwIH07XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './models';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvdm9sby9hYnAvY29udGVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcbiJdfQ==
@@ -1,3 +0,0 @@
1
- import * as Content from './content';
2
- export { Content };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvdm9sby9hYnAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQ29udGVudCBmcm9tICcuL2NvbnRlbnQnO1xuZXhwb3J0IHsgQ29udGVudCB9O1xuIl19
@@ -1,3 +0,0 @@
1
- import * as Abp from './abp';
2
- export { Abp };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvcHJveHkvdm9sby9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssR0FBRyxNQUFNLE9BQU8sQ0FBQztBQUM3QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBBYnAgZnJvbSAnLi9hYnAnO1xuZXhwb3J0IHsgQWJwIH07XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './file-api.service';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9maWxlLWV4cGxvcmVyL3NyYy9saWIvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmlsZS1hcGkuc2VydmljZSciXX0=
@@ -1,3 +0,0 @@
1
- import * as Directories from './directories';
2
- import * as Files from './files';
3
- export { Directories, Files };
@@ -1,2 +0,0 @@
1
- import * as FileExplorer from './file-explorer';
2
- export { FileExplorer };
@@ -1,4 +0,0 @@
1
- import * as Dignite from './dignite';
2
- import * as Microsoft from './microsoft';
3
- import * as Volo from './volo';
4
- export { Dignite, Microsoft, Volo };
@@ -1,2 +0,0 @@
1
- import * as Mvc from './mvc';
2
- export { Mvc };
@@ -1 +0,0 @@
1
- export * from './models';
@@ -1,2 +0,0 @@
1
- import * as Primitives from './primitives';
2
- export { Primitives };
@@ -1 +0,0 @@
1
- export * from './models';
@@ -1,4 +0,0 @@
1
- import * as AspNetCore from './asp-net-core';
2
- import * as Extensions from './extensions';
3
- import * as Net from './net';
4
- export { AspNetCore, Extensions, Net };
@@ -1 +0,0 @@
1
- export * from './models';
@@ -1,2 +0,0 @@
1
- import * as Headers from './headers';
2
- export { Headers };
@@ -1,2 +0,0 @@
1
- import * as Http from './http';
2
- export { Http };
@@ -1 +0,0 @@
1
- export * from './models';
@@ -1,2 +0,0 @@
1
- import * as Content from './content';
2
- export { Content };
@@ -1,2 +0,0 @@
1
- import * as Abp from './abp';
2
- export { Abp };
@@ -1 +0,0 @@
1
- export * from './file-api.service';