@energycap/components 0.41.1-ECAP-27592-angular-17.20241220-1140 → 0.41.1-ECAP-27592-angular-17.20241223-1643
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/esm2022/lib/components.module.mjs +4 -4
- package/esm2022/lib/controls/banner/banner.component.mjs +5 -5
- package/esm2022/lib/controls/button/button.component.mjs +5 -5
- package/esm2022/lib/controls/button/copy-button-base.directive.mjs +5 -5
- package/esm2022/lib/controls/button/copy-button.directive.mjs +6 -6
- package/esm2022/lib/controls/button/copy-table-button.directive.mjs +6 -6
- package/esm2022/lib/controls/calendar/calendar-item.component.mjs +5 -5
- package/esm2022/lib/controls/calendar/calendar.component.mjs +5 -5
- package/esm2022/lib/controls/checkbox/checkbox.component.mjs +5 -5
- package/esm2022/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +3 -3
- package/esm2022/lib/controls/combobox/combobox.component.mjs +5 -5
- package/esm2022/lib/controls/date-input/date-input.component.mjs +5 -5
- package/esm2022/lib/controls/dropdown/dropdown.component.mjs +5 -5
- package/esm2022/lib/controls/file-upload/file-upload.component.mjs +5 -5
- package/esm2022/lib/controls/form-control/form-control.component.mjs +6 -6
- package/esm2022/lib/controls/form-control-base.mjs +5 -5
- package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +5 -5
- package/esm2022/lib/controls/form-group/form-group.component.mjs +5 -5
- package/esm2022/lib/controls/help-popover/help-popover.component.mjs +5 -5
- package/esm2022/lib/controls/item-picker/item-picker.component.mjs +5 -5
- package/esm2022/lib/controls/link-button/link-button.component.mjs +3 -3
- package/esm2022/lib/controls/menu/menu.component.mjs +5 -5
- package/esm2022/lib/controls/navigation/nav-group.mjs +1 -1
- package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +5 -5
- package/esm2022/lib/controls/numericbox/numericbox.component.mjs +5 -5
- package/esm2022/lib/controls/popover/popover.component.mjs +5 -5
- package/esm2022/lib/controls/radio-button/radio-button.component.mjs +5 -5
- package/esm2022/lib/controls/select/select.component.mjs +6 -6
- package/esm2022/lib/controls/tabs/tabs.component.mjs +5 -5
- package/esm2022/lib/controls/textbox/textbox.component.mjs +5 -5
- package/esm2022/lib/core/cache.service.mjs +5 -5
- package/esm2022/lib/core/date-time-helper.mjs +1 -1
- package/esm2022/lib/core/error.service.mjs +5 -5
- package/esm2022/lib/core/router-helper.service.mjs +4 -4
- package/esm2022/lib/core/scroll.service.mjs +5 -5
- package/esm2022/lib/core/telemetry-tracker.service.mjs +3 -3
- package/esm2022/lib/core/telemetry.service.mjs +4 -4
- package/esm2022/lib/core/validation-message.service.mjs +5 -5
- package/esm2022/lib/core/window.service.mjs +5 -5
- package/esm2022/lib/display/app-bar/app-bar.component.mjs +5 -5
- package/esm2022/lib/display/avatar/avatar.component.mjs +5 -5
- package/esm2022/lib/display/avatar/avatar.service.mjs +4 -4
- package/esm2022/lib/display/confirm/confirm.component.mjs +5 -5
- package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +5 -5
- package/esm2022/lib/display/dialog/dialog.component.mjs +6 -6
- package/esm2022/lib/display/dialog/dialog.service.mjs +3 -3
- package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +5 -5
- package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +5 -5
- package/esm2022/lib/display/item-display/item-display.component.mjs +4 -4
- package/esm2022/lib/display/json-display/json-display.component.mjs +5 -5
- package/esm2022/lib/display/resizable/resizable-base.mjs +6 -6
- package/esm2022/lib/display/resizable/resizable.component.mjs +5 -5
- package/esm2022/lib/display/spinner/spinner.component.mjs +3 -3
- package/esm2022/lib/display/splash/splash.component.mjs +5 -5
- package/esm2022/lib/display/splash/splash.service.mjs +4 -4
- package/esm2022/lib/display/table/resizable-column.component.mjs +5 -5
- package/esm2022/lib/display/table/resizable-table.directive.mjs +6 -6
- package/esm2022/lib/display/table/searchable-table.component.mjs +5 -5
- package/esm2022/lib/display/table/table-detail-row.component.mjs +3 -3
- package/esm2022/lib/display/table/table-locked-column.component.mjs +5 -5
- package/esm2022/lib/display/table/table-master-header-row.component.mjs +3 -3
- package/esm2022/lib/display/table/table-master-row.component.mjs +5 -5
- package/esm2022/lib/display/table/table-pagination.component.mjs +5 -5
- package/esm2022/lib/display/table/table-selectable-row.component.mjs +4 -4
- package/esm2022/lib/display/table/table.component.mjs +5 -5
- package/esm2022/lib/display/tags/tag.mjs +1 -1
- package/esm2022/lib/display/tags/tags.component.mjs +5 -5
- package/esm2022/lib/display/toast/toast/toast.component.mjs +5 -5
- package/esm2022/lib/display/toast/toast.service.mjs +4 -4
- package/esm2022/lib/display/toast/toaster/toaster.component.mjs +5 -5
- package/esm2022/lib/display/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/lib/display/tooltip/tooltip.service.mjs +5 -5
- package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +5 -5
- package/esm2022/lib/display/tour/tour.component.mjs +6 -6
- package/esm2022/lib/display/tour/tour.service.mjs +5 -5
- package/esm2022/lib/display/tree/tree.component.mjs +5 -5
- package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +4 -4
- package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +5 -5
- package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +5 -5
- package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +6 -6
- package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +5 -5
- package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +4 -4
- package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +5 -5
- package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +5 -5
- package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +5 -5
- package/esm2022/lib/shared/form-group.helper.mjs +4 -4
- package/esm2022/lib/shared/json-helper.mjs +1 -1
- package/esm2022/lib/shared/lodash-helper.mjs +1 -1
- package/esm2022/lib/shared/page/page-base/page-base.component.mjs +5 -5
- package/esm2022/lib/shared/page/page-title/page-title.component.mjs +3 -3
- package/esm2022/lib/shared/page/page-view/page-view.component.mjs +5 -5
- package/esm2022/lib/shared/testing/public-mocks.spec.mjs +9 -9
- package/esm2022/lib/shared/user-preference.service.mjs +3 -3
- package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +5 -5
- package/esm2022/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +5 -5
- package/esm2022/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +5 -5
- package/fesm2022/energycap-components.mjs +362 -362
- package/fesm2022/energycap-components.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/rxjs-7-upgrade/index.js.map +1 -1
- package/schematics/utilities/workspace.js.map +1 -1
@@ -126,13 +126,13 @@ export class TableMasterRowComponent {
|
|
126
126
|
});
|
127
127
|
}
|
128
128
|
}
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
130
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
129
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableMasterRowComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
130
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TableMasterRowComponent, selector: "[ecTableMasterRow]", inputs: { id: "id", hasDetails: "hasDetails", showDetails: "showDetails", detailTemplate: "detailTemplate", detailContext: "detailContext", detailRowColSpan: "detailRowColSpan", detailRowClass: "detailRowClass", detailRowContentClass: "detailRowContentClass", detailRowMaxHeight: "detailRowMaxHeight", collapsibleToggleCellClass: "collapsibleToggleCellClass", hideTableMaster: "hideTableMaster" }, outputs: { showDetailsChanged: "showDetailsChanged" }, viewQueries: [{ propertyName: "detailRowTemplate", first: true, predicate: ["detailRow"], descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<td *ngIf=\"!hideTableMaster\" class=\"{{collapsibleToggleCellClass}}\">\r\n <ec-collapsible-toggle *ngIf=\"hasDetails\"\r\n id=\"{{id}}_toggle\"\r\n [expanded]=\"showDetails\"\r\n (expandedChange)=\"toggleDetails($event)\"></ec-collapsible-toggle>\r\n</td>\r\n<ng-content></ng-content>\r\n\r\n<ng-template #detailRow>\r\n <tr ecTableDetailRow class=\"{{detailRowClass}}\" [contentClass]=\"detailRowContentClass\" [contentColSpan]=\"detailRowColSpan\" [maxHeight]=\"detailRowMaxHeight\">\r\n <ng-container *ngTemplateOutlet=\"detailTemplate; context: {$implicit: detailContext}\"></ng-container>\r\n </tr>\r\n</ng-template>", styles: ["td{width:1.5rem;padding:.25rem 0!important;vertical-align:top}td ::ng-deep+td{padding-left:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.CollapsibleToggleComponent, selector: "ec-collapsible-toggle", inputs: ["id", "expanded", "tabindex"], outputs: ["expandedChange"] }, { kind: "component", type: i3.TableDetailRowComponent, selector: "[ecTableDetailRow]", inputs: ["contentClass", "contentColSpan", "maxHeight"] }] }); }
|
131
131
|
}
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableMasterRowComponent, decorators: [{
|
133
133
|
type: Component,
|
134
134
|
args: [{ selector: '[ecTableMasterRow]', template: "<td *ngIf=\"!hideTableMaster\" class=\"{{collapsibleToggleCellClass}}\">\r\n <ec-collapsible-toggle *ngIf=\"hasDetails\"\r\n id=\"{{id}}_toggle\"\r\n [expanded]=\"showDetails\"\r\n (expandedChange)=\"toggleDetails($event)\"></ec-collapsible-toggle>\r\n</td>\r\n<ng-content></ng-content>\r\n\r\n<ng-template #detailRow>\r\n <tr ecTableDetailRow class=\"{{detailRowClass}}\" [contentClass]=\"detailRowContentClass\" [contentColSpan]=\"detailRowColSpan\" [maxHeight]=\"detailRowMaxHeight\">\r\n <ng-container *ngTemplateOutlet=\"detailTemplate; context: {$implicit: detailContext}\"></ng-container>\r\n </tr>\r\n</ng-template>", styles: ["td{width:1.5rem;padding:.25rem 0!important;vertical-align:top}td ::ng-deep+td{padding-left:0}\n"] }]
|
135
|
-
}], ctorParameters:
|
135
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ApplicationRef }], propDecorators: { id: [{
|
136
136
|
type: Input
|
137
137
|
}], hasDetails: [{
|
138
138
|
type: Input
|
@@ -160,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
160
160
|
type: ViewChild,
|
161
161
|
args: ['detailRow', { read: TemplateRef, static: true }]
|
162
162
|
}] } });
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbWFzdGVyLXJvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS90YWJsZS90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLW1hc3Rlci1yb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUF1RyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFPcE0sTUFBTSxPQUFPLHVCQUF1QjtJQXlGbEMsWUFBb0IsUUFBbUIsRUFBVSxFQUFjLEVBQVUsTUFBc0I7UUFBM0UsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQTlFL0Y7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQWtEN0I7O1dBRUc7UUFDTyx1QkFBa0IsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQXNCMEIsQ0FBQztJQUVwRyxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixPQUFPLENBQUMsS0FBSyxDQUFDLDhKQUE4SixDQUFDLENBQUM7U0FDL0s7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBRXpCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsVUFB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QUFDO1lBQzFCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ssaUJBQWlCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3BDLElBQUk7b0JBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDL0M7Z0JBQUMsT0FBTSxHQUFHLEVBQUU7b0JBQ1gsMkVBQTJFO2lCQUM1RTtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOytHQW5OVSx1QkFBdUI7bUdBQXZCLHVCQUF1QiwwbEJBd0VILFdBQVcsZ0VDL0U1Qyxpc0JBWWM7OzRGRExELHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxvQkFBb0I7c0pBUWQsRUFBRTtzQkFBakIsS0FBSztnQkFLRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFjRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBS0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUtJLGVBQWU7c0JBQXZCLEtBQUs7Z0JBS0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUtvRCxpQkFBaUI7c0JBQTNFLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgRW1iZWRkZWRWaWV3UmVmLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBBcHBsaWNhdGlvblJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdbZWNUYWJsZU1hc3RlclJvd10nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlTWFzdGVyUm93Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgLyoqXHJcbiAgICogSWRlbnRpZmllciB0byBwYXNzIHRvIHRoZSBjb2xsYXBzaWJsZSB0b2dnbGVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaWQ/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhlIHRhYmxlIHJvdyBoYXMgZGV0YWlscyBhbmQgc2hvd3MgdGhlIGNvbGxhcHNpYmxlIHRvZ2dsZSBpZiBpdCBkb2VzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGhhc0RldGFpbHM/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQcm9ncmFtbWF0aWNhbGx5IHRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZGV0YWlsIHJvdy4gRGVmYXVsdCBpcyBmYWxzZS5cclxuICAgKi9cclxuICBASW5wdXQoKSBzaG93RGV0YWlscyA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBUZW1wbGF0ZSBmb3IgdGhlIGRldGFpbCByb3cgY29udGVudC4gR2VuZXJhdGVzIGFuIFtFbWJlZGRlZFZpZXdSZWZdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvY29yZS9FbWJlZGRlZFZpZXdSZWYpXHJcbiAgICogd2l0aCB0aGUgJ2RldGFpbENvbnRleHQnLiBSZXF1aXJlZCBpZiBoYXNEZXRhaWxzIGlzIHRydWUuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCBjb250ZXh0IGJvdW5kIHRvIHRoZSAnZGV0YWlsVGVtcGxhdGUnLiBBdmFpbGFibGUgaW4gdGhlIHRlbXBsYXRlIGFzIHRoZSBkZWZhdWx0IGxvY2FsIHRlbXBsYXRlIGBsZXRgIGRlY2xhcmF0aW9uLlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICogYGBgaHRtbFxyXG4gICAqIDx0ciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiIGVjVGFibGVNYXN0ZXJSb3cgW2RldGFpbFRlbXBsYXRlXT1cIm15RGV0YWlsVGVtcGxhdGVcIiBbZGV0YWlsQ29udGV4dF09XCJpdGVtXCI+XHJcbiAgICogIC4uLlxyXG4gICAqIDwvdHI+XHJcbiAgICpcclxuICAgKiA8bmctdGVtcGxhdGUgI215RGV0YWlsVGVtcGxhdGUgbGV0LWl0ZW0+XHJcbiAgICogIDxwPnt7aXRlbS5jb21tZW50fX08L3A+XHJcbiAgICogPC9uZy10ZW1wbGF0ZT5cclxuICAgKi9cclxuICBASW5wdXQoKSBkZXRhaWxDb250ZXh0PzogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4geW91ciB0YWJsZSBtaW51cyB0aGUgY29sdW1uIHRoYXQgaXMgYXV0b21hdGljYWxseSBhZGRlZCBieSB0aGVcclxuICAgKiBUYWJsZU1hc3RlclJvd0NvbXBvbmVudC4gUmVxdWlyZWQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q29sU3BhbiE6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogU3BhY2UgZGVsaW1pdGVkIHN0cmluZyBhZGRlZCB0byB0aGUgY2xhc3MgYXR0cmlidXRlIG9mIGRldGFpbCByb3cgVFIuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q2xhc3M/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwYWNlIGRlbGltaXRlZCBzdHJpbmcgYWRkZWQgdG8gdGhlIGNsYXNzIGF0dHJpYnV0ZSBvZiB0aGUgVEQgdGhhdCBjb250YWlucyB0aGUgZGV0YWlsIHJvdyBjb250ZW50XHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q29udGVudENsYXNzPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBkZXRhaWxSb3dNYXhIZWlnaHQ/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBTcGFjZSBkZWxpbWl0ZWQgc3RyaW5nIGFkZGVkIHRvIHRoZSBjbGFzcyBhdHRyaWJ1dGUgb2YgdGhlIFREIHRoYXQgY29udGFpbnMgdGhlIGNvbGxhcHNpYmxlIHRvZ2dsZVxyXG4gICAqICBlbGVtZW50LlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbGxhcHNpYmxlVG9nZ2xlQ2VsbENsYXNzPzogc3RyaW5nO1xyXG5cclxuICAvKiogVXNlZCB0byBoaWRlIHRoZSBjZWxsIGFkZGVkIHRvIHRoZSB0YWJsZS4gVXNlZnVsIGlmIGEgdGFibGUgaXMgc2hhcmVkIGJldHdlZW4gdmlld3MgYW5kIG5vdCBhbGxcclxuICAgKiAgc3VwcG9ydCB0aGUgdGFibGUgbWFzdGVyIHNjZW5hcmlvXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIGhpZGVUYWJsZU1hc3Rlcj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHZhbHVlIG9mIGBzaG93RGV0YWlsc2AgY2hhbmdlcy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc2hvd0RldGFpbHNDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB0ZW1wbGF0ZSBmb3IgdGhlIGRldGFpbCByb3csIGluc2VydGVkIGluIHRoZSBET00gYWZ0ZXIgdGhlIG1hc3RlciByb3cuXHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZCgnZGV0YWlsUm93Jywge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWV9KSBkZXRhaWxSb3dUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB2aWV3IGNyZWF0ZWQgZnJvbSB0aGUgYGRldGFpbFJvd2AgdGVtcGxhdGUuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBkZXRhaWxWaWV3PzogRW1iZWRkZWRWaWV3UmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYXJlbnQgbm9kZSBvZiB0aGUgaG9zdCBlbGVtZW50LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgcGFyZW50Tm9kZTogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc2libGluZyBub2RlIG9mIHRoZSBob3N0IGVsZW1lbnQuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzaWJsaW5nTm9kZTogYW55O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZikgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRldGFpbFJvd0NvbFNwYW4pIHtcclxuICAgICAgY29uc29sZS5lcnJvcihgQSB2YWx1ZSBmb3IgW2RldGFpbFJvd0NvbFNwYW5dIGlzIHJlcXVpcmVkIHRvIHJlbmRlciBhIGRldGFpbCByb3cgY29ycmVjdGx5LiBUaGlzIHNob3VsZCBiZSB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgVERzIHBsYWNlZCBpbnNpZGUgYW4gdHJbZWNUYWJsZU1hc3RlclJvd10uYCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wYXJlbnROb2RlID0gdGhpcy5yZW5kZXJlci5wYXJlbnROb2RlKHRoaXMuZWwubmF0aXZlRWxlbWVudCk7XHJcbiAgICB0aGlzLnVwZGF0ZURldGFpbFJvdygpO1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzLmhhc0RldGFpbHMgJiYgIWNoYW5nZXMuaGFzRGV0YWlscy5maXJzdENoYW5nZSAmJiBjaGFuZ2VzLmhhc0RldGFpbHMuY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy51cGRhdGVEZXRhaWxSb3coKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5zaG93RGV0YWlscyAmJiAhY2hhbmdlcy5zaG93RGV0YWlscy5maXJzdENoYW5nZSAmJiBjaGFuZ2VzLnNob3dEZXRhaWxzLmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmlzaWJpbGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbW92ZURldGFpbFZpZXcoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gdGhlIG1hc3RlciByb3cgaGFzIGRldGFpbHMsIGNyZWF0ZSB0aGUgZGV0YWlsIHJvdyBhbmQgdXBkYXRlIGl0J3MgdmlzaWJpbGl0eS4gSWYgdGhlIG1hc3RlclxyXG4gICAqIGhhcyBubyBkZXRhaWxzLCByZW1vdmUgdGhlIGRldGFpbCByb3dcclxuICAgKi9cclxuICB1cGRhdGVEZXRhaWxSb3coKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5oYXNEZXRhaWxzKSB7XHJcbiAgICAgIGlmICghdGhpcy5kZXRhaWxUZW1wbGF0ZSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYEEgdmFsdWUgZm9yIHRoZSBbZGV0YWlsVGVtcGxhdGVdIGlucHV0IGlzIHJlcXVpcmVkIHdoZW4gJ2hhc0RldGFpbHMnIGlzIHRydWUuYCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBGaXJzdCBjaGVjayB0byBzZWUgaWYgdGhlIGRldGFpbFZpZXcgaXMgYWxyZWFkeSBwcmVzZW50IGFuZCBpZiBzbywgcmVtb3ZlIGl0IHNvIHdlIGRvbid0IGdldCBhIFxyXG4gICAgICAvLyBkdXBsaWNhdGUgZGV0YWlsIHZpZXdcclxuICAgICAgaWYgKHRoaXMuZGV0YWlsVmlldyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVEZXRhaWxWaWV3KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldyA9IHRoaXMuZGV0YWlsUm93VGVtcGxhdGUuY3JlYXRlRW1iZWRkZWRWaWV3KHt9KTtcclxuXHJcbiAgICAgIC8vc29sdXRpb24gdG8gYWxsb3dpbmcgY2hhbmdlIGRldGVjdGlvbiBpbiBlbWJlZGRlZCB2aWV3IGFkYXB0ZWQgZnJvbSBoZXJlOlxyXG4gICAgICAvL2h0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzQyOTc3XHJcbiAgICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5kZXRhaWxWaWV3KTtcclxuICAgICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbW92ZURldGFpbFZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3cvaGlkZSB0aGUgZGV0YWlsIHJvd1xyXG4gICAqL1xyXG4gIHRvZ2dsZURldGFpbHMoc2hvdzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93RGV0YWlscyA9IHNob3c7XHJcbiAgICB0aGlzLnNob3dEZXRhaWxzQ2hhbmdlZC5lbWl0KHNob3cpO1xyXG4gICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZpc2liaWxpdHkoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zaG93RGV0YWlscykge1xyXG4gICAgICB0aGlzLnNob3coKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQXR0YWNoIHRoZSBkZXRhaWxWaWV3IHRoZSBjaGFuZ2UgZGV0ZWN0aW9uIHRyZWUgYW5kIGluc2VydCB0aGUgZ2VuZXJhdGVkIGh0bWxcclxuICAgKiBvZiB0aGUgZGV0YWlsIHJvdyB0byBET00gYWZ0ZXIgdGhlIGhvc3QgZWxlbWVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2hvdygpIHtcclxuICAgIGlmICh0aGlzLmRldGFpbFZpZXcpIHtcclxuICAgICAgLy9UaGUgbmV4dFNpYmxpbmcgbWF5IGhhdmUgY2hhbmdlZCwgc28gdXBkYXRlIGl0LiAoVGhpcyBjb3VsZCBoYXBwZW4gaWYgdGhlIHRhYmxlIGlzIGVtYmVkZGVkIGluIGEgc2VhcmNoYWJsZSB0YWJsZVxyXG4gICAgICAvLyAgYW5kIGEgc2VhcmNoIGlzIHBlcmZvcm1lZClcclxuICAgICAgdGhpcy5zaWJsaW5nTm9kZSA9IHRoaXMucmVuZGVyZXIubmV4dFNpYmxpbmcodGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcclxuICAgICAgdGhpcy5kZXRhaWxWaWV3LnJlYXR0YWNoKCk7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5yb290Tm9kZXMuZm9yRWFjaChub2RlID0+IHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZSh0aGlzLnBhcmVudE5vZGUsIG5vZGUsIHRoaXMuc2libGluZ05vZGUpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERldGFjaCB0aGUgZGV0YWlsVmlldyBmcm9tIHRoZSBjaGFuZ2UgZGV0ZWN0aW9uIHRyZWUgYW5kIHJlbW92ZSB0aGUgZ2VuZXJhdGVkXHJcbiAgICogaHRtbCBvZiB0aGUgZGV0YWlsIHJvdyBmcm9tIHRoZSBET01cclxuICAgKi9cclxuICBwcml2YXRlIGhpZGUoKSB7XHJcbiAgICBpZiAodGhpcy5kZXRhaWxWaWV3KSB7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXRhY2goKTtcclxuICAgICAgdGhpcy5yZW1vdmVEZXRhaWxOb2RlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJveSB0aGUgZGV0YWlsVmlldyBhbmQgcmVtb3ZlIHRoZSBnZW5lcmF0ZWQgaHRtbCBvZiB0aGUgZGV0YWlsIHJvdyBmcm9tIHRoZSBET01cclxuICAgKi9cclxuICBwcml2YXRlIHJlbW92ZURldGFpbFZpZXcoKSB7XHJcbiAgICBpZiAodGhpcy5kZXRhaWxWaWV3KSB7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMucmVtb3ZlRGV0YWlsTm9kZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZSB0aGUgZ2VuZXJhdGVkIGh0bWwgb2YgdGhlIGRldGFpbCByb3cgZnJvbSB0aGUgRE9NXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVEZXRhaWxOb2RlcygpIHtcclxuICAgIGlmICh0aGlzLmRldGFpbFZpZXcpIHtcclxuICAgICAgdGhpcy5kZXRhaWxWaWV3LnJvb3ROb2Rlcy5mb3JFYWNoKG4gPT4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMucGFyZW50Tm9kZSwgbik7XHJcbiAgICAgICAgfSBjYXRjaChlcnIpIHtcclxuICAgICAgICAgIC8vIElnbm9yZSBlcnJvcnMgdGhyb3duIGJ5IHJlbW92aW5nIG5vZGVzIHRoYXQgd2VyZSBuZXZlciBhZGRlZCB0byB0aGUgRE9NLlxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8dGQgKm5nSWY9XCIhaGlkZVRhYmxlTWFzdGVyXCIgY2xhc3M9XCJ7e2NvbGxhcHNpYmxlVG9nZ2xlQ2VsbENsYXNzfX1cIj5cclxuICA8ZWMtY29sbGFwc2libGUtdG9nZ2xlICpuZ0lmPVwiaGFzRGV0YWlsc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInt7aWR9fV90b2dnbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2V4cGFuZGVkXT1cInNob3dEZXRhaWxzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChleHBhbmRlZENoYW5nZSk9XCJ0b2dnbGVEZXRhaWxzKCRldmVudClcIj48L2VjLWNvbGxhcHNpYmxlLXRvZ2dsZT5cclxuPC90ZD5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZXRhaWxSb3c+XHJcbiAgPHRyIGVjVGFibGVEZXRhaWxSb3cgY2xhc3M9XCJ7e2RldGFpbFJvd0NsYXNzfX1cIiBbY29udGVudENsYXNzXT1cImRldGFpbFJvd0NvbnRlbnRDbGFzc1wiIFtjb250ZW50Q29sU3Bhbl09XCJkZXRhaWxSb3dDb2xTcGFuXCIgW21heEhlaWdodF09XCJkZXRhaWxSb3dNYXhIZWlnaHRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRldGFpbFRlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkZXRhaWxDb250ZXh0fVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvdHI+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbWFzdGVyLXJvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS90YWJsZS90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLW1hc3Rlci1yb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUF1RyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFPcE0sTUFBTSxPQUFPLHVCQUF1QjtJQXlGbEMsWUFBb0IsUUFBbUIsRUFBVSxFQUFjLEVBQVUsTUFBc0I7UUFBM0UsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQTlFL0Y7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQWtEN0I7O1dBRUc7UUFDTyx1QkFBa0IsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQXNCMEIsQ0FBQztJQUVwRyxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzNCLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEpBQThKLENBQUMsQ0FBQztRQUNoTCxDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUV6QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FB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VyxFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgRW1iZWRkZWRWaWV3UmVmLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBBcHBsaWNhdGlvblJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdbZWNUYWJsZU1hc3RlclJvd10nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1tYXN0ZXItcm93LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlTWFzdGVyUm93Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgLyoqXHJcbiAgICogSWRlbnRpZmllciB0byBwYXNzIHRvIHRoZSBjb2xsYXBzaWJsZSB0b2dnbGVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaWQ/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhlIHRhYmxlIHJvdyBoYXMgZGV0YWlscyBhbmQgc2hvd3MgdGhlIGNvbGxhcHNpYmxlIHRvZ2dsZSBpZiBpdCBkb2VzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGhhc0RldGFpbHM/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQcm9ncmFtbWF0aWNhbGx5IHRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZGV0YWlsIHJvdy4gRGVmYXVsdCBpcyBmYWxzZS5cclxuICAgKi9cclxuICBASW5wdXQoKSBzaG93RGV0YWlscyA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBUZW1wbGF0ZSBmb3IgdGhlIGRldGFpbCByb3cgY29udGVudC4gR2VuZXJhdGVzIGFuIFtFbWJlZGRlZFZpZXdSZWZdKGh0dHBzOi8vYW5ndWxhci5pby9hcGkvY29yZS9FbWJlZGRlZFZpZXdSZWYpXHJcbiAgICogd2l0aCB0aGUgJ2RldGFpbENvbnRleHQnLiBSZXF1aXJlZCBpZiBoYXNEZXRhaWxzIGlzIHRydWUuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCBjb250ZXh0IGJvdW5kIHRvIHRoZSAnZGV0YWlsVGVtcGxhdGUnLiBBdmFpbGFibGUgaW4gdGhlIHRlbXBsYXRlIGFzIHRoZSBkZWZhdWx0IGxvY2FsIHRlbXBsYXRlIGBsZXRgIGRlY2xhcmF0aW9uLlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICogYGBgaHRtbFxyXG4gICAqIDx0ciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiIGVjVGFibGVNYXN0ZXJSb3cgW2RldGFpbFRlbXBsYXRlXT1cIm15RGV0YWlsVGVtcGxhdGVcIiBbZGV0YWlsQ29udGV4dF09XCJpdGVtXCI+XHJcbiAgICogIC4uLlxyXG4gICAqIDwvdHI+XHJcbiAgICpcclxuICAgKiA8bmctdGVtcGxhdGUgI215RGV0YWlsVGVtcGxhdGUgbGV0LWl0ZW0+XHJcbiAgICogIDxwPnt7aXRlbS5jb21tZW50fX08L3A+XHJcbiAgICogPC9uZy10ZW1wbGF0ZT5cclxuICAgKi9cclxuICBASW5wdXQoKSBkZXRhaWxDb250ZXh0PzogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4geW91ciB0YWJsZSBtaW51cyB0aGUgY29sdW1uIHRoYXQgaXMgYXV0b21hdGljYWxseSBhZGRlZCBieSB0aGVcclxuICAgKiBUYWJsZU1hc3RlclJvd0NvbXBvbmVudC4gUmVxdWlyZWQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q29sU3BhbiE6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogU3BhY2UgZGVsaW1pdGVkIHN0cmluZyBhZGRlZCB0byB0aGUgY2xhc3MgYXR0cmlidXRlIG9mIGRldGFpbCByb3cgVFIuXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q2xhc3M/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNwYWNlIGRlbGltaXRlZCBzdHJpbmcgYWRkZWQgdG8gdGhlIGNsYXNzIGF0dHJpYnV0ZSBvZiB0aGUgVEQgdGhhdCBjb250YWlucyB0aGUgZGV0YWlsIHJvdyBjb250ZW50XHJcbiAgICovXHJcbiAgQElucHV0KCkgZGV0YWlsUm93Q29udGVudENsYXNzPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBkZXRhaWxSb3dNYXhIZWlnaHQ/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBTcGFjZSBkZWxpbWl0ZWQgc3RyaW5nIGFkZGVkIHRvIHRoZSBjbGFzcyBhdHRyaWJ1dGUgb2YgdGhlIFREIHRoYXQgY29udGFpbnMgdGhlIGNvbGxhcHNpYmxlIHRvZ2dsZVxyXG4gICAqICBlbGVtZW50LlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNvbGxhcHNpYmxlVG9nZ2xlQ2VsbENsYXNzPzogc3RyaW5nO1xyXG5cclxuICAvKiogVXNlZCB0byBoaWRlIHRoZSBjZWxsIGFkZGVkIHRvIHRoZSB0YWJsZS4gVXNlZnVsIGlmIGEgdGFibGUgaXMgc2hhcmVkIGJldHdlZW4gdmlld3MgYW5kIG5vdCBhbGxcclxuICAgKiAgc3VwcG9ydCB0aGUgdGFibGUgbWFzdGVyIHNjZW5hcmlvXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIGhpZGVUYWJsZU1hc3Rlcj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHZhbHVlIG9mIGBzaG93RGV0YWlsc2AgY2hhbmdlcy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc2hvd0RldGFpbHNDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB0ZW1wbGF0ZSBmb3IgdGhlIGRldGFpbCByb3csIGluc2VydGVkIGluIHRoZSBET00gYWZ0ZXIgdGhlIG1hc3RlciByb3cuXHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZCgnZGV0YWlsUm93Jywge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWV9KSBkZXRhaWxSb3dUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB2aWV3IGNyZWF0ZWQgZnJvbSB0aGUgYGRldGFpbFJvd2AgdGVtcGxhdGUuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBkZXRhaWxWaWV3PzogRW1iZWRkZWRWaWV3UmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYXJlbnQgbm9kZSBvZiB0aGUgaG9zdCBlbGVtZW50LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgcGFyZW50Tm9kZTogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc2libGluZyBub2RlIG9mIHRoZSBob3N0IGVsZW1lbnQuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzaWJsaW5nTm9kZTogYW55O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZikgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRldGFpbFJvd0NvbFNwYW4pIHtcclxuICAgICAgY29uc29sZS5lcnJvcihgQSB2YWx1ZSBmb3IgW2RldGFpbFJvd0NvbFNwYW5dIGlzIHJlcXVpcmVkIHRvIHJlbmRlciBhIGRldGFpbCByb3cgY29ycmVjdGx5LiBUaGlzIHNob3VsZCBiZSB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgVERzIHBsYWNlZCBpbnNpZGUgYW4gdHJbZWNUYWJsZU1hc3RlclJvd10uYCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wYXJlbnROb2RlID0gdGhpcy5yZW5kZXJlci5wYXJlbnROb2RlKHRoaXMuZWwubmF0aXZlRWxlbWVudCk7XHJcbiAgICB0aGlzLnVwZGF0ZURldGFpbFJvdygpO1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzLmhhc0RldGFpbHMgJiYgIWNoYW5nZXMuaGFzRGV0YWlscy5maXJzdENoYW5nZSAmJiBjaGFuZ2VzLmhhc0RldGFpbHMuY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy51cGRhdGVEZXRhaWxSb3coKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5zaG93RGV0YWlscyAmJiAhY2hhbmdlcy5zaG93RGV0YWlscy5maXJzdENoYW5nZSAmJiBjaGFuZ2VzLnNob3dEZXRhaWxzLmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmlzaWJpbGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbW92ZURldGFpbFZpZXcoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gdGhlIG1hc3RlciByb3cgaGFzIGRldGFpbHMsIGNyZWF0ZSB0aGUgZGV0YWlsIHJvdyBhbmQgdXBkYXRlIGl0J3MgdmlzaWJpbGl0eS4gSWYgdGhlIG1hc3RlclxyXG4gICAqIGhhcyBubyBkZXRhaWxzLCByZW1vdmUgdGhlIGRldGFpbCByb3dcclxuICAgKi9cclxuICB1cGRhdGVEZXRhaWxSb3coKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5oYXNEZXRhaWxzKSB7XHJcbiAgICAgIGlmICghdGhpcy5kZXRhaWxUZW1wbGF0ZSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYEEgdmFsdWUgZm9yIHRoZSBbZGV0YWlsVGVtcGxhdGVdIGlucHV0IGlzIHJlcXVpcmVkIHdoZW4gJ2hhc0RldGFpbHMnIGlzIHRydWUuYCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBGaXJzdCBjaGVjayB0byBzZWUgaWYgdGhlIGRldGFpbFZpZXcgaXMgYWxyZWFkeSBwcmVzZW50IGFuZCBpZiBzbywgcmVtb3ZlIGl0IHNvIHdlIGRvbid0IGdldCBhIFxyXG4gICAgICAvLyBkdXBsaWNhdGUgZGV0YWlsIHZpZXdcclxuICAgICAgaWYgKHRoaXMuZGV0YWlsVmlldyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVEZXRhaWxWaWV3KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldyA9IHRoaXMuZGV0YWlsUm93VGVtcGxhdGUuY3JlYXRlRW1iZWRkZWRWaWV3KHt9KTtcclxuXHJcbiAgICAgIC8vc29sdXRpb24gdG8gYWxsb3dpbmcgY2hhbmdlIGRldGVjdGlvbiBpbiBlbWJlZGRlZCB2aWV3IGFkYXB0ZWQgZnJvbSBoZXJlOlxyXG4gICAgICAvL2h0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzQyOTc3XHJcbiAgICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5kZXRhaWxWaWV3KTtcclxuICAgICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbW92ZURldGFpbFZpZXcoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3cvaGlkZSB0aGUgZGV0YWlsIHJvd1xyXG4gICAqL1xyXG4gIHRvZ2dsZURldGFpbHMoc2hvdzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93RGV0YWlscyA9IHNob3c7XHJcbiAgICB0aGlzLnNob3dEZXRhaWxzQ2hhbmdlZC5lbWl0KHNob3cpO1xyXG4gICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZpc2liaWxpdHkoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zaG93RGV0YWlscykge1xyXG4gICAgICB0aGlzLnNob3coKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQXR0YWNoIHRoZSBkZXRhaWxWaWV3IHRoZSBjaGFuZ2UgZGV0ZWN0aW9uIHRyZWUgYW5kIGluc2VydCB0aGUgZ2VuZXJhdGVkIGh0bWxcclxuICAgKiBvZiB0aGUgZGV0YWlsIHJvdyB0byBET00gYWZ0ZXIgdGhlIGhvc3QgZWxlbWVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2hvdygpIHtcclxuICAgIGlmICh0aGlzLmRldGFpbFZpZXcpIHtcclxuICAgICAgLy9UaGUgbmV4dFNpYmxpbmcgbWF5IGhhdmUgY2hhbmdlZCwgc28gdXBkYXRlIGl0LiAoVGhpcyBjb3VsZCBoYXBwZW4gaWYgdGhlIHRhYmxlIGlzIGVtYmVkZGVkIGluIGEgc2VhcmNoYWJsZSB0YWJsZVxyXG4gICAgICAvLyAgYW5kIGEgc2VhcmNoIGlzIHBlcmZvcm1lZClcclxuICAgICAgdGhpcy5zaWJsaW5nTm9kZSA9IHRoaXMucmVuZGVyZXIubmV4dFNpYmxpbmcodGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcclxuICAgICAgdGhpcy5kZXRhaWxWaWV3LnJlYXR0YWNoKCk7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5yb290Tm9kZXMuZm9yRWFjaChub2RlID0+IHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZSh0aGlzLnBhcmVudE5vZGUsIG5vZGUsIHRoaXMuc2libGluZ05vZGUpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERldGFjaCB0aGUgZGV0YWlsVmlldyBmcm9tIHRoZSBjaGFuZ2UgZGV0ZWN0aW9uIHRyZWUgYW5kIHJlbW92ZSB0aGUgZ2VuZXJhdGVkXHJcbiAgICogaHRtbCBvZiB0aGUgZGV0YWlsIHJvdyBmcm9tIHRoZSBET01cclxuICAgKi9cclxuICBwcml2YXRlIGhpZGUoKSB7XHJcbiAgICBpZiAodGhpcy5kZXRhaWxWaWV3KSB7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXRhY2goKTtcclxuICAgICAgdGhpcy5yZW1vdmVEZXRhaWxOb2RlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJveSB0aGUgZGV0YWlsVmlldyBhbmQgcmVtb3ZlIHRoZSBnZW5lcmF0ZWQgaHRtbCBvZiB0aGUgZGV0YWlsIHJvdyBmcm9tIHRoZSBET01cclxuICAgKi9cclxuICBwcml2YXRlIHJlbW92ZURldGFpbFZpZXcoKSB7XHJcbiAgICBpZiAodGhpcy5kZXRhaWxWaWV3KSB7XHJcbiAgICAgIHRoaXMuZGV0YWlsVmlldy5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMucmVtb3ZlRGV0YWlsTm9kZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZSB0aGUgZ2VuZXJhdGVkIGh0bWwgb2YgdGhlIGRldGFpbCByb3cgZnJvbSB0aGUgRE9NXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVEZXRhaWxOb2RlcygpIHtcclxuICAgIGlmICh0aGlzLmRldGFpbFZpZXcpIHtcclxuICAgICAgdGhpcy5kZXRhaWxWaWV3LnJvb3ROb2Rlcy5mb3JFYWNoKG4gPT4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMucGFyZW50Tm9kZSwgbik7XHJcbiAgICAgICAgfSBjYXRjaChlcnIpIHtcclxuICAgICAgICAgIC8vIElnbm9yZSBlcnJvcnMgdGhyb3duIGJ5IHJlbW92aW5nIG5vZGVzIHRoYXQgd2VyZSBuZXZlciBhZGRlZCB0byB0aGUgRE9NLlxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8dGQgKm5nSWY9XCIhaGlkZVRhYmxlTWFzdGVyXCIgY2xhc3M9XCJ7e2NvbGxhcHNpYmxlVG9nZ2xlQ2VsbENsYXNzfX1cIj5cclxuICA8ZWMtY29sbGFwc2libGUtdG9nZ2xlICpuZ0lmPVwiaGFzRGV0YWlsc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInt7aWR9fV90b2dnbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2V4cGFuZGVkXT1cInNob3dEZXRhaWxzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChleHBhbmRlZENoYW5nZSk9XCJ0b2dnbGVEZXRhaWxzKCRldmVudClcIj48L2VjLWNvbGxhcHNpYmxlLXRvZ2dsZT5cclxuPC90ZD5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZXRhaWxSb3c+XHJcbiAgPHRyIGVjVGFibGVEZXRhaWxSb3cgY2xhc3M9XCJ7e2RldGFpbFJvd0NsYXNzfX1cIiBbY29udGVudENsYXNzXT1cImRldGFpbFJvd0NvbnRlbnRDbGFzc1wiIFtjb250ZW50Q29sU3Bhbl09XCJkZXRhaWxSb3dDb2xTcGFuXCIgW21heEhlaWdodF09XCJkZXRhaWxSb3dNYXhIZWlnaHRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRldGFpbFRlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkZXRhaWxDb250ZXh0fVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvdHI+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
@@ -129,15 +129,15 @@ export class TablePaginationComponent {
|
|
129
129
|
value: { firstPage: start, lastPage: lastPage }
|
130
130
|
});
|
131
131
|
}
|
132
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
133
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TablePaginationComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
133
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TablePaginationComponent, selector: "ec-table-pagination", inputs: { id: "id", totalItems: "totalItems", pageSize: "pageSize", pageNumber: "pageNumber", maxTabs: "maxTabs", disablePaginationControls: "disablePaginationControls" }, outputs: { pageChanged: "pageChanged" }, host: { classAttribute: "d-flex px-2 align-items-center" }, usesOnChanges: true, ngImport: i0, template: "<ec-tabs id=\"{{id}}_pages\"\r\n class=\"my-2 is-condensed\"\r\n [tabGroup]=\"currentTabs\"\r\n tabStyle=\"pills\">\r\n</ec-tabs>\r\n<ec-dropdown id=\"{{id}}_morePages\"\r\n *ngIf=\"dropdownItems.length > 1\"\r\n class=\"my-1 ml-1\"\r\n menuTemplateType=\"label\"\r\n icon=\"icon-more\"\r\n menuPosition=\"left\"\r\n [menuMinWidth]=\"80\"\r\n [showArrow]=\"false\"\r\n [popupFixed]=\"true\"\r\n [items]=\"dropdownItems\"\r\n [disabled]=\"disablePaginationControls\"\r\n (itemSelected)=\"onItemSelected($event)\">\r\n</ec-dropdown>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.TabsComponent, selector: "ec-tabs", inputs: ["id", "tabindex", "tabStyle", "tabGroup"] }, { kind: "component", type: i3.DropdownComponent, selector: "ec-dropdown", inputs: ["id", "autofocus", "status", "disabled", "label", "icon", "buttonType", "buttonAlignment", "buttonTitle", "tabindex", "showArrow", "items", "menuTemplateType", "menuTitle", "menuHeight", "menuWidth", "menuMinWidth", "menuPosition", "menuFooter", "popupFixed", "buttonCustomTemplate", "pending"], outputs: ["itemSelected", "popupOpened"] }] }); }
|
134
134
|
}
|
135
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TablePaginationComponent, decorators: [{
|
136
136
|
type: Component,
|
137
137
|
args: [{ selector: 'ec-table-pagination', host: {
|
138
138
|
class: 'd-flex px-2 align-items-center'
|
139
139
|
}, template: "<ec-tabs id=\"{{id}}_pages\"\r\n class=\"my-2 is-condensed\"\r\n [tabGroup]=\"currentTabs\"\r\n tabStyle=\"pills\">\r\n</ec-tabs>\r\n<ec-dropdown id=\"{{id}}_morePages\"\r\n *ngIf=\"dropdownItems.length > 1\"\r\n class=\"my-1 ml-1\"\r\n menuTemplateType=\"label\"\r\n icon=\"icon-more\"\r\n menuPosition=\"left\"\r\n [menuMinWidth]=\"80\"\r\n [showArrow]=\"false\"\r\n [popupFixed]=\"true\"\r\n [items]=\"dropdownItems\"\r\n [disabled]=\"disablePaginationControls\"\r\n (itemSelected)=\"onItemSelected($event)\">\r\n</ec-dropdown>" }]
|
140
|
-
}], ctorParameters:
|
140
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { id: [{
|
141
141
|
type: Input
|
142
142
|
}], totalItems: [{
|
143
143
|
type: Input
|
@@ -152,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
152
152
|
}], pageChanged: [{
|
153
153
|
type: Output
|
154
154
|
}] } });
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS90YWJsZS90YWJsZS1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLXBhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFHOUYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQXVCL0QsTUFBTSxPQUFPLHdCQUF3QjtJQTBEbkMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUEzQ2xDOzs7V0FHRztRQUNNLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFFaEM7O1dBRUc7UUFDTSxZQUFPLEdBQVksRUFBRSxDQUFDO1FBRS9CLHNFQUFzRTtRQUM3RCw4QkFBeUIsR0FBYSxLQUFLLENBQUM7UUFFckQ7Ozs7Ozs7Ozs7Ozs7Ozs7V0FnQkc7UUFDTyxnQkFBVyxHQUE2QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXJFOztXQUVHO1FBQ0ksa0JBQWEsR0FBMEIsRUFBRSxDQUFDO1FBRWpEOztXQUVHO1FBQ0ksZ0JBQVcsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBRVIsQ0FBQztJQUd2QyxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7WUFDbEMsT0FBTztTQUNS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USxFQUFFLFFBQVEsRUFBQztTQUM5QyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQXpKVSx3QkFBd0I7bUdBQXhCLHdCQUF3QixpV0MxQnJDLGdyQkFpQmM7OzRGRFNELHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDRSxxQkFBcUIsUUFFekI7d0JBQ0osS0FBSyxFQUFFLGdDQUFnQztxQkFDeEM7aUdBSVEsRUFBRTtzQkFBVixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFHRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBbUJJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgRWxlbWVudFJlZiwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvbWVudS9tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdkl0ZW0gfSBmcm9tICcuLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1pdGVtJztcclxuaW1wb3J0IHsgTmF2R3JvdXAgfSBmcm9tICcuLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1ncm91cCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luZ0luZm8ge1xyXG4gIC8qKk51bWJlciBvZiBpdGVtcyB0byBza2lwIHRvIGdldCB0byB0aGlzIHBhZ2UqL1xyXG4gIHNraXA6IG51bWJlcixcclxuICAvKipOdW1iZXIgb2YgaXRlbXMgaW4gdGhpcyBwYWdlKi9cclxuICBwYWdlU2l6ZTogbnVtYmVyLFxyXG4gIC8qKlRoZSBudW1iZXIgb2YgdGhlIHBhZ2UqL1xyXG4gIHBhZ2VOdW1iZXI6IG51bWJlclxyXG59XHJcblxyXG5pbnRlcmZhY2UgUGFnZVJhbmdlIHtcclxuICBmaXJzdFBhZ2U6IG51bWJlcixcclxuICBsYXN0UGFnZTogbnVtYmVyXHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtdGFibGUtcGFnaW5hdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXBhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiAnZC1mbGV4IHB4LTIgYWxpZ24taXRlbXMtY2VudGVyJ1xyXG4gIH1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlUGFnaW5hdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIGlkPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBUb3RhbCBudW1iZXIgb2Ygcm93cyB0aGF0IHdlIG5lZWQgdG8gcGFnZSB0aHJvdWdoLlxyXG4gICAqIGkuZS4gdGhlIHN1bSBvZiBhbGwgcm93cyBvbiBhbGwgcGFnZXMuXHJcbiAgICovXHJcbiAgQElucHV0KCkgdG90YWxJdGVtcyE6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogTWF4IHNpemUgb2YgYSBwYWdlLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHBhZ2VTaXplITogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBOdW1iZXIgb2YgdGhlIGN1cnJlbnQgcGFnZS5cclxuICAgKiBJbml0aWFsIHZhbHVlIGlzIDEsIGNhbiBiZSBvdmVycmlkZGVuIHRvIGNoYW5nZSB0aGUgc3RhcnRpbmcgcGFnZSBudW1iZXIuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcGFnZU51bWJlcjogbnVtYmVyID0gMTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWF4aW11bSBudW1iZXIgb2YgcGFnZSB0YWJzIHRvIHNob3dcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhUYWJzPzogbnVtYmVyID0gMTA7XHJcblxyXG4gIC8qKiBXaGVuIHRydWUgdGhlIHRhYnMgYW5kIHRoZSBtb3JlIHBhZ2VzIGRyb3Bkb3duIHdpbGwgYmUgZGlzYWJsZWQgKi9cclxuICBASW5wdXQoKSBkaXNhYmxlUGFnaW5hdGlvbkNvbnRyb2xzPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyB3aGVuIHRoZSBwYWdlIGNoYW5nZXMuXHJcbiAgICogXHJcbiAgICogQmluZCB0byB0aGUgZXZlbnQgaW4gYSB0ZW1wbGF0ZSB1c2luZyBhIGZ1bmN0aW9uIHRoYXQgdXNlcyB0aGUgXCJza2lwXCIgYW5kIFwicGFnZVNpemVcIlxyXG4gICAqIHByb3BlcnRpZXMgdG8gc2xpY2UgdGhlIG5ldyBwYWdlIGZyb20geW91ciBkYXRhIHNldC5cclxuICAgKiBcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqIC8vLmh0bWxcclxuICAgKiAocGFnZUNoYW5nZWQpPVwib25QYWdlQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgKiAvLy50c1xyXG4gICAqIHB1YmxpYyBvblBhZ2VDaGFuZ2VkKGV2ZW50OiBQYWdpbmdJbmZvKSB7XHJcbiAgICogIHRoaXMuY3VycmVudFBhZ2VJdGVtcyA9IHRoaXMucGFnaW5hdGVkVGFibGVJdGVtcy5zbGljZShldmVudC5za2lwLCBldmVudC5za2lwICsgZXZlbnQucGFnZVNpemUpO1xyXG4gICAqIH1cclxuICAgKiAvL1NpbmNlIHBhZ2VDaGFuZ2VkIGRvZXNuJ3QgZW1pdCBmb3IgdGhlIGluaXRpYWwgcGFnZSwgb25QYWdlQ2hhbmdlZCBzaG91bGQgYmUgbWFudWFsbHkgY2FsbGVkIGR1cmluZyBpbml0aWFsaXphdGlvbiBcclxuICAgKiAvL3VzaW5nIGdldFBhZ2luZ0luZm86XHJcbiAgICogdGhpcy5vblBhZ2VDaGFuZ2VkKFRhYmxlUGFnaW5hdGlvbkNvbXBvbmVudC5nZXRQYWdpbmdJbmZvKHRoaXMuc3RhcnRpbmdQYWdlTnVtYmVyLCB0aGlzLnBhZ2VTaXplKSk7XHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8UGFnaW5nSW5mbz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFsbCBwb3NzaWJsZSBpdGVtcyBpbiB0aGUgZHJvcGRvd24gbWVudS5cclxuICAgKi9cclxuICBwdWJsaWMgZHJvcGRvd25JdGVtczogTWVudUl0ZW08UGFnZVJhbmdlPltdID0gW107XHJcblxyXG4gIC8qKlxyXG4gICAqIEN1cnJlbnQgdGFicyBiZWluZyBkaXNwbGF5ZWQuXHJcbiAgICovXHJcbiAgcHVibGljIGN1cnJlbnRUYWJzOiBOYXZHcm91cCA9IG5ldyBOYXZHcm91cCgpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7IH1cclxuXHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgaWYodGhpcy50b3RhbEl0ZW1zID09PSAwKSB7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcyA9IFtdO1xyXG4gICAgICB0aGlzLmN1cnJlbnRUYWJzID0gbmV3IE5hdkdyb3VwKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuc2V0RHJvcGRvd25JdGVtcygpO1xyXG5cclxuICAgIC8vRmluZCB0aGUgbWVudSBpdGVtIHRoYXQgdGhlIHBhZ2UgY29ycmVzcG9uZGluZyB0byB0aGlzLnBhZ2VOdW1iZXIgbGllcyBpblxyXG4gICAgbGV0IGZpcnN0TWVudUl0ZW0gPSB0aGlzLmRyb3Bkb3duSXRlbXMuZmluZChpdGVtID0+IHtcclxuICAgICAgcmV0dXJuIGl0ZW0udmFsdWUhLmZpcnN0UGFnZSA8PSB0aGlzLnBhZ2VOdW1iZXIgJiYgaXRlbS52YWx1ZSEubGFzdFBhZ2UgPj0gdGhpcy5wYWdlTnVtYmVyO1xyXG4gICAgfSk7XHJcbiAgICBpZighZmlyc3RNZW51SXRlbSkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKGBQYWdlICR7dGhpcy5wYWdlTnVtYmVyfSBkb2VzIG5vdCBleGlzdC4gU2V0dGluZyB0aGUgc3RhcnRpbmcgcGFnZSBudW1iZXIgdG8gMS5gKTtcclxuICAgICAgZmlyc3RNZW51SXRlbSA9IHRoaXMuZHJvcGRvd25JdGVtc1swXTtcclxuICAgICAgdGhpcy5wYWdlTnVtYmVyID0gMTtcclxuICAgIH1cclxuICAgIC8vU2V0IHRoZSB0YWJzIHRvIHRob3NlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGZpcnN0IG1lbnUgaXRlbS5cclxuICAgIC8vTm90ZSB0aGF0IHdlIGRvbnQgZW1pdCBhIHBhZ2VDaGFuZ2VkIGV2ZW50IGhlcmUgYmVjYXVzZSB0aGUgY29uc3VtZXIgYWxyZWFkeSBrbm93cyB3aGF0IHRoZSBmaXJzdCBwYWdlIGlzLlxyXG4gICAgdGhpcy5zZXRUYWJzKGZpcnN0TWVudUl0ZW0sIHRoaXMucGFnZU51bWJlcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHaXZlbiB0aGUgbnVtYmVyIG9mIGEgcGFnZSBhbmQgdGhlIHBhZ2VTaXplLCByZXR1cm4gdGhlIFBhZ2luZ0luZm8gb2JqZWN0IGZvciB0aGF0IHBhZ2UuXHJcbiAgICovXHJcbiAgcHVibGljIHN0YXRpYyBnZXRQYWdpbmdJbmZvKHBhZ2VOdW1iZXI6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHsgc2tpcDogKHBhZ2VOdW1iZXIgLSAxKSpwYWdlU2l6ZSwgcGFnZVNpemU6IHBhZ2VTaXplLCBwYWdlTnVtYmVyOiBwYWdlTnVtYmVyIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25JdGVtU2VsZWN0ZWQobWVudUl0ZW06IE1lbnVJdGVtPFBhZ2VSYW5nZT4pIHsgIFxyXG4gICAgdGhpcy5zZXRUYWJzKG1lbnVJdGVtKTtcclxuICAgIHRoaXMub25QYWdlQ2hhbmdlKHBhcnNlSW50KHRoaXMuY3VycmVudFRhYnMuc2VsZWN0ZWQhLmxhYmVsISkpO1xyXG4gICAgLy9mb2N1cyB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHRhYiB0byBoZWxwIGtleWJvYXJkIG5hdmlnYXRpb25cclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudGFiLmFjdGl2ZScpLmZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGUgYSB0YWIgZm9yIGVhY2ggaXRlbSBpbiB0aGUgcmFuZ2UgcmVwcmVzZW50ZWQgaW4gdGhlIE1lbnVJdGVtXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXRUYWJzKG1lbnVJdGVtOiBNZW51SXRlbTxQYWdlUmFuZ2U+LCBwYWdlTnVtYmVyPzogbnVtYmVyKSB7XHJcbiAgICBsZXQgdGFiSXRlbXM6IE5hdkl0ZW1bXSA9IFtdO1xyXG4gICAgZm9yKGxldCBpID0gbWVudUl0ZW0udmFsdWUhLmZpcnN0UGFnZTsgaSA8PSBtZW51SXRlbS52YWx1ZSEubGFzdFBhZ2U7IGkrKykge1xyXG4gICAgICB0YWJJdGVtcy5wdXNoKHtcclxuICAgICAgICBsYWJlbDogYCR7aX1gLFxyXG4gICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVQYWdpbmF0aW9uQ29udHJvbHMsXHJcbiAgICAgICAgb25DbGljazogKCkgPT4ge3RoaXMub25QYWdlQ2hhbmdlKGkpfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIC8vaWYgYSBwYWdlTnVtYmVyIGlzIHByb3ZpZGVkLCBzZWxlY3QgdGhlIHRhYiB3aXRoIHRoYXQgcGFnZSBudW1iZXIuXHJcbiAgICAvL290aGVyd2lzZSwgc2VsZWN0IHRoZSBmaXJzdCB0YWIuXHJcbiAgICBsZXQgc2VsZWN0ZWRUYWI6IE5hdkl0ZW0gPSBwYWdlTnVtYmVyID8gdGFiSXRlbXMuZmluZCh0YWIgPT4ge3JldHVybiBwYXJzZUludCh0YWIubGFiZWwhKSA9PT0gcGFnZU51bWJlcn0pIVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHRhYkl0ZW1zWzBdO1xyXG4gICAgdGhpcy5jdXJyZW50VGFicyA9IG5ldyBOYXZHcm91cCh0YWJJdGVtcywgc2VsZWN0ZWRUYWIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvblBhZ2VDaGFuZ2UocGFnZU51bWJlcjogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnBhZ2VOdW1iZXIgPSBwYWdlTnVtYmVyO1xyXG4gICAgdGhpcy5wYWdlQ2hhbmdlZC5lbWl0KFRhYmxlUGFnaW5hdGlvbkNvbXBvbmVudC5nZXRQYWdpbmdJbmZvKHBhZ2VOdW1iZXIsIHRoaXMucGFnZVNpemUpKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlIGFsbCB0aGUgaXRlbXMgZm9yIHRoZSBkcm9wZG93biBtZW51LlxyXG4gICAqIEEgZHJvcGRvd24gaXRlbSByZXByZXNlbnRzIGEgcGFnZSByYW5nZSAoZS5nLiAxLTEwLCAxMS0yMCwgb3IgMjEtMjUpLlxyXG4gICAqIEEgc2luZ2xlIGRyb3Bkb3duIGl0ZW0gY2FuIHJlcHJlc2VudCBhIHJhbmdlIG9mIHVwIHRvIDEwIHBhZ2VzICh0aGUgbGFzdCBpdGVtIGNvdWxkIGhhdmUgbGVzcyB0aGFuIDEwKS5cclxuICAgKi9cclxuICBwcml2YXRlIHNldERyb3Bkb3duSXRlbXMoKSB7XHJcbiAgICB0aGlzLmRyb3Bkb3duSXRlbXMgPSBbXTtcclxuICAgIC8vZmluZCB0aGUgbGFzdCBwYWdlXHJcbiAgICBsZXQgZGl2aWRlbmQgPSBNYXRoLmZsb29yKHRoaXMudG90YWxJdGVtcyAvIHRoaXMucGFnZVNpemUpO1xyXG4gICAgbGV0IHJlbWFpbmRlciA9IHRoaXMudG90YWxJdGVtcyAlIHRoaXMucGFnZVNpemU7XHJcbiAgICBjb25zdCBsYXN0UGFnZSA9IChyZW1haW5kZXIgPT09IDApID8gZGl2aWRlbmQgOiBkaXZpZGVuZCArIDE7XHJcblxyXG4gICAgLy9rZWVwIGJ1aWxkaW5nIG1lbnUgaXRlbXMgb2YgdGhlIGZvcm0gMS0xMCwgMTEtMjAsIDIxLTMwLCBldGMgdW50aWwgIFxyXG4gICAgLy9lbmQgPj0gbGFzdFBhZ2UsIHdoaWNoIG1lYW5zIHdlJ3ZlIGZvdW5kIHRoZSByYW5nZSB0aGF0IGNvbnRhaW5zIHRoZSBsYXN0IHBhZ2UuXHJcbiAgICBsZXQgc3RhcnQgPSAxO1xyXG5cclxuICAgIGxldCBtYXhUYWJzID0gdGhpcy5tYXhUYWJzIHx8IDEwO1xyXG4gICAgbGV0IGVuZCA9IG1heFRhYnM7XHJcblxyXG4gICAgd2hpbGUoZW5kIDwgbGFzdFBhZ2UpIHtcclxuICAgICAgdGhpcy5kcm9wZG93bkl0ZW1zLnB1c2goe1xyXG4gICAgICAgIGxhYmVsOiBgJHtzdGFydH0tJHtlbmR9YCxcclxuICAgICAgICB2YWx1ZToge2ZpcnN0UGFnZTogc3RhcnQsIGxhc3RQYWdlOiBlbmR9XHJcbiAgICAgIH0pO1xyXG4gICAgICBzdGFydCA9IHN0YXJ0ICsgbWF4VGFicztcclxuICAgICAgZW5kID0gZW5kICsgbWF4VGFicztcclxuICAgIH1cclxuICAgIC8vYWRkIHRoZSBtZW51IGl0ZW0gdGhhdCBjb250YWlucyB0aGUgbGFzdCBwYWdlLlxyXG4gICAgdGhpcy5kcm9wZG93bkl0ZW1zLnB1c2goe1xyXG4gICAgICBsYWJlbDogKHN0YXJ0ID09PSBsYXN0UGFnZSkgPyBgJHtzdGFydH1gOiBgJHtzdGFydH0tJHtsYXN0UGFnZX1gLFxyXG4gICAgICB2YWx1ZToge2ZpcnN0UGFnZTogc3RhcnQsIGxhc3RQYWdlOiBsYXN0UGFnZX1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn0iLCI8ZWMtdGFicyBpZD1cInt7aWR9fV9wYWdlc1wiXHJcbiAgICAgICAgIGNsYXNzPVwibXktMiBpcy1jb25kZW5zZWRcIlxyXG4gICAgICAgICBbdGFiR3JvdXBdPVwiY3VycmVudFRhYnNcIlxyXG4gICAgICAgICB0YWJTdHlsZT1cInBpbGxzXCI+XHJcbjwvZWMtdGFicz5cclxuPGVjLWRyb3Bkb3duIGlkPVwie3tpZH19X21vcmVQYWdlc1wiXHJcbiAgICAgICAgICAgICAqbmdJZj1cImRyb3Bkb3duSXRlbXMubGVuZ3RoID4gMVwiXHJcbiAgICAgICAgICAgICBjbGFzcz1cIm15LTEgbWwtMVwiXHJcbiAgICAgICAgICAgICBtZW51VGVtcGxhdGVUeXBlPVwibGFiZWxcIlxyXG4gICAgICAgICAgICAgaWNvbj1cImljb24tbW9yZVwiXHJcbiAgICAgICAgICAgICBtZW51UG9zaXRpb249XCJsZWZ0XCJcclxuICAgICAgICAgICAgIFttZW51TWluV2lkdGhdPVwiODBcIlxyXG4gICAgICAgICAgICAgW3Nob3dBcnJvd109XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICBbcG9wdXBGaXhlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgIFtpdGVtc109XCJkcm9wZG93bkl0ZW1zXCJcclxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlUGFnaW5hdGlvbkNvbnRyb2xzXCJcclxuICAgICAgICAgICAgIChpdGVtU2VsZWN0ZWQpPVwib25JdGVtU2VsZWN0ZWQoJGV2ZW50KVwiPlxyXG48L2VjLWRyb3Bkb3duPiJdfQ==
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS90YWJsZS90YWJsZS1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLXBhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFHOUYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQXVCL0QsTUFBTSxPQUFPLHdCQUF3QjtJQTBEbkMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUEzQ2xDOzs7V0FHRztRQUNNLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFFaEM7O1dBRUc7UUFDTSxZQUFPLEdBQVksRUFBRSxDQUFDO1FBRS9CLHNFQUFzRTtRQUM3RCw4QkFBeUIsR0FBYSxLQUFLLENBQUM7UUFFckQ7Ozs7Ozs7Ozs7Ozs7Ozs7V0FnQkc7UUFDTyxnQkFBVyxHQUE2QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXJFOztXQUVHO1FBQ0ksa0JBQWEsR0FBMEIsRUFBRSxDQUFDO1FBRWpEOztXQUVHO1FBQ0ksZ0JBQVcsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBRVIsQ0FBQztJQUd2QyxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNsQyxPQUFP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RSxLQUFLLEVBQUUsRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUM7U0FDOUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F6SlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsaVdDMUJyQyxnckJBaUJjOzs0RkRTRCx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0UscUJBQXFCLFFBRXpCO3dCQUNKLEtBQUssRUFBRSxnQ0FBZ0M7cUJBQ3hDOytFQUlRLEVBQUU7c0JBQVYsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQW1CSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL21lbnUvbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOYXZJdGVtIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvbmF2aWdhdGlvbi9uYXYtaXRlbSc7XHJcbmltcG9ydCB7IE5hdkdyb3VwIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvbmF2aWdhdGlvbi9uYXYtZ3JvdXAnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmdJbmZvIHtcclxuICAvKipOdW1iZXIgb2YgaXRlbXMgdG8gc2tpcCB0byBnZXQgdG8gdGhpcyBwYWdlKi9cclxuICBza2lwOiBudW1iZXIsXHJcbiAgLyoqTnVtYmVyIG9mIGl0ZW1zIGluIHRoaXMgcGFnZSovXHJcbiAgcGFnZVNpemU6IG51bWJlcixcclxuICAvKipUaGUgbnVtYmVyIG9mIHRoZSBwYWdlKi9cclxuICBwYWdlTnVtYmVyOiBudW1iZXJcclxufVxyXG5cclxuaW50ZXJmYWNlIFBhZ2VSYW5nZSB7XHJcbiAgZmlyc3RQYWdlOiBudW1iZXIsXHJcbiAgbGFzdFBhZ2U6IG51bWJlclxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLXRhYmxlLXBhZ2luYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7XHJcbiAgICBjbGFzczogJ2QtZmxleCBweC0yIGFsaWduLWl0ZW1zLWNlbnRlcidcclxuICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVBhZ2luYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBpZD86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVG90YWwgbnVtYmVyIG9mIHJvd3MgdGhhdCB3ZSBuZWVkIHRvIHBhZ2UgdGhyb3VnaC5cclxuICAgKiBpLmUuIHRoZSBzdW0gb2YgYWxsIHJvd3Mgb24gYWxsIHBhZ2VzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHRvdGFsSXRlbXMhOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1heCBzaXplIG9mIGEgcGFnZS5cclxuICAgKi9cclxuICBASW5wdXQoKSBwYWdlU2l6ZSE6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogTnVtYmVyIG9mIHRoZSBjdXJyZW50IHBhZ2UuXHJcbiAgICogSW5pdGlhbCB2YWx1ZSBpcyAxLCBjYW4gYmUgb3ZlcnJpZGRlbiB0byBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBhZ2UgbnVtYmVyLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHBhZ2VOdW1iZXI6IG51bWJlciA9IDE7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIHBhZ2UgdGFicyB0byBzaG93XHJcbiAgICovXHJcbiAgQElucHV0KCkgbWF4VGFicz86IG51bWJlciA9IDEwO1xyXG5cclxuICAvKiogV2hlbiB0cnVlIHRoZSB0YWJzIGFuZCB0aGUgbW9yZSBwYWdlcyBkcm9wZG93biB3aWxsIGJlIGRpc2FibGVkICovXHJcbiAgQElucHV0KCkgZGlzYWJsZVBhZ2luYXRpb25Db250cm9scz86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgd2hlbiB0aGUgcGFnZSBjaGFuZ2VzLlxyXG4gICAqIFxyXG4gICAqIEJpbmQgdG8gdGhlIGV2ZW50IGluIGEgdGVtcGxhdGUgdXNpbmcgYSBmdW5jdGlvbiB0aGF0IHVzZXMgdGhlIFwic2tpcFwiIGFuZCBcInBhZ2VTaXplXCJcclxuICAgKiBwcm9wZXJ0aWVzIHRvIHNsaWNlIHRoZSBuZXcgcGFnZSBmcm9tIHlvdXIgZGF0YSBzZXQuXHJcbiAgICogXHJcbiAgICogQGV4YW1wbGVcclxuICAgKiAvLy5odG1sXHJcbiAgICogKHBhZ2VDaGFuZ2VkKT1cIm9uUGFnZUNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICogLy8udHNcclxuICAgKiBwdWJsaWMgb25QYWdlQ2hhbmdlZChldmVudDogUGFnaW5nSW5mbykge1xyXG4gICAqICB0aGlzLmN1cnJlbnRQYWdlSXRlbXMgPSB0aGlzLnBhZ2luYXRlZFRhYmxlSXRlbXMuc2xpY2UoZXZlbnQuc2tpcCwgZXZlbnQuc2tpcCArIGV2ZW50LnBhZ2VTaXplKTtcclxuICAgKiB9XHJcbiAgICogLy9TaW5jZSBwYWdlQ2hhbmdlZCBkb2Vzbid0IGVtaXQgZm9yIHRoZSBpbml0aWFsIHBhZ2UsIG9uUGFnZUNoYW5nZWQgc2hvdWxkIGJlIG1hbnVhbGx5IGNhbGxlZCBkdXJpbmcgaW5pdGlhbGl6YXRpb24gXHJcbiAgICogLy91c2luZyBnZXRQYWdpbmdJbmZvOlxyXG4gICAqIHRoaXMub25QYWdlQ2hhbmdlZChUYWJsZVBhZ2luYXRpb25Db21wb25lbnQuZ2V0UGFnaW5nSW5mbyh0aGlzLnN0YXJ0aW5nUGFnZU51bWJlciwgdGhpcy5wYWdlU2l6ZSkpO1xyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFBhZ2luZ0luZm8+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBBbGwgcG9zc2libGUgaXRlbXMgaW4gdGhlIGRyb3Bkb3duIG1lbnUuXHJcbiAgICovXHJcbiAgcHVibGljIGRyb3Bkb3duSXRlbXM6IE1lbnVJdGVtPFBhZ2VSYW5nZT5bXSA9IFtdO1xyXG5cclxuICAvKipcclxuICAgKiBDdXJyZW50IHRhYnMgYmVpbmcgZGlzcGxheWVkLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBjdXJyZW50VGFiczogTmF2R3JvdXAgPSBuZXcgTmF2R3JvdXAoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XHJcblxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMudG90YWxJdGVtcyA9PT0gMCkge1xyXG4gICAgICB0aGlzLmRyb3Bkb3duSXRlbXMgPSBbXTtcclxuICAgICAgdGhpcy5jdXJyZW50VGFicyA9IG5ldyBOYXZHcm91cCgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldERyb3Bkb3duSXRlbXMoKTtcclxuXHJcbiAgICAvL0ZpbmQgdGhlIG1lbnUgaXRlbSB0aGF0IHRoZSBwYWdlIGNvcnJlc3BvbmRpbmcgdG8gdGhpcy5wYWdlTnVtYmVyIGxpZXMgaW5cclxuICAgIGxldCBmaXJzdE1lbnVJdGVtID0gdGhpcy5kcm9wZG93bkl0ZW1zLmZpbmQoaXRlbSA9PiB7XHJcbiAgICAgIHJldHVybiBpdGVtLnZhbHVlIS5maXJzdFBhZ2UgPD0gdGhpcy5wYWdlTnVtYmVyICYmIGl0ZW0udmFsdWUhLmxhc3RQYWdlID49IHRoaXMucGFnZU51bWJlcjtcclxuICAgIH0pO1xyXG4gICAgaWYoIWZpcnN0TWVudUl0ZW0pIHtcclxuICAgICAgY29uc29sZS5lcnJvcihgUGFnZSAke3RoaXMucGFnZU51bWJlcn0gZG9lcyBub3QgZXhpc3QuIFNldHRpbmcgdGhlIHN0YXJ0aW5nIHBhZ2UgbnVtYmVyIHRvIDEuYCk7XHJcbiAgICAgIGZpcnN0TWVudUl0ZW0gPSB0aGlzLmRyb3Bkb3duSXRlbXNbMF07XHJcbiAgICAgIHRoaXMucGFnZU51bWJlciA9IDE7XHJcbiAgICB9XHJcbiAgICAvL1NldCB0aGUgdGFicyB0byB0aG9zZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBmaXJzdCBtZW51IGl0ZW0uXHJcbiAgICAvL05vdGUgdGhhdCB3ZSBkb250IGVtaXQgYSBwYWdlQ2hhbmdlZCBldmVudCBoZXJlIGJlY2F1c2UgdGhlIGNvbnN1bWVyIGFscmVhZHkga25vd3Mgd2hhdCB0aGUgZmlyc3QgcGFnZSBpcy5cclxuICAgIHRoaXMuc2V0VGFicyhmaXJzdE1lbnVJdGVtLCB0aGlzLnBhZ2VOdW1iZXIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2l2ZW4gdGhlIG51bWJlciBvZiBhIHBhZ2UgYW5kIHRoZSBwYWdlU2l6ZSwgcmV0dXJuIHRoZSBQYWdpbmdJbmZvIG9iamVjdCBmb3IgdGhhdCBwYWdlLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0UGFnaW5nSW5mbyhwYWdlTnVtYmVyOiBudW1iZXIsIHBhZ2VTaXplOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB7IHNraXA6IChwYWdlTnVtYmVyIC0gMSkqcGFnZVNpemUsIHBhZ2VTaXplOiBwYWdlU2l6ZSwgcGFnZU51bWJlcjogcGFnZU51bWJlciB9O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uSXRlbVNlbGVjdGVkKG1lbnVJdGVtOiBNZW51SXRlbTxQYWdlUmFuZ2U+KSB7ICBcclxuICAgIHRoaXMuc2V0VGFicyhtZW51SXRlbSk7XHJcbiAgICB0aGlzLm9uUGFnZUNoYW5nZShwYXJzZUludCh0aGlzLmN1cnJlbnRUYWJzLnNlbGVjdGVkIS5sYWJlbCEpKTtcclxuICAgIC8vZm9jdXMgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0YWIgdG8gaGVscCBrZXlib2FyZCBuYXZpZ2F0aW9uXHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnRhYi5hY3RpdmUnKS5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlIGEgdGFiIGZvciBlYWNoIGl0ZW0gaW4gdGhlIHJhbmdlIHJlcHJlc2VudGVkIGluIHRoZSBNZW51SXRlbVxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0VGFicyhtZW51SXRlbTogTWVudUl0ZW08UGFnZVJhbmdlPiwgcGFnZU51bWJlcj86IG51bWJlcikge1xyXG4gICAgbGV0IHRhYkl0ZW1zOiBOYXZJdGVtW10gPSBbXTtcclxuICAgIGZvcihsZXQgaSA9IG1lbnVJdGVtLnZhbHVlIS5maXJzdFBhZ2U7IGkgPD0gbWVudUl0ZW0udmFsdWUhLmxhc3RQYWdlOyBpKyspIHtcclxuICAgICAgdGFiSXRlbXMucHVzaCh7XHJcbiAgICAgICAgbGFiZWw6IGAke2l9YCxcclxuICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlUGFnaW5hdGlvbkNvbnRyb2xzLFxyXG4gICAgICAgIG9uQ2xpY2s6ICgpID0+IHt0aGlzLm9uUGFnZUNoYW5nZShpKX1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICAvL2lmIGEgcGFnZU51bWJlciBpcyBwcm92aWRlZCwgc2VsZWN0IHRoZSB0YWIgd2l0aCB0aGF0IHBhZ2UgbnVtYmVyLlxyXG4gICAgLy9vdGhlcndpc2UsIHNlbGVjdCB0aGUgZmlyc3QgdGFiLlxyXG4gICAgbGV0IHNlbGVjdGVkVGFiOiBOYXZJdGVtID0gcGFnZU51bWJlciA/IHRhYkl0ZW1zLmZpbmQodGFiID0+IHtyZXR1cm4gcGFyc2VJbnQodGFiLmxhYmVsISkgPT09IHBhZ2VOdW1iZXJ9KSFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0YWJJdGVtc1swXTtcclxuICAgIHRoaXMuY3VycmVudFRhYnMgPSBuZXcgTmF2R3JvdXAodGFiSXRlbXMsIHNlbGVjdGVkVGFiKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25QYWdlQ2hhbmdlKHBhZ2VOdW1iZXI6IG51bWJlcikge1xyXG4gICAgdGhpcy5wYWdlTnVtYmVyID0gcGFnZU51bWJlcjtcclxuICAgIHRoaXMucGFnZUNoYW5nZWQuZW1pdChUYWJsZVBhZ2luYXRpb25Db21wb25lbnQuZ2V0UGFnaW5nSW5mbyhwYWdlTnVtYmVyLCB0aGlzLnBhZ2VTaXplKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhbGwgdGhlIGl0ZW1zIGZvciB0aGUgZHJvcGRvd24gbWVudS5cclxuICAgKiBBIGRyb3Bkb3duIGl0ZW0gcmVwcmVzZW50cyBhIHBhZ2UgcmFuZ2UgKGUuZy4gMS0xMCwgMTEtMjAsIG9yIDIxLTI1KS5cclxuICAgKiBBIHNpbmdsZSBkcm9wZG93biBpdGVtIGNhbiByZXByZXNlbnQgYSByYW5nZSBvZiB1cCB0byAxMCBwYWdlcyAodGhlIGxhc3QgaXRlbSBjb3VsZCBoYXZlIGxlc3MgdGhhbiAxMCkuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXREcm9wZG93bkl0ZW1zKCkge1xyXG4gICAgdGhpcy5kcm9wZG93bkl0ZW1zID0gW107XHJcbiAgICAvL2ZpbmQgdGhlIGxhc3QgcGFnZVxyXG4gICAgbGV0IGRpdmlkZW5kID0gTWF0aC5mbG9vcih0aGlzLnRvdGFsSXRlbXMgLyB0aGlzLnBhZ2VTaXplKTtcclxuICAgIGxldCByZW1haW5kZXIgPSB0aGlzLnRvdGFsSXRlbXMgJSB0aGlzLnBhZ2VTaXplO1xyXG4gICAgY29uc3QgbGFzdFBhZ2UgPSAocmVtYWluZGVyID09PSAwKSA/IGRpdmlkZW5kIDogZGl2aWRlbmQgKyAxO1xyXG5cclxuICAgIC8va2VlcCBidWlsZGluZyBtZW51IGl0ZW1zIG9mIHRoZSBmb3JtIDEtMTAsIDExLTIwLCAyMS0zMCwgZXRjIHVudGlsICBcclxuICAgIC8vZW5kID49IGxhc3RQYWdlLCB3aGljaCBtZWFucyB3ZSd2ZSBmb3VuZCB0aGUgcmFuZ2UgdGhhdCBjb250YWlucyB0aGUgbGFzdCBwYWdlLlxyXG4gICAgbGV0IHN0YXJ0ID0gMTtcclxuXHJcbiAgICBsZXQgbWF4VGFicyA9IHRoaXMubWF4VGFicyB8fCAxMDtcclxuICAgIGxldCBlbmQgPSBtYXhUYWJzO1xyXG5cclxuICAgIHdoaWxlKGVuZCA8IGxhc3RQYWdlKSB7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcy5wdXNoKHtcclxuICAgICAgICBsYWJlbDogYCR7c3RhcnR9LSR7ZW5kfWAsXHJcbiAgICAgICAgdmFsdWU6IHtmaXJzdFBhZ2U6IHN0YXJ0LCBsYXN0UGFnZTogZW5kfVxyXG4gICAgICB9KTtcclxuICAgICAgc3RhcnQgPSBzdGFydCArIG1heFRhYnM7XHJcbiAgICAgIGVuZCA9IGVuZCArIG1heFRhYnM7XHJcbiAgICB9XHJcbiAgICAvL2FkZCB0aGUgbWVudSBpdGVtIHRoYXQgY29udGFpbnMgdGhlIGxhc3QgcGFnZS5cclxuICAgIHRoaXMuZHJvcGRvd25JdGVtcy5wdXNoKHtcclxuICAgICAgbGFiZWw6IChzdGFydCA9PT0gbGFzdFBhZ2UpID8gYCR7c3RhcnR9YDogYCR7c3RhcnR9LSR7bGFzdFBhZ2V9YCxcclxuICAgICAgdmFsdWU6IHtmaXJzdFBhZ2U6IHN0YXJ0LCBsYXN0UGFnZTogbGFzdFBhZ2V9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59IiwiPGVjLXRhYnMgaWQ9XCJ7e2lkfX1fcGFnZXNcIlxyXG4gICAgICAgICBjbGFzcz1cIm15LTIgaXMtY29uZGVuc2VkXCJcclxuICAgICAgICAgW3RhYkdyb3VwXT1cImN1cnJlbnRUYWJzXCJcclxuICAgICAgICAgdGFiU3R5bGU9XCJwaWxsc1wiPlxyXG48L2VjLXRhYnM+XHJcbjxlYy1kcm9wZG93biBpZD1cInt7aWR9fV9tb3JlUGFnZXNcIlxyXG4gICAgICAgICAgICAgKm5nSWY9XCJkcm9wZG93bkl0ZW1zLmxlbmd0aCA+IDFcIlxyXG4gICAgICAgICAgICAgY2xhc3M9XCJteS0xIG1sLTFcIlxyXG4gICAgICAgICAgICAgbWVudVRlbXBsYXRlVHlwZT1cImxhYmVsXCJcclxuICAgICAgICAgICAgIGljb249XCJpY29uLW1vcmVcIlxyXG4gICAgICAgICAgICAgbWVudVBvc2l0aW9uPVwibGVmdFwiXHJcbiAgICAgICAgICAgICBbbWVudU1pbldpZHRoXT1cIjgwXCJcclxuICAgICAgICAgICAgIFtzaG93QXJyb3ddPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgW3BvcHVwRml4ZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICBbaXRlbXNdPVwiZHJvcGRvd25JdGVtc1wiXHJcbiAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZVBhZ2luYXRpb25Db250cm9sc1wiXHJcbiAgICAgICAgICAgICAoaXRlbVNlbGVjdGVkKT1cIm9uSXRlbVNlbGVjdGVkKCRldmVudClcIj5cclxuPC9lYy1kcm9wZG93bj4iXX0=
|
@@ -194,10 +194,10 @@ export class TableSelectableRowComponent {
|
|
194
194
|
clearAllRows() {
|
195
195
|
this.context.rowCheckboxes.controls.forEach(control => control.setValue(false));
|
196
196
|
}
|
197
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
198
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
197
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableSelectableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
198
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TableSelectableRowComponent, selector: "[ecTableSelectableRow]", inputs: { id: "id", isSelectionEnabled: ["ecTableSelectableRow", "isSelectionEnabled"], context: ["selectionContext", "context"], rowIndex: "rowIndex", lockedColOptions: "lockedColOptions", isSelected: "isSelected", isCheckboxDisabled: "isCheckboxDisabled" }, host: { listeners: { "click": "rowClicked($event)" }, properties: { "attr.id": "this.id", "class.is-enabled": "this.isSelectionEnabled", "class.is-selected": "this.isSelected", "class.is-header": "this.isHeader" } }, usesOnChanges: true, ngImport: i0, template: "<!-- any elements of the existing table row that must go before the row selection checkbox can be marked with a class of before-checkbox -->\r\n<ng-content select=\".before-checkbox\"></ng-content>\r\n<ng-container *ngIf=\"isSelectionEnabled\">\r\n <th *ngIf=\"isHeader\"\r\n class=\"checkbox\"\r\n [ecTableLockedColumn]=\"lockedColOptions\">\r\n <ec-checkbox id=\"{{id}}_selectAll\"\r\n class=\"m-0\"\r\n *ngIf=\"context?.selectAllCheckbox\"\r\n [formModel]=\"context?.selectAllCheckbox\"\r\n [dependentCheckboxesGroup]=\"dependentCheckboxesReference\"\r\n [ignoreDisabledDependents]=\"false\">\r\n </ec-checkbox>\r\n </th>\r\n <td *ngIf=\"!isHeader && formControl\"\r\n class=\"checkbox\"\r\n [ecTableLockedColumn]=\"lockedColOptions\">\r\n <!-- Use [readonly] and not [disabled] for isCheckboxDisabled to prevent user interaction\r\n and allow the value to be visible to other components (for example, when they subscribe\r\n to valueChanges on the FormArray that contains all the checkbox FormControls). -->\r\n <ec-checkbox id=\"{{id}}_row{{rowIndex}}_checkbox\"\r\n [readonly]=\"isCheckboxDisabled\"\r\n [attr.id]=\"checkboxAttributeID\"\r\n class=\"m-0 row-checkbox\"\r\n [formModel]=\"formControl\">\r\n </ec-checkbox>\r\n </td>\r\n</ng-container>\r\n<!-- The rest of the table row -->\r\n<ng-content></ng-content>", styles: [":host.is-enabled:not(.is-header){cursor:pointer}:host .checkbox{padding-left:2px;padding-right:2px;width:1.25rem}:host .checkbox:first-child{padding-left:.5rem;width:1.625rem}:host.border-bottom-0 .checkbox{border-bottom:0}td.checkbox ec-checkbox ::ng-deep *{pointer-events:none}th.checkbox{vertical-align:var(--ec-table-selectable-row-vertical-align-checkbox-th, middle)}td.checkbox{vertical-align:var(--ec-table-selectable-row-vertical-align-checkbox-td, top)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CheckboxComponent, selector: "ec-checkbox", inputs: ["name", "dependentCheckboxesGroup", "ignoreDisabledDependents"] }, { kind: "component", type: i3.TableLockedColumnComponent, selector: "[ecTableLockedColumn]", inputs: ["ecTableLockedColumn"] }] }); }
|
199
199
|
}
|
200
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
200
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableSelectableRowComponent, decorators: [{
|
201
201
|
type: Component,
|
202
202
|
args: [{ selector: '[ecTableSelectableRow]', template: "<!-- any elements of the existing table row that must go before the row selection checkbox can be marked with a class of before-checkbox -->\r\n<ng-content select=\".before-checkbox\"></ng-content>\r\n<ng-container *ngIf=\"isSelectionEnabled\">\r\n <th *ngIf=\"isHeader\"\r\n class=\"checkbox\"\r\n [ecTableLockedColumn]=\"lockedColOptions\">\r\n <ec-checkbox id=\"{{id}}_selectAll\"\r\n class=\"m-0\"\r\n *ngIf=\"context?.selectAllCheckbox\"\r\n [formModel]=\"context?.selectAllCheckbox\"\r\n [dependentCheckboxesGroup]=\"dependentCheckboxesReference\"\r\n [ignoreDisabledDependents]=\"false\">\r\n </ec-checkbox>\r\n </th>\r\n <td *ngIf=\"!isHeader && formControl\"\r\n class=\"checkbox\"\r\n [ecTableLockedColumn]=\"lockedColOptions\">\r\n <!-- Use [readonly] and not [disabled] for isCheckboxDisabled to prevent user interaction\r\n and allow the value to be visible to other components (for example, when they subscribe\r\n to valueChanges on the FormArray that contains all the checkbox FormControls). -->\r\n <ec-checkbox id=\"{{id}}_row{{rowIndex}}_checkbox\"\r\n [readonly]=\"isCheckboxDisabled\"\r\n [attr.id]=\"checkboxAttributeID\"\r\n class=\"m-0 row-checkbox\"\r\n [formModel]=\"formControl\">\r\n </ec-checkbox>\r\n </td>\r\n</ng-container>\r\n<!-- The rest of the table row -->\r\n<ng-content></ng-content>", styles: [":host.is-enabled:not(.is-header){cursor:pointer}:host .checkbox{padding-left:2px;padding-right:2px;width:1.25rem}:host .checkbox:first-child{padding-left:.5rem;width:1.625rem}:host.border-bottom-0 .checkbox{border-bottom:0}td.checkbox ec-checkbox ::ng-deep *{pointer-events:none}th.checkbox{vertical-align:var(--ec-table-selectable-row-vertical-align-checkbox-th, middle)}td.checkbox{vertical-align:var(--ec-table-selectable-row-vertical-align-checkbox-td, top)}\n"] }]
|
203
203
|
}], propDecorators: { id: [{
|
@@ -232,4 +232,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
232
232
|
type: HostListener,
|
233
233
|
args: ['click', ['$event']]
|
234
234
|
}] } });
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7QUFDekgsT0FBTyxFQUFtQixnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFFekQsTUFBTSxPQUFPLHlCQUF5QjtJQUF0QztRQUNFOzs7V0FHRztRQUNJLHNCQUFpQixHQUFvQixJQUFJLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFFOzs7OztXQUtHO1FBQ0ksa0JBQWEsR0FBcUIsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVsRTs7O1dBR0c7UUFDSSxxQkFBZ0IsR0FBVyxDQUFDLENBQUMsQ0FBQztRQUVyQzs7O1dBR0c7UUFDSSxzQkFBaUIsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV4RDs7V0FFRztRQUNJLG9DQUErQixHQUFZLEtBQUssQ0FBQztRQUV4RDs7V0FFRztRQUNJLDJCQUFzQixHQUFhLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0NBQUE7QUFPRCxNQUFNLE9BQU8sMkJBQTJCO0lBTHhD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QUZSLFdBQVc7dUJBQUMsU0FBUzs7c0JBQ3JCLEtBQUs7Z0JBTUssa0JBQWtCO3NCQUY1QixXQUFXO3VCQUFDLGtCQUFrQjs7c0JBQzlCLEtBQUs7dUJBQUMsc0JBQXNCO2dCQVF0QixPQUFPO3NCQURiLEtBQUs7dUJBQUMsa0JBQWtCO2dCQU1sQixRQUFRO3NCQURkLEtBQUs7Z0JBT0MsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQU1DLFVBQVU7c0JBRmhCLFdBQVc7dUJBQUMsbUJBQW1COztzQkFDL0IsS0FBSztnQkFLQyxRQUFRO3NCQURkLFdBQVc7dUJBQUMsaUJBQWlCO2dCQVV2QixrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBeUVDLFVBQVU7c0JBRGhCLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFVudHlwZWRGb3JtQXJyYXksIFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVNlbGVjdGFibGVSb3dDb250ZXh0IHtcclxuICAvKipzcGVjaWZ5IHRoZSBmb3JtIGNvbnRyb2wgdG8gdXNlIGZvciB0aGUgc2VsZWN0QWxsIGNoZWNrYm94IG9yIHByb3ZpZGUgeW91ciBvd24uXHJcbiAgICogVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSB3YW50IHRvIHN1YnNjcmliZSB0byBjaGFuZ2VzIHRvIGNoYW5nZSBidXR0b24gc3RhdGVzIGFzIHRoZSBzZWxlY3Rpb24gY2hhbmdlc1xyXG4gICAqIG9yIGlmIHlvdSB3YW50IHRvIGFkZCBpdCB0byBhbiBhbHJlYWR5LWV4aXN0aW5nIGZvcm0gZ3JvdXBcclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0QWxsQ2hlY2tib3g6IEFic3RyYWN0Q29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woZmFsc2UpO1xyXG5cclxuICAvKipzcGVjaWZ5IHRoZSBGb3JtQXJyYXkgdG8gdXNlIGZvciB0aGUgZGVwZW5kZW50IGNoZWNrYm94ZXMgb2YgdGhlIHNlbGVjdEFsbCBjaGVja2JveFxyXG4gICAqIFRoZSBkZXBlbmRlbnQgY2hlY2tib3hlcyB3aWxsIGFkZCBhbmQgcmVtb3ZlIHRoZW1zZWx2ZXMgYXV0b21hdGljYWxseSBhbmQgdGhlIHNlbGVjdEFsbFxyXG4gICAqIGJveCB3aWxsIHJlYWN0IGFjY29yZGluZ2x5LiBEbyBub3QgcHJvdmlkZSB5b3VyIG93biBjb250cm9sc1xyXG4gICAqIFRoaXMgY2FuIGJlIHVzZWZ1bCBpZiB5b3Ugd2FudCB0byBzdWJzY3JpYmUgdG8gY2hhbmdlcyB0byBjaGFuZ2UgYnV0dG9uIHN0YXRlcyBhcyB0aGUgc2VsZWN0aW9uIGNoYW5nZXNcclxuICAgKiBvciBpZiB5b3Ugd2FudCB0byBhZGQgaXQgdG8gYW4gYWxyZWFkeS1leGlzdGluZyBmb3JtIGdyb3VwXHJcbiAgICovXHJcbiAgcHVibGljIHJvd0NoZWNrYm94ZXM6IFVudHlwZWRGb3JtQXJyYXkgPSBuZXcgVW50eXBlZEZvcm1BcnJheShbXSk7XHJcblxyXG4gIC8qKlRoZSBpbmRleCBvZiB0aGUgbGFzdCByb3cgdGhlIHVzZXIgY2xpY2tlZC4gVGhpcyBhbGxvd3MgbXVsdGlwbGUgZGlyZWN0aXZlcyBvbiBhIHNjcmVlbiB0byBjb29yZGluYXRlXHJcbiAgICogZm9yIHJlYWN0aW5nIHRvIHNoaWZ0K2NsaWNrIGFjdGlvbnMgdGhhdCBzaG91bGQgYXV0b21hdGljYWxseSBzZWxlY3QgbXVsdGlwbGUgcm93cyBiZXR3ZWVuIHRoZSBjbGlja2VkIHJvd3NcclxuICAgKiBkZWZhdWx0cyB0byAtMSB0byBpbmRpY2F0ZSB0aGF0IG5vIHVzZXIgY2xpY2sgaGFzIGJlZW4gY2FwdHVyZWRcclxuICAgKi9cclxuICBwdWJsaWMgbGFzdENsaWNrZWRJbmRleDogbnVtYmVyID0gLTE7XHJcblxyXG4gIC8qKkEgc3ViamVjdCB0aGF0IGlzIHRyaWdnZXJlZCB3aGVuIGEgcm93LWJhc2VkIGRpcmVjdGl2ZSBpcyBhZGRlZCBvciByZW1vdmVkLiBJdCBhbGxvd3NcclxuICAgKiB0aGUgbWFzdGVyIGNoZWNrYm94IGluIHRoZSBoZWFkZXIgdG8ga25vdyB0aGF0IGl0IG5lZWRzIHRvIHJlc2V0IHRyYWNraW5nIGluZm9ybWF0aW9uXHJcbiAgICogd2l0aG91dCByZXBsYWNpbmcgdGhlIGFjdHVhbCBGb3JtQXJyYXkgdGhhdCB0aGUgaG9zdGluZyBjb21wb25lbnQgbWF5IGJlIHN1YnNjcmliZWQgdG8gZm9yIGNoYW5nZXNcclxuICAgKi9cclxuICBwdWJsaWMgcm93QWRkZWRPclJlbW92ZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgdG8gdHJ1ZSB0byBkaXNhYmxlIFNoaWZ0LUNsaWNrL0N0cmwtQ2xpY2sgZnVuY3Rpb25hbGl0eVxyXG4gICAqL1xyXG4gIHB1YmxpYyBkaXNhYmxlQWR2YW5jZWRSb3dDbGlja0JlaGF2aW9yOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCB0byBsaXN0IG9mIGluZGljZXMgb2YgY29udHJvbHMgdGhhdCBzaG91bGQgbm90IHRvZ2dsZSB3aGVuIG1hc3Rlci9oZWFkZXIgY2hlY2tib3ggdG9nZ2xlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBub25EZXBlbmRlbnRDaGVja2JveGVzOiBudW1iZXJbXSA9IFtdO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1tlY1RhYmxlU2VsZWN0YWJsZVJvd10nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1zZWxlY3RhYmxlLXJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVTZWxlY3RhYmxlUm93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcbiAgLyoqVGhlIElEIHJvb3QgdG8gdXNlIGZvciB0aGUgY2hlY2tib3ggYW5kIHRhYmxlIGNlbGwgKi9cclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlkOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgLyoqIERpc2FibGVzIHRoZSBzZWxlY3Rpb24gZnVuY3Rpb25hbGl0eSB3aGVuIGZhbHNlICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1lbmFibGVkJylcclxuICBASW5wdXQoJ2VjVGFibGVTZWxlY3RhYmxlUm93JylcclxuICBwdWJsaWMgc2V0IGlzU2VsZWN0aW9uRW5hYmxlZCh2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQpIHsgdGhpcy5fc2VsZWN0aW9uRW5hYmxlZCA9IHZhbHVlICE9PSBmYWxzZTsgfVxyXG4gIHB1YmxpYyBnZXQgaXNTZWxlY3Rpb25FbmFibGVkKCkgeyByZXR1cm4gdGhpcy5fc2VsZWN0aW9uRW5hYmxlZDsgfVxyXG4gIHByaXZhdGUgX3NlbGVjdGlvbkVuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAvKipTaGFyZWQgY29udGV4dCBiZXR3ZWVuIG1hc3RlciBhbmQgY2hpbGRyZW4uIENoaWxkIGRpcmVjdGl2ZSBhZGRzIGl0cyBvd24gRm9ybUNvbnRyb2wgdG8gdGhpc1xyXG4gIGFuZCByZW1vdmVzIGl0IG9uRGVzdHJveS4gVGhlIHNhbWUgY29udGV4dCBvYmplY3QgbXVzdCBiZSB1c2VkIGZvciBhbGwgZGlyZWN0aXZlcyBpbiBhIHNpbmdsZSB0YWJsZSovXHJcbiAgQElucHV0KCdzZWxlY3Rpb25Db250ZXh0JylcclxuICBwdWJsaWMgY29udGV4dCE6IFRhYmxlU2VsZWN0YWJsZVJvd0NvbnRleHQ7XHJcblxyXG4gIC8qUmVxdWlyZWQgZm9yIGFsbCByb3dzLiBUaGUgcm93IGluZGV4IHRoaXMgY29tcG9uZW50IHJlcHJlc2VudHMsIHRvIGFsbG93IGl0IHRvIGtub3cgaG93IHRvIGhhbmRsZSBzaGlmdCtjbGlja3MuXHJcbiAgICBEZWZhdWx0cyB0byAtMSB3aGljaCB3aWxsIGNhdXNlIHRoZSBkaXJlY3RpdmUgdG8gYmVoYXZlIGFzIGEgaGVhZGVyIHJvdyovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcm93SW5kZXg6IG51bWJlciA9IC0xO1xyXG5cclxuICAvKipUaGUgb3B0aW9ucyB1c2VkIHRvIGxvY2sgdGhlIGNoZWNrYm94IGNvbHVtbiB0byB0aGUgbGVmdCBvZiB0aGUgdGFibGUsIG11c3QgYmUgbW9kaWZpZWQgYnkgaG9zdFxyXG4gICAqIGlmIHRoZSBjaGVja2JveCBpcyBub3QgdGhlIGZpcnN0IGNvbHVtbiBpbiB0aGUgdGFibGVcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBsb2NrZWRDb2xPcHRpb25zOiB7IGJvcmRlcjogYm9vbGVhbiwgbGVmdD86IG51bWJlciwgcmlnaHQ/OiBudW1iZXIgfSA9IHsgYm9yZGVyOiBmYWxzZSwgbGVmdDogMCB9O1xyXG5cclxuICAvKiogQXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZSBiYXNlZCBvbiBjaGVja2JveCBzdGF0ZSwgdXNlZCB0byBoaWdobGlnaHQgdGhlIHJvdyB0byBtYXRjaCBvdXIgdGFibGUgc2VsZWN0ZWQgcm93IHN0eWxlcyAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2VsZWN0ZWQnKVxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuXHJcbiAgLyoqIEF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUgaWYgbm8gcm93SW5kZXggaXMgcHJvdmlkZWQgb3IgdGhlIHJvdyBpbmRleCBpcyBsZXNzIHRoYW4gemVybyAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtaGVhZGVyJylcclxuICBwdWJsaWMgaXNIZWFkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvIHRydWUgaWYgeW91IHdhbnQgdGhlIGNoZWNrYm94IHRvIGJlIGRpc2FibGVkLlxyXG4gICAqXHJcbiAgICogV2hlbiB5b3UgdXNlIHRoaXMgcHJvcGVydHksIG1ha2Ugc3VyZSB5b3Ugc2V0IGBkaXNhYmxlQWR2YW5jZWRSb3dDbGlja0JlaGF2aW9yOiB0cnVlYFxyXG4gICAqIGluIHRoZSBgVGFibGVTZWxlY3RhYmxlUm93Q29udGV4dGAsIG9yIHVuZGVzaXJlZCBzaWRlLWVmZmVjdHMgd2lsbCBvY2N1ci5cclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpc0NoZWNrYm94RGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qIEEgcmVmZXJlbmNlIHRoYXQgd2UgY2FuIGNoYW5nZSB3aGVuIGEgY29udHJvbCBpcyByZXBsYWNlZCB0byBmb3JjZSB0aGUgbWFzdGVyIGNoZWNrYm94IHJlZmVyZW5jZSB0byB1cGRhdGVcclxuICAgICB3aXRob3V0IGFsc28gcmVwbGFjaW5nIHRoZSBmb3JtIGFycmF5IHRoYXQgdGhlIGhvc3QgY29tcG9uZW50IG1heSBiZSB3YXRjaGluZyBmb3Igc2VsZWN0ZWQgcm93IGNoYW5nZXMgKi9cclxuICBwdWJsaWMgZGVwZW5kZW50Q2hlY2tib3hlc1JlZmVyZW5jZTogeyBjb250cm9sczogQWJzdHJhY3RDb250cm9sW10gfSA9IHsgY29udHJvbHM6IFtdIH07XHJcblxyXG4gIC8qQ2FwdHVyZSB0aGUgZm9ybSBjb250cm9sIHRoaXMgY29tcG9uZW50IGNyZWF0ZXMgdG8gYWxsb3cgY2xlYW51cCBsYXRlciBvbiBhbmQgZXhwb3NlIGl0IHRvIHRoZSByb3cqL1xyXG4gIHB1YmxpYyBmb3JtQ29udHJvbCE6IEFic3RyYWN0Q29udHJvbDtcclxuXHJcbiAgcHVibGljIGNoZWNrYm94QXR0cmlidXRlSUQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKipTZW5kcyBhbiBldmVudCB3aGVuIHRoZSBjb21wb25lbnQgaXMgZGVzdHJveWVkIHNvIHRoYXQgaXQgY2FuIHVuc3Vic2NyaWJlIGZyb20gYW55IG9ic2VydmFibGVzICovXHJcbiAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICAvKipWYWxpZGF0ZSBhbmQgcG9wdWxhdGUgdGhlIGNvbnRleHQgYXMgdGhlIHRhYmxlIGlzIGR5bmFtaWNhbGx5IGJ1aWx0LiBCZWNhdXNlIHRoZSBjb250ZXh0IGlzIHNoYXJlZCBiZXR3ZWVuIHRoZVxyXG4gICAqIGhlYWRlciBhbmQgZWFjaCBvZiB0aGUgcm93cywgY2hhbmdlcyB0byBpdCBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCBpcyBoYXBwZW5pbmcgYW5kIGhvb2sgdXAgdGhlIGNvcnJlY3RcclxuICAgKiBzdWJzY3JpcHRpb25zIGZvciBzZWxlY3RBbGwuIFRoZSB1c2VyIGNhbiBwcm92aWRlIGFuIGV4aXN0aW5nIGZvcm1BcnJheSBmb3IgdGhlIHJvd3MgYW5kIGZvcm0gY29udHJvbCBmb3IgdGhlIGhlYWRlcixcclxuICAgKiBvciBpdCBjYW4ganVzdCBiZSB0aGUgZGVmYXVsdCBlbXB0eSBvbmVzIGNyZWF0ZWQgYnkgdGhlIGNvbnRleHQgY2xhc3MuXHJcbiAgKi9cclxuICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmlzSGVhZGVyID0gdGhpcy5yb3dJbmRleCA8IDA7XHJcbiAgICBpZiAoIXRoaXMuY29udGV4dCkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdlY1RhYmxlU2VsZWN0YWJsZVJvdyByZXF1aXJlcyBhIGRlZmluZWQgU2VsZWN0YWJsZVRhYmxlUm93Q29udGV4dCB0byBiZSBzaGFyZWQgd2l0aCBhbGwgaW5zdGFuY2VzIGluIG9uZSB0YWJsZS4nKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCByb3dDaGVja2JveCA9IHRoaXMuY29udGV4dD8ucm93Q2hlY2tib3hlcz8uYXQodGhpcy5yb3dJbmRleCk7XHJcblxyXG4gICAgICBpZiAoIXRoaXMuaXNIZWFkZXIgJiYgIXJvd0NoZWNrYm94KSB7XHJcbiAgICAgICAgcm93Q2hlY2tib3ggPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRoaXMuaXNTZWxlY3RlZCk7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Py5yb3dDaGVja2JveGVzLnB1c2gocm93Q2hlY2tib3gpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmZvcm1Db250cm9sID0gdGhpcy5pc0hlYWRlciA/IHRoaXMuY29udGV4dC5zZWxlY3RBbGxDaGVja2JveCA6IHJvd0NoZWNrYm94O1xyXG4gICAgICB0aGlzLndhdGNoRm9yQ2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqV2F0Y2ggZm9yIGNoYW5nZXMgdG8gdGhlIHJvdyBpbmRleCB0aGF0IGNhbiBvY2N1ciBpZiB0aGUgdGFibGUgaXMgcmVvcmRlcmVkIGluLXBsYWNlIGluc3RlYWQgb2ZcclxuICAgKiByZWNyZWF0ZWQgZnJvbSBzY3JhdGNoLiBSZS1jYXB0dXJlIHRoZSBjb3JyZWN0IGZvcm0gY29udHJvbCB0byBrZWVwIGV2ZXJ5dGhpbmcgaW4gc3luY1xyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5yb3dJbmRleCAmJiAhdGhpcy5pc0hlYWRlcikge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sID0gdGhpcy5jb250ZXh0LnJvd0NoZWNrYm94ZXMuYXQodGhpcy5yb3dJbmRleCk7XHJcbiAgICAgIHRoaXMuY2hlY2tib3hBdHRyaWJ1dGVJRCA9IGAke3RoaXMuaWR9X3JvdyR7dGhpcy5yb3dJbmRleH1fZWNDaGVja2JveGA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNoYW5nZXMuaXNTZWxlY3Rpb25FbmFibGVkICYmICF0aGlzLmlzU2VsZWN0aW9uRW5hYmxlZCAmJiB0aGlzLmZvcm1Db250cm9sPy52YWx1ZSA9PT0gdHJ1ZSkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKGZhbHNlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5pc1NlbGVjdGVkICYmIHRoaXMuZm9ybUNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLmlzU2VsZWN0ZWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIFRlbGwgdGhlIGhlYWRlciBjaGVja2JveCB0byByZWZyZXNoIHRoZSBzZWxlY3RBbGwgc3Vic2NyaXB0aW9uIGJlY2F1c2UgYSByb3cgd2FzIHJlbW92ZWQqL1xyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICghdGhpcy5pc0hlYWRlciAmJiB0aGlzLmZvcm1Db250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udGV4dC5yb3dBZGRlZE9yUmVtb3ZlZC5uZXh0KCk7XHJcblxyXG4gICAgICAvL2ZpbmQgdGhlIGxvY2F0aW9uIGluIHRoZSBhcnJheSB0aGF0IG1hdGNoZXMgdGhlIGNoZWNrYm94LiBJZiBtYW55IHJvd3MgYXJlIGJlaW5nIHJlbW92ZWQgaXQgbWF5IG5vdCBtYXRjaCByb3dJbmRleCB5ZXRcclxuICAgICAgbGV0IG1hdGNoSW5kZXggPSB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5jb250cm9scy5maW5kSW5kZXgoYyA9PiBjID09IHRoaXMuZm9ybUNvbnRyb2wpO1xyXG4gICAgICBpZiAobWF0Y2hJbmRleCA+PSAwKSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0LnJvd0NoZWNrYm94ZXMucmVtb3ZlQXQobWF0Y2hJbmRleCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKkhhbmRsZSB3aGVuIGEgdXNlciBjbGlja3Mgb24gYSB0YWJsZSByb3cgKG9yIHNvbWV0aGluZyBpbnNpZGUgaXQgd2hpY2ggYnViYmxlcyB1cCkgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGZvciByb3cgc2VsZWN0aW9uXHJcbiAgICogT25seSB3b3JrIG9uIHRoZSB0YWJsZSBib2R5IChub3QgdGhlIGhlYWRlcikgYmVjYXVzZSB0aGUgaGVhZGVyIG1heSBoYXZlIG90aGVyIGNsaWNrIGhhbmRsZXJzIGZvciBzb3J0IGV0YyB0aGF0IHdlIGRvbid0IGNhcmUgYWJvdXQuXHJcbiAgICogSGFuZGxlIHNoaWZ0IGFuZCBjb250cm9sIHNlbGVjdCBhcyB3ZWxsIGFzIGNoZWNrYm94IGNsaWNrIGxpa2Ugd2luZG93cyBleHBsb3JlciBvciB0aGUgb3JpZ2luYWwgYmlsbCBsaXN0cyBkby5cclxuICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgcm93Q2xpY2tlZChldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKCF0aGlzLmlzSGVhZGVyICYmIHRoaXMuaXNTZWxlY3Rpb25FbmFibGVkICYmICF0aGlzLmlzQ2hlY2tib3hEaXNhYmxlZCkge1xyXG4gICAgICBsZXQgdGFyZ2V0RWwgPSBldmVudD8udGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG5cclxuICAgICAgLy9jbGlja2luZyBvbiBhIHJvdyBhbHdheXMgdG9nZ2xlcyB0aGF0IHJvdy4gU29tZXRpbWVzIHRoZSBzaGlmdC1zZWxlY3Qgd2lsbCB0b2dnbGUgaXQgYmFja1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKCF0aGlzLmZvcm1Db250cm9sLnZhbHVlKTtcclxuXHJcbiAgICAgIGlmICghdGhpcy5jb250ZXh0LmRpc2FibGVBZHZhbmNlZFJvd0NsaWNrQmVoYXZpb3IpIHtcclxuICAgICAgICB0aGlzLmhhbmRsZVNoaWZ0U2VsZWN0KGV2ZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB3YXRjaEZvckNoYW5nZXMoKSB7XHJcbiAgICAvL3dhdGNoIGZvciByb3dzIGJlaW5nIHJlcGxhY2VkIHNvIHRoYXQgdGhlIG1hc3RlciBjaGVja2JveCBhbmQgc2hpZnQtc2VsZWN0IHN1cHBvcnQgY2FuIGJlIHJlc2V0IHRvIG1hdGNoXHJcbiAgICAvL3RoaXMga2VlcHMgdGhlIG1hc3RlciBpbiBzeW5jIGFzIHRoZSB0YWJsZSBjaGFuZ2VzIHBhZ2VzIGV0YyBhbmQgc3RvcHMgdW5leHBlY3RlZCByb3dzIGZyb20gYmVpbmcgc2VsZWN0ZWQgYWZ0ZXIgcmVkcmF3XHJcbiAgICBpZiAodGhpcy5pc0hlYWRlcikge1xyXG4gICAgICB0aGlzLmNvbnRleHQucm93QWRkZWRPclJlbW92ZWQucGlwZShkZWJvdW5jZVRpbWUoMTApLCB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY29udGV4dC5sYXN0Q2xpY2tlZEluZGV4ID0gLTE7XHJcblxyXG4gICAgICAgIC8vIGV4Y2x1ZGUgbm9uRGVwZW5kZW50Q2hlY2tib3hlcyAoc29tZSBtYXkgbm90IGJlIGFsbG93ZWQgdG8gYmUgZGVzZWxlY3RlZClcclxuICAgICAgICBsZXQgZGVwZW5kZW50Q2hlY2tib3hlczogQWJzdHJhY3RDb250cm9sW10gPSBbXTtcclxuICAgICAgICB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5jb250cm9scy5mb3JFYWNoKChjb250cm9sLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmNvbnRleHQubm9uRGVwZW5kZW50Q2hlY2tib3hlcy5pbmNsdWRlcyhpbmRleCkpIHtcclxuICAgICAgICAgICAgZGVwZW5kZW50Q2hlY2tib3hlcy5wdXNoKGNvbnRyb2wpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLmRlcGVuZGVudENoZWNrYm94ZXNSZWZlcmVuY2UgPSB7IGNvbnRyb2xzOiBkZXBlbmRlbnRDaGVja2JveGVzIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb250ZXh0LnJvd0FkZGVkT3JSZW1vdmVkLm5leHQoKTtcclxuXHJcbiAgICAgIC8vd2F0Y2ggZm9yIHRoZSBjaGVja2JveCBzdGF0ZSB0byBjaGFuZ2Ugb24gYSBjaGlsZCByb3cgYW5kIHNldCB0aGUgcm93IGlzU2VsZWN0ZWQgY2xhc3MgLyBoaWdobGlnaHQgdG8gbWF0Y2hcclxuICAgICAgLy90aGlzIHdheSB0aGUgcm93cyBtYXRjaCBldmVuIGlmIGV4dGVybmFsIGNvZGUgdXBkYXRlcyB0aGUgZm9ybSBtb2RlbFxyXG4gICAgICB0aGlzLmZvcm1Db250cm9sPy52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKS5zdWJzY3JpYmUoKHZhbHVlOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1NlbGVjdGVkID0gdmFsdWU7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAgKiBJZiB0aGV5IGFyZSBob2xkaW5nIHRoZSBzaGlmdCBrZXksIHRyeSB0byBzZWxlY3QgYWxsIHRoZSBjaGVja2JveGVzIGJldHdlZW4gdGhlaXIgbGFzdCBzZWxlY3Rpb25cclxuICAgICogYW5kIG1vc3QgcmVjZW50IHNlbGVjdGlvbi4gVGhlIGxvZ2ljIGlzIHNldHVwIHRvIGJlaGF2ZSB0aGUgd2F5IHdpbmRvd3MgZXhwbG9yZXIgYmVoYXZlc1xyXG4gICAgKiBXZSBkb24ndCBhbGxvdyBkcmFnLXRvLXNlbGVjdCBsaWtlIHRoZSBrZW5kbyB0YWJsZXMsIGJ1dCBpdCBtZWFucyB1c2VycyBjYW4gaGlnaGxpZ2h0IHRleHQgYW5kIGNvcHkrcGFzdGUgdG8gZXhjZWwgZXRjXHJcbiAgICAqIHNvIEkgdGhpbmsgdGhpcyBpcyBhY3R1YWxseSBwcmVmZXJhYmxlXHJcbiAgICAqL1xyXG4gIHByaXZhdGUgaGFuZGxlU2hpZnRTZWxlY3QoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGxldCBsYXN0SW5kZXggPSB0aGlzLmNvbnRleHQubGFzdENsaWNrZWRJbmRleDtcclxuICAgIGxldCBjdXJJbmRleCA9IHRoaXMucm93SW5kZXg7XHJcbiAgICBpZiAoZXZlbnQuc2hpZnRLZXkgJiYgbGFzdEluZGV4ID49IDApIHtcclxuICAgICAgdGhpcy5jbGVhckFsbFJvd3MoKTtcclxuICAgICAgaWYgKGN1ckluZGV4ID4gbGFzdEluZGV4KSB7XHJcbiAgICAgICAgZm9yICh2YXIgaW5kZXggPSBsYXN0SW5kZXg7IGluZGV4IDw9IGN1ckluZGV4OyBpbmRleCsrKSB7XHJcbiAgICAgICAgICB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5hdChpbmRleCkuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKGN1ckluZGV4IDwgbGFzdEluZGV4KSB7XHJcbiAgICAgICAgZm9yICh2YXIgaW5kZXggPSBsYXN0SW5kZXg7IGluZGV4ID49IGN1ckluZGV4OyBpbmRleC0tKSB7XHJcbiAgICAgICAgICB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5hdChpbmRleCkuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKGN1ckluZGV4ID09PSBsYXN0SW5kZXgpIHtcclxuICAgICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRydWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKT8ucmVtb3ZlQWxsUmFuZ2VzKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvL3JlY29yZCB0aGUgY3VycmVudCByb3cgaW5kZXggZm9yIGZ1dHVyZSByb3cgY2xpY2tzIHRvIGtub3cgd2hlcmUgdGhleSBsYXN0IGludGVyYWN0ZWRcclxuICAgICAgLy9idXQgb25seSBpZiB0aGV5IGRvbid0IGhhdmUgc2hpZnQgZG93biBmb3IgdGhpcyBjbGljay4gSWYgc2hpZnQgaXMgZG93biB0aGVuIHRoZSBuZXh0IHNoaWZ0K2NsaWNrXHJcbiAgICAgIC8vc2hvdWxkIGJlIGNvbnNpZGVyZWQgYW4gZXh0ZW5zaW9uIChvciBjb250cmFjdGlvbikgb2YgdGhlIG9yaWdpbmFsIG11bHRpLXJvdyBzZWxlY3Rpb25cclxuICAgICAgdGhpcy5jb250ZXh0Lmxhc3RDbGlja2VkSW5kZXggPSB0aGlzLnJvd0luZGV4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhckFsbFJvd3MoKSB7XHJcbiAgICB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4gY29udHJvbC5zZXRWYWx1ZShmYWxzZSkpO1xyXG4gIH1cclxufVxyXG4iLCI8IS0tIGFueSBlbGVtZW50cyBvZiB0aGUgZXhpc3RpbmcgdGFibGUgcm93IHRoYXQgbXVzdCBnbyBiZWZvcmUgdGhlIHJvdyBzZWxlY3Rpb24gY2hlY2tib3ggY2FuIGJlIG1hcmtlZCB3aXRoIGEgY2xhc3Mgb2YgYmVmb3JlLWNoZWNrYm94IC0tPlxyXG48bmctY29udGVudCBzZWxlY3Q9XCIuYmVmb3JlLWNoZWNrYm94XCI+PC9uZy1jb250ZW50PlxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiaXNTZWxlY3Rpb25FbmFibGVkXCI+XHJcbiAgPHRoICpuZ0lmPVwiaXNIZWFkZXJcIlxyXG4gICAgICBjbGFzcz1cImNoZWNrYm94XCJcclxuICAgICAgW2VjVGFibGVMb2NrZWRDb2x1bW5dPVwibG9ja2VkQ29sT3B0aW9uc1wiPlxyXG4gICAgPGVjLWNoZWNrYm94IGlkPVwie3tpZH19X3NlbGVjdEFsbFwiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJtLTBcIlxyXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGV4dD8uc2VsZWN0QWxsQ2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtmb3JtTW9kZWxdPVwiY29udGV4dD8uc2VsZWN0QWxsQ2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtkZXBlbmRlbnRDaGVja2JveGVzR3JvdXBdPVwiZGVwZW5kZW50Q2hlY2tib3hlc1JlZmVyZW5jZVwiXHJcbiAgICAgICAgICAgICAgICAgW2lnbm9yZURpc2FibGVkRGVwZW5kZW50c109XCJmYWxzZVwiPlxyXG4gICAgPC9lYy1jaGVja2JveD5cclxuICA8L3RoPlxyXG4gIDx0ZCAqbmdJZj1cIiFpc0hlYWRlciAmJiBmb3JtQ29udHJvbFwiXHJcbiAgICAgIGNsYXNzPVwiY2hlY2tib3hcIlxyXG4gICAgICBbZWNUYWJsZUxvY2tlZENvbHVtbl09XCJsb2NrZWRDb2xPcHRpb25zXCI+XHJcbiAgICA8IS0tIFVzZSBbcmVhZG9ubHldIGFuZCBub3QgW2Rpc2FibGVkXSBmb3IgaXNDaGVja2JveERpc2FibGVkIHRvIHByZXZlbnQgdXNlciBpbnRlcmFjdGlvblxyXG4gICAgICAgICBhbmQgYWxsb3cgdGhlIHZhbHVlIHRvIGJlIHZpc2libGUgdG8gb3RoZXIgY29tcG9uZW50cyAoZm9yIGV4YW1wbGUsIHdoZW4gdGhleSBzdWJzY3JpYmVcclxuICAgICAgICAgdG8gdmFsdWVDaGFuZ2VzIG9uIHRoZSBGb3JtQXJyYXkgdGhhdCBjb250YWlucyBhbGwgdGhlIGNoZWNrYm94IEZvcm1Db250cm9scykuIC0tPlxyXG4gICAgPGVjLWNoZWNrYm94IGlkPVwie3tpZH19X3Jvd3t7cm93SW5kZXh9fV9jaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cImlzQ2hlY2tib3hEaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiY2hlY2tib3hBdHRyaWJ1dGVJRFwiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJtLTAgcm93LWNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICBbZm9ybU1vZGVsXT1cImZvcm1Db250cm9sXCI+XHJcbiAgICA8L2VjLWNoZWNrYm94PlxyXG4gIDwvdGQ+XHJcbjwvbmctY29udGFpbmVyPlxyXG48IS0tIFRoZSByZXN0IG9mIHRoZSB0YWJsZSByb3cgLS0+XHJcbjxuZy1jb250ZW50PjwvbmctY29udGVudD4iXX0=
|
235
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7QUFDekgsT0FBTyxFQUFtQixnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFFekQsTUFBTSxPQUFPLHlCQUF5QjtJQUF0QztRQUNFOzs7V0FHRztRQUNJLHNCQUFpQixHQUFvQixJQUFJLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFFOzs7OztXQUtHO1FBQ0ksa0JBQWEsR0FBcUIsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVsRTs7O1dBR0c7UUFDSSxxQkFBZ0IsR0FBVyxDQUFDLENBQUMsQ0FBQztRQUVyQzs7O1dBR0c7UUFDSSxzQkFBaUIsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV4RDs7V0FFRztRQUNJLG9DQUErQixHQUFZLEtBQUssQ0FBQztRQUV4RDs7V0FFRztRQUNJLDJCQUFzQixHQUFhLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0NBQUE7QUFPRCxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBTUUsd0RBQXdEO1FBR2pELE9BQUUsR0FBVyxFQUFFLENBQUM7UUFPZixzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFPMUM7bUZBQzJFO1FBRXBFLGFBQVEsR0FBVyxDQUFDLENBQUMsQ0FBQztRQUU3Qjs7V0FFRztRQUVJLHFCQUFnQixHQUF1RCxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRXpHLDBIQUEwSDtRQUduSCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRTFCLDhGQUE4RjtRQUV2RixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRWpDOzs7OztXQUtHO1FBRUksdUJBQWtCLEdBQWEsS0FBSyxDQUFDO1FBRTVDO29IQUM0RztRQUNyRyxpQ0FBNEIsR0FBb0MsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFLakYsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FBRXhDLG9HQUFvRztRQUM1RixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztLQXlJekM7SUE1TEMsc0RBQXNEO0lBQ3RELElBRVcsa0JBQWtCLENBQUMsS0FBaUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUcsSUFBVyxrQkFBa0IsS0FBSyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7SUFpRGxFOzs7O01BSUU7SUFDSyxRQUFRO1FBQ2IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUhBQWlILENBQUMsQ0FBQztRQUNuSSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFakUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkMsV0FBVyxHQUFHLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN0RCxJQUFJLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDaEQsQ0FBQztZQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1lBQ2hGLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEdBQUcsSUFBSSxDQUFDLEVBQUUsT0FBTyxJQUFJLENBQUMsUUFBUSxhQUFhLENBQUM7UUFDekUsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLGtCQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQy9GLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QyxDQUFDO0lBQ0gsQ0FBQztJQUVELDhGQUE4RjtJQUN2RixXQUFXO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO1lBRXRDLHdIQUF3SDtZQUN4SCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMzRixJQUFJLFVBQVUsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7TUFHRTtJQUVLLFVBQVUsQ0FBQyxLQUFpQjtRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxRSxJQUFJLFFBQVEsR0FBRyxLQUFLLEVBQUUsTUFBcUIsQ0FBQztZQUU1QywyRkFBMkY7WUFDM0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRW5ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLCtCQUErQixFQUFFLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxlQUFlO1FBQ3JCLDBHQUEwRztRQUMxRyx5SEFBeUg7UUFDekgsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUM5RixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUVuQyw0RUFBNEU7Z0JBQzVFLElBQUksbUJBQW1CLEdBQXNCLEVBQUUsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDN0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQ3pELG1CQUFtQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDcEMsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFFSCxJQUFJLENBQUMsNEJBQTRCLEdBQUcsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQztZQUN4RSxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUV0Qyw2R0FBNkc7WUFDN0csc0VBQXNFO1lBQ3RFLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUU7Z0JBQzFGLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUVILENBQUM7SUFFRDs7Ozs7UUFLSTtJQUNJLGlCQUFpQixDQUFDLEtBQWlCO1FBQ3pDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7UUFDOUMsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM3QixJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksU0FBUyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixJQUFJLFFBQVEsR0FBRyxTQUFTLEVBQUUsQ0FBQztnQkFDekIsS0FBSyxJQUFJLEtBQUssR0FBRyxTQUFTLEVBQUUsS0FBSyxJQUFJLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO29CQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO1lBQ0gsQ0FBQztpQkFBTSxJQUFJLFFBQVEsR0FBRyxTQUFTLEVBQUUsQ0FBQztnQkFDaEMsS0FBSyxJQUFJLEtBQUssR0FBRyxTQUFTLEVBQUUsS0FBSyxJQUFJLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO29CQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO1lBQ0gsQ0FBQztpQkFBTSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUVELFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLHVGQUF1RjtZQUN2RixtR0FBbUc7WUFDbkcsd0ZBQXdGO1lBQ3hGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsRixDQUFDOytHQWpNVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixnakJDaER4QyxtL0NBNkJ5Qjs7NEZEbUJaLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx3QkFBd0I7OEJBUTNCLEVBQUU7c0JBRlIsV0FBVzt1QkFBQyxTQUFTOztzQkFDckIsS0FBSztnQkFNSyxrQkFBa0I7c0JBRjVCLFdBQVc7dUJBQUMsa0JBQWtCOztzQkFDOUIsS0FBSzt1QkFBQyxzQkFBc0I7Z0JBUXRCLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBTWxCLFFBQVE7c0JBRGQsS0FBSztnQkFPQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBTUMsVUFBVTtzQkFGaEIsV0FBVzt1QkFBQyxtQkFBbUI7O3NCQUMvQixLQUFLO2dCQUtDLFFBQVE7c0JBRGQsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBVXZCLGtCQUFrQjtzQkFEeEIsS0FBSztnQkF5RUMsVUFBVTtzQkFEaEIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlU2VsZWN0YWJsZVJvd0NvbnRleHQge1xyXG4gIC8qKnNwZWNpZnkgdGhlIGZvcm0gY29udHJvbCB0byB1c2UgZm9yIHRoZSBzZWxlY3RBbGwgY2hlY2tib3ggb3IgcHJvdmlkZSB5b3VyIG93bi5cclxuICAgKiBUaGlzIGNhbiBiZSB1c2VmdWwgaWYgeW91IHdhbnQgdG8gc3Vic2NyaWJlIHRvIGNoYW5nZXMgdG8gY2hhbmdlIGJ1dHRvbiBzdGF0ZXMgYXMgdGhlIHNlbGVjdGlvbiBjaGFuZ2VzXHJcbiAgICogb3IgaWYgeW91IHdhbnQgdG8gYWRkIGl0IHRvIGFuIGFscmVhZHktZXhpc3RpbmcgZm9ybSBncm91cFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RBbGxDaGVja2JveDogQWJzdHJhY3RDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbChmYWxzZSk7XHJcblxyXG4gIC8qKnNwZWNpZnkgdGhlIEZvcm1BcnJheSB0byB1c2UgZm9yIHRoZSBkZXBlbmRlbnQgY2hlY2tib3hlcyBvZiB0aGUgc2VsZWN0QWxsIGNoZWNrYm94XHJcbiAgICogVGhlIGRlcGVuZGVudCBjaGVja2JveGVzIHdpbGwgYWRkIGFuZCByZW1vdmUgdGhlbXNlbHZlcyBhdXRvbWF0aWNhbGx5IGFuZCB0aGUgc2VsZWN0QWxsXHJcbiAgICogYm94IHdpbGwgcmVhY3QgYWNjb3JkaW5nbHkuIERvIG5vdCBwcm92aWRlIHlvdXIgb3duIGNvbnRyb2xzXHJcbiAgICogVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSB3YW50IHRvIHN1YnNjcmliZSB0byBjaGFuZ2VzIHRvIGNoYW5nZSBidXR0b24gc3RhdGVzIGFzIHRoZSBzZWxlY3Rpb24gY2hhbmdlc1xyXG4gICAqIG9yIGlmIHlvdSB3YW50IHRvIGFkZCBpdCB0byBhbiBhbHJlYWR5LWV4aXN0aW5nIGZvcm0gZ3JvdXBcclxuICAgKi9cclxuICBwdWJsaWMgcm93Q2hlY2tib3hlczogVW50eXBlZEZvcm1BcnJheSA9IG5ldyBVbnR5cGVkRm9ybUFycmF5KFtdKTtcclxuXHJcbiAgLyoqVGhlIGluZGV4IG9mIHRoZSBsYXN0IHJvdyB0aGUgdXNlciBjbGlja2VkLiBUaGlzIGFsbG93cyBtdWx0aXBsZSBkaXJlY3RpdmVzIG9uIGEgc2NyZWVuIHRvIGNvb3JkaW5hdGVcclxuICAgKiBmb3IgcmVhY3RpbmcgdG8gc2hpZnQrY2xpY2sgYWN0aW9ucyB0aGF0IHNob3VsZCBhdXRvbWF0aWNhbGx5IHNlbGVjdCBtdWx0aXBsZSByb3dzIGJldHdlZW4gdGhlIGNsaWNrZWQgcm93c1xyXG4gICAqIGRlZmF1bHRzIHRvIC0xIHRvIGluZGljYXRlIHRoYXQgbm8gdXNlciBjbGljayBoYXMgYmVlbiBjYXB0dXJlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyBsYXN0Q2xpY2tlZEluZGV4OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgLyoqQSBzdWJqZWN0IHRoYXQgaXMgdHJpZ2dlcmVkIHdoZW4gYSByb3ctYmFzZWQgZGlyZWN0aXZlIGlzIGFkZGVkIG9yIHJlbW92ZWQuIEl0IGFsbG93c1xyXG4gICAqIHRoZSBtYXN0ZXIgY2hlY2tib3ggaW4gdGhlIGhlYWRlciB0byBrbm93IHRoYXQgaXQgbmVlZHMgdG8gcmVzZXQgdHJhY2tpbmcgaW5mb3JtYXRpb25cclxuICAgKiB3aXRob3V0IHJlcGxhY2luZyB0aGUgYWN0dWFsIEZvcm1BcnJheSB0aGF0IHRoZSBob3N0aW5nIGNvbXBvbmVudCBtYXkgYmUgc3Vic2NyaWJlZCB0byBmb3IgY2hhbmdlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyByb3dBZGRlZE9yUmVtb3ZlZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldCB0byB0cnVlIHRvIGRpc2FibGUgU2hpZnQtQ2xpY2svQ3RybC1DbGljayBmdW5jdGlvbmFsaXR5XHJcbiAgICovXHJcbiAgcHVibGljIGRpc2FibGVBZHZhbmNlZFJvd0NsaWNrQmVoYXZpb3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvIGxpc3Qgb2YgaW5kaWNlcyBvZiBjb250cm9scyB0aGF0IHNob3VsZCBub3QgdG9nZ2xlIHdoZW4gbWFzdGVyL2hlYWRlciBjaGVja2JveCB0b2dnbGVzXHJcbiAgICovXHJcbiAgcHVibGljIG5vbkRlcGVuZGVudENoZWNrYm94ZXM6IG51bWJlcltdID0gW107XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnW2VjVGFibGVTZWxlY3RhYmxlUm93XScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXNlbGVjdGFibGUtcm93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1zZWxlY3RhYmxlLXJvdy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVNlbGVjdGFibGVSb3dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuICAvKipUaGUgSUQgcm9vdCB0byB1c2UgZm9yIHRoZSBjaGVja2JveCBhbmQgdGFibGUgY2VsbCAqL1xyXG4gIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogRGlzYWJsZXMgdGhlIHNlbGVjdGlvbiBmdW5jdGlvbmFsaXR5IHdoZW4gZmFsc2UgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWVuYWJsZWQnKVxyXG4gIEBJbnB1dCgnZWNUYWJsZVNlbGVjdGFibGVSb3cnKVxyXG4gIHB1YmxpYyBzZXQgaXNTZWxlY3Rpb25FbmFibGVkKHZhbHVlOiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCkgeyB0aGlzLl9zZWxlY3Rpb25FbmFibGVkID0gdmFsdWUgIT09IGZhbHNlOyB9XHJcbiAgcHVibGljIGdldCBpc1NlbGVjdGlvbkVuYWJsZWQoKSB7IHJldHVybiB0aGlzLl9zZWxlY3Rpb25FbmFibGVkOyB9XHJcbiAgcHJpdmF0ZSBfc2VsZWN0aW9uRW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIC8qKlNoYXJlZCBjb250ZXh0IGJldHdlZW4gbWFzdGVyIGFuZCBjaGlsZHJlbi4gQ2hpbGQgZGlyZWN0aXZlIGFkZHMgaXRzIG93biBGb3JtQ29udHJvbCB0byB0aGlzXHJcbiAgYW5kIHJlbW92ZXMgaXQgb25EZXN0cm95LiBUaGUgc2FtZSBjb250ZXh0IG9iamVjdCBtdXN0IGJlIHVzZWQgZm9yIGFsbCBkaXJlY3RpdmVzIGluIGEgc2luZ2xlIHRhYmxlKi9cclxuICBASW5wdXQoJ3NlbGVjdGlvbkNvbnRleHQnKVxyXG4gIHB1YmxpYyBjb250ZXh0ITogVGFibGVTZWxlY3RhYmxlUm93Q29udGV4dDtcclxuXHJcbiAgLypSZXF1aXJlZCBmb3IgYWxsIHJvd3MuIFRoZSByb3cgaW5kZXggdGhpcyBjb21wb25lbnQgcmVwcmVzZW50cywgdG8gYWxsb3cgaXQgdG8ga25vdyBob3cgdG8gaGFuZGxlIHNoaWZ0K2NsaWNrcy5cclxuICAgIERlZmF1bHRzIHRvIC0xIHdoaWNoIHdpbGwgY2F1c2UgdGhlIGRpcmVjdGl2ZSB0byBiZWhhdmUgYXMgYSBoZWFkZXIgcm93Ki9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByb3dJbmRleDogbnVtYmVyID0gLTE7XHJcblxyXG4gIC8qKlRoZSBvcHRpb25zIHVzZWQgdG8gbG9jayB0aGUgY2hlY2tib3ggY29sdW1uIHRvIHRoZSBsZWZ0IG9mIHRoZSB0YWJsZSwgbXVzdCBiZSBtb2RpZmllZCBieSBob3N0XHJcbiAgICogaWYgdGhlIGNoZWNrYm94IGlzIG5vdCB0aGUgZmlyc3QgY29sdW1uIGluIHRoZSB0YWJsZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGxvY2tlZENvbE9wdGlvbnM6IHsgYm9yZGVyOiBib29sZWFuLCBsZWZ0PzogbnVtYmVyLCByaWdodD86IG51bWJlciB9ID0geyBib3JkZXI6IGZhbHNlLCBsZWZ0OiAwIH07XHJcblxyXG4gIC8qKiBBdXRvbWF0aWNhbGx5IHNldCB0byB0cnVlIGJhc2VkIG9uIGNoZWNrYm94IHN0YXRlLCB1c2VkIHRvIGhpZ2hsaWdodCB0aGUgcm93IHRvIG1hdGNoIG91ciB0YWJsZSBzZWxlY3RlZCByb3cgc3R5bGVzICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zZWxlY3RlZCcpXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG5cclxuICAvKiogQXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZSBpZiBubyByb3dJbmRleCBpcyBwcm92aWRlZCBvciB0aGUgcm93IGluZGV4IGlzIGxlc3MgdGhhbiB6ZXJvICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1oZWFkZXInKVxyXG4gIHB1YmxpYyBpc0hlYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0aGUgY2hlY2tib3ggdG8gYmUgZGlzYWJsZWQuXHJcbiAgICpcclxuICAgKiBXaGVuIHlvdSB1c2UgdGhpcyBwcm9wZXJ0eSwgbWFrZSBzdXJlIHlvdSBzZXQgYGRpc2FibGVBZHZhbmNlZFJvd0NsaWNrQmVoYXZpb3I6IHRydWVgXHJcbiAgICogaW4gdGhlIGBUYWJsZVNlbGVjdGFibGVSb3dDb250ZXh0YCwgb3IgdW5kZXNpcmVkIHNpZGUtZWZmZWN0cyB3aWxsIG9jY3VyLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlzQ2hlY2tib3hEaXNhYmxlZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyogQSByZWZlcmVuY2UgdGhhdCB3ZSBjYW4gY2hhbmdlIHdoZW4gYSBjb250cm9sIGlzIHJlcGxhY2VkIHRvIGZvcmNlIHRoZSBtYXN0ZXIgY2hlY2tib3ggcmVmZXJlbmNlIHRvIHVwZGF0ZVxyXG4gICAgIHdpdGhvdXQgYWxzbyByZXBsYWNpbmcgdGhlIGZvcm0gYXJyYXkgdGhhdCB0aGUgaG9zdCBjb21wb25lbnQgbWF5IGJlIHdhdGNoaW5nIGZvciBzZWxlY3RlZCByb3cgY2hhbmdlcyAqL1xyXG4gIHB1YmxpYyBkZXBlbmRlbnRDaGVja2JveGVzUmVmZXJlbmNlOiB7IGNvbnRyb2xzOiBBYnN0cmFjdENvbnRyb2xbXSB9ID0geyBjb250cm9sczogW10gfTtcclxuXHJcbiAgLypDYXB0dXJlIHRoZSBmb3JtIGNvbnRyb2wgdGhpcyBjb21wb25lbnQgY3JlYXRlcyB0byBhbGxvdyBjbGVhbnVwIGxhdGVyIG9uIGFuZCBleHBvc2UgaXQgdG8gdGhlIHJvdyovXHJcbiAgcHVibGljIGZvcm1Db250cm9sITogQWJzdHJhY3RDb250cm9sO1xyXG5cclxuICBwdWJsaWMgY2hlY2tib3hBdHRyaWJ1dGVJRDogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8qKlNlbmRzIGFuIGV2ZW50IHdoZW4gdGhlIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQgc28gdGhhdCBpdCBjYW4gdW5zdWJzY3JpYmUgZnJvbSBhbnkgb2JzZXJ2YWJsZXMgKi9cclxuICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIC8qKlZhbGlkYXRlIGFuZCBwb3B1bGF0ZSB0aGUgY29udGV4dCBhcyB0aGUgdGFibGUgaXMgZHluYW1pY2FsbHkgYnVpbHQuIEJlY2F1c2UgdGhlIGNvbnRleHQgaXMgc2hhcmVkIGJldHdlZW4gdGhlXHJcbiAgICogaGVhZGVyIGFuZCBlYWNoIG9mIHRoZSByb3dzLCBjaGFuZ2VzIHRvIGl0IGNhbiBiZSB1c2VkIHRvIGRldGVybWluZSB3aGF0IGlzIGhhcHBlbmluZyBhbmQgaG9vayB1cCB0aGUgY29ycmVjdFxyXG4gICAqIHN1YnNjcmlwdGlvbnMgZm9yIHNlbGVjdEFsbC4gVGhlIHVzZXIgY2FuIHByb3ZpZGUgYW4gZXhpc3RpbmcgZm9ybUFycmF5IGZvciB0aGUgcm93cyBhbmQgZm9ybSBjb250cm9sIGZvciB0aGUgaGVhZGVyLFxyXG4gICAqIG9yIGl0IGNhbiBqdXN0IGJlIHRoZSBkZWZhdWx0IGVtcHR5IG9uZXMgY3JlYXRlZCBieSB0aGUgY29udGV4dCBjbGFzcy5cclxuICAqL1xyXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaXNIZWFkZXIgPSB0aGlzLnJvd0luZGV4IDwgMDtcclxuICAgIGlmICghdGhpcy5jb250ZXh0KSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ2VjVGFibGVTZWxlY3RhYmxlUm93IHJlcXVpcmVzIGEgZGVmaW5lZCBTZWxlY3RhYmxlVGFibGVSb3dDb250ZXh0IHRvIGJlIHNoYXJlZCB3aXRoIGFsbCBpbnN0YW5jZXMgaW4gb25lIHRhYmxlLicpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IHJvd0NoZWNrYm94ID0gdGhpcy5jb250ZXh0Py5yb3dDaGVja2JveGVzPy5hdCh0aGlzLnJvd0luZGV4KTtcclxuXHJcbiAgICAgIGlmICghdGhpcy5pc0hlYWRlciAmJiAhcm93Q2hlY2tib3gpIHtcclxuICAgICAgICByb3dDaGVja2JveCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodGhpcy5pc1NlbGVjdGVkKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQ/LnJvd0NoZWNrYm94ZXMucHVzaChyb3dDaGVja2JveCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wgPSB0aGlzLmlzSGVhZGVyID8gdGhpcy5jb250ZXh0LnNlbGVjdEFsbENoZWNrYm94IDogcm93Q2hlY2tib3g7XHJcbiAgICAgIHRoaXMud2F0Y2hGb3JDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipXYXRjaCBmb3IgY2hhbmdlcyB0byB0aGUgcm93IGluZGV4IHRoYXQgY2FuIG9jY3VyIGlmIHRoZSB0YWJsZSBpcyByZW9yZGVyZWQgaW4tcGxhY2UgaW5zdGVhZCBvZlxyXG4gICAqIHJlY3JlYXRlZCBmcm9tIHNjcmF0Y2guIFJlLWNhcHR1cmUgdGhlIGNvcnJlY3QgZm9ybSBjb250cm9sIHRvIGtlZXAgZXZlcnl0aGluZyBpbiBzeW5jXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmIChjaGFuZ2VzLnJvd0luZGV4ICYmICF0aGlzLmlzSGVhZGVyKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wgPSB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5hdCh0aGlzLnJvd0luZGV4KTtcclxuICAgICAgdGhpcy5jaGVja2JveEF0dHJpYnV0ZUlEID0gYCR7dGhpcy5pZH1fcm93JHt0aGlzLnJvd0luZGV4fV9lY0NoZWNrYm94YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5pc1NlbGVjdGlvbkVuYWJsZWQgJiYgIXRoaXMuaXNTZWxlY3Rpb25FbmFibGVkICYmIHRoaXMuZm9ybUNvbnRyb2w/LnZhbHVlID09PSB0cnVlKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUoZmFsc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjaGFuZ2VzLmlzU2VsZWN0ZWQgJiYgdGhpcy5mb3JtQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuaXNTZWxlY3RlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogVGVsbCB0aGUgaGVhZGVyIGNoZWNrYm94IHRvIHJlZnJlc2ggdGhlIHNlbGVjdEFsbCBzdWJzY3JpcHRpb24gYmVjYXVzZSBhIHJvdyB3YXMgcmVtb3ZlZCovXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKCF0aGlzLmlzSGVhZGVyICYmIHRoaXMuZm9ybUNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250ZXh0LnJvd0FkZGVkT3JSZW1vdmVkLm5leHQoKTtcclxuXHJcbiAgICAgIC8vZmluZCB0aGUgbG9jYXRpb24gaW4gdGhlIGFycmF5IHRoYXQgbWF0Y2hlcyB0aGUgY2hlY2tib3guIElmIG1hbnkgcm93cyBhcmUgYmVpbmcgcmVtb3ZlZCBpdCBtYXkgbm90IG1hdGNoIHJvd0luZGV4IHlldFxyXG4gICAgICBsZXQgbWF0Y2hJbmRleCA9IHRoaXMuY29udGV4dC5yb3dDaGVja2JveGVzLmNvbnRyb2xzLmZpbmRJbmRleChjID0+IGMgPT0gdGhpcy5mb3JtQ29udHJvbCk7XHJcbiAgICAgIGlmIChtYXRjaEluZGV4ID49IDApIHtcclxuICAgICAgICB0aGlzLmNvbnRleHQucm93Q2hlY2tib3hlcy5yZW1vdmVBdChtYXRjaEluZGV4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqSGFuZGxlIHdoZW4gYSB1c2VyIGNsaWNrcyBvbiBhIHRhYmxlIHJvdyAob3Igc29tZXRoaW5nIGluc2lkZSBpdCB3aGljaCBidWJibGVzIHVwKSB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgZm9yIHJvdyBzZWxlY3Rpb25cclxuICAgKiBPbmx5IHdvcmsgb24gdGhlIHRhYmxlIGJvZHkgKG5vdCB0aGUgaGVhZGVyKSBiZWNhdXNlIHRoZSBoZWFkZXIgbWF5IGhhdmUgb3RoZXIgY2xpY2sgaGFuZGxlcnMgZm9yIHNvcnQgZXRjIHRoYXQgd2UgZG9uJ3QgY2FyZSBhYm91dC5cclxuICAgKiBIYW5kbGUgc2hpZnQgYW5kIGNvbnRyb2wgc2VsZWN0IGFzIHdlbGwgYXMgY2hlY2tib3ggY2xpY2sgbGlrZSB3aW5kb3dzIGV4cGxvcmVyIG9yIHRoZSBvcmlnaW5hbCBiaWxsIGxpc3RzIGRvLlxyXG4gICovXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyByb3dDbGlja2VkKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBpZiAoIXRoaXMuaXNIZWFkZXIgJiYgdGhpcy5pc1NlbGVjdGlvbkVuYWJsZWQgJiYgIXRoaXMuaXNDaGVja2JveERpc2FibGVkKSB7XHJcbiAgICAgIGxldCB0YXJnZXRFbCA9IGV2ZW50Py50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgICAvL2NsaWNraW5nIG9uIGEgcm93IGFsd2F5cyB0b2dnbGVzIHRoYXQgcm93LiBTb21ldGltZXMgdGhlIHNoaWZ0LXNlbGVjdCB3aWxsIHRvZ2dsZSBpdCBiYWNrXHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUoIXRoaXMuZm9ybUNvbnRyb2wudmFsdWUpO1xyXG5cclxuICAgICAgaWYgKCF0aGlzLmNvbnRleHQuZGlzYWJsZUFkdmFuY2VkUm93Q2xpY2tCZWhhdmlvcikge1xyXG4gICAgICAgIHRoaXMuaGFuZGxlU2hpZnRTZWxlY3QoZXZlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHdhdGNoRm9yQ2hhbmdlcygpIHtcclxuICAgIC8vd2F0Y2ggZm9yIHJvd3MgYmVpbmcgcmVwbGFjZWQgc28gdGhhdCB0aGUgbWFzdGVyIGNoZWNrYm94IGFuZCBzaGlmdC1zZWxlY3Qgc3VwcG9ydCBjYW4gYmUgcmVzZXQgdG8gbWF0Y2hcclxuICAgIC8vdGhpcyBrZWVwcyB0aGUgbWFzdGVyIGluIHN5bmMgYXMgdGhlIHRhYmxlIGNoYW5nZXMgcGFnZXMgZXRjIGFuZCBzdG9wcyB1bmV4cGVjdGVkIHJvd3MgZnJvbSBiZWluZyBzZWxlY3RlZCBhZnRlciByZWRyYXdcclxuICAgIGlmICh0aGlzLmlzSGVhZGVyKSB7XHJcbiAgICAgIHRoaXMuY29udGV4dC5yb3dBZGRlZE9yUmVtb3ZlZC5waXBlKGRlYm91bmNlVGltZSgxMCksIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Lmxhc3RDbGlja2VkSW5kZXggPSAtMTtcclxuXHJcbiAgICAgICAgLy8gZXhjbHVkZSBub25EZXBlbmRlbnRDaGVja2JveGVzIChzb21lIG1heSBub3QgYmUgYWxsb3dlZCB0byBiZSBkZXNlbGVjdGVkKVxyXG4gICAgICAgIGxldCBkZXBlbmRlbnRDaGVja2JveGVzOiBBYnN0cmFjdENvbnRyb2xbXSA9IFtdO1xyXG4gICAgICAgIHRoaXMuY29udGV4dC5yb3dDaGVja2JveGVzLmNvbnRyb2xzLmZvckVhY2goKGNvbnRyb2wsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMuY29udGV4dC5ub25EZXBlbmRlbnRDaGVja2JveGVzLmluY2x1ZGVzKGluZGV4KSkge1xyXG4gICAgICAgICAgICBkZXBlbmRlbnRDaGVja2JveGVzLnB1c2goY29udHJvbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuZGVwZW5kZW50Q2hlY2tib3hlc1JlZmVyZW5jZSA9IHsgY29udHJvbHM6IGRlcGVuZGVudENoZWNrYm94ZXMgfTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNvbnRleHQucm93QWRkZWRPclJlbW92ZWQubmV4dCgpO1xyXG5cclxuICAgICAgLy93YXRjaCBmb3IgdGhlIGNoZWNrYm94IHN0YXRlIHRvIGNoYW5nZSBvbiBhIGNoaWxkIHJvdyBhbmQgc2V0IHRoZSByb3cgaXNTZWxlY3RlZCBjbGFzcyAvIGhpZ2hsaWdodCB0byBtYXRjaFxyXG4gICAgICAvL3RoaXMgd2F5IHRoZSByb3dzIG1hdGNoIGV2ZW4gaWYgZXh0ZXJuYWwgY29kZSB1cGRhdGVzIHRoZSBmb3JtIG1vZGVsXHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2w/LnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpLnN1YnNjcmliZSgodmFsdWU6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmlzU2VsZWN0ZWQgPSB2YWx1ZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICAqIElmIHRoZXkgYXJlIGhvbGRpbmcgdGhlIHNoaWZ0IGtleSwgdHJ5IHRvIHNlbGVjdCBhbGwgdGhlIGNoZWNrYm94ZXMgYmV0d2VlbiB0aGVpciBsYXN0IHNlbGVjdGlvblxyXG4gICAgKiBhbmQgbW9zdCByZWNlbnQgc2VsZWN0aW9uLiBUaGUgbG9naWMgaXMgc2V0dXAgdG8gYmVoYXZlIHRoZSB3YXkgd2luZG93cyBleHBsb3JlciBiZWhhdmVzXHJcbiAgICAqIFdlIGRvbid0IGFsbG93IGRyYWctdG8tc2VsZWN0IGxpa2UgdGhlIGtlbmRvIHRhYmxlcywgYnV0IGl0IG1lYW5zIHVzZXJzIGNhbiBoaWdobGlnaHQgdGV4dCBhbmQgY29weStwYXN0ZSB0byBleGNlbCBldGNcclxuICAgICogc28gSSB0aGluayB0aGlzIGlzIGFjdHVhbGx5IHByZWZlcmFibGVcclxuICAgICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVTaGlmdFNlbGVjdChldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgbGV0IGxhc3RJbmRleCA9IHRoaXMuY29udGV4dC5sYXN0Q2xpY2tlZEluZGV4O1xyXG4gICAgbGV0IGN1ckluZGV4ID0gdGhpcy5yb3dJbmRleDtcclxuICAgIGlmIChldmVudC5zaGlmdEtleSAmJiBsYXN0SW5kZXggPj0gMCkge1xyXG4gICAgICB0aGlzLmNsZWFyQWxsUm93cygpO1xyXG4gICAgICBpZiAoY3VySW5kZXggPiBsYXN0SW5kZXgpIHtcclxuICAgICAgICBmb3IgKHZhciBpbmRleCA9IGxhc3RJbmRleDsgaW5kZXggPD0gY3VySW5kZXg7IGluZGV4KyspIHtcclxuICAgICAgICAgIHRoaXMuY29udGV4dC5yb3dDaGVja2JveGVzLmF0KGluZGV4KS5zZXRWYWx1ZSh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAoY3VySW5kZXggPCBsYXN0SW5kZXgpIHtcclxuICAgICAgICBmb3IgKHZhciBpbmRleCA9IGxhc3RJbmRleDsgaW5kZXggPj0gY3VySW5kZXg7IGluZGV4LS0pIHtcclxuICAgICAgICAgIHRoaXMuY29udGV4dC5yb3dDaGVja2JveGVzLmF0KGluZGV4KS5zZXRWYWx1ZSh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAoY3VySW5kZXggPT09IGxhc3RJbmRleCkge1xyXG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodHJ1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpPy5yZW1vdmVBbGxSYW5nZXMoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vcmVjb3JkIHRoZSBjdXJyZW50IHJvdyBpbmRleCBmb3IgZnV0dXJlIHJvdyBjbGlja3MgdG8ga25vdyB3aGVyZSB0aGV5IGxhc3QgaW50ZXJhY3RlZFxyXG4gICAgICAvL2J1dCBvbmx5IGlmIHRoZXkgZG9uJ3QgaGF2ZSBzaGlmdCBkb3duIGZvciB0aGlzIGNsaWNrLiBJZiBzaGlmdCBpcyBkb3duIHRoZW4gdGhlIG5leHQgc2hpZnQrY2xpY2tcclxuICAgICAgLy9zaG91bGQgYmUgY29uc2lkZXJlZCBhbiBleHRlbnNpb24gKG9yIGNvbnRyYWN0aW9uKSBvZiB0aGUgb3JpZ2luYWwgbXVsdGktcm93IHNlbGVjdGlvblxyXG4gICAgICB0aGlzLmNvbnRleHQubGFzdENsaWNrZWRJbmRleCA9IHRoaXMucm93SW5kZXg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsZWFyQWxsUm93cygpIHtcclxuICAgIHRoaXMuY29udGV4dC5yb3dDaGVja2JveGVzLmNvbnRyb2xzLmZvckVhY2goY29udHJvbCA9PiBjb250cm9sLnNldFZhbHVlKGZhbHNlKSk7XHJcbiAgfVxyXG59XHJcbiIsIjwhLS0gYW55IGVsZW1lbnRzIG9mIHRoZSBleGlzdGluZyB0YWJsZSByb3cgdGhhdCBtdXN0IGdvIGJlZm9yZSB0aGUgcm93IHNlbGVjdGlvbiBjaGVja2JveCBjYW4gYmUgbWFya2VkIHdpdGggYSBjbGFzcyBvZiBiZWZvcmUtY2hlY2tib3ggLS0+XHJcbjxuZy1jb250ZW50IHNlbGVjdD1cIi5iZWZvcmUtY2hlY2tib3hcIj48L25nLWNvbnRlbnQ+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJpc1NlbGVjdGlvbkVuYWJsZWRcIj5cclxuICA8dGggKm5nSWY9XCJpc0hlYWRlclwiXHJcbiAgICAgIGNsYXNzPVwiY2hlY2tib3hcIlxyXG4gICAgICBbZWNUYWJsZUxvY2tlZENvbHVtbl09XCJsb2NrZWRDb2xPcHRpb25zXCI+XHJcbiAgICA8ZWMtY2hlY2tib3ggaWQ9XCJ7e2lkfX1fc2VsZWN0QWxsXCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cIm0tMFwiXHJcbiAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb250ZXh0Py5zZWxlY3RBbGxDaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgW2Zvcm1Nb2RlbF09XCJjb250ZXh0Py5zZWxlY3RBbGxDaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgW2RlcGVuZGVudENoZWNrYm94ZXNHcm91cF09XCJkZXBlbmRlbnRDaGVja2JveGVzUmVmZXJlbmNlXCJcclxuICAgICAgICAgICAgICAgICBbaWdub3JlRGlzYWJsZWREZXBlbmRlbnRzXT1cImZhbHNlXCI+XHJcbiAgICA8L2VjLWNoZWNrYm94PlxyXG4gIDwvdGg+XHJcbiAgPHRkICpuZ0lmPVwiIWlzSGVhZGVyICYmIGZvcm1Db250cm9sXCJcclxuICAgICAgY2xhc3M9XCJjaGVja2JveFwiXHJcbiAgICAgIFtlY1RhYmxlTG9ja2VkQ29sdW1uXT1cImxvY2tlZENvbE9wdGlvbnNcIj5cclxuICAgIDwhLS0gVXNlIFtyZWFkb25seV0gYW5kIG5vdCBbZGlzYWJsZWRdIGZvciBpc0NoZWNrYm94RGlzYWJsZWQgdG8gcHJldmVudCB1c2VyIGludGVyYWN0aW9uXHJcbiAgICAgICAgIGFuZCBhbGxvdyB0aGUgdmFsdWUgdG8gYmUgdmlzaWJsZSB0byBvdGhlciBjb21wb25lbnRzIChmb3IgZXhhbXBsZSwgd2hlbiB0aGV5IHN1YnNjcmliZVxyXG4gICAgICAgICB0byB2YWx1ZUNoYW5nZXMgb24gdGhlIEZvcm1BcnJheSB0aGF0IGNvbnRhaW5zIGFsbCB0aGUgY2hlY2tib3ggRm9ybUNvbnRyb2xzKS4gLS0+XHJcbiAgICA8ZWMtY2hlY2tib3ggaWQ9XCJ7e2lkfX1fcm93e3tyb3dJbmRleH19X2NoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiaXNDaGVja2JveERpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJjaGVja2JveEF0dHJpYnV0ZUlEXCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cIm0tMCByb3ctY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtmb3JtTW9kZWxdPVwiZm9ybUNvbnRyb2xcIj5cclxuICAgIDwvZWMtY2hlY2tib3g+XHJcbiAgPC90ZD5cclxuPC9uZy1jb250YWluZXI+XHJcbjwhLS0gVGhlIHJlc3Qgb2YgdGhlIHRhYmxlIHJvdyAtLT5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiJdfQ==
|
@@ -184,13 +184,13 @@ export class TableComponent {
|
|
184
184
|
this.hasSelection = value.some(v => v);
|
185
185
|
});
|
186
186
|
}
|
187
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
188
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableComponent, selector: "ec-table", inputs: { id: "id", scrollable: "scrollable", resizable: "resizable", condensed: "condensed", sortable: "sortable", selectionContext: "selectionContext", selectionToolbarTemplate: "selectionToolbarTemplate", selectable: "selectable", isForm: "isForm", sort: "sort", searchableTableResizableColumns: ["resizableColumns", "searchableTableResizableColumns"] }, outputs: { sortChange: "sortChange" }, host: { properties: { "attr.id": "this.id", "class.is-scrollable": "this.scrollable", "class.is-resizable": "this.resizable", "class.is-condensed": "this.condensed", "class.is-sortable": "this.sortable", "class.is-selectable": "this.selectable", "class.is-form-table": "this.isForm", "class.is-master-detail": "this.hasMasterDetailRows" } }, queries: [{ propertyName: "masterRows", predicate: TableMasterRowComponent, descendants: true }, { propertyName: "_resizableColumns", predicate: ResizableColumnComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"selectable-table-toolbar\"\r\n *ngIf=\"hasSelection && selectionToolbarTemplate\">\r\n <ng-container *ngTemplateOutlet=\"selectionToolbarTemplate\"></ng-container>\r\n</div>\r\n<div id=\"{{id}}-scroll-container\" \r\n class=\"table-scroll-container\"\r\n cdkScrollable>\r\n <table class=\"main-table\"\r\n id=\"{{id}}\"\r\n [ecResizableTable]=\"resizable\"\r\n [containerEl]=\"el\"\r\n [sortableTable]=\"sortable\"\r\n [resizableColumns]=\"resizableColumns\">\r\n <ng-content></ng-content>\r\n </table>\r\n</div>", styles: ["ec-table{display:flex;position:relative;min-height:0}ec-table .table-scroll-container{flex:1 1;min-height:0;overflow-y:auto}ec-table .main-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ec-font-size-label)}ec-table .main-table th{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--ec-border-color-dark);color:var(--ec-color-secondary-dark);font-weight:400;vertical-align:middle}ec-table .main-table th:first-child{padding-left:1rem}ec-table .main-table th:last-child{padding-right:1rem}ec-table .main-table td{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-top:1px solid var(--ec-border-color);vertical-align:top}ec-table .main-table td:first-child{padding-left:1rem}ec-table .main-table td:last-child{padding-right:1rem}ec-table .main-table tbody>tr:first-child td{border-top:0}ec-table .main-table tbody>tr.is-error td{background-color:var(--ec-background-color-danger)}ec-table .main-table tbody>tr.is-success td{background-color:var(--ec-background-color-success)}ec-table .main-table tfoot td{font-weight:700}ec-table .main-table tbody>tr.is-selected>td,ec-table .main-table tbody>tr.is-selected{background-color:var(--ec-background-color-selected)}ec-table .main-table tr.is-heading td{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);font-weight:var(--ec-font-weight-bold);line-height:1.333333333;text-transform:uppercase;padding-bottom:0;vertical-align:bottom;border-top:0}ec-table .main-table tr.is-heading+tr td{border-top:0}ec-table .main-table th.actions-col,ec-table .main-table td.actions-col{padding:0}ec-table .main-table th.actions-1,ec-table .main-table td.actions-1{width:2.0625rem}ec-table .main-table th.actions-2,ec-table .main-table td.actions-2{width:4.0625rem}ec-table .main-table th.actions-3,ec-table .main-table td.actions-3{width:6.0625rem}ec-table .main-table th.actions-4,ec-table .main-table td.actions-4{width:8.0625rem}ec-table .main-table th.actions-5,ec-table .main-table td.actions-5{width:10.0625rem}ec-table.is-condensed th,ec-table.is-condensed td{padding-top:.25rem;padding-bottom:.25rem;height:1.5rem}ec-table.is-condensed:not(.has-borders)>table td{border-bottom-width:0;border-top-width:0}ec-table .selectable-table-toolbar{align-items:center;background-color:var(--ec-background-color);border-bottom:1px solid var(--ec-border-color-dark);display:flex;padding:0 .5rem;position:absolute;left:calc(var(--selection-toolbar-left, 0rem) + 1.625rem);top:0;height:3rem;right:0;z-index:calc(var(--ec-z-index-sticky-header) + 3)}ec-table.is-scrollable>.table-scroll-container>table{position:relative}ec-table.is-scrollable>.table-scroll-container>table>thead th{background-color:var(--ec-background-color);position:sticky!important;top:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color);position:sticky!important;bottom:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>thead th{background-color:var(--ec-background-color-body)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color-body)}ec-table.is-sortable th[data-sortfield]{-webkit-user-select:none;user-select:none}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper{display:flex;cursor:pointer}ec-table.is-sortable th[data-sortfield].is-resizable .content{flex:0 1 auto}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper:after{flex:none;width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after,ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-asc .content-wrapper:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield].is-resizable.text-right .content-wrapper{flex-direction:row-reverse}ec-table.is-sortable th[data-sortfield]:not(.is-resizable){cursor:pointer}ec-table.is-sortable th[data-sortfield]:not(.is-resizable):after{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-asc:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:after{content:\"\";display:none!important}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:before{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-asc:before{font:var(--fa-font-solid);content:\"\\f062\";display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{transform:scaleY(-1)}ec-table.is-resizable .main-table{table-layout:fixed;width:100%}ec-table.is-resizable th.is-resizable{position:relative;overflow:visible;z-index:var(--ec-z-index-sticky-header)}ec-table.is-resizable th.is-resizable.is-active{-webkit-user-select:none;user-select:none}ec-table.is-resizable th.is-resizable.is-active .handle:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle{position:absolute;width:13px;height:100%;top:0;padding:0 5px;z-index:var(--ec-z-index-splitter);right:0;padding:.5rem 0 .5rem 10px}ec-table.is-resizable th.is-resizable .handle:after{content:\"\";display:block;transition:background-color .3s ease;height:100%;position:relative}ec-table.is-resizable th.is-resizable .handle:hover{cursor:col-resize}ec-table.is-resizable th.is-resizable .handle:hover:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle:before{content:\"\";display:block;width:1px;background-color:var(--ec-border-color);position:absolute;top:.5rem;bottom:.5rem;right:0}ec-table.is-resizable th.is-resizable .content{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-resizable th.is-resizable:last-child .handle:before{display:none}ec-table.is-resizable td,ec-table.is-resizable th{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-selectable .main-table thead th{height:3rem}ec-table.is-selectable .main-table tbody>tr:hover>td{background-color:var(--ec-background-color-hover);border-color:transparent;cursor:pointer}ec-table.is-selectable .main-table tbody>tr:hover.is-selected{background-color:var(--ec-background-color-selected)}ec-table.is-selectable .main-table tbody>tr:hover+tr>td{border-color:var(--ec-background-color-hover)}ec-table.is-selectable th.is-resizable .handle{padding-top:1rem;padding-bottom:1rem}ec-table.is-selectable th.is-resizable .handle:before{top:1rem;bottom:1rem}ec-table.is-master-detail>table{table-layout:fixed}ec-table.is-form-table td{padding-bottom:.25rem;padding-top:.25rem;height:2.5rem;line-height:2rem;border-top:0;font-size:var(--ec-font-size-body)}ec-table.is-form-table tr:first-child td{padding-top:.5rem;height:2.75rem}ec-table.is-form-table tr:last-child td{padding-bottom:.5rem;height:2.75rem}ec-table.is-fixed .main-table{table-layout:fixed}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: i3.ResizableTableDirective, selector: "[ecResizableTable]", inputs: ["ecResizableTable", "containerEl", "sortableTable", "resizableColumns"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
187
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
188
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TableComponent, selector: "ec-table", inputs: { id: "id", scrollable: "scrollable", resizable: "resizable", condensed: "condensed", sortable: "sortable", selectionContext: "selectionContext", selectionToolbarTemplate: "selectionToolbarTemplate", selectable: "selectable", isForm: "isForm", sort: "sort", searchableTableResizableColumns: ["resizableColumns", "searchableTableResizableColumns"] }, outputs: { sortChange: "sortChange" }, host: { properties: { "attr.id": "this.id", "class.is-scrollable": "this.scrollable", "class.is-resizable": "this.resizable", "class.is-condensed": "this.condensed", "class.is-sortable": "this.sortable", "class.is-selectable": "this.selectable", "class.is-form-table": "this.isForm", "class.is-master-detail": "this.hasMasterDetailRows" } }, queries: [{ propertyName: "masterRows", predicate: TableMasterRowComponent, descendants: true }, { propertyName: "_resizableColumns", predicate: ResizableColumnComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"selectable-table-toolbar\"\r\n *ngIf=\"hasSelection && selectionToolbarTemplate\">\r\n <ng-container *ngTemplateOutlet=\"selectionToolbarTemplate\"></ng-container>\r\n</div>\r\n<div id=\"{{id}}-scroll-container\" \r\n class=\"table-scroll-container\"\r\n cdkScrollable>\r\n <table class=\"main-table\"\r\n id=\"{{id}}\"\r\n [ecResizableTable]=\"resizable\"\r\n [containerEl]=\"el\"\r\n [sortableTable]=\"sortable\"\r\n [resizableColumns]=\"resizableColumns\">\r\n <ng-content></ng-content>\r\n </table>\r\n</div>", styles: ["ec-table{display:flex;position:relative;min-height:0}ec-table .table-scroll-container{flex:1 1;min-height:0;overflow-y:auto}ec-table .main-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ec-font-size-label)}ec-table .main-table th{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--ec-border-color-dark);color:var(--ec-color-secondary-dark);font-weight:400;vertical-align:middle}ec-table .main-table th:first-child{padding-left:1rem}ec-table .main-table th:last-child{padding-right:1rem}ec-table .main-table td{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-top:1px solid var(--ec-border-color);vertical-align:top}ec-table .main-table td:first-child{padding-left:1rem}ec-table .main-table td:last-child{padding-right:1rem}ec-table .main-table tbody>tr:first-child td{border-top:0}ec-table .main-table tbody>tr.is-error td{background-color:var(--ec-background-color-danger)}ec-table .main-table tbody>tr.is-success td{background-color:var(--ec-background-color-success)}ec-table .main-table tfoot td{font-weight:700}ec-table .main-table tbody>tr.is-selected>td,ec-table .main-table tbody>tr.is-selected{background-color:var(--ec-background-color-selected)}ec-table .main-table tr.is-heading td{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);font-weight:var(--ec-font-weight-bold);line-height:1.333333333;text-transform:uppercase;padding-bottom:0;vertical-align:bottom;border-top:0}ec-table .main-table tr.is-heading+tr td{border-top:0}ec-table .main-table th.actions-col,ec-table .main-table td.actions-col{padding:0}ec-table .main-table th.actions-1,ec-table .main-table td.actions-1{width:2.0625rem}ec-table .main-table th.actions-2,ec-table .main-table td.actions-2{width:4.0625rem}ec-table .main-table th.actions-3,ec-table .main-table td.actions-3{width:6.0625rem}ec-table .main-table th.actions-4,ec-table .main-table td.actions-4{width:8.0625rem}ec-table .main-table th.actions-5,ec-table .main-table td.actions-5{width:10.0625rem}ec-table.is-condensed th,ec-table.is-condensed td{padding-top:.25rem;padding-bottom:.25rem;height:1.5rem}ec-table.is-condensed:not(.has-borders)>table td{border-bottom-width:0;border-top-width:0}ec-table .selectable-table-toolbar{align-items:center;background-color:var(--ec-background-color);border-bottom:1px solid var(--ec-border-color-dark);display:flex;padding:0 .5rem;position:absolute;left:calc(var(--selection-toolbar-left, 0rem) + 1.625rem);top:0;height:3rem;right:0;z-index:calc(var(--ec-z-index-sticky-header) + 3)}ec-table.is-scrollable>.table-scroll-container>table{position:relative}ec-table.is-scrollable>.table-scroll-container>table>thead th{background-color:var(--ec-background-color);position:sticky!important;top:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color);position:sticky!important;bottom:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>thead th{background-color:var(--ec-background-color-body)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color-body)}ec-table.is-sortable th[data-sortfield]{-webkit-user-select:none;user-select:none}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper{display:flex;cursor:pointer}ec-table.is-sortable th[data-sortfield].is-resizable .content{flex:0 1 auto}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper:after{flex:none;width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after,ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-asc .content-wrapper:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield].is-resizable.text-right .content-wrapper{flex-direction:row-reverse}ec-table.is-sortable th[data-sortfield]:not(.is-resizable){cursor:pointer}ec-table.is-sortable th[data-sortfield]:not(.is-resizable):after{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-asc:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:after{content:\"\";display:none!important}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:before{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-asc:before{font:var(--fa-font-solid);content:\"\\f062\";display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{transform:scaleY(-1)}ec-table.is-resizable .main-table{table-layout:fixed;width:100%}ec-table.is-resizable th.is-resizable{position:relative;overflow:visible;z-index:var(--ec-z-index-sticky-header)}ec-table.is-resizable th.is-resizable.is-active{-webkit-user-select:none;user-select:none}ec-table.is-resizable th.is-resizable.is-active .handle:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle{position:absolute;width:13px;height:100%;top:0;padding:0 5px;z-index:var(--ec-z-index-splitter);right:0;padding:.5rem 0 .5rem 10px}ec-table.is-resizable th.is-resizable .handle:after{content:\"\";display:block;transition:background-color .3s ease;height:100%;position:relative}ec-table.is-resizable th.is-resizable .handle:hover{cursor:col-resize}ec-table.is-resizable th.is-resizable .handle:hover:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle:before{content:\"\";display:block;width:1px;background-color:var(--ec-border-color);position:absolute;top:.5rem;bottom:.5rem;right:0}ec-table.is-resizable th.is-resizable .content{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-resizable th.is-resizable:last-child .handle:before{display:none}ec-table.is-resizable td,ec-table.is-resizable th{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-selectable .main-table thead th{height:3rem}ec-table.is-selectable .main-table tbody>tr:hover>td{background-color:var(--ec-background-color-hover);border-color:transparent;cursor:pointer}ec-table.is-selectable .main-table tbody>tr:hover.is-selected{background-color:var(--ec-background-color-selected)}ec-table.is-selectable .main-table tbody>tr:hover+tr>td{border-color:var(--ec-background-color-hover)}ec-table.is-selectable th.is-resizable .handle{padding-top:1rem;padding-bottom:1rem}ec-table.is-selectable th.is-resizable .handle:before{top:1rem;bottom:1rem}ec-table.is-master-detail>table{table-layout:fixed}ec-table.is-form-table td{padding-bottom:.25rem;padding-top:.25rem;height:2.5rem;line-height:2rem;border-top:0;font-size:var(--ec-font-size-body)}ec-table.is-form-table tr:first-child td{padding-top:.5rem;height:2.75rem}ec-table.is-form-table tr:last-child td{padding-bottom:.5rem;height:2.75rem}ec-table.is-fixed .main-table{table-layout:fixed}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: i3.ResizableTableDirective, selector: "[ecResizableTable]", inputs: ["ecResizableTable", "containerEl", "sortableTable", "resizableColumns"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
189
189
|
}
|
190
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableComponent, decorators: [{
|
191
191
|
type: Component,
|
192
192
|
args: [{ selector: 'ec-table', encapsulation: ViewEncapsulation.None, template: "<div class=\"selectable-table-toolbar\"\r\n *ngIf=\"hasSelection && selectionToolbarTemplate\">\r\n <ng-container *ngTemplateOutlet=\"selectionToolbarTemplate\"></ng-container>\r\n</div>\r\n<div id=\"{{id}}-scroll-container\" \r\n class=\"table-scroll-container\"\r\n cdkScrollable>\r\n <table class=\"main-table\"\r\n id=\"{{id}}\"\r\n [ecResizableTable]=\"resizable\"\r\n [containerEl]=\"el\"\r\n [sortableTable]=\"sortable\"\r\n [resizableColumns]=\"resizableColumns\">\r\n <ng-content></ng-content>\r\n </table>\r\n</div>", styles: ["ec-table{display:flex;position:relative;min-height:0}ec-table .table-scroll-container{flex:1 1;min-height:0;overflow-y:auto}ec-table .main-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ec-font-size-label)}ec-table .main-table th{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--ec-border-color-dark);color:var(--ec-color-secondary-dark);font-weight:400;vertical-align:middle}ec-table .main-table th:first-child{padding-left:1rem}ec-table .main-table th:last-child{padding-right:1rem}ec-table .main-table td{height:2rem;line-height:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-top:1px solid var(--ec-border-color);vertical-align:top}ec-table .main-table td:first-child{padding-left:1rem}ec-table .main-table td:last-child{padding-right:1rem}ec-table .main-table tbody>tr:first-child td{border-top:0}ec-table .main-table tbody>tr.is-error td{background-color:var(--ec-background-color-danger)}ec-table .main-table tbody>tr.is-success td{background-color:var(--ec-background-color-success)}ec-table .main-table tfoot td{font-weight:700}ec-table .main-table tbody>tr.is-selected>td,ec-table .main-table tbody>tr.is-selected{background-color:var(--ec-background-color-selected)}ec-table .main-table tr.is-heading td{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);font-weight:var(--ec-font-weight-bold);line-height:1.333333333;text-transform:uppercase;padding-bottom:0;vertical-align:bottom;border-top:0}ec-table .main-table tr.is-heading+tr td{border-top:0}ec-table .main-table th.actions-col,ec-table .main-table td.actions-col{padding:0}ec-table .main-table th.actions-1,ec-table .main-table td.actions-1{width:2.0625rem}ec-table .main-table th.actions-2,ec-table .main-table td.actions-2{width:4.0625rem}ec-table .main-table th.actions-3,ec-table .main-table td.actions-3{width:6.0625rem}ec-table .main-table th.actions-4,ec-table .main-table td.actions-4{width:8.0625rem}ec-table .main-table th.actions-5,ec-table .main-table td.actions-5{width:10.0625rem}ec-table.is-condensed th,ec-table.is-condensed td{padding-top:.25rem;padding-bottom:.25rem;height:1.5rem}ec-table.is-condensed:not(.has-borders)>table td{border-bottom-width:0;border-top-width:0}ec-table .selectable-table-toolbar{align-items:center;background-color:var(--ec-background-color);border-bottom:1px solid var(--ec-border-color-dark);display:flex;padding:0 .5rem;position:absolute;left:calc(var(--selection-toolbar-left, 0rem) + 1.625rem);top:0;height:3rem;right:0;z-index:calc(var(--ec-z-index-sticky-header) + 3)}ec-table.is-scrollable>.table-scroll-container>table{position:relative}ec-table.is-scrollable>.table-scroll-container>table>thead th{background-color:var(--ec-background-color);position:sticky!important;top:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color);position:sticky!important;bottom:0;z-index:var(--ec-z-index-sticky-header)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>thead th{background-color:var(--ec-background-color-body)}ec-table.is-scrollable.bg-body>.table-scroll-container>table>tfoot td{background-color:var(--ec-background-color-body)}ec-table.is-sortable th[data-sortfield]{-webkit-user-select:none;user-select:none}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper{display:flex;cursor:pointer}ec-table.is-sortable th[data-sortfield].is-resizable .content{flex:0 1 auto}ec-table.is-sortable th[data-sortfield].is-resizable .content-wrapper:after{flex:none;width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after,ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-asc .content-wrapper:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield].is-resizable.is-sorted-desc .content-wrapper:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield].is-resizable.text-right .content-wrapper{flex-direction:row-reverse}ec-table.is-sortable th[data-sortfield]:not(.is-resizable){cursor:pointer}ec-table.is-sortable th[data-sortfield]:not(.is-resizable):after{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-asc:after{font:var(--fa-font-solid);content:\"\\f062\";display:inline-flex}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).is-sorted-desc:after{transform:scaleY(-1)}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:after{content:\"\";display:none!important}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right:before{width:.875rem;height:.875rem;margin:0 .25rem;font-size:.75rem;display:none;align-items:center;justify-content:center}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before,ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-asc:before{font:var(--fa-font-solid);content:\"\\f062\";display:inline-block}ec-table.is-sortable th[data-sortfield]:not(.is-resizable).text-right.is-sorted-desc:before{transform:scaleY(-1)}ec-table.is-resizable .main-table{table-layout:fixed;width:100%}ec-table.is-resizable th.is-resizable{position:relative;overflow:visible;z-index:var(--ec-z-index-sticky-header)}ec-table.is-resizable th.is-resizable.is-active{-webkit-user-select:none;user-select:none}ec-table.is-resizable th.is-resizable.is-active .handle:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle{position:absolute;width:13px;height:100%;top:0;padding:0 5px;z-index:var(--ec-z-index-splitter);right:0;padding:.5rem 0 .5rem 10px}ec-table.is-resizable th.is-resizable .handle:after{content:\"\";display:block;transition:background-color .3s ease;height:100%;position:relative}ec-table.is-resizable th.is-resizable .handle:hover{cursor:col-resize}ec-table.is-resizable th.is-resizable .handle:hover:after{background-color:var(--ec-color-interactive)}ec-table.is-resizable th.is-resizable .handle:before{content:\"\";display:block;width:1px;background-color:var(--ec-border-color);position:absolute;top:.5rem;bottom:.5rem;right:0}ec-table.is-resizable th.is-resizable .content{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-resizable th.is-resizable:last-child .handle:before{display:none}ec-table.is-resizable td,ec-table.is-resizable th{overflow:hidden;text-overflow:clip;white-space:nowrap}ec-table.is-selectable .main-table thead th{height:3rem}ec-table.is-selectable .main-table tbody>tr:hover>td{background-color:var(--ec-background-color-hover);border-color:transparent;cursor:pointer}ec-table.is-selectable .main-table tbody>tr:hover.is-selected{background-color:var(--ec-background-color-selected)}ec-table.is-selectable .main-table tbody>tr:hover+tr>td{border-color:var(--ec-background-color-hover)}ec-table.is-selectable th.is-resizable .handle{padding-top:1rem;padding-bottom:1rem}ec-table.is-selectable th.is-resizable .handle:before{top:1rem;bottom:1rem}ec-table.is-master-detail>table{table-layout:fixed}ec-table.is-form-table td{padding-bottom:.25rem;padding-top:.25rem;height:2.5rem;line-height:2rem;border-top:0;font-size:var(--ec-font-size-body)}ec-table.is-form-table tr:first-child td{padding-top:.5rem;height:2.75rem}ec-table.is-form-table tr:last-child td{padding-bottom:.5rem;height:2.75rem}ec-table.is-fixed .main-table{table-layout:fixed}\n"] }]
|
193
|
-
}], ctorParameters:
|
193
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { id: [{
|
194
194
|
type: HostBinding,
|
195
195
|
args: ['attr.id']
|
196
196
|
}, {
|
@@ -246,4 +246,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
246
246
|
type: Input,
|
247
247
|
args: ['resizableColumns']
|
248
248
|
}] } });
|
249
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQW9ELGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdPLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQWV2RSxNQUFNLE9BQU8sY0FBYztJQTRHekIsWUFBb0IsUUFBbUIsRUFBUyxFQUFjO1FBQTFDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBMUdyRCxPQUFFLEdBQUcsRUFBRSxDQUFDO1FBRWpCOzs7V0FHRztRQUVNLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFFNUI7OztXQUdHO1FBRU0sY0FBUyxHQUFHLEtBQUssQ0FBQztRQUUzQjs7OztXQUlHO1FBRU0sY0FBUyxHQUFHLEtBQUssQ0FBQztRQUUzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBa0JHO1FBRU0sYUFBUSxHQUFHLEtBQUssQ0FBQztRQWExQixpREFBaUQ7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ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGNsb25lRGVlcCwgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBSZXNpemFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL3Jlc2l6YWJsZS1jb2x1bW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVNYXN0ZXJSb3dDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLW1hc3Rlci1yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVTZWxlY3RhYmxlUm93Q29udGV4dCB9IGZyb20gJy4vdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCB0eXBlIFRhYmxlU29ydERpcmVjdGlvbiA9ICdkZXNjJyB8ICdhc2MnO1xyXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlU29ydCB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICBkaXJlY3Rpb246IFRhYmxlU29ydERpcmVjdGlvbjtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXR7XHJcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcclxuICBASW5wdXQoKSBpZCA9ICcnO1xyXG5cclxuICAvKipcclxuICAgKiBFbmFibGVzIHRhYmxlIHNjcm9sbGluZyB3aXRoIGEgc3RpY2t5IGhlYWRlciBhbmQgZm9vdGVyLiBVc2VcclxuICAgKiA8dGhlYWQ+IGFuZCA8dGZvb3Q+IGVsZW1lbnRzIGZvciBzdHlsZXMgdG8gYmUgYXBwbGllZCBjb3JyZWN0bHkuIFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2Nyb2xsYWJsZScpXHJcbiAgQElucHV0KCkgc2Nyb2xsYWJsZSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZXMgcmVzaXphYmxlIHRhYmxlIGNvbHVtbnMuIEFwcGx5IHRoZSAnaXMtcmVzaXphYmxlJyBjbGFzc1xyXG4gICAqIHRvIHRoZSA8dGg+IG9mIGEgdGFibGUgY29sdW1uIHRoYW4gY2FuIGJlIHJlc2l6ZWQuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1yZXNpemFibGUnKVxyXG4gIEBJbnB1dCgpIHJlc2l6YWJsZSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKiBcclxuICAgKiBUdXJucyBvbiBjb25kZW5zZWQgdGFibGUgc3R5bGluZy4gQnkgZGVmYXVsdCBhIGNvbmRlbnNlZCB0YWJsZVxyXG4gICAqIGhhcyBubyByb3cgYm9yZGVycy4gVG8gc2hvdyBib3JkZXJzLCBhcHBseSB0aGUgJ2hhcy1ib3JkZXJzJyBjbGFzc1xyXG4gICAqIHRvIHRoZSA8ZWMtdGFibGU+IGVsZW1lbnRcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWNvbmRlbnNlZCcpXHJcbiAgQElucHV0KCkgY29uZGVuc2VkID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqIFxyXG4gICAqIEVuYWJsZXMgc29ydGluZyBieSBjbGlja2luZyBvbiB0YWJsZSBjb2x1bW5zLiBUbyBtYWtlIGEgY29sdW1uIHNvcnRhYmxlXHJcbiAgICogYXBwbHkgdGhlIGBkYXRhLXNvcnRhYmxlYCBhdHRyaWJ1dGUgdG8gdGhlIGNvbHVtbnMgYDx0aD5gIGVsZW1lbnQgd2l0aCBcclxuICAgKiB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkIHVzZWQgdG8gc29ydCB0aGUgY29sdW1uLiBXaGVuIGEgY29sdW1uIGlzIGNsaWNrZWRcclxuICAgKiB0aGUgZmllbGRzIGFuZCBjdXJyZW50IHNvcnQgZGlyZWN0aW9uIGlzIGVtaXR0ZWQgZnJvbSB0aGUgYHNvcnRDaGFuZ2VgXHJcbiAgICogb3V0cHV0XHJcbiAgICogXHJcbiAgICogQGV4YW1wbGVcclxuICAgKiBgYGBodG1sXHJcbiAgICogPGVjLXRhYmxlIFtzb3J0YWJsZV09XCJ0cnVlXCIgW3NvcnRdPVwiY3VycmVudFNvcnRcIiAoc29ydENoYW5nZSk9XCJvblNvcnQoJGV2ZW50KVwiPlxyXG4gICAqICA8dGhlYWQ+XHJcbiAgICogICAgPHRoIGRhdGEtc29ydGFibGU9XCJuYW1lXCI+TmFtZTwvdGg+XHJcbiAgICogICAgPHRoIGRhdGEtc29ydGFibGU9XCJxdHlcIj5RdHkuPC90aD5cclxuICAgKiAgICA8dGggZGF0YS1zb3J0YWJsZT1cInByaWNlXCI+UHJpY2U8L3RoPlxyXG4gICAqICA8L3RoZWFkPlxyXG4gICAqICAuLi5cclxuICAgKiA8L2VjLXRhYmxlPlxyXG4gICAqIGBgYFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc29ydGFibGUnKVxyXG4gIEBJbnB1dCgpIHNvcnRhYmxlID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogU2hhcmVkIGNvbnRleHQgb2YgVGFibGVTZWxlY3RhYmxlUm93Q29tcG9uZW50cyBpbiB0aGUgdGFibGUuIFdpbGwgdHVybiBvbiBoaWdobGlnaHRpbmcgb24gcm93IGhvdmVyLlxyXG4gICAqIEFkZCB0aGUgYFRhYmxlU2VsZWN0YWJsZVJvd0NvbXBvbmVudGAgdG8gdGhlIHRhYmxlIGNvbnRlbnQgdG8gYWRkIGNoZWNrYm94ZXMgdG8gZWFjaCByb3cgYW5kIGFzc2lnbiBhIFxyXG4gICAqIFRlbXBsYXRlUmVmIHRvIHRoZSBgW3NlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZV1gIGlucHV0IHRoYXQgaW5jbHVkZXMgYWN0aW9ucyB0byB0YWtlIG9uIHNlbGVjdGVkIGl0ZW1zIFxyXG4gICAqIHRoYXQgd2lsbCBhcHBlYXIgb3ZlciB0aGUgdGFibGUgaGVhZGVyIHdoZW4gMSBvciBtb3JlIHJvd3MgYXJlIHNlbGVjdGVkLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvbkNvbnRleHQ/OiBUYWJsZVNlbGVjdGFibGVSb3dDb250ZXh0O1xyXG5cclxuICAvKiogSW5jbHVkZSBhY3Rpb25zIHRvIGRpc3BsYXkgaW4gYSBiYXIgb3ZlciB0aGUgdGFibGUgaGVhZGVyIHdoZW4gMSBvciBtb3JlIHJvd3MgYXJlIHNlbGVjdGVkLiBSZXF1aXJlcyBgW3NlbGVjdGlvbkNvbnRleHRdYCB0byBiZSBkZWZpbmVkICovXHJcbiAgQElucHV0KCkgc2VsZWN0aW9uVG9vbGJhclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICBcclxuICAvKiogU2V0IHRvIHRydWUgaWYgc2VsZWN0aW9uQ29udGV4dCBpcyBkZWZpbmVkICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zZWxlY3RhYmxlJylcclxuICBASW5wdXQoKSBzZWxlY3RhYmxlID0gZmFsc2U7XHJcblxyXG4gIC8qKiBIaWRlcy9zaG93cyB0aGUgc2VsZWN0aW9uIHRvb2xiYXIgdGVtcGxhdGUgd2hlbiAxIG9yIG1vcmUgcm93cyBpcyBzZWxlY3RlZCAqL1xyXG4gIGhhc1NlbGVjdGlvbiA9IGZhbHNlXHJcblxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZXMgZm9ybSB0YWJsZSBzdHlsaW5nIHRvIGFsbG93IGZvcm0gY29udHJvbHMgaW5zaWRlIHRhYmxlIGNlbGxzLlxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZm9ybS10YWJsZScpXHJcbiAgQElucHV0KCkgaXNGb3JtID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogVGhlIGN1cnJlbnQgc29ydCBmaWVsZCBhbmQgZGlyZWN0aW9uICgnZGVzYycgb3IgJ2FzYycpXHJcbiAgICovXHJcbiAgQElucHV0KCkgc29ydD86IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgbmV3IHNvcnQgdmFsdWUgd2hlbmV2ZXIgYSBzb3J0YWJsZSBjb2x1bW4gaXMgY2xpY2tlZFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBzb3J0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8VGFibGVTb3J0IHwgVGFibGVTb3J0W10+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBUcnVlIGlmIGEgVGFibGVNYXN0ZXJSb3dDb21wb25lbnQgZXhpc3RzIGluIHRoZSB0YWJsZSBjb250ZW50XHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1tYXN0ZXItZGV0YWlsJykgaGFzTWFzdGVyRGV0YWlsUm93cyA9IGZhbHNlO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlTWFzdGVyUm93Q29tcG9uZW50LCB7ZGVzY2VuZGFudHM6IHRydWV9KSBtYXN0ZXJSb3dzITogUXVlcnlMaXN0PFRhYmxlTWFzdGVyUm93Q29tcG9uZW50PjtcclxuXHJcbiAgcHVibGljIHJlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuICBAQ29udGVudENoaWxkcmVuKFJlc2l6YWJsZUNvbHVtbkNvbXBvbmVudCwge2Rlc2NlbmRhbnRzOiB0cnVlfSkgX3Jlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KCdyZXNpemFibGVDb2x1bW5zJykgc2VhcmNoYWJsZVRhYmxlUmVzaXphYmxlQ29sdW1ucz86IFF1ZXJ5TGlzdDxSZXNpemFibGVDb2x1bW5Db21wb25lbnQ+O1xyXG5cclxuICAvKipcclxuICAgKiBVbmxpc3RlbiBmdW5jdGlvbiByZXR1cm5lZCBieSBgcmVuZGVyZXIubGlzdGVuKClgIHRoYXQgYXJlIGNhbGxlZFxyXG4gICAqIE9uRGVzdHJveSB0byBjbGVhbiB1cCBhbGwgbGlzdGVuZXJzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB1bmxpc3RlbmVyczogKCgpID0+IHZvaWQpW10gPSBbXTtcclxuICBcclxuICAvKiogVGhlIGN1cnJlbnQgc29ydCB2YWx1ZSAqL1xyXG4gIHByaXZhdGUgY3VycmVudFNvcnQ/OiBUYWJsZVNvcnQgfCBUYWJsZVNvcnRbXTtcclxuICBcclxuICAvKiogQSBtYXAgb2Ygc29ydGFibGUgYDx0aD5gIGVsZW1lbnRzICovXHJcbiAgcHJpdmF0ZSBzb3J0YWJsZUNvbHM6IHtbZmllbGQ6IHN0cmluZ106IEhUTUxUYWJsZUhlYWRlckNlbGxFbGVtZW50fSA9IHt9O1xyXG5cclxuICBwcml2YXRlIGRlc3Ryb3llZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNvcnRhYmxlICYmIGNoYW5nZXMuc29ydCAmJiBjaGFuZ2VzLnNvcnQuY3VycmVudFZhbHVlICYmICFjaGFuZ2VzLnNvcnQuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgY29uc3QgbmV3VmFsdWU6IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdID0gY2hhbmdlcy5zb3J0LmN1cnJlbnRWYWx1ZTtcclxuICAgICAgaWYgKCF0aGlzLmN1cnJlbnRTb3J0IHx8ICFpc0VxdWFsKG5ld1ZhbHVlLCB0aGlzLmN1cnJlbnRTb3J0KSl7XHJcbiAgICAgICAgdGhpcy5vblNvcnQobmV3VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmhhc01hc3RlckRldGFpbFJvd3MgPSAhIXRoaXMubWFzdGVyUm93cy5sZW5ndGg7XHJcbiAgICBcclxuICAgIHRoaXMubWFzdGVyUm93cy5jaGFuZ2VzLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcclxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5oYXNNYXN0ZXJEZXRhaWxSb3dzID0gISF0aGlzLm1hc3RlclJvd3MubGVuZ3RoO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5yZXNpemFibGVDb2x1bW5zID0gdGhpcy5zZWFyY2hhYmxlVGFibGVSZXNpemFibGVDb2x1bW5zIHx8IHRoaXMuX3Jlc2l6YWJsZUNvbHVtbnM7XHJcbiAgfVxyXG4gIFxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNvcnRhYmxlKSB7XHJcbiAgICAgIHRoaXMuaW5pdFNvcnRhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0YWJsZSkge1xyXG4gICAgICB0aGlzLmluaXRTZWxlY3RhYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudW5saXN0ZW5lcnMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMudW5saXN0ZW5lcnMuZm9yRWFjaCh1bmxpc3RlbiA9PiB1bmxpc3RlbigpKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95ZWQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhbGwgZWxlbWVudHMgaW5zaWRlIHRoZSBob3N0IGVsZW1lbnQgdGhhdCBtYXRjaCBhIHNlbGVjdG9yIFxyXG4gICAqIEBwYXJhbSBzZWxlY3RvciAtIEFueSB2YWxpZCBzZWxlY3RvciBmb3IgW3F1ZXJ5U2VsZWN0b3JBbGxdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9Eb2N1bWVudC9xdWVyeVNlbGVjdG9yQWxsKVxyXG4gICAqL1xyXG4gIHByaXZhdGUgcXVlcnlFbGVtZW50czxUPihzZWxlY3Rvcjogc3RyaW5nKTogVFtdIHtcclxuICAgIGNvbnN0IHRhYmxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGFibGUucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvcikpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3RvcmUgYSBgPHRoPmAgZm9yIGVhY2ggc29ydGFibGUgY29sdW1uIGFuZCBhdHRhY2ggYSBjbGlja1xyXG4gICAqIGV2ZW50IGxpc3RlbmVyLiBcclxuICAgKi9cclxuICBwcml2YXRlIGluaXRTb3J0YWJsZSgpOiB2b2lkIHtcclxuICAgIHRoaXMucXVlcnlFbGVtZW50czxIVE1MVGFibGVIZWFkZXJDZWxsRWxlbWVudD4oJ3RoJykuZm9yRWFjaCh0aCA9PiB7XHJcbiAgICAgIGlmICh0aC5oYXNBdHRyaWJ1dGUoJ2RhdGEtc29ydGZpZWxkJykpIHtcclxuICAgICAgICBcclxuICAgICAgICBjb25zdCBmaWVsZCA9IHRoLmdldEF0dHJpYnV0ZSgnZGF0YS1zb3J0ZmllbGQnKTtcclxuICAgICAgICBpZiAoZmllbGQpIHtcclxuICAgICAgICAgIHRoaXMuc29ydGFibGVDb2xzW2ZpZWxkXSA9IHRoO1xyXG4gICAgICAgICAgY29uc3QgdW5saXN0ZW4gPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aCwgJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBEbyBub3Qgc29ydCBpZiB0aGUgZXZlbnQgdGFyZ2V0IHdhcyB0aGUgcmVzaXphYmxlIGhhbmRsZVxyXG4gICAgICAgICAgICBpZiAodGguY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1yZXNpemFibGUnKSAmJiBldmVudC50YXJnZXQgJiYgKDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLmNsYXNzTGlzdC5jb250YWlucygnaGFuZGxlJykpIHtcclxuICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxldCBkaXJlY3Rpb246IFRhYmxlU29ydERpcmVjdGlvbjtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aC5jbGFzc0xpc3QuY29udGFpbnMoJ2lzLXNvcnRlZC1kZXNjJykpIHtcclxuICAgICAgICAgICAgICBkaXJlY3Rpb24gPSAnYXNjJztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkaXJlY3Rpb24gPSAnZGVzYyc7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMub25Tb3J0KHsgZmllbGQsIGRpcmVjdGlvbiB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgICAgLy8gU3RvcmUgdW5saXN0ZW4gZnVuY3Rpb24gdG8gcmVtb3ZlIGxpc3RlbmVyIHdoZW4gY29tcG9uZW50IGlzIGRlc3Ryb3llZFxyXG4gICAgICAgICAgdGhpcy51bmxpc3RlbmVycy5wdXNoKHVubGlzdGVuKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihgZGF0YS1zb3J0ZmllbGQgYXR0cmlidXRlIHdhcyBub3QgYXNzaWduZWQgYSB2YWx1ZS5gLCB0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBTZXQgdGhlIGluaXRpYWwgc29ydFxyXG4gICAgaWYgKHRoaXMuc29ydCkge1xyXG4gICAgICB0aGlzLm9uU29ydCh0aGlzLnNvcnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmluZCB0aGUgc29ydGVkIGNvbHVtbiBhbmQgYXBwbHkgdGhlIGRlc2Mgb3IgYXNjIGNsYXNzIGluIG9yZGVyXHJcbiAgICogdG8gc2hvdyB0aGUgY29ycmVjdCBzb3J0IGljb24uIElmIGFub3RoZXIgZmllbGQgd2FzIHNvcnRlZCwgcmVzZXQgaXQuXHJcbiAgICogRW1pdCB0aGUgY3VycmVudCBmaWVsZCBhbmQgZGlyZWN0aW9uIG9mIHRoZSBzb3J0ZWQgY29sdW1uXHJcbiAgICogQHBhcmFtIGZpZWxkIFxyXG4gICAqL1xyXG4gIHByaXZhdGUgb25Tb3J0KHNvcnQ6IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsZWFyU29ydCgpO1xyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KHNvcnQpKSB7XHJcbiAgICAgIHNvcnQuZm9yRWFjaChzID0+IHRoaXMuYXBwbHlTb3J0KHMpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYXBwbHlTb3J0KHNvcnQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY3VycmVudFNvcnQgPSBjbG9uZURlZXAoc29ydCk7XHJcbiAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRTb3J0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xlYXJTb3J0KCkge1xyXG4gICAgT2JqZWN0LnZhbHVlcyh0aGlzLnNvcnRhYmxlQ29scykuZm9yRWFjaCh0aCA9PiB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGgsIGBpcy1zb3J0ZWQtYXNjYCk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGgsIGBpcy1zb3J0ZWQtZGVzY2ApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5U29ydChzb3J0OiBUYWJsZVNvcnQpIHtcclxuICAgIGNvbnN0IHRoID0gdGhpcy5zb3J0YWJsZUNvbHNbc29ydC5maWVsZF07XHJcbiAgICBpZiAoIXRoKSB7IHJldHVybjsgfVxyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGgsIGBpcy1zb3J0ZWQtJHtzb3J0LmRpcmVjdGlvbn1gKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdFNlbGVjdGFibGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNvbnRleHQhLnJvd0NoZWNrYm94ZXMudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcclxuICAgICkuc3Vic2NyaWJlKCh2YWx1ZTogYm9vbGVhbltdKSA9PiB7XHJcbiAgICAgIHRoaXMuaGFzU2VsZWN0aW9uID0gdmFsdWUuc29tZSh2ID0+IHYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzZWxlY3RhYmxlLXRhYmxlLXRvb2xiYXJcIlxyXG4gICAgICpuZ0lmPVwiaGFzU2VsZWN0aW9uICYmIHNlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzZWxlY3Rpb25Ub29sYmFyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJ7e2lkfX0tc2Nyb2xsLWNvbnRhaW5lclwiIFxyXG4gICAgIGNsYXNzPVwidGFibGUtc2Nyb2xsLWNvbnRhaW5lclwiXHJcbiAgICAgY2RrU2Nyb2xsYWJsZT5cclxuICA8dGFibGUgY2xhc3M9XCJtYWluLXRhYmxlXCJcclxuICAgICAgICAgaWQ9XCJ7e2lkfX1cIlxyXG4gICAgICAgICBbZWNSZXNpemFibGVUYWJsZV09XCJyZXNpemFibGVcIlxyXG4gICAgICAgICBbY29udGFpbmVyRWxdPVwiZWxcIlxyXG4gICAgICAgICBbc29ydGFibGVUYWJsZV09XCJzb3J0YWJsZVwiXHJcbiAgICAgICAgIFtyZXNpemFibGVDb2x1bW5zXT1cInJlc2l6YWJsZUNvbHVtbnNcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L3RhYmxlPlxyXG48L2Rpdj4iXX0=
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQW9ELGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdPLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQWV2RSxNQUFNLE9BQU8sY0FBYztJQTRHekIsWUFBb0IsUUFBbUIsRUFBUyxFQUFjO1FBQTFDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBMUdyRCxPQUFFLEdBQUcsRUFBRSxDQUFDO1FBRWpCOzs7V0FHRztRQUVNLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFFNUI7OztXQUdHO1FBRU0sY0FBUyxHQUFHLEtBQUssQ0FBQztRQUUzQjs7OztXQUlHO1FBRU0sY0FBUyxHQUFHLEtBQUssQ0FBQztRQUUzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBa0JHO1FBRU0sYUFBUSxHQUFHLEtBQUssQ0FBQztRQWExQixpREFBaUQ7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RUFBQztnQkFHRyxpQkFBaUI7c0JBQWhGLGVBQWU7dUJBQUMsd0JBQXdCLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQUVuQywrQkFBK0I7c0JBQXpELEtBQUs7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGNsb25lRGVlcCwgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBSZXNpemFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL3Jlc2l6YWJsZS1jb2x1bW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVNYXN0ZXJSb3dDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLW1hc3Rlci1yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVTZWxlY3RhYmxlUm93Q29udGV4dCB9IGZyb20gJy4vdGFibGUtc2VsZWN0YWJsZS1yb3cuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCB0eXBlIFRhYmxlU29ydERpcmVjdGlvbiA9ICdkZXNjJyB8ICdhc2MnO1xyXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlU29ydCB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICBkaXJlY3Rpb246IFRhYmxlU29ydERpcmVjdGlvbjtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXR7XHJcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcclxuICBASW5wdXQoKSBpZCA9ICcnO1xyXG5cclxuICAvKipcclxuICAgKiBFbmFibGVzIHRhYmxlIHNjcm9sbGluZyB3aXRoIGEgc3RpY2t5IGhlYWRlciBhbmQgZm9vdGVyLiBVc2VcclxuICAgKiA8dGhlYWQ+IGFuZCA8dGZvb3Q+IGVsZW1lbnRzIGZvciBzdHlsZXMgdG8gYmUgYXBwbGllZCBjb3JyZWN0bHkuIFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2Nyb2xsYWJsZScpXHJcbiAgQElucHV0KCkgc2Nyb2xsYWJsZSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZXMgcmVzaXphYmxlIHRhYmxlIGNvbHVtbnMuIEFwcGx5IHRoZSAnaXMtcmVzaXphYmxlJyBjbGFzc1xyXG4gICAqIHRvIHRoZSA8dGg+IG9mIGEgdGFibGUgY29sdW1uIHRoYW4gY2FuIGJlIHJlc2l6ZWQuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1yZXNpemFibGUnKVxyXG4gIEBJbnB1dCgpIHJlc2l6YWJsZSA9IGZhbHNlO1xyXG4gIFxyXG4gIC8qKiBcclxuICAgKiBUdXJucyBvbiBjb25kZW5zZWQgdGFibGUgc3R5bGluZy4gQnkgZGVmYXVsdCBhIGNvbmRlbnNlZCB0YWJsZVxyXG4gICAqIGhhcyBubyByb3cgYm9yZGVycy4gVG8gc2hvdyBib3JkZXJzLCBhcHBseSB0aGUgJ2hhcy1ib3JkZXJzJyBjbGFzc1xyXG4gICAqIHRvIHRoZSA8ZWMtdGFibGU+IGVsZW1lbnRcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWNvbmRlbnNlZCcpXHJcbiAgQElucHV0KCkgY29uZGVuc2VkID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqIFxyXG4gICAqIEVuYWJsZXMgc29ydGluZyBieSBjbGlja2luZyBvbiB0YWJsZSBjb2x1bW5zLiBUbyBtYWtlIGEgY29sdW1uIHNvcnRhYmxlXHJcbiAgICogYXBwbHkgdGhlIGBkYXRhLXNvcnRhYmxlYCBhdHRyaWJ1dGUgdG8gdGhlIGNvbHVtbnMgYDx0aD5gIGVsZW1lbnQgd2l0aCBcclxuICAgKiB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkIHVzZWQgdG8gc29ydCB0aGUgY29sdW1uLiBXaGVuIGEgY29sdW1uIGlzIGNsaWNrZWRcclxuICAgKiB0aGUgZmllbGRzIGFuZCBjdXJyZW50IHNvcnQgZGlyZWN0aW9uIGlzIGVtaXR0ZWQgZnJvbSB0aGUgYHNvcnRDaGFuZ2VgXHJcbiAgICogb3V0cHV0XHJcbiAgICogXHJcbiAgICogQGV4YW1wbGVcclxuICAgKiBgYGBodG1sXHJcbiAgICogPGVjLXRhYmxlIFtzb3J0YWJsZV09XCJ0cnVlXCIgW3NvcnRdPVwiY3VycmVudFNvcnRcIiAoc29ydENoYW5nZSk9XCJvblNvcnQoJGV2ZW50KVwiPlxyXG4gICAqICA8dGhlYWQ+XHJcbiAgICogICAgPHRoIGRhdGEtc29ydGFibGU9XCJuYW1lXCI+TmFtZTwvdGg+XHJcbiAgICogICAgPHRoIGRhdGEtc29ydGFibGU9XCJxdHlcIj5RdHkuPC90aD5cclxuICAgKiAgICA8dGggZGF0YS1zb3J0YWJsZT1cInByaWNlXCI+UHJpY2U8L3RoPlxyXG4gICAqICA8L3RoZWFkPlxyXG4gICAqICAuLi5cclxuICAgKiA8L2VjLXRhYmxlPlxyXG4gICAqIGBgYFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc29ydGFibGUnKVxyXG4gIEBJbnB1dCgpIHNvcnRhYmxlID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogU2hhcmVkIGNvbnRleHQgb2YgVGFibGVTZWxlY3RhYmxlUm93Q29tcG9uZW50cyBpbiB0aGUgdGFibGUuIFdpbGwgdHVybiBvbiBoaWdobGlnaHRpbmcgb24gcm93IGhvdmVyLlxyXG4gICAqIEFkZCB0aGUgYFRhYmxlU2VsZWN0YWJsZVJvd0NvbXBvbmVudGAgdG8gdGhlIHRhYmxlIGNvbnRlbnQgdG8gYWRkIGNoZWNrYm94ZXMgdG8gZWFjaCByb3cgYW5kIGFzc2lnbiBhIFxyXG4gICAqIFRlbXBsYXRlUmVmIHRvIHRoZSBgW3NlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZV1gIGlucHV0IHRoYXQgaW5jbHVkZXMgYWN0aW9ucyB0byB0YWtlIG9uIHNlbGVjdGVkIGl0ZW1zIFxyXG4gICAqIHRoYXQgd2lsbCBhcHBlYXIgb3ZlciB0aGUgdGFibGUgaGVhZGVyIHdoZW4gMSBvciBtb3JlIHJvd3MgYXJlIHNlbGVjdGVkLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvbkNvbnRleHQ/OiBUYWJsZVNlbGVjdGFibGVSb3dDb250ZXh0O1xyXG5cclxuICAvKiogSW5jbHVkZSBhY3Rpb25zIHRvIGRpc3BsYXkgaW4gYSBiYXIgb3ZlciB0aGUgdGFibGUgaGVhZGVyIHdoZW4gMSBvciBtb3JlIHJvd3MgYXJlIHNlbGVjdGVkLiBSZXF1aXJlcyBgW3NlbGVjdGlvbkNvbnRleHRdYCB0byBiZSBkZWZpbmVkICovXHJcbiAgQElucHV0KCkgc2VsZWN0aW9uVG9vbGJhclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICBcclxuICAvKiogU2V0IHRvIHRydWUgaWYgc2VsZWN0aW9uQ29udGV4dCBpcyBkZWZpbmVkICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zZWxlY3RhYmxlJylcclxuICBASW5wdXQoKSBzZWxlY3RhYmxlID0gZmFsc2U7XHJcblxyXG4gIC8qKiBIaWRlcy9zaG93cyB0aGUgc2VsZWN0aW9uIHRvb2xiYXIgdGVtcGxhdGUgd2hlbiAxIG9yIG1vcmUgcm93cyBpcyBzZWxlY3RlZCAqL1xyXG4gIGhhc1NlbGVjdGlvbiA9IGZhbHNlXHJcblxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZXMgZm9ybSB0YWJsZSBzdHlsaW5nIHRvIGFsbG93IGZvcm0gY29udHJvbHMgaW5zaWRlIHRhYmxlIGNlbGxzLlxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZm9ybS10YWJsZScpXHJcbiAgQElucHV0KCkgaXNGb3JtID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogVGhlIGN1cnJlbnQgc29ydCBmaWVsZCBhbmQgZGlyZWN0aW9uICgnZGVzYycgb3IgJ2FzYycpXHJcbiAgICovXHJcbiAgQElucHV0KCkgc29ydD86IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgbmV3IHNvcnQgdmFsdWUgd2hlbmV2ZXIgYSBzb3J0YWJsZSBjb2x1bW4gaXMgY2xpY2tlZFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBzb3J0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8VGFibGVTb3J0IHwgVGFibGVTb3J0W10+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBUcnVlIGlmIGEgVGFibGVNYXN0ZXJSb3dDb21wb25lbnQgZXhpc3RzIGluIHRoZSB0YWJsZSBjb250ZW50XHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1tYXN0ZXItZGV0YWlsJykgaGFzTWFzdGVyRGV0YWlsUm93cyA9IGZhbHNlO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlTWFzdGVyUm93Q29tcG9uZW50LCB7ZGVzY2VuZGFudHM6IHRydWV9KSBtYXN0ZXJSb3dzITogUXVlcnlMaXN0PFRhYmxlTWFzdGVyUm93Q29tcG9uZW50PjtcclxuXHJcbiAgcHVibGljIHJlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuICBAQ29udGVudENoaWxkcmVuKFJlc2l6YWJsZUNvbHVtbkNvbXBvbmVudCwge2Rlc2NlbmRhbnRzOiB0cnVlfSkgX3Jlc2l6YWJsZUNvbHVtbnMhOiBRdWVyeUxpc3Q8UmVzaXphYmxlQ29sdW1uQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KCdyZXNpemFibGVDb2x1bW5zJykgc2VhcmNoYWJsZVRhYmxlUmVzaXphYmxlQ29sdW1ucz86IFF1ZXJ5TGlzdDxSZXNpemFibGVDb2x1bW5Db21wb25lbnQ+O1xyXG5cclxuICAvKipcclxuICAgKiBVbmxpc3RlbiBmdW5jdGlvbiByZXR1cm5lZCBieSBgcmVuZGVyZXIubGlzdGVuKClgIHRoYXQgYXJlIGNhbGxlZFxyXG4gICAqIE9uRGVzdHJveSB0byBjbGVhbiB1cCBhbGwgbGlzdGVuZXJzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB1bmxpc3RlbmVyczogKCgpID0+IHZvaWQpW10gPSBbXTtcclxuICBcclxuICAvKiogVGhlIGN1cnJlbnQgc29ydCB2YWx1ZSAqL1xyXG4gIHByaXZhdGUgY3VycmVudFNvcnQ/OiBUYWJsZVNvcnQgfCBUYWJsZVNvcnRbXTtcclxuICBcclxuICAvKiogQSBtYXAgb2Ygc29ydGFibGUgYDx0aD5gIGVsZW1lbnRzICovXHJcbiAgcHJpdmF0ZSBzb3J0YWJsZUNvbHM6IHtbZmllbGQ6IHN0cmluZ106IEhUTUxUYWJsZUhlYWRlckNlbGxFbGVtZW50fSA9IHt9O1xyXG5cclxuICBwcml2YXRlIGRlc3Ryb3llZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNvcnRhYmxlICYmIGNoYW5nZXMuc29ydCAmJiBjaGFuZ2VzLnNvcnQuY3VycmVudFZhbHVlICYmICFjaGFuZ2VzLnNvcnQuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgY29uc3QgbmV3VmFsdWU6IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdID0gY2hhbmdlcy5zb3J0LmN1cnJlbnRWYWx1ZTtcclxuICAgICAgaWYgKCF0aGlzLmN1cnJlbnRTb3J0IHx8ICFpc0VxdWFsKG5ld1ZhbHVlLCB0aGlzLmN1cnJlbnRTb3J0KSl7XHJcbiAgICAgICAgdGhpcy5vblNvcnQobmV3VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmhhc01hc3RlckRldGFpbFJvd3MgPSAhIXRoaXMubWFzdGVyUm93cy5sZW5ndGg7XHJcbiAgICBcclxuICAgIHRoaXMubWFzdGVyUm93cy5jaGFuZ2VzLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcclxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5oYXNNYXN0ZXJEZXRhaWxSb3dzID0gISF0aGlzLm1hc3RlclJvd3MubGVuZ3RoO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5yZXNpemFibGVDb2x1bW5zID0gdGhpcy5zZWFyY2hhYmxlVGFibGVSZXNpemFibGVDb2x1bW5zIHx8IHRoaXMuX3Jlc2l6YWJsZUNvbHVtbnM7XHJcbiAgfVxyXG4gIFxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNvcnRhYmxlKSB7XHJcbiAgICAgIHRoaXMuaW5pdFNvcnRhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0YWJsZSkge1xyXG4gICAgICB0aGlzLmluaXRTZWxlY3RhYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudW5saXN0ZW5lcnMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMudW5saXN0ZW5lcnMuZm9yRWFjaCh1bmxpc3RlbiA9PiB1bmxpc3RlbigpKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95ZWQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhbGwgZWxlbWVudHMgaW5zaWRlIHRoZSBob3N0IGVsZW1lbnQgdGhhdCBtYXRjaCBhIHNlbGVjdG9yIFxyXG4gICAqIEBwYXJhbSBzZWxlY3RvciAtIEFueSB2YWxpZCBzZWxlY3RvciBmb3IgW3F1ZXJ5U2VsZWN0b3JBbGxdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9Eb2N1bWVudC9xdWVyeVNlbGVjdG9yQWxsKVxyXG4gICAqL1xyXG4gIHByaXZhdGUgcXVlcnlFbGVtZW50czxUPihzZWxlY3Rvcjogc3RyaW5nKTogVFtdIHtcclxuICAgIGNvbnN0IHRhYmxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGFibGUucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvcikpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3RvcmUgYSBgPHRoPmAgZm9yIGVhY2ggc29ydGFibGUgY29sdW1uIGFuZCBhdHRhY2ggYSBjbGlja1xyXG4gICAqIGV2ZW50IGxpc3RlbmVyLiBcclxuICAgKi9cclxuICBwcml2YXRlIGluaXRTb3J0YWJsZSgpOiB2b2lkIHtcclxuICAgIHRoaXMucXVlcnlFbGVtZW50czxIVE1MVGFibGVIZWFkZXJDZWxsRWxlbWVudD4oJ3RoJykuZm9yRWFjaCh0aCA9PiB7XHJcbiAgICAgIGlmICh0aC5oYXNBdHRyaWJ1dGUoJ2RhdGEtc29ydGZpZWxkJykpIHtcclxuICAgICAgICBcclxuICAgICAgICBjb25zdCBmaWVsZCA9IHRoLmdldEF0dHJpYnV0ZSgnZGF0YS1zb3J0ZmllbGQnKTtcclxuICAgICAgICBpZiAoZmllbGQpIHtcclxuICAgICAgICAgIHRoaXMuc29ydGFibGVDb2xzW2ZpZWxkXSA9IHRoO1xyXG4gICAgICAgICAgY29uc3QgdW5saXN0ZW4gPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aCwgJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBEbyBub3Qgc29ydCBpZiB0aGUgZXZlbnQgdGFyZ2V0IHdhcyB0aGUgcmVzaXphYmxlIGhhbmRsZVxyXG4gICAgICAgICAgICBpZiAodGguY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1yZXNpemFibGUnKSAmJiBldmVudC50YXJnZXQgJiYgKDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLmNsYXNzTGlzdC5jb250YWlucygnaGFuZGxlJykpIHtcclxuICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxldCBkaXJlY3Rpb246IFRhYmxlU29ydERpcmVjdGlvbjtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aC5jbGFzc0xpc3QuY29udGFpbnMoJ2lzLXNvcnRlZC1kZXNjJykpIHtcclxuICAgICAgICAgICAgICBkaXJlY3Rpb24gPSAnYXNjJztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkaXJlY3Rpb24gPSAnZGVzYyc7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMub25Tb3J0KHsgZmllbGQsIGRpcmVjdGlvbiB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gIFxyXG4gICAgICAgICAgLy8gU3RvcmUgdW5saXN0ZW4gZnVuY3Rpb24gdG8gcmVtb3ZlIGxpc3RlbmVyIHdoZW4gY29tcG9uZW50IGlzIGRlc3Ryb3llZFxyXG4gICAgICAgICAgdGhpcy51bmxpc3RlbmVycy5wdXNoKHVubGlzdGVuKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihgZGF0YS1zb3J0ZmllbGQgYXR0cmlidXRlIHdhcyBub3QgYXNzaWduZWQgYSB2YWx1ZS5gLCB0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBTZXQgdGhlIGluaXRpYWwgc29ydFxyXG4gICAgaWYgKHRoaXMuc29ydCkge1xyXG4gICAgICB0aGlzLm9uU29ydCh0aGlzLnNvcnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmluZCB0aGUgc29ydGVkIGNvbHVtbiBhbmQgYXBwbHkgdGhlIGRlc2Mgb3IgYXNjIGNsYXNzIGluIG9yZGVyXHJcbiAgICogdG8gc2hvdyB0aGUgY29ycmVjdCBzb3J0IGljb24uIElmIGFub3RoZXIgZmllbGQgd2FzIHNvcnRlZCwgcmVzZXQgaXQuXHJcbiAgICogRW1pdCB0aGUgY3VycmVudCBmaWVsZCBhbmQgZGlyZWN0aW9uIG9mIHRoZSBzb3J0ZWQgY29sdW1uXHJcbiAgICogQHBhcmFtIGZpZWxkIFxyXG4gICAqL1xyXG4gIHByaXZhdGUgb25Tb3J0KHNvcnQ6IFRhYmxlU29ydCB8IFRhYmxlU29ydFtdKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsZWFyU29ydCgpO1xyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KHNvcnQpKSB7XHJcbiAgICAgIHNvcnQuZm9yRWFjaChzID0+IHRoaXMuYXBwbHlTb3J0KHMpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYXBwbHlTb3J0KHNvcnQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY3VycmVudFNvcnQgPSBjbG9uZURlZXAoc29ydCk7XHJcbiAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRTb3J0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xlYXJTb3J0KCkge1xyXG4gICAgT2JqZWN0LnZhbHVlcyh0aGlzLnNvcnRhYmxlQ29scykuZm9yRWFjaCh0aCA9PiB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGgsIGBpcy1zb3J0ZWQtYXNjYCk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGgsIGBpcy1zb3J0ZWQtZGVzY2ApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5U29ydChzb3J0OiBUYWJsZVNvcnQpIHtcclxuICAgIGNvbnN0IHRoID0gdGhpcy5zb3J0YWJsZUNvbHNbc29ydC5maWVsZF07XHJcbiAgICBpZiAoIXRoKSB7IHJldHVybjsgfVxyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGgsIGBpcy1zb3J0ZWQtJHtzb3J0LmRpcmVjdGlvbn1gKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdFNlbGVjdGFibGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkNvbnRleHQhLnJvd0NoZWNrYm94ZXMudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcclxuICAgICkuc3Vic2NyaWJlKCh2YWx1ZTogYm9vbGVhbltdKSA9PiB7XHJcbiAgICAgIHRoaXMuaGFzU2VsZWN0aW9uID0gdmFsdWUuc29tZSh2ID0+IHYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzZWxlY3RhYmxlLXRhYmxlLXRvb2xiYXJcIlxyXG4gICAgICpuZ0lmPVwiaGFzU2VsZWN0aW9uICYmIHNlbGVjdGlvblRvb2xiYXJUZW1wbGF0ZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzZWxlY3Rpb25Ub29sYmFyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJ7e2lkfX0tc2Nyb2xsLWNvbnRhaW5lclwiIFxyXG4gICAgIGNsYXNzPVwidGFibGUtc2Nyb2xsLWNvbnRhaW5lclwiXHJcbiAgICAgY2RrU2Nyb2xsYWJsZT5cclxuICA8dGFibGUgY2xhc3M9XCJtYWluLXRhYmxlXCJcclxuICAgICAgICAgaWQ9XCJ7e2lkfX1cIlxyXG4gICAgICAgICBbZWNSZXNpemFibGVUYWJsZV09XCJyZXNpemFibGVcIlxyXG4gICAgICAgICBbY29udGFpbmVyRWxdPVwiZWxcIlxyXG4gICAgICAgICBbc29ydGFibGVUYWJsZV09XCJzb3J0YWJsZVwiXHJcbiAgICAgICAgIFtyZXNpemFibGVDb2x1bW5zXT1cInJlc2l6YWJsZUNvbHVtbnNcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L3RhYmxlPlxyXG48L2Rpdj4iXX0=
|
@@ -15,4 +15,4 @@ export class Tag {
|
|
15
15
|
}
|
16
16
|
}
|
17
17
|
;
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvdGFncy90YWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsZ0VBQWdFO0FBQ2hFLE1BQU0sT0FBTyxHQUFHO0lBbUJkLFlBQVksS0FBYSxFQUFFLElBQWMsRUFBRSxTQUFrQixFQUFFLElBQWEsRUFBRSxhQUF1QixFQUFFLE9BQWdCLEVBQUUsR0FBWSxFQUFFLE1BQW1CO1FBRm5KLFdBQU0sR0FBZ0IsT0FBTyxDQUFDO1FBR25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsSUFBSSxLQUFLLENBQUM7UUFDNUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxPQUFPLENBQUM7UUFFaEMsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIFRhZyB0eXBlIHVzZWQgdG8gc3R5bGUgdGhlIHRhZyAqL1xyXG5leHBvcnQgdHlwZSBUYWdUeXBlID0gXCJpbmZvXCIgfCBcInN1Y2Nlc3NcIiB8IFwid2FybmluZ1wiIHwgXCJkYW5nZXJcIiB8IFwiYWNjZW50XCIgfCBcImNoYXJnZWJhY2tcIiB8IFwiYWNjcnVhbFwiIHwgXCJpbnZlcnRlZFwiIHwgXCJzeXN0ZW1cIjtcclxuXHJcbi8qKiBMaW5rIHRhcmdldCBvcHRpb25zLCBzaGFyZWQgYW1vbmdzdCB0YWcsIG1lbnUgYW5kIGl0ZW0gZGlzcGxheSAqL1xyXG5leHBvcnQgdHlwZSBMaW5rVGFyZ2V0ID0gJ19zZWxmJyB8ICdfYmxhbmsnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xyXG5cclxuLyoqIFRhZyBjb250YWlucyBhIGxhYmVsIGFuZCB0eXBlLiBUeXBlIGlzIGRlZmF1bHQgYnkgZGVmYXVsdCAqL1xyXG5leHBvcnQgY2xhc3MgVGFnIHtcclxuICBwdWJsaWMgbGFiZWw6IHN0cmluZztcclxuXHJcbiAgcHVibGljIHR5cGU6IFRhZ1R5cGU7XHJcblxyXG4gIHB1YmxpYyBpY29uPzogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgaXNEaXNtaXNzYWJsZT86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBDU1MgY2xhc3NlcyB0byBhcHBseSB0byB0YWcgZm9yIGN1c3RvbSBzdHlsaW5nICovXHJcbiAgcHVibGljIGNsYXNzTGlzdD86IHN0cmluZztcclxuXHJcbiAgcHVibGljIHRvb2x0aXA/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBXaGVuIHNldCBhIGh5cGVybGluayB3aWxsIGJlIHNob3duIGxpbmtpbmcgdG8gdGhlIHZhbHVlIHNldCAqL1xyXG4gIHB1YmxpYyB1cmw/OiBzdHJpbmc7XHJcblxyXG4gIHB1YmxpYyB0YXJnZXQ/OiBMaW5rVGFyZ2V0ID0gJ19zZWxmJztcclxuXHJcbiAgY29uc3RydWN0b3IobGFiZWw6IHN0cmluZywgdHlwZT86IFRhZ1R5cGUsIGNsYXNzTGlzdD86IHN0cmluZywgaWNvbj86IHN0cmluZywgaXNEaXNtaXNzYWJsZT86IGJvb2xlYW4sIHRvb2x0aXA/OiBzdHJpbmcsIHVybD86IHN0cmluZywgdGFyZ2V0PzogTGlua1RhcmdldCApIHtcclxuICAgIHRoaXMubGFiZWwgPSBsYWJlbDtcclxuICAgIHRoaXMudHlwZSA9IHR5cGUgfHwgJ2luZm8nO1xyXG4gICAgdGhpcy5pY29uID0gaWNvbjtcclxuICAgIHRoaXMuaXNEaXNtaXNzYWJsZSA9IGlzRGlzbWlzc2FibGUgPz8gZmFsc2U7XHJcbiAgICB0aGlzLnRvb2x0aXAgPSB0b29sdGlwO1xyXG4gICAgdGhpcy51cmwgPSB1cmw7XHJcbiAgICB0aGlzLnRhcmdldCA9IHRhcmdldCB8fCAnX3NlbGYnO1xyXG5cclxuICAgIGlmIChjbGFzc0xpc3QpIHtcclxuICAgICAgdGhpcy5jbGFzc0xpc3QgPSBjbGFzc0xpc3Q7XHJcbiAgICB9XHJcbiAgfVxyXG59OyJdfQ==
|