ngx-edu-sharing-ui 9.1.1 → 9999.0.0
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.scss +2 -0
- package/assets/scss/variables.scss +2 -1
- package/esm2022/lib/actionbar/actionbar.component.mjs +6 -6
- package/esm2022/lib/common/edu-sharing-ui-common.module.mjs +4 -4
- package/esm2022/lib/directives/border-box-observer.directive.mjs +5 -5
- package/esm2022/lib/directives/check-text-overflow.directive.mjs +5 -5
- package/esm2022/lib/directives/drag-nodes/nodes-drag-source.directive.mjs +5 -5
- package/esm2022/lib/directives/drag-nodes/nodes-drag.directive.mjs +5 -5
- package/esm2022/lib/directives/drag-nodes/nodes-drop-target.directive.mjs +5 -5
- package/esm2022/lib/directives/focus-state.directive.mjs +5 -5
- package/esm2022/lib/directives/icon.directive.mjs +6 -6
- package/esm2022/lib/directives/infinite-scroll.directive.mjs +5 -5
- package/esm2022/lib/dropdown/dropdown.component.mjs +6 -6
- package/esm2022/lib/edu-sharing-ui-configuration.mjs +3 -3
- package/esm2022/lib/edu-sharing-ui.module.mjs +9 -5
- package/esm2022/lib/list-items/format-duration.pipe.mjs +3 -3
- package/esm2022/lib/list-items/list-base/list-base.component.mjs +5 -5
- package/esm2022/lib/list-items/list-collection-info/list-collection-info.component.mjs +5 -5
- package/esm2022/lib/list-items/list-counts/list-counts.component.mjs +4 -4
- package/esm2022/lib/list-items/list-items.module.mjs +4 -4
- package/esm2022/lib/list-items/list-node-license/list-node-license.component.mjs +5 -5
- package/esm2022/lib/list-items/list-node-replication-source/list-node-replication-source.component.mjs +5 -5
- package/esm2022/lib/list-items/list-node-workflow/list-node-workflow.component.mjs +5 -5
- package/esm2022/lib/list-items/list-text/list-text.component.mjs +8 -10
- package/esm2022/lib/list-items/list-widget.mjs +5 -5
- package/esm2022/lib/list-items/node-row/node-row.component.mjs +5 -5
- package/esm2022/lib/list-items/node-source.pipe.mjs +5 -5
- package/esm2022/lib/mds/mds-helper.service.mjs +167 -0
- package/esm2022/lib/mds/mds.module.mjs +16 -0
- package/esm2022/lib/node-entries/drag-preview/drag-preview.component.mjs +3 -3
- package/esm2022/lib/node-entries/items-cap.mjs +1 -1
- package/esm2022/lib/node-entries/list-item-label.pipe.mjs +5 -5
- package/esm2022/lib/node-entries/node-cache.mjs +1 -1
- package/esm2022/lib/node-entries/node-data-source-remote.mjs +1 -1
- package/esm2022/lib/node-entries/node-data-source.mjs +1 -1
- package/esm2022/lib/node-entries/node-entries-card/node-entries-card.component.mjs +7 -7
- package/esm2022/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-entries-card-small/node-entries-card-small.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-entries-global-options/node-entries-global-options.component.mjs +10 -6
- package/esm2022/lib/node-entries/node-entries-global.service.mjs +5 -5
- package/esm2022/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-entries-table/node-entries-table.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-entries-templates.service.mjs +4 -4
- package/esm2022/lib/node-entries/node-entries-wrapper.component.mjs +5 -5
- package/esm2022/lib/node-entries/node-entries.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-entries.module.mjs +4 -4
- package/esm2022/lib/node-entries/node-rating/node-rating.component.mjs +5 -5
- package/esm2022/lib/node-entries/node-stats-badges/node-stats-badges.component.mjs +6 -6
- package/esm2022/lib/node-entries/node-type-badge/node-type-badge.component.mjs +5 -5
- package/esm2022/lib/node-entries/option-button/option-button.component.mjs +5 -5
- package/esm2022/lib/node-entries/preview-image/preview-image.component.mjs +5 -5
- package/esm2022/lib/node-entries/sort-select-panel/sort-select-panel.component.mjs +5 -5
- package/esm2022/lib/node-url/node-url.component.mjs +5 -5
- package/esm2022/lib/pipes/file-size.pipe.mjs +5 -5
- package/esm2022/lib/pipes/format-date.pipe.mjs +5 -5
- package/esm2022/lib/pipes/node-icon.pipe.mjs +4 -4
- package/esm2022/lib/pipes/node-image-size.pipe.mjs +4 -4
- package/esm2022/lib/pipes/node-image.pipe.mjs +5 -5
- package/esm2022/lib/pipes/node-person-name.pipe.mjs +5 -5
- package/esm2022/lib/pipes/node-title.pipe.mjs +4 -4
- package/esm2022/lib/pipes/option-tooltip.pipe.mjs +5 -5
- package/esm2022/lib/pipes/property-slug.pipe.mjs +3 -3
- package/esm2022/lib/pipes/replace-chars.pipe.mjs +5 -5
- package/esm2022/lib/pipes/vcard-name.pipe.mjs +4 -4
- package/esm2022/lib/services/abstract/keyboard-shortcuts.service.mjs +3 -3
- package/esm2022/lib/services/accessibility.service.mjs +5 -5
- package/esm2022/lib/services/app-container.service.mjs +5 -5
- package/esm2022/lib/services/local-events.service.mjs +3 -3
- package/esm2022/lib/services/node-entries.service.mjs +5 -5
- package/esm2022/lib/services/node-helper.service.mjs +6 -6
- package/esm2022/lib/services/nodes-drag-drop.service.mjs +5 -5
- package/esm2022/lib/services/options-helper-data.service.mjs +6 -6
- package/esm2022/lib/services/repo-url.service.mjs +5 -5
- package/esm2022/lib/services/temporary-storage.service.mjs +5 -5
- package/esm2022/lib/services/ui.service.mjs +5 -5
- package/esm2022/lib/sort-dropdown/sort-dropdown.component.mjs +5 -5
- package/esm2022/lib/spinner/spinner.component.mjs +6 -6
- package/esm2022/lib/translations/translation-loader.mjs +12 -9
- package/esm2022/lib/translations/translations.module.mjs +7 -7
- package/esm2022/lib/translations/translations.service.mjs +16 -8
- package/esm2022/lib/util/DateHelper.mjs +1 -1
- package/esm2022/lib/util/VCard.mjs +1 -1
- package/esm2022/lib/util/color-helper.mjs +1 -1
- package/esm2022/lib/util/duration-helper.mjs +1 -1
- package/esm2022/lib/util/helper.mjs +1 -1
- package/esm2022/lib/util/rest-helper.mjs +1 -1
- package/esm2022/module.mjs +3 -1
- package/fesm2022/ngx-edu-sharing-ui.mjs +539 -350
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
- package/lib/edu-sharing-ui.module.d.ts +7 -6
- 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/mds/mds-helper.service.d.ts +37 -0
- package/lib/mds/mds.module.d.ts +6 -0
- package/lib/node-entries/node-data-source-remote.d.ts +2 -2
- package/lib/node-entries/node-entries-global-options/node-entries-global-options.component.d.ts +1 -0
- package/lib/types/option-item.d.ts +21 -21
- package/lib/util/ui-constants.d.ts +2 -2
- package/module.d.ts +2 -0
- package/package.json +5 -5
|
@@ -248,13 +248,13 @@ export class NodeEntriesWrapperComponent {
|
|
|
248
248
|
this.dataSource.removeData(objects);
|
|
249
249
|
this.getSelection().clear();
|
|
250
250
|
}
|
|
251
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
252
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
251
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesWrapperComponent, deps: [{ token: i0.ViewContainerRef }, { token: i1.TemporaryStorageService }, { token: i0.NgZone }, { token: i2.NodeEntriesService }, { token: i3.OptionsHelperDataService }, { token: i4.NodeHelperService }, { token: i5.UIService }, { token: i6.NodeEntriesTemplatesService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
252
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: NodeEntriesWrapperComponent, selector: "es-node-entries-wrapper", inputs: { dataSource: "dataSource", scope: "scope", columns: "columns", configureColumns: "configureColumns", checkbox: "checkbox", globalOptions: "globalOptions", displayType: "displayType", elementInteractionType: "elementInteractionType", sort: "sort", dragDrop: "dragDrop", gridConfig: "gridConfig", scrollGradientColor: "scrollGradientColor", initConfig: "initConfig", primaryInstance: "primaryInstance", singleClickHint: "singleClickHint", disableInfiniteScroll: "disableInfiniteScroll" }, outputs: { columnsChange: "columnsChange", displayTypeChange: "displayTypeChange", fetchData: "fetchData", clickItem: "clickItem", dblClickItem: "dblClickItem", sortChange: "sortChange", virtualNodesAdded: "virtualNodesAdded", displayTypeChanged: "displayTypeChanged" }, providers: [NodeEntriesService, OptionsHelperDataService, NodeEntriesTemplatesService], queries: [{ propertyName: "titleRef", first: true, predicate: ["title"], descendants: true }, { propertyName: "emptyRef", first: true, predicate: ["empty"], descendants: true }, { propertyName: "actionAreaRef", first: true, predicate: ["actionArea"], descendants: true }, { propertyName: "overlayRef", first: true, predicate: ["overlay"], descendants: true }], viewQueries: [{ propertyName: "nodeEntriesComponentRef", first: true, predicate: ["nodeEntriesComponent"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `<es-node-entries
|
|
253
253
|
#nodeEntriesComponent
|
|
254
254
|
*ngIf="!customNodeListComponent"
|
|
255
255
|
></es-node-entries>`, isInline: true, dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.NodeEntriesComponent, selector: "es-node-entries" }] }); }
|
|
256
256
|
}
|
|
257
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
257
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesWrapperComponent, decorators: [{
|
|
258
258
|
type: Component,
|
|
259
259
|
args: [{
|
|
260
260
|
selector: 'es-node-entries-wrapper',
|
|
@@ -264,7 +264,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
264
264
|
></es-node-entries>`,
|
|
265
265
|
providers: [NodeEntriesService, OptionsHelperDataService, NodeEntriesTemplatesService],
|
|
266
266
|
}]
|
|
267
|
-
}], ctorParameters:
|
|
267
|
+
}], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i1.TemporaryStorageService }, { type: i0.NgZone }, { type: i2.NodeEntriesService }, { type: i3.OptionsHelperDataService }, { type: i4.NodeHelperService }, { type: i5.UIService }, { type: i6.NodeEntriesTemplatesService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { titleRef: [{
|
|
268
268
|
type: ContentChild,
|
|
269
269
|
args: ['title']
|
|
270
270
|
}], emptyRef: [{
|
|
@@ -328,4 +328,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
328
328
|
}], displayTypeChanged: [{
|
|
329
329
|
type: Output
|
|
330
330
|
}] } });
|
|
331
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1lbnRyaWVzLXdyYXBwZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBRVQsWUFBWSxFQUVaLFlBQVksRUFDWixLQUFLLEVBS0wsTUFBTSxFQUtOLFNBQVMsR0FHWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRS9FLE9BQU8sRUFHSCxlQUFlLEVBUWYsc0JBQXNCLEdBQ3pCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQXdCLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJNUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHaEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7QUFXbkYsTUFBTSxPQUFPLDJCQUEyQjtJQXFGcEMsWUFDWSxnQkFBa0MsRUFDbEMsdUJBQWdELEVBQ2hELE1BQWMsRUFDZCxjQUFxQyxFQUN0QyxhQUF1QyxFQUN0QyxpQkFBb0MsRUFDcEMsU0FBb0I7SUFDNUIsUUFBUTtJQUNSLG1DQUFtQztJQUMzQixnQkFBNkMsRUFDN0MsaUJBQW9DLEVBQ3BDLFVBQXNCO1FBWHRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsNEJBQXVCLEdBQXZCLHVCQUF1QixD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a0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbXBvbmVudFJlZixcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBzaWduYWwsXG4gICAgU2ltcGxlQ2hhbmdlLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgV3JpdGFibGVTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNUZW1wbGF0ZXNTZXJ2aWNlIH0gZnJvbSAnLi9ub2RlLWVudHJpZXMtdGVtcGxhdGVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNDb21wb25lbnQgfSBmcm9tICcuL25vZGUtZW50cmllcy5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBGZXRjaEV2ZW50LFxuICAgIEdyaWRDb25maWcsXG4gICAgSW50ZXJhY3Rpb25UeXBlLFxuICAgIExpc3REcmFnR3JvcENvbmZpZyxcbiAgICBMaXN0RXZlbnRJbnRlcmZhY2UsXG4gICAgTGlzdE9wdGlvbnMsXG4gICAgTGlzdE9wdGlvbnNDb25maWcsXG4gICAgTGlzdFNvcnRDb25maWcsXG4gICAgTm9kZUNsaWNrRXZlbnQsXG4gICAgTm9kZUVudHJpZXNEYXRhVHlwZSxcbiAgICBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLFxufSBmcm9tICcuL2VudHJpZXMtbW9kZWwnO1xuaW1wb3J0IHsgTm9kZURhdGFTb3VyY2UgfSBmcm9tICcuL25vZGUtZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHsgSGVscGVyIH0gZnJvbSAnLi4vdXRpbC9oZWxwZXInO1xuaW1wb3J0IHsgQ3VzdG9tU2VsZWN0aW9uTW9kZWwsIE5vZGVFbnRyaWVzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL25vZGUtZW50cmllcy5zZXJ2aWNlJztcbmltcG9ydCB7IE9wdGlvbkl0ZW0sIFNjb3BlIH0gZnJvbSAnLi4vdHlwZXMvb3B0aW9uLWl0ZW0nO1xuaW1wb3J0IHsgTm9kZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IExpc3RJdGVtIH0gZnJvbSAnLi4vdHlwZXMvbGlzdC1pdGVtJztcbmltcG9ydCB7IFRlbXBvcmFyeVN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGVtcG9yYXJ5LXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uUmVmZXJlbmNlLCBOb2RlLCBVc2VyIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBWaXJ0dWFsTm9kZSB9IGZyb20gJy4uL3R5cGVzL2FwaS1tb2RlbHMnO1xuaW1wb3J0IHsgT3B0aW9uc0hlbHBlckRhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvb3B0aW9ucy1oZWxwZXItZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IFVJU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3VpLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VzLW5vZGUtZW50cmllcy13cmFwcGVyJyxcbiAgICB0ZW1wbGF0ZTogYDxlcy1ub2RlLWVudHJpZXNcbiAgICAgICAgI25vZGVFbnRyaWVzQ29tcG9uZW50XG4gICAgICAgICpuZ0lmPVwiIWN1c3RvbU5vZGVMaXN0Q29tcG9uZW50XCJcbiAgICA+PC9lcy1ub2RlLWVudHJpZXM+YCxcbiAgICBwcm92aWRlcnM6IFtOb2RlRW50cmllc1NlcnZpY2UsIE9wdGlvbnNIZWxwZXJEYXRhU2VydmljZSwgTm9kZUVudHJpZXNUZW1wbGF0ZXNTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZUVudHJpZXNXcmFwcGVyQ29tcG9uZW50PFQgZXh0ZW5kcyBOb2RlRW50cmllc0RhdGFUeXBlPlxuICAgIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgTGlzdEV2ZW50SW50ZXJmYWNlPFQ+XG57XG4gICAgLyoqXG4gICAgICogdGl0bGUgKGFib3ZlKSB0aGUgdGFibGUvZ3JpZFxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ3RpdGxlJykgdGl0bGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgLyoqXG4gICAgICogZGF0YSBzaG93biB3aGVuIGRhdGEgc291cmNlIGlzIGVtcHR5XG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnZW1wdHknKSBlbXB0eVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICAvKipcbiAgICAgKiBjdXN0b20gYXJlYSBmb3IgYWN0aW9ucyBvbmx5IGZvciBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLlNtYWxsR3JpZCAocGVyIGNhcmQgYXQgdGhlIGJvdHRvbSlcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdhY3Rpb25BcmVhJykgYWN0aW9uQXJlYVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICAvKipcbiAgICAgKiBjdXN0b20gYXJlYSBmb3IgYW4gb3ZlcmxheSBcImFib3ZlXCIgZWFjaCBjYXJkIChpLmUuIHRvIHNob3cgZGlzYWJsZWQgaW5mb3MpLCBvbmx5IGZvciBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLlNtYWxsR3JpZCAmIG9kZUVudHJpZXNEaXNwbGF5VHlwZS5HcmlkXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnb3ZlcmxheScpIG92ZXJsYXlSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnbm9kZUVudHJpZXNDb21wb25lbnQnKSBub2RlRW50cmllc0NvbXBvbmVudFJlZjogTm9kZUVudHJpZXNDb21wb25lbnQ8VD47XG4gICAgQElucHV0KCkgZGF0YVNvdXJjZTogTm9kZURhdGFTb3VyY2U8VD47XG4gICAgQElucHV0KCkgc2NvcGU6IFNjb3BlO1xuICAgIEBJbnB1dCgpIGNvbHVtbnM6IExpc3RJdGVtW107XG4gICAgQElucHV0KCkgY29uZmlndXJlQ29sdW1uczogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBjaGVja2JveCA9IHRydWU7XG4gICAgQE91dHB1dCgpIGNvbHVtbnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPExpc3RJdGVtW10+KCk7XG4gICAgQElucHV0KCkgZ2xvYmFsT3B0aW9uczogT3B0aW9uSXRlbVtdO1xuICAgIEBJbnB1dCgpIGRpc3BsYXlUeXBlID0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5HcmlkO1xuICAgIEBPdXRwdXQoKSBkaXNwbGF5VHlwZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZUVudHJpZXNEaXNwbGF5VHlwZT4oKTtcbiAgICBASW5wdXQoKSBlbGVtZW50SW50ZXJhY3Rpb25UeXBlID0gSW50ZXJhY3Rpb25UeXBlLkRlZmF1bHRBY3Rpb25MaW5rO1xuICAgIEBJbnB1dCgpIHNvcnQ6IExpc3RTb3J0Q29uZmlnO1xuICAgIEBJbnB1dCgpIGRyYWdEcm9wOiBMaXN0RHJhZ0dyb3BDb25maWc8VD47XG4gICAgQElucHV0KCkgZ3JpZENvbmZpZzogR3JpZENvbmZpZztcblxuICAgIC8qKlxuICAgICAqIFRoaXMgY29sb3IgZGVmaW5lcyB0aGUgYmFzZSBjb2xvciBvZiBncmFkaWVudHMgdmlzdWFsbHkgbGltaXRpbmcgYSBncmlkIGluIHNjcm9sbCBkaXJlY3Rpb24uXG4gICAgICogRGVmYXVsdHMgdG8gd2hpdGUuXG4gICAgICovXG4gICAgQElucHV0KCkgc2Nyb2xsR3JhZGllbnRDb2xvcjogc3RyaW5nID0gJyNmZmYnO1xuXG4gICAgLyoqXG4gICAgICogdGhpcyBjYW4gYmUgc2V0IGluc3RlYWQgb2YgY2FsbGluZyBpbml0T3B0aW9uc0dlbmVyYXRvcigpXG4gICAgICovXG4gICAgQElucHV0KCkgaW5pdENvbmZpZzogTGlzdE9wdGlvbnNDb25maWc7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGlzIG5vZGUtZW50cmllcyBpbnN0YW5jZSByZXByZXNlbnRzIHRoZSBwYWdlJ3MgbWFpbiBjb250ZW50LlxuICAgICAqXG4gICAgICogT25seSBzZXQgdG8gdHJ1ZSBmb3Igb25lIGluc3RhbmNlIHBlciBwYWdlLlxuICAgICAqXG4gICAgICogSWYgdHJ1ZSwgdGhpcyBpbnN0YW5jZSB3aWxsXG4gICAgICogLSBoYW5kbGUgcGFnZS13aWRlIGtleWJvYXJkIHNob3J0Y3V0c1xuICAgICAqIC0gdGFrZSBjb250cm9sIG9mIHRoZSBgcGFnZWAgYW5kIGBwYWdlU2l6ZWAgcXVlcnkgcGFyYW1ldGVycyBmb3IgcGFnaW5hdGlvblxuICAgICAqL1xuICAgIEBJbnB1dCgpIHByaW1hcnlJbnN0YW5jZTogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBVSSBoaW50cyBmb3Igd2hldGhlciBhIHNpbmdsZSBjbGljayB3aWxsIGNhdXNlIGEgZHluYW1pYyBhY3Rpb24uXG4gICAgICpcbiAgICAgKiBUaGlzIGRvZXMgbm90IGNvbmZpZ3VyZSB0aGUgYWN0dWFsIGJlaGF2aW9yIGJ1dCBvbmx5IFVJIGhpbnRzIHRvIHRoZSB1c2VyLiBIaW50cyBpbmNsdWRlXG4gICAgICogaG92ZXIgZWZmZWN0cyBhbmQgYSBjaGFuZ2VkIGN1cnNvci5cbiAgICAgKlxuICAgICAqIC0gV2hlbiBjaG9vc2luZyAnc3RhdGljJywgdGhlIGBjbGlja0l0ZW1gIGV2ZW50IHNob3VsZCB0cmlnZ2VyIHNvbWUgc3RhdGlvbmFyeSBhY3Rpb24gbGlrZVxuICAgICAqICAgc2VsZWN0aW5nIHRoZSBlbGVtZW50IG9yIGRpc3BsYXlpbmcgaW5mb3JtYXRpb24gaW4gYSBjb21wbGVtZW50YXJ5IHBhZ2UgYXJlYS4gVGhlXG4gICAgICogICBgZGJsQ2xpY2tJdGVtYCBldmVudCBjYW4gYmUgdXNlZCBmb3IgYSBtb3JlIGRpc3J1cHRpdmUgYWN0aW9uLlxuICAgICAqIC0gV2hlbiBjaG9vc2luZyAnZHluYW1pYycsIHRoZSBgY2xpY2tJdGVtYCBldmVudCBzaG91bGQgdHJpZ2dlciBhIG1ham9yIGFjdGlvbiBsaWtlXG4gICAgICogICBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2Ugb3IgY2xvc2luZyBhIGRpYWxvZy5cbiAgICAgKi9cbiAgICAvLyBUT0RPOiBDb25zaWRlciBjb250cm9sbGluZyB0aGUgdWkgaGludHMgYW5kIHRoZSBhY3R1YWwgYmVoYXZpb3Igd2l0aCBhIHNpbmdsZSBvcHRpb24uXG4gICAgQElucHV0KCkgc2luZ2xlQ2xpY2tIaW50OiAnZHluYW1pYycgfCAnc3RhdGljJyA9ICdkeW5hbWljJztcbiAgICAvKipcbiAgICAgKiBEbyBub3QgbG9hZCBtb3JlIGRhdGEgb24gc2Nyb2xsLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGRpc2FibGVJbmZpbml0ZVNjcm9sbCA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpIGZldGNoRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8RmV0Y2hFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgY2xpY2tJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlQ2xpY2tFdmVudDxUPj4oKTtcbiAgICBAT3V0cHV0KCkgZGJsQ2xpY2tJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxOb2RlQ2xpY2tFdmVudDxUPj4oKTtcbiAgICBAT3V0cHV0KCkgc29ydENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdFNvcnRDb25maWc+KCk7XG4gICAgQE91dHB1dCgpIHZpcnR1YWxOb2Rlc0FkZGVkO1xuICAgIEBPdXRwdXQoKSBkaXNwbGF5VHlwZUNoYW5nZWQ7XG5cbiAgICBjdXN0b21Ob2RlTGlzdENvbXBvbmVudDogVHlwZTxOb2RlRW50cmllc0NvbXBvbmVudDxUPj47XG4gICAgcHJpdmF0ZSBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxOb2RlRW50cmllc0NvbXBvbmVudDxUPj47XG4gICAgcHJpdmF0ZSBvcHRpb25zOiBMaXN0T3B0aW9ucztcbiAgICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIHRlbXBvcmFyeVN0b3JhZ2VTZXJ2aWNlOiBUZW1wb3JhcnlTdG9yYWdlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSBlbnRyaWVzU2VydmljZTogTm9kZUVudHJpZXNTZXJ2aWNlPFQ+LFxuICAgICAgICBwdWJsaWMgb3B0aW9uc0hlbHBlcjogT3B0aW9uc0hlbHBlckRhdGFTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG5vZGVIZWxwZXJTZXJ2aWNlOiBOb2RlSGVscGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB1aVNlcnZpY2U6IFVJU2VydmljZSxcbiAgICAgICAgLy8gQFRPRE9cbiAgICAgICAgLy8gcHJpdmF0ZSBtYWluTmF2OiBNYWluTmF2U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0ZW1wbGF0ZXNTZXJ2aWNlOiBOb2RlRW50cmllc1RlbXBsYXRlc1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgKSB7XG4gICAgICAgIC8vIHJlZ3VsYXJ5IHJlLWJpbmQgdGVtcGxhdGUgc2luY2UgaXQgbWlnaHQgaGF2ZSB1cGRhdGVkIHdpdGhvdXQgbmdDaGFuZ2VzIHRyaWdnZXJcbiAgICAgICAgLypcbiAgICAgICAgbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+XG4gICAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5lbXB0eVJlZiA9IHRoaXMuZW1wdHlSZWYpXG4gICAgICAgICk7XG4gICAgICAgICovXG4gICAgICAgIHRoaXMudmlydHVhbE5vZGVzQWRkZWQgPSB0aGlzLm9wdGlvbnNIZWxwZXIudmlydHVhbE5vZGVzQWRkZWQ7XG4gICAgICAgIHRoaXMuZGlzcGxheVR5cGVDaGFuZ2VkID0gdGhpcy5vcHRpb25zSGVscGVyLmRpc3BsYXlUeXBlQ2hhbmdlZDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uY2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9uc0hlbHBlci5nZXREYXRhKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXIuZ2V0RGF0YSgpLnNlbGVjdGVkT2JqZWN0cyA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdGVkO1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9uc0hlbHBlci5nZXREYXRhKCkuYWN0aXZlT2JqZWN0cyA9IHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdGVkO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ29wdGlvbnNIZWxwZXIgaXMgbm90IGluaXRhbGl6ZWQgY29ycmVjdGx5OyBkYXRhIGlzIGVtcHR5Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXIucmVmcmVzaENvbXBvbmVudHMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zSGVscGVyLnJlZ2lzdGVyR2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IHsgW2tleTogc3RyaW5nXTogU2ltcGxlQ2hhbmdlIH0gPSB7fSkge1xuICAgICAgICBpZiAoIXRoaXMuY29tcG9uZW50UmVmKSB7XG4gICAgICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmxpc3QgPSB0aGlzO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2U7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2NvcGUgPSB0aGlzLnNjb3BlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmNvbHVtbnMgPSB0aGlzLmNvbHVtbnM7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuY29uZmlndXJlQ29sdW1ucyA9IHRoaXMuY29uZmlndXJlQ29sdW1ucztcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5jaGVja2JveCA9IHRoaXMuY2hlY2tib3g7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPSB0aGlzLmRpc3BsYXlUeXBlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmVsZW1lbnRJbnRlcmFjdGlvblR5cGUgPSB0aGlzLmVsZW1lbnRJbnRlcmFjdGlvblR5cGU7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZ3JpZENvbmZpZyA9IHRoaXMuZ3JpZENvbmZpZztcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5vcHRpb25zID0gdGhpcy5vcHRpb25zO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmdsb2JhbE9wdGlvbnMgPSB0aGlzLmdsb2JhbE9wdGlvbnM7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydCA9IHRoaXMuc29ydDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zb3J0Q2hhbmdlID0gdGhpcy5zb3J0Q2hhbmdlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRyYWdEcm9wID0gdGhpcy5kcmFnRHJvcDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5jbGlja0l0ZW0gPSB0aGlzLmNsaWNrSXRlbTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYmxDbGlja0l0ZW0gPSB0aGlzLmRibENsaWNrSXRlbTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5mZXRjaERhdGEgPSB0aGlzLmZldGNoRGF0YTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5wcmltYXJ5SW5zdGFuY2UgPSB0aGlzLnByaW1hcnlJbnN0YW5jZTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zaW5nbGVDbGlja0hpbnQgPSB0aGlzLnNpbmdsZUNsaWNrSGludDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kaXNhYmxlSW5maW5pdGVTY3JvbGwgPSB0aGlzLmRpc2FibGVJbmZpbml0ZVNjcm9sbDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zY3JvbGxHcmFkaWVudENvbG9yLnNldCh0aGlzLnNjcm9sbEdyYWRpZW50Q29sb3IpO1xuXG4gICAgICAgIGlmIChjaGFuZ2VzWydpbml0Q29uZmlnJ10pIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdE9wdGlvbnNHZW5lcmF0b3IodGhpcy5pbml0Q29uZmlnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmNoYW5nZURldGVjdG9yUmVmPy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gVGhpcyBtaWdodCBuZWVkIHdyYXBwaW5nIHdpdGggYHNldFRpbWVvdXRgLlxuICAgICAgICB0aGlzLnVwZGF0ZVRlbXBsYXRlcygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVwbGFjZXMgdGhpcyB3cmFwcGVyIHdpdGggdGhlIGNvbmZpZ3VyZWQgY3VzdG9tLW5vZGUtbGlzdCBjb21wb25lbnQuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1c3RvbU5vZGVMaXN0Q29tcG9uZW50ID0gdGhpcy50ZW1wb3JhcnlTdG9yYWdlU2VydmljZS5nZXQoXG4gICAgICAgICAgICBUZW1wb3JhcnlTdG9yYWdlU2VydmljZS5DVVNUT01fTk9ERV9FTlRSSUVTX0NPTVBPTkVOVCxcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLmN1c3RvbU5vZGVMaXN0Q29tcG9uZW50ID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMudWlTZXJ2aWNlLmluamVjdEFuZ3VsYXJDb21wb25lbnQoXG4gICAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgICB0aGlzLmN1c3RvbU5vZGVMaXN0Q29tcG9uZW50LFxuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAvLyBJbnB1dCBiaW5kaW5ncyBhcmUgaW5pdGlhbGl6ZWQgaW4gYG5nT25DaGFuZ2VzYC5cbiAgICAgICAgICAgIHRoaXMuZ2V0T3V0cHV0QmluZGluZ3MoKSxcbiAgICAgICAgKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIHNpbXBsZSBtYXAgb2YgdGhlIG91dHB1dCBiaW5kaW5ncyBkZWZpbmVkIGluIHRoaXMgY29tcG9uZW50LlxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0T3V0cHV0QmluZGluZ3MoKTogeyBba2V5OiBzdHJpbmddOiBFdmVudEVtaXR0ZXI8YW55PiB9IHtcbiAgICAgICAgY29uc3Qgb3V0cHV0QmluZGluZ3M6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModGhpcykpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKHRoaXMgYXMgYW55KVtrZXldO1xuICAgICAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRXZlbnRFbWl0dGVyKSB7XG4gICAgICAgICAgICAgICAgb3V0cHV0QmluZGluZ3Nba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvdXRwdXRCaW5kaW5ncztcbiAgICB9XG5cbiAgICBnZXREaXNwbGF5VHlwZSgpOiBOb2RlRW50cmllc0Rpc3BsYXlUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheVR5cGU7XG4gICAgfVxuXG4gICAgc2V0RGlzcGxheVR5cGUoZGlzcGxheVR5cGU6IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5VHlwZSA9IGRpc3BsYXlUeXBlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID0gZGlzcGxheVR5cGU7XG4gICAgICAgIHRoaXMubmdPbkNoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5VHlwZUNoYW5nZS5lbWl0KGRpc3BsYXlUeXBlKTtcbiAgICB9XG5cbiAgICB1cGRhdGVOb2Rlcyhub2Rlczogdm9pZCB8IFRbXSkge1xuICAgICAgICBpZiAoIW5vZGVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRhU291cmNlLmdldERhdGEoKS5mb3JFYWNoKChkKSA9PiB7XG4gICAgICAgICAgICBsZXQgaGl0cyA9IChub2RlcyBhcyBUW10pLmZpbHRlcigobikgPT4gKG4gYXMgTm9kZSkucmVmLmlkID09PSAoZCBhcyBOb2RlKS5yZWYuaWQpO1xuICAgICAgICAgICAgaWYgKGhpdHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgLy8gaGFuZGxlIGlmIHRoZSBvcmlnaW5hbCBoYXMgY2hhbmdlZCAoZm9yIGNvbGxlY3Rpb24gcmVmcylcbiAgICAgICAgICAgICAgICBoaXRzID0gKG5vZGVzIGFzIFRbXSkuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAobikgPT4gKG4gYXMgTm9kZSkucmVmLmlkID09PSAoZCBhcyB1bmtub3duIGFzIENvbGxlY3Rpb25SZWZlcmVuY2UpLm9yaWdpbmFsSWQsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChoaXRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZUhlbHBlclNlcnZpY2UuY29weURhdGFUb05vZGUoZCBhcyBOb2RlLCBoaXRzWzBdIGFzIE5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgLy8gdHJpZ2dlciByZWJ1aWxkXG4gICAgICAgIGlmICh0aGlzLmRhdGFTb3VyY2UgaW5zdGFuY2VvZiBOb2RlRGF0YVNvdXJjZSkge1xuICAgICAgICAgICAgKHRoaXMuZGF0YVNvdXJjZSBhcyBOb2RlRGF0YVNvdXJjZTxUPikucmVmcmVzaCgpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9sZFNlbGVjdGlvbiA9IHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdGVkO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5jbGVhcigpO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5zZWxlY3QoXG4gICAgICAgICAgICAuLi5vbGRTZWxlY3Rpb24ubWFwKFxuICAgICAgICAgICAgICAgIChvKSA9PiB0aGlzLmRhdGFTb3VyY2UuZ2V0RGF0YSgpLmZpbHRlcigoZCkgPT4gSGVscGVyLm9iamVjdEVxdWFscyhvLCBkKSk/LlswXSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHNob3dSZW9yZGVyQ29sdW1uc0RpYWxvZygpOiB2b2lkIHt9XG5cbiAgICBhZGRWaXJ0dWFsTm9kZXModmlydHVhbDogVFtdKTogdm9pZCB7XG4gICAgICAgIHZpcnR1YWwgPSB2aXJ0dWFsLm1hcCgobykgPT4ge1xuICAgICAgICAgICAgKG8gYXMgVmlydHVhbE5vZGUpLnZpcnR1YWwgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIG87XG4gICAgICAgIH0pO1xuICAgICAgICB2aXJ0dWFsLmZvckVhY2goKHYpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5zID0gdGhpcy5kYXRhU291cmNlXG4gICAgICAgICAgICAgICAgLmdldERhdGEoKVxuICAgICAgICAgICAgICAgIC5zb21lKChkKSA9PlxuICAgICAgICAgICAgICAgICAgICAoZCBhcyBOb2RlKS5yZWZcbiAgICAgICAgICAgICAgICAgICAgICAgID8gKGQgYXMgTm9kZSkucmVmPy5pZCA9PT0gKHYgYXMgTm9kZSkucmVmPy5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgOiAoZCBhcyBVc2VyKS5hdXRob3JpdHlOYW1lID09PSAodiBhcyBVc2VyKS5hdXRob3JpdHlOYW1lLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoY29udGFpbnMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZU5vZGVzKFt2XSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5hcHBlbmREYXRhKFt2XSwgJ2JlZm9yZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uY2xlYXIoKTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uc2VsZWN0KC4uLnZpcnR1YWwpO1xuICAgICAgICB0aGlzLnZpcnR1YWxOb2Rlc0FkZGVkLmVtaXQodmlydHVhbCBhcyBOb2RlW10pO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBzZXRPcHRpb25zKG9wdGlvbnM6IExpc3RPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMubmdPbkNoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBnZXRTZWxlY3Rpb24oKTogQ3VzdG9tU2VsZWN0aW9uTW9kZWw8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb247XG4gICAgfVxuXG4gICAgYXN5bmMgaW5pdE9wdGlvbnNHZW5lcmF0b3IoY29uZmlnOiBMaXN0T3B0aW9uc0NvbmZpZykge1xuICAgICAgICBhd2FpdCB0aGlzLm9wdGlvbnNIZWxwZXIuaW5pdENvbXBvbmVudHMoY29uZmlnLmFjdGlvbmJhciwgdGhpcyk7XG4gICAgICAgIHRoaXMub3B0aW9uc0hlbHBlci5zZXREYXRhKHtcbiAgICAgICAgICAgIHNjb3BlOiB0aGlzLmVudHJpZXNTZXJ2aWNlLnNjb3BlLFxuICAgICAgICAgICAgYWN0aXZlT2JqZWN0czogdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uc2VsZWN0ZWQsXG4gICAgICAgICAgICBzZWxlY3RlZE9iamVjdHM6IHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdGVkLFxuICAgICAgICAgICAgYWxsT2JqZWN0czogdGhpcy5kYXRhU291cmNlLmdldERhdGEoKSxcbiAgICAgICAgICAgIHBhcmVudDogY29uZmlnLnBhcmVudCxcbiAgICAgICAgICAgIGN1c3RvbU9wdGlvbnM6IGNvbmZpZy5jdXN0b21PcHRpb25zLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5vcHRpb25zSGVscGVyLnJlZnJlc2hDb21wb25lbnRzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBQcmV2ZW50IGNoYW5nZWQtYWZ0ZXItY2hlY2tlZCBlcnJvclxuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMudXBkYXRlVGVtcGxhdGVzKCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVGVtcGxhdGVzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRlbXBsYXRlc1NlcnZpY2UudGl0bGUgPSB0aGlzLnRpdGxlUmVmO1xuICAgICAgICB0aGlzLnRlbXBsYXRlc1NlcnZpY2UuZW1wdHkgPSB0aGlzLmVtcHR5UmVmO1xuICAgICAgICB0aGlzLnRlbXBsYXRlc1NlcnZpY2UuYWN0aW9uQXJlYSA9IHRoaXMuYWN0aW9uQXJlYVJlZjtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNTZXJ2aWNlLm92ZXJsYXkgPSB0aGlzLm92ZXJsYXlSZWY7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcmVzZXQgdGhlIHBhZ2luYXRpb24gdG8gdGhlIGZpcnN0IHBhZ2VcbiAgICAgKiBoaW50OiB0aGlzIHdpbGwgZG8gbm90aGluZyBpbiBjYXNlIHRoZSBwYWdpbmF0aW9uU3RyYXRlZ3kgIT09IFBhZ2luYXRpb25cbiAgICAgKi9cbiAgICByZXNldFBhZ2luYXRpb24oKSB7XG4gICAgICAgIHRoaXMubm9kZUVudHJpZXNDb21wb25lbnRSZWY/LnBhZ2luYXRvcj8uZmlyc3RQYWdlKCk7XG4gICAgfVxuXG4gICAgZGVsZXRlTm9kZXMob2JqZWN0czogVFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5yZW1vdmVEYXRhKG9iamVjdHMpO1xuICAgICAgICB0aGlzLmdldFNlbGVjdGlvbigpLmNsZWFyKCk7XG4gICAgfVxufVxuIl19
|
|
331
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1lbnRyaWVzLXdyYXBwZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBRVQsWUFBWSxFQUVaLFlBQVksRUFDWixLQUFLLEVBS0wsTUFBTSxFQUtOLFNBQVMsR0FHWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRS9FLE9BQU8sRUFHSCxlQUFlLEVBUWYsc0JBQXNCLEdBQ3pCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQXdCLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJNUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHaEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7QUFXbkYsTUFBTSxPQUFPLDJCQUEyQjtJQXFGcEMsWUFDWSxnQkFBa0MsRUFDbEMsdUJBQWdELEVBQ2hELE1BQWMsRUFDZCxjQUFxQyxFQUN0QyxhQUF1QyxFQUN0QyxpQkFBb0MsRUFDcEMsU0FBb0I7SUFDNUIsUUFBUTtJQUNSLG1DQUFtQztJQUMzQixnQkFBNkMsRUFDN0MsaUJBQW9DLEVBQ3BDLFVBQXNCO1FBWHRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsNEJBQXVCLEdBQXZCLHVCQUF1QixD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QkFJRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb21wb25lbnRSZWYsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgc2lnbmFsLFxuICAgIFNpbXBsZUNoYW5nZSxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBUeXBlLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIFdyaXRhYmxlU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZSB9IGZyb20gJy4vbm9kZS1lbnRyaWVzLXRlbXBsYXRlcy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9ub2RlLWVudHJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgRmV0Y2hFdmVudCxcbiAgICBHcmlkQ29uZmlnLFxuICAgIEludGVyYWN0aW9uVHlwZSxcbiAgICBMaXN0RHJhZ0dyb3BDb25maWcsXG4gICAgTGlzdEV2ZW50SW50ZXJmYWNlLFxuICAgIExpc3RPcHRpb25zLFxuICAgIExpc3RPcHRpb25zQ29uZmlnLFxuICAgIExpc3RTb3J0Q29uZmlnLFxuICAgIE5vZGVDbGlja0V2ZW50LFxuICAgIE5vZGVFbnRyaWVzRGF0YVR5cGUsXG4gICAgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSxcbn0gZnJvbSAnLi9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IE5vZGVEYXRhU291cmNlIH0gZnJvbSAnLi9ub2RlLWRhdGEtc291cmNlJztcbmltcG9ydCB7IEhlbHBlciB9IGZyb20gJy4uL3V0aWwvaGVscGVyJztcbmltcG9ydCB7IEN1c3RvbVNlbGVjdGlvbk1vZGVsLCBOb2RlRW50cmllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWVudHJpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBPcHRpb25JdGVtLCBTY29wZSB9IGZyb20gJy4uL3R5cGVzL29wdGlvbi1pdGVtJztcbmltcG9ydCB7IE5vZGVIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbm9kZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBMaXN0SXRlbSB9IGZyb20gJy4uL3R5cGVzL2xpc3QtaXRlbSc7XG5pbXBvcnQgeyBUZW1wb3JhcnlTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3RlbXBvcmFyeS1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29sbGVjdGlvblJlZmVyZW5jZSwgTm9kZSwgVXNlciB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgVmlydHVhbE5vZGUgfSBmcm9tICcuLi90eXBlcy9hcGktbW9kZWxzJztcbmltcG9ydCB7IE9wdGlvbnNIZWxwZXJEYXRhU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL29wdGlvbnMtaGVscGVyLWRhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBVSVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy91aS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLWVudHJpZXMtd3JhcHBlcicsXG4gICAgdGVtcGxhdGU6IGA8ZXMtbm9kZS1lbnRyaWVzXG4gICAgICAgICNub2RlRW50cmllc0NvbXBvbmVudFxuICAgICAgICAqbmdJZj1cIiFjdXN0b21Ob2RlTGlzdENvbXBvbmVudFwiXG4gICAgPjwvZXMtbm9kZS1lbnRyaWVzPmAsXG4gICAgcHJvdmlkZXJzOiBbTm9kZUVudHJpZXNTZXJ2aWNlLCBPcHRpb25zSGVscGVyRGF0YVNlcnZpY2UsIE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVFbnRyaWVzV3JhcHBlckNvbXBvbmVudDxUIGV4dGVuZHMgTm9kZUVudHJpZXNEYXRhVHlwZT5cbiAgICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIExpc3RFdmVudEludGVyZmFjZTxUPlxue1xuICAgIC8qKlxuICAgICAqIHRpdGxlIChhYm92ZSkgdGhlIHRhYmxlL2dyaWRcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCd0aXRsZScpIHRpdGxlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIC8qKlxuICAgICAqIGRhdGEgc2hvd24gd2hlbiBkYXRhIHNvdXJjZSBpcyBlbXB0eVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ2VtcHR5JykgZW1wdHlSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgLyoqXG4gICAgICogY3VzdG9tIGFyZWEgZm9yIGFjdGlvbnMgb25seSBmb3IgTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQgKHBlciBjYXJkIGF0IHRoZSBib3R0b20pXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnYWN0aW9uQXJlYScpIGFjdGlvbkFyZWFSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgLyoqXG4gICAgICogY3VzdG9tIGFyZWEgZm9yIGFuIG92ZXJsYXkgXCJhYm92ZVwiIGVhY2ggY2FyZCAoaS5lLiB0byBzaG93IGRpc2FibGVkIGluZm9zKSwgb25seSBmb3IgTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQgJiBvZGVFbnRyaWVzRGlzcGxheVR5cGUuR3JpZFxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ292ZXJsYXknKSBvdmVybGF5UmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ25vZGVFbnRyaWVzQ29tcG9uZW50Jykgbm9kZUVudHJpZXNDb21wb25lbnRSZWY6IE5vZGVFbnRyaWVzQ29tcG9uZW50PFQ+O1xuICAgIEBJbnB1dCgpIGRhdGFTb3VyY2U6IE5vZGVEYXRhU291cmNlPFQ+O1xuICAgIEBJbnB1dCgpIHNjb3BlOiBTY29wZTtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBMaXN0SXRlbVtdO1xuICAgIEBJbnB1dCgpIGNvbmZpZ3VyZUNvbHVtbnM6IGJvb2xlYW47XG4gICAgQElucHV0KCkgY2hlY2tib3ggPSB0cnVlO1xuICAgIEBPdXRwdXQoKSBjb2x1bW5zQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxMaXN0SXRlbVtdPigpO1xuICAgIEBJbnB1dCgpIGdsb2JhbE9wdGlvbnM6IE9wdGlvbkl0ZW1bXTtcbiAgICBASW5wdXQoKSBkaXNwbGF5VHlwZSA9IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuR3JpZDtcbiAgICBAT3V0cHV0KCkgZGlzcGxheVR5cGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGVFbnRyaWVzRGlzcGxheVR5cGU+KCk7XG4gICAgQElucHV0KCkgZWxlbWVudEludGVyYWN0aW9uVHlwZSA9IEludGVyYWN0aW9uVHlwZS5EZWZhdWx0QWN0aW9uTGluaztcbiAgICBASW5wdXQoKSBzb3J0OiBMaXN0U29ydENvbmZpZztcbiAgICBASW5wdXQoKSBkcmFnRHJvcDogTGlzdERyYWdHcm9wQ29uZmlnPFQ+O1xuICAgIEBJbnB1dCgpIGdyaWRDb25maWc6IEdyaWRDb25maWc7XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGNvbG9yIGRlZmluZXMgdGhlIGJhc2UgY29sb3Igb2YgZ3JhZGllbnRzIHZpc3VhbGx5IGxpbWl0aW5nIGEgZ3JpZCBpbiBzY3JvbGwgZGlyZWN0aW9uLlxuICAgICAqIERlZmF1bHRzIHRvIHdoaXRlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNjcm9sbEdyYWRpZW50Q29sb3I6IHN0cmluZyA9ICcjZmZmJztcblxuICAgIC8qKlxuICAgICAqIHRoaXMgY2FuIGJlIHNldCBpbnN0ZWFkIG9mIGNhbGxpbmcgaW5pdE9wdGlvbnNHZW5lcmF0b3IoKVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGluaXRDb25maWc6IExpc3RPcHRpb25zQ29uZmlnO1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhpcyBub2RlLWVudHJpZXMgaW5zdGFuY2UgcmVwcmVzZW50cyB0aGUgcGFnZSdzIG1haW4gY29udGVudC5cbiAgICAgKlxuICAgICAqIE9ubHkgc2V0IHRvIHRydWUgZm9yIG9uZSBpbnN0YW5jZSBwZXIgcGFnZS5cbiAgICAgKlxuICAgICAqIElmIHRydWUsIHRoaXMgaW5zdGFuY2Ugd2lsbFxuICAgICAqIC0gaGFuZGxlIHBhZ2Utd2lkZSBrZXlib2FyZCBzaG9ydGN1dHNcbiAgICAgKiAtIHRha2UgY29udHJvbCBvZiB0aGUgYHBhZ2VgIGFuZCBgcGFnZVNpemVgIHF1ZXJ5IHBhcmFtZXRlcnMgZm9yIHBhZ2luYXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwcmltYXJ5SW5zdGFuY2U6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogVUkgaGludHMgZm9yIHdoZXRoZXIgYSBzaW5nbGUgY2xpY2sgd2lsbCBjYXVzZSBhIGR5bmFtaWMgYWN0aW9uLlxuICAgICAqXG4gICAgICogVGhpcyBkb2VzIG5vdCBjb25maWd1cmUgdGhlIGFjdHVhbCBiZWhhdmlvciBidXQgb25seSBVSSBoaW50cyB0byB0aGUgdXNlci4gSGludHMgaW5jbHVkZVxuICAgICAqIGhvdmVyIGVmZmVjdHMgYW5kIGEgY2hhbmdlZCBjdXJzb3IuXG4gICAgICpcbiAgICAgKiAtIFdoZW4gY2hvb3NpbmcgJ3N0YXRpYycsIHRoZSBgY2xpY2tJdGVtYCBldmVudCBzaG91bGQgdHJpZ2dlciBzb21lIHN0YXRpb25hcnkgYWN0aW9uIGxpa2VcbiAgICAgKiAgIHNlbGVjdGluZyB0aGUgZWxlbWVudCBvciBkaXNwbGF5aW5nIGluZm9ybWF0aW9uIGluIGEgY29tcGxlbWVudGFyeSBwYWdlIGFyZWEuIFRoZVxuICAgICAqICAgYGRibENsaWNrSXRlbWAgZXZlbnQgY2FuIGJlIHVzZWQgZm9yIGEgbW9yZSBkaXNydXB0aXZlIGFjdGlvbi5cbiAgICAgKiAtIFdoZW4gY2hvb3NpbmcgJ2R5bmFtaWMnLCB0aGUgYGNsaWNrSXRlbWAgZXZlbnQgc2hvdWxkIHRyaWdnZXIgYSBtYWpvciBhY3Rpb24gbGlrZVxuICAgICAqICAgbmF2aWdhdGluZyB0byBhIG5ldyBwYWdlIG9yIGNsb3NpbmcgYSBkaWFsb2cuXG4gICAgICovXG4gICAgLy8gVE9ETzogQ29uc2lkZXIgY29udHJvbGxpbmcgdGhlIHVpIGhpbnRzIGFuZCB0aGUgYWN0dWFsIGJlaGF2aW9yIHdpdGggYSBzaW5nbGUgb3B0aW9uLlxuICAgIEBJbnB1dCgpIHNpbmdsZUNsaWNrSGludDogJ2R5bmFtaWMnIHwgJ3N0YXRpYycgPSAnZHluYW1pYyc7XG4gICAgLyoqXG4gICAgICogRG8gbm90IGxvYWQgbW9yZSBkYXRhIG9uIHNjcm9sbC5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBkaXNhYmxlSW5maW5pdGVTY3JvbGwgPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBmZXRjaERhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPEZldGNoRXZlbnQ+KCk7XG4gICAgQE91dHB1dCgpIGNsaWNrSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZUNsaWNrRXZlbnQ8VD4+KCk7XG4gICAgQE91dHB1dCgpIGRibENsaWNrSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZUNsaWNrRXZlbnQ8VD4+KCk7XG4gICAgQE91dHB1dCgpIHNvcnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPExpc3RTb3J0Q29uZmlnPigpO1xuICAgIEBPdXRwdXQoKSB2aXJ0dWFsTm9kZXNBZGRlZDtcbiAgICBAT3V0cHV0KCkgZGlzcGxheVR5cGVDaGFuZ2VkO1xuXG4gICAgY3VzdG9tTm9kZUxpc3RDb21wb25lbnQ6IFR5cGU8Tm9kZUVudHJpZXNDb21wb25lbnQ8VD4+O1xuICAgIHByaXZhdGUgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8Tm9kZUVudHJpZXNDb21wb25lbnQ8VD4+O1xuICAgIHByaXZhdGUgb3B0aW9uczogTGlzdE9wdGlvbnM7XG4gICAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSB0ZW1wb3JhcnlTdG9yYWdlU2VydmljZTogVGVtcG9yYXJ5U3RvcmFnZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgZW50cmllc1NlcnZpY2U6IE5vZGVFbnRyaWVzU2VydmljZTxUPixcbiAgICAgICAgcHVibGljIG9wdGlvbnNIZWxwZXI6IE9wdGlvbnNIZWxwZXJEYXRhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBub2RlSGVscGVyU2VydmljZTogTm9kZUhlbHBlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdWlTZXJ2aWNlOiBVSVNlcnZpY2UsXG4gICAgICAgIC8vIEBUT0RPXG4gICAgICAgIC8vIHByaXZhdGUgbWFpbk5hdjogTWFpbk5hdlNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdGVtcGxhdGVzU2VydmljZTogTm9kZUVudHJpZXNUZW1wbGF0ZXNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICkge1xuICAgICAgICAvLyByZWd1bGFyeSByZS1iaW5kIHRlbXBsYXRlIHNpbmNlIGl0IG1pZ2h0IGhhdmUgdXBkYXRlZCB3aXRob3V0IG5nQ2hhbmdlcyB0cmlnZ2VyXG4gICAgICAgIC8qXG4gICAgICAgIG5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgICAgICAgc2V0SW50ZXJ2YWwoKCkgPT4gdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuZW1wdHlSZWYgPSB0aGlzLmVtcHR5UmVmKVxuICAgICAgICApO1xuICAgICAgICAqL1xuICAgICAgICB0aGlzLnZpcnR1YWxOb2Rlc0FkZGVkID0gdGhpcy5vcHRpb25zSGVscGVyLnZpcnR1YWxOb2Rlc0FkZGVkO1xuICAgICAgICB0aGlzLmRpc3BsYXlUeXBlQ2hhbmdlZCA9IHRoaXMub3B0aW9uc0hlbHBlci5kaXNwbGF5VHlwZUNoYW5nZWQ7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLmNoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLm9wdGlvbnNIZWxwZXIuZ2V0RGF0YSgpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zSGVscGVyLmdldERhdGEoKS5zZWxlY3RlZE9iamVjdHMgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5zZWxlY3RlZDtcbiAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXIuZ2V0RGF0YSgpLmFjdGl2ZU9iamVjdHMgPSB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5zZWxlY3RlZDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdvcHRpb25zSGVscGVyIGlzIG5vdCBpbml0YWxpemVkIGNvcnJlY3RseTsgZGF0YSBpcyBlbXB0eScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5vcHRpb25zSGVscGVyLnJlZnJlc2hDb21wb25lbnRzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wcmltYXJ5SW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9uc0hlbHBlci5yZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiB7IFtrZXk6IHN0cmluZ106IFNpbXBsZUNoYW5nZSB9ID0ge30pIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbXBvbmVudFJlZikge1xuICAgICAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5saXN0ID0gdGhpcztcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlID0gdGhpcy5kYXRhU291cmNlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNjb3BlID0gdGhpcy5zY29wZTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5jb2x1bW5zID0gdGhpcy5jb2x1bW5zO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmNvbmZpZ3VyZUNvbHVtbnMgPSB0aGlzLmNvbmZpZ3VyZUNvbHVtbnM7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuY2hlY2tib3ggPSB0aGlzLmNoZWNrYm94O1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID0gdGhpcy5kaXNwbGF5VHlwZTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5lbGVtZW50SW50ZXJhY3Rpb25UeXBlID0gdGhpcy5lbGVtZW50SW50ZXJhY3Rpb25UeXBlO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLmdyaWRDb25maWcgPSB0aGlzLmdyaWRDb25maWc7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uub3B0aW9ucyA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5nbG9iYWxPcHRpb25zID0gdGhpcy5nbG9iYWxPcHRpb25zO1xuICAgICAgICB0aGlzLmVudHJpZXNTZXJ2aWNlLnNvcnQgPSB0aGlzLnNvcnQ7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydENoYW5nZSA9IHRoaXMuc29ydENoYW5nZTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kcmFnRHJvcCA9IHRoaXMuZHJhZ0Ryb3A7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuY2xpY2tJdGVtID0gdGhpcy5jbGlja0l0ZW07XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGJsQ2xpY2tJdGVtID0gdGhpcy5kYmxDbGlja0l0ZW07XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZmV0Y2hEYXRhID0gdGhpcy5mZXRjaERhdGE7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UucHJpbWFyeUluc3RhbmNlID0gdGhpcy5wcmltYXJ5SW5zdGFuY2U7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2luZ2xlQ2xpY2tIaW50ID0gdGhpcy5zaW5nbGVDbGlja0hpbnQ7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGlzYWJsZUluZmluaXRlU2Nyb2xsID0gdGhpcy5kaXNhYmxlSW5maW5pdGVTY3JvbGw7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2Nyb2xsR3JhZGllbnRDb2xvci5zZXQodGhpcy5zY3JvbGxHcmFkaWVudENvbG9yKTtcblxuICAgICAgICBpZiAoY2hhbmdlc1snaW5pdENvbmZpZyddKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRPcHRpb25zR2VuZXJhdG9yKHRoaXMuaW5pdENvbmZpZyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5jaGFuZ2VEZXRlY3RvclJlZj8uZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFRoaXMgbWlnaHQgbmVlZCB3cmFwcGluZyB3aXRoIGBzZXRUaW1lb3V0YC5cbiAgICAgICAgdGhpcy51cGRhdGVUZW1wbGF0ZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlcGxhY2VzIHRoaXMgd3JhcHBlciB3aXRoIHRoZSBjb25maWd1cmVkIGN1c3RvbS1ub2RlLWxpc3QgY29tcG9uZW50LlxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXN0b21Ob2RlTGlzdENvbXBvbmVudCA9IHRoaXMudGVtcG9yYXJ5U3RvcmFnZVNlcnZpY2UuZ2V0KFxuICAgICAgICAgICAgVGVtcG9yYXJ5U3RvcmFnZVNlcnZpY2UuQ1VTVE9NX05PREVfRU5UUklFU19DT01QT05FTlQsXG4gICAgICAgICAgICBudWxsLFxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5jdXN0b21Ob2RlTGlzdENvbXBvbmVudCA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLnVpU2VydmljZS5pbmplY3RBbmd1bGFyQ29tcG9uZW50KFxuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ob2RlTGlzdENvbXBvbmVudCxcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgLy8gSW5wdXQgYmluZGluZ3MgYXJlIGluaXRpYWxpemVkIGluIGBuZ09uQ2hhbmdlc2AuXG4gICAgICAgICAgICB0aGlzLmdldE91dHB1dEJpbmRpbmdzKCksXG4gICAgICAgICk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBzaW1wbGUgbWFwIG9mIHRoZSBvdXRwdXQgYmluZGluZ3MgZGVmaW5lZCBpbiB0aGlzIGNvbXBvbmVudC5cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldE91dHB1dEJpbmRpbmdzKCk6IHsgW2tleTogc3RyaW5nXTogRXZlbnRFbWl0dGVyPGFueT4gfSB7XG4gICAgICAgIGNvbnN0IG91dHB1dEJpbmRpbmdzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHRoaXMpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9ICh0aGlzIGFzIGFueSlba2V5XTtcbiAgICAgICAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEV2ZW50RW1pdHRlcikge1xuICAgICAgICAgICAgICAgIG91dHB1dEJpbmRpbmdzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb3V0cHV0QmluZGluZ3M7XG4gICAgfVxuXG4gICAgZ2V0RGlzcGxheVR5cGUoKTogTm9kZUVudHJpZXNEaXNwbGF5VHlwZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc3BsYXlUeXBlO1xuICAgIH1cblxuICAgIHNldERpc3BsYXlUeXBlKGRpc3BsYXlUeXBlOiBOb2RlRW50cmllc0Rpc3BsYXlUeXBlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzcGxheVR5cGUgPSBkaXNwbGF5VHlwZTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9IGRpc3BsYXlUeXBlO1xuICAgICAgICB0aGlzLm5nT25DaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuZGlzcGxheVR5cGVDaGFuZ2UuZW1pdChkaXNwbGF5VHlwZSk7XG4gICAgfVxuXG4gICAgdXBkYXRlTm9kZXMobm9kZXM6IHZvaWQgfCBUW10pIHtcbiAgICAgICAgaWYgKCFub2Rlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5nZXREYXRhKCkuZm9yRWFjaCgoZCkgPT4ge1xuICAgICAgICAgICAgbGV0IGhpdHMgPSAobm9kZXMgYXMgVFtdKS5maWx0ZXIoKG4pID0+IChuIGFzIE5vZGUpLnJlZi5pZCA9PT0gKGQgYXMgTm9kZSkucmVmLmlkKTtcbiAgICAgICAgICAgIGlmIChoaXRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIC8vIGhhbmRsZSBpZiB0aGUgb3JpZ2luYWwgaGFzIGNoYW5nZWQgKGZvciBjb2xsZWN0aW9uIHJlZnMpXG4gICAgICAgICAgICAgICAgaGl0cyA9IChub2RlcyBhcyBUW10pLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgKG4pID0+IChuIGFzIE5vZGUpLnJlZi5pZCA9PT0gKGQgYXMgdW5rbm93biBhcyBDb2xsZWN0aW9uUmVmZXJlbmNlKS5vcmlnaW5hbElkLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGl0cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGVIZWxwZXJTZXJ2aWNlLmNvcHlEYXRhVG9Ob2RlKGQgYXMgTm9kZSwgaGl0c1swXSBhcyBOb2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHRyaWdnZXIgcmVidWlsZFxuICAgICAgICBpZiAodGhpcy5kYXRhU291cmNlIGluc3RhbmNlb2YgTm9kZURhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgICh0aGlzLmRhdGFTb3VyY2UgYXMgTm9kZURhdGFTb3VyY2U8VD4pLnJlZnJlc2goKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvbGRTZWxlY3Rpb24gPSB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5zZWxlY3RlZDtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uY2xlYXIoKTtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5zZWxlY3Rpb24uc2VsZWN0KFxuICAgICAgICAgICAgLi4ub2xkU2VsZWN0aW9uLm1hcChcbiAgICAgICAgICAgICAgICAobykgPT4gdGhpcy5kYXRhU291cmNlLmdldERhdGEoKS5maWx0ZXIoKGQpID0+IEhlbHBlci5vYmplY3RFcXVhbHMobywgZCkpPy5bMF0sXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBzaG93UmVvcmRlckNvbHVtbnNEaWFsb2coKTogdm9pZCB7fVxuXG4gICAgYWRkVmlydHVhbE5vZGVzKHZpcnR1YWw6IFRbXSk6IHZvaWQge1xuICAgICAgICB2aXJ0dWFsID0gdmlydHVhbC5tYXAoKG8pID0+IHtcbiAgICAgICAgICAgIChvIGFzIFZpcnR1YWxOb2RlKS52aXJ0dWFsID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBvO1xuICAgICAgICB9KTtcbiAgICAgICAgdmlydHVhbC5mb3JFYWNoKCh2KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250YWlucyA9IHRoaXMuZGF0YVNvdXJjZVxuICAgICAgICAgICAgICAgIC5nZXREYXRhKClcbiAgICAgICAgICAgICAgICAuc29tZSgoZCkgPT5cbiAgICAgICAgICAgICAgICAgICAgKGQgYXMgTm9kZSkucmVmXG4gICAgICAgICAgICAgICAgICAgICAgICA/IChkIGFzIE5vZGUpLnJlZj8uaWQgPT09ICh2IGFzIE5vZGUpLnJlZj8uaWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDogKGQgYXMgVXNlcikuYXV0aG9yaXR5TmFtZSA9PT0gKHYgYXMgVXNlcikuYXV0aG9yaXR5TmFtZSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGNvbnRhaW5zKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVOb2Rlcyhbdl0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UuYXBwZW5kRGF0YShbdl0sICdiZWZvcmUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLmNsZWFyKCk7XG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdCguLi52aXJ0dWFsKTtcbiAgICAgICAgdGhpcy52aXJ0dWFsTm9kZXNBZGRlZC5lbWl0KHZpcnR1YWwgYXMgTm9kZVtdKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgc2V0T3B0aW9ucyhvcHRpb25zOiBMaXN0T3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICAgICAgICB0aGlzLm5nT25DaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0U2VsZWN0aW9uKCk6IEN1c3RvbVNlbGVjdGlvbk1vZGVsPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uO1xuICAgIH1cblxuICAgIGFzeW5jIGluaXRPcHRpb25zR2VuZXJhdG9yKGNvbmZpZzogTGlzdE9wdGlvbnNDb25maWcpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5vcHRpb25zSGVscGVyLmluaXRDb21wb25lbnRzKGNvbmZpZy5hY3Rpb25iYXIsIHRoaXMpO1xuICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXIuc2V0RGF0YSh7XG4gICAgICAgICAgICBzY29wZTogdGhpcy5lbnRyaWVzU2VydmljZS5zY29wZSxcbiAgICAgICAgICAgIGFjdGl2ZU9iamVjdHM6IHRoaXMuZW50cmllc1NlcnZpY2Uuc2VsZWN0aW9uLnNlbGVjdGVkLFxuICAgICAgICAgICAgc2VsZWN0ZWRPYmplY3RzOiB0aGlzLmVudHJpZXNTZXJ2aWNlLnNlbGVjdGlvbi5zZWxlY3RlZCxcbiAgICAgICAgICAgIGFsbE9iamVjdHM6IHRoaXMuZGF0YVNvdXJjZS5nZXREYXRhKCksXG4gICAgICAgICAgICBwYXJlbnQ6IGNvbmZpZy5wYXJlbnQsXG4gICAgICAgICAgICBjdXN0b21PcHRpb25zOiBjb25maWcuY3VzdG9tT3B0aW9ucyxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMub3B0aW9uc0hlbHBlci5yZWZyZXNoQ29tcG9uZW50cygpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gUHJldmVudCBjaGFuZ2VkLWFmdGVyLWNoZWNrZWQgZXJyb3JcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB0aGlzLnVwZGF0ZVRlbXBsYXRlcygpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVRlbXBsYXRlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNTZXJ2aWNlLnRpdGxlID0gdGhpcy50aXRsZVJlZjtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNTZXJ2aWNlLmVtcHR5ID0gdGhpcy5lbXB0eVJlZjtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXNTZXJ2aWNlLmFjdGlvbkFyZWEgPSB0aGlzLmFjdGlvbkFyZWFSZWY7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzU2VydmljZS5vdmVybGF5ID0gdGhpcy5vdmVybGF5UmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJlc2V0IHRoZSBwYWdpbmF0aW9uIHRvIHRoZSBmaXJzdCBwYWdlXG4gICAgICogaGludDogdGhpcyB3aWxsIGRvIG5vdGhpbmcgaW4gY2FzZSB0aGUgcGFnaW5hdGlvblN0cmF0ZWd5ICE9PSBQYWdpbmF0aW9uXG4gICAgICovXG4gICAgcmVzZXRQYWdpbmF0aW9uKCkge1xuICAgICAgICB0aGlzLm5vZGVFbnRyaWVzQ29tcG9uZW50UmVmPy5wYWdpbmF0b3I/LmZpcnN0UGFnZSgpO1xuICAgIH1cblxuICAgIGRlbGV0ZU5vZGVzKG9iamVjdHM6IFRbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UucmVtb3ZlRGF0YShvYmplY3RzKTtcbiAgICAgICAgdGhpcy5nZXRTZWxlY3Rpb24oKS5jbGVhcigpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -116,16 +116,16 @@ export class NodeEntriesComponent {
|
|
|
116
116
|
reset: true,
|
|
117
117
|
});
|
|
118
118
|
}
|
|
119
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
120
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NodeEntriesGlobalService }, { token: i2.NodeEntriesService }, { token: i3.NodeEntriesTemplatesService }, { token: i4.KeyboardShortcutsService, optional: true }, { token: i5.ActivatedRoute }, { token: i6.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: NodeEntriesComponent, selector: "es-node-entries", viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"top-matter\">\n <div class=\"title\">\n <ng-container *ngTemplateOutlet=\"templatesService.title\"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"templatesService.entriesTopMatter\"></ng-container>\n</div>\n<ng-container *ngIf=\"entriesService.dataSource\">\n <ng-container *ngIf=\"entriesService.displayType === NodeEntriesDisplayType.Table\">\n <es-node-entries-table></es-node-entries-table>\n </ng-container>\n <ng-container\n *ngIf=\"\n entriesService.displayType === NodeEntriesDisplayType.SmallGrid ||\n entriesService.displayType === NodeEntriesDisplayType.Grid\n \"\n >\n <es-node-entries-card-grid [displayType]=\"entriesService.displayType\">\n </es-node-entries-card-grid>\n </ng-container>\n <ng-container *ngIf=\"entriesService.dataSource.isEmpty() && !entriesService.dataSource.isLoading\">\n <ng-container *ngTemplateOutlet=\"templatesService.empty\"></ng-container>\n </ng-container>\n</ng-container>\n<mat-paginator\n #paginator\n [pageSizeOptions]=\"entriesGlobalService.getPaginatorSizeOptions(entriesService.scope)\"\n *ngIf=\"entriesService.paginationStrategy === 'paginator'\"\n [class.display-none]=\"\n (entriesService.dataSource.isLoading && entriesService.dataSource.isLoading !== 'page') ||\n entriesService.dataSource.isEmpty()\n \"\n (page)=\"openPage($event)\"\n></mat-paginator>\n", styles: [".top-matter{display:flex;align-items:center;flex-wrap:wrap;gap:12px 10px;position:relative;z-index:1}.top-matter .title{display:flex;flex-grow:1}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i8.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "component", type: i9.NodeEntriesCardGridComponent, selector: "es-node-entries-card-grid", inputs: ["displayType"] }, { kind: "component", type: i10.NodeEntriesTableComponent, selector: "es-node-entries-table" }] }); }
|
|
121
121
|
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesComponent, decorators: [{
|
|
123
123
|
type: Component,
|
|
124
124
|
args: [{ selector: 'es-node-entries', template: "<div class=\"top-matter\">\n <div class=\"title\">\n <ng-container *ngTemplateOutlet=\"templatesService.title\"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"templatesService.entriesTopMatter\"></ng-container>\n</div>\n<ng-container *ngIf=\"entriesService.dataSource\">\n <ng-container *ngIf=\"entriesService.displayType === NodeEntriesDisplayType.Table\">\n <es-node-entries-table></es-node-entries-table>\n </ng-container>\n <ng-container\n *ngIf=\"\n entriesService.displayType === NodeEntriesDisplayType.SmallGrid ||\n entriesService.displayType === NodeEntriesDisplayType.Grid\n \"\n >\n <es-node-entries-card-grid [displayType]=\"entriesService.displayType\">\n </es-node-entries-card-grid>\n </ng-container>\n <ng-container *ngIf=\"entriesService.dataSource.isEmpty() && !entriesService.dataSource.isLoading\">\n <ng-container *ngTemplateOutlet=\"templatesService.empty\"></ng-container>\n </ng-container>\n</ng-container>\n<mat-paginator\n #paginator\n [pageSizeOptions]=\"entriesGlobalService.getPaginatorSizeOptions(entriesService.scope)\"\n *ngIf=\"entriesService.paginationStrategy === 'paginator'\"\n [class.display-none]=\"\n (entriesService.dataSource.isLoading && entriesService.dataSource.isLoading !== 'page') ||\n entriesService.dataSource.isEmpty()\n \"\n (page)=\"openPage($event)\"\n></mat-paginator>\n", styles: [".top-matter{display:flex;align-items:center;flex-wrap:wrap;gap:12px 10px;position:relative;z-index:1}.top-matter .title{display:flex;flex-grow:1}\n"] }]
|
|
125
|
-
}], ctorParameters:
|
|
125
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.NodeEntriesGlobalService }, { type: i2.NodeEntriesService }, { type: i3.NodeEntriesTemplatesService }, { type: i4.KeyboardShortcutsService, decorators: [{
|
|
126
126
|
type: Optional
|
|
127
|
-
}] }, { type: i5.ActivatedRoute }, { type: i6.TranslateService }]
|
|
127
|
+
}] }, { type: i5.ActivatedRoute }, { type: i6.TranslateService }], propDecorators: { paginator: [{
|
|
128
128
|
type: ViewChild,
|
|
129
129
|
args: [MatPaginator]
|
|
130
130
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9ub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFHVCxRQUFRLEVBQ1IsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSw2QkFBNkIsQ0FBQztBQUd0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUF1QixzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTTlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNXLGlCQUFvQyxFQUNwQyxvQkFBOEMsRUFDOUMsY0FBcUMsRUFDckMsZ0JBQTZDLEVBQ2hDLHVCQUFpRCxFQUM3RCxLQUFxQixFQUNyQixTQUEyQjtRQU41QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUEwQjtRQUM3RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFr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QUFDLFFBQVE7WUFDdEMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3JCLEtBQUssRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0ExSFEsb0JBQW9CO2tHQUFwQixvQkFBb0Isa0dBS2xCLFlBQVksZ0RDaEMzQixrM0NBaUNBOzsyRkROYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0ksaUJBQWlCOzswQkFrQnRCLFFBQVE7d0dBVFksU0FBUztzQkFBakMsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IsIFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNEYXRhVHlwZSwgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSB9IGZyb20gJy4vZW50cmllcy1tb2RlbCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy1nbG9iYWwuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1RlbXBsYXRlc1NlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy10ZW1wbGF0ZXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWVudHJpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlLCBHZW5lcmljQXV0aG9yaXR5IH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hYnN0cmFjdC9rZXlib2FyZC1zaG9ydGN1dHMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRGF0YVNvdXJjZVJlbW90ZSB9IGZyb20gJy4vbm9kZS1kYXRhLXNvdXJjZS1yZW1vdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VzLW5vZGUtZW50cmllcycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydub2RlLWVudHJpZXMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZUVudHJpZXNDb21wb25lbnQ8VCBleHRlbmRzIE5vZGVFbnRyaWVzRGF0YVR5cGU+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICAgIHJlYWRvbmx5IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUgPSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlO1xuXG4gICAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHB1YmxpYyBlbnRyaWVzR2xvYmFsU2VydmljZTogTm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgZW50cmllc1NlcnZpY2U6IE5vZGVFbnRyaWVzU2VydmljZTxUPixcbiAgICAgICAgcHVibGljIHRlbXBsYXRlc1NlcnZpY2U6IE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBnbG9iYWxLZXlib2FyZFNob3J0Y3V0czogS2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXNTZXJ2aWNlLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy5yZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZSBpbnN0YW5jZW9mIE5vZGVEYXRhU291cmNlUmVtb3RlKSB7XG4gICAgICAgICAgICAvLyBXZSBkb24ndCByZXF1aXJlIGBzb3J0YCB0byBiZSBkZWZpbmVkLCBidXQgaWYgaXQgaXMgc2V0IGJ1dCBub3QgeWV0IHJlYWR5IChgbnVsbGApLFxuICAgICAgICAgICAgLy8gd2Ugd2FpdCBmb3IgaXRzIHZhbHVlIGJlZm9yZSBpbml0aWFsaXppbmcgdGhlIGRhdGEgc291cmNlLCBzbyB0aGUgZmlyc3QgcmVxdWVzdCBpc1xuICAgICAgICAgICAgLy8gc2VudCB3aXRoIHRoZSBjb3JyZWN0IHNvcnQgY29uZmlndXJhdGlvbi4gVGhhdCBpcyB3aHkgd2UgZXhwbGljaXRseSBkbyBub3QgZHJvcFxuICAgICAgICAgICAgLy8gYHVuZGVmaW5lZGAgd2l0aCB0aGUgYGZpcnN0YCBvcGVyYXRvciBiZWxvdy5cbiAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydFN1YmplY3RcbiAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgoc29ydCkgPT4gc29ydCAhPT0gbnVsbCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRSZW1vdGVEYXRhU291cmNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlIGFzIE5vZGVEYXRhU291cmNlUmVtb3RlPFQ+LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgdGhpcy5pbml0UGFnaW5hdG9yKHRoaXMucGFnaW5hdG9yKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyR2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMoKSB7XG4gICAgICAgIHRoaXMuZ2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMucmVnaXN0ZXIoXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFsnQ3RybC9DbWQnXSxcbiAgICAgICAgICAgICAgICAgICAga2V5Q29kZTogJ0tleUEnLFxuICAgICAgICAgICAgICAgICAgICBpZ25vcmVXaGVuOiAoZXZlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBTbWFsbEdyaWQgZG9lc24ndCBzdXBwb3J0IHNlbGVjdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQsXG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLmVudHJpZXNTZXJ2aWNlLnRvZ2dsZVNlbGVjdEFsbCgpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgeyB1bnRpbDogdGhpcy5kZXN0cm95ZWQgfSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRSZW1vdGVEYXRhU291cmNlKGRhdGFTb3VyY2U6IE5vZGVEYXRhU291cmNlUmVtb3RlPFQ+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBhZ2VTaXplID0gdGhpcy5lbnRyaWVzR2xvYmFsU2VydmljZS5nZXRQYWdpbmF0b3JTaXplT3B0aW9ucyhcbiAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2NvcGUsXG4gICAgICAgIClbMF07XG4gICAgICAgIGRhdGFTb3VyY2UuaW5pdCh7XG4gICAgICAgICAgICBwYWdpbmF0aW9uQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgZGVmYXVsdFBhZ2VTaXplOiBwYWdlU2l6ZSxcbiAgICAgICAgICAgICAgICBzdHJhdGVneTogdGhpcy5lbnRyaWVzU2VydmljZS5wYWdpbmF0aW9uU3RyYXRlZ3ksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZGVmYXVsdFNvcnQ6IHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydCxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXNTZXJ2aWNlLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgLy8gQXV0b21hdGljIHF1ZXJ5LXBhcmFtcyBoYW5kbGluZyBpcyBvbmx5IHN1cHBvcnRlZCBieSBub2RlLWRhdGEtc291cmNlLXJlbW90ZS5cbiAgICAgICAgICAgIGRhdGFTb3VyY2UucmVnaXN0ZXJRdWVyeVBhcmFtZXRlcnModGhpcy5yb3V0ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGluaXRQYWdpbmF0b3IocGFnaW5hdG9yOiBNYXRQYWdpbmF0b3IpIHtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLml0ZW1zUGVyUGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5pdGVtc1BlclBhZ2VMYWJlbCcpXG4gICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5uZXh0UGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5uZXh0UGFnZUxhYmVsJylcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLnByZXZpb3VzUGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5wcmV2aW91c1BhZ2VMYWJlbCcpXG4gICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5nZXRSYW5nZUxhYmVsID0gKHBhZ2UsIHBhZ2VTaXplLCBsZW5ndGgpID0+XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdQQUdJTkFUT1IuZ2V0UmFuZ2VMYWJlbCcsIHtcbiAgICAgICAgICAgICAgICBwYWdlOiBwYWdlICsgMSxcbiAgICAgICAgICAgICAgICBwYWdlU2l6ZSxcbiAgICAgICAgICAgICAgICBsZW5ndGgsXG4gICAgICAgICAgICAgICAgcGFnZUNvdW50OiBNYXRoLmNlaWwobGVuZ3RoIC8gcGFnZVNpemUpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIC8vIENvbm5lY3QgZGF0YSBzb3VyY2UuXG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKS5zdWJzY3JpYmUoKGRhdGFTb3VyY2UpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhU291cmNlIGluc3RhbmNlb2YgTm9kZURhdGFTb3VyY2VSZW1vdGUpIHtcbiAgICAgICAgICAgICAgICAoZGF0YVNvdXJjZSBhcyBOb2RlRGF0YVNvdXJjZVJlbW90ZSkucGFnaW5hdG9yID0gcGFnaW5hdG9yO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYWdpbmF0b3IubGVuZ3RoID0gZGF0YVNvdXJjZT8uZ2V0VG90YWwoKTtcbiAgICAgICAgICAgICAgICBkYXRhU291cmNlXG4gICAgICAgICAgICAgICAgICAgID8uY29ubmVjdFBhZ2luYXRpb24oKVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2luYXRvci5sZW5ndGggPSBkYXRhU291cmNlLmdldFRvdGFsKCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvcGVuUGFnZShwYWdlOiBQYWdlRXZlbnQpIHtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5mZXRjaERhdGEuZW1pdCh7XG4gICAgICAgICAgICBvZmZzZXQ6IHBhZ2UucGFnZUluZGV4ICogcGFnZS5wYWdlU2l6ZSxcbiAgICAgICAgICAgIGFtb3VudDogcGFnZS5wYWdlU2l6ZSxcbiAgICAgICAgICAgIHJlc2V0OiB0cnVlLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG9wLW1hdHRlclwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVzU2VydmljZS50aXRsZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlc1NlcnZpY2UuZW50cmllc1RvcE1hdHRlclwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48bmctY29udGFpbmVyICpuZ0lmPVwiZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPT09IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuVGFibGVcIj5cbiAgICA8ZXMtbm9kZS1lbnRyaWVzLXRhYmxlPjwvZXMtbm9kZS1lbnRyaWVzLXRhYmxlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICBlbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQgfHxcbiAgICAgIGVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID09PSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLkdyaWRcbiAgICBcIlxuICA+XG4gICAgPGVzLW5vZGUtZW50cmllcy1jYXJkLWdyaWQgW2Rpc3BsYXlUeXBlXT1cImVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlXCI+XG4gICAgPC9lcy1ub2RlLWVudHJpZXMtY2FyZC1ncmlkPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNFbXB0eSgpICYmICFlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzTG9hZGluZ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXNTZXJ2aWNlLmVtcHR5XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48bWF0LXBhZ2luYXRvclxuICAjcGFnaW5hdG9yXG4gIFtwYWdlU2l6ZU9wdGlvbnNdPVwiZW50cmllc0dsb2JhbFNlcnZpY2UuZ2V0UGFnaW5hdG9yU2l6ZU9wdGlvbnMoZW50cmllc1NlcnZpY2Uuc2NvcGUpXCJcbiAgKm5nSWY9XCJlbnRyaWVzU2VydmljZS5wYWdpbmF0aW9uU3RyYXRlZ3kgPT09ICdwYWdpbmF0b3InXCJcbiAgW2NsYXNzLmRpc3BsYXktbm9uZV09XCJcbiAgICAoZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0xvYWRpbmcgJiYgZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0xvYWRpbmcgIT09ICdwYWdlJykgfHxcbiAgICBlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzRW1wdHkoKVxuICBcIlxuICAocGFnZSk9XCJvcGVuUGFnZSgkZXZlbnQpXCJcbj48L21hdC1wYWdpbmF0b3I+XG4iXX0=
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1lbnRyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtZW50cmllcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL25vZGUtZW50cmllcy9ub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFHVCxRQUFRLEVBQ1IsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSw2QkFBNkIsQ0FBQztBQUd0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUF1QixzQkFBc0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTTlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7Ozs7QUFPakUsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNXLGlCQUFvQyxFQUNwQyxvQkFBOEMsRUFDOUMsY0FBcUMsRUFDckMsZ0JBQTZDLEVBQ2hDLHVCQUFpRCxFQUM3RCxLQUFxQixFQUNyQixTQUEyQjtRQU41QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUEwQjtRQUM3RCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFr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QVMsQ0FBQyxJQUFJLENBQUM7WUFDL0IsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVE7WUFDdEMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3JCLEtBQUssRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0ExSFEsb0JBQW9CO2tHQUFwQixvQkFBb0Isa0dBS2xCLFlBQVksZ0RDaEMzQixrM0NBaUNBOzsyRkROYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0ksaUJBQWlCOzswQkFrQnRCLFFBQVE7cUdBVFksU0FBUztzQkFBakMsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IsIFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTm9kZUVudHJpZXNEYXRhVHlwZSwgTm9kZUVudHJpZXNEaXNwbGF5VHlwZSB9IGZyb20gJy4vZW50cmllcy1tb2RlbCc7XG5pbXBvcnQgeyBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy1nbG9iYWwuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1RlbXBsYXRlc1NlcnZpY2UgfSBmcm9tICcuL25vZGUtZW50cmllcy10ZW1wbGF0ZXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRW50cmllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub2RlLWVudHJpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlLCBHZW5lcmljQXV0aG9yaXR5IH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hYnN0cmFjdC9rZXlib2FyZC1zaG9ydGN1dHMuc2VydmljZSc7XG5pbXBvcnQgeyBOb2RlRGF0YVNvdXJjZVJlbW90ZSB9IGZyb20gJy4vbm9kZS1kYXRhLXNvdXJjZS1yZW1vdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VzLW5vZGUtZW50cmllcycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLWVudHJpZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydub2RlLWVudHJpZXMuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZUVudHJpZXNDb21wb25lbnQ8VCBleHRlbmRzIE5vZGVFbnRyaWVzRGF0YVR5cGU+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICAgIHJlYWRvbmx5IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUgPSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlO1xuXG4gICAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHB1YmxpYyBlbnRyaWVzR2xvYmFsU2VydmljZTogTm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgZW50cmllc1NlcnZpY2U6IE5vZGVFbnRyaWVzU2VydmljZTxUPixcbiAgICAgICAgcHVibGljIHRlbXBsYXRlc1NlcnZpY2U6IE5vZGVFbnRyaWVzVGVtcGxhdGVzU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBnbG9iYWxLZXlib2FyZFNob3J0Y3V0czogS2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXNTZXJ2aWNlLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgdGhpcy5yZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZSBpbnN0YW5jZW9mIE5vZGVEYXRhU291cmNlUmVtb3RlKSB7XG4gICAgICAgICAgICAvLyBXZSBkb24ndCByZXF1aXJlIGBzb3J0YCB0byBiZSBkZWZpbmVkLCBidXQgaWYgaXQgaXMgc2V0IGJ1dCBub3QgeWV0IHJlYWR5IChgbnVsbGApLFxuICAgICAgICAgICAgLy8gd2Ugd2FpdCBmb3IgaXRzIHZhbHVlIGJlZm9yZSBpbml0aWFsaXppbmcgdGhlIGRhdGEgc291cmNlLCBzbyB0aGUgZmlyc3QgcmVxdWVzdCBpc1xuICAgICAgICAgICAgLy8gc2VudCB3aXRoIHRoZSBjb3JyZWN0IHNvcnQgY29uZmlndXJhdGlvbi4gVGhhdCBpcyB3aHkgd2UgZXhwbGljaXRseSBkbyBub3QgZHJvcFxuICAgICAgICAgICAgLy8gYHVuZGVmaW5lZGAgd2l0aCB0aGUgYGZpcnN0YCBvcGVyYXRvciBiZWxvdy5cbiAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydFN1YmplY3RcbiAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgoc29ydCkgPT4gc29ydCAhPT0gbnVsbCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRSZW1vdGVEYXRhU291cmNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kYXRhU291cmNlIGFzIE5vZGVEYXRhU291cmNlUmVtb3RlPFQ+LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgdGhpcy5pbml0UGFnaW5hdG9yKHRoaXMucGFnaW5hdG9yKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyR2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMoKSB7XG4gICAgICAgIHRoaXMuZ2xvYmFsS2V5Ym9hcmRTaG9ydGN1dHMucmVnaXN0ZXIoXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBtb2RpZmllcnM6IFsnQ3RybC9DbWQnXSxcbiAgICAgICAgICAgICAgICAgICAga2V5Q29kZTogJ0tleUEnLFxuICAgICAgICAgICAgICAgICAgICBpZ25vcmVXaGVuOiAoZXZlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBTbWFsbEdyaWQgZG9lc24ndCBzdXBwb3J0IHNlbGVjdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQsXG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLmVudHJpZXNTZXJ2aWNlLnRvZ2dsZVNlbGVjdEFsbCgpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgeyB1bnRpbDogdGhpcy5kZXN0cm95ZWQgfSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRSZW1vdGVEYXRhU291cmNlKGRhdGFTb3VyY2U6IE5vZGVEYXRhU291cmNlUmVtb3RlPFQ+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBhZ2VTaXplID0gdGhpcy5lbnRyaWVzR2xvYmFsU2VydmljZS5nZXRQYWdpbmF0b3JTaXplT3B0aW9ucyhcbiAgICAgICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2Uuc2NvcGUsXG4gICAgICAgIClbMF07XG4gICAgICAgIGRhdGFTb3VyY2UuaW5pdCh7XG4gICAgICAgICAgICBwYWdpbmF0aW9uQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgZGVmYXVsdFBhZ2VTaXplOiBwYWdlU2l6ZSxcbiAgICAgICAgICAgICAgICBzdHJhdGVneTogdGhpcy5lbnRyaWVzU2VydmljZS5wYWdpbmF0aW9uU3RyYXRlZ3ksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZGVmYXVsdFNvcnQ6IHRoaXMuZW50cmllc1NlcnZpY2Uuc29ydCxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXNTZXJ2aWNlLnByaW1hcnlJbnN0YW5jZSkge1xuICAgICAgICAgICAgLy8gQXV0b21hdGljIHF1ZXJ5LXBhcmFtcyBoYW5kbGluZyBpcyBvbmx5IHN1cHBvcnRlZCBieSBub2RlLWRhdGEtc291cmNlLXJlbW90ZS5cbiAgICAgICAgICAgIGRhdGFTb3VyY2UucmVnaXN0ZXJRdWVyeVBhcmFtZXRlcnModGhpcy5yb3V0ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGluaXRQYWdpbmF0b3IocGFnaW5hdG9yOiBNYXRQYWdpbmF0b3IpIHtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLml0ZW1zUGVyUGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5pdGVtc1BlclBhZ2VMYWJlbCcpXG4gICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5uZXh0UGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5uZXh0UGFnZUxhYmVsJylcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgcGFnaW5hdG9yLl9pbnRsLnByZXZpb3VzUGFnZUxhYmVsID0gYXdhaXQgdGhpcy50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ1BBR0lOQVRPUi5wcmV2aW91c1BhZ2VMYWJlbCcpXG4gICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgIHBhZ2luYXRvci5faW50bC5nZXRSYW5nZUxhYmVsID0gKHBhZ2UsIHBhZ2VTaXplLCBsZW5ndGgpID0+XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdQQUdJTkFUT1IuZ2V0UmFuZ2VMYWJlbCcsIHtcbiAgICAgICAgICAgICAgICBwYWdlOiBwYWdlICsgMSxcbiAgICAgICAgICAgICAgICBwYWdlU2l6ZSxcbiAgICAgICAgICAgICAgICBsZW5ndGgsXG4gICAgICAgICAgICAgICAgcGFnZUNvdW50OiBNYXRoLmNlaWwobGVuZ3RoIC8gcGFnZVNpemUpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIC8vIENvbm5lY3QgZGF0YSBzb3VyY2UuXG4gICAgICAgIHRoaXMuZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKS5zdWJzY3JpYmUoKGRhdGFTb3VyY2UpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhU291cmNlIGluc3RhbmNlb2YgTm9kZURhdGFTb3VyY2VSZW1vdGUpIHtcbiAgICAgICAgICAgICAgICAoZGF0YVNvdXJjZSBhcyBOb2RlRGF0YVNvdXJjZVJlbW90ZSkucGFnaW5hdG9yID0gcGFnaW5hdG9yO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYWdpbmF0b3IubGVuZ3RoID0gZGF0YVNvdXJjZT8uZ2V0VG90YWwoKTtcbiAgICAgICAgICAgICAgICBkYXRhU291cmNlXG4gICAgICAgICAgICAgICAgICAgID8uY29ubmVjdFBhZ2luYXRpb24oKVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2luYXRvci5sZW5ndGggPSBkYXRhU291cmNlLmdldFRvdGFsKCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvcGVuUGFnZShwYWdlOiBQYWdlRXZlbnQpIHtcbiAgICAgICAgdGhpcy5lbnRyaWVzU2VydmljZS5mZXRjaERhdGEuZW1pdCh7XG4gICAgICAgICAgICBvZmZzZXQ6IHBhZ2UucGFnZUluZGV4ICogcGFnZS5wYWdlU2l6ZSxcbiAgICAgICAgICAgIGFtb3VudDogcGFnZS5wYWdlU2l6ZSxcbiAgICAgICAgICAgIHJlc2V0OiB0cnVlLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG9wLW1hdHRlclwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVzU2VydmljZS50aXRsZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlc1NlcnZpY2UuZW50cmllc1RvcE1hdHRlclwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48bmctY29udGFpbmVyICpuZ0lmPVwiZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZW50cmllc1NlcnZpY2UuZGlzcGxheVR5cGUgPT09IE5vZGVFbnRyaWVzRGlzcGxheVR5cGUuVGFibGVcIj5cbiAgICA8ZXMtbm9kZS1lbnRyaWVzLXRhYmxlPjwvZXMtbm9kZS1lbnRyaWVzLXRhYmxlPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICBlbnRyaWVzU2VydmljZS5kaXNwbGF5VHlwZSA9PT0gTm9kZUVudHJpZXNEaXNwbGF5VHlwZS5TbWFsbEdyaWQgfHxcbiAgICAgIGVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlID09PSBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLkdyaWRcbiAgICBcIlxuICA+XG4gICAgPGVzLW5vZGUtZW50cmllcy1jYXJkLWdyaWQgW2Rpc3BsYXlUeXBlXT1cImVudHJpZXNTZXJ2aWNlLmRpc3BsYXlUeXBlXCI+XG4gICAgPC9lcy1ub2RlLWVudHJpZXMtY2FyZC1ncmlkPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVudHJpZXNTZXJ2aWNlLmRhdGFTb3VyY2UuaXNFbXB0eSgpICYmICFlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzTG9hZGluZ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZXNTZXJ2aWNlLmVtcHR5XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48bWF0LXBhZ2luYXRvclxuICAjcGFnaW5hdG9yXG4gIFtwYWdlU2l6ZU9wdGlvbnNdPVwiZW50cmllc0dsb2JhbFNlcnZpY2UuZ2V0UGFnaW5hdG9yU2l6ZU9wdGlvbnMoZW50cmllc1NlcnZpY2Uuc2NvcGUpXCJcbiAgKm5nSWY9XCJlbnRyaWVzU2VydmljZS5wYWdpbmF0aW9uU3RyYXRlZ3kgPT09ICdwYWdpbmF0b3InXCJcbiAgW2NsYXNzLmRpc3BsYXktbm9uZV09XCJcbiAgICAoZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0xvYWRpbmcgJiYgZW50cmllc1NlcnZpY2UuZGF0YVNvdXJjZS5pc0xvYWRpbmcgIT09ICdwYWdlJykgfHxcbiAgICBlbnRyaWVzU2VydmljZS5kYXRhU291cmNlLmlzRW1wdHkoKVxuICBcIlxuICAocGFnZSk9XCJvcGVuUGFnZSgkZXZlbnQpXCJcbj48L21hdC1wYWdpbmF0b3I+XG4iXX0=
|
|
@@ -38,8 +38,8 @@ import { PreviewImageComponent } from './preview-image/preview-image.component';
|
|
|
38
38
|
import { SortSelectPanelComponent } from './sort-select-panel/sort-select-panel.component';
|
|
39
39
|
import * as i0 from "@angular/core";
|
|
40
40
|
export class NodeEntriesModule {
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
42
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
42
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesModule, declarations: [ColumnChooserComponent,
|
|
43
43
|
DragPreviewComponent,
|
|
44
44
|
ListItemLabelPipe,
|
|
45
45
|
NodeEntriesCardComponent,
|
|
@@ -82,7 +82,7 @@ export class NodeEntriesModule {
|
|
|
82
82
|
NodesDragSourceDirective,
|
|
83
83
|
NodesDropTargetDirective,
|
|
84
84
|
ListItemLabelPipe] }); }
|
|
85
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
85
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesModule, imports: [CommonModule,
|
|
86
86
|
FormsModule,
|
|
87
87
|
A11yModule,
|
|
88
88
|
OverlayModule,
|
|
@@ -102,7 +102,7 @@ export class NodeEntriesModule {
|
|
|
102
102
|
MatTooltipModule,
|
|
103
103
|
TranslateModule] }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeEntriesModule, decorators: [{
|
|
106
106
|
type: NgModule,
|
|
107
107
|
args: [{
|
|
108
108
|
declarations: [
|
|
@@ -113,13 +113,13 @@ export class NodeRatingComponent {
|
|
|
113
113
|
isFromHomeRepo(node) {
|
|
114
114
|
return this.networkApi.isFromHomeRepository(node);
|
|
115
115
|
}
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
116
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeRatingComponent, deps: [{ token: i1.Toast }, { token: i2.ConfigService }, { token: i2.NetworkService }, { token: i2.AuthenticationService }, { token: i0.ChangeDetectorRef }, { token: i2.RatingV1Service }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
117
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: NodeRatingComponent, selector: "es-node-rating", inputs: { node: "node" }, ngImport: i0, template: "<ng-container *ngIf=\"hasPermission && node.type === 'ccm:io' && isFromHomeRepo(node)\">\n <div *ngIf=\"mode === 'likes'\" class=\"likes\">\n <button\n (click)=\"toogleLike()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n mat-icon-button\n color=\"primary\"\n matTooltip=\"{{ 'RATING.LIKES' | translate }}\"\n >\n <i [esIcon]=\"'edu-thumb_up' + (!node.rating?.user ? '_off' : '')\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_LIKES' | translate }}\">{{\n node.rating?.overall.count\n }}</span>\n </div>\n <div *ngIf=\"mode === 'stars'\" class=\"stars\" mat-icon-button color=\"primary\">\n <button\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\"\n mat-icon-button\n color=\"primary\"\n class=\"star\"\n (click)=\"setRating(rating)\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n (focus)=\"hoverStar = rating\"\n (mouseenter)=\"hoverStar = rating\"\n (mouseleave)=\"hoverStar = 0\"\n (blur)=\"hoverStar = 0\"\n [class.star-hover]=\"hoverStar >= rating\"\n >\n <i\n [esIcon]=\"\n 'star' +\n ((hoverStar ? hoverStar >= rating : getPrimaryRating() >= rating) ? '' : '_border')\n \"\n matTooltip=\"{{ 'RATING.STARS_RATE' | translate : { rating: rating } }}\"\n ></i>\n </button>\n <button\n *ngIf=\"!!node.rating?.user\"\n mat-icon-button\n color=\"primary\"\n class=\"delete\"\n matTooltip=\"{{ 'RATING.DELETE_RATING' | translate }}\"\n (click)=\"deleteRating()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n >\n <i esIcon=\"clear\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_RATINGS' | translate }}\"\n >({{ node.rating?.overall.count }})</span\n >\n </div>\n</ng-container>\n", styles: [".stars{display:flex;align-items:center}.stars span{padding-left:8px}.likes{display:flex;align-items:center}.mdc-icon-button.mat-primary{color:var(--textLight);display:flex;align-items:center;padding:0}.mdc-icon-button.mat-primary.star,.mdc-icon-button.mat-primary.delete{min-width:unset;width:18px;height:18px}.mdc-icon-button.mat-primary.star i,.mdc-icon-button.mat-primary.delete i{font-size:17px;line-height:1}.mdc-icon-button.mat-primary.star ::ng-deep .mat-mdc-button-touch-target,.mdc-icon-button.mat-primary.delete ::ng-deep .mat-mdc-button-touch-target{display:none}.mdc-icon-button.mat-primary.star.star-hover,.mdc-icon-button.mat-primary.delete.star-hover{color:var(--colorStarActive)}\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: i4.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
118
118
|
}
|
|
119
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeRatingComponent, decorators: [{
|
|
120
120
|
type: Component,
|
|
121
121
|
args: [{ selector: 'es-node-rating', template: "<ng-container *ngIf=\"hasPermission && node.type === 'ccm:io' && isFromHomeRepo(node)\">\n <div *ngIf=\"mode === 'likes'\" class=\"likes\">\n <button\n (click)=\"toogleLike()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n mat-icon-button\n color=\"primary\"\n matTooltip=\"{{ 'RATING.LIKES' | translate }}\"\n >\n <i [esIcon]=\"'edu-thumb_up' + (!node.rating?.user ? '_off' : '')\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_LIKES' | translate }}\">{{\n node.rating?.overall.count\n }}</span>\n </div>\n <div *ngIf=\"mode === 'stars'\" class=\"stars\" mat-icon-button color=\"primary\">\n <button\n *ngFor=\"let rating of [1, 2, 3, 4, 5]\"\n mat-icon-button\n color=\"primary\"\n class=\"star\"\n (click)=\"setRating(rating)\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n (focus)=\"hoverStar = rating\"\n (mouseenter)=\"hoverStar = rating\"\n (mouseleave)=\"hoverStar = 0\"\n (blur)=\"hoverStar = 0\"\n [class.star-hover]=\"hoverStar >= rating\"\n >\n <i\n [esIcon]=\"\n 'star' +\n ((hoverStar ? hoverStar >= rating : getPrimaryRating() >= rating) ? '' : '_border')\n \"\n matTooltip=\"{{ 'RATING.STARS_RATE' | translate : { rating: rating } }}\"\n ></i>\n </button>\n <button\n *ngIf=\"!!node.rating?.user\"\n mat-icon-button\n color=\"primary\"\n class=\"delete\"\n matTooltip=\"{{ 'RATING.DELETE_RATING' | translate }}\"\n (click)=\"deleteRating()\"\n [disabled]=\"(this.authenticationService.observeLoginInfo() | async)?.isGuest\"\n >\n <i esIcon=\"clear\"></i>\n </button>\n <span matTooltip=\"{{ 'RATING.COUNT_RATINGS' | translate }}\"\n >({{ node.rating?.overall.count }})</span\n >\n </div>\n</ng-container>\n", styles: [".stars{display:flex;align-items:center}.stars span{padding-left:8px}.likes{display:flex;align-items:center}.mdc-icon-button.mat-primary{color:var(--textLight);display:flex;align-items:center;padding:0}.mdc-icon-button.mat-primary.star,.mdc-icon-button.mat-primary.delete{min-width:unset;width:18px;height:18px}.mdc-icon-button.mat-primary.star i,.mdc-icon-button.mat-primary.delete i{font-size:17px;line-height:1}.mdc-icon-button.mat-primary.star ::ng-deep .mat-mdc-button-touch-target,.mdc-icon-button.mat-primary.delete ::ng-deep .mat-mdc-button-touch-target{display:none}.mdc-icon-button.mat-primary.star.star-hover,.mdc-icon-button.mat-primary.delete.star-hover{color:var(--colorStarActive)}\n"] }]
|
|
122
|
-
}], ctorParameters:
|
|
122
|
+
}], ctorParameters: () => [{ type: i1.Toast }, { type: i2.ConfigService }, { type: i2.NetworkService }, { type: i2.AuthenticationService }, { type: i0.ChangeDetectorRef }, { type: i2.RatingV1Service }], propDecorators: { node: [{
|
|
123
123
|
type: Input
|
|
124
124
|
}] } });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1yYXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFJSCxhQUFhLEdBR2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7SUFLNUIsWUFDVyxLQUFZLEVBQ1osYUFBNEIsRUFDM0IsVUFBMEIsRUFDM0IscUJBQTRDLEVBQzVDLGlCQUFvQyxFQUNwQyxhQUE4QjtRQUw5QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDM0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtJQUN0QyxDQUFDO0lBRUosS0FBSyxDQUFDLFFBQVE7UUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25F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SyxDQUFDLDZCQUE2QixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDdEQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDMUM7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNSLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3ZCO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFVO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDOzhHQTdHUSxtQkFBbUI7a0dBQW5CLG1CQUFtQixnRkNsQmhDLGc1REFxREE7OzJGRG5DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksZ0JBQWdCO3VQQUtqQixJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIE5vZGUsXG4gICAgQ29uZmlnU2VydmljZSxcbiAgICBBdXRoZW50aWNhdGlvblNlcnZpY2UsXG4gICAgUmVzdENvbnN0YW50cyxcbiAgICBOZXR3b3JrU2VydmljZSxcbiAgICBSYXRpbmdWMVNlcnZpY2UsXG59IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgVG9hc3QgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hYnN0cmFjdC90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJlc3RIZWxwZXIgfSBmcm9tICcuLi8uLi91dGlsL3Jlc3QtaGVscGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXJhdGluZycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLXJhdGluZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtcmF0aW5nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVSYXRpbmdDb21wb25lbnQ8VCBleHRlbmRzIE5vZGU+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBub2RlOiBUO1xuICAgIG1vZGU6IFJhdGluZ01vZGU7XG4gICAgaGFzUGVybWlzc2lvbjogYm9vbGVhbjtcbiAgICBob3ZlclN0YXI6IG51bWJlcjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRvYXN0OiBUb2FzdCxcbiAgICAgICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmV0d29ya0FwaTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBhdXRoZW50aWNhdGlvblNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHVibGljIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIHJhdGluZ1NlcnZpY2U6IFJhdGluZ1YxU2VydmljZSxcbiAgICApIHt9XG5cbiAgICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5jb25maWdTZXJ2aWNlLm9ic2VydmVDb25maWcoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB0aGlzLm1vZGUgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuaW5zdGFudCgncmF0aW5nLm1vZGUnLCAnbm9uZScpO1xuICAgICAgICB0aGlzLmhhc1Blcm1pc3Npb24gPSBhd2FpdCB0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5oYXNUb29scGVybWlzc2lvbihcbiAgICAgICAgICAgIFJlc3RDb25zdGFudHMuVE9PTFBFUk1JU1NJT05fUkFURV9SRUFELFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGFzeW5jIHRvb2dsZUxpa2UoKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBSZXN0SGVscGVyLmdldFRpdGxlKHRoaXMubm9kZSk7XG4gICAgICAgIGlmICh0aGlzLm5vZGUucmF0aW5nPy51c2VyKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMucmF0aW5nU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAuZGVsZXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGU6IHRoaXMubm9kZS5yZWYuaWQsXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuTElLRV9SRU1PVkVEJywgeyBuYW1lIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50LS07XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdC5lcnJvcihlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5hZGRPclVwZGF0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXBvc2l0b3J5OiB0aGlzLm5vZGUucmVmLnJlcG8sXG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmF0aW5nOiA1LFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9keTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5MSUtFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSA1O1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCsrO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0UHJpbWFyeVJhdGluZygpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUucmF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5ub2RlLnJhdGluZy51c2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5ub2RlLnJhdGluZy51c2VyO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGUucmF0aW5nLm92ZXJhbGwuc3VtIC8gdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50O1xuICAgIH1cblxuICAgIGFzeW5jIHNldFJhdGluZyhyYXRpbmc6IG51bWJlcikge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmFkZE9yVXBkYXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgcmVwb3NpdG9yeTogdGhpcy5ub2RlLnJlZi5yZXBvLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICByYXRpbmcsXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IG51bGwsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuUkFURUQnLCB7IG5hbWUsIHJhdGluZyB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCArPSB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPyAwIDogMTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IHJhdGluZztcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlUmF0aW5nKCkge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmRlbGV0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgbm9kZTogdGhpcy5ub2RlLnJlZi5pZCxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5SQVRJTkdfUkVNT1ZFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudC0tO1xuICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLnN1bSAtPSB0aGlzLm5vZGUucmF0aW5nLnVzZXI7XG4gICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSAwO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0Zyb21Ib21lUmVwbyhub2RlOiBOb2RlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ldHdvcmtBcGkuaXNGcm9tSG9tZVJlcG9zaXRvcnkobm9kZSk7XG4gICAgfVxufVxuZXhwb3J0IHR5cGUgUmF0aW5nTW9kZSA9ICdub25lJyB8ICdsaWtlcycgfCAnc3RhcnMnO1xuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc1Blcm1pc3Npb24gJiYgbm9kZS50eXBlID09PSAnY2NtOmlvJyAmJiBpc0Zyb21Ib21lUmVwbyhub2RlKVwiPlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ2xpa2VzJ1wiIGNsYXNzPVwibGlrZXNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAoY2xpY2spPVwidG9vZ2xlTGlrZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCIodGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2Uub2JzZXJ2ZUxvZ2luSW5mbygpIHwgYXN5bmMpPy5pc0d1ZXN0XCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkxJS0VTJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgPlxuICAgICAgPGkgW2VzSWNvbl09XCInZWR1LXRodW1iX3VwJyArICghbm9kZS5yYXRpbmc/LnVzZXIgPyAnX29mZicgOiAnJylcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfTElLRVMnIHwgdHJhbnNsYXRlIH19XCI+e3tcbiAgICAgIG5vZGUucmF0aW5nPy5vdmVyYWxsLmNvdW50XG4gICAgfX08L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ3N0YXJzJ1wiIGNsYXNzPVwic3RhcnNcIiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IHJhdGluZyBvZiBbMSwgMiwgMywgNCwgNV1cIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgY2xhc3M9XCJzdGFyXCJcbiAgICAgIChjbGljayk9XCJzZXRSYXRpbmcocmF0aW5nKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgICAoZm9jdXMpPVwiaG92ZXJTdGFyID0gcmF0aW5nXCJcbiAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyU3RhciA9IHJhdGluZ1wiXG4gICAgICAobW91c2VsZWF2ZSk9XCJob3ZlclN0YXIgPSAwXCJcbiAgICAgIChibHVyKT1cImhvdmVyU3RhciA9IDBcIlxuICAgICAgW2NsYXNzLnN0YXItaG92ZXJdPVwiaG92ZXJTdGFyID49IHJhdGluZ1wiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgW2VzSWNvbl09XCJcbiAgICAgICAgICAnc3RhcicgK1xuICAgICAgICAgICgoaG92ZXJTdGFyID8gaG92ZXJTdGFyID49IHJhdGluZyA6IGdldFByaW1hcnlSYXRpbmcoKSA+PSByYXRpbmcpID8gJycgOiAnX2JvcmRlcicpXG4gICAgICAgIFwiXG4gICAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLlNUQVJTX1JBVEUnIHwgdHJhbnNsYXRlIDogeyByYXRpbmc6IHJhdGluZyB9IH19XCJcbiAgICAgID48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCIhIW5vZGUucmF0aW5nPy51c2VyXCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIGNsYXNzPVwiZGVsZXRlXCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkRFTEVURV9SQVRJTkcnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIChjbGljayk9XCJkZWxldGVSYXRpbmcoKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgPlxuICAgICAgPGkgZXNJY29uPVwiY2xlYXJcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfUkFUSU5HUycgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgPih7eyBub2RlLnJhdGluZz8ub3ZlcmFsbC5jb3VudCB9fSk8L3NwYW5cbiAgICA+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1yYXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1yYXRpbmcvbm9kZS1yYXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFJSCxhQUFhLEdBR2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7SUFLNUIsWUFDVyxLQUFZLEVBQ1osYUFBNEIsRUFDM0IsVUFBMEIsRUFDM0IscUJBQTRDLEVBQzVDLGlCQUFvQyxFQUNwQyxhQUE4QjtRQUw5QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDM0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtJQUN0QyxDQUFDO0lBRUosS0FBSyxDQUFDLFFBQVE7UUFDVixNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25F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QUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTthQUN6QixDQUFDO2lCQUNELFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDdEQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0MsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFVO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDOzhHQTdHUSxtQkFBbUI7a0dBQW5CLG1CQUFtQixnRkNsQmhDLGc1REFxREE7OzJGRG5DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0ksZ0JBQWdCO3FPQUtqQixJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIE5vZGUsXG4gICAgQ29uZmlnU2VydmljZSxcbiAgICBBdXRoZW50aWNhdGlvblNlcnZpY2UsXG4gICAgUmVzdENvbnN0YW50cyxcbiAgICBOZXR3b3JrU2VydmljZSxcbiAgICBSYXRpbmdWMVNlcnZpY2UsXG59IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgVG9hc3QgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hYnN0cmFjdC90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJlc3RIZWxwZXIgfSBmcm9tICcuLi8uLi91dGlsL3Jlc3QtaGVscGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXJhdGluZycsXG4gICAgdGVtcGxhdGVVcmw6ICdub2RlLXJhdGluZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ25vZGUtcmF0aW5nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVSYXRpbmdDb21wb25lbnQ8VCBleHRlbmRzIE5vZGU+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBub2RlOiBUO1xuICAgIG1vZGU6IFJhdGluZ01vZGU7XG4gICAgaGFzUGVybWlzc2lvbjogYm9vbGVhbjtcbiAgICBob3ZlclN0YXI6IG51bWJlcjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRvYXN0OiBUb2FzdCxcbiAgICAgICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmV0d29ya0FwaTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBhdXRoZW50aWNhdGlvblNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHVibGljIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIHJhdGluZ1NlcnZpY2U6IFJhdGluZ1YxU2VydmljZSxcbiAgICApIHt9XG5cbiAgICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5jb25maWdTZXJ2aWNlLm9ic2VydmVDb25maWcoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB0aGlzLm1vZGUgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuaW5zdGFudCgncmF0aW5nLm1vZGUnLCAnbm9uZScpO1xuICAgICAgICB0aGlzLmhhc1Blcm1pc3Npb24gPSBhd2FpdCB0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5oYXNUb29scGVybWlzc2lvbihcbiAgICAgICAgICAgIFJlc3RDb25zdGFudHMuVE9PTFBFUk1JU1NJT05fUkFURV9SRUFELFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGFzeW5jIHRvb2dsZUxpa2UoKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBSZXN0SGVscGVyLmdldFRpdGxlKHRoaXMubm9kZSk7XG4gICAgICAgIGlmICh0aGlzLm5vZGUucmF0aW5nPy51c2VyKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMucmF0aW5nU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAuZGVsZXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGU6IHRoaXMubm9kZS5yZWYuaWQsXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuTElLRV9SRU1PVkVEJywgeyBuYW1lIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50LS07XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdC5lcnJvcihlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5hZGRPclVwZGF0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXBvc2l0b3J5OiB0aGlzLm5vZGUucmVmLnJlcG8sXG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmF0aW5nOiA1LFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9keTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRvUHJvbWlzZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5MSUtFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSA1O1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCsrO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0UHJpbWFyeVJhdGluZygpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUucmF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5ub2RlLnJhdGluZy51c2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5ub2RlLnJhdGluZy51c2VyO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGUucmF0aW5nLm92ZXJhbGwuc3VtIC8gdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLmNvdW50O1xuICAgIH1cblxuICAgIGFzeW5jIHNldFJhdGluZyhyYXRpbmc6IG51bWJlcikge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmFkZE9yVXBkYXRlUmF0aW5nKHtcbiAgICAgICAgICAgICAgICAgICAgcmVwb3NpdG9yeTogdGhpcy5ub2RlLnJlZi5yZXBvLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB0aGlzLm5vZGUucmVmLmlkLFxuICAgICAgICAgICAgICAgICAgICByYXRpbmcsXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IG51bGwsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAudG9Qcm9taXNlKCk7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LnRvYXN0KCdSQVRJTkcuVE9BU1QuUkFURUQnLCB7IG5hbWUsIHJhdGluZyB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudCArPSB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPyAwIDogMTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcudXNlciA9IHJhdGluZztcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0LmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlUmF0aW5nKCkge1xuICAgICAgICBjb25zdCBuYW1lID0gUmVzdEhlbHBlci5nZXRUaXRsZSh0aGlzLm5vZGUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yYXRpbmdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmRlbGV0ZVJhdGluZyh7XG4gICAgICAgICAgICAgICAgICAgIHJlcG9zaXRvcnk6IHRoaXMubm9kZS5yZWYucmVwbyxcbiAgICAgICAgICAgICAgICAgICAgbm9kZTogdGhpcy5ub2RlLnJlZi5pZCxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudG9hc3QudG9hc3QoJ1JBVElORy5UT0FTVC5SQVRJTkdfUkVNT1ZFRCcsIHsgbmFtZSB9KTtcbiAgICAgICAgICAgIHRoaXMubm9kZS5yYXRpbmcub3ZlcmFsbC5jb3VudC0tO1xuICAgICAgICAgICAgdGhpcy5ub2RlLnJhdGluZy5vdmVyYWxsLnN1bSAtPSB0aGlzLm5vZGUucmF0aW5nLnVzZXI7XG4gICAgICAgICAgICB0aGlzLm5vZGUucmF0aW5nLnVzZXIgPSAwO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0Zyb21Ib21lUmVwbyhub2RlOiBOb2RlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ldHdvcmtBcGkuaXNGcm9tSG9tZVJlcG9zaXRvcnkobm9kZSk7XG4gICAgfVxufVxuZXhwb3J0IHR5cGUgUmF0aW5nTW9kZSA9ICdub25lJyB8ICdsaWtlcycgfCAnc3RhcnMnO1xuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc1Blcm1pc3Npb24gJiYgbm9kZS50eXBlID09PSAnY2NtOmlvJyAmJiBpc0Zyb21Ib21lUmVwbyhub2RlKVwiPlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ2xpa2VzJ1wiIGNsYXNzPVwibGlrZXNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAoY2xpY2spPVwidG9vZ2xlTGlrZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCIodGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2Uub2JzZXJ2ZUxvZ2luSW5mbygpIHwgYXN5bmMpPy5pc0d1ZXN0XCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkxJS0VTJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgPlxuICAgICAgPGkgW2VzSWNvbl09XCInZWR1LXRodW1iX3VwJyArICghbm9kZS5yYXRpbmc/LnVzZXIgPyAnX29mZicgOiAnJylcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfTElLRVMnIHwgdHJhbnNsYXRlIH19XCI+e3tcbiAgICAgIG5vZGUucmF0aW5nPy5vdmVyYWxsLmNvdW50XG4gICAgfX08L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ3N0YXJzJ1wiIGNsYXNzPVwic3RhcnNcIiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IHJhdGluZyBvZiBbMSwgMiwgMywgNCwgNV1cIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgY2xhc3M9XCJzdGFyXCJcbiAgICAgIChjbGljayk9XCJzZXRSYXRpbmcocmF0aW5nKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgICAoZm9jdXMpPVwiaG92ZXJTdGFyID0gcmF0aW5nXCJcbiAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyU3RhciA9IHJhdGluZ1wiXG4gICAgICAobW91c2VsZWF2ZSk9XCJob3ZlclN0YXIgPSAwXCJcbiAgICAgIChibHVyKT1cImhvdmVyU3RhciA9IDBcIlxuICAgICAgW2NsYXNzLnN0YXItaG92ZXJdPVwiaG92ZXJTdGFyID49IHJhdGluZ1wiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgW2VzSWNvbl09XCJcbiAgICAgICAgICAnc3RhcicgK1xuICAgICAgICAgICgoaG92ZXJTdGFyID8gaG92ZXJTdGFyID49IHJhdGluZyA6IGdldFByaW1hcnlSYXRpbmcoKSA+PSByYXRpbmcpID8gJycgOiAnX2JvcmRlcicpXG4gICAgICAgIFwiXG4gICAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLlNUQVJTX1JBVEUnIHwgdHJhbnNsYXRlIDogeyByYXRpbmc6IHJhdGluZyB9IH19XCJcbiAgICAgID48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCIhIW5vZGUucmF0aW5nPy51c2VyXCJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIGNsYXNzPVwiZGVsZXRlXCJcbiAgICAgIG1hdFRvb2x0aXA9XCJ7eyAnUkFUSU5HLkRFTEVURV9SQVRJTkcnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIChjbGljayk9XCJkZWxldGVSYXRpbmcoKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLm9ic2VydmVMb2dpbkluZm8oKSB8IGFzeW5jKT8uaXNHdWVzdFwiXG4gICAgPlxuICAgICAgPGkgZXNJY29uPVwiY2xlYXJcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gbWF0VG9vbHRpcD1cInt7ICdSQVRJTkcuQ09VTlRfUkFUSU5HUycgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgPih7eyBub2RlLnJhdGluZz8ub3ZlcmFsbC5jb3VudCB9fSk8L3NwYW5cbiAgICA+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -29,15 +29,15 @@ export class NodeStatsBadgesComponent {
|
|
|
29
29
|
return 0;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeStatsBadgesComponent, deps: [{ token: i1.NodeEntriesService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: NodeStatsBadgesComponent, selector: "es-node-stats-badges", inputs: { node: "node", backgroundStyle: "backgroundStyle" }, host: { properties: { "attr.backgroundStyle": "this.backgroundStyle" } }, ngImport: i0, template: "<!--\n <div\n *ngIf=\"node.aspects?.includes('ccm:published')\"\n class=\"card-top-bar-published-copy\"\n >\n <div class=\"node-published-copy\">\n <i\n esIcon=\"content_copy\"\n [matTooltip]=\"'PUBLISHED_COPY_TOOLTIP' | translate\"\n ></i>\n </div>\n </div>\n -->\n<div class=\"card-top-bar-comments\">\n <div\n class=\"node-comments\"\n *ngIf=\"node.type === 'ccm:io'\"\n (click)=\"\n entriesService?.onClicked({\n event: $event,\n element: node,\n source: ClickSource.Comments\n })\n \"\n [matTooltip]=\"('COMMENTS_MULTIPLE' | translate) + ': ' + node.commentCount\"\n >\n <i esIcon=\"comment\"></i>\n <span>{{ node.commentCount }}</span>\n </div>\n</div>\n<div class=\"card-top-bar-childobjects\" *ngIf=\"childObjectCount > 0\">\n <div\n class=\"childobject-count\"\n matTooltip=\"{{ 'CHILDOBJECT_COUNT' | translate : { count: childObjectCount + 1 } }}\"\n >\n <span>{{ childObjectCount + 1 }}</span\n ><i esIcon=\"filter_none\"></i>\n </div>\n</div>\n", styles: [":host{display:flex;gap:15px}.card-top-bar-comments>div,.card-top-bar-published-copy>div,.card-top-bar-childobjects>div{border-radius:15px;display:inline-flex;align-items:center;min-width:35px;min-height:22px;justify-content:center;cursor:default;-webkit-user-select:none;user-select:none;padding:2px 8px}:host[backgroundStyle=lighten] .card-top-bar-comments>div,:host[backgroundStyle=lighten] .card-top-bar-published-copy>div,:host[backgroundStyle=lighten] .card-top-bar-childobjects>div{background-color:#ffffffbf}:host[backgroundStyle=darken] .card-top-bar-comments>div,:host[backgroundStyle=darken] .card-top-bar-published-copy>div,:host[backgroundStyle=darken] .card-top-bar-childobjects>div{background-color:#0003}.card-top-bar-comments>div.childobject-count>i,.card-top-bar-published-copy>div.childobject-count>i,.card-top-bar-childobjects>div.childobject-count>i{font-size:13px;margin-left:4px}.card-top-bar-comments>div.node-published-copy,.card-top-bar-published-copy>div.node-published-copy,.card-top-bar-childobjects>div.node-published-copy{min-width:auto}.card-top-bar-comments>div.node-published-copy>i,.card-top-bar-published-copy>div.node-published-copy>i,.card-top-bar-childobjects>div.node-published-copy>i{font-size:13px}.card-top-bar-comments>div.node-comments>i,.card-top-bar-published-copy>div.node-comments>i,.card-top-bar-childobjects>div.node-comments>i{font-size:13px;margin-right:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeStatsBadgesComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'es-node-stats-badges', template: "<!--\n <div\n *ngIf=\"node.aspects?.includes('ccm:published')\"\n class=\"card-top-bar-published-copy\"\n >\n <div class=\"node-published-copy\">\n <i\n esIcon=\"content_copy\"\n [matTooltip]=\"'PUBLISHED_COPY_TOOLTIP' | translate\"\n ></i>\n </div>\n </div>\n -->\n<div class=\"card-top-bar-comments\">\n <div\n class=\"node-comments\"\n *ngIf=\"node.type === 'ccm:io'\"\n (click)=\"\n entriesService?.onClicked({\n event: $event,\n element: node,\n source: ClickSource.Comments\n })\n \"\n [matTooltip]=\"('COMMENTS_MULTIPLE' | translate) + ': ' + node.commentCount\"\n >\n <i esIcon=\"comment\"></i>\n <span>{{ node.commentCount }}</span>\n </div>\n</div>\n<div class=\"card-top-bar-childobjects\" *ngIf=\"childObjectCount > 0\">\n <div\n class=\"childobject-count\"\n matTooltip=\"{{ 'CHILDOBJECT_COUNT' | translate : { count: childObjectCount + 1 } }}\"\n >\n <span>{{ childObjectCount + 1 }}</span\n ><i esIcon=\"filter_none\"></i>\n </div>\n</div>\n", styles: [":host{display:flex;gap:15px}.card-top-bar-comments>div,.card-top-bar-published-copy>div,.card-top-bar-childobjects>div{border-radius:15px;display:inline-flex;align-items:center;min-width:35px;min-height:22px;justify-content:center;cursor:default;-webkit-user-select:none;user-select:none;padding:2px 8px}:host[backgroundStyle=lighten] .card-top-bar-comments>div,:host[backgroundStyle=lighten] .card-top-bar-published-copy>div,:host[backgroundStyle=lighten] .card-top-bar-childobjects>div{background-color:#ffffffbf}:host[backgroundStyle=darken] .card-top-bar-comments>div,:host[backgroundStyle=darken] .card-top-bar-published-copy>div,:host[backgroundStyle=darken] .card-top-bar-childobjects>div{background-color:#0003}.card-top-bar-comments>div.childobject-count>i,.card-top-bar-published-copy>div.childobject-count>i,.card-top-bar-childobjects>div.childobject-count>i{font-size:13px;margin-left:4px}.card-top-bar-comments>div.node-published-copy,.card-top-bar-published-copy>div.node-published-copy,.card-top-bar-childobjects>div.node-published-copy{min-width:auto}.card-top-bar-comments>div.node-published-copy>i,.card-top-bar-published-copy>div.node-published-copy>i,.card-top-bar-childobjects>div.node-published-copy>i{font-size:13px}.card-top-bar-comments>div.node-comments>i,.card-top-bar-published-copy>div.node-comments>i,.card-top-bar-childobjects>div.node-comments>i{font-size:13px;margin-right:4px}\n"] }]
|
|
38
|
-
}], ctorParameters:
|
|
38
|
+
}], ctorParameters: () => [{ type: i1.NodeEntriesService, decorators: [{
|
|
39
39
|
type: Optional
|
|
40
|
-
}] }]
|
|
40
|
+
}] }], propDecorators: { node: [{
|
|
41
41
|
type: Input
|
|
42
42
|
}], backgroundStyle: [{
|
|
43
43
|
type: HostBinding,
|
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
45
45
|
}, {
|
|
46
46
|
type: Input
|
|
47
47
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1zdGF0cy1iYWRnZXMvbm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS1zdGF0cy1iYWRnZXMvbm9kZS1zdGF0cy1iYWRnZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7QUFRL0MsTUFBTSxPQUFPLHdCQUF3QjtJQU1qQyxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLElBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFNRCxZQUVXLGNBQXdDO1FBQXhDLG1CQUFjLEdBQWQsY0FBYyxDQUEwQjtRQXBCMUMsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFFbkMscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBY3JCLG9CQUFlLEdBQXlCLFNBQVMsQ0FBQztJQUsvQyxDQUFDO0lBRUksbUJBQW1CLENBQUMsSUFBVTtRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztJQUNMLENBQUM7OEdBL0JRLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG9NQ1ZyQyxva0NBdUNBOzsyRkQ3QmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNJLHNCQUFzQjs7MEJBd0IzQixRQUFRO3lDQWJULElBQUk7c0JBRFAsS0FBSztnQkFXTixlQUFlO3NCQUZkLFdBQVc7dUJBQUMsc0JBQXNCOztzQkFDbEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJ25neC1lZHUtc2hhcmluZy1hcGknO1xuaW1wb3J0IHsgQ2xpY2tTb3VyY2UgfSBmcm9tICcuLi9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IE5vZGVFbnRyaWVzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25vZGUtZW50cmllcy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1ub2RlLXN0YXRzLWJhZGdlcycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL25vZGUtc3RhdHMtYmFkZ2VzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ub2RlLXN0YXRzLWJhZGdlcy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlU3RhdHNCYWRnZXNDb21wb25lbnQge1xuICAgIHJlYWRvbmx5IENsaWNrU291cmNlID0gQ2xpY2tTb3VyY2U7XG5cbiAgICBjaGlsZE9iamVjdENvdW50ID0gMDtcblxuICAgIHByaXZhdGUgX25vZGU6IE5vZGU7XG4gICAgQElucHV0KClcbiAgICBnZXQgbm9kZSgpOiBOb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vZGU7XG4gICAgfVxuICAgIHNldCBub2RlKG5vZGU6IE5vZGUpIHtcbiAgICAgICAgdGhpcy5fbm9kZSA9IG5vZGU7XG4gICAgICAgIHRoaXMuY2hpbGRPYmplY3RDb3VudCA9IHRoaXMuZ2V0Q2hpbGRPYmplY3RDb3VudChub2RlKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYmFja2dyb3VuZFN0eWxlJylcbiAgICBASW5wdXQoKVxuICAgIGJhY2tncm91bmRTdHlsZTogJ2RhcmtlbicgfCAnbGlnaHRlbicgPSAnbGlnaHRlbic7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgcHVibGljIGVudHJpZXNTZXJ2aWNlOiBOb2RlRW50cmllc1NlcnZpY2U8Tm9kZT4sXG4gICAgKSB7fVxuXG4gICAgcHJpdmF0ZSBnZXRDaGlsZE9iamVjdENvdW50KG5vZGU6IE5vZGUpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IG5vZGUucHJvcGVydGllcz8uWyd2aXJ0dWFsOmNoaWxkb2JqZWN0Y291bnQnXT8uWzBdO1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXJzZUludCh2YWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjwhLS1cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIm5vZGUuYXNwZWN0cz8uaW5jbHVkZXMoJ2NjbTpwdWJsaXNoZWQnKVwiXG4gICAgICBjbGFzcz1cImNhcmQtdG9wLWJhci1wdWJsaXNoZWQtY29weVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cIm5vZGUtcHVibGlzaGVkLWNvcHlcIj5cbiAgICAgICAgPGlcbiAgICAgICAgICBlc0ljb249XCJjb250ZW50X2NvcHlcIlxuICAgICAgICAgIFttYXRUb29sdGlwXT1cIidQVUJMSVNIRURfQ09QWV9UT09MVElQJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID48L2k+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICAtLT5cbjxkaXYgY2xhc3M9XCJjYXJkLXRvcC1iYXItY29tbWVudHNcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwibm9kZS1jb21tZW50c1wiXG4gICAgKm5nSWY9XCJub2RlLnR5cGUgPT09ICdjY206aW8nXCJcbiAgICAoY2xpY2spPVwiXG4gICAgICBlbnRyaWVzU2VydmljZT8ub25DbGlja2VkKHtcbiAgICAgICAgZXZlbnQ6ICRldmVudCxcbiAgICAgICAgZWxlbWVudDogbm9kZSxcbiAgICAgICAgc291cmNlOiBDbGlja1NvdXJjZS5Db21tZW50c1xuICAgICAgfSlcbiAgICBcIlxuICAgIFttYXRUb29sdGlwXT1cIignQ09NTUVOVFNfTVVMVElQTEUnIHwgdHJhbnNsYXRlKSArICc6ICcgKyBub2RlLmNvbW1lbnRDb3VudFwiXG4gID5cbiAgICA8aSBlc0ljb249XCJjb21tZW50XCI+PC9pPlxuICAgIDxzcGFuPnt7IG5vZGUuY29tbWVudENvdW50IH19PC9zcGFuPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImNhcmQtdG9wLWJhci1jaGlsZG9iamVjdHNcIiAqbmdJZj1cImNoaWxkT2JqZWN0Q291bnQgPiAwXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNoaWxkb2JqZWN0LWNvdW50XCJcbiAgICBtYXRUb29sdGlwPVwie3sgJ0NISUxET0JKRUNUX0NPVU5UJyB8IHRyYW5zbGF0ZSA6IHsgY291bnQ6IGNoaWxkT2JqZWN0Q291bnQgKyAxIH0gfX1cIlxuICA+XG4gICAgPHNwYW4+e3sgY2hpbGRPYmplY3RDb3VudCArIDEgfX08L3NwYW5cbiAgICA+PGkgZXNJY29uPVwiZmlsdGVyX25vbmVcIj48L2k+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -24,13 +24,13 @@ export class NodeTypeBadgeComponent {
|
|
|
24
24
|
getCustomTemplate() {
|
|
25
25
|
return this.nodeEntriesGlobalService.getCustomFieldTemplate({ type: 'NODE', name: CustomFieldSpecialType.type }, this.node);
|
|
26
26
|
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeTypeBadgeComponent, deps: [{ token: i1.NodeHelperService }, { token: i2.NodeEntriesGlobalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: NodeTypeBadgeComponent, selector: "es-node-type-badge", inputs: { node: "node" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"isCollection\">\n <i\n [matTooltip]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [altText]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [esIcon]=\"nodeHelper.getCollectionScopeInfo($any(node)).icon\"\n ></i>\n</ng-container>\n<ng-container *ngIf=\"!isCollection\">\n <ng-container *ngIf=\"getCustomTemplate() as ref\">\n <ng-container *ngTemplateOutlet=\"ref; context: { node: this.node }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!getCustomTemplate()\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:50%;background-color:#fff;padding:5px;position:relative;z-index:1;box-shadow:0 0 5px #0000004d}:host i{font-size:18px;color:#333}:host img{width:18px;height:18px}\n"], dependencies: [{ 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: i4.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.NodeIconPipe, name: "esNodeIcon" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: NodeTypeBadgeComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: 'es-node-type-badge', template: "<ng-container *ngIf=\"isCollection\">\n <i\n [matTooltip]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [altText]=\"\n 'COLLECTION.SCOPE.' + nodeHelper.getCollectionScopeInfo($any(node)).scopeName | translate\n \"\n [esIcon]=\"nodeHelper.getCollectionScopeInfo($any(node)).icon\"\n ></i>\n</ng-container>\n<ng-container *ngIf=\"!isCollection\">\n <ng-container *ngIf=\"getCustomTemplate() as ref\">\n <ng-container *ngTemplateOutlet=\"ref; context: { node: this.node }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!getCustomTemplate()\">\n <img\n [src]=\"node | esNodeIcon | async\"\n [alt]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n [matTooltip]=\"\n node.mediatype\n ? ('NODE.mediatype' | translate) + ': ' + ('MEDIATYPE.' + node.mediatype | translate)\n : ''\n \"\n />\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-radius:50%;background-color:#fff;padding:5px;position:relative;z-index:1;box-shadow:0 0 5px #0000004d}:host i{font-size:18px;color:#333}:host img{width:18px;height:18px}\n"] }]
|
|
33
|
-
}], ctorParameters:
|
|
33
|
+
}], ctorParameters: () => [{ type: i1.NodeHelperService }, { type: i2.NodeEntriesGlobalService }], propDecorators: { node: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvbm9kZS1lbnRyaWVzL25vZGUtdHlwZS1iYWRnZS9ub2RlLXR5cGUtYmFkZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9ub2RlLWVudHJpZXMvbm9kZS10eXBlLWJhZGdlL25vZGUtdHlwZS1iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUU1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQTRCLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7OztBQUdsRzs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHNCQUFzQjtJQUsvQixZQUNXLFVBQTZCLEVBQzVCLHdCQUFrRDtRQURuRCxlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM1Qiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO0lBQzNELENBQUM7SUFFSixXQUFXO1FBQ1AsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsc0JBQXNCLENBQ3ZELEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsc0JBQXNCLENBQUMsSUFBSSxFQUFFLEVBQ25ELElBQUksQ0FBQyxJQUFJLENBQ1osQ0FBQztJQUNOLENBQUM7OEdBbkJRLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlHQ2ZuQyxtakNBK0JBOzsyRkRoQmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNJLG9CQUFvQjs2SEFLckIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyBDdXN0b21GaWVsZFNwZWNpYWxUeXBlLCBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi9ub2RlLWVudHJpZXMtZ2xvYmFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm9kZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub2RlLWhlbHBlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIHNtYWxsIGNpcmN1bGFyIGJhZGdlIHRoYXQgZGVwaWN0cyB0aGUgbm9kZSdzIHR5cGUuXG4gKlxuICogVG8gYmUgdXNlZCBpbiB0aGUgdG9wIGJhciBvZiBhIGNhcmQgb3Igc2ltaWxhciBwbGFjZXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXMtbm9kZS10eXBlLWJhZGdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbm9kZS10eXBlLWJhZGdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ub2RlLXR5cGUtYmFkZ2UuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTm9kZVR5cGVCYWRnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgbm9kZTogTm9kZTtcblxuICAgIGlzQ29sbGVjdGlvbjogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbm9kZUhlbHBlcjogTm9kZUhlbHBlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlOiBOb2RlRW50cmllc0dsb2JhbFNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNDb2xsZWN0aW9uID0gdGhpcy5ub2RlSGVscGVyLmlzTm9kZUNvbGxlY3Rpb24odGhpcy5ub2RlKTtcbiAgICB9XG5cbiAgICBnZXRDdXN0b21UZW1wbGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubm9kZUVudHJpZXNHbG9iYWxTZXJ2aWNlLmdldEN1c3RvbUZpZWxkVGVtcGxhdGUoXG4gICAgICAgICAgICB7IHR5cGU6ICdOT0RFJywgbmFtZTogQ3VzdG9tRmllbGRTcGVjaWFsVHlwZS50eXBlIH0sXG4gICAgICAgICAgICB0aGlzLm5vZGUsXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQ29sbGVjdGlvblwiPlxuICA8aVxuICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgJ0NPTExFQ1RJT04uU0NPUEUuJyArIG5vZGVIZWxwZXIuZ2V0Q29sbGVjdGlvblNjb3BlSW5mbygkYW55KG5vZGUpKS5zY29wZU5hbWUgfCB0cmFuc2xhdGVcbiAgICBcIlxuICAgIFthbHRUZXh0XT1cIlxuICAgICAgJ0NPTExFQ1RJT04uU0NPUEUuJyArIG5vZGVIZWxwZXIuZ2V0Q29sbGVjdGlvblNjb3BlSW5mbygkYW55KG5vZGUpKS5zY29wZU5hbWUgfCB0cmFuc2xhdGVcbiAgICBcIlxuICAgIFtlc0ljb25dPVwibm9kZUhlbHBlci5nZXRDb2xsZWN0aW9uU2NvcGVJbmZvKCRhbnkobm9kZSkpLmljb25cIlxuICA+PC9pPlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ29sbGVjdGlvblwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ2V0Q3VzdG9tVGVtcGxhdGUoKSBhcyByZWZcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVmOyBjb250ZXh0OiB7IG5vZGU6IHRoaXMubm9kZSB9XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWdldEN1c3RvbVRlbXBsYXRlKClcIj5cbiAgICA8aW1nXG4gICAgICBbc3JjXT1cIm5vZGUgfCBlc05vZGVJY29uIHwgYXN5bmNcIlxuICAgICAgW2FsdF09XCJcbiAgICAgICAgbm9kZS5tZWRpYXR5cGVcbiAgICAgICAgICA/ICgnTk9ERS5tZWRpYXR5cGUnIHwgdHJhbnNsYXRlKSArICc6ICcgKyAoJ01FRElBVFlQRS4nICsgbm9kZS5tZWRpYXR5cGUgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgOiAnJ1xuICAgICAgXCJcbiAgICAgIFttYXRUb29sdGlwXT1cIlxuICAgICAgICBub2RlLm1lZGlhdHlwZVxuICAgICAgICAgID8gKCdOT0RFLm1lZGlhdHlwZScgfCB0cmFuc2xhdGUpICsgJzogJyArICgnTUVESUFUWVBFLicgKyBub2RlLm1lZGlhdHlwZSB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6ICcnXG4gICAgICBcIlxuICAgIC8+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|