@alfresco/aca-content 4.4.0-7355304689 → 4.4.0-7388719332

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.
@@ -55,6 +55,7 @@ export class DetailsComponent extends PageComponent {
55
55
  this.onDestroy$ = new Subject();
56
56
  this.activeTab = 1;
57
57
  this.aspectActions = [];
58
+ this.canManagePermissions = true;
58
59
  }
59
60
  ngOnInit() {
60
61
  super.ngOnInit();
@@ -69,6 +70,8 @@ export class DetailsComponent extends PageComponent {
69
70
  this.contentApi.getNode(this.nodeId).subscribe((node) => {
70
71
  this.node = node.entry;
71
72
  this.isLoading = false;
73
+ this.canManagePermissions = !this.isSmartFolder();
74
+ this.setActiveTab(params.activeTab);
72
75
  this.store.dispatch(new SetSelectedNodesAction([{ entry: this.node }]));
73
76
  this.nodeIcon = this.contentService.getNodeIcon(this.node);
74
77
  });
@@ -86,6 +89,10 @@ export class DetailsComponent extends PageComponent {
86
89
  this.activeTab = 1;
87
90
  break;
88
91
  case 'permissions':
92
+ if (!this.canManagePermissions) {
93
+ this.activeTab = 0;
94
+ break;
95
+ }
89
96
  this.activeTab = 2;
90
97
  break;
91
98
  case 'metadata':
@@ -104,9 +111,16 @@ export class DetailsComponent extends PageComponent {
104
111
  this.onDestroy$.next();
105
112
  this.onDestroy$.complete();
106
113
  }
114
+ isSmartFolder() {
115
+ if (!this.node?.isFolder) {
116
+ return false;
117
+ }
118
+ const nodeAspects = this.node.aspectNames ?? [];
119
+ return nodeAspects.includes('smf:customConfigSmartFolder') || nodeAspects.includes('smf:systemConfigSmartFolder');
120
+ }
107
121
  }
108
122
  DetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DetailsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.ContentApiService }, { token: i3.ContentService }], target: i0.ɵɵFactoryTarget.Component });
109
- DetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DetailsComponent, isStandalone: true, selector: "app-details-manager", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\"> \n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: PermissionManagerModule }, { kind: "component", type: i3.PermissionListComponent, selector: "adf-permission-list", inputs: ["nodeId"], outputs: ["update", "error"] }, { kind: "ngmodule", type: BreadcrumbModule }, { kind: "component", type: i3.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i7.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i7.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "directive", type: i7.MatTabContent, selector: "[matTabContent]" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i8.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: MetadataTabComponent, selector: "app-metadata-tab", inputs: ["node"] }, { kind: "component", type: CommentsTabComponent, selector: "app-comments-tab", inputs: ["node"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "component", type: ToolbarComponent, selector: "aca-toolbar", inputs: ["items"] }], encapsulation: i0.ViewEncapsulation.None });
123
+ DetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DetailsComponent, isStandalone: true, selector: "app-details-manager", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\">\n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab [disabled]=\"!canManagePermissions\" label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: PermissionManagerModule }, { kind: "component", type: i3.PermissionListComponent, selector: "adf-permission-list", inputs: ["nodeId"], outputs: ["update", "error"] }, { kind: "ngmodule", type: BreadcrumbModule }, { kind: "component", type: i3.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i7.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i7.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "directive", type: i7.MatTabContent, selector: "[matTabContent]" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i8.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: MetadataTabComponent, selector: "app-metadata-tab", inputs: ["node"] }, { kind: "component", type: CommentsTabComponent, selector: "app-comments-tab", inputs: ["node"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "component", type: ToolbarComponent, selector: "aca-toolbar", inputs: ["items"] }], encapsulation: i0.ViewEncapsulation.None });
110
124
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DetailsComponent, decorators: [{
111
125
  type: Component,
112
126
  args: [{ standalone: true, imports: [
@@ -122,6 +136,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
122
136
  CommentsTabComponent,
123
137
  PageLayoutComponent,
124
138
  ToolbarComponent
125
- ], selector: 'app-details-manager', encapsulation: ViewEncapsulation.None, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\"> \n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"] }]
139
+ ], selector: 'app-details-manager', encapsulation: ViewEncapsulation.None, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\">\n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab [disabled]=\"!canManagePermissions\" label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"] }]
126
140
  }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.ContentApiService }, { type: i3.ContentService }]; } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL2NvbXBvbmVudHMvZGV0YWlscy9kZXRhaWxzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9kZXRhaWxzL2RldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUUxRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBd0IzQyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsYUFBYTtJQVFqRCxZQUFvQixLQUFxQixFQUFVLFVBQTZCLEVBQVUsY0FBOEI7UUFDdEgsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTHhILGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3BDLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxrQkFBYSxHQUE0QixFQUFFLENBQUM7SUFLNUMsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztRQUN2QixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDdEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztnQkFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxzQkFBc0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDeEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0QsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVO2FBQ1osd0JBQXdCLEVBQUU7YUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDaEMsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsUUFBUSxPQUFPLEVBQUU7WUFDZixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQ25CLE1BQU07WUFDUixLQUFLLGFBQWE7Z0JBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQixNQUFNO1lBQ1IsS0FBSyxVQUFVLENBQUM7WUFDaEI7Z0JBQ0UsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFpQjtRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBZSxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksc0JBQXNCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQzs7NkdBaEVVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLHNHQy9EN0IsNnpFQW1EQSwwdENETkksWUFBWSxrSUFDWixlQUFlLDJGQUNmLHVCQUF1QiwwS0FDdkIsZ0JBQWdCLCtOQUNoQixhQUFhLG1MQUNiLGFBQWEsK1pBQ2Isb0JBQW9CLHdOQUNwQixlQUFlLDJWQUNmLG9CQUFvQiwrRUFDcEIsb0JBQW9CLCtFQUNwQixtQkFBbUIsa0ZBQ25CLGdCQUFnQjsyRkFPUCxnQkFBZ0I7a0JBckI1QixTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsdUJBQXVCO3dCQUN2QixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3FCQUNqQixZQUNTLHFCQUFxQixpQkFHaEIsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyMyBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQ29udGVudEFwaVNlcnZpY2UsIFBhZ2VDb21wb25lbnQsIFBhZ2VMYXlvdXRDb21wb25lbnQsIFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBOYXZpZ2F0ZVRvRm9sZGVyLCBOYXZpZ2F0ZVRvUHJldmlvdXNQYWdlLCBTZXRTZWxlY3RlZE5vZGVzQWN0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYk1vZHVsZSwgQ29udGVudFNlcnZpY2UsIFBlcm1pc3Npb25NYW5hZ2VyTW9kdWxlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb250ZW50LXNlcnZpY2VzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNZXRhZGF0YVRhYkNvbXBvbmVudCB9IGZyb20gJy4uL2luZm8tZHJhd2VyL21ldGFkYXRhLXRhYi9tZXRhZGF0YS10YWIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRzVGFiQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5mby1kcmF3ZXIvY29tbWVudHMtdGFiL2NvbW1lbnRzLXRhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZUVudHJ5LCBQYXRoRWxlbWVudCB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29udGVudEFjdGlvblJlZiB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBQZXJtaXNzaW9uTWFuYWdlck1vZHVsZSxcbiAgICBCcmVhZGNydW1iTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWV0YWRhdGFUYWJDb21wb25lbnQsXG4gICAgQ29tbWVudHNUYWJDb21wb25lbnQsXG4gICAgUGFnZUxheW91dENvbXBvbmVudCxcbiAgICBUb29sYmFyQ29tcG9uZW50XG4gIF0sXG4gIHNlbGVjdG9yOiAnYXBwLWRldGFpbHMtbWFuYWdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGV0YWlscy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERldGFpbHNDb21wb25lbnQgZXh0ZW5kcyBQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBub2RlSWQ6IHN0cmluZztcbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuICBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgYWN0aXZlVGFiID0gMTtcbiAgYXNwZWN0QWN0aW9uczogQXJyYXk8Q29udGVudEFjdGlvblJlZj4gPSBbXTtcbiAgbm9kZUljb246IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSBjb250ZW50QXBpOiBDb250ZW50QXBpU2VydmljZSwgcHJpdmF0ZSBjb250ZW50U2VydmljZTogQ29udGVudFNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgY29uc3QgeyByb3V0ZSB9ID0gdGhpcztcbiAgICBjb25zdCB7IGRhdGEgfSA9IHJvdXRlLnNuYXBzaG90O1xuICAgIHRoaXMudGl0bGUgPSBkYXRhLnRpdGxlO1xuXG4gICAgdGhpcy5yb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuc2V0QWN0aXZlVGFiKHBhcmFtcy5hY3RpdmVUYWIpO1xuICAgICAgdGhpcy5ub2RlSWQgPSBwYXJhbXMubm9kZUlkO1xuICAgICAgdGhpcy5jb250ZW50QXBpLmdldE5vZGUodGhpcy5ub2RlSWQpLnN1YnNjcmliZSgobm9kZSkgPT4ge1xuICAgICAgICB0aGlzLm5vZGUgPSBub2RlLmVudHJ5O1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBTZXRTZWxlY3RlZE5vZGVzQWN0aW9uKFt7IGVudHJ5OiB0aGlzLm5vZGUgfV0pKTtcbiAgICAgICAgdGhpcy5ub2RlSWNvbiA9IHRoaXMuY29udGVudFNlcnZpY2UuZ2V0Tm9kZUljb24odGhpcy5ub2RlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuZXh0ZW5zaW9uc1xuICAgICAgLmdldEFsbG93ZWRTaWRlYmFyQWN0aW9ucygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFzcGVjdEFjdGlvbnMpID0+IHtcbiAgICAgICAgdGhpcy5hc3BlY3RBY3Rpb25zID0gYXNwZWN0QWN0aW9ucztcbiAgICAgIH0pO1xuICB9XG5cbiAgc2V0QWN0aXZlVGFiKHRhYk5hbWU6IHN0cmluZykge1xuICAgIHN3aXRjaCAodGFiTmFtZSkge1xuICAgICAgY2FzZSAnY29tbWVudHMnOlxuICAgICAgICB0aGlzLmFjdGl2ZVRhYiA9IDE7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncGVybWlzc2lvbnMnOlxuICAgICAgICB0aGlzLmFjdGl2ZVRhYiA9IDI7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbWV0YWRhdGEnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5hY3RpdmVUYWIgPSAwO1xuICAgIH1cbiAgfVxuXG4gIGdvQmFjaygpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBOYXZpZ2F0ZVRvUHJldmlvdXNQYWdlKCkpO1xuICB9XG5cbiAgb25CcmVhZGNydW1iTmF2aWdhdGUocGF0aDogUGF0aEVsZW1lbnQpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBOYXZpZ2F0ZVRvRm9sZGVyKHsgZW50cnk6IHBhdGggfSBhcyBOb2RlRW50cnkpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IFNldFNlbGVjdGVkTm9kZXNBY3Rpb24oW10pKTtcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8YWNhLXBhZ2UtbGF5b3V0PlxuICA8ZGl2IGNsYXNzPVwiYWNhLXBhZ2UtbGF5b3V0LWhlYWRlclwiPlxuICAgIDxhZGYtYnJlYWRjcnVtYiBbcm9vdF09XCJ0aXRsZVwiIFtmb2xkZXJOb2RlXT1cIm5vZGVcIiAobmF2aWdhdGUpPVwib25CcmVhZGNydW1iTmF2aWdhdGUoJGV2ZW50KVwiPiA8L2FkZi1icmVhZGNydW1iPlxuICAgIDxhY2EtdG9vbGJhciBbaXRlbXNdPVwiYWN0aW9uc1wiPjwvYWNhLXRvb2xiYXI+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJhY2EtcGFnZS1sYXlvdXQtY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhY2EtZGV0YWlscy1jb250YWluZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhY2EtZGV0YWlscy10aXRsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWNhLWRldGFpbHMtYnJlYWRjcnVtYlwiIHJvbGU9XCJoZWFkaW5nXCIgYXJpYS1sZXZlbD1cIjJcIiAqbmdJZj1cIm5vZGVcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFjYS1kZXRhaWxzLWJyZWFkY3J1bWItbGlicmFyeVwiPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cImFjYS1kZXRhaWxzLWJyZWFkY3J1bWItaWNvblwiIGFsdD1cInt7ICdBUFAuSU5GT19EUkFXRVIuSUNPTicgfCB0cmFuc2xhdGUgfX1cIiBzcmM9XCJ7eyBub2RlSWNvbiB9fVwiPiAgICAgICBcbiAgICAgICAgICAgIHt7IG5vZGUubmFtZSB9fSA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWNzLWRldGFpbHMtYnV0dG9uc1wiPlxuICAgICAgICAgIDxhY2EtdG9vbGJhciBbaXRlbXNdPVwiYXNwZWN0QWN0aW9uc1wiIGluZm8tZHJhd2VyLWJ1dHRvbnM+PC9hY2EtdG9vbGJhcj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhY2EtY2xvc2UtZGV0YWlscy1idXR0b25cIlxuICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImNsb3NlLWxpYnJhcnlcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgJ0FQUC5JTkZPX0RSQVdFUi5SRURVQ0VfUEFORUwnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZ29CYWNrKClcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZnVsbHNjcmVlbl9leGl0PC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPG1hdC10YWItZ3JvdXAgW3NlbGVjdGVkSW5kZXhdPVwiYWN0aXZlVGFiXCIgY2xhc3M9XCJhY2EtZGV0YWlscy10YWJzXCIgYW5pbWF0aW9uRHVyYXRpb249XCIwXCI+XG4gICAgICAgIDxtYXQtdGFiIGxhYmVsPVwie3sgJ0FQUC5JTkZPX0RSQVdFUi5UQUJTLlBST1BFUlRJRVMnIHwgdHJhbnNsYXRlIH19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFRhYkNvbnRlbnQ+XG4gICAgICAgICAgICA8YXBwLW1ldGFkYXRhLXRhYiAqbmdJZj1cIm5vZGUgJiYgIWlzTG9hZGluZzsgZWxzZSBsb2FkaW5nXCIgW25vZGVdPVwibm9kZVwiPjwvYXBwLW1ldGFkYXRhLXRhYj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiIGxhYmVsPVwie3sgJ0FQUC5JTkZPX0RSQVdFUi5UQUJTLkNPTU1FTlRTJyB8IHRyYW5zbGF0ZSB9fVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRUYWJDb250ZW50PlxuICAgICAgICAgICAgPGFwcC1jb21tZW50cy10YWIgKm5nSWY9XCJub2RlICYmICFpc0xvYWRpbmc7IGVsc2UgbG9hZGluZ1wiIFtub2RlXT1cIm5vZGVcIj48L2FwcC1jb21tZW50cy10YWI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgICA8bWF0LXRhYiBsYWJlbD1cInt7ICdBUFAuSU5GT19EUkFXRVIuVEFCUy5QRVJNSVNTSU9OUycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0VGFiQ29udGVudD5cbiAgICAgICAgICAgIDxhZGYtcGVybWlzc2lvbi1saXN0ICpuZ0lmPVwibm9kZSAmJiAhaXNMb2FkaW5nOyBlbHNlIGxvYWRpbmdcIiBbbm9kZUlkXT1cIm5vZGUuaWRcIj48L2FkZi1wZXJtaXNzaW9uLWxpc3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgPC9tYXQtdGFiLWdyb3VwPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYWNhLXBhZ2UtbGF5b3V0PlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gIDxtYXQtcHJvZ3Jlc3MtYmFyIGNvbG9yPVwicHJpbWFyeVwiIG1vZGU9XCJpbmRldGVybWluYXRlXCI+PC9tYXQtcHJvZ3Jlc3MtYmFyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL2NvbXBvbmVudHMvZGV0YWlscy9kZXRhaWxzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9kZXRhaWxzL2RldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFxQixpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFB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LDJWQUNmLG9CQUFvQiwrRUFDcEIsb0JBQW9CLCtFQUNwQixtQkFBbUIsa0ZBQ25CLGdCQUFnQjsyRkFPUCxnQkFBZ0I7a0JBckI1QixTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsdUJBQXVCO3dCQUN2QixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3FCQUNqQixZQUNTLHFCQUFxQixpQkFHaEIsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyMyBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQ29udGVudEFwaVNlcnZpY2UsIFBhZ2VDb21wb25lbnQsIFBhZ2VMYXlvdXRDb21wb25lbnQsIFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBOYXZpZ2F0ZVRvRm9sZGVyLCBOYXZpZ2F0ZVRvUHJldmlvdXNQYWdlLCBTZXRTZWxlY3RlZE5vZGVzQWN0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYk1vZHVsZSwgQ29udGVudFNlcnZpY2UsIFBlcm1pc3Npb25NYW5hZ2VyTW9kdWxlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb250ZW50LXNlcnZpY2VzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNZXRhZGF0YVRhYkNvbXBvbmVudCB9IGZyb20gJy4uL2luZm8tZHJhd2VyL21ldGFkYXRhLXRhYi9tZXRhZGF0YS10YWIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRzVGFiQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5mby1kcmF3ZXIvY29tbWVudHMtdGFiL2NvbW1lbnRzLXRhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZUVudHJ5LCBQYXRoRWxlbWVudCB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29udGVudEFjdGlvblJlZiB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBQZXJtaXNzaW9uTWFuYWdlck1vZHVsZSxcbiAgICBCcmVhZGNydW1iTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWV0YWRhdGFUYWJDb21wb25lbnQsXG4gICAgQ29tbWVudHNUYWJDb21wb25lbnQsXG4gICAgUGFnZUxheW91dENvbXBvbmVudCxcbiAgICBUb29sYmFyQ29tcG9uZW50XG4gIF0sXG4gIHNlbGVjdG9yOiAnYXBwLWRldGFpbHMtbWFuYWdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGV0YWlscy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERldGFpbHNDb21wb25lbnQgZXh0ZW5kcyBQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBub2RlSWQ6IHN0cmluZztcbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuICBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgYWN0aXZlVGFiID0gMTtcbiAgYXNwZWN0QWN0aW9uczogQXJyYXk8Q29udGVudEFjdGlvblJlZj4gPSBbXTtcbiAgbm9kZUljb246IHN0cmluZztcbiAgY2FuTWFuYWdlUGVybWlzc2lvbnMgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGNvbnRlbnRBcGk6IENvbnRlbnRBcGlTZXJ2aWNlLCBwcml2YXRlIGNvbnRlbnRTZXJ2aWNlOiBDb250ZW50U2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICBjb25zdCB7IHJvdXRlIH0gPSB0aGlzO1xuICAgIGNvbnN0IHsgZGF0YSB9ID0gcm91dGUuc25hcHNob3Q7XG4gICAgdGhpcy50aXRsZSA9IGRhdGEudGl0bGU7XG4gICAgdGhpcy5yb3V0ZS5wYXJhbXMuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuc2V0QWN0aXZlVGFiKHBhcmFtcy5hY3RpdmVUYWIpO1xuICAgICAgdGhpcy5ub2RlSWQgPSBwYXJhbXMubm9kZUlkO1xuICAgICAgdGhpcy5jb250ZW50QXBpLmdldE5vZGUodGhpcy5ub2RlSWQpLnN1YnNjcmliZSgobm9kZSkgPT4ge1xuICAgICAgICB0aGlzLm5vZGUgPSBub2RlLmVudHJ5O1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNhbk1hbmFnZVBlcm1pc3Npb25zID0gIXRoaXMuaXNTbWFydEZvbGRlcigpO1xuICAgICAgICB0aGlzLnNldEFjdGl2ZVRhYihwYXJhbXMuYWN0aXZlVGFiKTtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgU2V0U2VsZWN0ZWROb2Rlc0FjdGlvbihbeyBlbnRyeTogdGhpcy5ub2RlIH1dKSk7XG4gICAgICAgIHRoaXMubm9kZUljb24gPSB0aGlzLmNvbnRlbnRTZXJ2aWNlLmdldE5vZGVJY29uKHRoaXMubm9kZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICB0aGlzLmV4dGVuc2lvbnNcbiAgICAgIC5nZXRBbGxvd2VkU2lkZWJhckFjdGlvbnMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChhc3BlY3RBY3Rpb25zKSA9PiB7XG4gICAgICAgIHRoaXMuYXNwZWN0QWN0aW9ucyA9IGFzcGVjdEFjdGlvbnM7XG4gICAgICB9KTtcbiAgfVxuXG4gIHNldEFjdGl2ZVRhYih0YWJOYW1lOiBzdHJpbmcpIHtcbiAgICBzd2l0Y2ggKHRhYk5hbWUpIHtcbiAgICAgIGNhc2UgJ2NvbW1lbnRzJzpcbiAgICAgICAgdGhpcy5hY3RpdmVUYWIgPSAxO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Blcm1pc3Npb25zJzpcbiAgICAgICAgaWYgKCF0aGlzLmNhbk1hbmFnZVBlcm1pc3Npb25zKSB7XG4gICAgICAgICAgdGhpcy5hY3RpdmVUYWIgPSAwO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWN0aXZlVGFiID0gMjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdtZXRhZGF0YSc6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmFjdGl2ZVRhYiA9IDA7XG4gICAgfVxuICB9XG5cbiAgZ29CYWNrKCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IE5hdmlnYXRlVG9QcmV2aW91c1BhZ2UoKSk7XG4gIH1cblxuICBvbkJyZWFkY3J1bWJOYXZpZ2F0ZShwYXRoOiBQYXRoRWxlbWVudCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IE5hdmlnYXRlVG9Gb2xkZXIoeyBlbnRyeTogcGF0aCB9IGFzIE5vZGVFbnRyeSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgU2V0U2VsZWN0ZWROb2Rlc0FjdGlvbihbXSkpO1xuICAgIHRoaXMub25EZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGlzU21hcnRGb2xkZXIoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLm5vZGU/LmlzRm9sZGVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IG5vZGVBc3BlY3RzID0gdGhpcy5ub2RlLmFzcGVjdE5hbWVzID8/IFtdO1xuICAgIHJldHVybiBub2RlQXNwZWN0cy5pbmNsdWRlcygnc21mOmN1c3RvbUNvbmZpZ1NtYXJ0Rm9sZGVyJykgfHwgbm9kZUFzcGVjdHMuaW5jbHVkZXMoJ3NtZjpzeXN0ZW1Db25maWdTbWFydEZvbGRlcicpO1xuICB9XG59XG4iLCI8YWNhLXBhZ2UtbGF5b3V0PlxuICA8ZGl2IGNsYXNzPVwiYWNhLXBhZ2UtbGF5b3V0LWhlYWRlclwiPlxuICAgIDxhZGYtYnJlYWRjcnVtYiBbcm9vdF09XCJ0aXRsZVwiIFtmb2xkZXJOb2RlXT1cIm5vZGVcIiAobmF2aWdhdGUpPVwib25CcmVhZGNydW1iTmF2aWdhdGUoJGV2ZW50KVwiPiA8L2FkZi1icmVhZGNydW1iPlxuICAgIDxhY2EtdG9vbGJhciBbaXRlbXNdPVwiYWN0aW9uc1wiPjwvYWNhLXRvb2xiYXI+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJhY2EtcGFnZS1sYXlvdXQtY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhY2EtZGV0YWlscy1jb250YWluZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhY2EtZGV0YWlscy10aXRsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWNhLWRldGFpbHMtYnJlYWRjcnVtYlwiIHJvbGU9XCJoZWFkaW5nXCIgYXJpYS1sZXZlbD1cIjJcIiAqbmdJZj1cIm5vZGVcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFjYS1kZXRhaWxzLWJyZWFkY3J1bWItbGlicmFyeVwiPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cImFjYS1kZXRhaWxzLWJyZWFkY3J1bWItaWNvblwiIGFsdD1cInt7ICdBUFAuSU5GT19EUkFXRVIuSUNPTicgfCB0cmFuc2xhdGUgfX1cIiBzcmM9XCJ7eyBub2RlSWNvbiB9fVwiPlxuICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19IDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3MtZGV0YWlscy1idXR0b25zXCI+XG4gICAgICAgICAgPGFjYS10b29sYmFyIFtpdGVtc109XCJhc3BlY3RBY3Rpb25zXCIgaW5mby1kcmF3ZXItYnV0dG9ucz48L2FjYS10b29sYmFyPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBjbGFzcz1cImFjYS1jbG9zZS1kZXRhaWxzLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiY2xvc2UtbGlicmFyeVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyAnQVBQLklORk9fRFJBV0VSLlJFRFVDRV9QQU5FTCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJnb0JhY2soKVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5mdWxsc2NyZWVuX2V4aXQ8L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8bWF0LXRhYi1ncm91cCBbc2VsZWN0ZWRJbmRleF09XCJhY3RpdmVUYWJcIiBjbGFzcz1cImFjYS1kZXRhaWxzLXRhYnNcIiBhbmltYXRpb25EdXJhdGlvbj1cIjBcIj5cbiAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJ7eyAnQVBQLklORk9fRFJBV0VSLlRBQlMuUFJPUEVSVElFUycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0VGFiQ29udGVudD5cbiAgICAgICAgICAgIDxhcHAtbWV0YWRhdGEtdGFiICpuZ0lmPVwibm9kZSAmJiAhaXNMb2FkaW5nOyBlbHNlIGxvYWRpbmdcIiBbbm9kZV09XCJub2RlXCI+PC9hcHAtbWV0YWRhdGEtdGFiPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbWF0LXRhYj5cbiAgICAgICAgPG1hdC10YWIgbGFiZWw9XCJ7eyAnQVBQLklORk9fRFJBV0VSLlRBQlMuQ09NTUVOVFMnIHwgdHJhbnNsYXRlIH19XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFRhYkNvbnRlbnQ+XG4gICAgICAgICAgICA8YXBwLWNvbW1lbnRzLXRhYiAqbmdJZj1cIm5vZGUgJiYgIWlzTG9hZGluZzsgZWxzZSBsb2FkaW5nXCIgW25vZGVdPVwibm9kZVwiPjwvYXBwLWNvbW1lbnRzLXRhYj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiIFtkaXNhYmxlZF09XCIhY2FuTWFuYWdlUGVybWlzc2lvbnNcIiBsYWJlbD1cInt7ICdBUFAuSU5GT19EUkFXRVIuVEFCUy5QRVJNSVNTSU9OUycgfCB0cmFuc2xhdGUgfX1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgbWF0VGFiQ29udGVudD5cbiAgICAgICAgICAgIDxhZGYtcGVybWlzc2lvbi1saXN0ICpuZ0lmPVwibm9kZSAmJiAhaXNMb2FkaW5nOyBlbHNlIGxvYWRpbmdcIiBbbm9kZUlkXT1cIm5vZGUuaWRcIj48L2FkZi1wZXJtaXNzaW9uLWxpc3Q+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9tYXQtdGFiPlxuICAgICAgPC9tYXQtdGFiLWdyb3VwPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYWNhLXBhZ2UtbGF5b3V0PlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gIDxtYXQtcHJvZ3Jlc3MtYmFyIGNvbG9yPVwicHJpbWFyeVwiIG1vZGU9XCJpbmRldGVybWluYXRlXCI+PC9tYXQtcHJvZ3Jlc3MtYmFyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -7883,6 +7883,7 @@ class DetailsComponent extends PageComponent {
7883
7883
  this.onDestroy$ = new Subject();
7884
7884
  this.activeTab = 1;
7885
7885
  this.aspectActions = [];
7886
+ this.canManagePermissions = true;
7886
7887
  }
7887
7888
  ngOnInit() {
7888
7889
  super.ngOnInit();
@@ -7897,6 +7898,8 @@ class DetailsComponent extends PageComponent {
7897
7898
  this.contentApi.getNode(this.nodeId).subscribe((node) => {
7898
7899
  this.node = node.entry;
7899
7900
  this.isLoading = false;
7901
+ this.canManagePermissions = !this.isSmartFolder();
7902
+ this.setActiveTab(params.activeTab);
7900
7903
  this.store.dispatch(new SetSelectedNodesAction([{ entry: this.node }]));
7901
7904
  this.nodeIcon = this.contentService.getNodeIcon(this.node);
7902
7905
  });
@@ -7914,6 +7917,10 @@ class DetailsComponent extends PageComponent {
7914
7917
  this.activeTab = 1;
7915
7918
  break;
7916
7919
  case 'permissions':
7920
+ if (!this.canManagePermissions) {
7921
+ this.activeTab = 0;
7922
+ break;
7923
+ }
7917
7924
  this.activeTab = 2;
7918
7925
  break;
7919
7926
  case 'metadata':
@@ -7932,9 +7939,17 @@ class DetailsComponent extends PageComponent {
7932
7939
  this.onDestroy$.next();
7933
7940
  this.onDestroy$.complete();
7934
7941
  }
7942
+ isSmartFolder() {
7943
+ var _a, _b;
7944
+ if (!((_a = this.node) === null || _a === void 0 ? void 0 : _a.isFolder)) {
7945
+ return false;
7946
+ }
7947
+ const nodeAspects = (_b = this.node.aspectNames) !== null && _b !== void 0 ? _b : [];
7948
+ return nodeAspects.includes('smf:customConfigSmartFolder') || nodeAspects.includes('smf:systemConfigSmartFolder');
7949
+ }
7935
7950
  }
7936
7951
  DetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DetailsComponent, deps: [{ token: i2.ActivatedRoute }, { token: i3.ContentApiService }, { token: i1$1.ContentService }], target: i0.ɵɵFactoryTarget.Component });
7937
- DetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DetailsComponent, isStandalone: true, selector: "app-details-manager", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\"> \n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: PermissionManagerModule }, { kind: "component", type: i1$1.PermissionListComponent, selector: "adf-permission-list", inputs: ["nodeId"], outputs: ["update", "error"] }, { kind: "ngmodule", type: BreadcrumbModule }, { kind: "component", type: i1$1.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i7$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i7$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "directive", type: i7$2.MatTabContent, selector: "[matTabContent]" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i6$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: MetadataTabComponent, selector: "app-metadata-tab", inputs: ["node"] }, { kind: "component", type: CommentsTabComponent, selector: "app-comments-tab", inputs: ["node"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "component", type: ToolbarComponent, selector: "aca-toolbar", inputs: ["items"] }], encapsulation: i0.ViewEncapsulation.None });
7952
+ DetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DetailsComponent, isStandalone: true, selector: "app-details-manager", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\">\n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab [disabled]=\"!canManagePermissions\" label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: PermissionManagerModule }, { kind: "component", type: i1$1.PermissionListComponent, selector: "adf-permission-list", inputs: ["nodeId"], outputs: ["update", "error"] }, { kind: "ngmodule", type: BreadcrumbModule }, { kind: "component", type: i1$1.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i7$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i7$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "directive", type: i7$2.MatTabContent, selector: "[matTabContent]" }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i6$2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: MetadataTabComponent, selector: "app-metadata-tab", inputs: ["node"] }, { kind: "component", type: CommentsTabComponent, selector: "app-comments-tab", inputs: ["node"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "component", type: ToolbarComponent, selector: "aca-toolbar", inputs: ["items"] }], encapsulation: i0.ViewEncapsulation.None });
7938
7953
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DetailsComponent, decorators: [{
7939
7954
  type: Component,
7940
7955
  args: [{ standalone: true, imports: [
@@ -7950,7 +7965,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
7950
7965
  CommentsTabComponent,
7951
7966
  PageLayoutComponent,
7952
7967
  ToolbarComponent
7953
- ], selector: 'app-details-manager', encapsulation: ViewEncapsulation.None, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\"> \n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"] }]
7968
+ ], selector: 'app-details-manager', encapsulation: ViewEncapsulation.None, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <adf-breadcrumb [root]=\"title\" [folderNode]=\"node\" (navigate)=\"onBreadcrumbNavigate($event)\"> </adf-breadcrumb>\n <aca-toolbar [items]=\"actions\"></aca-toolbar>\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-details-container\">\n <div class=\"aca-details-title\">\n <div class=\"aca-details-breadcrumb\" role=\"heading\" aria-level=\"2\" *ngIf=\"node\">\n <span class=\"aca-details-breadcrumb-library\">\n <img class=\"aca-details-breadcrumb-icon\" alt=\"{{ 'APP.INFO_DRAWER.ICON' | translate }}\" src=\"{{ nodeIcon }}\">\n {{ node.name }} </span>\n </div>\n <div class=\"acs-details-buttons\">\n <aca-toolbar [items]=\"aspectActions\" info-drawer-buttons></aca-toolbar>\n <button\n class=\"aca-close-details-button\"\n mat-icon-button\n data-automation-id=\"close-library\"\n title=\"{{ 'APP.INFO_DRAWER.REDUCE_PANEL' | translate }}\"\n (click)=\"goBack()\">\n <mat-icon>fullscreen_exit</mat-icon>\n </button>\n </div>\n </div>\n\n <mat-tab-group [selectedIndex]=\"activeTab\" class=\"aca-details-tabs\" animationDuration=\"0\">\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.PROPERTIES' | translate }}\">\n <ng-template matTabContent>\n <app-metadata-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-metadata-tab>\n </ng-template>\n </mat-tab>\n <mat-tab label=\"{{ 'APP.INFO_DRAWER.TABS.COMMENTS' | translate }}\">\n <ng-template matTabContent>\n <app-comments-tab *ngIf=\"node && !isLoading; else loading\" [node]=\"node\"></app-comments-tab>\n </ng-template>\n </mat-tab>\n <mat-tab [disabled]=\"!canManagePermissions\" label=\"{{ 'APP.INFO_DRAWER.TABS.PERMISSIONS' | translate }}\">\n <ng-template matTabContent>\n <adf-permission-list *ngIf=\"node && !isLoading; else loading\" [nodeId]=\"node.id\"></adf-permission-list>\n </ng-template>\n </mat-tab>\n </mat-tab-group>\n </div>\n </div>\n</aca-page-layout>\n\n<ng-template #loading>\n <mat-progress-bar color=\"primary\" mode=\"indeterminate\"></mat-progress-bar>\n</ng-template>\n", styles: ["app-details-manager .acs-details-buttons{display:flex}app-details-manager .acs-details-buttons .aca-close-details-button{margin-right:15px;margin-top:12px;outline:none;border-radius:4px}app-details-manager .acs-details-buttons .aca-close-details-button:focus{background-color:var(--theme-selected-background-color);outline:2px solid var(--theme-blue-button-color);border-radius:4px}.aca-details-container{background-color:var(--theme-card-background-color);width:100%}.aca-details-tabs{margin-top:40px;height:calc(100% - 136px)}.aca-details-tabs .mat-tab-body-wrapper{height:100%}.aca-details-tabs .mat-tab-list{margin-left:50px}.aca-details-tabs .mat-tab-list .mat-tab-labels .mat-tab-label{padding:0 12px;min-width:95px;letter-spacing:.25px;height:32px}.aca-details-title{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--theme-metadata-property-panel-title-color);text-overflow:ellipsis;white-space:normal}.aca-details-breadcrumb{font-size:18px;margin-left:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.aca-details-breadcrumb-library{font-weight:900}.aca-details-breadcrumb-icon{display:inline-block;vertical-align:text-bottom}\n"] }]
7954
7969
  }], ctorParameters: function () { return [{ type: i2.ActivatedRoute }, { type: i3.ContentApiService }, { type: i1$1.ContentService }]; } });
7955
7970
 
7956
7971
  /*!