ngx-edu-sharing-ui 10.0.1 → 10.0.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.
- package/assets/scss/variables.scss +2 -0
- package/esm2022/lib/node-entries/node-entries-global-options/node-entries-global-options.component.mjs +2 -2
- package/esm2022/lib/node-entries/node-entries.component.mjs +2 -1
- package/esm2022/lib/pipes/node-title.pipe.mjs +3 -2
- package/esm2022/lib/services/options-helper-data.service.mjs +23 -15
- package/esm2022/lib/types/option-item.mjs +2 -1
- package/esm2022/lib/util/rest-helper.mjs +5 -3
- package/fesm2022/ngx-edu-sharing-ui.mjs +28 -17
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
- package/lib/list-items/list-text/list-text.component.d.ts +1 -1
- package/lib/list-items/list-widget.d.ts +1 -1
- package/lib/node-entries/node-entries-card/node-entries-card.component.d.ts +1 -1
- package/lib/node-entries/node-entries.component.d.ts +1 -0
- package/lib/services/options-helper-data.service.d.ts +4 -2
- package/lib/types/option-item.d.ts +1 -0
- package/package.json +2 -2
|
@@ -16,11 +16,11 @@ export class NodeEntriesGlobalOptionsComponent {
|
|
|
16
16
|
return this.entriesService.globalOptionsSubject.pipe(map((options) => options.filter((e) => e.isEnabled)));
|
|
17
17
|
}
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesGlobalOptionsComponent, deps: [{ token: i1.NodeEntriesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeEntriesGlobalOptionsComponent, selector: "es-node-entries-global-options", inputs: { displayType: "displayType" }, ngImport: i0, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeEntriesGlobalOptionsComponent, selector: "es-node-entries-global-options", inputs: { displayType: "displayType" }, ngImport: i0, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #6d176e;--aiColorText: #fff;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesGlobalOptionsComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
|
-
args: [{ selector: 'es-node-entries-global-options', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"] }]
|
|
23
|
+
args: [{ selector: 'es-node-entries-global-options', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #6d176e;--aiColorText: #fff;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"] }]
|
|
24
24
|
}], ctorParameters: () => [{ type: i1.NodeEntriesService }], propDecorators: { displayType: [{
|
|
25
25
|
type: Input
|
|
26
26
|
}] } });
|
|
@@ -26,6 +26,7 @@ export class NodeEntriesComponent {
|
|
|
26
26
|
this.translate = translate;
|
|
27
27
|
this.NodeEntriesDisplayType = NodeEntriesDisplayType;
|
|
28
28
|
this.destroyed = new Subject();
|
|
29
|
+
this.updateKeyboardShortcuts = new Subject();
|
|
29
30
|
}
|
|
30
31
|
ngOnInit() {
|
|
31
32
|
if (this.entriesService.primaryInstance) {
|
|
@@ -128,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
128
129
|
type: ViewChild,
|
|
129
130
|
args: [MatPaginator]
|
|
130
131
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9ub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFHVCxRQUFRLEVBQ1IsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSw2QkFBNkIsQ0FBQztBQUd0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUF1QixzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSzlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNXLGlCQUFvQyxFQUNwQyxvQkFBOEMsRUFDOUMsY0FBcUMsRUFDckMsZ0JBQTZDLEVBQ2hDLHVCQUFpRCxFQUM3RCxLQUFxQixFQUNyQixTQUEyQjtRQU41QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUEwQjtRQUM3RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFr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QUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUMvQixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUTtZQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDckIsS0FBSyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7SUFDUCxDQUFDOytHQTFIUSxvQkFBb0I7bUdBQXBCLG9CQUFvQixrR0FLbEIsWUFBWSxnREMvQjNCLGszQ0FpQ0E7OzRGRFBhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDSSxpQkFBaUI7OzBCQWtCdEIsUUFBUTtxR0FUWSxTQUFTO3NCQUFqQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFBhZ2luYXRvciwgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0RhdGFUeXBlLCBOb2RlRW50cmllc0Rpc3BsYXlUeXBlIH0gZnJvbSAnLi9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzR2xvYmFsU2VydmljZSB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLWdsb2JhbC5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZSB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLXRlbXBsYXRlcy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL25vZGUtZW50cmllcy5zZXJ2aWNlJztcbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fic3RyYWN0L2tleWJvYXJkLXNob3J0Y3V0cy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVEYXRhU291cmNlUmVtb3RlIH0gZnJvbSAnLi9ub2RlLWRhdGEtc291cmNlLXJlbW90ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXMtbm9kZS1lbnRyaWVzJyxcbiAgICB0ZW1wbGF0ZVVybDogJ25vZGUtZW50cmllcy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtZW50cmllcy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlRW50cmllc0NvbXBvbmVudDxUIGV4dGVuZHMgTm9kZUVudHJpZXNEYXRhVHlwZT5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gICAgcmVhZG9ubHkgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSA9IE5vZGVFbnRyaWVzRGlzcGxheVR5cGU7XG5cbiAgICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvcikgcGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIGVudHJpZXNHbG9iYWxTZXJ2aWNlOiBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBlbnRyaWVzU2VydmljZTogTm9kZUVudHJpZXNTZXJ2aWNlPFQ+LFxuICAgICAgICBwdWJsaWMgdGVtcGxhdGVzU2VydmljZTogTm9kZUVudHJpZXNUZW1wbGF0ZXNTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGdsb2JhbEtleWJvYXJkU2hvcnRjdXRzOiBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZW50cmllc1NlcnZpY2UucHJpbWFyeUluc3RhbmNlKSB7XG4gICAgICAgICAgICB0aGlzLnJlZ2lzdGVyR2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlIGluc3RhbmNlb2YgTm9kZURhdGFTb3VyY2VSZW1vdGUpIHtcbiAgICAgICAgICAgIC8vIFdlIGRvbid0IHJlcXVpcmUgYHNvcnRgIHRvIGJlIGRlZmluZWQsIGJ1dCBpZiBpdCBpcyBzZXQgYnV0IG5vdCB5ZXQgcmVhZHkgKGBudWxsYCksXG4gICAgICAgICAgICAvLyB3ZSB3YWl0IGZvciBpdHMgdmFsdWUgYmVmb3JlIGluaXRpYWxpemluZyB0aGUgZGF0YSBzb3VyY2UsIHNvIHRoZSBmaXJzdCByZXF1ZXN0IGlzXG4gICAgICAgICAgICAvLyBzZW50IHdpdGggdGhlIGNvcnJlY3Qgc29ydCBjb25maWd1cmF0aW9uLiBUaGF0IGlzIHdoeSB3ZSBleHBsaWNpdGx5IGRvIG5vdCBkcm9wXG4gICAgICAgICAgICAvLyBgdW5kZWZpbmVkYCB3aXRoIHRoZSBgZmlyc3RgIG9wZXJhdG9yIGJlbG93LlxuICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zb3J0U3ViamVjdFxuICAgICAgICAgICAgICAgIC5waXBlKGZpcnN0KChzb3J0KSA9PiBzb3J0ICE9PSBudWxsKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdFJlbW90ZURhdGFTb3VyY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UgYXMgTm9kZURhdGFTb3VyY2VSZW1vdGU8VD4sXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMucGFnaW5hdG9yKSB7XG4gICAgICAgICAgICB2b2lkIHRoaXMuaW5pdFBhZ2luYXRvcih0aGlzLnBhZ2luYXRvcik7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCkge1xuICAgICAgICB0aGlzLmdsb2JhbEtleWJvYXJkU2hvcnRjdXRzLnJlZ2lzdGVyKFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJzOiBbJ0N0cmwvQ21kJ10sXG4gICAgICAgICAgICAgICAgICAgIGtleUNvZGU6ICdLZXlBJyxcbiAgICAgICAgICAgICAgICAgICAgaWdub3JlV2hlbjogKGV2ZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU21hbGxHcmlkIGRvZXNuJ3Qgc3VwcG9ydCBzZWxlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPT09IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuU21hbGxHcmlkLFxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5lbnRyaWVzU2VydmljZS50b2dnbGVTZWxlY3RBbGwoKSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHsgdW50aWw6IHRoaXMuZGVzdHJveWVkIH0sXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0UmVtb3RlRGF0YVNvdXJjZShkYXRhU291cmNlOiBOb2RlRGF0YVNvdXJjZVJlbW90ZTxUPik6IHZvaWQge1xuICAgICAgICBjb25zdCBwYWdlU2l6ZSA9IHRoaXMuZW50cmllc0dsb2JhbFNlcnZpY2UuZ2V0UGFnaW5hdG9yU2l6ZU9wdGlvbnMoXG4gICAgICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNjb3BlLFxuICAgICAgICApWzBdO1xuICAgICAgICBkYXRhU291cmNlLmluaXQoe1xuICAgICAgICAgICAgcGFnaW5hdGlvbkNvbmZpZzoge1xuICAgICAgICAgICAgICAgIGRlZmF1bHRQYWdlU2l6ZTogcGFnZVNpemUsXG4gICAgICAgICAgICAgICAgc3RyYXRlZ3k6IHRoaXMuZW50cmllc1NlcnZpY2UucGFnaW5hdGlvblN0cmF0ZWd5LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlZmF1bHRTb3J0OiB0aGlzLmVudHJpZXNTZXJ2aWNlLnNvcnQsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5lbnRyaWVzU2VydmljZS5wcmltYXJ5SW5zdGFuY2UpIHtcbiAgICAgICAgICAgIC8vIEF1dG9tYXRpYyBxdWVyeS1wYXJhbXMgaGFuZGxpbmcgaXMgb25seSBzdXBwb3J0ZWQgYnkgbm9kZS1kYXRhLXNvdXJjZS1yZW1vdGUuXG4gICAgICAgICAgICBkYXRhU291cmNlLnJlZ2lzdGVyUXVlcnlQYXJhbWV0ZXJzKHRoaXMucm91dGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBpbml0UGFnaW5hdG9yKHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yKSB7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5pdGVtc1BlclBhZ2VMYWJlbCA9IGF3YWl0IHRoaXMudHJhbnNsYXRlXG4gICAgICAgICAgICAuZ2V0KCdQQUdJTkFUT1IuaXRlbXNQZXJQYWdlTGFiZWwnKVxuICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICBwYWdpbmF0b3IuX2ludGwubmV4dFBhZ2VMYWJlbCA9IGF3YWl0IHRoaXMudHJhbnNsYXRlXG4gICAgICAgICAgICAuZ2V0KCdQQUdJTkFUT1IubmV4dFBhZ2VMYWJlbCcpXG4gICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5wcmV2aW91c1BhZ2VMYWJlbCA9IGF3YWl0IHRoaXMudHJhbnNsYXRlXG4gICAgICAgICAgICAuZ2V0KCdQQUdJTkFUT1IucHJldmlvdXNQYWdlTGFiZWwnKVxuICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICBwYWdpbmF0b3IuX2ludGwuZ2V0UmFuZ2VMYWJlbCA9IChwYWdlLCBwYWdlU2l6ZSwgbGVuZ3RoKSA9PlxuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnUEFHSU5BVE9SLmdldFJhbmdlTGFiZWwnLCB7XG4gICAgICAgICAgICAgICAgcGFnZTogcGFnZSArIDEsXG4gICAgICAgICAgICAgICAgcGFnZVNpemUsXG4gICAgICAgICAgICAgICAgbGVuZ3RoLFxuICAgICAgICAgICAgICAgIHBhZ2VDb3VudDogTWF0aC5jZWlsKGxlbmd0aCAvIHBhZ2VTaXplKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAvLyBDb25uZWN0IGRhdGEgc291cmNlLlxuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSkuc3Vic2NyaWJlKChkYXRhU291cmNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoZGF0YVNvdXJjZSBpbnN0YW5jZW9mIE5vZGVEYXRhU291cmNlUmVtb3RlKSB7XG4gICAgICAgICAgICAgICAgKGRhdGFTb3VyY2UgYXMgTm9kZURhdGFTb3VyY2VSZW1vdGUpLnBhZ2luYXRvciA9IHBhZ2luYXRvcjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcGFnaW5hdG9yLmxlbmd0aCA9IGRhdGFTb3VyY2U/LmdldFRvdGFsKCk7XG4gICAgICAgICAgICAgICAgZGF0YVNvdXJjZVxuICAgICAgICAgICAgICAgICAgICA/LmNvbm5lY3RQYWdpbmF0aW9uKClcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWdpbmF0b3IubGVuZ3RoID0gZGF0YVNvdXJjZS5nZXRUb3RhbCgpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb3BlblBhZ2UocGFnZTogUGFnZUV2ZW50KSB7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZmV0Y2hEYXRhLmVtaXQoe1xuICAgICAgICAgICAgb2Zmc2V0OiBwYWdlLnBhZ2VJbmRleCAqIHBhZ2UucGFnZVNpemUsXG4gICAgICAgICAgICBhbW91bnQ6IHBhZ2UucGFnZVNpemUsXG4gICAgICAgICAgICByZXNldDogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRvcC1tYXR0ZXJcIj5cbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlc1NlcnZpY2UudGl0bGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXNTZXJ2aWNlLmVudHJpZXNUb3BNYXR0ZXJcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2VcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID09PSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLlRhYmxlXCI+XG4gICAgPGVzLW5vZGUtZW50cmllcy10YWJsZT48L2VzLW5vZGUtZW50cmllcy10YWJsZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXJcbiAgICAqbmdJZj1cIlxuICAgICAgZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPT09IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuU21hbGxHcmlkIHx8XG4gICAgICBlbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5HcmlkXG4gICAgXCJcbiAgPlxuICAgIDxlcy1ub2RlLWVudHJpZXMtY2FyZC1ncmlkIFtkaXNwbGF5VHlwZV09XCJlbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZVwiPlxuICAgIDwvZXMtbm9kZS1lbnRyaWVzLWNhcmQtZ3JpZD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzRW1wdHkoKSAmJiAhZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0xvYWRpbmdcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVzU2VydmljZS5lbXB0eVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuPG1hdC1wYWdpbmF0b3JcbiAgI3BhZ2luYXRvclxuICBbcGFnZVNpemVPcHRpb25zXT1cImVudHJpZXNHbG9iYWxTZXJ2aWNlLmdldFBhZ2luYXRvclNpemVPcHRpb25zKGVudHJpZXNTZXJ2aWNlLnNjb3BlKVwiXG4gICpuZ0lmPVwiZW50cmllc1NlcnZpY2UucGFnaW5hdGlvblN0cmF0ZWd5ID09PSAncGFnaW5hdG9yJ1wiXG4gIFtjbGFzcy5kaXNwbGF5LW5vbmVdPVwiXG4gICAgKGVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNMb2FkaW5nICYmIGVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNMb2FkaW5nICE9PSAncGFnZScpIHx8XG4gICAgZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0VtcHR5KClcbiAgXCJcbiAgKHBhZ2UpPVwib3BlblBhZ2UoJGV2ZW50KVwiXG4+PC9tYXQtcGFnaW5hdG9yPlxuIl19
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9ub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFHVCxRQUFRLEVBQ1IsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSw2QkFBNkIsQ0FBQztBQUd0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBVSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUQsT0FBTyxFQUF1QixzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSzlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLG9CQUFvQjtJQVU3QixZQUNXLGlCQUFvQyxFQUNwQyxvQkFBOEMsRUFDOUMsY0FBcUMsRUFDckMsZ0JBQTZDLEVBQ2hDLHVCQUFpRCxFQUM3RCxLQUFxQixFQUNyQixTQUEyQjtRQU41QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUEwQjtRQUM3RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFr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UUFBUSxDQUFDLElBQWU7UUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQy9CLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNyQixLQUFLLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBM0hRLG9CQUFvQjttR0FBcEIsb0JBQW9CLGtHQUtsQixZQUFZLGdEQy9CM0IsazNDQWlDQTs7NEZEUGEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNJLGlCQUFpQjs7MEJBbUJ0QixRQUFRO3FHQVZZLFNBQVM7c0JBQWpDLFNBQVM7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9yLCBQYWdlRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNEYXRhVHlwZSwgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSB9IGZyb20gJy4vZW50cmllcy1tb2RlbCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy1nbG9iYWwuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1RlbXBsYXRlc1NlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy10ZW1wbGF0ZXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWVudHJpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hYnN0cmFjdC9rZXlib2FyZC1zaG9ydGN1dHMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRGF0YVNvdXJjZVJlbW90ZSB9IGZyb20gJy4vbm9kZS1kYXRhLXNvdXJjZS1yZW1vdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VzLW5vZGUtZW50cmllcycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydub2RlLWVudHJpZXMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZUVudHJpZXNDb21wb25lbnQ8VCBleHRlbmRzIE5vZGVFbnRyaWVzRGF0YVR5cGU+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICAgIHJlYWRvbmx5IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUgPSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlO1xuXG4gICAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXBkYXRlS2V5Ym9hcmRTaG9ydGN1dHMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHB1YmxpYyBlbnRyaWVzR2xvYmFsU2VydmljZTogTm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgZW50cmllc1NlcnZpY2U6IE5vZGVFbnRyaWVzU2VydmljZTxUPixcbiAgICAgICAgcHVibGljIHRlbXBsYXRlc1NlcnZpY2U6IE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBnbG9iYWxLZXlib2FyZFNob3J0Y3V0czogS2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXNTZXJ2aWNlLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy5yZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZSBpbnN0YW5jZW9mIE5vZGVEYXRhU291cmNlUmVtb3RlKSB7XG4gICAgICAgICAgICAvLyBXZSBkb24ndCByZXF1aXJlIGBzb3J0YCB0byBiZSBkZWZpbmVkLCBidXQgaWYgaXQgaXMgc2V0IGJ1dCBub3QgeWV0IHJlYWR5IChgbnVsbGApLFxuICAgICAgICAgICAgLy8gd2Ugd2FpdCBmb3IgaXRzIHZhbHVlIGJlZm9yZSBpbml0aWFsaXppbmcgdGhlIGRhdGEgc291cmNlLCBzbyB0aGUgZmlyc3QgcmVxdWVzdCBpc1xuICAgICAgICAgICAgLy8gc2VudCB3aXRoIHRoZSBjb3JyZWN0IHNvcnQgY29uZmlndXJhdGlvbi4gVGhhdCBpcyB3aHkgd2UgZXhwbGljaXRseSBkbyBub3QgZHJvcFxuICAgICAgICAgICAgLy8gYHVuZGVmaW5lZGAgd2l0aCB0aGUgYGZpcnN0YCBvcGVyYXRvciBiZWxvdy5cbiAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydFN1YmplY3RcbiAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgoc29ydCkgPT4gc29ydCAhPT0gbnVsbCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRSZW1vdGVEYXRhU291cmNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlIGFzIE5vZGVEYXRhU291cmNlUmVtb3RlPFQ+LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgdm9pZCB0aGlzLmluaXRQYWdpbmF0b3IodGhpcy5wYWdpbmF0b3IpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVnaXN0ZXJHbG9iYWxLZXlib2FyZFNob3J0Y3V0cygpIHtcbiAgICAgICAgdGhpcy5nbG9iYWxLZXlib2FyZFNob3J0Y3V0cy5yZWdpc3RlcihcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyczogWydDdHJsL0NtZCddLFxuICAgICAgICAgICAgICAgICAgICBrZXlDb2RlOiAnS2V5QScsXG4gICAgICAgICAgICAgICAgICAgIGlnbm9yZVdoZW46IChldmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNtYWxsR3JpZCBkb2Vzbid0IHN1cHBvcnQgc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID09PSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLlNtYWxsR3JpZCxcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6ICgpID0+IHRoaXMuZW50cmllc1NlcnZpY2UudG9nZ2xlU2VsZWN0QWxsKCksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB7IHVudGlsOiB0aGlzLmRlc3Ryb3llZCB9LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFJlbW90ZURhdGFTb3VyY2UoZGF0YVNvdXJjZTogTm9kZURhdGFTb3VyY2VSZW1vdGU8VD4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFnZVNpemUgPSB0aGlzLmVudHJpZXNHbG9iYWxTZXJ2aWNlLmdldFBhZ2luYXRvclNpemVPcHRpb25zKFxuICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zY29wZSxcbiAgICAgICAgKVswXTtcbiAgICAgICAgZGF0YVNvdXJjZS5pbml0KHtcbiAgICAgICAgICAgIHBhZ2luYXRpb25Db25maWc6IHtcbiAgICAgICAgICAgICAgICBkZWZhdWx0UGFnZVNpemU6IHBhZ2VTaXplLFxuICAgICAgICAgICAgICAgIHN0cmF0ZWd5OiB0aGlzLmVudHJpZXNTZXJ2aWNlLnBhZ2luYXRpb25TdHJhdGVneSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkZWZhdWx0U29ydDogdGhpcy5lbnRyaWVzU2VydmljZS5zb3J0LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuZW50cmllc1NlcnZpY2UucHJpbWFyeUluc3RhbmNlKSB7XG4gICAgICAgICAgICAvLyBBdXRvbWF0aWMgcXVlcnktcGFyYW1zIGhhbmRsaW5nIGlzIG9ubHkgc3VwcG9ydGVkIGJ5IG5vZGUtZGF0YS1zb3VyY2UtcmVtb3RlLlxuICAgICAgICAgICAgZGF0YVNvdXJjZS5yZWdpc3RlclF1ZXJ5UGFyYW1ldGVycyh0aGlzLnJvdXRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgaW5pdFBhZ2luYXRvcihwYWdpbmF0b3I6IE1hdFBhZ2luYXRvcikge1xuICAgICAgICBwYWdpbmF0b3IuX2ludGwuaXRlbXNQZXJQYWdlTGFiZWwgPSBhd2FpdCB0aGlzLnRyYW5zbGF0ZVxuICAgICAgICAgICAgLmdldCgnUEFHSU5BVE9SLml0ZW1zUGVyUGFnZUxhYmVsJylcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLm5leHRQYWdlTGFiZWwgPSBhd2FpdCB0aGlzLnRyYW5zbGF0ZVxuICAgICAgICAgICAgLmdldCgnUEFHSU5BVE9SLm5leHRQYWdlTGFiZWwnKVxuICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICBwYWdpbmF0b3IuX2ludGwucHJldmlvdXNQYWdlTGFiZWwgPSBhd2FpdCB0aGlzLnRyYW5zbGF0ZVxuICAgICAgICAgICAgLmdldCgnUEFHSU5BVE9SLnByZXZpb3VzUGFnZUxhYmVsJylcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLmdldFJhbmdlTGFiZWwgPSAocGFnZSwgcGFnZVNpemUsIGxlbmd0aCkgPT5cbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ1BBR0lOQVRPUi5nZXRSYW5nZUxhYmVsJywge1xuICAgICAgICAgICAgICAgIHBhZ2U6IHBhZ2UgKyAxLFxuICAgICAgICAgICAgICAgIHBhZ2VTaXplLFxuICAgICAgICAgICAgICAgIGxlbmd0aCxcbiAgICAgICAgICAgICAgICBwYWdlQ291bnQ6IE1hdGguY2VpbChsZW5ndGggLyBwYWdlU2l6ZSksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgLy8gQ29ubmVjdCBkYXRhIHNvdXJjZS5cbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpLnN1YnNjcmliZSgoZGF0YVNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgaWYgKGRhdGFTb3VyY2UgaW5zdGFuY2VvZiBOb2RlRGF0YVNvdXJjZVJlbW90ZSkge1xuICAgICAgICAgICAgICAgIChkYXRhU291cmNlIGFzIE5vZGVEYXRhU291cmNlUmVtb3RlKS5wYWdpbmF0b3IgPSBwYWdpbmF0b3I7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHBhZ2luYXRvci5sZW5ndGggPSBkYXRhU291cmNlPy5nZXRUb3RhbCgpO1xuICAgICAgICAgICAgICAgIGRhdGFTb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgPy5jb25uZWN0UGFnaW5hdGlvbigpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFnaW5hdG9yLmxlbmd0aCA9IGRhdGFTb3VyY2UuZ2V0VG90YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9wZW5QYWdlKHBhZ2U6IFBhZ2VFdmVudCkge1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmZldGNoRGF0YS5lbWl0KHtcbiAgICAgICAgICAgIG9mZnNldDogcGFnZS5wYWdlSW5kZXggKiBwYWdlLnBhZ2VTaXplLFxuICAgICAgICAgICAgYW1vdW50OiBwYWdlLnBhZ2VTaXplLFxuICAgICAgICAgICAgcmVzZXQ6IHRydWUsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0b3AtbWF0dGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXNTZXJ2aWNlLnRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVzU2VydmljZS5lbnRyaWVzVG9wTWF0dGVyXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJlbnRyaWVzU2VydmljZS5kYXRhU291cmNlXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5UYWJsZVwiPlxuICAgIDxlcy1ub2RlLWVudHJpZXMtdGFibGU+PC9lcy1ub2RlLWVudHJpZXMtdGFibGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJcbiAgICAgIGVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID09PSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLlNtYWxsR3JpZCB8fFxuICAgICAgZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPT09IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuR3JpZFxuICAgIFwiXG4gID5cbiAgICA8ZXMtbm9kZS1lbnRyaWVzLWNhcmQtZ3JpZCBbZGlzcGxheVR5cGVdPVwiZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGVcIj5cbiAgICA8L2VzLW5vZGUtZW50cmllcy1jYXJkLWdyaWQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0VtcHR5KCkgJiYgIWVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNMb2FkaW5nXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlc1NlcnZpY2UuZW1wdHlcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbjxtYXQtcGFnaW5hdG9yXG4gICNwYWdpbmF0b3JcbiAgW3BhZ2VTaXplT3B0aW9uc109XCJlbnRyaWVzR2xvYmFsU2VydmljZS5nZXRQYWdpbmF0b3JTaXplT3B0aW9ucyhlbnRyaWVzU2VydmljZS5zY29wZSlcIlxuICAqbmdJZj1cImVudHJpZXNTZXJ2aWNlLnBhZ2luYXRpb25TdHJhdGVneSA9PT0gJ3BhZ2luYXRvcidcIlxuICBbY2xhc3MuZGlzcGxheS1ub25lXT1cIlxuICAgIChlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzTG9hZGluZyAmJiBlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzTG9hZGluZyAhPT0gJ3BhZ2UnKSB8fFxuICAgIGVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNFbXB0eSgpXG4gIFwiXG4gIChwYWdlKT1cIm9wZW5QYWdlKCRldmVudClcIlxuPjwvbWF0LXBhZ2luYXRvcj5cbiJdfQ==
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Pipe } from '@angular/core';
|
|
2
2
|
import { RestConstants } from 'ngx-edu-sharing-api';
|
|
3
3
|
import { RestHelper } from '../util/rest-helper';
|
|
4
|
+
import { isString } from 'lodash';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@ngx-translate/core";
|
|
6
7
|
export class NodeTitlePipe {
|
|
7
8
|
transform(node, args) {
|
|
8
|
-
if (!node?.name) {
|
|
9
|
+
if (!node?.name && isString(node)) {
|
|
9
10
|
if (node === 'HOME') {
|
|
10
11
|
return this.translate.instant('WORKSPACE.' + node);
|
|
11
12
|
}
|
|
@@ -31,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
31
32
|
type: Pipe,
|
|
32
33
|
args: [{ name: 'nodeTitle' }]
|
|
33
34
|
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10aXRsZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9waXBlcy9ub2RlLXRpdGxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFRLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7QUFHbEMsTUFBTSxPQUFPLGFBQWE7SUFDdEIsU0FBUyxDQUFDLElBQThCLEVBQUUsSUFBaUM7UUFDdkUsSUFBSSxDQUFFLElBQWEsRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDMUMsSUFBSSxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQ1AsSUFBSSxFQUFFLElBQUksS0FBSyxNQUFNO1lBQ2pCLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQVksQ0FBQztZQUNsQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFZLENBQUMsQ0FBQztRQUM1QyxJQUFLLElBQWEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQy9ELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQ3pCLFVBQVUsR0FBSSxJQUFhLEVBQUUsVUFBVSxFQUFFLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzVFO2dCQUNJLFFBQVEsRUFBRSxLQUFLO2FBQ2xCLENBQ0osQ0FBQztRQUNOLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBRyxDQUFDOytHQXRCMUMsYUFBYTs2R0FBYixhQUFhOzs0RkFBYixhQUFhO2tCQUR6QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGVUcmFuc2Zvcm0sIFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE5vZGUsIFJlc3RDb25zdGFudHMgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IFJlc3RIZWxwZXIgfSBmcm9tICcuLi91dGlsL3Jlc3QtaGVscGVyJztcbmltcG9ydCB7IE5vZGVSb290IH0gZnJvbSAnLi4vbm9kZS1lbnRyaWVzL2VudHJpZXMtbW9kZWwnO1xuaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tICdsb2Rhc2gnO1xuXG5AUGlwZSh7IG5hbWU6ICdub2RlVGl0bGUnIH0pXG5leHBvcnQgY2xhc3MgTm9kZVRpdGxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybShub2RlOiBOb2RlIHwgTm9kZVJvb3QgfCAnSE9NRScsIGFyZ3M/OiB7IHR5cGU6ICduYW1lJyB8ICd0aXRsZScgfSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghKG5vZGUgYXMgTm9kZSk/Lm5hbWUgJiYgaXNTdHJpbmcobm9kZSkpIHtcbiAgICAgICAgICAgIGlmIChub2RlID09PSAnSE9NRScpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnV09SS1NQQUNFLicgKyBub2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdXT1JLU1BBQ0UuJyArIG5vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHZhbHVlID1cbiAgICAgICAgICAgIGFyZ3M/LnR5cGUgPT09ICduYW1lJ1xuICAgICAgICAgICAgICAgID8gUmVzdEhlbHBlci5nZXROYW1lKG5vZGUgYXMgTm9kZSlcbiAgICAgICAgICAgICAgICA6IFJlc3RIZWxwZXIuZ2V0VGl0bGUobm9kZSBhcyBOb2RlKTtcbiAgICAgICAgaWYgKChub2RlIGFzIE5vZGUpPy5wcm9wZXJ0aWVzPy5bUmVzdENvbnN0YW50cy5DQ01fUFJPUF9NQVBUWVBFXSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAgICAgJ01BUFRZUEUuJyArIChub2RlIGFzIE5vZGUpPy5wcm9wZXJ0aWVzPy5bUmVzdENvbnN0YW50cy5DQ01fUFJPUF9NQVBUWVBFXVswXSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrOiB2YWx1ZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxufVxuIl19
|
|
@@ -8,14 +8,16 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "@angular/router";
|
|
9
9
|
import * as i2 from "./local-events.service";
|
|
10
10
|
import * as i3 from "ngx-edu-sharing-api";
|
|
11
|
-
import * as i4 from "./abstract/
|
|
12
|
-
import * as i5 from "./abstract/
|
|
11
|
+
import * as i4 from "./abstract/toast.service";
|
|
12
|
+
import * as i5 from "./abstract/keyboard-shortcuts.service";
|
|
13
|
+
import * as i6 from "./abstract/options-helper.service";
|
|
13
14
|
export class OptionsHelperDataService {
|
|
14
|
-
constructor(ngZone, route, localEvents, authenticationService, userService, networkService, keyboardShortcutsService, optionsHelperService) {
|
|
15
|
+
constructor(ngZone, route, localEvents, authenticationService, toast, userService, networkService, keyboardShortcutsService, optionsHelperService) {
|
|
15
16
|
this.ngZone = ngZone;
|
|
16
17
|
this.route = route;
|
|
17
18
|
this.localEvents = localEvents;
|
|
18
19
|
this.authenticationService = authenticationService;
|
|
20
|
+
this.toast = toast;
|
|
19
21
|
this.userService = userService;
|
|
20
22
|
this.networkService = networkService;
|
|
21
23
|
this.keyboardShortcutsService = keyboardShortcutsService;
|
|
@@ -90,15 +92,21 @@ export class OptionsHelperDataService {
|
|
|
90
92
|
}
|
|
91
93
|
});
|
|
92
94
|
}
|
|
93
|
-
handleKeyboardEvent(event) {
|
|
95
|
+
async handleKeyboardEvent(event) {
|
|
94
96
|
if (this.globalOptions && !this.keyboardShortcutsService?.shouldIgnoreShortcut(event)) {
|
|
95
|
-
const
|
|
96
|
-
option.keyboardShortcut &&
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
97
|
+
for (const option of this.globalOptions) {
|
|
98
|
+
if (option.keyboardShortcut &&
|
|
99
|
+
matchesShortcutCondition(event, option.keyboardShortcut)) {
|
|
100
|
+
event.preventDefault();
|
|
101
|
+
event.stopPropagation();
|
|
102
|
+
if (await option.enabledCallback()) {
|
|
103
|
+
this.ngZone.run(() => option.callback(null));
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
this.toast.error(null, 'TOAST.OPTION_DISABLED_OR_UNAVAILABLE');
|
|
107
|
+
}
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
102
110
|
}
|
|
103
111
|
}
|
|
104
112
|
}
|
|
@@ -121,14 +129,14 @@ export class OptionsHelperDataService {
|
|
|
121
129
|
pasteNode(nodes = []) {
|
|
122
130
|
this.optionsHelperService.pasteNode(this.components, this.data, true, nodes);
|
|
123
131
|
}
|
|
124
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, deps: [{ token: i0.NgZone }, { token: i1.ActivatedRoute }, { token: i2.LocalEventsService }, { token: i3.AuthenticationService }, { token: i3.UserService }, { token: i3.NetworkService }, { token:
|
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, deps: [{ token: i0.NgZone }, { token: i1.ActivatedRoute }, { token: i2.LocalEventsService }, { token: i3.AuthenticationService }, { token: i4.Toast }, { token: i3.UserService }, { token: i3.NetworkService }, { token: i5.KeyboardShortcutsService, optional: true }, { token: i6.OptionsHelperService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
125
133
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService }); }
|
|
126
134
|
}
|
|
127
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, decorators: [{
|
|
128
136
|
type: Injectable
|
|
129
|
-
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.ActivatedRoute }, { type: i2.LocalEventsService }, { type: i3.AuthenticationService }, { type: i3.UserService }, { type: i3.NetworkService }, { type:
|
|
137
|
+
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.ActivatedRoute }, { type: i2.LocalEventsService }, { type: i3.AuthenticationService }, { type: i4.Toast }, { type: i3.UserService }, { type: i3.NetworkService }, { type: i5.KeyboardShortcutsService, decorators: [{
|
|
130
138
|
type: Optional
|
|
131
|
-
}] }, { type:
|
|
139
|
+
}] }, { type: i6.OptionsHelperService, decorators: [{
|
|
132
140
|
type: Optional
|
|
133
141
|
}] }] });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy1oZWxwZXItZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9zZXJ2aWNlcy9vcHRpb25zLWhlbHBlci1kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQXlCLEVBQUUsRUFBcUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBb0MsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7O0FBNkJ2RSxNQUFNLE9BQU8sd0JBQXdCO0lBWWpDLFlBQ1ksTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLFdBQStCLEVBQy9CLHFCQUE0QyxFQUM1QyxXQUF3QixFQUN4QixjQUE4QixFQUNsQix3QkFBa0QsRUFDbEQsb0JBQTBDO1FBUHRELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDbEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBZjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRS9CLHNC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QVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB0eXBlIHsgQWN0aW9uYmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vYWN0aW9uYmFyL2FjdGlvbmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUge1xuICAgIExpc3RFdmVudEludGVyZmFjZSxcbiAgICBOb2RlRW50cmllc0RhdGFUeXBlLFxuICAgIE5vZGVFbnRyaWVzRGlzcGxheVR5cGUsXG59IGZyb20gJy4uL25vZGUtZW50cmllcy9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgTmdab25lLCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvblNlcnZpY2UsIE1FLCBOZXR3b3JrU2VydmljZSwgTm9kZSwgVXNlclNlcnZpY2UgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEN1c3RvbU9wdGlvbnMsIE9wdGlvbkl0ZW0sIFNjb3BlLCBUYXJnZXQgfSBmcm9tICcuLi90eXBlcy9vcHRpb24taXRlbSc7XG5pbXBvcnQgeyBPcHRpb25zSGVscGVyU2VydmljZSB9IGZyb20gJy4vYWJzdHJhY3Qvb3B0aW9ucy1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWF0Y2hlc1Nob3J0Y3V0Q29uZGl0aW9uIH0gZnJvbSAnLi4vdHlwZXMva2V5Ym9hcmQtc2hvcnRjdXRzJztcbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRzU2VydmljZSB9IGZyb20gJy4vYWJzdHJhY3Qva2V5Ym9hcmQtc2hvcnRjdXRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9jYWxFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1ldmVudHMuc2VydmljZSc7XG5cbnR5cGUgRGVsZXRlRXZlbnQgPSB7XG4gICAgb2JqZWN0czogTm9kZVtdIHwgYW55O1xuICAgIGNvdW50OiBudW1iZXI7XG4gICAgZXJyb3I6IGJvb2xlYW47XG59O1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zSGVscGVyQ29tcG9uZW50cyB7XG4gICAgYWN0aW9uYmFyPzogQWN0aW9uYmFyQ29tcG9uZW50O1xuICAgIGRyb3Bkb3duPzogRHJvcGRvd25Db21wb25lbnQ7XG4gICAgbGlzdD86IExpc3RFdmVudEludGVyZmFjZTxOb2RlRW50cmllc0RhdGFUeXBlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25EYXRhIHtcbiAgICBzY29wZTogU2NvcGU7XG4gICAgYWN0aXZlT2JqZWN0cz86IE5vZGVbXSB8IGFueVtdO1xuICAgIHNlbGVjdGVkT2JqZWN0cz86IE5vZGVbXSB8IGFueVtdO1xuICAgIGFsbE9iamVjdHM/OiBOb2RlW10gfCBhbnlbXTtcbiAgICBwYXJlbnQ/OiBOb2RlIHwgYW55O1xuICAgIGN1c3RvbU9wdGlvbnM/OiBDdXN0b21PcHRpb25zO1xuICAgIC8qKlxuICAgICAqIGN1c3RvbSBpbnRlcmNlcHRvciB0byBtb2RpZnkgdGhlIGRlZmF1bHQgb3B0aW9ucyBhcnJheVxuICAgICAqL1xuICAgIHBvc3RQcmVwYXJlT3B0aW9ucz86IChvcHRpb25zOiBPcHRpb25JdGVtW10sIG9iamVjdHM6IE5vZGVbXSkgPT4gdm9pZDtcbn1cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPcHRpb25zSGVscGVyRGF0YVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgY29tcG9uZW50czogT3B0aW9uc0hlbHBlckNvbXBvbmVudHM7XG4gICAgcHJpdmF0ZSBkYXRhOiBPcHRpb25EYXRhO1xuICAgIHByaXZhdGUga2V5Ym9hcmRTaG9ydGN1dHNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIGdsb2JhbE9wdGlvbnM6IE9wdGlvbkl0ZW1bXTtcbiAgICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICByZWFkb25seSB2aXJ0dWFsTm9kZXNBZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZVtdPigpO1xuICAgIHJlYWRvbmx5IG5vZGVzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZVtdIHwgdm9pZD4oKTtcbiAgICByZWFkb25seSBub2Rlc0RlbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPERlbGV0ZUV2ZW50PigpO1xuICAgIHJlYWRvbmx5IGRpc3BsYXlUeXBlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZUVudHJpZXNEaXNwbGF5VHlwZT4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBsb2NhbEV2ZW50czogTG9jYWxFdmVudHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBuZXR3b3JrU2VydmljZTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUga2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlOiBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgb3B0aW9uc0hlbHBlclNlcnZpY2U6IE9wdGlvbnNIZWxwZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICB0aGlzLnJlZ2lzdGVyU3RhdGljU3Vic2NyaXB0aW9ucygpO1xuICAgIH1cbiAgICAvKiogUGVyZm9ybXMgc3Vic2NyaXB0aW9ucyB0aGF0IGRvbid0IGhhdmUgdG8gYmUgcmVmcmVzaGVkLiAqL1xuICAgIHByaXZhdGUgcmVnaXN0ZXJTdGF0aWNTdWJzY3JpcHRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvY2FsRXZlbnRzLm5vZGVzRGVsZXRlZFxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5vZGVzKSA9PiB0aGlzLmNvbXBvbmVudHM/Lmxpc3Q/LmRlbGV0ZU5vZGVzKG5vZGVzKSk7XG4gICAgICAgIHRoaXMubG9jYWxFdmVudHMubm9kZXNDaGFuZ2VkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobm9kZXMpID0+IHRoaXMuY29tcG9uZW50cz8ubGlzdD8udXBkYXRlTm9kZXMobm9kZXMpKTtcbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBhc3luYyBpbml0Q29tcG9uZW50cyhcbiAgICAgICAgYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQgPSBudWxsLFxuICAgICAgICBsaXN0OiBMaXN0RXZlbnRJbnRlcmZhY2U8Tm9kZUVudHJpZXNEYXRhVHlwZT4gPSBudWxsLFxuICAgICAgICBkcm9wZG93bjogRHJvcGRvd25Db21wb25lbnQgPSBudWxsLFxuICAgICkge1xuICAgICAgICB0aGlzLmNvbXBvbmVudHMgPSB7XG4gICAgICAgICAgICBhY3Rpb25iYXIsXG4gICAgICAgICAgICBsaXN0LFxuICAgICAgICAgICAgZHJvcGRvd24sXG4gICAgICAgIH07XG4gICAgICAgIGlmICgoYXdhaXQgdGhpcy51c2VyU2VydmljZS5nZXRVc2VyKE1FKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpKS5wZXJzb24uYXV0aG9yaXR5TmFtZSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5uZXR3b3JrU2VydmljZS5nZXRSZXBvc2l0b3JpZXMoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YTtcbiAgICB9XG5cbiAgICBzZXREYXRhKGRhdGE6IE9wdGlvbkRhdGEpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZS53cmFwT3B0aW9uQ2FsbGJhY2tzKGRhdGEpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlZnJlc2hDb21wb25lbnRzKCkge1xuICAgICAgICBpZiAodGhpcy5kYXRhID09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2Fybignb3B0aW9ucyBoZWxwZXIgcmVmcmVzaCBjYWxsZWQgYnV0IG5vIGRhdGEgcHJldmlvdXNseSBib3VuZCcpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlID09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2Fybignb3B0aW9uc0hlbHBlclNlcnZpY2Ugbm90IHByb3ZpZGVkLiBObyBkZWZhdWx0IGFjdGlvbnMgd2lsbCBiZSBnZW5lcmF0ZWQnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdsb2JhbE9wdGlvbnMgPSBhd2FpdCB0aGlzLmdldEF2YWlsYWJsZU9wdGlvbnMoVGFyZ2V0LkFjdGlvbmJhcik7XG4gICAgICAgIGF3YWl0IHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2U/LnJlZnJlc2hDb21wb25lbnRzKHRoaXMuY29tcG9uZW50cywgdGhpcy5kYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBdmFpbGFibGVPcHRpb25zKHRhcmdldDogVGFyZ2V0LCBvYmplY3RzOiBOb2RlW10gPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlPy5nZXRBdmFpbGFibGVPcHRpb25zKFxuICAgICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgICAgb2JqZWN0cyxcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cyxcbiAgICAgICAgICAgIHRoaXMuZGF0YSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFZpcnR1YWxPYmplY3RzKG9iamVjdHM6IGFueVtdKSB7XG4gICAgICAgIG9iamVjdHMgPSBvYmplY3RzLm1hcCgobzogYW55KSA9PiB7XG4gICAgICAgICAgICBvLnZpcnR1YWwgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIG87XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnZpcnR1YWxOb2Rlc0FkZGVkLmVtaXQob2JqZWN0cyk7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudHM/Lmxpc3QpIHtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cz8ubGlzdC5hZGRWaXJ0dWFsTm9kZXMob2JqZWN0cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmtleWJvYXJkU2hvcnRjdXRzU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5ZG93bicpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLmhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmdsb2JhbE9wdGlvbnMgJiYgIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlPy5zaG91bGRJZ25vcmVTaG9ydGN1dChldmVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZWRPcHRpb24gPSB0aGlzLmdsb2JhbE9wdGlvbnMuZmluZChcbiAgICAgICAgICAgICAgICAob3B0aW9uOiBPcHRpb25JdGVtKSA9PlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24uaXNFbmFibGVkICYmXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbi5rZXlib2FyZFNob3J0Y3V0ICYmXG4gICAgICAgICAgICAgICAgICAgIG1hdGNoZXNTaG9ydGN1dENvbmRpdGlvbihldmVudCwgb3B0aW9uLmtleWJvYXJkU2hvcnRjdXQpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGVkT3B0aW9uKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gbWF0Y2hlZE9wdGlvbi5jYWxsYmFjayhudWxsKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZmlsdGVyT3B0aW9ucyhvcHRpb25zOiBPcHRpb25JdGVtW10sIHRhcmdldDogVGFyZ2V0LCBvYmplY3RzOiBOb2RlW10gfCBhbnkgPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlLmZpbHRlck9wdGlvbnMob3B0aW9ucywgdGFyZ2V0LCB0aGlzLmRhdGEsIG9iamVjdHMpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBzaG9ydGN1dCB0byBzaW1wbHkgZGlzYWJsZSBhbGwgb3B0aW9ucyBvbiB0aGUgZ2l2ZW4gY29tcG9lbm50c1xuICAgICAqIEBwYXJhbSBhY3Rpb25iYXJcbiAgICAgKiBAcGFyYW0gbGlzdFxuICAgICAqL1xuICAgIGNsZWFyQ29tcG9uZW50cyhhY3Rpb25iYXI6IEFjdGlvbmJhckNvbXBvbmVudCwgbGlzdDogTGlzdEV2ZW50SW50ZXJmYWNlPE5vZGU+ID0gbnVsbCkge1xuICAgICAgICBpZiAobGlzdCkge1xuICAgICAgICAgICAgbGlzdC5zZXRPcHRpb25zKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhY3Rpb25iYXIpIHtcbiAgICAgICAgICAgIGFjdGlvbmJhci5vcHRpb25zID0gW107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwYXN0ZU5vZGUobm9kZXM6IE5vZGVbXSA9IFtdKSB7XG4gICAgICAgIHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2UucGFzdGVOb2RlKHRoaXMuY29tcG9uZW50cywgdGhpcy5kYXRhLCB0cnVlLCBub2Rlcyk7XG4gICAgfVxufVxuIl19
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy1oZWxwZXItZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9zZXJ2aWNlcy9vcHRpb25zLWhlbHBlci1kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQXlCLEVBQUUsRUFBcUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBb0MsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7OztBQThCdkUsTUFBTSxPQUFPLHdCQUF3QjtJQVlqQyxZQUNZLE1BQWMsRUFDZCxLQUFxQixFQUNyQixXQUErQixFQUMvQixxQkFBNEMsRUFDNUMsS0FBWSxFQUNaLFdBQXdCLEVBQ3hCLGNBQThCLEVBQ2xCLHdCQUFrRCxFQUNsRCxvQkFBMEM7UUFSdEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLFVBQUssR0FBTCxLQUFLLENBQU87UUFDWixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDbEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBaEIxRCxj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LENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLENBQUM7K0dBL0lRLHdCQUF3QjttSEFBeEIsd0JBQXdCOzs0RkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOzswQkFxQkYsUUFBUTs7MEJBQ1IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUgeyBBY3Rpb25iYXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb25iYXIvYWN0aW9uYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7XG4gICAgTGlzdEV2ZW50SW50ZXJmYWNlLFxuICAgIE5vZGVFbnRyaWVzRGF0YVR5cGUsXG4gICAgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSxcbn0gZnJvbSAnLi4vbm9kZS1lbnRyaWVzL2VudHJpZXMtbW9kZWwnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlLCBOZ1pvbmUsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uU2VydmljZSwgTUUsIE5ldHdvcmtTZXJ2aWNlLCBOb2RlLCBVc2VyU2VydmljZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ3VzdG9tT3B0aW9ucywgT3B0aW9uSXRlbSwgU2NvcGUsIFRhcmdldCB9IGZyb20gJy4uL3R5cGVzL29wdGlvbi1pdGVtJztcbmltcG9ydCB7IE9wdGlvbnNIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi9hYnN0cmFjdC9vcHRpb25zLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXRjaGVzU2hvcnRjdXRDb25kaXRpb24gfSBmcm9tICcuLi90eXBlcy9rZXlib2FyZC1zaG9ydGN1dHMnO1xuaW1wb3J0IHsgS2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlIH0gZnJvbSAnLi9hYnN0cmFjdC9rZXlib2FyZC1zaG9ydGN1dHMuc2VydmljZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBMb2NhbEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuL2xvY2FsLWV2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IFRvYXN0IH0gZnJvbSAnLi9hYnN0cmFjdC90b2FzdC5zZXJ2aWNlJztcblxudHlwZSBEZWxldGVFdmVudCA9IHtcbiAgICBvYmplY3RzOiBOb2RlW10gfCBhbnk7XG4gICAgY291bnQ6IG51bWJlcjtcbiAgICBlcnJvcjogYm9vbGVhbjtcbn07XG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvbnNIZWxwZXJDb21wb25lbnRzIHtcbiAgICBhY3Rpb25iYXI/OiBBY3Rpb25iYXJDb21wb25lbnQ7XG4gICAgZHJvcGRvd24/OiBEcm9wZG93bkNvbXBvbmVudDtcbiAgICBsaXN0PzogTGlzdEV2ZW50SW50ZXJmYWNlPE5vZGVFbnRyaWVzRGF0YVR5cGU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvbkRhdGEge1xuICAgIHNjb3BlOiBTY29wZTtcbiAgICBhY3RpdmVPYmplY3RzPzogTm9kZVtdIHwgYW55W107XG4gICAgc2VsZWN0ZWRPYmplY3RzPzogTm9kZVtdIHwgYW55W107XG4gICAgYWxsT2JqZWN0cz86IE5vZGVbXSB8IGFueVtdO1xuICAgIHBhcmVudD86IE5vZGUgfCBhbnk7XG4gICAgY3VzdG9tT3B0aW9ucz86IEN1c3RvbU9wdGlvbnM7XG4gICAgLyoqXG4gICAgICogY3VzdG9tIGludGVyY2VwdG9yIHRvIG1vZGlmeSB0aGUgZGVmYXVsdCBvcHRpb25zIGFycmF5XG4gICAgICovXG4gICAgcG9zdFByZXBhcmVPcHRpb25zPzogKG9wdGlvbnM6IE9wdGlvbkl0ZW1bXSwgb2JqZWN0czogTm9kZVtdKSA9PiB2b2lkO1xufVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9wdGlvbnNIZWxwZXJEYXRhU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBjb21wb25lbnRzOiBPcHRpb25zSGVscGVyQ29tcG9uZW50cztcbiAgICBwcml2YXRlIGRhdGE6IE9wdGlvbkRhdGE7XG4gICAgcHJpdmF0ZSBrZXlib2FyZFNob3J0Y3V0c1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgZ2xvYmFsT3B0aW9uczogT3B0aW9uSXRlbVtdO1xuICAgIHByaXZhdGUgZGVzdHJveWVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHJlYWRvbmx5IHZpcnR1YWxOb2Rlc0FkZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlW10+KCk7XG4gICAgcmVhZG9ubHkgbm9kZXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlW10gfCB2b2lkPigpO1xuICAgIHJlYWRvbmx5IG5vZGVzRGVsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGVsZXRlRXZlbnQ+KCk7XG4gICAgcmVhZG9ubHkgZGlzcGxheVR5cGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlRW50cmllc0Rpc3BsYXlUeXBlPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIGxvY2FsRXZlbnRzOiBMb2NhbEV2ZW50c1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXV0aGVudGljYXRpb25TZXJ2aWNlOiBBdXRoZW50aWNhdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdG9hc3Q6IFRvYXN0LFxuICAgICAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBuZXR3b3JrU2VydmljZTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUga2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlOiBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgb3B0aW9uc0hlbHBlclNlcnZpY2U6IE9wdGlvbnNIZWxwZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICB0aGlzLnJlZ2lzdGVyU3RhdGljU3Vic2NyaXB0aW9ucygpO1xuICAgIH1cbiAgICAvKiogUGVyZm9ybXMgc3Vic2NyaXB0aW9ucyB0aGF0IGRvbid0IGhhdmUgdG8gYmUgcmVmcmVzaGVkLiAqL1xuICAgIHByaXZhdGUgcmVnaXN0ZXJTdGF0aWNTdWJzY3JpcHRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvY2FsRXZlbnRzLm5vZGVzRGVsZXRlZFxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5vZGVzKSA9PiB0aGlzLmNvbXBvbmVudHM/Lmxpc3Q/LmRlbGV0ZU5vZGVzKG5vZGVzKSk7XG4gICAgICAgIHRoaXMubG9jYWxFdmVudHMubm9kZXNDaGFuZ2VkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobm9kZXMpID0+IHRoaXMuY29tcG9uZW50cz8ubGlzdD8udXBkYXRlTm9kZXMobm9kZXMpKTtcbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBhc3luYyBpbml0Q29tcG9uZW50cyhcbiAgICAgICAgYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQgPSBudWxsLFxuICAgICAgICBsaXN0OiBMaXN0RXZlbnRJbnRlcmZhY2U8Tm9kZUVudHJpZXNEYXRhVHlwZT4gPSBudWxsLFxuICAgICAgICBkcm9wZG93bjogRHJvcGRvd25Db21wb25lbnQgPSBudWxsLFxuICAgICkge1xuICAgICAgICB0aGlzLmNvbXBvbmVudHMgPSB7XG4gICAgICAgICAgICBhY3Rpb25iYXIsXG4gICAgICAgICAgICBsaXN0LFxuICAgICAgICAgICAgZHJvcGRvd24sXG4gICAgICAgIH07XG4gICAgICAgIGlmICgoYXdhaXQgdGhpcy51c2VyU2VydmljZS5nZXRVc2VyKE1FKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpKS5wZXJzb24uYXV0aG9yaXR5TmFtZSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5uZXR3b3JrU2VydmljZS5nZXRSZXBvc2l0b3JpZXMoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YTtcbiAgICB9XG5cbiAgICBzZXREYXRhKGRhdGE6IE9wdGlvbkRhdGEpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZS53cmFwT3B0aW9uQ2FsbGJhY2tzKGRhdGEpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlZnJlc2hDb21wb25lbnRzKCkge1xuICAgICAgICBpZiAodGhpcy5kYXRhID09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2Fybignb3B0aW9ucyBoZWxwZXIgcmVmcmVzaCBjYWxsZWQgYnV0IG5vIGRhdGEgcHJldmlvdXNseSBib3VuZCcpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlID09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2Fybignb3B0aW9uc0hlbHBlclNlcnZpY2Ugbm90IHByb3ZpZGVkLiBObyBkZWZhdWx0IGFjdGlvbnMgd2lsbCBiZSBnZW5lcmF0ZWQnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdsb2JhbE9wdGlvbnMgPSBhd2FpdCB0aGlzLmdldEF2YWlsYWJsZU9wdGlvbnMoVGFyZ2V0LkFjdGlvbmJhcik7XG4gICAgICAgIGF3YWl0IHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2U/LnJlZnJlc2hDb21wb25lbnRzKHRoaXMuY29tcG9uZW50cywgdGhpcy5kYXRhKTtcbiAgICB9XG5cbiAgICBnZXRBdmFpbGFibGVPcHRpb25zKHRhcmdldDogVGFyZ2V0LCBvYmplY3RzOiBOb2RlW10gPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlPy5nZXRBdmFpbGFibGVPcHRpb25zKFxuICAgICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgICAgb2JqZWN0cyxcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cyxcbiAgICAgICAgICAgIHRoaXMuZGF0YSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFZpcnR1YWxPYmplY3RzKG9iamVjdHM6IGFueVtdKSB7XG4gICAgICAgIG9iamVjdHMgPSBvYmplY3RzLm1hcCgobzogYW55KSA9PiB7XG4gICAgICAgICAgICBvLnZpcnR1YWwgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIG87XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnZpcnR1YWxOb2Rlc0FkZGVkLmVtaXQob2JqZWN0cyk7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudHM/Lmxpc3QpIHtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cz8ubGlzdC5hZGRWaXJ0dWFsTm9kZXMob2JqZWN0cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmtleWJvYXJkU2hvcnRjdXRzU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5ZG93bicpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLmhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmdsb2JhbE9wdGlvbnMgJiYgIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlPy5zaG91bGRJZ25vcmVTaG9ydGN1dChldmVudCkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMuZ2xvYmFsT3B0aW9ucykge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uLmtleWJvYXJkU2hvcnRjdXQgJiZcbiAgICAgICAgICAgICAgICAgICAgbWF0Y2hlc1Nob3J0Y3V0Q29uZGl0aW9uKGV2ZW50LCBvcHRpb24ua2V5Ym9hcmRTaG9ydGN1dClcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhd2FpdCBvcHRpb24uZW5hYmxlZENhbGxiYWNrKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiBvcHRpb24uY2FsbGJhY2sobnVsbCkpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50b2FzdC5lcnJvcihudWxsLCAnVE9BU1QuT1BUSU9OX0RJU0FCTEVEX09SX1VOQVZBSUxBQkxFJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZpbHRlck9wdGlvbnMob3B0aW9uczogT3B0aW9uSXRlbVtdLCB0YXJnZXQ6IFRhcmdldCwgb2JqZWN0czogTm9kZVtdIHwgYW55ID0gbnVsbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZS5maWx0ZXJPcHRpb25zKG9wdGlvbnMsIHRhcmdldCwgdGhpcy5kYXRhLCBvYmplY3RzKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogc2hvcnRjdXQgdG8gc2ltcGx5IGRpc2FibGUgYWxsIG9wdGlvbnMgb24gdGhlIGdpdmVuIGNvbXBvZW5udHNcbiAgICAgKiBAcGFyYW0gYWN0aW9uYmFyXG4gICAgICogQHBhcmFtIGxpc3RcbiAgICAgKi9cbiAgICBjbGVhckNvbXBvbmVudHMoYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQsIGxpc3Q6IExpc3RFdmVudEludGVyZmFjZTxOb2RlPiA9IG51bGwpIHtcbiAgICAgICAgaWYgKGxpc3QpIHtcbiAgICAgICAgICAgIGxpc3Quc2V0T3B0aW9ucyhudWxsKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYWN0aW9uYmFyKSB7XG4gICAgICAgICAgICBhY3Rpb25iYXIub3B0aW9ucyA9IFtdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGFzdGVOb2RlKG5vZGVzOiBOb2RlW10gPSBbXSkge1xuICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlLnBhc3RlTm9kZSh0aGlzLmNvbXBvbmVudHMsIHRoaXMuZGF0YSwgdHJ1ZSwgbm9kZXMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -119,6 +119,7 @@ export var Scope;
|
|
|
119
119
|
Scope["Sharing"] = "Sharing";
|
|
120
120
|
Scope["Oer"] = "Oer";
|
|
121
121
|
Scope["UserManagement"] = "UserManagement";
|
|
122
|
+
Scope["UserProfile"] = "UserProfile";
|
|
122
123
|
Scope["Stream"] = "Stream";
|
|
123
124
|
Scope["CreateMenu"] = "CreateMenu";
|
|
124
125
|
Scope["MediacenterNodesList"] = "MediacenterNodesList";
|
|
@@ -188,4 +189,4 @@ export var Target;
|
|
|
188
189
|
Target[Target["Actionbar"] = 2] = "Actionbar";
|
|
189
190
|
Target[Target["CreateMenu"] = 3] = "CreateMenu";
|
|
190
191
|
})(Target || (Target = {}));
|
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3R5cGVzL29wdGlvbi1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sQ0FBTixJQUFZLGNBS1g7QUFMRCxXQUFZLGNBQWM7SUFDdEIsdUVBQXVFO0lBQ3ZFLHFEQUFLLENBQUE7SUFDTCxxSEFBcUg7SUFDckgsNkRBQVMsQ0FBQTtBQUNiLENBQUMsRUFMVyxjQUFjLEtBQWQsY0FBYyxRQUt6QjtBQUNELE1BQU0sT0FBTyxVQUFVO0lBb0luQjs7Ozs7OztPQU9HO0lBQ0gsWUFDVyxJQUFZLEVBQ1osSUFBWTtJQUNuQiw2REFBNkQ7SUFDdEQsUUFBaUU7UUFIakUsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFNBQUksR0FBSixJQUFJLENBQVE7UUFFWixhQUFRLEdBQVIsUUFBUSxDQUF5RDtRQS9JNUU7OztXQUdHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7O1dBR0c7UUFDSSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUM1Qjs7O1dBR0c7UUFDSSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3hCOztXQUVHO1FBQ0ksb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDOUI7OztXQUdHO1FBQ0ksbUJBQWMsR0FBdUIsT0FBTyxDQUFDO1FBQ3BEOzs7OztXQUtHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7Ozs7V0FLRztRQUNJLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDMUI7OztXQUdHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7O1dBR0c7UUFDSSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3RCOzs7V0FHRztRQUNJLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBWTNCOzs7V0FHRztRQUNJLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFtQ3hCOztXQUVHO1FB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QUNqQix1RUFBbUIsQ0FBQTtJQUNuQiwyRUFBcUIsQ0FBQTtJQUNyQixtREFBUyxDQUFBO0lBQ1QsdURBQVcsQ0FBQTtJQUNYLDJDQUFLLENBQUE7SUFDTCx1RUFBbUIsQ0FBQTtJQUNuQiwyQ0FBSyxDQUFBO0lBQ0wseURBQVksQ0FBQTtJQUNaLDZDQUFNLENBQUE7SUFDTix1REFBVyxDQUFBO0lBQ1gsa0VBQWdCLENBQUE7SUFDaEIsc0RBQVUsQ0FBQTtJQUNWLDhEQUFjLENBQUE7SUFDZCwwQ0FBSSxDQUFBO0lBQ0osZ0RBQU8sQ0FBQTtJQUNQLG9EQUFTLENBQUE7SUFDVCxnREFBTyxDQUFBO0FBQ1gsQ0FBQyxFQWxCVyxTQUFTLEtBQVQsU0FBUyxRQWtCcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxNQUtYO0FBTEQsV0FBWSxNQUFNO0lBQ2QsbUNBQUksQ0FBQTtJQUNKLG1EQUFZLENBQUE7SUFDWiw2Q0FBUyxDQUFBO0lBQ1QsK0NBQVUsQ0FBQTtBQUNkLENBQUMsRUFMVyxNQUFNLEtBQU4sTUFBTSxRQUtqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBvcHRpb24gZnJvbSB0aGUgYWN0aW9uYmFyK2Ryb3Bkb3duIG1lbnVcbiAqIEV4YW1wbGU6XG4gdGhpcy5vcHRpb25zLnB1c2gobmV3IE9wdGlvbkl0ZW0oXCJSRVNUT1JFX1NJTkdMRVwiLFwidW5kb1wiLCAobm9kZSkgPT4gdGhpcy5yZXN0b3JlU2luZ2xlKG5vZGUpKSk7XG4gdGhpcy5vcHRpb25zLnB1c2gobmV3IE9wdGlvbkl0ZW0oXCJERUxFVEVfU0lOR0xFXCIsXCJhcmNoaXZlRGVsZXRlXCIsIChub2RlKSA9PiB0aGlzLmRlbGV0ZVNpbmdsZShub2RlKSkpO1xuXG4gKi9cbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRDb25kaXRpb24gfSBmcm9tICcuLi90eXBlcy9rZXlib2FyZC1zaG9ydGN1dHMnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuXG5leHBvcnQgZW51bSBOb2Rlc1JpZ2h0TW9kZSB7XG4gICAgLy8gcmlnaHRzIG9uIHRoZSBjdXJyZW50IG5vZGUsIG5vIG1hdHRlciBpZiBpdHMgYSByZWZlcmVuY2Ugb3Igb3JpZ2lhbmxcbiAgICBMb2NhbCxcbiAgICAvLyBlZmZlY3RpdmUgcmlnaHRzIG9uIHRoZSBjdXJyZW50IG5vZGUsIG9ubHkgcmVsZXZhbnQgZm9yIGNvbGxlY3Rpb24gcmVmZXJlbmNlcyAoZm9yIG5vbi1yZWZzLCB0aGlzIGVxdWFscyB0byBsb2NhbClcbiAgICBFZmZlY3RpdmUsXG59XG5leHBvcnQgY2xhc3MgT3B0aW9uSXRlbSB7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhpcyBvcHRpb24gd2lsbCBiZSBzaG93biBhbGwgdGhlIHRpbWUgaW4gdGhlIG5vZGUgdGFibGVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvd0Fsd2F5cyA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoaXMgb3B0aW9uIHdpbGwgYmUgc2hvd24gYXMgYW4gYWN0aW9uIChpZiByb29tKS4gSWYgbm9uZSBvZiB0aGUgaXRlbXMgaGFzIHNob3dBc0FjdGlvbiBzZXQsIHRoZSBmaXJzdCBpdGVtcyB3aWxsIGFsd2F5cyBiZSBzaG93biBhcyBhY3Rpb25cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvd0FzQWN0aW9uID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhpcyBvcHRpb24gd2lsbCBiZSBzaG93biBhcyBhIHRvZ2dsZSBvbiB0aGUgcmlnaHQgc2lkZSAocHJvdmlkZSBpY29uVG9nZ2xlIGFzIGEgdG9nZ2xlIGljb24pXG4gICAgICogQHR5cGUge2Jvb2xlYW59XG4gICAgICovXG4gICAgcHVibGljIGlzVG9nZ2xlID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogT25seSB3aGVuIEBpc1RvZ2dsZS4gaXMgdGhlIHRvZ2dsZSBjdXJyZW50bHkgdmlzaWJsZVxuICAgICAqL1xuICAgIHB1YmxpYyBpc1RvZ2dsZVZpc2libGUgPSB0cnVlO1xuICAgIC8qKlxuICAgICAqIE9ubHkgd2hlbiBAaXNUb2dnbGUuIFdoZXJlIHRvIHBsYWNlIHRoZSB0b2dnbGUsIGJlZm9yZSBvciBhZnRlciBhbGwgb3RoZXIgYWN0aW9uc1xuICAgICAqIEB0eXBlIHtib29sZWFufVxuICAgICAqL1xuICAgIHB1YmxpYyB0b2dnbGVQb3NpdGlvbjogJ2JlZm9yZScgfCAnYWZ0ZXInID0gJ2FmdGVyJztcbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBzaG93cyBhIGxpbmUgYXQgdGhlIHRvcC5cbiAgICAgKlxuICAgICAqIFRoaXMgZmVhdHVyZSBpcyB1c3VhbGx5IGhhbmRsZWQgbm93IGJ5IGFzc29jaWF0aW5nIGFuIGVudHJ5IHRvIGEgYGdyb3VwYFxuICAgICAqIG5vdy4gSG93ZXZlciBgaXNTZXBhcmF0ZWAgaXMga2VwdCBhcyBmYWxsYmFjayBmb3Igbm93LlxuICAgICAqL1xuICAgIHB1YmxpYyBpc1NlcGFyYXRlID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogVGhlIGl0ZW0gd2lsbCBiZSBpbmRpY2F0ZWQgd2l0aCBhbiBhY2NlbnQgY29sb3IgaW4gdGhlIG1lbnUuXG4gICAgICpcbiAgICAgKiBVc2VkIGJ5IHRoZSBkcm9wZG93biB2YXJpYW50IG9mIHRoZSBtYWluIG1lbnUgdG8gaW5kaWNhdGUgdGhlIGN1cnJlbnRseVxuICAgICAqIGFjdGl2ZSBzY29wZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNTZWxlY3RlZCA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIElmIHRydWUsIG9ubHkgZGlzcGxheWVkIG9uIGEgbW9iaWxlIGRldmljZSAoYmFzZWQgb24gdGhlIG5hdmlnYXRvciBhZ2VudClcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgb25seU1vYmlsZSA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIGN1c3RvbSBhcmlhLWxhYmVsXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICBwdWJsaWMgYXJpYUxhYmVsID0gJyc7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgb25seSBkaXNwbGF5ZWQgb24gYSBkZXNrdG9wIGRldmljZSAoYmFzZWQgb24gdGhlIG5hdmlnYXRvciBhZ2VudClcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgb25seURlc2t0b3AgPSBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBZb3UgY2FuIHNldCBhIG1lZGlhLXF1ZXJ5IHNpbWlsYXIgdG8gQ1NTLCBzZWUgdGhlIE1FRElBX1FVRVJZIGNvbnN0YW50cyBpbiB1aS1jb25zdGFudHNcbiAgICAgKiBVc2UgaW4gY29tYmluYXRpb24gd2l0aCBtZWRpYVF1ZXJ5VmFsdWVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgbWVkaWFRdWVyeVR5cGU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUaGUgdmFsdWUgZm9yIHRoZSBkZWZpbmVkIG1lZGlhIHF1ZXJ5XG4gICAgICovXG4gICAgcHVibGljIG1lZGlhUXVlcnlWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogU2V0IHRvIGZhbHNlIGlmIHRoZSBhY3Rpb24gc2hvdWxkIGJlIHNob3duLCBidXQgc2hvdWxkIG5vdCBiZSBjbGlja2FibGVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNFbmFibGVkID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIG9wdGlvbiBzaG91bGQgYmUgbWFudWFsbHkgbWFya2VkIGFzIHByaW1hcnkgYWN0aW9uIHdoZW4gYWx3YXlzIHZpc2libGUgb24gYW5cbiAgICAgKiBgYWN0aW9uYmFyYC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNQcmltYXJ5OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiBjYWxsZWQgd2l0aCB0aGUgbm9kZSBhcyBwYXJhbSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgc2hvd24gZm9yIHRoaXMgbm9kZVxuICAgICAqIElzIGhhbmRsZWQgYnkgb3B0aW9uc0hlbHBlciBhbmQgbWF5IG5vdCBiZSB1c2VkIG90aGVyd2lzZVxuICAgICAqIFBsZWFzZSB1c2UgQGN1c3RvbVNob3dDYWxsYmFjayBpbnN0ZWFkXG4gICAgICovXG4gICAgcHVibGljIHNob3dDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gY2FsbGVkIHdpdGggdGhlIG5vZGUgYXMgcGFybSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgc2hvd24gZm9yIHRoaXMgbm9kZVxuICAgICAqIFdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBvcHRpb25zSGVscGVyXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbVNob3dDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdIHwgYW55W10pID0+IFByb21pc2U8Ym9vbGVhbj47XG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiBjYWxsZWQgd2l0aCB0aGUgbm9kZSBhcyBwYXJhbSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgZW5hYmxlZCBvciBub3RcbiAgICAgKiBJcyBoYW5kbGVkIGJ5IG9wdGlvbnNIZWxwZXIgYW5kIG1heSBub3QgYmUgdXNlZCBvdGhlcndpc2VcbiAgICAgKiBQbGVhc2UgdXNlIEBjdXN0b21FbmFibGVkQ2FsbGJhY2sgaW5zdGVhZFxuICAgICAqL1xuICAgIHB1YmxpYyBlbmFibGVkQ2FsbGJhY2s6IChub2Rlcz86IE5vZGVbXSkgPT4gUHJvbWlzZTxib29sZWFuPjtcbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIGNhbGxlZCB3aXRoIHRoZSBub2RlIGFzIHBhcmFtIHdoaWNoIHNob3VsZCByZXR1cm4gdHJ1ZSBvciBmYWxzZSBpZiB0aGUgb3B0aW9uIHNob3VsZCBiZSBlbmFibGVkIG9yIG5vdFxuICAgICAqIFdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBvcHRpb25zSGVscGVyXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbUVuYWJsZWRDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdIHwgYW55W10pID0+IFByb21pc2U8Ym9vbGVhbj47XG5cbiAgICAvKipcbiAgICAgKiAgIE9wdGlvbmFsOiBBIGNhbGxiYWNrIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZSBvcHRpb24gd2hlbiBpdCdzIGN1cnJlbnRseSBkaXNhYmxlZCAoZ3JleWVkIG91dClcbiAgICAgKi9cbiAgICBwdWJsaWMgZGlzYWJsZWRDYWxsYmFjazogKG5vZGU/OiBOb2RlIHwgYW55KSA9PiB2b2lkO1xuICAgIC8qKlxuICAgICAqICAgU2hvdyB0aGUgZ2l2ZW4gbmFtZSAoaWYgZmFsc2UsIG9ubHkgaWNvbiB3aWxsIHNob3cpXG4gICAgICovXG4gICAgcHVibGljIHNob3dOYW1lID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIGVsZW1lbnQgd2l0aCAwIGhhcyBoaWdoZXN0IHByaW9yaXR5IGluIGl0J3MgZ3JvdXAsIGhpZ2hlciB2YWx1ZXMgbWVhbiBsb3dlciBwcmlvcml0eVxuICAgICAqL1xuICAgIHB1YmxpYyBwcmlvcml0eTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIHRoZSBncm91cCB0aGlzIG9wdGlvbiBiZWxvbmdzIHRvXG4gICAgICovXG4gICAgcHVibGljIGdyb3VwOiBPcHRpb25Hcm91cDtcblxuICAgIHB1YmxpYyBrZXlib2FyZFNob3J0Y3V0OiBLZXlib2FyZFNob3J0Y3V0Q29uZGl0aW9uO1xuXG4gICAgLyoqXG4gICAgICogT3IgY29uY2F0IG9mIHN1cHBvcnRlZCBlbGVtZW50IHR5cGVzIGZvciB0aGUgYWN0aW9uXG4gICAgICovXG4gICAgcHVibGljIGVsZW1lbnRUeXBlID0gW0VsZW1lbnRUeXBlLk5vZGVdO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gICAgcHVibGljIGNvbnN0cmFpbnM6IENvbnN0cmFpbltdO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uc01vZGUgPSBIaWRlTW9kZS5EaXNhYmxlO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uc1JpZ2h0TW9kZSA9IE5vZGVzUmlnaHRNb2RlLkxvY2FsO1xuICAgIHB1YmxpYyB0b29scGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAgIHB1YmxpYyB0b29scGVybWlzc2lvbnNNb2RlID0gSGlkZU1vZGUuRGlzYWJsZTtcbiAgICBwdWJsaWMgc2NvcGVzOiBTY29wZVtdO1xuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSB0aGUgb3B0aW9uIG5hbWUsIHdoaWNoIGlzIHVzZWQgZm9yIHRoZSB0cmFuc2xhdGlvblxuICAgICAqIEBwYXJhbSBpY29uIEEgbWF0ZXJpYWwgaWNvbiBuYW1lXG4gICAgICogQHBhcmFtIGNhbGxiYWNrIEEgZnVuY3Rpb24gY2FsbGJhY2sgd2hlbiB0aGlzIG9wdGlvbiBpcyBjaG9zZW4uIFdpbGwgZ2V0IHRoZSBjdXJyZW50IG5vZGVcbiAgICAgKiBwYXNzZWQgYXMgYW4gYXJndW1lbnQuIElmIGF2YWlsYWJsZSwgdGhlIHJlbGV2YW50IG5vZGVzIGFyZSBwYXNzZWQgYXMgc2Vjb25kIGFyZ3VtZW50LFxuICAgICAqIGkuZS4sIHRoZSBzZWxlY3Rpb24sIGlmIGFueSwgb3IgdGhlIGN1cnJlbnQgbm9kZSBhcyBzaW5nbGUtaXRlbSBhcnJheSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcsXG4gICAgICAgIHB1YmxpYyBpY29uOiBzdHJpbmcsXG4gICAgICAgIC8vIFRPRE86IE1heWJlIHN3aXRjaCB0byBvbmx5IHByb3ZpZGluZyB0aGUgc2Vjb25kIHBhcmFtZXRlci5cbiAgICAgICAgcHVibGljIGNhbGxiYWNrOiAob2JqZWN0PzogTm9kZSB8IGFueSwgb2JqZWN0cz86IChOb2RlIHwgYW55KVtdKSA9PiB2b2lkLFxuICAgICkge31cbn1cbmV4cG9ydCBjbGFzcyBDdXN0b21PcHRpb25zIHtcbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBhbGwgZXhpc3Rpbmcgb3IgYXZhaWxhYmxlIG9wdGlvbnMgZm9yIHRoZSBvYmplY3Qgc3RheVxuICAgICAqIElmIGZhbHNlLCBubyBvcHRpb25zIHdpbGwgYmUgc2V0LCBvbmx5IHRoZSBvcHRpb25zIGluIFwiYWRkT3B0aW9uc1wiIGFyZSB1c2VkXG4gICAgICovXG4gICAgcHVibGljIHVzZURlZmF1bHRPcHRpb25zPyA9IHRydWU7XG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBpZHMgb2Ygb3B0aW9ucyB0byBleHBsaWNpdGx5IHN1cHBvcnRcbiAgICAgKi9cbiAgICBwdWJsaWMgc3VwcG9ydGVkT3B0aW9ucz86IHN0cmluZ1tdO1xuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgaWRzIG9mIG9wdGlvbnMgdG8gZXhwbGljaXRseSByZW1vdmVcbiAgICAgKiBPbmx5IHN1cHBvcnRlZCBpZiBzdXBwb3J0ZWRPcHRpb25zIGlzIGVtcHR5XG4gICAgICovXG4gICAgcHVibGljIHJlbW92ZU9wdGlvbnM/OiBzdHJpbmdbXTtcbiAgICAvKipcbiAgICAgKiBPcHRpb25zIHRvIGFkZC9pbnNlcnQgaW50byB0aGUgbWVudVxuICAgICAqL1xuICAgIHB1YmxpYyBhZGRPcHRpb25zPzogT3B0aW9uSXRlbVtdO1xufVxuZXhwb3J0IGVudW0gSGlkZU1vZGUge1xuICAgIERpc2FibGUsXG4gICAgSGlkZSxcbn1cbmV4cG9ydCBlbnVtIFNjb3BlIHtcbiAgICBSZW5kZXIgPSAnUmVuZGVyJyxcbiAgICBTZWFyY2ggPSAnU2VhcmNoJyxcbiAgICBTZWFyY2hDb2xsZWN0aW9ucyA9ICdTZWFyY2hDb2xsZWN0aW9ucycsXG4gICAgU2F2ZWRTZWFyY2hlcyA9ICdTYXZlZFNlYXJjaGVzJyxcbiAgICBDb2xsZWN0aW9uc1JlZmVyZW5jZXMgPSAnQ29sbGVjdGlvbnNSZWZlcmVuY2VzJyxcbiAgICBDb2xsZWN0aW9uc1Byb3Bvc2FscyA9ICdDb2xsZWN0aW9uc1Byb3Bvc2FscycsXG4gICAgQ29sbGVjdGlvbnNDb2xsZWN0aW9uID0gJ0NvbGxlY3Rpb25zQ29sbGVjdGlvbicsXG4gICAgV29ya3NwYWNlTGlzdCA9ICdXb3Jrc3BhY2VMaXN0JyxcbiAgICBXb3Jrc3BhY2VUcmVlID0gJ1dvcmtzcGFjZVRyZWUnLFxuICAgIFNoYXJpbmcgPSAnU2hhcmluZycsXG4gICAgT2VyID0gJ09lcicsXG4gICAgVXNlck1hbmFnZW1lbnQgPSAnVXNlck1hbmFnZW1lbnQnLFxuICAgIFN0cmVhbSA9ICdTdHJlYW0nLFxuICAgIENyZWF0ZU1lbnUgPSAnQ3JlYXRlTWVudScsXG5cbiAgICBNZWRpYWNlbnRlck5vZGVzTGlzdCA9ICdNZWRpYWNlbnRlck5vZGVzTGlzdCcsXG4gICAgQWRtaW4gPSAnQWRtaW4nLCAvLyBBZG1pbiBUb29scyAvIERlYnVnZ2luZ1xuICAgIERlYnVnU2hvd0FsbCA9ICdEZWJ1Z1Nob3dBbGwnLCAvLyBGdWxsIGRlYnVnIG1vZGUgd2hpY2ggZW5hYmxlcyBhbGwgb3B0aW9uc1xufVxuZXhwb3J0IGVudW0gRWxlbWVudFR5cGUge1xuICAgIE5vZGUsXG4gICAgTm9kZUNoaWxkLCAvLyBDaGlsZCBvYmplY3RcbiAgICBNYXBSZWYsIC8vIE1hcCByZWYgKGxpbmsgdG8gYW5vdGhlciBtYXApXG4gICAgTm9kZVB1Ymxpc2hlZENvcHksXG4gICAgTm9kZVJldm9rZWQsIC8vIHJldm9rZWQgY29weSAvIHJldm9rZWQgcHVibGlzaGVkIG5vZGVcbiAgICBOb2RlQmxvY2tlZEltcG9ydCwgLy8gbm9kZSB3aXRoIHByb3BlcnR5IGNjbTppbXBvcnRibG9ja2VkID09IHRydWVcbiAgICBOb2RlUHJvcG9zYWwsIC8vIG5vZGUgcHJvcG9zYWwgZm9yIGEgY29sbGVjdGlvblxuICAgIFBlcnNvbixcbiAgICBHcm91cCxcbiAgICBTYXZlZFNlYXJjaCxcbiAgICBVbmtub3duLFxufVxuZXhwb3J0IGNsYXNzIE9wdGlvbkdyb3VwIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIuIFVzZWQgdG8gc2VwZXJhdGUgZWxlbWVudHMgYmFzZWQgb24gdGhlIGdyb3VwXG4gICAgICogQHBhcmFtIHByaW9yaXR5IEdyb3VwIHdpdGggMCBoYXMgaGlnaGVzdCBwcmlvcml0eSwgaGlnaGVyIHZhbHVlcyBtZWFuIGxvd2VyIHByaW9yaXR5XG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHVibGljIGlkOiBzdHJpbmcsIHB1YmxpYyBwcmlvcml0eTogbnVtYmVyKSB7fVxufVxuZXhwb3J0IGNsYXNzIERlZmF1bHRHcm91cHMge1xuICAgIHN0YXRpYyBQcmltYXJ5ID0gbmV3IE9wdGlvbkdyb3VwKCdQcmltYXJ5JywgMTApO1xuICAgIHN0YXRpYyBDcmVhdGUgPSBuZXcgT3B0aW9uR3JvdXAoJ0NyZWF0ZScsIDE1KTtcbiAgICBzdGF0aWMgVmlldyA9IG5ldyBPcHRpb25Hcm91cCgnVmlldycsIDIwKTtcbiAgICBzdGF0aWMgQ3JlYXRlQ29ubmVjdG9yID0gbmV3IE9wdGlvbkdyb3VwKCdDcmVhdGVDb25uZWN0b3InLCAyNSk7XG4gICAgc3RhdGljIENyZWF0ZUx0aVRvb2xzID0gbmV3IE9wdGlvbkdyb3VwKCdDcmVhdGVMdGlUb29scycsIDI4KTtcbiAgICBzdGF0aWMgUmV1c2UgPSBuZXcgT3B0aW9uR3JvdXAoJ1JldXNlJywgMzApO1xuICAgIHN0YXRpYyBFZGl0ID0gbmV3IE9wdGlvbkdyb3VwKCdFZGl0JywgNDApO1xuICAgIHN0YXRpYyBGaWxlT3BlcmF0aW9ucyA9IG5ldyBPcHRpb25Hcm91cCgnRmlsZU9wZXJhdGlvbnMnLCA1MCk7XG4gICAgc3RhdGljIERlbGV0ZSA9IG5ldyBPcHRpb25Hcm91cCgnRGVsZXRlJywgNjApO1xuICAgIHN0YXRpYyBUb2dnbGVzID0gbmV3IE9wdGlvbkdyb3VwKCdUb2dnbGVzJywgNzApO1xufVxuZXhwb3J0IGVudW0gQ29uc3RyYWluIHtcbiAgICBDb2xsZWN0aW9uUmVmZXJlbmNlLCAvLyBvcHRpb24gaXMgb25seSB2aXNpYmxlIGZvciBjb2xsZWN0aW9uIHJlZmVyZW5jZXNcbiAgICBOb0NvbGxlY3Rpb25SZWZlcmVuY2UsIC8vIG9wdGlvbiBpcyBvbmx5IHZpc2libGUgZm9yIG5vbi1jb2xsZWN0aW9uIHJlZmVyZW5jZXNcbiAgICBEaXJlY3RvcnksIC8vIG9ubHkgdmlzaWJsZSBmb3IgZGlyZWN0b3JpZXMgKGNjbTptYXApXG4gICAgQ29sbGVjdGlvbnMsIC8vIG9ubHkgdmlzaWJsZSBmb3IgY29sbGVjdGlvbnNcbiAgICBGaWxlcywgLy8gb25seSB2aXNpYmxlIGZvciBmaWxlcyAoY2NtOmlvKVxuICAgIEZpbGVzQW5kRGlyZWN0b3JpZXMsIC8vIG9ubHkgdmlzaWJsZSBmb3IgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIChjY206aW8gLyBjY206bWFwKSAtIG5vIGNvbGxlY3Rpb25zIVxuICAgIEFkbWluLCAvLyBvbmx5IHZpc2libGUgaWYgdXNlciBpcyBhZG1pbiBvciBlc0RlYnVnIGlzIGVuYWJsZWQgb24gd2luZG93IGNvbXBvbmVudFxuICAgIEFkbWluT3JEZWJ1ZywgLy8gb25seSB2aXNpYmxlIGlmIHVzZXIgaXMgYWRtaW4gb3IgZXNEZWJ1ZyBpcyBlbmFibGVkIG9uIHdpbmRvdyBjb21wb25lbnRcbiAgICBOb0J1bGssIC8vIE5vIHN1cHBvcnQgZm9yIGJ1bGsgKG11bHRpcGxlIG9iamVjdHMpXG4gICAgTm9TZWxlY3Rpb24sIC8vIE9ubHkgdmlzaWJsZSB3aGVuIGN1cnJlbnRseSBubyBlbGVtZW50IGlzIHNlbGVjdGVkXG4gICAgQ2xpcGJvYXJkQ29udGVudCwgLy8gT25seSB2aXNpYmxlIHdoZW4gdGhlIGNsaXBib2FyZCBoYXMgY29udGVudFxuICAgIEFkZE9iamVjdHMsIC8vIE9ubHkgdmlzaWJsZSB3aGVuIGl0IGlzIHBvc3NpYmxlIHRvIGFkZCBvYmplY3RzIGludG8gdGhlIGN1cnJlbnQgbGlzdFxuICAgIEhvbWVSZXBvc2l0b3J5LCAvLyBPbmx5IHZpc2libGUgd2hlbiB0aGUgbm9kZXMgYXJlIGZyb20gdGhlIGxvY2FsIChob21lKSByZXBvc2l0b3J5XG4gICAgVXNlciwgLy8gT25seSB2aXNpYmxlIHdoZW4gYSB1c2VyIGlzIHByZXNlbnQgYW5kIGxvZ2dlZCBpblxuICAgIE5vU2NvcGUsIC8vIE9ubHkgdmlzaWJsZSB3aGVuIG5vIGN1cnJlbnQgc2NvcGUgKGkuZSBcInNhZmVcIiBzY29wZSkgaXMgc2V0XG4gICAgUmV1cmxNb2RlLCAvLyBPbmx5IHZpc2libGUgd2hlbiBhIHJldXJsIGlzIHByZXNlbnQgKGNhbGxlZCB0byBwaWNrIG9iamVjdCBmcm9tIGxtcylcbiAgICBMVElNb2RlLCAvLyBPbmx5IHZpc2libGUgd2hlbiBhIGx0aSBzZXNzaW9uIGlzIHByZXNlbnQgKGNhbGxlZCB0byBwaWNrIG9iamVjdCBmcm9tIGx0aSBwbGF0Zm9ybSlcbn1cblxuZXhwb3J0IGVudW0gVGFyZ2V0IHtcbiAgICBMaXN0LCAvLyBUYXJnZXQgaXMgdGhlIExpc3RUYWJsZUNvbXBvbmVudFxuICAgIExpc3REcm9wZG93bixcbiAgICBBY3Rpb25iYXIsXG4gICAgQ3JlYXRlTWVudSxcbn1cbiJdfQ==
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3R5cGVzL29wdGlvbi1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sQ0FBTixJQUFZLGNBS1g7QUFMRCxXQUFZLGNBQWM7SUFDdEIsdUVBQXVFO0lBQ3ZFLHFEQUFLLENBQUE7SUFDTCxxSEFBcUg7SUFDckgsNkRBQVMsQ0FBQTtBQUNiLENBQUMsRUFMVyxjQUFjLEtBQWQsY0FBYyxRQUt6QjtBQUNELE1BQU0sT0FBTyxVQUFVO0lBb0luQjs7Ozs7OztPQU9HO0lBQ0gsWUFDVyxJQUFZLEVBQ1osSUFBWTtJQUNuQiw2REFBNkQ7SUFDdEQsUUFBaUU7UUFIakUsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFNBQUksR0FBSixJQUFJLENBQVE7UUFFWixhQUFRLEdBQVIsUUFBUSxDQUF5RDtRQS9JNUU7OztXQUdHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7O1dBR0c7UUFDSSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUM1Qjs7O1dBR0c7UUFDSSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3hCOztXQUVHO1FBQ0ksb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDOUI7OztXQUdHO1FBQ0ksbUJBQWMsR0FBdUIsT0FBTyxDQUFDO1FBQ3BEOzs7OztXQUtHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7Ozs7V0FLRztRQUNJLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDMUI7OztXQUdHO1FBQ0ksZUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7O1dBR0c7UUFDSSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3RCOzs7V0FHRztRQUNJLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBWTNCOzs7V0FHRztRQUNJLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFtQ3hCOztXQUVHO1FB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O0FBbEJELFdBQVksU0FBUztJQUNqQix1RUFBbUIsQ0FBQTtJQUNuQiwyRUFBcUIsQ0FBQTtJQUNyQixtREFBUyxDQUFBO0lBQ1QsdURBQVcsQ0FBQTtJQUNYLDJDQUFLLENBQUE7SUFDTCx1RUFBbUIsQ0FBQTtJQUNuQiwyQ0FBSyxDQUFBO0lBQ0wseURBQVksQ0FBQTtJQUNaLDZDQUFNLENBQUE7SUFDTix1REFBVyxDQUFBO0lBQ1gsa0VBQWdCLENBQUE7SUFDaEIsc0RBQVUsQ0FBQTtJQUNWLDhEQUFjLENBQUE7SUFDZCwwQ0FBSSxDQUFBO0lBQ0osZ0RBQU8sQ0FBQTtJQUNQLG9EQUFTLENBQUE7SUFDVCxnREFBTyxDQUFBO0FBQ1gsQ0FBQyxFQWxCVyxTQUFTLEtBQVQsU0FBUyxRQWtCcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxNQUtYO0FBTEQsV0FBWSxNQUFNO0lBQ2QsbUNBQUksQ0FBQTtJQUNKLG1EQUFZLENBQUE7SUFDWiw2Q0FBUyxDQUFBO0lBQ1QsK0NBQVUsQ0FBQTtBQUNkLENBQUMsRUFMVyxNQUFNLEtBQU4sTUFBTSxRQUtqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBvcHRpb24gZnJvbSB0aGUgYWN0aW9uYmFyK2Ryb3Bkb3duIG1lbnVcbiAqIEV4YW1wbGU6XG4gdGhpcy5vcHRpb25zLnB1c2gobmV3IE9wdGlvbkl0ZW0oXCJSRVNUT1JFX1NJTkdMRVwiLFwidW5kb1wiLCAobm9kZSkgPT4gdGhpcy5yZXN0b3JlU2luZ2xlKG5vZGUpKSk7XG4gdGhpcy5vcHRpb25zLnB1c2gobmV3IE9wdGlvbkl0ZW0oXCJERUxFVEVfU0lOR0xFXCIsXCJhcmNoaXZlRGVsZXRlXCIsIChub2RlKSA9PiB0aGlzLmRlbGV0ZVNpbmdsZShub2RlKSkpO1xuXG4gKi9cbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRDb25kaXRpb24gfSBmcm9tICcuLi90eXBlcy9rZXlib2FyZC1zaG9ydGN1dHMnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuXG5leHBvcnQgZW51bSBOb2Rlc1JpZ2h0TW9kZSB7XG4gICAgLy8gcmlnaHRzIG9uIHRoZSBjdXJyZW50IG5vZGUsIG5vIG1hdHRlciBpZiBpdHMgYSByZWZlcmVuY2Ugb3Igb3JpZ2lhbmxcbiAgICBMb2NhbCxcbiAgICAvLyBlZmZlY3RpdmUgcmlnaHRzIG9uIHRoZSBjdXJyZW50IG5vZGUsIG9ubHkgcmVsZXZhbnQgZm9yIGNvbGxlY3Rpb24gcmVmZXJlbmNlcyAoZm9yIG5vbi1yZWZzLCB0aGlzIGVxdWFscyB0byBsb2NhbClcbiAgICBFZmZlY3RpdmUsXG59XG5leHBvcnQgY2xhc3MgT3B0aW9uSXRlbSB7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhpcyBvcHRpb24gd2lsbCBiZSBzaG93biBhbGwgdGhlIHRpbWUgaW4gdGhlIG5vZGUgdGFibGVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvd0Fsd2F5cyA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoaXMgb3B0aW9uIHdpbGwgYmUgc2hvd24gYXMgYW4gYWN0aW9uIChpZiByb29tKS4gSWYgbm9uZSBvZiB0aGUgaXRlbXMgaGFzIHNob3dBc0FjdGlvbiBzZXQsIHRoZSBmaXJzdCBpdGVtcyB3aWxsIGFsd2F5cyBiZSBzaG93biBhcyBhY3Rpb25cbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvd0FzQWN0aW9uID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhpcyBvcHRpb24gd2lsbCBiZSBzaG93biBhcyBhIHRvZ2dsZSBvbiB0aGUgcmlnaHQgc2lkZSAocHJvdmlkZSBpY29uVG9nZ2xlIGFzIGEgdG9nZ2xlIGljb24pXG4gICAgICogQHR5cGUge2Jvb2xlYW59XG4gICAgICovXG4gICAgcHVibGljIGlzVG9nZ2xlID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogT25seSB3aGVuIEBpc1RvZ2dsZS4gaXMgdGhlIHRvZ2dsZSBjdXJyZW50bHkgdmlzaWJsZVxuICAgICAqL1xuICAgIHB1YmxpYyBpc1RvZ2dsZVZpc2libGUgPSB0cnVlO1xuICAgIC8qKlxuICAgICAqIE9ubHkgd2hlbiBAaXNUb2dnbGUuIFdoZXJlIHRvIHBsYWNlIHRoZSB0b2dnbGUsIGJlZm9yZSBvciBhZnRlciBhbGwgb3RoZXIgYWN0aW9uc1xuICAgICAqIEB0eXBlIHtib29sZWFufVxuICAgICAqL1xuICAgIHB1YmxpYyB0b2dnbGVQb3NpdGlvbjogJ2JlZm9yZScgfCAnYWZ0ZXInID0gJ2FmdGVyJztcbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBzaG93cyBhIGxpbmUgYXQgdGhlIHRvcC5cbiAgICAgKlxuICAgICAqIFRoaXMgZmVhdHVyZSBpcyB1c3VhbGx5IGhhbmRsZWQgbm93IGJ5IGFzc29jaWF0aW5nIGFuIGVudHJ5IHRvIGEgYGdyb3VwYFxuICAgICAqIG5vdy4gSG93ZXZlciBgaXNTZXBhcmF0ZWAgaXMga2VwdCBhcyBmYWxsYmFjayBmb3Igbm93LlxuICAgICAqL1xuICAgIHB1YmxpYyBpc1NlcGFyYXRlID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogVGhlIGl0ZW0gd2lsbCBiZSBpbmRpY2F0ZWQgd2l0aCBhbiBhY2NlbnQgY29sb3IgaW4gdGhlIG1lbnUuXG4gICAgICpcbiAgICAgKiBVc2VkIGJ5IHRoZSBkcm9wZG93biB2YXJpYW50IG9mIHRoZSBtYWluIG1lbnUgdG8gaW5kaWNhdGUgdGhlIGN1cnJlbnRseVxuICAgICAqIGFjdGl2ZSBzY29wZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNTZWxlY3RlZCA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIElmIHRydWUsIG9ubHkgZGlzcGxheWVkIG9uIGEgbW9iaWxlIGRldmljZSAoYmFzZWQgb24gdGhlIG5hdmlnYXRvciBhZ2VudClcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgb25seU1vYmlsZSA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIGN1c3RvbSBhcmlhLWxhYmVsXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICBwdWJsaWMgYXJpYUxhYmVsID0gJyc7XG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgb25seSBkaXNwbGF5ZWQgb24gYSBkZXNrdG9wIGRldmljZSAoYmFzZWQgb24gdGhlIG5hdmlnYXRvciBhZ2VudClcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgb25seURlc2t0b3AgPSBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBZb3UgY2FuIHNldCBhIG1lZGlhLXF1ZXJ5IHNpbWlsYXIgdG8gQ1NTLCBzZWUgdGhlIE1FRElBX1FVRVJZIGNvbnN0YW50cyBpbiB1aS1jb25zdGFudHNcbiAgICAgKiBVc2UgaW4gY29tYmluYXRpb24gd2l0aCBtZWRpYVF1ZXJ5VmFsdWVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgbWVkaWFRdWVyeVR5cGU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUaGUgdmFsdWUgZm9yIHRoZSBkZWZpbmVkIG1lZGlhIHF1ZXJ5XG4gICAgICovXG4gICAgcHVibGljIG1lZGlhUXVlcnlWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogU2V0IHRvIGZhbHNlIGlmIHRoZSBhY3Rpb24gc2hvdWxkIGJlIHNob3duLCBidXQgc2hvdWxkIG5vdCBiZSBjbGlja2FibGVcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNFbmFibGVkID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIG9wdGlvbiBzaG91bGQgYmUgbWFudWFsbHkgbWFya2VkIGFzIHByaW1hcnkgYWN0aW9uIHdoZW4gYWx3YXlzIHZpc2libGUgb24gYW5cbiAgICAgKiBgYWN0aW9uYmFyYC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNQcmltYXJ5OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiBjYWxsZWQgd2l0aCB0aGUgbm9kZSBhcyBwYXJhbSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgc2hvd24gZm9yIHRoaXMgbm9kZVxuICAgICAqIElzIGhhbmRsZWQgYnkgb3B0aW9uc0hlbHBlciBhbmQgbWF5IG5vdCBiZSB1c2VkIG90aGVyd2lzZVxuICAgICAqIFBsZWFzZSB1c2UgQGN1c3RvbVNob3dDYWxsYmFjayBpbnN0ZWFkXG4gICAgICovXG4gICAgcHVibGljIHNob3dDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xuICAgIC8qKlxuICAgICAqIEEgZnVuY3Rpb24gY2FsbGVkIHdpdGggdGhlIG5vZGUgYXMgcGFybSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgc2hvd24gZm9yIHRoaXMgbm9kZVxuICAgICAqIFdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBvcHRpb25zSGVscGVyXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbVNob3dDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdIHwgYW55W10pID0+IFByb21pc2U8Ym9vbGVhbj47XG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiBjYWxsZWQgd2l0aCB0aGUgbm9kZSBhcyBwYXJhbSB3aGljaCBzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2UgaWYgdGhlIG9wdGlvbiBzaG91bGQgYmUgZW5hYmxlZCBvciBub3RcbiAgICAgKiBJcyBoYW5kbGVkIGJ5IG9wdGlvbnNIZWxwZXIgYW5kIG1heSBub3QgYmUgdXNlZCBvdGhlcndpc2VcbiAgICAgKiBQbGVhc2UgdXNlIEBjdXN0b21FbmFibGVkQ2FsbGJhY2sgaW5zdGVhZFxuICAgICAqL1xuICAgIHB1YmxpYyBlbmFibGVkQ2FsbGJhY2s6IChub2Rlcz86IE5vZGVbXSkgPT4gUHJvbWlzZTxib29sZWFuPjtcbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIGNhbGxlZCB3aXRoIHRoZSBub2RlIGFzIHBhcmFtIHdoaWNoIHNob3VsZCByZXR1cm4gdHJ1ZSBvciBmYWxzZSBpZiB0aGUgb3B0aW9uIHNob3VsZCBiZSBlbmFibGVkIG9yIG5vdFxuICAgICAqIFdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBvcHRpb25zSGVscGVyXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbUVuYWJsZWRDYWxsYmFjazogKG5vZGVzPzogTm9kZVtdIHwgYW55W10pID0+IFByb21pc2U8Ym9vbGVhbj47XG5cbiAgICAvKipcbiAgICAgKiAgIE9wdGlvbmFsOiBBIGNhbGxiYWNrIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZSBvcHRpb24gd2hlbiBpdCdzIGN1cnJlbnRseSBkaXNhYmxlZCAoZ3JleWVkIG91dClcbiAgICAgKi9cbiAgICBwdWJsaWMgZGlzYWJsZWRDYWxsYmFjazogKG5vZGU/OiBOb2RlIHwgYW55KSA9PiB2b2lkO1xuICAgIC8qKlxuICAgICAqICAgU2hvdyB0aGUgZ2l2ZW4gbmFtZSAoaWYgZmFsc2UsIG9ubHkgaWNvbiB3aWxsIHNob3cpXG4gICAgICovXG4gICAgcHVibGljIHNob3dOYW1lID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIGVsZW1lbnQgd2l0aCAwIGhhcyBoaWdoZXN0IHByaW9yaXR5IGluIGl0J3MgZ3JvdXAsIGhpZ2hlciB2YWx1ZXMgbWVhbiBsb3dlciBwcmlvcml0eVxuICAgICAqL1xuICAgIHB1YmxpYyBwcmlvcml0eTogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIHRoZSBncm91cCB0aGlzIG9wdGlvbiBiZWxvbmdzIHRvXG4gICAgICovXG4gICAgcHVibGljIGdyb3VwOiBPcHRpb25Hcm91cDtcblxuICAgIHB1YmxpYyBrZXlib2FyZFNob3J0Y3V0OiBLZXlib2FyZFNob3J0Y3V0Q29uZGl0aW9uO1xuXG4gICAgLyoqXG4gICAgICogT3IgY29uY2F0IG9mIHN1cHBvcnRlZCBlbGVtZW50IHR5cGVzIGZvciB0aGUgYWN0aW9uXG4gICAgICovXG4gICAgcHVibGljIGVsZW1lbnRUeXBlID0gW0VsZW1lbnRUeXBlLk5vZGVdO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gICAgcHVibGljIGNvbnN0cmFpbnM6IENvbnN0cmFpbltdO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uc01vZGUgPSBIaWRlTW9kZS5EaXNhYmxlO1xuICAgIHB1YmxpYyBwZXJtaXNzaW9uc1JpZ2h0TW9kZSA9IE5vZGVzUmlnaHRNb2RlLkxvY2FsO1xuICAgIHB1YmxpYyB0b29scGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAgIHB1YmxpYyB0b29scGVybWlzc2lvbnNNb2RlID0gSGlkZU1vZGUuRGlzYWJsZTtcbiAgICBwdWJsaWMgc2NvcGVzOiBTY29wZVtdO1xuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSB0aGUgb3B0aW9uIG5hbWUsIHdoaWNoIGlzIHVzZWQgZm9yIHRoZSB0cmFuc2xhdGlvblxuICAgICAqIEBwYXJhbSBpY29uIEEgbWF0ZXJpYWwgaWNvbiBuYW1lXG4gICAgICogQHBhcmFtIGNhbGxiYWNrIEEgZnVuY3Rpb24gY2FsbGJhY2sgd2hlbiB0aGlzIG9wdGlvbiBpcyBjaG9zZW4uIFdpbGwgZ2V0IHRoZSBjdXJyZW50IG5vZGVcbiAgICAgKiBwYXNzZWQgYXMgYW4gYXJndW1lbnQuIElmIGF2YWlsYWJsZSwgdGhlIHJlbGV2YW50IG5vZGVzIGFyZSBwYXNzZWQgYXMgc2Vjb25kIGFyZ3VtZW50LFxuICAgICAqIGkuZS4sIHRoZSBzZWxlY3Rpb24sIGlmIGFueSwgb3IgdGhlIGN1cnJlbnQgbm9kZSBhcyBzaW5nbGUtaXRlbSBhcnJheSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcsXG4gICAgICAgIHB1YmxpYyBpY29uOiBzdHJpbmcsXG4gICAgICAgIC8vIFRPRE86IE1heWJlIHN3aXRjaCB0byBvbmx5IHByb3ZpZGluZyB0aGUgc2Vjb25kIHBhcmFtZXRlci5cbiAgICAgICAgcHVibGljIGNhbGxiYWNrOiAob2JqZWN0PzogTm9kZSB8IGFueSwgb2JqZWN0cz86IChOb2RlIHwgYW55KVtdKSA9PiB2b2lkLFxuICAgICkge31cbn1cbmV4cG9ydCBjbGFzcyBDdXN0b21PcHRpb25zIHtcbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBhbGwgZXhpc3Rpbmcgb3IgYXZhaWxhYmxlIG9wdGlvbnMgZm9yIHRoZSBvYmplY3Qgc3RheVxuICAgICAqIElmIGZhbHNlLCBubyBvcHRpb25zIHdpbGwgYmUgc2V0LCBvbmx5IHRoZSBvcHRpb25zIGluIFwiYWRkT3B0aW9uc1wiIGFyZSB1c2VkXG4gICAgICovXG4gICAgcHVibGljIHVzZURlZmF1bHRPcHRpb25zPyA9IHRydWU7XG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBpZHMgb2Ygb3B0aW9ucyB0byBleHBsaWNpdGx5IHN1cHBvcnRcbiAgICAgKi9cbiAgICBwdWJsaWMgc3VwcG9ydGVkT3B0aW9ucz86IHN0cmluZ1tdO1xuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgaWRzIG9mIG9wdGlvbnMgdG8gZXhwbGljaXRseSByZW1vdmVcbiAgICAgKiBPbmx5IHN1cHBvcnRlZCBpZiBzdXBwb3J0ZWRPcHRpb25zIGlzIGVtcHR5XG4gICAgICovXG4gICAgcHVibGljIHJlbW92ZU9wdGlvbnM/OiBzdHJpbmdbXTtcbiAgICAvKipcbiAgICAgKiBPcHRpb25zIHRvIGFkZC9pbnNlcnQgaW50byB0aGUgbWVudVxuICAgICAqL1xuICAgIHB1YmxpYyBhZGRPcHRpb25zPzogT3B0aW9uSXRlbVtdO1xufVxuZXhwb3J0IGVudW0gSGlkZU1vZGUge1xuICAgIERpc2FibGUsXG4gICAgSGlkZSxcbn1cbmV4cG9ydCBlbnVtIFNjb3BlIHtcbiAgICBSZW5kZXIgPSAnUmVuZGVyJyxcbiAgICBTZWFyY2ggPSAnU2VhcmNoJyxcbiAgICBTZWFyY2hDb2xsZWN0aW9ucyA9ICdTZWFyY2hDb2xsZWN0aW9ucycsXG4gICAgU2F2ZWRTZWFyY2hlcyA9ICdTYXZlZFNlYXJjaGVzJyxcbiAgICBDb2xsZWN0aW9uc1JlZmVyZW5jZXMgPSAnQ29sbGVjdGlvbnNSZWZlcmVuY2VzJyxcbiAgICBDb2xsZWN0aW9uc1Byb3Bvc2FscyA9ICdDb2xsZWN0aW9uc1Byb3Bvc2FscycsXG4gICAgQ29sbGVjdGlvbnNDb2xsZWN0aW9uID0gJ0NvbGxlY3Rpb25zQ29sbGVjdGlvbicsXG4gICAgV29ya3NwYWNlTGlzdCA9ICdXb3Jrc3BhY2VMaXN0JyxcbiAgICBXb3Jrc3BhY2VUcmVlID0gJ1dvcmtzcGFjZVRyZWUnLFxuICAgIFNoYXJpbmcgPSAnU2hhcmluZycsXG4gICAgT2VyID0gJ09lcicsXG4gICAgVXNlck1hbmFnZW1lbnQgPSAnVXNlck1hbmFnZW1lbnQnLFxuICAgIFVzZXJQcm9maWxlID0gJ1VzZXJQcm9maWxlJyxcbiAgICBTdHJlYW0gPSAnU3RyZWFtJyxcbiAgICBDcmVhdGVNZW51ID0gJ0NyZWF0ZU1lbnUnLFxuXG4gICAgTWVkaWFjZW50ZXJOb2Rlc0xpc3QgPSAnTWVkaWFjZW50ZXJOb2Rlc0xpc3QnLFxuICAgIEFkbWluID0gJ0FkbWluJywgLy8gQWRtaW4gVG9vbHMgLyBEZWJ1Z2dpbmdcbiAgICBEZWJ1Z1Nob3dBbGwgPSAnRGVidWdTaG93QWxsJywgLy8gRnVsbCBkZWJ1ZyBtb2RlIHdoaWNoIGVuYWJsZXMgYWxsIG9wdGlvbnNcbn1cbmV4cG9ydCBlbnVtIEVsZW1lbnRUeXBlIHtcbiAgICBOb2RlLFxuICAgIE5vZGVDaGlsZCwgLy8gQ2hpbGQgb2JqZWN0XG4gICAgTWFwUmVmLCAvLyBNYXAgcmVmIChsaW5rIHRvIGFub3RoZXIgbWFwKVxuICAgIE5vZGVQdWJsaXNoZWRDb3B5LFxuICAgIE5vZGVSZXZva2VkLCAvLyByZXZva2VkIGNvcHkgLyByZXZva2VkIHB1Ymxpc2hlZCBub2RlXG4gICAgTm9kZUJsb2NrZWRJbXBvcnQsIC8vIG5vZGUgd2l0aCBwcm9wZXJ0eSBjY206aW1wb3J0YmxvY2tlZCA9PSB0cnVlXG4gICAgTm9kZVByb3Bvc2FsLCAvLyBub2RlIHByb3Bvc2FsIGZvciBhIGNvbGxlY3Rpb25cbiAgICBQZXJzb24sXG4gICAgR3JvdXAsXG4gICAgU2F2ZWRTZWFyY2gsXG4gICAgVW5rbm93bixcbn1cbmV4cG9ydCBjbGFzcyBPcHRpb25Hcm91cCB7XG4gICAgLyoqXG4gICAgICogQHBhcmFtIGlkIFRoZSBncm91cCBpZGVudGlmaWVyLiBVc2VkIHRvIHNlcGVyYXRlIGVsZW1lbnRzIGJhc2VkIG9uIHRoZSBncm91cFxuICAgICAqIEBwYXJhbSBwcmlvcml0eSBHcm91cCB3aXRoIDAgaGFzIGhpZ2hlc3QgcHJpb3JpdHksIGhpZ2hlciB2YWx1ZXMgbWVhbiBsb3dlciBwcmlvcml0eVxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBpZDogc3RyaW5nLCBwdWJsaWMgcHJpb3JpdHk6IG51bWJlcikge31cbn1cbmV4cG9ydCBjbGFzcyBEZWZhdWx0R3JvdXBzIHtcbiAgICBzdGF0aWMgUHJpbWFyeSA9IG5ldyBPcHRpb25Hcm91cCgnUHJpbWFyeScsIDEwKTtcbiAgICBzdGF0aWMgQ3JlYXRlID0gbmV3IE9wdGlvbkdyb3VwKCdDcmVhdGUnLCAxNSk7XG4gICAgc3RhdGljIFZpZXcgPSBuZXcgT3B0aW9uR3JvdXAoJ1ZpZXcnLCAyMCk7XG4gICAgc3RhdGljIENyZWF0ZUNvbm5lY3RvciA9IG5ldyBPcHRpb25Hcm91cCgnQ3JlYXRlQ29ubmVjdG9yJywgMjUpO1xuICAgIHN0YXRpYyBDcmVhdGVMdGlUb29scyA9IG5ldyBPcHRpb25Hcm91cCgnQ3JlYXRlTHRpVG9vbHMnLCAyOCk7XG4gICAgc3RhdGljIFJldXNlID0gbmV3IE9wdGlvbkdyb3VwKCdSZXVzZScsIDMwKTtcbiAgICBzdGF0aWMgRWRpdCA9IG5ldyBPcHRpb25Hcm91cCgnRWRpdCcsIDQwKTtcbiAgICBzdGF0aWMgRmlsZU9wZXJhdGlvbnMgPSBuZXcgT3B0aW9uR3JvdXAoJ0ZpbGVPcGVyYXRpb25zJywgNTApO1xuICAgIHN0YXRpYyBEZWxldGUgPSBuZXcgT3B0aW9uR3JvdXAoJ0RlbGV0ZScsIDYwKTtcbiAgICBzdGF0aWMgVG9nZ2xlcyA9IG5ldyBPcHRpb25Hcm91cCgnVG9nZ2xlcycsIDcwKTtcbn1cbmV4cG9ydCBlbnVtIENvbnN0cmFpbiB7XG4gICAgQ29sbGVjdGlvblJlZmVyZW5jZSwgLy8gb3B0aW9uIGlzIG9ubHkgdmlzaWJsZSBmb3IgY29sbGVjdGlvbiByZWZlcmVuY2VzXG4gICAgTm9Db2xsZWN0aW9uUmVmZXJlbmNlLCAvLyBvcHRpb24gaXMgb25seSB2aXNpYmxlIGZvciBub24tY29sbGVjdGlvbiByZWZlcmVuY2VzXG4gICAgRGlyZWN0b3J5LCAvLyBvbmx5IHZpc2libGUgZm9yIGRpcmVjdG9yaWVzIChjY206bWFwKVxuICAgIENvbGxlY3Rpb25zLCAvLyBvbmx5IHZpc2libGUgZm9yIGNvbGxlY3Rpb25zXG4gICAgRmlsZXMsIC8vIG9ubHkgdmlzaWJsZSBmb3IgZmlsZXMgKGNjbTppbylcbiAgICBGaWxlc0FuZERpcmVjdG9yaWVzLCAvLyBvbmx5IHZpc2libGUgZm9yIGZpbGVzIGFuZCBkaXJlY3RvcmllcyAoY2NtOmlvIC8gY2NtOm1hcCkgLSBubyBjb2xsZWN0aW9ucyFcbiAgICBBZG1pbiwgLy8gb25seSB2aXNpYmxlIGlmIHVzZXIgaXMgYWRtaW4gb3IgZXNEZWJ1ZyBpcyBlbmFibGVkIG9uIHdpbmRvdyBjb21wb25lbnRcbiAgICBBZG1pbk9yRGVidWcsIC8vIG9ubHkgdmlzaWJsZSBpZiB1c2VyIGlzIGFkbWluIG9yIGVzRGVidWcgaXMgZW5hYmxlZCBvbiB3aW5kb3cgY29tcG9uZW50XG4gICAgTm9CdWxrLCAvLyBObyBzdXBwb3J0IGZvciBidWxrIChtdWx0aXBsZSBvYmplY3RzKVxuICAgIE5vU2VsZWN0aW9uLCAvLyBPbmx5IHZpc2libGUgd2hlbiBjdXJyZW50bHkgbm8gZWxlbWVudCBpcyBzZWxlY3RlZFxuICAgIENsaXBib2FyZENvbnRlbnQsIC8vIE9ubHkgdmlzaWJsZSB3aGVuIHRoZSBjbGlwYm9hcmQgaGFzIGNvbnRlbnRcbiAgICBBZGRPYmplY3RzLCAvLyBPbmx5IHZpc2libGUgd2hlbiBpdCBpcyBwb3NzaWJsZSB0byBhZGQgb2JqZWN0cyBpbnRvIHRoZSBjdXJyZW50IGxpc3RcbiAgICBIb21lUmVwb3NpdG9yeSwgLy8gT25seSB2aXNpYmxlIHdoZW4gdGhlIG5vZGVzIGFyZSBmcm9tIHRoZSBsb2NhbCAoaG9tZSkgcmVwb3NpdG9yeVxuICAgIFVzZXIsIC8vIE9ubHkgdmlzaWJsZSB3aGVuIGEgdXNlciBpcyBwcmVzZW50IGFuZCBsb2dnZWQgaW5cbiAgICBOb1Njb3BlLCAvLyBPbmx5IHZpc2libGUgd2hlbiBubyBjdXJyZW50IHNjb3BlIChpLmUgXCJzYWZlXCIgc2NvcGUpIGlzIHNldFxuICAgIFJldXJsTW9kZSwgLy8gT25seSB2aXNpYmxlIHdoZW4gYSByZXVybCBpcyBwcmVzZW50IChjYWxsZWQgdG8gcGljayBvYmplY3QgZnJvbSBsbXMpXG4gICAgTFRJTW9kZSwgLy8gT25seSB2aXNpYmxlIHdoZW4gYSBsdGkgc2Vzc2lvbiBpcyBwcmVzZW50IChjYWxsZWQgdG8gcGljayBvYmplY3QgZnJvbSBsdGkgcGxhdGZvcm0pXG59XG5cbmV4cG9ydCBlbnVtIFRhcmdldCB7XG4gICAgTGlzdCwgLy8gVGFyZ2V0IGlzIHRoZSBMaXN0VGFibGVDb21wb25lbnRcbiAgICBMaXN0RHJvcGRvd24sXG4gICAgQWN0aW9uYmFyLFxuICAgIENyZWF0ZU1lbnUsXG59XG4iXX0=
|
|
@@ -7,6 +7,8 @@ export class RestHelper {
|
|
|
7
7
|
static getName(node) {
|
|
8
8
|
if (node.name)
|
|
9
9
|
return node.name;
|
|
10
|
+
if (node.properties?.[RestConstants.CM_NAME])
|
|
11
|
+
return node.properties[RestConstants.CM_NAME].join();
|
|
10
12
|
if (node.title)
|
|
11
13
|
return node.title;
|
|
12
14
|
if (node.ref)
|
|
@@ -26,8 +28,8 @@ export class RestHelper {
|
|
|
26
28
|
}
|
|
27
29
|
static getTitleFromProperties(properties) {
|
|
28
30
|
return properties[RestConstants.LOM_PROP_TITLE]
|
|
29
|
-
? properties[RestConstants.LOM_PROP_TITLE]
|
|
30
|
-
: properties[RestConstants.CM_NAME];
|
|
31
|
+
? properties[RestConstants.LOM_PROP_TITLE]?.join()
|
|
32
|
+
: properties[RestConstants.CM_NAME]?.join();
|
|
31
33
|
}
|
|
32
34
|
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3V0aWwvcmVzdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFRLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7YUFDRixxQkFBZ0IsR0FBRywwQkFBMEIsQ0FBQztJQUN4RCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQVU7UUFDNUIsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztRQUNoQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekQsSUFBSSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNsQyxJQUFJLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ00sTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFVO1FBQzdCLElBQUksSUFBSSxFQUFFLEtBQUs7WUFBRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDbkMsSUFBSSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksRUFBRSxJQUFJLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQUksSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDO1lBQ25CLE9BQU8sVUFBVSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBQ00sTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQWU7UUFDaEQsT0FBTyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztZQUMzQyxDQUFDLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBRSxJQUFJLEVBQUU7WUFDbEQsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGUsIFJlc3RDb25zdGFudHMgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbi8qKlxuICogRGlmZmVyZW50IGhlbHBlciBmdW5jdGlvbnMsIG1heSBiZSB1c2VkIGdsb2JhbGx5XG4gKi9cbmV4cG9ydCBjbGFzcyBSZXN0SGVscGVyIHtcbiAgICBwcm90ZWN0ZWQgc3RhdGljIFNQQUNFU19TVE9SRV9SRUYgPSAnd29ya3NwYWNlOi8vU3BhY2VzU3RvcmUvJztcbiAgICBwdWJsaWMgc3RhdGljIGdldE5hbWUobm9kZTogTm9kZSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChub2RlLm5hbWUpIHJldHVybiBub2RlLm5hbWU7XG4gICAgICAgIGlmIChub2RlLnByb3BlcnRpZXM/LltSZXN0Q29uc3RhbnRzLkNNX05BTUVdKVxuICAgICAgICAgICAgcmV0dXJuIG5vZGUucHJvcGVydGllc1tSZXN0Q29uc3RhbnRzLkNNX05BTUVdLmpvaW4oKTtcbiAgICAgICAgaWYgKG5vZGUudGl0bGUpIHJldHVybiBub2RlLnRpdGxlO1xuICAgICAgICBpZiAobm9kZS5yZWYpIHJldHVybiBub2RlLnJlZi5pZDtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGl0bGUobm9kZTogTm9kZSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChub2RlPy50aXRsZSkgcmV0dXJuIG5vZGUudGl0bGU7XG4gICAgICAgIGlmIChub2RlPy5uYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gbm9kZT8ubmFtZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZT8ucHJvcGVydGllcykge1xuICAgICAgICAgICAgcmV0dXJuIFJlc3RIZWxwZXIuZ2V0VGl0bGVGcm9tUHJvcGVydGllcyhub2RlPy5wcm9wZXJ0aWVzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGl0bGVGcm9tUHJvcGVydGllcyhwcm9wZXJ0aWVzOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gcHJvcGVydGllc1tSZXN0Q29uc3RhbnRzLkxPTV9QUk9QX1RJVExFXVxuICAgICAgICAgICAgPyBwcm9wZXJ0aWVzW1Jlc3RDb25zdGFudHMuTE9NX1BST1BfVElUTEVdPy5qb2luKClcbiAgICAgICAgICAgIDogcHJvcGVydGllc1tSZXN0Q29uc3RhbnRzLkNNX05BTUVdPy5qb2luKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { transition, style, animate, state, trigger } from '@angular/animations';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { Injectable, Directive, Optional, Input, Pipe, Component, ViewChild, EventEmitter, Output, HostListener, InjectionToken, Inject, HostBinding, NgModule, ContentChild, signal, ChangeDetectionStrategy, effect, ElementRef, ViewChildren, SkipSelf } from '@angular/core';
|
|
4
|
-
import { isArray as isArray$1 } from 'lodash';
|
|
4
|
+
import { isArray as isArray$1, isString } from 'lodash';
|
|
5
5
|
import * as rxjs from 'rxjs';
|
|
6
6
|
import { BehaviorSubject, combineLatest as combineLatest$1, Observable, ReplaySubject, Subject, merge, from, of, fromEvent, interval, firstValueFrom, forkJoin, concat } from 'rxjs';
|
|
7
7
|
import { map, distinctUntilChanged, filter, take, switchMap, pairwise, takeUntil, first, tap, startWith, delay as delay$1, debounceTime, shareReplay, catchError, reduce } from 'rxjs/operators';
|
|
@@ -2206,6 +2206,8 @@ class RestHelper {
|
|
|
2206
2206
|
static getName(node) {
|
|
2207
2207
|
if (node.name)
|
|
2208
2208
|
return node.name;
|
|
2209
|
+
if (node.properties?.[RestConstants.CM_NAME])
|
|
2210
|
+
return node.properties[RestConstants.CM_NAME].join();
|
|
2209
2211
|
if (node.title)
|
|
2210
2212
|
return node.title;
|
|
2211
2213
|
if (node.ref)
|
|
@@ -2225,14 +2227,14 @@ class RestHelper {
|
|
|
2225
2227
|
}
|
|
2226
2228
|
static getTitleFromProperties(properties) {
|
|
2227
2229
|
return properties[RestConstants.LOM_PROP_TITLE]
|
|
2228
|
-
? properties[RestConstants.LOM_PROP_TITLE]
|
|
2229
|
-
: properties[RestConstants.CM_NAME];
|
|
2230
|
+
? properties[RestConstants.LOM_PROP_TITLE]?.join()
|
|
2231
|
+
: properties[RestConstants.CM_NAME]?.join();
|
|
2230
2232
|
}
|
|
2231
2233
|
}
|
|
2232
2234
|
|
|
2233
2235
|
class NodeTitlePipe {
|
|
2234
2236
|
transform(node, args) {
|
|
2235
|
-
if (!node?.name) {
|
|
2237
|
+
if (!node?.name && isString(node)) {
|
|
2236
2238
|
if (node === 'HOME') {
|
|
2237
2239
|
return this.translate.instant('WORKSPACE.' + node);
|
|
2238
2240
|
}
|
|
@@ -4037,6 +4039,7 @@ var Scope;
|
|
|
4037
4039
|
Scope["Sharing"] = "Sharing";
|
|
4038
4040
|
Scope["Oer"] = "Oer";
|
|
4039
4041
|
Scope["UserManagement"] = "UserManagement";
|
|
4042
|
+
Scope["UserProfile"] = "UserProfile";
|
|
4040
4043
|
Scope["Stream"] = "Stream";
|
|
4041
4044
|
Scope["CreateMenu"] = "CreateMenu";
|
|
4042
4045
|
Scope["MediacenterNodesList"] = "MediacenterNodesList";
|
|
@@ -5506,11 +5509,11 @@ class NodeEntriesGlobalOptionsComponent {
|
|
|
5506
5509
|
return this.entriesService.globalOptionsSubject.pipe(map((options) => options.filter((e) => e.isEnabled)));
|
|
5507
5510
|
}
|
|
5508
5511
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesGlobalOptionsComponent, deps: [{ token: NodeEntriesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5509
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeEntriesGlobalOptionsComponent, selector: "es-node-entries-global-options", inputs: { displayType: "displayType" }, ngImport: i0, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5512
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NodeEntriesGlobalOptionsComponent, selector: "es-node-entries-global-options", inputs: { displayType: "displayType" }, ngImport: i0, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #6d176e;--aiColorText: #fff;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i5$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5510
5513
|
}
|
|
5511
5514
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NodeEntriesGlobalOptionsComponent, decorators: [{
|
|
5512
5515
|
type: Component,
|
|
5513
|
-
args: [{ selector: 'es-node-entries-global-options', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"] }]
|
|
5516
|
+
args: [{ selector: 'es-node-entries-global-options', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"(getEnabledOptions() | async)?.length\"\n role=\"listitem\"\n class=\"global-options\"\n [class.global-options-small]=\"displayType === NodeEntriesDisplayType.SmallGrid\"\n [class.global-options-table]=\"displayType === NodeEntriesDisplayType.Table\"\n>\n <button\n mat-button\n *ngFor=\"let option of getEnabledOptions() | async\"\n (click)=\"option.callback()\"\n class=\"global-option-btn\"\n attr.data-test=\"card-button-{{ option.name }}\"\n >\n <ng-container *ngTemplateOutlet=\"globalOption; context: { option: this.option }\"></ng-container>\n </button>\n</div>\n<ng-template #globalOption let-option=\"option\">\n <span class=\"global-option\">\n <i [esIcon]=\"option.icon\"></i>\n <span class=\"label\">{{ option.name | translate }}</span>\n </span>\n</ng-template>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #6d176e;--aiColorText: #fff;--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--focusWidth: 2px;--fontSizeXSmall: 85%;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}.global-options{display:grid;grid-template-columns:auto;grid-template-rows:repeat(auto-fit,minmax(70px,1fr));grid-row-gap:20px;height:100%;min-height:250px}.global-options.global-options-small{min-height:130px}.global-options.global-options-table{min-height:100px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-column-gap:20px}.global-options .global-option-btn{display:flex;height:100%;padding:0}.global-options .global-option{cursor:pointer;display:flex;box-shadow:0 0 5px #0000004d;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;border:3px dashed var(--primary);color:var(--primary)}.global-options .global-option>i{font-size:32px;margin-bottom:5px}.global-options .global-option>.label{cursor:pointer;font-weight:700}.global-options .global-option:hover,.global-options .global-option:focus{background-color:rgb(var(--palette-primary-50))}:host ::ng-deep .global-options .global-option-btn .mdc-button__label{width:100%;height:100%}\n"] }]
|
|
5514
5517
|
}], ctorParameters: () => [{ type: NodeEntriesService }], propDecorators: { displayType: [{
|
|
5515
5518
|
type: Input
|
|
5516
5519
|
}] } });
|
|
@@ -6164,11 +6167,12 @@ class OptionsHelperService {
|
|
|
6164
6167
|
}
|
|
6165
6168
|
|
|
6166
6169
|
class OptionsHelperDataService {
|
|
6167
|
-
constructor(ngZone, route, localEvents, authenticationService, userService, networkService, keyboardShortcutsService, optionsHelperService) {
|
|
6170
|
+
constructor(ngZone, route, localEvents, authenticationService, toast, userService, networkService, keyboardShortcutsService, optionsHelperService) {
|
|
6168
6171
|
this.ngZone = ngZone;
|
|
6169
6172
|
this.route = route;
|
|
6170
6173
|
this.localEvents = localEvents;
|
|
6171
6174
|
this.authenticationService = authenticationService;
|
|
6175
|
+
this.toast = toast;
|
|
6172
6176
|
this.userService = userService;
|
|
6173
6177
|
this.networkService = networkService;
|
|
6174
6178
|
this.keyboardShortcutsService = keyboardShortcutsService;
|
|
@@ -6243,15 +6247,21 @@ class OptionsHelperDataService {
|
|
|
6243
6247
|
}
|
|
6244
6248
|
});
|
|
6245
6249
|
}
|
|
6246
|
-
handleKeyboardEvent(event) {
|
|
6250
|
+
async handleKeyboardEvent(event) {
|
|
6247
6251
|
if (this.globalOptions && !this.keyboardShortcutsService?.shouldIgnoreShortcut(event)) {
|
|
6248
|
-
const
|
|
6249
|
-
option.keyboardShortcut &&
|
|
6250
|
-
|
|
6251
|
-
|
|
6252
|
-
|
|
6253
|
-
|
|
6254
|
-
|
|
6252
|
+
for (const option of this.globalOptions) {
|
|
6253
|
+
if (option.keyboardShortcut &&
|
|
6254
|
+
matchesShortcutCondition(event, option.keyboardShortcut)) {
|
|
6255
|
+
event.preventDefault();
|
|
6256
|
+
event.stopPropagation();
|
|
6257
|
+
if (await option.enabledCallback()) {
|
|
6258
|
+
this.ngZone.run(() => option.callback(null));
|
|
6259
|
+
}
|
|
6260
|
+
else {
|
|
6261
|
+
this.toast.error(null, 'TOAST.OPTION_DISABLED_OR_UNAVAILABLE');
|
|
6262
|
+
}
|
|
6263
|
+
break;
|
|
6264
|
+
}
|
|
6255
6265
|
}
|
|
6256
6266
|
}
|
|
6257
6267
|
}
|
|
@@ -6274,12 +6284,12 @@ class OptionsHelperDataService {
|
|
|
6274
6284
|
pasteNode(nodes = []) {
|
|
6275
6285
|
this.optionsHelperService.pasteNode(this.components, this.data, true, nodes);
|
|
6276
6286
|
}
|
|
6277
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, deps: [{ token: i0.NgZone }, { token: i2$1.ActivatedRoute }, { token: LocalEventsService }, { token: i2.AuthenticationService }, { token: i2.UserService }, { token: i2.NetworkService }, { token: KeyboardShortcutsService, optional: true }, { token: OptionsHelperService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6287
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, deps: [{ token: i0.NgZone }, { token: i2$1.ActivatedRoute }, { token: LocalEventsService }, { token: i2.AuthenticationService }, { token: Toast }, { token: i2.UserService }, { token: i2.NetworkService }, { token: KeyboardShortcutsService, optional: true }, { token: OptionsHelperService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6278
6288
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService }); }
|
|
6279
6289
|
}
|
|
6280
6290
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OptionsHelperDataService, decorators: [{
|
|
6281
6291
|
type: Injectable
|
|
6282
|
-
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i2$1.ActivatedRoute }, { type: LocalEventsService }, { type: i2.AuthenticationService }, { type: i2.UserService }, { type: i2.NetworkService }, { type: KeyboardShortcutsService, decorators: [{
|
|
6292
|
+
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i2$1.ActivatedRoute }, { type: LocalEventsService }, { type: i2.AuthenticationService }, { type: Toast }, { type: i2.UserService }, { type: i2.NetworkService }, { type: KeyboardShortcutsService, decorators: [{
|
|
6283
6293
|
type: Optional
|
|
6284
6294
|
}] }, { type: OptionsHelperService, decorators: [{
|
|
6285
6295
|
type: Optional
|
|
@@ -6296,6 +6306,7 @@ class NodeEntriesComponent {
|
|
|
6296
6306
|
this.translate = translate;
|
|
6297
6307
|
this.NodeEntriesDisplayType = NodeEntriesDisplayType;
|
|
6298
6308
|
this.destroyed = new Subject();
|
|
6309
|
+
this.updateKeyboardShortcuts = new Subject();
|
|
6299
6310
|
}
|
|
6300
6311
|
ngOnInit() {
|
|
6301
6312
|
if (this.entriesService.primaryInstance) {
|