@one-grid-core/angular 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -9
- package/esm2022/lib/components/one-grid/one-grid.component.mjs +244 -11
- package/esm2022/lib/components/one-grid-body/one-grid-body.component.mjs +446 -34
- package/esm2022/lib/components/one-grid-cell-currency/one-grid-cell-currency.component.mjs +6 -5
- package/esm2022/lib/components/one-grid-cell-group-renderer/one-grid-cell-group-renderer.component.mjs +3 -3
- package/esm2022/lib/components/one-grid-cell-option-menu/one-grid-cell-option-menu.component.mjs +3 -3
- package/esm2022/lib/components/one-grid-checkbox/one-grid-checkbox.component.mjs +7 -18
- package/esm2022/lib/components/one-grid-checkbox-header/one-grid-checkbox-header.component.mjs +6 -6
- package/esm2022/lib/components/one-grid-header/one-grid-header.component.mjs +221 -17
- package/esm2022/lib/components/one-grid-header-menu/one-grid-header-menu.component.mjs +137 -0
- package/esm2022/lib/components/one-grid-pagination/one-grid-pagination.component.mjs +6 -5
- package/esm2022/lib/components/one-grid-row-action/one-grid-row-action.component.mjs +4 -4
- package/esm2022/lib/components/one-grid-row-drag-handle/one-grid-row-drag-handle.component.mjs +5 -3
- package/esm2022/lib/components/one-grid-status/one-grid-status.component.mjs +4 -4
- package/esm2022/lib/core/directives/one-cell-input-validator.directive.mjs +3 -3
- package/esm2022/lib/core/directives/one-cell-renderer-component.directive.mjs +3 -3
- package/esm2022/lib/core/directives/one-cell-text-expand.directive.mjs +3 -3
- package/esm2022/lib/core/icons/one-grid-icons.mjs +38 -0
- package/esm2022/lib/core/instants/one-grid-api.class.mjs +296 -3
- package/esm2022/lib/core/models/one-column-def-types.model.mjs +1 -1
- package/esm2022/lib/core/models/one-event-types.model.mjs +1 -1
- package/esm2022/lib/core/models/one-filter.model.mjs +1 -1
- package/esm2022/lib/core/pipes/aria-sort.pipe.mjs +31 -0
- package/esm2022/lib/core/pipes/cell-action-button-enable.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-editable.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-invalid.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-key.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-level-padding.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-selected.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/cell-state-renderer.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/column-sort-state.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-checked.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-disabled.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/header-checkbox-indeterminate.pipe.mjs +3 -3
- package/esm2022/lib/core/services/og-column.service.mjs +153 -30
- package/esm2022/lib/core/services/one-grid-cell.service.mjs +39 -15
- package/esm2022/lib/helpers/one-cell.helper.mjs +30 -1
- package/esm2022/lib/helpers/one-column-def.helper.mjs +16 -1
- package/esm2022/lib/helpers/one-csv.helper.mjs +58 -0
- package/esm2022/lib/helpers/one-filter.helper.mjs +11 -1
- package/esm2022/lib/helpers/one-row-grouping.helper.mjs +103 -0
- package/esm2022/lib/index.mjs +3 -1
- package/esm2022/lib/one-grid.module.mjs +24 -114
- package/fesm2022/one-grid-core-angular.mjs +2322 -823
- package/fesm2022/one-grid-core-angular.mjs.map +1 -1
- package/lib/components/one-grid/one-grid.component.d.ts +101 -4
- package/lib/components/one-grid-body/one-grid-body.component.d.ts +83 -2
- package/lib/components/one-grid-cell-currency/one-grid-cell-currency.component.d.ts +1 -1
- package/lib/components/one-grid-cell-group-renderer/one-grid-cell-group-renderer.component.d.ts +1 -1
- package/lib/components/one-grid-cell-option-menu/one-grid-cell-option-menu.component.d.ts +1 -1
- package/lib/components/one-grid-checkbox/one-grid-checkbox.component.d.ts +1 -1
- package/lib/components/one-grid-checkbox-header/one-grid-checkbox-header.component.d.ts +1 -1
- package/lib/components/one-grid-header/one-grid-header.component.d.ts +69 -4
- package/lib/components/one-grid-header-menu/one-grid-header-menu.component.d.ts +52 -0
- package/lib/components/one-grid-pagination/one-grid-pagination.component.d.ts +1 -1
- package/lib/components/one-grid-row-action/one-grid-row-action.component.d.ts +1 -1
- package/lib/components/one-grid-row-drag-handle/one-grid-row-drag-handle.component.d.ts +1 -1
- package/lib/components/one-grid-status/one-grid-status.component.d.ts +1 -1
- package/lib/core/directives/one-cell-input-validator.directive.d.ts +1 -1
- package/lib/core/directives/one-cell-renderer-component.directive.d.ts +1 -1
- package/lib/core/directives/one-cell-text-expand.directive.d.ts +1 -1
- package/lib/core/icons/one-grid-icons.d.ts +35 -0
- package/lib/core/instants/one-grid-api.class.d.ts +115 -1
- package/lib/core/models/one-column-def-types.model.d.ts +77 -2
- package/lib/core/models/one-event-types.model.d.ts +19 -0
- package/lib/core/models/one-filter.model.d.ts +8 -1
- package/lib/core/pipes/aria-sort.pipe.d.ts +15 -0
- package/lib/core/pipes/cell-action-button-enable.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-editable.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-invalid.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-key.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-level-padding.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-selected.pipe.d.ts +1 -1
- package/lib/core/pipes/cell-state-renderer.pipe.d.ts +1 -1
- package/lib/core/pipes/column-sort-state.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-checked.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-disabled.pipe.d.ts +1 -1
- package/lib/core/pipes/header-checkbox-indeterminate.pipe.d.ts +1 -1
- package/lib/core/services/og-column.service.d.ts +46 -2
- package/lib/core/services/one-grid-cell.service.d.ts +16 -3
- package/lib/helpers/one-cell.helper.d.ts +17 -0
- package/lib/helpers/one-column-def.helper.d.ts +9 -0
- package/lib/helpers/one-csv.helper.d.ts +29 -0
- package/lib/helpers/one-row-grouping.helper.d.ts +35 -0
- package/lib/index.d.ts +2 -0
- package/lib/one-grid.module.d.ts +15 -37
- package/package.json +1 -1
- package/scss/_one-grid.scss +127 -0
- package/esm2022/lib/core/pipes/cell-action-button-visible.pipe.mjs +0 -17
- package/esm2022/lib/core/pipes/cell-field-value-empty.pipe.mjs +0 -26
- package/esm2022/lib/core/pipes/cell-field-value.pipe.mjs +0 -25
- package/esm2022/lib/core/pipes/cell-field.pipe.mjs +0 -20
- package/esm2022/lib/core/pipes/cell-number-value.pipe.mjs +0 -19
- package/esm2022/lib/core/pipes/cell-state-group-renderer.pipe.mjs +0 -21
- package/esm2022/lib/core/pipes/cell-value-getter.pipe.mjs +0 -23
- package/lib/core/pipes/cell-action-button-visible.pipe.d.ts +0 -9
- package/lib/core/pipes/cell-field-value-empty.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-field-value.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-field.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-number-value.pipe.d.ts +0 -7
- package/lib/core/pipes/cell-state-group-renderer.pipe.d.ts +0 -9
- package/lib/core/pipes/cell-value-getter.pipe.d.ts +0 -9
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
2
|
import { getCellField } from '../../helpers/one-cell.helper';
|
|
3
3
|
import { CellEditablePipe } from '../../core/pipes/cell-editable.pipe';
|
|
4
|
+
import { DecimalPipe } from '@angular/common';
|
|
5
|
+
import { FormsModule } from '@angular/forms';
|
|
6
|
+
import { OneCellInputValidatorDirective } from '../../core/directives/one-cell-input-validator.directive';
|
|
4
7
|
import * as i0 from "@angular/core";
|
|
5
8
|
import * as i1 from "../../core/services/one-grid-cell.service";
|
|
6
9
|
import * as i2 from "../../core/services/one-grid-event.service";
|
|
7
10
|
import * as i3 from "@angular/forms";
|
|
8
|
-
import * as i4 from "../../core/directives/one-cell-input-validator.directive";
|
|
9
|
-
import * as i5 from "@angular/common";
|
|
10
11
|
export class OneGridCellCurrencyComponent {
|
|
11
12
|
constructor(cellService, eventService) {
|
|
12
13
|
this.cellService = cellService;
|
|
@@ -79,12 +80,12 @@ export class OneGridCellCurrencyComponent {
|
|
|
79
80
|
this.unsubscribe?.();
|
|
80
81
|
}
|
|
81
82
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellCurrencyComponent, deps: [{ token: i1.OneGridCellService }, { token: i2.OneGridEventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
82
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellCurrencyComponent, selector: "app-one-grid-cell-currency", inputs: { allowedEdit: "allowedEdit" }, ngImport: i0, template: "<div class=\"cell-wrapper\"\n [class.editable]=\"isEditable\"\n [attr.data-cell-id]=\"getCellField(params.node?.rowIndex, params.columnDef?.field)\"\n [style.min-width.px]=\"params.columnDef?.minWidth\"\n [style.max-width.px]=\"params.columnDef?.maxWidth\">\n\n @if (params.node?.editing?.[params.columnDef?.field]) {\n <input class=\"one-cell-input\"\n name=\"{{ params.node?.rowIndex }}_{{ params.columnDef?.field }}\"\n oneCellInputValidator\n validationType=\"number\"\n [placeholder]=\"params.columnDef?.cellRendererParams?.placeholder || ''\"\n type=\"text\"\n [(ngModel)]=\"value\"\n [maxLength]=\"250\"\n (blur)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.enter)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.esc)=\"cancelEdit(params.node, params.columnDef)\" />\n }\n @else {\n <div class=\"d-flex justify-content-between px-2 pt-1\"\n [class.one-cell-allowed-edit-active]=\"isEditable\"\n (dblclick)=\"startEdit(params.node, params.columnDef)\">\n <span class=\"currency-code\" style=\"font-weight: bold;\">{{ this.params?.data?.currency?.currencyCode || 'USD' }}</span>\n <span class=\"amount-value\">\n {{ result | number:(this.params?.field === 'amount' ? '1.3-3' : '1.2-2') }}\n </span>\n </div>\n }\n</div>\n", styles: [".one-cell-input{position:absolute;top:0;left:0;width:calc(100% - 1px);height:100%;padding:0 6px;background-color:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754));border-radius:var(--one-grid-action-btn-radius, 4px);z-index:5}.one-cell-input:focus{background:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754))}:host{display:block;width:100%;height:100%;position:relative}.cell-wrapper{position:relative;width:100%;height:100%}.cell-wrapper.editable:before{content:\"\";position:absolute;top:4px;right:4px;width:4px;height:4px;background-color:var(--one-grid-success, var(--bs-success, #198754));border-radius:50%;z-index:1;opacity:.5;transition:opacity .2s ease}.cell-wrapper.editable:hover:before{opacity:1}\n"], dependencies: [{ kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type:
|
|
83
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellCurrencyComponent, isStandalone: true, selector: "app-one-grid-cell-currency", inputs: { allowedEdit: "allowedEdit" }, ngImport: i0, template: "<div class=\"cell-wrapper\"\n [class.editable]=\"isEditable\"\n [attr.data-cell-id]=\"getCellField(params.node?.rowIndex, params.columnDef?.field)\"\n [style.min-width.px]=\"params.columnDef?.minWidth\"\n [style.max-width.px]=\"params.columnDef?.maxWidth\">\n\n @if (params.node?.editing?.[params.columnDef?.field]) {\n <input class=\"one-cell-input\"\n name=\"{{ params.node?.rowIndex }}_{{ params.columnDef?.field }}\"\n oneCellInputValidator\n validationType=\"number\"\n [placeholder]=\"params.columnDef?.cellRendererParams?.placeholder || ''\"\n type=\"text\"\n [(ngModel)]=\"value\"\n [maxLength]=\"250\"\n (blur)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.enter)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.esc)=\"cancelEdit(params.node, params.columnDef)\" />\n }\n @else {\n <div class=\"d-flex justify-content-between px-2 pt-1\"\n [class.one-cell-allowed-edit-active]=\"isEditable\"\n (dblclick)=\"startEdit(params.node, params.columnDef)\">\n <span class=\"currency-code\" style=\"font-weight: bold;\">{{ this.params?.data?.currency?.currencyCode || 'USD' }}</span>\n <span class=\"amount-value\">\n {{ result | number:(this.params?.field === 'amount' ? '1.3-3' : '1.2-2') }}\n </span>\n </div>\n }\n</div>\n", styles: [".one-cell-input{position:absolute;top:0;left:0;width:calc(100% - 1px);height:100%;padding:0 6px;background-color:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754));border-radius:var(--one-grid-action-btn-radius, 4px);z-index:5}.one-cell-input:focus{background:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754))}:host{display:block;width:100%;height:100%;position:relative}.cell-wrapper{position:relative;width:100%;height:100%}.cell-wrapper.editable:before{content:\"\";position:absolute;top:4px;right:4px;width:4px;height:4px;background-color:var(--one-grid-success, var(--bs-success, #198754));border-radius:50%;z-index:1;opacity:.5;transition:opacity .2s ease}.cell-wrapper.editable:hover:before{opacity:1}\n"], dependencies: [{ kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: OneCellInputValidatorDirective, selector: "[oneCellInputValidator]", inputs: ["validationType", "regex"] }] }); }
|
|
83
84
|
}
|
|
84
85
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellCurrencyComponent, decorators: [{
|
|
85
86
|
type: Component,
|
|
86
|
-
args: [{ standalone:
|
|
87
|
+
args: [{ standalone: true, imports: [DecimalPipe, FormsModule, OneCellInputValidatorDirective], selector: 'app-one-grid-cell-currency', template: "<div class=\"cell-wrapper\"\n [class.editable]=\"isEditable\"\n [attr.data-cell-id]=\"getCellField(params.node?.rowIndex, params.columnDef?.field)\"\n [style.min-width.px]=\"params.columnDef?.minWidth\"\n [style.max-width.px]=\"params.columnDef?.maxWidth\">\n\n @if (params.node?.editing?.[params.columnDef?.field]) {\n <input class=\"one-cell-input\"\n name=\"{{ params.node?.rowIndex }}_{{ params.columnDef?.field }}\"\n oneCellInputValidator\n validationType=\"number\"\n [placeholder]=\"params.columnDef?.cellRendererParams?.placeholder || ''\"\n type=\"text\"\n [(ngModel)]=\"value\"\n [maxLength]=\"250\"\n (blur)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.enter)=\"stopEdit(params.node, params.columnDef, $event)\"\n (keydown.esc)=\"cancelEdit(params.node, params.columnDef)\" />\n }\n @else {\n <div class=\"d-flex justify-content-between px-2 pt-1\"\n [class.one-cell-allowed-edit-active]=\"isEditable\"\n (dblclick)=\"startEdit(params.node, params.columnDef)\">\n <span class=\"currency-code\" style=\"font-weight: bold;\">{{ this.params?.data?.currency?.currencyCode || 'USD' }}</span>\n <span class=\"amount-value\">\n {{ result | number:(this.params?.field === 'amount' ? '1.3-3' : '1.2-2') }}\n </span>\n </div>\n }\n</div>\n", styles: [".one-cell-input{position:absolute;top:0;left:0;width:calc(100% - 1px);height:100%;padding:0 6px;background-color:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754));border-radius:var(--one-grid-action-btn-radius, 4px);z-index:5}.one-cell-input:focus{background:var(--one-grid-input-bg, var(--bs-input-bg, #fff));border:1px solid var(--one-grid-success, var(--bs-success, #198754))}:host{display:block;width:100%;height:100%;position:relative}.cell-wrapper{position:relative;width:100%;height:100%}.cell-wrapper.editable:before{content:\"\";position:absolute;top:4px;right:4px;width:4px;height:4px;background-color:var(--one-grid-success, var(--bs-success, #198754));border-radius:50%;z-index:1;opacity:.5;transition:opacity .2s ease}.cell-wrapper.editable:hover:before{opacity:1}\n"] }]
|
|
87
88
|
}], ctorParameters: () => [{ type: i1.OneGridCellService }, { type: i2.OneGridEventService }], propDecorators: { allowedEdit: [{
|
|
88
89
|
type: Input
|
|
89
90
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2VsbC1jdXJyZW5jeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1jdXJyZW5jeS9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5L29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7O0FBUXZFLE1BQU0sT0FBTyw0QkFBNEI7SUFXdkMsWUFDVSxXQUErQixFQUMvQixZQUFpQztRQURqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBWDNDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFHVixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUV0QyxpQkFBWSxHQUFHLFlBQVksQ0FBQztRQUVwQixxQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFLOUMsQ0FBQztJQUVMLE9BQU8sQ0FBQyxNQUE2QjtRQUVuQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDO1FBRXZFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQW1DLEVBQUUsRUFBRTtZQUNoSCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUVsRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDbEcsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUE2QjtRQUNuQyxvREFBb0Q7UUFDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQztRQUV2RSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUU5RCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQzVCLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxDQUFDLElBQXFCLEVBQUUsTUFBeUI7UUFFeEQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksSUFBSSxFQUFFLENBQUM7WUFFVCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7WUFFbEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFFZCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFtQixrQkFBa0IsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFFOUgsSUFBSSxLQUFLLEVBQUUsQ0FBQztvQkFFVixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBRWQsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztvQkFFMUIsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7d0JBRTNDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDdEQsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ1QsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsSUFBcUIsRUFBRSxNQUF5QixFQUFFLEtBQVU7UUFFbkUsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUVULElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUVoRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBRW5DLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFO2dCQUNsRCxJQUFJLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxJQUFJO2dCQUNWLE1BQU0sRUFBRSxNQUFNO2FBQ2YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsSUFBcUIsRUFBRSxNQUF5QjtRQUV6RCxJQUFJLElBQUksRUFBRSxDQUFDO1lBRVQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUVULElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7K0dBaEhVLDRCQUE0QjttR0FBNUIsNEJBQTRCLDBHQ2Z6QywwNENBOEJBOzs0RkRmYSw0QkFBNEI7a0JBTnhDLFNBQVM7aUNBQ0ksS0FBSyxZQUNQLDRCQUE0Qjt5SEFTN0IsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENlbGxTdGF0ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS1ldmVudC10eXBlcy5tb2RlbCc7XG5pbXBvcnQgeyBPbmVDZWxsUmVuZGVyZXJQYXJhbXMsIE9uZUNvbHVtbkRlZiB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS1jb2x1bW4tZGVmLXR5cGVzLm1vZGVsJztcbmltcG9ydCB7IE9uZUdyaWRDZWxsU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvb25lLWdyaWQtY2VsbC5zZXJ2aWNlJztcbmltcG9ydCB7IE9uZUdyaWRFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL29uZS1ncmlkLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgT25lUm93Tm9kZSB9IGZyb20gJy4uLy4uL2NvcmUvaW5zdGFudHMvb25lLXJvdy1ub2RlLmNsYXNzJztcbmltcG9ydCB7IGdldENlbGxGaWVsZCB9IGZyb20gJy4uLy4uL2hlbHBlcnMvb25lLWNlbGwuaGVscGVyJztcbmltcG9ydCB7IENlbGxFZGl0YWJsZVBpcGUgfSBmcm9tICcuLi8uLi9jb3JlL3BpcGVzL2NlbGwtZWRpdGFibGUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiBmYWxzZSxcbiAgc2VsZWN0b3I6ICdhcHAtb25lLWdyaWQtY2VsbC1jdXJyZW5jeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRDZWxsQ3VycmVuY3lDb21wb25lbnQge1xuICBcbiAgdmFsdWU6IHN0cmluZyA9ICcnO1xuICByZXN1bHQ6IGFueTtcbiAgcGFyYW1zITogT25lQ2VsbFJlbmRlcmVyUGFyYW1zO1xuICBASW5wdXQoKSBhbGxvd2VkRWRpdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldENlbGxGaWVsZCA9IGdldENlbGxGaWVsZDtcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZT86ICgpID0+IHZvaWQ7XG4gIHByaXZhdGUgY2VsbEVkaXRhYmxlUGlwZSA9IG5ldyBDZWxsRWRpdGFibGVQaXBlKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZWxsU2VydmljZTogT25lR3JpZENlbGxTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBPbmVHcmlkRXZlbnRTZXJ2aWNlXG4gICkgeyB9XG5cbiAgb25lSW5pdChwYXJhbXM6IE9uZUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuXG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy5kYXRhW3BhcmFtcy5jb2x1bW5EZWYuZmllbGRdO1xuICAgIHRoaXMucmVzdWx0ID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLmFsbG93ZWRFZGl0ID0gcGFyYW1zLmNvbnRleHQuY29tcG9uZW50UGFyZW50LmFsbG93ZWRFZGl0IHx8IGZhbHNlO1xuXG4gICAgdGhpcy51bnN1YnNjcmliZSA9IHRoaXMuZXZlbnRTZXJ2aWNlLmFkZEV2ZW50TGlzdGVuZXIoJ2NlbGxTdGF0ZUNoYW5nZWQnLCAocGF5bG9hZDogQ2VsbFN0YXRlQ2hhbmdlZEV2ZW50PGFueT4pID0+IHtcbiAgICAgIGlmICh0aGlzLnBhcmFtcy5ub2RlLnJvd0lkID09PSBwYXlsb2FkLm5vZGUucm93SWQpIHtcblxuICAgICAgICB0aGlzLnJlc3VsdCA9IHRoaXMuY2VsbFNlcnZpY2UuZ2VuZXJhdGVDZWxsU3RhdGUodGhpcy5wYXJhbXMubm9kZSwgdGhpcy5wYXJhbXMuY29sdW1uRGVmKS52YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJlZnJlc2gocGFyYW1zOiBPbmVDZWxsUmVuZGVyZXJQYXJhbXMpOiBib29sZWFuIHtcbiAgICAvLyBVcGRhdGUgcGFyYW1zIGFuZCB2YWx1ZXMgd2hlbiBncmlkIGRhdGEgcmVmcmVzaGVzXG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy5kYXRhW3BhcmFtcy5jb2x1bW5EZWYuZmllbGRdO1xuICAgIHRoaXMucmVzdWx0ID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLmFsbG93ZWRFZGl0ID0gcGFyYW1zLmNvbnRleHQuY29tcG9uZW50UGFyZW50LmFsbG93ZWRFZGl0IHx8IGZhbHNlO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXQgaXNFZGl0YWJsZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMucGFyYW1zLm5vZGUgfHwgIXRoaXMucGFyYW1zLmNvbHVtbkRlZikgcmV0dXJuIGZhbHNlO1xuXG4gICAgcmV0dXJuIHRoaXMuY2VsbEVkaXRhYmxlUGlwZS50cmFuc2Zvcm0oXG4gICAgICB0aGlzLnBhcmFtcy5ub2RlLmNlbGxTdGF0ZXMsXG4gICAgICB0aGlzLnBhcmFtcy5jb2x1bW5EZWYsXG4gICAgICB0aGlzLnBhcmFtcy5ub2RlLFxuICAgICAgdGhpcy5jZWxsU2VydmljZS5lZGl0YWJsZUZuLFxuICAgICAgdGhpcy5jZWxsU2VydmljZS51cGRhdGFibGVGbixcbiAgICAgIHRoaXMuYWxsb3dlZEVkaXRcbiAgICApO1xuICB9XG5cbiAgc3RhcnRFZGl0KG5vZGU6IE9uZVJvd05vZGU8YW55PiwgY29sdW1uOiBPbmVDb2x1bW5EZWY8YW55Pikge1xuXG4gICAgaWYgKCF0aGlzLmlzRWRpdGFibGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobm9kZSkge1xuXG4gICAgICBub2RlLmVkaXRpbmdbY29sdW1uLmZpZWxkXSA9IHRydWU7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuXG4gICAgICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MSW5wdXRFbGVtZW50PihgW2RhdGEtY2VsbC1pZD1cIiR7Z2V0Q2VsbEZpZWxkKG5vZGUucm93SW5kZXgsIGNvbHVtbi5maWVsZCl9XCJdIGlucHV0YCk7XG5cbiAgICAgICAgaWYgKGlucHV0KSB7XG5cbiAgICAgICAgICBpbnB1dC5mb2N1cygpO1xuXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC52YWx1ZTtcblxuICAgICAgICAgIGlmICh2YWx1ZSAmJiBbXCJ0ZXh0XCJdLmluY2x1ZGVzKGlucHV0LnR5cGUpKSB7XG5cbiAgICAgICAgICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKHZhbHVlLmxlbmd0aCwgdmFsdWUubGVuZ3RoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIDEwKTtcbiAgICB9XG4gIH1cblxuICBzdG9wRWRpdChub2RlOiBPbmVSb3dOb2RlPGFueT4sIGNvbHVtbjogT25lQ29sdW1uRGVmPGFueT4sIGV2ZW50OiBhbnkpIHtcblxuICAgIGlmIChub2RlKSB7XG5cbiAgICAgIG5vZGUuZGF0YVtjb2x1bW4uZmllbGRdID0gZXZlbnQudGFyZ2V0LnZhbHVlID09PSAnJyA/IG51bGwgOiBldmVudC50YXJnZXQudmFsdWU7XG5cbiAgICAgIG5vZGUuY2VsbFN0YXRlcyA9IHRoaXMuY2VsbFNlcnZpY2UuZ2VuZXJhdGVDZWxsU3RhdGVzKG5vZGUpO1xuXG4gICAgICBub2RlLmVkaXRpbmdbY29sdW1uLmZpZWxkXSA9IGZhbHNlO1xuXG4gICAgICB0aGlzLmV2ZW50U2VydmljZS5kaXNwYXRjaEV2ZW50KCdjZWxsU3RhdGVDaGFuZ2VkJywge1xuICAgICAgICBkYXRhOiB7IC4uLm5vZGUuZGF0YSB9LFxuICAgICAgICBub2RlOiBub2RlLFxuICAgICAgICBjb2x1bW46IGNvbHVtblxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgY2FuY2VsRWRpdChub2RlOiBPbmVSb3dOb2RlPGFueT4sIGNvbHVtbjogT25lQ29sdW1uRGVmPGFueT4pIHtcblxuICAgIGlmIChub2RlKSB7XG5cbiAgICAgIG5vZGUuZWRpdGluZ1tjb2x1bW4uZmllbGRdID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICB0aGlzLnVuc3Vic2NyaWJlPy4oKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNlbGwtd3JhcHBlclwiXG4gICAgIFtjbGFzcy5lZGl0YWJsZV09XCJpc0VkaXRhYmxlXCJcbiAgICAgW2F0dHIuZGF0YS1jZWxsLWlkXT1cImdldENlbGxGaWVsZChwYXJhbXMubm9kZT8ucm93SW5kZXgsIHBhcmFtcy5jb2x1bW5EZWY/LmZpZWxkKVwiXG4gICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwicGFyYW1zLmNvbHVtbkRlZj8ubWluV2lkdGhcIlxuICAgICBbc3R5bGUubWF4LXdpZHRoLnB4XT1cInBhcmFtcy5jb2x1bW5EZWY/Lm1heFdpZHRoXCI+XG5cbiAgICBAaWYgKHBhcmFtcy5ub2RlPy5lZGl0aW5nPy5bcGFyYW1zLmNvbHVtbkRlZj8uZmllbGRdKSB7XG4gICAgICA8aW5wdXQgY2xhc3M9XCJvbmUtY2VsbC1pbnB1dFwiXG4gICAgICAgIG5hbWU9XCJ7eyBwYXJhbXMubm9kZT8ucm93SW5kZXggfX1fe3sgcGFyYW1zLmNvbHVtbkRlZj8uZmllbGQgfX1cIlxuICAgICAgICBvbmVDZWxsSW5wdXRWYWxpZGF0b3JcbiAgICAgICAgdmFsaWRhdGlvblR5cGU9XCJudW1iZXJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGFyYW1zLmNvbHVtbkRlZj8uY2VsbFJlbmRlcmVyUGFyYW1zPy5wbGFjZWhvbGRlciB8fCAnJ1wiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAgIFttYXhMZW5ndGhdPVwiMjUwXCJcbiAgICAgICAgKGJsdXIpPVwic3RvcEVkaXQocGFyYW1zLm5vZGUsIHBhcmFtcy5jb2x1bW5EZWYsICRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJzdG9wRWRpdChwYXJhbXMubm9kZSwgcGFyYW1zLmNvbHVtbkRlZiwgJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duLmVzYyk9XCJjYW5jZWxFZGl0KHBhcmFtcy5ub2RlLCBwYXJhbXMuY29sdW1uRGVmKVwiIC8+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtMiBwdC0xXCJcbiAgICAgICAgW2NsYXNzLm9uZS1jZWxsLWFsbG93ZWQtZWRpdC1hY3RpdmVdPVwiaXNFZGl0YWJsZVwiXG4gICAgICAgIChkYmxjbGljayk9XCJzdGFydEVkaXQocGFyYW1zLm5vZGUsIHBhcmFtcy5jb2x1bW5EZWYpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY3VycmVuY3ktY29kZVwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+e3sgdGhpcy5wYXJhbXM/LmRhdGE/LmN1cnJlbmN5Py5jdXJyZW5jeUNvZGUgfHwgJ1VTRCcgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYW1vdW50LXZhbHVlXCI+XG4gICAgICAgICAge3sgcmVzdWx0IHwgbnVtYmVyOih0aGlzLnBhcmFtcz8uZmllbGQgPT09ICdhbW91bnQnID8gJzEuMy0zJyA6ICcxLjItMicpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2VsbC1jdXJyZW5jeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1jdXJyZW5jeS9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5L29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sMERBQTBELENBQUM7Ozs7O0FBUzFHLE1BQU0sT0FBTyw0QkFBNEI7SUFXdkMsWUFDVSxXQUErQixFQUMvQixZQUFpQztRQURqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBWDNDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFHVixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUV0QyxpQkFBWSxHQUFHLFlBQVksQ0FBQztRQUVwQixxQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFLOUMsQ0FBQztJQUVMLE9BQU8sQ0FBQyxNQUE2QjtRQUVuQyxJQUFJLENBQUMsTUFBTSxHQUFH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O2lDQUNJLElBQUksV0FDUCxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsOEJBQThCLENBQUMsWUFDekQsNEJBQTRCO3lIQVM3QixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2VsbFN0YXRlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvb25lLWV2ZW50LXR5cGVzLm1vZGVsJztcbmltcG9ydCB7IE9uZUNlbGxSZW5kZXJlclBhcmFtcywgT25lQ29sdW1uRGVmIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvb25lLWNvbHVtbi1kZWYtdHlwZXMubW9kZWwnO1xuaW1wb3J0IHsgT25lR3JpZENlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9vbmUtZ3JpZC1jZWxsLnNlcnZpY2UnO1xuaW1wb3J0IHsgT25lR3JpZEV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvb25lLWdyaWQtZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBPbmVSb3dOb2RlIH0gZnJvbSAnLi4vLi4vY29yZS9pbnN0YW50cy9vbmUtcm93LW5vZGUuY2xhc3MnO1xuaW1wb3J0IHsgZ2V0Q2VsbEZpZWxkIH0gZnJvbSAnLi4vLi4vaGVscGVycy9vbmUtY2VsbC5oZWxwZXInO1xuaW1wb3J0IHsgQ2VsbEVkaXRhYmxlUGlwZSB9IGZyb20gJy4uLy4uL2NvcmUvcGlwZXMvY2VsbC1lZGl0YWJsZS5waXBlJztcbmltcG9ydCB7IERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT25lQ2VsbElucHV0VmFsaWRhdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vY29yZS9kaXJlY3RpdmVzL29uZS1jZWxsLWlucHV0LXZhbGlkYXRvci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0RlY2ltYWxQaXBlLCBGb3Jtc01vZHVsZSwgT25lQ2VsbElucHV0VmFsaWRhdG9yRGlyZWN0aXZlXSxcbiAgc2VsZWN0b3I6ICdhcHAtb25lLWdyaWQtY2VsbC1jdXJyZW5jeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9vbmUtZ3JpZC1jZWxsLWN1cnJlbmN5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29uZS1ncmlkLWNlbGwtY3VycmVuY3kuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRDZWxsQ3VycmVuY3lDb21wb25lbnQge1xuICBcbiAgdmFsdWU6IHN0cmluZyA9ICcnO1xuICByZXN1bHQ6IGFueTtcbiAgcGFyYW1zITogT25lQ2VsbFJlbmRlcmVyUGFyYW1zO1xuICBASW5wdXQoKSBhbGxvd2VkRWRpdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldENlbGxGaWVsZCA9IGdldENlbGxGaWVsZDtcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZT86ICgpID0+IHZvaWQ7XG4gIHByaXZhdGUgY2VsbEVkaXRhYmxlUGlwZSA9IG5ldyBDZWxsRWRpdGFibGVQaXBlKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZWxsU2VydmljZTogT25lR3JpZENlbGxTZXJ2aWNlLFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBPbmVHcmlkRXZlbnRTZXJ2aWNlXG4gICkgeyB9XG5cbiAgb25lSW5pdChwYXJhbXM6IE9uZUNlbGxSZW5kZXJlclBhcmFtcyk6IHZvaWQge1xuXG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy5kYXRhW3BhcmFtcy5jb2x1bW5EZWYuZmllbGRdO1xuICAgIHRoaXMucmVzdWx0ID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLmFsbG93ZWRFZGl0ID0gcGFyYW1zLmNvbnRleHQuY29tcG9uZW50UGFyZW50LmFsbG93ZWRFZGl0IHx8IGZhbHNlO1xuXG4gICAgdGhpcy51bnN1YnNjcmliZSA9IHRoaXMuZXZlbnRTZXJ2aWNlLmFkZEV2ZW50TGlzdGVuZXIoJ2NlbGxTdGF0ZUNoYW5nZWQnLCAocGF5bG9hZDogQ2VsbFN0YXRlQ2hhbmdlZEV2ZW50PGFueT4pID0+IHtcbiAgICAgIGlmICh0aGlzLnBhcmFtcy5ub2RlLnJvd0lkID09PSBwYXlsb2FkLm5vZGUucm93SWQpIHtcblxuICAgICAgICB0aGlzLnJlc3VsdCA9IHRoaXMuY2VsbFNlcnZpY2UuZ2VuZXJhdGVDZWxsU3RhdGUodGhpcy5wYXJhbXMubm9kZSwgdGhpcy5wYXJhbXMuY29sdW1uRGVmKS52YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJlZnJlc2gocGFyYW1zOiBPbmVDZWxsUmVuZGVyZXJQYXJhbXMpOiBib29sZWFuIHtcbiAgICAvLyBVcGRhdGUgcGFyYW1zIGFuZCB2YWx1ZXMgd2hlbiBncmlkIGRhdGEgcmVmcmVzaGVzXG4gICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy5kYXRhW3BhcmFtcy5jb2x1bW5EZWYuZmllbGRdO1xuICAgIHRoaXMucmVzdWx0ID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLmFsbG93ZWRFZGl0ID0gcGFyYW1zLmNvbnRleHQuY29tcG9uZW50UGFyZW50LmFsbG93ZWRFZGl0IHx8IGZhbHNlO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXQgaXNFZGl0YWJsZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMucGFyYW1zLm5vZGUgfHwgIXRoaXMucGFyYW1zLmNvbHVtbkRlZikgcmV0dXJuIGZhbHNlO1xuXG4gICAgcmV0dXJuIHRoaXMuY2VsbEVkaXRhYmxlUGlwZS50cmFuc2Zvcm0oXG4gICAgICB0aGlzLnBhcmFtcy5ub2RlLmNlbGxTdGF0ZXMsXG4gICAgICB0aGlzLnBhcmFtcy5jb2x1bW5EZWYsXG4gICAgICB0aGlzLnBhcmFtcy5ub2RlLFxuICAgICAgdGhpcy5jZWxsU2VydmljZS5lZGl0YWJsZUZuLFxuICAgICAgdGhpcy5jZWxsU2VydmljZS51cGRhdGFibGVGbixcbiAgICAgIHRoaXMuYWxsb3dlZEVkaXRcbiAgICApO1xuICB9XG5cbiAgc3RhcnRFZGl0KG5vZGU6IE9uZVJvd05vZGU8YW55PiwgY29sdW1uOiBPbmVDb2x1bW5EZWY8YW55Pikge1xuXG4gICAgaWYgKCF0aGlzLmlzRWRpdGFibGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobm9kZSkge1xuXG4gICAgICBub2RlLmVkaXRpbmdbY29sdW1uLmZpZWxkXSA9IHRydWU7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuXG4gICAgICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MSW5wdXRFbGVtZW50PihgW2RhdGEtY2VsbC1pZD1cIiR7Z2V0Q2VsbEZpZWxkKG5vZGUucm93SW5kZXgsIGNvbHVtbi5maWVsZCl9XCJdIGlucHV0YCk7XG5cbiAgICAgICAgaWYgKGlucHV0KSB7XG5cbiAgICAgICAgICBpbnB1dC5mb2N1cygpO1xuXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dC52YWx1ZTtcblxuICAgICAgICAgIGlmICh2YWx1ZSAmJiBbXCJ0ZXh0XCJdLmluY2x1ZGVzKGlucHV0LnR5cGUpKSB7XG5cbiAgICAgICAgICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKHZhbHVlLmxlbmd0aCwgdmFsdWUubGVuZ3RoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIDEwKTtcbiAgICB9XG4gIH1cblxuICBzdG9wRWRpdChub2RlOiBPbmVSb3dOb2RlPGFueT4sIGNvbHVtbjogT25lQ29sdW1uRGVmPGFueT4sIGV2ZW50OiBhbnkpIHtcblxuICAgIGlmIChub2RlKSB7XG5cbiAgICAgIG5vZGUuZGF0YVtjb2x1bW4uZmllbGRdID0gZXZlbnQudGFyZ2V0LnZhbHVlID09PSAnJyA/IG51bGwgOiBldmVudC50YXJnZXQudmFsdWU7XG5cbiAgICAgIG5vZGUuY2VsbFN0YXRlcyA9IHRoaXMuY2VsbFNlcnZpY2UuZ2VuZXJhdGVDZWxsU3RhdGVzKG5vZGUpO1xuXG4gICAgICBub2RlLmVkaXRpbmdbY29sdW1uLmZpZWxkXSA9IGZhbHNlO1xuXG4gICAgICB0aGlzLmV2ZW50U2VydmljZS5kaXNwYXRjaEV2ZW50KCdjZWxsU3RhdGVDaGFuZ2VkJywge1xuICAgICAgICBkYXRhOiB7IC4uLm5vZGUuZGF0YSB9LFxuICAgICAgICBub2RlOiBub2RlLFxuICAgICAgICBjb2x1bW46IGNvbHVtblxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgY2FuY2VsRWRpdChub2RlOiBPbmVSb3dOb2RlPGFueT4sIGNvbHVtbjogT25lQ29sdW1uRGVmPGFueT4pIHtcblxuICAgIGlmIChub2RlKSB7XG5cbiAgICAgIG5vZGUuZWRpdGluZ1tjb2x1bW4uZmllbGRdID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICB0aGlzLnVuc3Vic2NyaWJlPy4oKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNlbGwtd3JhcHBlclwiXG4gICAgIFtjbGFzcy5lZGl0YWJsZV09XCJpc0VkaXRhYmxlXCJcbiAgICAgW2F0dHIuZGF0YS1jZWxsLWlkXT1cImdldENlbGxGaWVsZChwYXJhbXMubm9kZT8ucm93SW5kZXgsIHBhcmFtcy5jb2x1bW5EZWY/LmZpZWxkKVwiXG4gICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwicGFyYW1zLmNvbHVtbkRlZj8ubWluV2lkdGhcIlxuICAgICBbc3R5bGUubWF4LXdpZHRoLnB4XT1cInBhcmFtcy5jb2x1bW5EZWY/Lm1heFdpZHRoXCI+XG5cbiAgICBAaWYgKHBhcmFtcy5ub2RlPy5lZGl0aW5nPy5bcGFyYW1zLmNvbHVtbkRlZj8uZmllbGRdKSB7XG4gICAgICA8aW5wdXQgY2xhc3M9XCJvbmUtY2VsbC1pbnB1dFwiXG4gICAgICAgIG5hbWU9XCJ7eyBwYXJhbXMubm9kZT8ucm93SW5kZXggfX1fe3sgcGFyYW1zLmNvbHVtbkRlZj8uZmllbGQgfX1cIlxuICAgICAgICBvbmVDZWxsSW5wdXRWYWxpZGF0b3JcbiAgICAgICAgdmFsaWRhdGlvblR5cGU9XCJudW1iZXJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGFyYW1zLmNvbHVtbkRlZj8uY2VsbFJlbmRlcmVyUGFyYW1zPy5wbGFjZWhvbGRlciB8fCAnJ1wiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAgIFttYXhMZW5ndGhdPVwiMjUwXCJcbiAgICAgICAgKGJsdXIpPVwic3RvcEVkaXQocGFyYW1zLm5vZGUsIHBhcmFtcy5jb2x1bW5EZWYsICRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJzdG9wRWRpdChwYXJhbXMubm9kZSwgcGFyYW1zLmNvbHVtbkRlZiwgJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duLmVzYyk9XCJjYW5jZWxFZGl0KHBhcmFtcy5ub2RlLCBwYXJhbXMuY29sdW1uRGVmKVwiIC8+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtMiBwdC0xXCJcbiAgICAgICAgW2NsYXNzLm9uZS1jZWxsLWFsbG93ZWQtZWRpdC1hY3RpdmVdPVwiaXNFZGl0YWJsZVwiXG4gICAgICAgIChkYmxjbGljayk9XCJzdGFydEVkaXQocGFyYW1zLm5vZGUsIHBhcmFtcy5jb2x1bW5EZWYpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY3VycmVuY3ktY29kZVwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+e3sgdGhpcy5wYXJhbXM/LmRhdGE/LmN1cnJlbmN5Py5jdXJyZW5jeUNvZGUgfHwgJ1VTRCcgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYW1vdW50LXZhbHVlXCI+XG4gICAgICAgICAge3sgcmVzdWx0IHwgbnVtYmVyOih0aGlzLnBhcmFtcz8uZmllbGQgPT09ICdhbW91bnQnID8gJzEuMy0zJyA6ICcxLjItMicpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
@@ -15,11 +15,11 @@ export class OneGridCellGroupRendererComponent {
|
|
|
15
15
|
this.expansionChanged.emit({ rowIndex: this.node.rowIndex, data: this.node.data, node: this.node });
|
|
16
16
|
}
|
|
17
17
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellGroupRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellGroupRendererComponent, selector: "one-grid-cell-group-renderer", inputs: { node: "node", masterDetail: "masterDetail", detailCellRendererParams: "detailCellRendererParams", detailRendererComponent: "detailRendererComponent" }, outputs: { expansionChanged: "expansionChanged" }, ngImport: i0, template: "@if (node.expandable) {\n <span class=\"cell-group-renderer\" [style.padding-left.px]=\"6\">\n @if (node.children?.length > 0 || masterDetail) {\n <!-- A real button, not a div with a click handler: this is a\n disclosure control, so it needs to be focusable, operable with\n Enter and Space, and to expose its state via aria-expanded.\n mousedown is stopped so pressing the expander does not also\n begin a cell range selection on the cell underneath. -->\n <button\n type=\"button\"\n class=\"expansion-button\"\n [attr.aria-expanded]=\"node.expanded\"\n [attr.aria-label]=\"node.expanded ? 'Collapse row' : 'Expand row'\"\n (mousedown)=\"$event.stopPropagation()\"\n (dblclick)=\"$event.stopPropagation()\"\n (click)=\"invokeChangedClick($event)\">\n <i [class.node-expanded]=\"node.expanded\" class=\"bi bi-chevron-right expansion-icon\"></i>\n </button>\n }\n </span>\n}\n", styles: [""] }); }
|
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellGroupRendererComponent, isStandalone: true, selector: "one-grid-cell-group-renderer", inputs: { node: "node", masterDetail: "masterDetail", detailCellRendererParams: "detailCellRendererParams", detailRendererComponent: "detailRendererComponent" }, outputs: { expansionChanged: "expansionChanged" }, ngImport: i0, template: "@if (node.expandable) {\n <span class=\"cell-group-renderer\" [style.padding-left.px]=\"6\">\n @if (node.children?.length > 0 || masterDetail) {\n <!-- A real button, not a div with a click handler: this is a\n disclosure control, so it needs to be focusable, operable with\n Enter and Space, and to expose its state via aria-expanded.\n mousedown is stopped so pressing the expander does not also\n begin a cell range selection on the cell underneath. -->\n <button\n type=\"button\"\n class=\"expansion-button\"\n [attr.aria-expanded]=\"node.expanded\"\n [attr.aria-label]=\"node.expanded ? 'Collapse row' : 'Expand row'\"\n (mousedown)=\"$event.stopPropagation()\"\n (dblclick)=\"$event.stopPropagation()\"\n (click)=\"invokeChangedClick($event)\">\n <i [class.node-expanded]=\"node.expanded\" class=\"bi bi-chevron-right expansion-icon\"></i>\n </button>\n }\n </span>\n}\n", styles: [""] }); }
|
|
19
19
|
}
|
|
20
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellGroupRendererComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
|
-
args: [{ standalone:
|
|
22
|
+
args: [{ standalone: true, selector: 'one-grid-cell-group-renderer', template: "@if (node.expandable) {\n <span class=\"cell-group-renderer\" [style.padding-left.px]=\"6\">\n @if (node.children?.length > 0 || masterDetail) {\n <!-- A real button, not a div with a click handler: this is a\n disclosure control, so it needs to be focusable, operable with\n Enter and Space, and to expose its state via aria-expanded.\n mousedown is stopped so pressing the expander does not also\n begin a cell range selection on the cell underneath. -->\n <button\n type=\"button\"\n class=\"expansion-button\"\n [attr.aria-expanded]=\"node.expanded\"\n [attr.aria-label]=\"node.expanded ? 'Collapse row' : 'Expand row'\"\n (mousedown)=\"$event.stopPropagation()\"\n (dblclick)=\"$event.stopPropagation()\"\n (click)=\"invokeChangedClick($event)\">\n <i [class.node-expanded]=\"node.expanded\" class=\"bi bi-chevron-right expansion-icon\"></i>\n </button>\n }\n </span>\n}\n" }]
|
|
23
23
|
}], propDecorators: { node: [{
|
|
24
24
|
type: Input
|
|
25
25
|
}], masterDetail: [{
|
|
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
31
31
|
}], expansionChanged: [{
|
|
32
32
|
type: Output
|
|
33
33
|
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2VsbC1ncm91cC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1ncm91cC1yZW5kZXJlci9vbmUtZ3JpZC1jZWxsLWdyb3VwLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLWdyb3VwLXJlbmRlcmVyL29uZS1ncmlkLWNlbGwtZ3JvdXAtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQzs7QUFZN0UsTUFBTSxPQUFPLGlDQUFpQztJQU45QztRQVNXLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRzdCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUE0QixDQUFDO0tBYTNFO0lBWEM7Ozs7T0FJRztJQUNILGtCQUFrQixDQUFDLEtBQWlCO1FBRWxDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEcsQ0FBQzsrR0FsQlUsaUNBQWlDO21HQUFqQyxpQ0FBaUMsNlNDWjlDLDRsQ0FxQkE7OzRGRFRhLGlDQUFpQztrQkFON0MsU0FBUztpQ0FDSSxJQUFJLFlBQ04sOEJBQThCOzhCQU0vQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0csdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPbmVSb3dOb2RlIH0gZnJvbSAnLi4vLi4vY29yZS9pbnN0YW50cy9vbmUtcm93LW5vZGUuY2xhc3MnO1xuaW1wb3J0IHsgRXhwYW5zaW9uQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvb25lLWV2ZW50LXR5cGVzLm1vZGVsJztcbmltcG9ydCB7IE9uZURldGFpbENlbGxSZW5kZXJlclBhcmFtcyB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS1tYXN0ZXItZGV0YWlsLm1vZGVsJztcbmltcG9ydCB7IE9uZUNlbGxSZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS10cmVlLWRhdGEubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvbmUtZ3JpZC1jZWxsLWdyb3VwLXJlbmRlcmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL29uZS1ncmlkLWNlbGwtZ3JvdXAtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vb25lLWdyaWQtY2VsbC1ncm91cC1yZW5kZXJlci5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgT25lR3JpZENlbGxHcm91cFJlbmRlcmVyQ29tcG9uZW50PFQ+IHtcblxuICBASW5wdXQoKSBub2RlOiBPbmVSb3dOb2RlPFQ+O1xuICBASW5wdXQoKSBtYXN0ZXJEZXRhaWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZGV0YWlsQ2VsbFJlbmRlcmVyUGFyYW1zOiBPbmVEZXRhaWxDZWxsUmVuZGVyZXJQYXJhbXM7XG4gIEBJbnB1dCgpIGRldGFpbFJlbmRlcmVyQ29tcG9uZW50OiBUeXBlPE9uZUNlbGxSZW5kZXJlckNvbXBvbmVudD47XG4gIEBPdXRwdXQoKSBleHBhbnNpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxFeHBhbnNpb25DaGFuZ2VkRXZlbnQ8VD4+KCk7XG5cbiAgLyoqXG4gICAqIFByZXNlbnRhdGlvbmFsIG9ubHk6IHJlcG9ydCB0aGUgY2xpY2sgYW5kIGxldCB0aGUgYm9keSwgd2hpY2ggaG9sZHMgdGhlXG4gICAqIEFQSSwgcGVyZm9ybSB0aGUgdG9nZ2xlLiBUaGUgY2xpY2sgaXMgc3RvcHBlZCBmcm9tIGJ1YmJsaW5nIHNvIGl0IGlzIG5vdFxuICAgKiBhbHNvIHJlYWQgYXMgYSBjZWxsIGNsaWNrIGJ5IHRoZSBjZWxsIHVuZGVybmVhdGguXG4gICAqL1xuICBpbnZva2VDaGFuZ2VkQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcblxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgdGhpcy5leHBhbnNpb25DaGFuZ2VkLmVtaXQoeyByb3dJbmRleDogdGhpcy5ub2RlLnJvd0luZGV4LCBkYXRhOiB0aGlzLm5vZGUuZGF0YSwgbm9kZTogdGhpcy5ub2RlIH0pO1xuICB9XG59XG4iLCJAaWYgKG5vZGUuZXhwYW5kYWJsZSkge1xuICAgIDxzcGFuIGNsYXNzPVwiY2VsbC1ncm91cC1yZW5kZXJlclwiIFtzdHlsZS5wYWRkaW5nLWxlZnQucHhdPVwiNlwiPlxuICAgICAgICBAaWYgKG5vZGUuY2hpbGRyZW4/Lmxlbmd0aCA+IDAgfHwgbWFzdGVyRGV0YWlsKSB7XG4gICAgICAgICAgICA8IS0tIEEgcmVhbCBidXR0b24sIG5vdCBhIGRpdiB3aXRoIGEgY2xpY2sgaGFuZGxlcjogdGhpcyBpcyBhXG4gICAgICAgICAgICAgICAgIGRpc2Nsb3N1cmUgY29udHJvbCwgc28gaXQgbmVlZHMgdG8gYmUgZm9jdXNhYmxlLCBvcGVyYWJsZSB3aXRoXG4gICAgICAgICAgICAgICAgIEVudGVyIGFuZCBTcGFjZSwgYW5kIHRvIGV4cG9zZSBpdHMgc3RhdGUgdmlhIGFyaWEtZXhwYW5kZWQuXG4gICAgICAgICAgICAgICAgIG1vdXNlZG93biBpcyBzdG9wcGVkIHNvIHByZXNzaW5nIHRoZSBleHBhbmRlciBkb2VzIG5vdCBhbHNvXG4gICAgICAgICAgICAgICAgIGJlZ2luIGEgY2VsbCByYW5nZSBzZWxlY3Rpb24gb24gdGhlIGNlbGwgdW5kZXJuZWF0aC4gLS0+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJleHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm5vZGUuZXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibm9kZS5leHBhbmRlZCA/ICdDb2xsYXBzZSByb3cnIDogJ0V4cGFuZCByb3cnXCJcbiAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgICAgKGRibGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImludm9rZUNoYW5nZWRDbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGkgW2NsYXNzLm5vZGUtZXhwYW5kZWRdPVwibm9kZS5leHBhbmRlZFwiIGNsYXNzPVwiYmkgYmktY2hldnJvbi1yaWdodCBleHBhbnNpb24taWNvblwiPjwvaT5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgPC9zcGFuPlxufVxuIl19
|
package/esm2022/lib/components/one-grid-cell-option-menu/one-grid-cell-option-menu.component.mjs
CHANGED
|
@@ -92,11 +92,11 @@ export class OneGridCellOptionMenuComponent {
|
|
|
92
92
|
this.cellOptionMenuClose.emit();
|
|
93
93
|
}
|
|
94
94
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellOptionMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
95
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellOptionMenuComponent, selector: "one-grid-cell-option-menu", inputs: { column: "column", node: "node", options: "options" }, outputs: { cellOptionMenuSelect: "cellOptionMenuSelect", cellOptionMenuClose: "cellOptionMenuClose" }, host: { listeners: { "document:click": "onDocumentClick($event)", "document:keydown.escape": "onEscape()", "document:scroll": "onScroll()" } }, viewQueries: [{ propertyName: "items", predicate: ["item"], descendants: true }], ngImport: i0, template: "<!-- A menu, so it is announced as one and operable from the keyboard: the items\n were `<div (click)>` with no role, which meant the menu could be opened by\n mouse and then not used at all without one. -->\n<div class=\"cell-option-menu\" role=\"menu\" #menuEl [attr.aria-label]=\"menuLabel\">\n @for (opt of options; let index = $index; track opt.value) {\n <button\n type=\"button\"\n role=\"menuitem\"\n class=\"cell-option-menu-item\"\n #item\n [tabindex]=\"index === activeIndex ? 0 : -1\"\n (click)=\"onOptionSelected(opt)\"\n (keydown)=\"onItemKeydown($event, index, opt)\">\n <span>{{ opt.text }}</span>\n </button>\n }\n</div>\n", styles: [""] }); }
|
|
95
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: OneGridCellOptionMenuComponent, isStandalone: true, selector: "one-grid-cell-option-menu", inputs: { column: "column", node: "node", options: "options" }, outputs: { cellOptionMenuSelect: "cellOptionMenuSelect", cellOptionMenuClose: "cellOptionMenuClose" }, host: { listeners: { "document:click": "onDocumentClick($event)", "document:keydown.escape": "onEscape()", "document:scroll": "onScroll()" } }, viewQueries: [{ propertyName: "items", predicate: ["item"], descendants: true }], ngImport: i0, template: "<!-- A menu, so it is announced as one and operable from the keyboard: the items\n were `<div (click)>` with no role, which meant the menu could be opened by\n mouse and then not used at all without one. -->\n<div class=\"cell-option-menu\" role=\"menu\" #menuEl [attr.aria-label]=\"menuLabel\">\n @for (opt of options; let index = $index; track opt.value) {\n <button\n type=\"button\"\n role=\"menuitem\"\n class=\"cell-option-menu-item\"\n #item\n [tabindex]=\"index === activeIndex ? 0 : -1\"\n (click)=\"onOptionSelected(opt)\"\n (keydown)=\"onItemKeydown($event, index, opt)\">\n <span>{{ opt.text }}</span>\n </button>\n }\n</div>\n", styles: [""] }); }
|
|
96
96
|
}
|
|
97
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCellOptionMenuComponent, decorators: [{
|
|
98
98
|
type: Component,
|
|
99
|
-
args: [{ selector: 'one-grid-cell-option-menu', standalone:
|
|
99
|
+
args: [{ selector: 'one-grid-cell-option-menu', standalone: true, template: "<!-- A menu, so it is announced as one and operable from the keyboard: the items\n were `<div (click)>` with no role, which meant the menu could be opened by\n mouse and then not used at all without one. -->\n<div class=\"cell-option-menu\" role=\"menu\" #menuEl [attr.aria-label]=\"menuLabel\">\n @for (opt of options; let index = $index; track opt.value) {\n <button\n type=\"button\"\n role=\"menuitem\"\n class=\"cell-option-menu-item\"\n #item\n [tabindex]=\"index === activeIndex ? 0 : -1\"\n (click)=\"onOptionSelected(opt)\"\n (keydown)=\"onItemKeydown($event, index, opt)\">\n <span>{{ opt.text }}</span>\n </button>\n }\n</div>\n" }]
|
|
100
100
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { column: [{
|
|
101
101
|
type: Input
|
|
102
102
|
}], node: [{
|
|
@@ -120,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
120
120
|
type: HostListener,
|
|
121
121
|
args: ['document:scroll']
|
|
122
122
|
}] } });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51L29uZS1ncmlkLWNlbGwtb3B0aW9uLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUF3QixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBV3BKLE1BQU0sT0FBTyw4QkFBOEI7SUFpQnpDLElBQWMsU0FBUztRQUVyQixPQUFPLGVBQWUsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksV0FBVyxFQUFFLENBQUM7SUFDdkYsQ0FBQztJQUVELFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFwQmpDLFdBQU0sR0FBaUIsSUFBSSxDQUFDO1FBQzVCLFNBQUksR0FBZSxJQUFJLENBQUM7UUFDeEIsWUFBTyxHQUF3QixFQUFFLENBQUM7UUFDakMseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQStCLENBQUM7UUFDdkUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUl6RDs7OztXQUlHO1FBQ08sZ0JBQVcsR0FBRyxDQUFDLENBQUM7SUFPbUIsQ0FBQztJQUU5Qzs7Ozs7T0FLRztJQUNILGVBQWU7UUFFYixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMs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OytCQUNFLDJCQUEyQixjQUN6QixLQUFLOytFQU1SLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBRXVCLEtBQUs7c0JBQWxDLFlBQVk7dUJBQUMsTUFBTTtnQkEyRXBCLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFhMUMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHlCQUF5QjtnQkFRdkMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9uZVJvd05vZGUgfSBmcm9tICcuLi8uLi9jb3JlL2luc3RhbnRzL29uZS1yb3ctbm9kZS5jbGFzcyc7XG5pbXBvcnQgeyBPbmVDb2x1bW5EZWYgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9vbmUtY29sdW1uLWRlZi10eXBlcy5tb2RlbCc7XG5pbXBvcnQgeyBDZWxsT3B0aW9uTWVudVNlbGVjdGVkRXZlbnQsIE9uZUNlbGxPcHRpb25NZW51IH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvb25lLWV2ZW50LXR5cGVzLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudScsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxuICB0ZW1wbGF0ZVVybDogJy4vb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51LmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgT25lR3JpZENlbGxPcHRpb25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgQElucHV0KCkgY29sdW1uOiBPbmVDb2x1bW5EZWYgPSBudWxsO1xuICBASW5wdXQoKSBub2RlOiBPbmVSb3dOb2RlID0gbnVsbDtcbiAgQElucHV0KCkgb3B0aW9uczogT25lQ2VsbE9wdGlvbk1lbnVbXSA9IFtdO1xuICBAT3V0cHV0KCkgY2VsbE9wdGlvbk1lbnVTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPENlbGxPcHRpb25NZW51U2VsZWN0ZWRFdmVudD4oKTtcbiAgQE91dHB1dCgpIGNlbGxPcHRpb25NZW51Q2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZHJlbignaXRlbScpIHByaXZhdGUgaXRlbXM/OiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD4+O1xuXG4gIC8qKlxuICAgKiBSb3ZpbmcgdGFiaW5kZXg6IG9uZSBpdGVtIGlzIHRhYmJhYmxlIGFuZCB0aGUgYXJyb3dzIG1vdmUgd2hpY2guIFN0YW5kYXJkXG4gICAqIGZvciBhIG1lbnUg4oCUIGEgbGlzdCBvZiBzZXBhcmF0ZWx5IHRhYmJhYmxlIGJ1dHRvbnMgbWFrZXMgYSBrZXlib2FyZCB1c2VyXG4gICAqIHRhYiB0aHJvdWdoIGV2ZXJ5IG9wdGlvbiB0byBnZXQgcGFzdCB0aGUgbWVudS5cbiAgICovXG4gIHByb3RlY3RlZCBhY3RpdmVJbmRleCA9IDA7XG5cbiAgcHJvdGVjdGVkIGdldCBtZW51TGFiZWwoKTogc3RyaW5nIHtcblxuICAgIHJldHVybiBgT3B0aW9ucyBmb3IgJHt0aGlzLmNvbHVtbj8uaGVhZGVyTmFtZSA/PyB0aGlzLmNvbHVtbj8uZmllbGQgPz8gJ3RoaXMgY2VsbCd9YDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAvKipcbiAgICogTW92ZSBmb2N1cyBpbnRvIHRoZSBtZW51IG9uY2UgaXQgZXhpc3RzLlxuICAgKlxuICAgKiBPcGVuaW5nIGEgbWVudSBhbmQgbGVhdmluZyBmb2N1cyBvbiB0aGUgdHJpZ2dlciBzdHJhbmRzIGEga2V5Ym9hcmQgdXNlcjpcbiAgICogdGhlIG1lbnUgaXMgb24gc2NyZWVuIGFuZCBub3RoaW5nIHRoZXkgcHJlc3MgcmVhY2hlcyBpdC5cbiAgICovXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIHRoaXMuZm9jdXNJdGVtKDApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uSXRlbUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGluZGV4OiBudW1iZXIsIG9wdGlvbjogT25lQ2VsbE9wdGlvbk1lbnUpOiB2b2lkIHtcblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG5cbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtKChpbmRleCArIDEpICUgdGhpcy5vcHRpb25zLmxlbmd0aCk7XG4gICAgICAgIHJldHVybjtcblxuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtKChpbmRleCAtIDEgKyB0aGlzLm9wdGlvbnMubGVuZ3RoKSAlIHRoaXMub3B0aW9ucy5sZW5ndGgpO1xuICAgICAgICByZXR1cm47XG5cbiAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzSXRlbSgwKTtcbiAgICAgICAgcmV0dXJuO1xuXG4gICAgICBjYXNlICdFbmQnOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzSXRlbSh0aGlzLm9wdGlvbnMubGVuZ3RoIC0gMSk7XG4gICAgICAgIHJldHVybjtcblxuICAgICAgY2FzZSAnRW50ZXInOlxuICAgICAgY2FzZSAnICc6XG4gICAgICAgIC8vIEEgPGJ1dHRvbj4gYWxyZWFkeSBhY3RpdmF0ZXMgb24gYm90aCwgYnV0IG9ubHkgb25jZSB0aGUgZGVmYXVsdCBydW5zLlxuICAgICAgICAvLyBIYW5kbGluZyBpdCBoZXJlIGtlZXBzIHRoZSBtZW51J3MgYmVoYXZpb3VyIGluZGVwZW5kZW50IG9mIHRoYXQuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMub25PcHRpb25TZWxlY3RlZChvcHRpb24pO1xuICAgICAgICByZXR1cm47XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvY3VzSXRlbShpbmRleDogbnVtYmVyKTogdm9pZCB7XG5cbiAgICBpZiAoIXRoaXMub3B0aW9ucz8ubGVuZ3RoKSByZXR1cm47XG5cbiAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7XG5cbiAgICB0aGlzLml0ZW1zPy5nZXQoaW5kZXgpPy5uYXRpdmVFbGVtZW50Py5mb2N1cygpO1xuICB9XG5cbiAgLy8gQ2xpY2sgb3V0c2lkZVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gIG9uRG9jdW1lbnRDbGljayhldmVudDogTW91c2VFdmVudCkge1xuXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgaWYgKCF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXQpKSB7XG5cbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvLyBFc2NhcGUga2V5XG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJylcbiAgb25Fc2NhcGUoKSB7XG5cbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICAvLyBTY3JvbGwgY2xvc2VzIG1lbnUgKHByZXZlbnRzIG1pc2FsaWdubWVudClcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6c2Nyb2xsJylcbiAgb25TY3JvbGwoKSB7XG5cbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICAvLyBPcHRpb24gc2VsZWN0ZWRcbiAgb25PcHRpb25TZWxlY3RlZChvcHRpb246IGFueSkge1xuXG4gICAgdGhpcy5jZWxsT3B0aW9uTWVudVNlbGVjdC5lbWl0KHtcbiAgICAgIGNvbHVtbjogdGhpcy5jb2x1bW4sXG4gICAgICBub2RlOiB0aGlzLm5vZGUsXG4gICAgICBvcHRpb246IG9wdGlvblxuICAgIH0pO1xuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIC8vIFNpbmdsZSBjbG9zZSBtZXRob2RcbiAgcHJpdmF0ZSBjbG9zZSgpIHtcblxuICAgIHRoaXMubm9kZS5jZWxsT3B0aW9uc1t0aGlzLmNvbHVtbi5maWVsZF0gPSBmYWxzZTtcbiAgICB0aGlzLmNlbGxPcHRpb25NZW51Q2xvc2UuZW1pdCgpO1xuICB9XG59XG4iLCI8IS0tIEEgbWVudSwgc28gaXQgaXMgYW5ub3VuY2VkIGFzIG9uZSBhbmQgb3BlcmFibGUgZnJvbSB0aGUga2V5Ym9hcmQ6IHRoZSBpdGVtc1xuICAgICB3ZXJlIGA8ZGl2IChjbGljayk+YCB3aXRoIG5vIHJvbGUsIHdoaWNoIG1lYW50IHRoZSBtZW51IGNvdWxkIGJlIG9wZW5lZCBieVxuICAgICBtb3VzZSBhbmQgdGhlbiBub3QgdXNlZCBhdCBhbGwgd2l0aG91dCBvbmUuIC0tPlxuPGRpdiBjbGFzcz1cImNlbGwtb3B0aW9uLW1lbnVcIiByb2xlPVwibWVudVwiICNtZW51RWwgW2F0dHIuYXJpYS1sYWJlbF09XCJtZW51TGFiZWxcIj5cbiAgICBAZm9yIChvcHQgb2Ygb3B0aW9uczsgbGV0IGluZGV4ID0gJGluZGV4OyB0cmFjayBvcHQudmFsdWUpIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICByb2xlPVwibWVudWl0ZW1cIlxuICAgICAgICAgICAgY2xhc3M9XCJjZWxsLW9wdGlvbi1tZW51LWl0ZW1cIlxuICAgICAgICAgICAgI2l0ZW1cbiAgICAgICAgICAgIFt0YWJpbmRleF09XCJpbmRleCA9PT0gYWN0aXZlSW5kZXggPyAwIDogLTFcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uT3B0aW9uU2VsZWN0ZWQob3B0KVwiXG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvbkl0ZW1LZXlkb3duKCRldmVudCwgaW5kZXgsIG9wdClcIj5cbiAgICAgICAgICAgIDxzcGFuPnt7IG9wdC50ZXh0IH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9XG48L2Rpdj5cbiJdfQ==
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmUtZ3JpZC9zcmMvbGliL2NvbXBvbmVudHMvb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudS9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51L29uZS1ncmlkLWNlbGwtb3B0aW9uLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUF3QixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBV3BKLE1BQU0sT0FBTyw4QkFBOEI7SUFpQnpDLElBQWMsU0FBUztRQUVyQixPQUFPLGVBQWUsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksV0FBVyxFQUFFLENBQUM7SUFDdkYsQ0FBQztJQUVELFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFwQmpDLFdBQU0sR0FBaUIsSUFBSSxDQUFDO1FBQzVCLFNBQUksR0FBZSxJQUFJLENBQUM7UUFDeEIsWUFBTyxHQUF3QixFQUFFLENBQUM7UUFDakMseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQStCLENBQUM7UUFDdkUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUl6RDs7OztXQUlHO1FBQ08sZ0JBQVcsR0FBRyxDQUFDLENBQUM7SUFPbUIsQ0FBQztJQUU5Qzs7Ozs7T0FLRztJQUNILGVBQWU7UUFFYixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMs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OytCQUNFLDJCQUEyQixjQUN6QixJQUFJOytFQU1QLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBRXVCLEtBQUs7c0JBQWxDLFlBQVk7dUJBQUMsTUFBTTtnQkEyRXBCLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFhMUMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHlCQUF5QjtnQkFRdkMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9uZVJvd05vZGUgfSBmcm9tICcuLi8uLi9jb3JlL2luc3RhbnRzL29uZS1yb3ctbm9kZS5jbGFzcyc7XG5pbXBvcnQgeyBPbmVDb2x1bW5EZWYgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9vbmUtY29sdW1uLWRlZi10eXBlcy5tb2RlbCc7XG5pbXBvcnQgeyBDZWxsT3B0aW9uTWVudVNlbGVjdGVkRXZlbnQsIE9uZUNlbGxPcHRpb25NZW51IH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvb25lLWV2ZW50LXR5cGVzLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb25lLWdyaWQtY2VsbC1vcHRpb24tbWVudScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiAnLi9vbmUtZ3JpZC1jZWxsLW9wdGlvbi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29uZS1ncmlkLWNlbGwtb3B0aW9uLW1lbnUuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBPbmVHcmlkQ2VsbE9wdGlvbk1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICBASW5wdXQoKSBjb2x1bW46IE9uZUNvbHVtbkRlZiA9IG51bGw7XG4gIEBJbnB1dCgpIG5vZGU6IE9uZVJvd05vZGUgPSBudWxsO1xuICBASW5wdXQoKSBvcHRpb25zOiBPbmVDZWxsT3B0aW9uTWVudVtdID0gW107XG4gIEBPdXRwdXQoKSBjZWxsT3B0aW9uTWVudVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8Q2VsbE9wdGlvbk1lbnVTZWxlY3RlZEV2ZW50PigpO1xuICBAT3V0cHV0KCkgY2VsbE9wdGlvbk1lbnVDbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkcmVuKCdpdGVtJykgcHJpdmF0ZSBpdGVtcz86IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50Pj47XG5cbiAgLyoqXG4gICAqIFJvdmluZyB0YWJpbmRleDogb25lIGl0ZW0gaXMgdGFiYmFibGUgYW5kIHRoZSBhcnJvd3MgbW92ZSB3aGljaC4gU3RhbmRhcmRcbiAgICogZm9yIGEgbWVudSDigJQgYSBsaXN0IG9mIHNlcGFyYXRlbHkgdGFiYmFibGUgYnV0dG9ucyBtYWtlcyBhIGtleWJvYXJkIHVzZXJcbiAgICogdGFiIHRocm91Z2ggZXZlcnkgb3B0aW9uIHRvIGdldCBwYXN0IHRoZSBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIGFjdGl2ZUluZGV4ID0gMDtcblxuICBwcm90ZWN0ZWQgZ2V0IG1lbnVMYWJlbCgpOiBzdHJpbmcge1xuXG4gICAgcmV0dXJuIGBPcHRpb25zIGZvciAke3RoaXMuY29sdW1uPy5oZWFkZXJOYW1lID8/IHRoaXMuY29sdW1uPy5maWVsZCA/PyAndGhpcyBjZWxsJ31gO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gIC8qKlxuICAgKiBNb3ZlIGZvY3VzIGludG8gdGhlIG1lbnUgb25jZSBpdCBleGlzdHMuXG4gICAqXG4gICAqIE9wZW5pbmcgYSBtZW51IGFuZCBsZWF2aW5nIGZvY3VzIG9uIHRoZSB0cmlnZ2VyIHN0cmFuZHMgYSBrZXlib2FyZCB1c2VyOlxuICAgKiB0aGUgbWVudSBpcyBvbiBzY3JlZW4gYW5kIG5vdGhpbmcgdGhleSBwcmVzcyByZWFjaGVzIGl0LlxuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gICAgdGhpcy5mb2N1c0l0ZW0oMCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25JdGVtS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCwgaW5kZXg6IG51bWJlciwgb3B0aW9uOiBPbmVDZWxsT3B0aW9uTWVudSk6IHZvaWQge1xuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5mb2N1c0l0ZW0oKGluZGV4ICsgMSkgJSB0aGlzLm9wdGlvbnMubGVuZ3RoKTtcbiAgICAgICAgcmV0dXJuO1xuXG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5mb2N1c0l0ZW0oKGluZGV4IC0gMSArIHRoaXMub3B0aW9ucy5sZW5ndGgpICUgdGhpcy5vcHRpb25zLmxlbmd0aCk7XG4gICAgICAgIHJldHVybjtcblxuICAgICAgY2FzZSAnSG9tZSc6XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtKDApO1xuICAgICAgICByZXR1cm47XG5cbiAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtKHRoaXMub3B0aW9ucy5sZW5ndGggLSAxKTtcbiAgICAgICAgcmV0dXJuO1xuXG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICBjYXNlICcgJzpcbiAgICAgICAgLy8gQSA8YnV0dG9uPiBhbHJlYWR5IGFjdGl2YXRlcyBvbiBib3RoLCBidXQgb25seSBvbmNlIHRoZSBkZWZhdWx0IHJ1bnMuXG4gICAgICAgIC8vIEhhbmRsaW5nIGl0IGhlcmUga2VlcHMgdGhlIG1lbnUncyBiZWhhdmlvdXIgaW5kZXBlbmRlbnQgb2YgdGhhdC5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5vbk9wdGlvblNlbGVjdGVkKG9wdGlvbik7XG4gICAgICAgIHJldHVybjtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9jdXNJdGVtKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcblxuICAgIGlmICghdGhpcy5vcHRpb25zPy5sZW5ndGgpIHJldHVybjtcblxuICAgIHRoaXMuYWN0aXZlSW5kZXggPSBpbmRleDtcblxuICAgIHRoaXMuaXRlbXM/LmdldChpbmRleCk/Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKCk7XG4gIH1cblxuICAvLyBDbGljayBvdXRzaWRlXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcbiAgb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG5cbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcblxuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVzY2FwZSBrZXlcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnKVxuICBvbkVzY2FwZSgpIHtcblxuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIC8vIFNjcm9sbCBjbG9zZXMgbWVudSAocHJldmVudHMgbWlzYWxpZ25tZW50KVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpzY3JvbGwnKVxuICBvblNjcm9sbCgpIHtcblxuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIC8vIE9wdGlvbiBzZWxlY3RlZFxuICBvbk9wdGlvblNlbGVjdGVkKG9wdGlvbjogYW55KSB7XG5cbiAgICB0aGlzLmNlbGxPcHRpb25NZW51U2VsZWN0LmVtaXQoe1xuICAgICAgY29sdW1uOiB0aGlzLmNvbHVtbixcbiAgICAgIG5vZGU6IHRoaXMubm9kZSxcbiAgICAgIG9wdGlvbjogb3B0aW9uXG4gICAgfSk7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgLy8gU2luZ2xlIGNsb3NlIG1ldGhvZFxuICBwcml2YXRlIGNsb3NlKCkge1xuXG4gICAgdGhpcy5ub2RlLmNlbGxPcHRpb25zW3RoaXMuY29sdW1uLmZpZWxkXSA9IGZhbHNlO1xuICAgIHRoaXMuY2VsbE9wdGlvbk1lbnVDbG9zZS5lbWl0KCk7XG4gIH1cbn1cbiIsIjwhLS0gQSBtZW51LCBzbyBpdCBpcyBhbm5vdW5jZWQgYXMgb25lIGFuZCBvcGVyYWJsZSBmcm9tIHRoZSBrZXlib2FyZDogdGhlIGl0ZW1zXG4gICAgIHdlcmUgYDxkaXYgKGNsaWNrKT5gIHdpdGggbm8gcm9sZSwgd2hpY2ggbWVhbnQgdGhlIG1lbnUgY291bGQgYmUgb3BlbmVkIGJ5XG4gICAgIG1vdXNlIGFuZCB0aGVuIG5vdCB1c2VkIGF0IGFsbCB3aXRob3V0IG9uZS4gLS0+XG48ZGl2IGNsYXNzPVwiY2VsbC1vcHRpb24tbWVudVwiIHJvbGU9XCJtZW51XCIgI21lbnVFbCBbYXR0ci5hcmlhLWxhYmVsXT1cIm1lbnVMYWJlbFwiPlxuICAgIEBmb3IgKG9wdCBvZiBvcHRpb25zOyBsZXQgaW5kZXggPSAkaW5kZXg7IHRyYWNrIG9wdC52YWx1ZSkge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIHJvbGU9XCJtZW51aXRlbVwiXG4gICAgICAgICAgICBjbGFzcz1cImNlbGwtb3B0aW9uLW1lbnUtaXRlbVwiXG4gICAgICAgICAgICAjaXRlbVxuICAgICAgICAgICAgW3RhYmluZGV4XT1cImluZGV4ID09PSBhY3RpdmVJbmRleCA/IDAgOiAtMVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25PcHRpb25TZWxlY3RlZChvcHQpXCJcbiAgICAgICAgICAgIChrZXlkb3duKT1cIm9uSXRlbUtleWRvd24oJGV2ZW50LCBpbmRleCwgb3B0KVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgb3B0LnRleHQgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
@@ -12,29 +12,18 @@ export class OneGridCheckboxComponent {
|
|
|
12
12
|
onToggleSelection(event) {
|
|
13
13
|
const isChecked = event.target.checked;
|
|
14
14
|
const { rowId, rowIndex, data } = this.node;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
this.node.setSelected(true);
|
|
20
|
-
}
|
|
21
|
-
this.api.toggleSelection(rowId, isChecked);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
// Multi-select mode
|
|
25
|
-
this.selectionService.toggleSelection(rowId, isChecked);
|
|
26
|
-
this.node.setSelected(isChecked);
|
|
27
|
-
}
|
|
28
|
-
this.node.cellStates = { ...this.node.cellStates };
|
|
29
|
-
this.eventService.dispatchEvent('selectionChanged', { rowIndex, selected: isChecked, data, node: this.node });
|
|
15
|
+
// The mode rule (single clears the rest, multiple toggles) lives on the api
|
|
16
|
+
// now, so pressing Space on a focused row and clicking this checkbox cannot
|
|
17
|
+
// drift apart. It dispatches `selectionChanged` itself.
|
|
18
|
+
this.api.toggleRowSelection(rowId, isChecked);
|
|
30
19
|
this.onRowSelection.emit({ rowIndex, selected: isChecked, data, node: this.node });
|
|
31
20
|
}
|
|
32
21
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCheckboxComponent, deps: [{ token: i1.OneGridSelectionService }, { token: i2.OneGridEventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OneGridCheckboxComponent, selector: "one-grid-checkbox", inputs: { node: "node", allowedEdit: "allowedEdit", api: "api" }, outputs: { onRowSelection: "onRowSelection" }, ngImport: i0, template: "\n<div class=\"one-grid-checkbox\">\n <input type=\"checkbox\"\n [name]=\"node.rowId\"\n [class.disabled]=\"!(allowedEdit)\"\n [checked]=\"node.selected\"\n (change)=\"onToggleSelection($event)\"/>\n</div>", styles: [""] }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OneGridCheckboxComponent, isStandalone: true, selector: "one-grid-checkbox", inputs: { node: "node", allowedEdit: "allowedEdit", api: "api" }, outputs: { onRowSelection: "onRowSelection" }, ngImport: i0, template: "\n<div class=\"one-grid-checkbox\">\n <input type=\"checkbox\"\n [name]=\"node.rowId\"\n [class.disabled]=\"!(allowedEdit)\"\n [checked]=\"node.selected\"\n (change)=\"onToggleSelection($event)\"/>\n</div>", styles: [""] }); }
|
|
34
23
|
}
|
|
35
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCheckboxComponent, decorators: [{
|
|
36
25
|
type: Component,
|
|
37
|
-
args: [{ standalone:
|
|
26
|
+
args: [{ standalone: true, selector: 'one-grid-checkbox', template: "\n<div class=\"one-grid-checkbox\">\n <input type=\"checkbox\"\n [name]=\"node.rowId\"\n [class.disabled]=\"!(allowedEdit)\"\n [checked]=\"node.selected\"\n (change)=\"onToggleSelection($event)\"/>\n</div>" }]
|
|
38
27
|
}], ctorParameters: () => [{ type: i1.OneGridSelectionService }, { type: i2.OneGridEventService }], propDecorators: { node: [{
|
|
39
28
|
type: Input
|
|
40
29
|
}], allowedEdit: [{
|
|
@@ -44,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
44
33
|
}], onRowSelection: [{
|
|
45
34
|
type: Output
|
|
46
35
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lLWdyaWQvc3JjL2xpYi9jb21wb25lbnRzL29uZS1ncmlkLWNoZWNrYm94L29uZS1ncmlkLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jaGVja2JveC9vbmUtZ3JpZC1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBYXZFLE1BQU0sT0FBTyx3QkFBd0I7SUFPbkMsWUFDVSxnQkFBeUMsRUFDekMsWUFBaUM7UUFEakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUN6QyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFObEMsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFNUIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBNEIsQ0FBQztJQUtyRSxDQUFDO0lBRUosaUJBQWlCLENBQUMsS0FBVTtRQUUxQixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUN2QyxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRTVDLDRFQUE0RTtRQUM1RSw0RUFBNEU7UUFDNUUsd0RBQXdEO1FBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRTlDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNyRixDQUFDOytHQXZCVSx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw4TENickMsOE9BT007OzRGRE1PLHdCQUF3QjtrQkFOcEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sbUJBQW1COzhIQU1wQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPbmVSb3dOb2RlIH0gZnJvbSAnLi4vLi4vY29yZS9pbnN0YW50cy9vbmUtcm93LW5vZGUuY2xhc3MnO1xuaW1wb3J0IHsgT25lR3JpZFNlbGVjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL29uZS1ncmlkLXNlbGVjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IE9uZUdyaWRFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL29uZS1ncmlkLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgT25lR3JpZEFwaSB9IGZyb20gJy4uLy4uL2NvcmUvaW5zdGFudHMvb25lLWdyaWQtYXBpLmNsYXNzJztcbmltcG9ydCB7IE9uZUdyaWRSb3dBY3Rpb25FdmVudCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS1ncmlkLXR5cGVzLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb25lLWdyaWQtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vb25lLWdyaWQtY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vb25lLWdyaWQtY2hlY2tib3guY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRDaGVja2JveENvbXBvbmVudDxUPiB7XG5cbiAgQElucHV0KCkgbm9kZTogT25lUm93Tm9kZTxUPjtcbiAgQElucHV0KCkgYWxsb3dlZEVkaXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgYXBpITogT25lR3JpZEFwaTxUPjtcbiAgQE91dHB1dCgpIG9uUm93U2VsZWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxPbmVHcmlkUm93QWN0aW9uRXZlbnQ8VD4+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZWxlY3Rpb25TZXJ2aWNlOiBPbmVHcmlkU2VsZWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogT25lR3JpZEV2ZW50U2VydmljZVxuICApIHt9XG5cbiAgb25Ub2dnbGVTZWxlY3Rpb24oZXZlbnQ6IGFueSkge1xuXG4gICAgY29uc3QgaXNDaGVja2VkID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQ7XG4gICAgY29uc3QgeyByb3dJZCwgcm93SW5kZXgsIGRhdGEgfSA9IHRoaXMubm9kZTtcblxuICAgIC8vIFRoZSBtb2RlIHJ1bGUgKHNpbmdsZSBjbGVhcnMgdGhlIHJlc3QsIG11bHRpcGxlIHRvZ2dsZXMpIGxpdmVzIG9uIHRoZSBhcGlcbiAgICAvLyBub3csIHNvIHByZXNzaW5nIFNwYWNlIG9uIGEgZm9jdXNlZCByb3cgYW5kIGNsaWNraW5nIHRoaXMgY2hlY2tib3ggY2Fubm90XG4gICAgLy8gZHJpZnQgYXBhcnQuIEl0IGRpc3BhdGNoZXMgYHNlbGVjdGlvbkNoYW5nZWRgIGl0c2VsZi5cbiAgICB0aGlzLmFwaS50b2dnbGVSb3dTZWxlY3Rpb24ocm93SWQsIGlzQ2hlY2tlZCk7XG5cbiAgICB0aGlzLm9uUm93U2VsZWN0aW9uLmVtaXQoeyByb3dJbmRleCwgc2VsZWN0ZWQ6IGlzQ2hlY2tlZCwgZGF0YSwgbm9kZTogdGhpcy5ub2RlIH0pO1xuICB9XG59XG4iLCJcbjxkaXYgY2xhc3M9XCJvbmUtZ3JpZC1jaGVja2JveFwiPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICBbbmFtZV09XCJub2RlLnJvd0lkXCJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiEoYWxsb3dlZEVkaXQpXCJcbiAgICAgICAgW2NoZWNrZWRdPVwibm9kZS5zZWxlY3RlZFwiXG4gICAgICAgIChjaGFuZ2UpPVwib25Ub2dnbGVTZWxlY3Rpb24oJGV2ZW50KVwiLz5cbjwvZGl2PiJdfQ==
|
package/esm2022/lib/components/one-grid-checkbox-header/one-grid-checkbox-header.component.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { HeaderCheckboxCheckedPipe } from '../../core/pipes/header-checkbox-checked.pipe';
|
|
3
|
+
import { HeaderCheckboxDisabledPipe } from '../../core/pipes/header-checkbox-disabled.pipe';
|
|
4
|
+
import { HeaderCheckboxIndeterminatePipe } from '../../core/pipes/header-checkbox-indeterminate.pipe';
|
|
2
5
|
import * as i0 from "@angular/core";
|
|
3
6
|
import * as i1 from "../../core/services/one-grid-event.service";
|
|
4
7
|
import * as i2 from "../../core/services/one-grid-selection.service";
|
|
5
|
-
import * as i3 from "../../core/pipes/header-checkbox-disabled.pipe";
|
|
6
|
-
import * as i4 from "../../core/pipes/header-checkbox-checked.pipe";
|
|
7
|
-
import * as i5 from "../../core/pipes/header-checkbox-indeterminate.pipe";
|
|
8
8
|
export class OneGridCheckboxHeaderComponent {
|
|
9
9
|
constructor(eventService, selectionService) {
|
|
10
10
|
this.eventService = eventService;
|
|
@@ -58,14 +58,14 @@ export class OneGridCheckboxHeaderComponent {
|
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCheckboxHeaderComponent, deps: [{ token: i1.OneGridEventService }, { token: i2.OneGridSelectionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OneGridCheckboxHeaderComponent, selector: "one-grid-checkbox-header", inputs: { api: "api", allowedEdit: "allowedEdit" }, ngImport: i0, template: "<div class=\"one-grid-checkbox\">\n <input\n [id]=\"api.id\"\n [type]=\"'checkbox'\"\n [class.disabled]=\"rowNodes | headerCheckboxDisabled:selectionMode:allowedEdit\"\n [checked]=\"rowNodes | headerCheckboxChecked:selectionMode:state\"\n [indeterminate]=\"rowNodes | headerCheckboxIndeterminate:selectionMode:state\"\n (change)=\"toggleSelectionAll($event)\" />\n</div>", styles: [""], dependencies: [{ kind: "pipe", type:
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OneGridCheckboxHeaderComponent, isStandalone: true, selector: "one-grid-checkbox-header", inputs: { api: "api", allowedEdit: "allowedEdit" }, ngImport: i0, template: "<div class=\"one-grid-checkbox\">\n <input\n [id]=\"api.id\"\n [type]=\"'checkbox'\"\n [class.disabled]=\"rowNodes | headerCheckboxDisabled:selectionMode:allowedEdit\"\n [checked]=\"rowNodes | headerCheckboxChecked:selectionMode:state\"\n [indeterminate]=\"rowNodes | headerCheckboxIndeterminate:selectionMode:state\"\n (change)=\"toggleSelectionAll($event)\" />\n</div>", styles: [""], dependencies: [{ kind: "pipe", type: HeaderCheckboxCheckedPipe, name: "headerCheckboxChecked" }, { kind: "pipe", type: HeaderCheckboxDisabledPipe, name: "headerCheckboxDisabled" }, { kind: "pipe", type: HeaderCheckboxIndeterminatePipe, name: "headerCheckboxIndeterminate" }] }); }
|
|
62
62
|
}
|
|
63
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OneGridCheckboxHeaderComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
|
-
args: [{ standalone:
|
|
65
|
+
args: [{ standalone: true, imports: [HeaderCheckboxCheckedPipe, HeaderCheckboxDisabledPipe, HeaderCheckboxIndeterminatePipe], selector: 'one-grid-checkbox-header', template: "<div class=\"one-grid-checkbox\">\n <input\n [id]=\"api.id\"\n [type]=\"'checkbox'\"\n [class.disabled]=\"rowNodes | headerCheckboxDisabled:selectionMode:allowedEdit\"\n [checked]=\"rowNodes | headerCheckboxChecked:selectionMode:state\"\n [indeterminate]=\"rowNodes | headerCheckboxIndeterminate:selectionMode:state\"\n (change)=\"toggleSelectionAll($event)\" />\n</div>" }]
|
|
66
66
|
}], ctorParameters: () => [{ type: i1.OneGridEventService }, { type: i2.OneGridSelectionService }], propDecorators: { api: [{
|
|
67
67
|
type: Input
|
|
68
68
|
}], allowedEdit: [{
|
|
69
69
|
type: Input
|
|
70
70
|
}] } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWdyaWQtY2hlY2tib3gtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jaGVja2JveC1oZWFkZXIvb25lLWdyaWQtY2hlY2tib3gtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZS1ncmlkL3NyYy9saWIvY29tcG9uZW50cy9vbmUtZ3JpZC1jaGVja2JveC1oZWFkZXIvb25lLWdyaWQtY2hlY2tib3gtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQVVwRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQzs7OztBQVN0RyxNQUFNLE9BQU8sOEJBQThCO0lBWXpDLFlBQ1UsWUFBaUMsRUFDakMsZ0JBQXlDO1FBRHpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBWDFDLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRXRDLDhEQUE4RDtRQUM3QyxhQUFRLEdBQXNCLEVBQUUsQ0FBQztRQUUzQyxVQUFLLEdBQXFCLFdBQVcsQ0FBQztRQUN0QyxhQUFRLEdBQW9CLEVBQUUsQ0FBQztJQU1sQyxDQUFDO0lBRUwsUUFBUTtRQUVOLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7UUFFM0M7O1dBRUc7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLENBQUMsT0FBaUMsRUFBRSxFQUFFO1lBRTlHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUUxQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFtQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUV2SCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRUo7O1dBRUc7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBK0IsRUFBRSxFQUFFO1lBRTFHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUUxQyxNQUFNLE1BQU0sR0FBYSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFtQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUVqSSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFFVCwwRUFBMEU7UUFDMUUsMEVBQTBFO1FBQzFFLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQixDQUFDLEtBQVU7UUFFM0IsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBRTVDLE1BQU0sT0FBTyxHQUFZLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBRTlDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUU5QyxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUVaLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFdkIsQ0FBQztpQkFBTSxDQUFDO2dCQUVOLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOytHQTVFVSw4QkFBOEI7bUdBQTlCLDhCQUE4Qix3SUNyQjNDLGlhQVFNLHFERFFNLHlCQUF5Qix5REFBRSwwQkFBMEIsMERBQUUsK0JBQStCOzs0RkFLckYsOEJBQThCO2tCQVAxQyxTQUFTO2lDQUNJLElBQUksV0FDUCxDQUFDLHlCQUF5QixFQUFFLDBCQUEwQixFQUFFLCtCQUErQixDQUFDLFlBQ3ZGLDBCQUEwQjs4SEFNM0IsR0FBRztzQkFBWCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT25lR3JpZFNlbGVjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL29uZS1ncmlkLXNlbGVjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IE9uZVJvd05vZGUgfSBmcm9tICcuLi8uLi9jb3JlL2luc3RhbnRzL29uZS1yb3ctbm9kZS5jbGFzcyc7XG5pbXBvcnQgeyBPbmVHcmlkQXBpIH0gZnJvbSAnLi4vLi4vY29yZS9pbnN0YW50cy9vbmUtZ3JpZC1hcGkuY2xhc3MnO1xuaW1wb3J0IHsgT25lR3JpZEV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvb25lLWdyaWQtZXZlbnQuc2VydmljZSc7XG5pbXBvcnQge1xuICBPbmVDaGVja2JveFN0YXRlLCBSb3dEYXRhQ2hhbmdlZEV2ZW50LFxuICBSb3dTZWxlY3Rpb25Nb2RlLFxuICBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQsXG59IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL29uZS1ldmVudC10eXBlcy5tb2RlbCdcbmltcG9ydCB7IEhlYWRlckNoZWNrYm94Q2hlY2tlZFBpcGUgfSBmcm9tICcuLi8uLi9jb3JlL3BpcGVzL2hlYWRlci1jaGVja2JveC1jaGVja2VkLnBpcGUnO1xuaW1wb3J0IHsgSGVhZGVyQ2hlY2tib3hEaXNhYmxlZFBpcGUgfSBmcm9tICcuLi8uLi9jb3JlL3BpcGVzL2hlYWRlci1jaGVja2JveC1kaXNhYmxlZC5waXBlJztcbmltcG9ydCB7IEhlYWRlckNoZWNrYm94SW5kZXRlcm1pbmF0ZVBpcGUgfSBmcm9tICcuLi8uLi9jb3JlL3BpcGVzL2hlYWRlci1jaGVja2JveC1pbmRldGVybWluYXRlLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0hlYWRlckNoZWNrYm94Q2hlY2tlZFBpcGUsIEhlYWRlckNoZWNrYm94RGlzYWJsZWRQaXBlLCBIZWFkZXJDaGVja2JveEluZGV0ZXJtaW5hdGVQaXBlXSxcbiAgc2VsZWN0b3I6ICdvbmUtZ3JpZC1jaGVja2JveC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vb25lLWdyaWQtY2hlY2tib3gtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29uZS1ncmlkLWNoZWNrYm94LWhlYWRlci5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIE9uZUdyaWRDaGVja2JveEhlYWRlckNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBhcGkhOiBPbmVHcmlkQXBpPFQ+O1xuICBASW5wdXQoKSBhbGxvd2VkRWRpdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBVbnN1YnNjcmliZSBjYWxsYmFja3MgZm9yIHRoZSB0d28gZ3JpZCBsaXN0ZW5lcnMgYmVsb3cuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgdGVhcmRvd246IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG5cbiAgcHVibGljIHN0YXRlOiBPbmVDaGVja2JveFN0YXRlID0gJ3VuY2hlY2tlZCc7XG4gIHB1YmxpYyByb3dOb2RlczogT25lUm93Tm9kZTxUPltdID0gW107XG4gIHB1YmxpYyBzZWxlY3Rpb25Nb2RlOiBSb3dTZWxlY3Rpb25Nb2RlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBPbmVHcmlkRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2VsZWN0aW9uU2VydmljZTogT25lR3JpZFNlbGVjdGlvblNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgIHRoaXMuc2VsZWN0aW9uTW9kZSA9IHRoaXMuYXBpLnJvd1NlbGVjdGlvbjtcblxuICAgIC8qKlxuICAgICAqIExpc3RlbiBSb3cgTm9kZSBTZWxlY3Rpb24gQ2hhbmdlZCBFdmVudFxuICAgICAqL1xuICAgIHRoaXMudGVhcmRvd24ucHVzaCh0aGlzLmV2ZW50U2VydmljZS5hZGRFdmVudExpc3RlbmVyKCdzZWxlY3Rpb25DaGFuZ2VkJywgKHBheWxvYWQ6IFNlbGVjdGlvbkNoYW5nZWRFdmVudDxUPikgPT4ge1xuXG4gICAgICB0aGlzLnJvd05vZGVzID0gdGhpcy5hcGkuZ2V0QWxsUm93Tm9kZXMoKTtcblxuICAgICAgY29uc3Qgcm93SWRzID0gdGhpcy5yb3dOb2RlcyAmJiB0aGlzLnJvd05vZGVzLmxlbmd0aCA+IDAgPyB0aGlzLnJvd05vZGVzLm1hcCgobm9kZTogT25lUm93Tm9kZTxUPikgPT4gbm9kZS5yb3dJZCkgOiBbXTtcblxuICAgICAgdGhpcy5zdGF0ZSA9IHRoaXMuc2VsZWN0aW9uU2VydmljZS5nZXRTZWxlY3RBbGxTdGF0ZShyb3dJZHMpO1xuICAgIH0pKTtcblxuICAgIC8qKlxuICAgICAqIExpc3RlbiBSb3cgRGF0YSBDaGFuZ2VkIEV2ZW50XG4gICAgICovXG4gICAgdGhpcy50ZWFyZG93bi5wdXNoKHRoaXMuZXZlbnRTZXJ2aWNlLmFkZEV2ZW50TGlzdGVuZXIoJ3Jvd0RhdGFDaGFuZ2VkJywgKHBheWxvYWQ6IFJvd0RhdGFDaGFuZ2VkRXZlbnQ8VD4pID0+IHtcblxuICAgICAgdGhpcy5yb3dOb2RlcyA9IHRoaXMuYXBpLmdldEFsbFJvd05vZGVzKCk7XG5cbiAgICAgIGNvbnN0IHJvd0lkczogc3RyaW5nW10gPSB0aGlzLnJvd05vZGVzICYmIHRoaXMucm93Tm9kZXMubGVuZ3RoID4gMCA/IHRoaXMucm93Tm9kZXMubWFwKChub2RlOiBPbmVSb3dOb2RlPFQ+KSA9PiBub2RlLnJvd0lkKSA6IFtdO1xuXG4gICAgICB0aGlzLnN0YXRlID0gdGhpcy5zZWxlY3Rpb25TZXJ2aWNlLmdldFNlbGVjdEFsbFN0YXRlKHJvd0lkcyk7XG4gICAgfSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cbiAgICAvLyBCb3RoIGxpc3RlbmVycyB3ZXJlIHJlZ2lzdGVyZWQgYW5kIG5ldmVyIHJlbGVhc2VkLiBUaGUgY29tcG9uZW50LXNjb3BlZFxuICAgIC8vIGV2ZW50IHNlcnZpY2UgaGFwcGVuZWQgdG8gY2xlYW4gdXAgYWZ0ZXIgdGhlbTsgcmVseWluZyBvbiB0aGF0IGxlZnQgdGhlXG4gICAgLy8gY29tcG9uZW50J3Mgb3duIGxpZmVjeWNsZSBpbmNvbXBsZXRlLlxuICAgIHRoaXMudGVhcmRvd24uZm9yRWFjaCh1bnN1YnNjcmliZSA9PiB1bnN1YnNjcmliZSgpKTtcblxuICAgIHRoaXMudGVhcmRvd24ubGVuZ3RoID0gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGUgU2VsZWN0aW9uIEFjdGlvblxuICAgKi9cbiAgdG9nZ2xlU2VsZWN0aW9uQWxsKGV2ZW50OiBhbnkpOiB2b2lkIHtcblxuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdzaW5nbGUnKSByZXR1cm47XG5cbiAgICBjb25zdCBjaGVja2VkOiBib29sZWFuID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQ7XG5cbiAgICBpZiAodGhpcy5yb3dOb2RlcyAmJiB0aGlzLnJvd05vZGVzLmxlbmd0aCA+IDApIHtcblxuICAgICAgaWYgKGNoZWNrZWQpIHtcblxuICAgICAgICB0aGlzLmFwaS5zZWxlY3RBbGwoKTtcblxuICAgICAgfSBlbHNlIHtcblxuICAgICAgICB0aGlzLmFwaS5kZXNlbGVjdEFsbCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm9uZS1ncmlkLWNoZWNrYm94XCI+XG4gICAgPGlucHV0XG4gICAgICAgIFtpZF09XCJhcGkuaWRcIlxuICAgICAgICBbdHlwZV09XCInY2hlY2tib3gnXCJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cInJvd05vZGVzIHwgaGVhZGVyQ2hlY2tib3hEaXNhYmxlZDpzZWxlY3Rpb25Nb2RlOmFsbG93ZWRFZGl0XCJcbiAgICAgICAgW2NoZWNrZWRdPVwicm93Tm9kZXMgfCBoZWFkZXJDaGVja2JveENoZWNrZWQ6c2VsZWN0aW9uTW9kZTpzdGF0ZVwiXG4gICAgICAgIFtpbmRldGVybWluYXRlXT1cInJvd05vZGVzIHwgaGVhZGVyQ2hlY2tib3hJbmRldGVybWluYXRlOnNlbGVjdGlvbk1vZGU6c3RhdGVcIlxuICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZVNlbGVjdGlvbkFsbCgkZXZlbnQpXCIgLz5cbjwvZGl2PiJdfQ==
|