@yuuvis/client-framework 0.9.1 → 0.11.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/esm2022/forms/lib/elements/data-grid/data-grid/data-grid.component.mjs +3 -3
- package/esm2022/object-details/lib/object-metadata/object-metadata.component.mjs +3 -3
- package/fesm2022/yuuvis-client-framework-forms.mjs +2 -2
- package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-details.mjs +2 -2
- package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
- package/package.json +4 -4
- package/styles/client-framework.scss +4 -0
|
@@ -154,7 +154,7 @@ export class DataGridComponent {
|
|
|
154
154
|
multi: true
|
|
155
155
|
},
|
|
156
156
|
DecimalPipe
|
|
157
|
-
], ngImport: i0, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;
|
|
157
|
+
], ngImport: i0, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i3.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }, { kind: "directive", type: CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }, { kind: "ngmodule", type: CdkTableModule }, { kind: "component", type: i4.CdkTable, selector: "cdk-table, table[cdk-table]", inputs: ["trackBy", "dataSource", "multiTemplateDataRows", "fixedLayout"], outputs: ["contentChanged"], exportAs: ["cdkTable"] }, { kind: "directive", type: i4.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i4.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i4.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i4.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }, { kind: "directive", type: i4.CdkCell, selector: "cdk-cell, td[cdk-cell]" }, { kind: "component", type: i4.CdkRow, selector: "cdk-row, tr[cdk-row]" }, { kind: "directive", type: i4.CdkHeaderCell, selector: "cdk-header-cell, th[cdk-header-cell]" }, { kind: "component", type: i4.CdkHeaderRow, selector: "cdk-header-row, tr[cdk-header-row]" }, { kind: "directive", type: i4.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "directive", type: CdkMenuTrigger, selector: "[cdkMenuTriggerFor]", inputs: ["cdkMenuTriggerFor", "cdkMenuPosition", "cdkMenuTriggerData"], outputs: ["cdkMenuOpened", "cdkMenuClosed"], exportAs: ["cdkMenuTriggerFor"] }, { kind: "directive", type: CdkMenuItem, selector: "[cdkMenuItem]", inputs: ["cdkMenuItemDisabled", "cdkMenuitemTypeaheadLabel"], outputs: ["cdkMenuItemTriggered"], exportAs: ["cdkMenuItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
158
158
|
}
|
|
159
159
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataGridComponent, decorators: [{
|
|
160
160
|
type: Component,
|
|
@@ -167,6 +167,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
167
167
|
DecimalPipe
|
|
168
168
|
], host: {
|
|
169
169
|
class: 'yuv-data-grid'
|
|
170
|
-
}, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;
|
|
170
|
+
}, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"] }]
|
|
171
171
|
}] });
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvZm9ybXMvc3JjL2xpYi9lbGVtZW50cy9kYXRhLWdyaWQvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2Zvcm1zL3NyYy9saWIvZWxlbWVudHMvZGF0YS1ncmlkL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25JLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFD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QWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxVQUFVLENBQUMsbUJBRzlELHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7NEJBQ2hELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELFdBQVc7cUJBQ1osUUFDSzt3QkFDSixLQUFLLEVBQUUsZUFBZTtxQkFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtNZW51LCBDZGtNZW51SXRlbSwgQ2RrTWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBDZGtUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERlY2ltYWxQaXBlLCBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlLCBTaXR1YXRpb24sIFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgWVVWX0lDT05TIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2ljb25zJztcbmltcG9ydCB7IFl2Y0ljb25Nb2R1bGUgfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWRpdFRhYmxlRGF0YUNvbXBvbmVudCB9IGZyb20gJy4uL2VkaXQtdGFibGUtZGF0YS9lZGl0LWRhdGEuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGFHcmlkU2l6ZVR5cGUgfSBmcm9tICcuLi9tb2RlbC9kYXRhLWdyaWQuaW50ZXJmYWNlJztcblxuY29uc3QgQ0RLX0lNUE9SVCA9IFtDZGtNZW51LCBDZGtUYWJsZU1vZHVsZSwgQ2RrTWVudVRyaWdnZXIsIENka01lbnVJdGVtXTtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1di1kYXRhLWdyaWQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ0NsYXNzLCBUcmFuc2xhdGVNb2R1bGUsIFl2Y0ljb25Nb2R1bGUsIC4uLkNES19JTVBPUlRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGEtZ3JpZC5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGFHcmlkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICBEZWNpbWFsUGlwZVxuICBdLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICd5dXYtZGF0YS1ncmlkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICByZWFkb25seSAjb3ZlcmxheSA9IGluamVjdChZdmNPdmVybGF5U2VydmljZSk7XG4gIHJlYWRvbmx5ICNjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICByZWFkb25seSAjZGVjaW1hbFBpcGUgPSBpbmplY3QoRGVjaW1hbFBpcGUpO1xuICByZWFkb25seSB0cm5hc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG5cbiAgc2l0dWF0aW9uID0gaW5wdXQ8U2l0dWF0aW9uPihTaXR1YXRpb24uRURJVCk7XG4gIGZvcm1FbGVtZW50ID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgZm9ybUNvbnRyb2wgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XG4gIGNsYXNzaWZpY2F0aW9ucyA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHNpemUgPSBpbnB1dDxEYXRhR3JpZFNpemVUeXBlPihEYXRhR3JpZFNpemVUeXBlLkFVVE8pO1xuXG4gIGRpc3BsYXllZENvbHVtbnMgPSBzaWduYWw8YW55W10+KFtdKTtcbiAgZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIGRhdGFTb3VyY2UgPSBzaWduYWw8YW55W10+KFtdKTtcblxuICB0YWJsZUxhYmVsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5mb3JtRWxlbWVudCgpPy5bJ2xhYmVsJ10gPz8gJycpO1xuXG4gIHNlbGVjdGVkUm93ID0gc2lnbmFsKG51bGwpO1xuXG4gIGluaXRhbFRhYmxlVXBkYXRlID0gdHJ1ZTtcblxuICBpY29ucyA9IHtcbiAgICBhZGQ6IFlVVl9JQ09OUy5hZGQsXG4gICAgbW9yZTogWVVWX0lDT05TLm1vcmVcbiAgfTtcblxuICAjbG9hZERhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIHVudHJhY2tlZCgoKSA9PiBmb3JtRWxlbWVudCAmJiB0aGlzLiN1cGRhdGVUYWJsZShmb3JtRWxlbWVudFsnZWxlbWVudHMnXSwgZm9ybUVsZW1lbnRbJ3ZhbHVlJ10gfHwgW10pKTtcbiAgfSk7XG5cbiAgI3NvdXJjZURhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2UoKTtcbiAgICAhdGhpcy5pbml0YWxUYWJsZVVwZGF0ZSAmJiB0aGlzLndyaXRlVmFsdWUoZGF0YVNvdXJjZS5maWx0ZXIoKHJvdykgPT4gIXJvdy5pc0FkZFJvdykpO1xuICAgIHRoaXMuaW5pdGFsVGFibGVVcGRhdGUgPSBmYWxzZTtcbiAgfSk7XG5cbiAgI29wZW5FZGl0T3ZlcmxheShlbGVtZW50RGF0YTogYW55IHwgbnVsbCwgYWRkaW5nID0gZmFsc2UpIHtcbiAgICByZXR1cm4gdGhpcy4jb3ZlcmxheVxuICAgICAgLm9wZW4oRWRpdFRhYmxlRGF0YUNvbXBvbmVudCwge1xuICAgICAgICBmb3JtRWxlbWVudDoge1xuICAgICAgICAgIC4uLnRoaXMuZm9ybUVsZW1lbnQoKVxuICAgICAgICB9LFxuICAgICAgICBlbGVtZW50RGF0YSxcbiAgICAgICAgc2l0dWF0aW9uOiB0aGlzLnNpdHVhdGlvbigpLFxuICAgICAgICBhZGRpbmcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRhYmxlTGFiZWwoKVxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuZGF0YSkpO1xuICB9XG5cbiAgY29weUxpbmUoZWxlbWVudDogYW55KSB7XG4gICAgdGhpcy4jY2xpcGJvYXJkU2VydmljZS5hZGRUb05hdmlnYXRvckNsaXBCb2FyZChKU09OLnN0cmluZ2lmeShlbGVtZW50KSk7XG4gIH1cblxuICBvbk1lbnVUcmlnZ2VydChlbGVtZW50OiBhbnkgfCBudWxsKSB7XG4gICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQoZWxlbWVudCk7XG4gIH1cblxuICBlZGl0Um93KGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuc2VsZWN0ZWRSb3cuc2V0KGVsZW1lbnQpO1xuICAgIHRoaXMuI29wZW5FZGl0T3ZlcmxheShlbGVtZW50KS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkubWFwKChpdGVtKSA9PiAoSlNPTi5zdHJpbmdpZnkoaXRlbSkgPT09IEpTT04uc3RyaW5naWZ5KGVsZW1lbnQpID8gcmVzdWx0IDogaXRlbSkpO1xuICAgICAgICBjb25zdCBmb3JtRWxlbWVudCA9IHRoaXMuZm9ybUVsZW1lbnQoKTtcbiAgICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIFsuLi51cGRhdGVkRGF0YV0pO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQobnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBhZGRSb3coKSB7XG4gICAgdGhpcy4jb3BlbkVkaXRPdmVybGF5KG51bGwsIHRydWUpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnREYXRhID0gdGhpcy5kYXRhU291cmNlKCk7XG4gICAgICBjb25zdCBkYXRhID0gWy4uLmN1cnJlbnREYXRhXTtcbiAgICAgIHJlc3VsdCAmJiBkYXRhLnB1c2gocmVzdWx0KTtcbiAgICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlUm93KGVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkuZmlsdGVyKChpdGVtKSA9PiBKU09OLnN0cmluZ2lmeShpdGVtKSAhPT0gSlNPTi5zdHJpbmdpZnkoZWxlbWVudCkpO1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIGZvcm1FbGVtZW50ICYmIHRoaXMuI3VwZGF0ZVRhYmxlKGZvcm1FbGVtZW50WydlbGVtZW50cyddLCB1cGRhdGVkRGF0YSk7XG4gIH1cblxuICAjY2VsbG9yKGVsZW1lbnQ6IGFueSwgdmFsdWU6IHN0cmluZykge1xuICAgIHN3aXRjaCAoZWxlbWVudC50eXBlKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGVjaW1hbCc6XG4gICAgICAgIHJldHVybiB0aGlzLiNkZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsdWUsICcxLjItNCcsIHRoaXMudHJuYXNsYXRlLmN1cnJlbnRMYW5nKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gICN1cGRhdGVUYWJsZShlbGVtZW50czogYW55LCBkYXRhOiBhbnlbXSA9IFtdKSB7XG4gICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoXG4gICAgICAgIGVsZW1lbnRzLnJlZHVjZSgoYWNjOiBhbnksIGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICBjb2x1bW5EZWY6IGVsLmxhYmVsLFxuICAgICAgICAgICAgaGVhZGVyOiBlbC5sYWJlbCxcbiAgICAgICAgICAgIGNlbGw6IChlbGVtZW50OiBhbnkpID0+IChlbGVtZW50LmlzQWRkUm93ID8gJycgOiB0aGlzLiNjZWxsb3IoZWwsIGVsZW1lbnRbZWwubGFiZWxdKSlcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoW10pO1xuICAgIH1cblxuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zLnNldChbLi4udGhpcy5kaXNwbGF5ZWRDb2x1bW5zKCkubWFwKChjb2wpID0+IGNvbC5jb2x1bW5EZWYpLCAnYWN0aW9ucyddKTtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc2V0KGRhdGEpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChmbjogKCkgPT4gdm9pZCkgPT4ge307XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgdmFsaWRhdGlvbkNoYW5nZSA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShvYmopO1xuICB9XG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBjb25zb2xlLmxvZygnc2V0RGlzYWJsZWRTdGF0ZTogJywgaXNEaXNhYmxlZCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGU6IGFueSkge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKGUpO1xuICB9XG59XG4iLCI8aGVhZGVyPlxuICA8aDM+e3sgdGFibGVMYWJlbCgpIH19PC9oMz5cbiAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgIDxidXR0b24gKGNsaWNrKT1cImFkZFJvdygpXCIgYXJpYS1sYWJlbD1cIkFkZCBSb3dcIiBjbGFzcz1cInRhYmxlLW9wdGlvbnMtYWRkLXJvd1wiPlxuICAgICAgPHl2Yy1pY29uIFtzdmddPVwiaWNvbnMuYWRkXCI+PC95dmMtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9oZWFkZXI+XG5AbGV0IGRpc3BsYXllZENvbCA9IGRpc3BsYXllZENvbHVtbnMoKTtcbkBsZXQgZGlzcGxheWVkQ29sQWN0aW9ucyA9IGRpc3BsYXllZENvbHVtbnNXaXRoQWN0aW9ucygpO1xuPGRpdiBjbGFzcz1cInRhYmxlLXdyYXBwZXJcIiBbbmdDbGFzc109XCJzaXplKClcIj5cbiAgPHRhYmxlIGNkay10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlKClcIj5cbiAgICA8IS0tIER5bmFtaWMgQ29sdW1ucyAtLT5cbiAgICBAZm9yIChjb2x1bW4gb2YgZGlzcGxheWVkQ29sOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxuZy1jb250YWluZXIgW2Nka0NvbHVtbkRlZl09XCJjb2x1bW4uY29sdW1uRGVmXCI+XG4gICAgICAgIDx0aCBjbGFzcz1cInN0aWNreS1jb2x1bW5cIiBjZGstaGVhZGVyLWNlbGwgKmNka0hlYWRlckNlbGxEZWY+e3sgY29sdW1uLmhlYWRlciB9fTwvdGg+XG4gICAgICAgIDx0ZCBjZGstY2VsbCAqY2RrQ2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgY29sdW1uLmNlbGwoZWxlbWVudCkgfX08L3RkPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLSBBY3Rpb25zIENvbHVtbiAoTm90IGluIGRpc3BsYXllZENvbHVtbnMpIC0tPlxuICAgIDxuZy1jb250YWluZXIgY2RrQ29sdW1uRGVmPVwiYWN0aW9uc1wiPlxuICAgICAgPHRoIGNsYXNzPVwiYWN0aW9ucy1oZWFkZXIgc3RpY2t5LWNvbHVtblwiIGNkay1oZWFkZXItY2VsbCAqY2RrSGVhZGVyQ2VsbERlZj48L3RoPlxuICAgICAgPHRkIGNsYXNzPVwiYWN0aW9ucy1yb3cgc3RpY2t5XCIgY2RrLWNlbGwgKmNka0NlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICA8IS0tIE9ubHkgc2hvdyB0aGUgYnV0dG9uIGluIHRoZSBsYXN0IChlbXB0eSkgcm93IC0tPlxuICAgICAgICBAaWYgKCFyZWFkb25seSgpKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkVkaXQgUm93XCJcbiAgICAgICAgICAgIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWJhci1pdGVtXCJcbiAgICAgICAgICAgIGNka01lbnVJdGVtXG4gICAgICAgICAgICAoY2RrTWVudU9wZW5lZCk9XCJvbk1lbnVUcmlnZ2VydChlbGVtZW50KVwiXG4gICAgICAgICAgICAoY2RrTWVudUNsb3NlZCk9XCJvbk1lbnVUcmlnZ2VydChudWxsKVwiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJGb3JdPVwib3B0aW9uc1wiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJEYXRhXT1cInsgZWxlbWVudDogZWxlbWVudCB9XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8eXZjLWljb24gW3N2Z109XCJpY29ucy5tb3JlXCI+PC95dmMtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDx0ciBjZGstaGVhZGVyLXJvdyAqY2RrSGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sQWN0aW9uc1wiPjwvdHI+XG4gICAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgICAgPHRyIChkYmxjbGljayk9XCJlZGl0Um93KHJvdylcIiBbY2xhc3Muc2VsZWN0ZWQtcm93XT1cInJvdyA9PT0gc2VsZWN0ZWRSb3coKVwiIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPHRyIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH1cbiAgPC90YWJsZT5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNvcHRpb25zIGxldC1lbGVtZW50PVwiZWxlbWVudFwiPlxuICA8ZGl2IGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51XCIgY2RrTWVudT5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiAoY2xpY2spPVwiY29weUxpbmUoZWxlbWVudClcIiBjZGtNZW51SXRlbT57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQuY29weScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiBjZGtNZW51SXRlbSAoY2xpY2spPVwiZWRpdFJvdyhlbGVtZW50KVwiPnt7ICd5dXYuZm9ybS5lbGVtZW50LmRhdGEuZ3JpZC5lZGl0JyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJ0YWJsZS1vcHRpb25zLW1lbnUtaXRlbVwiIGNka01lbnVJdGVtIChjbGljayk9XCJyZW1vdmVSb3coZWxlbWVudClcIj57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQucmVtb3ZlJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvZm9ybXMvc3JjL2xpYi9lbGVtZW50cy9kYXRhLWdyaWQvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2Zvcm1zL3NyYy9saWIvZWxlbWVudHMvZGF0YS1ncmlkL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25JLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFD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QWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxVQUFVLENBQUMsbUJBRzlELHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7NEJBQ2hELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELFdBQVc7cUJBQ1osUUFDSzt3QkFDSixLQUFLLEVBQUUsZUFBZTtxQkFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtNZW51LCBDZGtNZW51SXRlbSwgQ2RrTWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBDZGtUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERlY2ltYWxQaXBlLCBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlLCBTaXR1YXRpb24sIFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgWVVWX0lDT05TIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2ljb25zJztcbmltcG9ydCB7IFl2Y0ljb25Nb2R1bGUgfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWRpdFRhYmxlRGF0YUNvbXBvbmVudCB9IGZyb20gJy4uL2VkaXQtdGFibGUtZGF0YS9lZGl0LWRhdGEuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGFHcmlkU2l6ZVR5cGUgfSBmcm9tICcuLi9tb2RlbC9kYXRhLWdyaWQuaW50ZXJmYWNlJztcblxuY29uc3QgQ0RLX0lNUE9SVCA9IFtDZGtNZW51LCBDZGtUYWJsZU1vZHVsZSwgQ2RrTWVudVRyaWdnZXIsIENka01lbnVJdGVtXTtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1di1kYXRhLWdyaWQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ0NsYXNzLCBUcmFuc2xhdGVNb2R1bGUsIFl2Y0ljb25Nb2R1bGUsIC4uLkNES19JTVBPUlRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGEtZ3JpZC5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGFHcmlkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICBEZWNpbWFsUGlwZVxuICBdLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICd5dXYtZGF0YS1ncmlkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICByZWFkb25seSAjb3ZlcmxheSA9IGluamVjdChZdmNPdmVybGF5U2VydmljZSk7XG4gIHJlYWRvbmx5ICNjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICByZWFkb25seSAjZGVjaW1hbFBpcGUgPSBpbmplY3QoRGVjaW1hbFBpcGUpO1xuICByZWFkb25seSB0cm5hc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG5cbiAgc2l0dWF0aW9uID0gaW5wdXQ8U2l0dWF0aW9uPihTaXR1YXRpb24uRURJVCk7XG4gIGZvcm1FbGVtZW50ID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgZm9ybUNvbnRyb2wgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XG4gIGNsYXNzaWZpY2F0aW9ucyA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHNpemUgPSBpbnB1dDxEYXRhR3JpZFNpemVUeXBlPihEYXRhR3JpZFNpemVUeXBlLkFVVE8pO1xuXG4gIGRpc3BsYXllZENvbHVtbnMgPSBzaWduYWw8YW55W10+KFtdKTtcbiAgZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIGRhdGFTb3VyY2UgPSBzaWduYWw8YW55W10+KFtdKTtcblxuICB0YWJsZUxhYmVsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5mb3JtRWxlbWVudCgpPy5bJ2xhYmVsJ10gPz8gJycpO1xuXG4gIHNlbGVjdGVkUm93ID0gc2lnbmFsKG51bGwpO1xuXG4gIGluaXRhbFRhYmxlVXBkYXRlID0gdHJ1ZTtcblxuICBpY29ucyA9IHtcbiAgICBhZGQ6IFlVVl9JQ09OUy5hZGQsXG4gICAgbW9yZTogWVVWX0lDT05TLm1vcmVcbiAgfTtcblxuICAjbG9hZERhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIHVudHJhY2tlZCgoKSA9PiBmb3JtRWxlbWVudCAmJiB0aGlzLiN1cGRhdGVUYWJsZShmb3JtRWxlbWVudFsnZWxlbWVudHMnXSwgZm9ybUVsZW1lbnRbJ3ZhbHVlJ10gfHwgW10pKTtcbiAgfSk7XG5cbiAgI3NvdXJjZURhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2UoKTtcbiAgICAhdGhpcy5pbml0YWxUYWJsZVVwZGF0ZSAmJiB0aGlzLndyaXRlVmFsdWUoZGF0YVNvdXJjZS5maWx0ZXIoKHJvdykgPT4gIXJvdy5pc0FkZFJvdykpO1xuICAgIHRoaXMuaW5pdGFsVGFibGVVcGRhdGUgPSBmYWxzZTtcbiAgfSk7XG5cbiAgI29wZW5FZGl0T3ZlcmxheShlbGVtZW50RGF0YTogYW55IHwgbnVsbCwgYWRkaW5nID0gZmFsc2UpIHtcbiAgICByZXR1cm4gdGhpcy4jb3ZlcmxheVxuICAgICAgLm9wZW4oRWRpdFRhYmxlRGF0YUNvbXBvbmVudCwge1xuICAgICAgICBmb3JtRWxlbWVudDoge1xuICAgICAgICAgIC4uLnRoaXMuZm9ybUVsZW1lbnQoKVxuICAgICAgICB9LFxuICAgICAgICBlbGVtZW50RGF0YSxcbiAgICAgICAgc2l0dWF0aW9uOiB0aGlzLnNpdHVhdGlvbigpLFxuICAgICAgICBhZGRpbmcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRhYmxlTGFiZWwoKVxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuZGF0YSkpO1xuICB9XG5cbiAgY29weUxpbmUoZWxlbWVudDogYW55KSB7XG4gICAgdGhpcy4jY2xpcGJvYXJkU2VydmljZS5hZGRUb05hdmlnYXRvckNsaXBCb2FyZChKU09OLnN0cmluZ2lmeShlbGVtZW50KSk7XG4gIH1cblxuICBvbk1lbnVUcmlnZ2VydChlbGVtZW50OiBhbnkgfCBudWxsKSB7XG4gICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQoZWxlbWVudCk7XG4gIH1cblxuICBlZGl0Um93KGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuc2VsZWN0ZWRSb3cuc2V0KGVsZW1lbnQpO1xuICAgIHRoaXMuI29wZW5FZGl0T3ZlcmxheShlbGVtZW50KS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkubWFwKChpdGVtKSA9PiAoSlNPTi5zdHJpbmdpZnkoaXRlbSkgPT09IEpTT04uc3RyaW5naWZ5KGVsZW1lbnQpID8gcmVzdWx0IDogaXRlbSkpO1xuICAgICAgICBjb25zdCBmb3JtRWxlbWVudCA9IHRoaXMuZm9ybUVsZW1lbnQoKTtcbiAgICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIFsuLi51cGRhdGVkRGF0YV0pO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQobnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBhZGRSb3coKSB7XG4gICAgdGhpcy4jb3BlbkVkaXRPdmVybGF5KG51bGwsIHRydWUpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnREYXRhID0gdGhpcy5kYXRhU291cmNlKCk7XG4gICAgICBjb25zdCBkYXRhID0gWy4uLmN1cnJlbnREYXRhXTtcbiAgICAgIHJlc3VsdCAmJiBkYXRhLnB1c2gocmVzdWx0KTtcbiAgICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlUm93KGVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkuZmlsdGVyKChpdGVtKSA9PiBKU09OLnN0cmluZ2lmeShpdGVtKSAhPT0gSlNPTi5zdHJpbmdpZnkoZWxlbWVudCkpO1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIGZvcm1FbGVtZW50ICYmIHRoaXMuI3VwZGF0ZVRhYmxlKGZvcm1FbGVtZW50WydlbGVtZW50cyddLCB1cGRhdGVkRGF0YSk7XG4gIH1cblxuICAjY2VsbG9yKGVsZW1lbnQ6IGFueSwgdmFsdWU6IHN0cmluZykge1xuICAgIHN3aXRjaCAoZWxlbWVudC50eXBlKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGVjaW1hbCc6XG4gICAgICAgIHJldHVybiB0aGlzLiNkZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsdWUsICcxLjItNCcsIHRoaXMudHJuYXNsYXRlLmN1cnJlbnRMYW5nKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gICN1cGRhdGVUYWJsZShlbGVtZW50czogYW55LCBkYXRhOiBhbnlbXSA9IFtdKSB7XG4gICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoXG4gICAgICAgIGVsZW1lbnRzLnJlZHVjZSgoYWNjOiBhbnksIGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICBjb2x1bW5EZWY6IGVsLmxhYmVsLFxuICAgICAgICAgICAgaGVhZGVyOiBlbC5sYWJlbCxcbiAgICAgICAgICAgIGNlbGw6IChlbGVtZW50OiBhbnkpID0+IChlbGVtZW50LmlzQWRkUm93ID8gJycgOiB0aGlzLiNjZWxsb3IoZWwsIGVsZW1lbnRbZWwubGFiZWxdKSlcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoW10pO1xuICAgIH1cblxuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zLnNldChbLi4udGhpcy5kaXNwbGF5ZWRDb2x1bW5zKCkubWFwKChjb2wpID0+IGNvbC5jb2x1bW5EZWYpLCAnYWN0aW9ucyddKTtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc2V0KGRhdGEpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChmbjogKCkgPT4gdm9pZCkgPT4ge307XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgdmFsaWRhdGlvbkNoYW5nZSA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShvYmopO1xuICB9XG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBjb25zb2xlLmxvZygnc2V0RGlzYWJsZWRTdGF0ZTogJywgaXNEaXNhYmxlZCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGU6IGFueSkge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKGUpO1xuICB9XG59XG4iLCI8aGVhZGVyPlxuICA8aDM+e3sgdGFibGVMYWJlbCgpIH19PC9oMz5cbiAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgIDxidXR0b24gKGNsaWNrKT1cImFkZFJvdygpXCIgYXJpYS1sYWJlbD1cIkFkZCBSb3dcIiBjbGFzcz1cInRhYmxlLW9wdGlvbnMtYWRkLXJvd1wiPlxuICAgICAgPHl2Yy1pY29uIFtzdmddPVwiaWNvbnMuYWRkXCI+PC95dmMtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9oZWFkZXI+XG5AbGV0IGRpc3BsYXllZENvbCA9IGRpc3BsYXllZENvbHVtbnMoKTtcbkBsZXQgZGlzcGxheWVkQ29sQWN0aW9ucyA9IGRpc3BsYXllZENvbHVtbnNXaXRoQWN0aW9ucygpO1xuPGRpdiBjbGFzcz1cInRhYmxlLXdyYXBwZXJcIiBbbmdDbGFzc109XCJzaXplKClcIj5cbiAgPHRhYmxlIGNkay10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlKClcIj5cbiAgICA8IS0tIER5bmFtaWMgQ29sdW1ucyAtLT5cbiAgICBAZm9yIChjb2x1bW4gb2YgZGlzcGxheWVkQ29sOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxuZy1jb250YWluZXIgW2Nka0NvbHVtbkRlZl09XCJjb2x1bW4uY29sdW1uRGVmXCI+XG4gICAgICAgIDx0aCBjbGFzcz1cInN0aWNreS1jb2x1bW5cIiBjZGstaGVhZGVyLWNlbGwgKmNka0hlYWRlckNlbGxEZWY+e3sgY29sdW1uLmhlYWRlciB9fTwvdGg+XG4gICAgICAgIDx0ZCBjZGstY2VsbCAqY2RrQ2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgY29sdW1uLmNlbGwoZWxlbWVudCkgfX08L3RkPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLSBBY3Rpb25zIENvbHVtbiAoTm90IGluIGRpc3BsYXllZENvbHVtbnMpIC0tPlxuICAgIDxuZy1jb250YWluZXIgY2RrQ29sdW1uRGVmPVwiYWN0aW9uc1wiPlxuICAgICAgPHRoIGNsYXNzPVwiYWN0aW9ucy1oZWFkZXIgc3RpY2t5LWNvbHVtblwiIGNkay1oZWFkZXItY2VsbCAqY2RrSGVhZGVyQ2VsbERlZj48L3RoPlxuICAgICAgPHRkIGNsYXNzPVwiYWN0aW9ucy1yb3cgc3RpY2t5XCIgY2RrLWNlbGwgKmNka0NlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICA8IS0tIE9ubHkgc2hvdyB0aGUgYnV0dG9uIGluIHRoZSBsYXN0IChlbXB0eSkgcm93IC0tPlxuICAgICAgICBAaWYgKCFyZWFkb25seSgpKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkVkaXQgUm93XCJcbiAgICAgICAgICAgIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWJhci1pdGVtXCJcbiAgICAgICAgICAgIGNka01lbnVJdGVtXG4gICAgICAgICAgICAoY2RrTWVudU9wZW5lZCk9XCJvbk1lbnVUcmlnZ2VydChlbGVtZW50KVwiXG4gICAgICAgICAgICAoY2RrTWVudUNsb3NlZCk9XCJvbk1lbnVUcmlnZ2VydChudWxsKVwiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJGb3JdPVwib3B0aW9uc1wiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJEYXRhXT1cInsgZWxlbWVudDogZWxlbWVudCB9XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8eXZjLWljb24gW3N2Z109XCJpY29ucy5tb3JlXCI+PC95dmMtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDx0ciBjZGstaGVhZGVyLXJvdyAqY2RrSGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sQWN0aW9uc1wiPjwvdHI+XG4gICAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgICAgPHRyIChkYmxjbGljayk9XCJlZGl0Um93KHJvdylcIiBbY2xhc3Muc2VsZWN0ZWQtcm93XT1cInJvdyA9PT0gc2VsZWN0ZWRSb3coKVwiIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPHRyIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH1cbiAgPC90YWJsZT5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNvcHRpb25zIGxldC1lbGVtZW50PVwiZWxlbWVudFwiPlxuICA8ZGl2IGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51XCIgY2RrTWVudT5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiAoY2xpY2spPVwiY29weUxpbmUoZWxlbWVudClcIiBjZGtNZW51SXRlbT57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQuY29weScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiBjZGtNZW51SXRlbSAoY2xpY2spPVwiZWRpdFJvdyhlbGVtZW50KVwiPnt7ICd5dXYuZm9ybS5lbGVtZW50LmRhdGEuZ3JpZC5lZGl0JyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJ0YWJsZS1vcHRpb25zLW1lbnUtaXRlbVwiIGNka01lbnVJdGVtIChjbGljayk9XCJyZW1vdmVSb3coZWxlbWVudClcIj57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQucmVtb3ZlJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -187,16 +187,16 @@ export class ObjectMetadataComponent {
|
|
|
187
187
|
this.#formSubscriptions.forEach((s) => s.unsubscribe());
|
|
188
188
|
}
|
|
189
189
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectMetadataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
190
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectMetadataComponent, isStandalone: true, selector: "yuv-object-metadata", inputs: { situation: { classPropertyName: "situation", publicName: "situation", isSignal: false, isRequired: false, transformFunction: null }, formDisabled: { classPropertyName: "formDisabled", publicName: "formDisabled", isSignal: false, isRequired: false, transformFunction: null }, dmsObject: { classPropertyName: "dmsObject", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, flavoredDmsObject: { classPropertyName: "flavoredDmsObject", publicName: "flavoredDmsObject", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { indexDataSaved: "indexDataSaved", statusChanged: "statusChanged" }, host: { properties: { "class.empty": "empty()" } }, viewQueries: [{ propertyName: "objectForms", predicate: ObjectFormComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<main>\n @if (empty()) {\n <div class=\"empty\">\n <p>{{ 'yuv.object-metadata.empty.message' | translate }}</p>\n </div>\n } @else {\n <yuv-object-form [formOptions]=\"mainFormOptions()\" (statusChanged)=\"onFormStatusChanged('main', $event)\"></yuv-object-form>\n\n @for (fo of flavorFormOptions(); track $index) {\n <details [attr.open]=\"$index === 0\">\n <summary><yvc-icon [svg]=\"fo.icon\"></yvc-icon> {{ fo.label }}<yvc-icon class=\"arr\" [svg]=\"arrow\"></yvc-icon></summary>\n <yuv-object-form [formOptions]=\"fo.formOptions\" (statusChanged)=\"onFormStatusChanged(fo.id, $event)\"></yuv-object-form>\n </details>\n }\n }\n</main>\n<footer [ngClass]=\"{ visible: controlsVisible() }\">\n <button class=\"secondary\" (click)=\"resetForm()\" [hidden]=\"!combinedFormState?.dirty\" [disabled]=\"!combinedFormState?.dirty\">\n {{ 'yuv.object-metadata.button.reset' | translate }}\n </button>\n <button class=\"primary\" [ngClass]=\"{ spinning: busy() }\" (click)=\"save()\" [disabled]=\"!combinedFormState?.dirty || combinedFormState?.invalid\">\n {{ 'yuv.object-metadata.button.save' | translate }}\n </button>\n</footer>\n", styles: [":host{--om-footer-background: var(--panel-background);--om-footer-border-color: var(--panel-divider-color);--om-section-max-width: 70ch;display:flex;height:100%;overflow:hidden;position:relative;background-color:var(--panel-background-grey)}:host.empty main{justify-content:center;align-items:center}:host main{overflow-y:auto;width:100%;display:flex;flex-flow:column}:host footer{position:absolute;bottom:0;left:0;right:0;grid-area:footer;background:var(--om-footer-background);border-top:1px solid var(--om-footer-border-color);opacity:0;display:flex;align-items:center;justify-content:end;gap:calc(var(--app-pane-padding) / 4);padding:calc(var(--app-pane-padding) / 2)}:host footer.visible{animation:controlsAppear .2s ease-in-out forwards}:host main{padding:var(--app-pane-padding)}:host main details{background-color:var(--panel-background);border:1px solid var(--panel-divider-color);width:var(--om-section-max-width);max-width:100%;margin-inline:auto;box-sizing:border-box}:host main details:not(:last-child){margin-block-end:var(--app-pane-padding)}:host main details[open] yvc-icon.arr{transform:rotate(180deg)}:host main details summary{padding:calc(var(--app-pane-padding) / 2);cursor:pointer;display:flex;align-items:center;font-weight:700;color:var(--text-color-caption);position:relative}:host main details summary::marker{display:none}:host main details summary yvc-icon{--icon-size: 18px;margin-inline-end:calc(var(--app-pane-padding) / 2)}:host main details summary yvc-icon.arr{position:absolute;inset-inline-end:0}@keyframes controlsAppear{0%{opacity:0;translate:0 var(--app-pane-padding)}to{opacity:1;translate:0 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ObjectFormComponent, selector: "yuv-object-form", inputs: ["formOptions", "inert", "elementExtensions", "isInnerTableForm"], outputs: ["statusChanged", "onFormReady"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i3.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }] }); }
|
|
190
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectMetadataComponent, isStandalone: true, selector: "yuv-object-metadata", inputs: { situation: { classPropertyName: "situation", publicName: "situation", isSignal: false, isRequired: false, transformFunction: null }, formDisabled: { classPropertyName: "formDisabled", publicName: "formDisabled", isSignal: false, isRequired: false, transformFunction: null }, dmsObject: { classPropertyName: "dmsObject", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, flavoredDmsObject: { classPropertyName: "flavoredDmsObject", publicName: "flavoredDmsObject", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { indexDataSaved: "indexDataSaved", statusChanged: "statusChanged" }, host: { properties: { "class.empty": "empty()" } }, viewQueries: [{ propertyName: "objectForms", predicate: ObjectFormComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<main>\n @if (empty()) {\n <div class=\"empty\">\n <p>{{ 'yuv.object-metadata.empty.message' | translate }}</p>\n </div>\n } @else {\n <yuv-object-form [formOptions]=\"mainFormOptions()\" (statusChanged)=\"onFormStatusChanged('main', $event)\"></yuv-object-form>\n\n @for (fo of flavorFormOptions(); track $index) {\n <details [attr.open]=\"$index === 0\">\n <summary><yvc-icon [svg]=\"fo.icon\"></yvc-icon> {{ fo.label }}<yvc-icon class=\"arr\" [svg]=\"arrow\"></yvc-icon></summary>\n <yuv-object-form [formOptions]=\"fo.formOptions\" (statusChanged)=\"onFormStatusChanged(fo.id, $event)\"></yuv-object-form>\n </details>\n }\n }\n</main>\n<footer [ngClass]=\"{ visible: controlsVisible() }\">\n <button class=\"secondary\" (click)=\"resetForm()\" [hidden]=\"!combinedFormState?.dirty\" [disabled]=\"!combinedFormState?.dirty\">\n {{ 'yuv.object-metadata.button.reset' | translate }}\n </button>\n <button class=\"primary\" [ngClass]=\"{ spinning: busy() }\" (click)=\"save()\" [disabled]=\"!combinedFormState?.dirty || combinedFormState?.invalid\">\n {{ 'yuv.object-metadata.button.save' | translate }}\n </button>\n</footer>\n", styles: [":host{--om-footer-background: var(--panel-background);--om-footer-border-color: var(--panel-divider-color);--om-section-max-width: 70ch;display:flex;height:100%;overflow:hidden;position:relative;background-color:var(--panel-background-grey)}:host.empty main{justify-content:center;align-items:center}:host main{overflow-y:auto;width:100%;display:flex;flex-flow:column;margin-bottom:calc(var(--app-pane-padding) * 3)}:host footer{position:absolute;bottom:0;left:0;right:0;grid-area:footer;background:var(--om-footer-background);border-top:1px solid var(--om-footer-border-color);opacity:0;display:flex;align-items:center;justify-content:end;gap:calc(var(--app-pane-padding) / 4);padding:calc(var(--app-pane-padding) / 2)}:host footer.visible{animation:controlsAppear .2s ease-in-out forwards}:host main{padding:var(--app-pane-padding)}:host main details{background-color:var(--panel-background);border:1px solid var(--panel-divider-color);width:var(--om-section-max-width);max-width:100%;margin-inline:auto;box-sizing:border-box}:host main details:not(:last-child){margin-block-end:var(--app-pane-padding)}:host main details[open] yvc-icon.arr{transform:rotate(180deg)}:host main details summary{padding:calc(var(--app-pane-padding) / 2);cursor:pointer;display:flex;align-items:center;font-weight:700;color:var(--text-color-caption);position:relative}:host main details summary::marker{display:none}:host main details summary yvc-icon{--icon-size: 18px;margin-inline-end:calc(var(--app-pane-padding) / 2)}:host main details summary yvc-icon.arr{position:absolute;inset-inline-end:0}@keyframes controlsAppear{0%{opacity:0;translate:0 var(--app-pane-padding)}to{opacity:1;translate:0 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ObjectFormComponent, selector: "yuv-object-form", inputs: ["formOptions", "inert", "elementExtensions", "isInnerTableForm"], outputs: ["statusChanged", "onFormReady"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i3.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }] }); }
|
|
191
191
|
}
|
|
192
192
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectMetadataComponent, decorators: [{
|
|
193
193
|
type: Component,
|
|
194
194
|
args: [{ selector: 'yuv-object-metadata', standalone: true, imports: [CommonModule, ObjectFormComponent, TranslateModule, ReactiveFormsModule, YvcIconModule], host: {
|
|
195
195
|
'[class.empty]': 'empty()'
|
|
196
|
-
}, template: "<main>\n @if (empty()) {\n <div class=\"empty\">\n <p>{{ 'yuv.object-metadata.empty.message' | translate }}</p>\n </div>\n } @else {\n <yuv-object-form [formOptions]=\"mainFormOptions()\" (statusChanged)=\"onFormStatusChanged('main', $event)\"></yuv-object-form>\n\n @for (fo of flavorFormOptions(); track $index) {\n <details [attr.open]=\"$index === 0\">\n <summary><yvc-icon [svg]=\"fo.icon\"></yvc-icon> {{ fo.label }}<yvc-icon class=\"arr\" [svg]=\"arrow\"></yvc-icon></summary>\n <yuv-object-form [formOptions]=\"fo.formOptions\" (statusChanged)=\"onFormStatusChanged(fo.id, $event)\"></yuv-object-form>\n </details>\n }\n }\n</main>\n<footer [ngClass]=\"{ visible: controlsVisible() }\">\n <button class=\"secondary\" (click)=\"resetForm()\" [hidden]=\"!combinedFormState?.dirty\" [disabled]=\"!combinedFormState?.dirty\">\n {{ 'yuv.object-metadata.button.reset' | translate }}\n </button>\n <button class=\"primary\" [ngClass]=\"{ spinning: busy() }\" (click)=\"save()\" [disabled]=\"!combinedFormState?.dirty || combinedFormState?.invalid\">\n {{ 'yuv.object-metadata.button.save' | translate }}\n </button>\n</footer>\n", styles: [":host{--om-footer-background: var(--panel-background);--om-footer-border-color: var(--panel-divider-color);--om-section-max-width: 70ch;display:flex;height:100%;overflow:hidden;position:relative;background-color:var(--panel-background-grey)}:host.empty main{justify-content:center;align-items:center}:host main{overflow-y:auto;width:100%;display:flex;flex-flow:column}:host footer{position:absolute;bottom:0;left:0;right:0;grid-area:footer;background:var(--om-footer-background);border-top:1px solid var(--om-footer-border-color);opacity:0;display:flex;align-items:center;justify-content:end;gap:calc(var(--app-pane-padding) / 4);padding:calc(var(--app-pane-padding) / 2)}:host footer.visible{animation:controlsAppear .2s ease-in-out forwards}:host main{padding:var(--app-pane-padding)}:host main details{background-color:var(--panel-background);border:1px solid var(--panel-divider-color);width:var(--om-section-max-width);max-width:100%;margin-inline:auto;box-sizing:border-box}:host main details:not(:last-child){margin-block-end:var(--app-pane-padding)}:host main details[open] yvc-icon.arr{transform:rotate(180deg)}:host main details summary{padding:calc(var(--app-pane-padding) / 2);cursor:pointer;display:flex;align-items:center;font-weight:700;color:var(--text-color-caption);position:relative}:host main details summary::marker{display:none}:host main details summary yvc-icon{--icon-size: 18px;margin-inline-end:calc(var(--app-pane-padding) / 2)}:host main details summary yvc-icon.arr{position:absolute;inset-inline-end:0}@keyframes controlsAppear{0%{opacity:0;translate:0 var(--app-pane-padding)}to{opacity:1;translate:0 0}}\n"] }]
|
|
196
|
+
}, template: "<main>\n @if (empty()) {\n <div class=\"empty\">\n <p>{{ 'yuv.object-metadata.empty.message' | translate }}</p>\n </div>\n } @else {\n <yuv-object-form [formOptions]=\"mainFormOptions()\" (statusChanged)=\"onFormStatusChanged('main', $event)\"></yuv-object-form>\n\n @for (fo of flavorFormOptions(); track $index) {\n <details [attr.open]=\"$index === 0\">\n <summary><yvc-icon [svg]=\"fo.icon\"></yvc-icon> {{ fo.label }}<yvc-icon class=\"arr\" [svg]=\"arrow\"></yvc-icon></summary>\n <yuv-object-form [formOptions]=\"fo.formOptions\" (statusChanged)=\"onFormStatusChanged(fo.id, $event)\"></yuv-object-form>\n </details>\n }\n }\n</main>\n<footer [ngClass]=\"{ visible: controlsVisible() }\">\n <button class=\"secondary\" (click)=\"resetForm()\" [hidden]=\"!combinedFormState?.dirty\" [disabled]=\"!combinedFormState?.dirty\">\n {{ 'yuv.object-metadata.button.reset' | translate }}\n </button>\n <button class=\"primary\" [ngClass]=\"{ spinning: busy() }\" (click)=\"save()\" [disabled]=\"!combinedFormState?.dirty || combinedFormState?.invalid\">\n {{ 'yuv.object-metadata.button.save' | translate }}\n </button>\n</footer>\n", styles: [":host{--om-footer-background: var(--panel-background);--om-footer-border-color: var(--panel-divider-color);--om-section-max-width: 70ch;display:flex;height:100%;overflow:hidden;position:relative;background-color:var(--panel-background-grey)}:host.empty main{justify-content:center;align-items:center}:host main{overflow-y:auto;width:100%;display:flex;flex-flow:column;margin-bottom:calc(var(--app-pane-padding) * 3)}:host footer{position:absolute;bottom:0;left:0;right:0;grid-area:footer;background:var(--om-footer-background);border-top:1px solid var(--om-footer-border-color);opacity:0;display:flex;align-items:center;justify-content:end;gap:calc(var(--app-pane-padding) / 4);padding:calc(var(--app-pane-padding) / 2)}:host footer.visible{animation:controlsAppear .2s ease-in-out forwards}:host main{padding:var(--app-pane-padding)}:host main details{background-color:var(--panel-background);border:1px solid var(--panel-divider-color);width:var(--om-section-max-width);max-width:100%;margin-inline:auto;box-sizing:border-box}:host main details:not(:last-child){margin-block-end:var(--app-pane-padding)}:host main details[open] yvc-icon.arr{transform:rotate(180deg)}:host main details summary{padding:calc(var(--app-pane-padding) / 2);cursor:pointer;display:flex;align-items:center;font-weight:700;color:var(--text-color-caption);position:relative}:host main details summary::marker{display:none}:host main details summary yvc-icon{--icon-size: 18px;margin-inline-end:calc(var(--app-pane-padding) / 2)}:host main details summary yvc-icon.arr{position:absolute;inset-inline-end:0}@keyframes controlsAppear{0%{opacity:0;translate:0 var(--app-pane-padding)}to{opacity:1;translate:0 0}}\n"] }]
|
|
197
197
|
}], propDecorators: { situation: [{
|
|
198
198
|
type: Input
|
|
199
199
|
}], formDisabled: [{
|
|
200
200
|
type: Input
|
|
201
201
|
}] } });
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWRldGFpbHMvc3JjL2xpYi9vYmplY3QtbWV0YWRhdGEvb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWRldGFpbHMvc3JjL2xpYi9vYmplY3QtbWV0YWRhdGEvb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBRUwsVUFBVSxFQUVWLG1CQUFtQixFQUVuQixxQkFBcUIsRUFDckIsU0FBUyxFQUNULGFBQWEsRUFDYixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUEwQixtQkFBbUIsRUFBcUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0SCxPQUFPLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7OztBQWEvRCxNQUFNLE9BQU8sdUJBQXVCO0lBVnBDO1FBV0Usb0JBQWUsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNoRCx5QkFBb0IsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNuRCxjQUFTLEdBQUcsTUFB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LENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLDJDQUEyQyxDQUFDLENBQUMsQ0FBQztRQUM1SCxDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxjQUFjO1lBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQzsrR0FqTVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsaXpCQU9jLG1CQUFtQixnRUNwQ3JFLG9xQ0F3QkEsK3BEREZZLFlBQVksNkhBQUUsbUJBQW1CLGlMQUFFLGVBQWUsMkZBQUUsbUJBQW1CLDhCQUFFLGFBQWE7OzRGQU9yRix1QkFBdUI7a0JBVm5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLFFBRzNGO3dCQUNKLGVBQWUsRUFBRSxTQUFTO3FCQUMzQjs4QkFzQ1EsU0FBUztzQkFBakIsS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgRG1zT2JqZWN0LFxuICBEbXNTZXJ2aWNlLFxuICBGbGF2b3JlZERtc09iamVjdCxcbiAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgT2JqZWN0VHlwZUZsYXZvcixcbiAgUGVuZGluZ0NoYW5nZXNTZXJ2aWNlLFxuICBTaXR1YXRpb24sXG4gIFN5c3RlbVNlcnZpY2UsXG4gIFRyYW5zbGF0ZU1vZHVsZSxcbiAgVHJhbnNsYXRlU2VydmljZVxufSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQsIE9iamVjdEZvcm1Db21wb25lbnQsIE9iamVjdEZvcm1PcHRpb25zIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1mb3JtJztcbmltcG9ydCB7IElDT05TLCBZdmNJY29uTW9kdWxlIH0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1di1vYmplY3QtbWV0YWRhdGEnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBPYmplY3RGb3JtQ29tcG9uZW50LCBUcmFuc2xhdGVNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFl2Y0ljb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29iamVjdC1tZXRhZGF0YS5jb21wb25lbnQuc2NzcycsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmVtcHR5XSc6ICdlbXB0eSgpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9iamVjdE1ldGFkYXRhQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgI3BlbmRpbmdDaGFuZ2VzID0gaW5qZWN0KFBlbmRpbmdDaGFuZ2VzU2VydmljZSk7XG4gICNub3RpZmljYXRpb25TZXJ2aWNlID0gaW5qZWN0KE5vdGlmaWNhdGlvblNlcnZpY2UpO1xuICB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gICNzeXN0ZW0gPSBpbmplY3QoU3lzdGVtU2VydmljZSk7XG4gICNkbXNTZXJ2aWNlID0gaW5qZWN0KERtc1NlcnZpY2UpO1xuXG4gIG9iamVjdEZvcm1zID0gdmlld0NoaWxkcmVuPE9iamVjdEZvcm1Db21wb25lbnQ+KE9iamVjdEZvcm1Db21wb25lbnQpO1xuXG4gICNwZW5kaW5nVGFza0lkPzogc3RyaW5nO1xuICAjZG1zT2JqZWN0PzogRG1zT2JqZWN0O1xuICAjZm9ybVN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gICNpbml0aWFsRGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcblxuICBhcnJvdyA9IElDT05TLmFycm93RG93bjtcbiAgYnVzeSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIGVtcHR5ID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29udHJvbHNWaXNpYmxlID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICAvLyBmb3JtIG9mIHRoZSBkbXMgb2JqZWN0IGl0c2VsZlxuICBtYWluRm9ybU9wdGlvbnMgPSBzaWduYWw8T2JqZWN0Rm9ybU9wdGlvbnMgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIC8vIGZvcm1zIG9mZiBhbGxwaWVkIGZsYXZvcnNcbiAgZmxhdm9yRm9ybU9wdGlvbnMgPSBzaWduYWw8XG4gICAge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgICBpY29uPzogc3RyaW5nO1xuICAgICAgZm9ybU9wdGlvbnM6IE9iamVjdEZvcm1PcHRpb25zO1xuICAgIH1bXVxuICA+KFtdKTtcbiAgLy8gc3RhdGUgb2YgYWxsIGluZGl2aWR1YWwgZm9ybXNcbiAgI2Zvcm1TdGF0ZXM6IE1hcDxzdHJpbmcsIEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+ID0gbmV3IE1hcDxzdHJpbmcsIEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEZvcm0gc2l0dWF0aW9uLCBpZiBub3Qgc2V0IGRlZmF1bHQgd2lsbCBiZSAnRURJVCdcbiAgICovXG4gIEBJbnB1dCgpIHNpdHVhdGlvbjogU2l0dWF0aW9uID0gU2l0dWF0aW9uLkVESVQ7XG4gIC8qKlxuICAgKiBTZXQgdG8gJ3RydWUnIHRvIHByZXZlbnQgYWxsIG1ldGFkYXRhIGZyb20gYmVpbmcgZWRpdGVkXG4gICAqL1xuICBASW5wdXQoKSBmb3JtRGlzYWJsZWQgPSBmYWxzZTtcblxuICBkbXNPYmplY3QgPSBpbnB1dDxEbXNPYmplY3QgfCB1bmRlZmluZWQ+KCk7XG4gICNkbXNPYmplY3RFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuI2luaXQodGhpcy5kbXNPYmplY3QoKSk7XG4gIH0pO1xuXG4gIGZsYXZvcmVkRG1zT2JqZWN0ID0gaW5wdXQ8Rmxhdm9yZWREbXNPYmplY3QgfCB1bmRlZmluZWQ+KCk7XG4gICNmbGF2b3JlZERtc09iamVjdEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZmxhdm9yZWREbXNPYmplY3QgPSB0aGlzLmZsYXZvcmVkRG1zT2JqZWN0KCk7XG4gICAgdGhpcy4jaW5pdChmbGF2b3JlZERtc09iamVjdD8ub2JqZWN0LCBmbGF2b3JlZERtc09iamVjdD8uZmxhdm9ycyk7XG4gIH0pO1xuICBjb21iaW5lZEZvcm1TdGF0ZT86IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSB1cGRhdGVkIGBEbXNPYmplY3RgIHdoZW4gbWV0YWRhdGEgaGF2ZSBiZWVuIHNhdmVkLlxuICAgKi9cbiAgaW5kZXhEYXRhU2F2ZWQgPSBvdXRwdXQ8RG1zT2JqZWN0PigpO1xuICAvKipcbiAgICogRW1pdHMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIG1ldGFkYXRhIGZvcm0uXG4gICAqL1xuICBzdGF0dXNDaGFuZ2VkID0gb3V0cHV0PEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgI2luaXQob2JqZWN0PzogRG1zT2JqZWN0LCBmbGF2b3JzPzogT2JqZWN0VHlwZUZsYXZvcltdKSB7XG4gICAgaWYgKG9iamVjdCAmJiAoIXRoaXMuI2Rtc09iamVjdCB8fCB0aGlzLiNkbXNPYmplY3QgIT09IG9iamVjdCkpIHtcbiAgICAgIHRoaXMuI2luaXRpYWxEYXRhID0gc3RydWN0dXJlZENsb25lKG9iamVjdC5kYXRhKTtcbiAgICAgIHRoaXMuI29iamVjdFRvRm9ybShvYmplY3QsIGZsYXZvcnMpO1xuICAgIH1cbiAgICB0aGlzLiNkbXNPYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICAjb2JqZWN0VG9Gb3JtKG9iamVjdD86IERtc09iamVjdCwgZmxhdm9ycz86IE9iamVjdFR5cGVGbGF2b3JbXSkge1xuICAgIGlmIChvYmplY3QpIHtcbiAgICAgIGNvbnN0IG1hcHBlZEZsYXZvcnM6IFJlY29yZDxzdHJpbmcsIE9iamVjdFR5cGVGbGF2b3I+ID0gKGZsYXZvcnMgfHwgW10pLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiAoeyAuLi5hY2MsIFtjdXJyLnNvdF06IGN1cnIgfSksIHt9KTtcbiAgICAgIHRoaXMuI3N5c3RlbS5nZXRPYmplY3RUeXBlRm9ybXMoW29iamVjdC5vYmplY3RUeXBlSWQsIC4uLihmbGF2b3JzIHx8IFtdKS5tYXAoKGYpID0+IGYuc290KV0sIHRoaXMuc2l0dWF0aW9uKS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgICAgdGhpcy5tYWluRm9ybU9wdGlvbnMuc2V0KFxuICAgICAgICAgICAgcmVzW29iamVjdC5vYmplY3RUeXBlSWRdXG4gICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgZm9ybU1vZGVsOiByZXNbb2JqZWN0Lm9iamVjdFR5cGVJZF0sXG4gICAgICAgICAgICAgICAgICBkYXRhOiBvYmplY3QuZGF0YSxcbiAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmZvcm1EaXNhYmxlZCB8fCAhb2JqZWN0LnBlcm1pc3Npb25zPy53cml0ZUluZGV4RGF0YVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgdGhpcy5mbGF2b3JGb3JtT3B0aW9ucy5zZXQoXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhyZXMpXG4gICAgICAgICAgICAgIC5maWx0ZXIoKGlkKSA9PiBpZCAhPT0gb2JqZWN0Lm9iamVjdFR5cGVJZClcbiAgICAgICAgICAgICAgLm1hcCgoaWQpID0+ICh7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHJlc1tpZF0ubGFiZWwsXG4gICAgICAgICAgICAgICAgaWNvbjogbWFwcGVkRmxhdm9yc1tpZF0/Lmljb24sXG4gICAgICAgICAgICAgICAgZm9ybU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGZvcm1Nb2RlbDogcmVzW2lkXSxcbiAgICAgICAgICAgICAgICAgIGRhdGE6IG9iamVjdC5kYXRhXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMuZmxhdm9yRm9ybU9wdGlvbnMoKSk7XG4gICAgICAgICAgdGhpcy5lbXB0eS5zZXQoIXRoaXMubWFpbkZvcm1PcHRpb25zKCkgJiYgIXRoaXMuZmxhdm9yRm9ybU9wdGlvbnMoKS5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvbkZvcm1TdGF0dXNDaGFuZ2VkKGZvcm1JZDogc3RyaW5nLCBldnQ6IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQpIHtcbiAgICB0aGlzLiNmb3JtU3RhdGVzLnNldChmb3JtSWQsIGV2dCk7XG4gICAgdGhpcy4jZ2V0Q29tYmluZWRGb3JtU3RhdGUoKTtcbiAgICBpZiAodGhpcy5jb21iaW5lZEZvcm1TdGF0ZT8uZGlydHkpIHRoaXMuI3N0YXJ0UGVuZGluZygpO1xuICAgIGVsc2UgdGhpcy4jZmluaXNoUGVuZGluZygpO1xuICAgIHRoaXMuY29udHJvbHNWaXNpYmxlLnNldCghIXRoaXMuY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5KTtcbiAgICBpZiAodGhpcy5jb21iaW5lZEZvcm1TdGF0ZSkgdGhpcy5zdGF0dXNDaGFuZ2VkLmVtaXQodGhpcy5jb21iaW5lZEZvcm1TdGF0ZSk7XG4gIH1cblxuICAjZ2V0Q29tYmluZWRGb3JtU3RhdGUoKTogRm9ybVN0YXR1c0NoYW5nZWRFdmVudCB7XG4gICAgY29uc3QgY29tYmluZWRGb3JtU3RhdGUgPSB7XG4gICAgICBkaXJ0eTogZmFsc2UsXG4gICAgICBpbmRleGRhdGFDaGFuZ2VkOiBmYWxzZSxcbiAgICAgIGludmFsaWQ6IGZhbHNlLFxuICAgICAgZGF0YToge31cbiAgICB9O1xuICAgIHRoaXMuI2Zvcm1TdGF0ZXMuZm9yRWFjaCgocykgPT4ge1xuICAgICAgaWYgKHMuZGlydHkpIHtcbiAgICAgICAgY29tYmluZWRGb3JtU3RhdGUuZGlydHkgPSBzLmRpcnR5O1xuICAgICAgfVxuICAgICAgaWYgKHMuaW5kZXhkYXRhQ2hhbmdlZCkge1xuICAgICAgICBjb21iaW5lZEZvcm1TdGF0ZS5pbmRleGRhdGFDaGFuZ2VkID0gcy5pbmRleGRhdGFDaGFuZ2VkO1xuICAgICAgfVxuICAgICAgaWYgKHMuaW52YWxpZCkge1xuICAgICAgICBjb21iaW5lZEZvcm1TdGF0ZS5pbnZhbGlkID0gcy5pbnZhbGlkO1xuICAgICAgfVxuICAgICAgY29tYmluZWRGb3JtU3RhdGUuZGF0YSA9IHsgLi4uY29tYmluZWRGb3JtU3RhdGUuZGF0YSwgLi4ucy5kYXRhIH07XG4gICAgfSk7XG4gICAgdGhpcy5jb21iaW5lZEZvcm1TdGF0ZSA9IGNvbWJpbmVkRm9ybVN0YXRlO1xuICAgIHJldHVybiB0aGlzLmNvbWJpbmVkRm9ybVN0YXRlO1xuICB9XG5cbiAgI3NldENvbWJpbmVkRm9ybVByaXN0aW5lKCkge1xuICAgIHRoaXMub2JqZWN0Rm9ybXMoKS5mb3JFYWNoKChmKSA9PiB7XG4gICAgICBmLnNldEZvcm1QcmlzdGluZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAodGhpcy4jZG1zT2JqZWN0ICYmIHRoaXMuY29tYmluZWRGb3JtU3RhdGUpIHtcbiAgICAgIHRoaXMuYnVzeS5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLiNkbXNTZXJ2aWNlLnVwZGF0ZURtc09iamVjdCh0aGlzLiNkbXNPYmplY3QuaWQsIHRoaXMuY29tYmluZWRGb3JtU3RhdGUuZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgIHRoaXMuI3NldENvbWJpbmVkRm9ybVByaXN0aW5lKCk7XG4gICAgICAgICAgdGhpcy5pbmRleERhdGFTYXZlZC5lbWl0KHRoaXMuI2Rtc09iamVjdCEpO1xuICAgICAgICAgIHRoaXMuI2ZpbmlzaFBlbmRpbmcoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcbiAgICAgICAgICB0aGlzLiNub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKFxuICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAvLyB0aGlzLl9kbXNPYmplY3Q/LnRpdGxlIHx8ICcnLFxuICAgICAgICAgICAgZXJyLnN0YXR1cyA9PT0gNDA0ID8gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1tZXRhZGF0YS5jb250ZXh0LmxvYWQuZXJyb3InKSA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtbWV0YWRhdGEuc2F2ZS5lcnJvcicpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLmNvbnRyb2xzVmlzaWJsZS5zZXQoZmFsc2UpO1xuICAgICAgICAgIHRoaXMuYnVzeS5zZXQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFJlc2V0IHRlIGZvcm0gdG8gaXRzIGluaXRpYWwgc3RhdGVcbiAgICovXG4gIHJlc2V0Rm9ybSgpIHtcbiAgICBpZiAodGhpcy5vYmplY3RGb3JtcygpPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMub2JqZWN0Rm9ybXMoKS5mb3JFYWNoKChmKSA9PiB7XG4gICAgICAgIGYucmVzZXRGb3JtKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuI2Zvcm1TdGF0ZXMuY2xlYXIoKTtcbiAgICB9XG4gIH1cblxuICAjc3RhcnRQZW5kaW5nKCkge1xuICAgIC8vIGJlY2F1c2UgdGhpcyBtZXRob2Qgd2lsbCBiZSBjYWxsZWQgZXZlcnkgdGltZSB0aGUgZm9ybSBzdGF0dXMgY2hhbmdlcyxcbiAgICAvLyBwZW5kaW5nIHRhc2sgd2lsbCBvbmx5IGJlIHN0YXJ0ZWQgb25jZSB1bnRpbCBpdCB3YXMgZmluaXNoZWRcbiAgICBpZiAoIXRoaXMuI3BlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKHRoaXMuI3BlbmRpbmdUYXNrSWQgfHwgJyAnKSkge1xuICAgICAgdGhpcy4jcGVuZGluZ1Rhc2tJZCA9IHRoaXMuI3BlbmRpbmdDaGFuZ2VzLnN0YXJ0VGFzayh0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LW1ldGFkYXRhLnBlbmRpbmctY2hhbmdlcy5hbGVydCcpKTtcbiAgICB9XG4gIH1cblxuICAjZmluaXNoUGVuZGluZygpIHtcbiAgICBpZiAodGhpcy4jcGVuZGluZ1Rhc2tJZCkgdGhpcy4jcGVuZGluZ0NoYW5nZXMuZmluaXNoVGFzayh0aGlzLiNwZW5kaW5nVGFza0lkKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI2Zvcm1TdWJzY3JpcHRpb25zLmZvckVhY2goKHMpID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gIH1cbn1cbiIsIjxtYWluPlxuICBAaWYgKGVtcHR5KCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZW1wdHlcIj5cbiAgICAgIDxwPnt7ICd5dXYub2JqZWN0LW1ldGFkYXRhLmVtcHR5Lm1lc3NhZ2UnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgICA8eXV2LW9iamVjdC1mb3JtIFtmb3JtT3B0aW9uc109XCJtYWluRm9ybU9wdGlvbnMoKVwiIChzdGF0dXNDaGFuZ2VkKT1cIm9uRm9ybVN0YXR1c0NoYW5nZWQoJ21haW4nLCAkZXZlbnQpXCI+PC95dXYtb2JqZWN0LWZvcm0+XG5cbiAgICBAZm9yIChmbyBvZiBmbGF2b3JGb3JtT3B0aW9ucygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxkZXRhaWxzIFthdHRyLm9wZW5dPVwiJGluZGV4ID09PSAwXCI+XG4gICAgICAgIDxzdW1tYXJ5Pjx5dmMtaWNvbiBbc3ZnXT1cImZvLmljb25cIj48L3l2Yy1pY29uPiB7eyBmby5sYWJlbCB9fTx5dmMtaWNvbiBjbGFzcz1cImFyclwiIFtzdmddPVwiYXJyb3dcIj48L3l2Yy1pY29uPjwvc3VtbWFyeT5cbiAgICAgICAgPHl1di1vYmplY3QtZm9ybSBbZm9ybU9wdGlvbnNdPVwiZm8uZm9ybU9wdGlvbnNcIiAoc3RhdHVzQ2hhbmdlZCk9XCJvbkZvcm1TdGF0dXNDaGFuZ2VkKGZvLmlkLCAkZXZlbnQpXCI+PC95dXYtb2JqZWN0LWZvcm0+XG4gICAgICA8L2RldGFpbHM+XG4gICAgfVxuICB9XG48L21haW4+XG48Zm9vdGVyIFtuZ0NsYXNzXT1cInsgdmlzaWJsZTogY29udHJvbHNWaXNpYmxlKCkgfVwiPlxuICA8YnV0dG9uIGNsYXNzPVwic2Vjb25kYXJ5XCIgKGNsaWNrKT1cInJlc2V0Rm9ybSgpXCIgW2hpZGRlbl09XCIhY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5XCIgW2Rpc2FibGVkXT1cIiFjb21iaW5lZEZvcm1TdGF0ZT8uZGlydHlcIj5cbiAgICB7eyAneXV2Lm9iamVjdC1tZXRhZGF0YS5idXR0b24ucmVzZXQnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uIGNsYXNzPVwicHJpbWFyeVwiIFtuZ0NsYXNzXT1cInsgc3Bpbm5pbmc6IGJ1c3koKSB9XCIgKGNsaWNrKT1cInNhdmUoKVwiIFtkaXNhYmxlZF09XCIhY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5IHx8IGNvbWJpbmVkRm9ybVN0YXRlPy5pbnZhbGlkXCI+XG4gICAge3sgJ3l1di5vYmplY3QtbWV0YWRhdGEuYnV0dG9uLnNhdmUnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9mb290ZXI+XG4iXX0=
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWRldGFpbHMvc3JjL2xpYi9vYmplY3QtbWV0YWRhdGEvb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvb2JqZWN0LWRldGFpbHMvc3JjL2xpYi9vYmplY3QtbWV0YWRhdGEvb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBRUwsVUFBVSxFQUVWLG1CQUFtQixFQUVuQixxQkFBcUIsRUFDckIsU0FBUyxFQUNULGFBQWEsRUFDYixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUEwQixtQkFBbUIsRUFBcUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0SCxPQUFPLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7OztBQWEvRCxNQUFNLE9BQU8sdUJBQXVCO0lBVnBDO1FBV0Usb0JBQWUsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNoRCx5QkFBb0IsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNuRCxjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoQyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVqQyxnQkFBVyxHQUFHLFlBQVksQ0FBc0IsbUJBQW1CLENBQUMsQ0FBQztRQUlyRSx1QkFBa0IsR0FBbUIsRUFBRSxDQUFDO1FBQ3hDLGlCQUFZLEdBQTRCLEVBQUUsQ0FBQztRQUUzQyxVQUFLLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUN4QixTQUFJLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzlCLFVBQUssR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDL0Isb0JBQWUsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7UUFFekMsZ0NBQWdDO1FBQ2hDLG9CQUFlLEdBQUcsTUFBTSxDQUFnQyxTQUFTLENBQUMsQ0FBQztRQUNuRSw0QkFBNEI7UUFDNUIsc0JBQWlCLEdBQUcsTUFBTSxDQU94QixFQUFFLENBQUMsQ0FBQztRQUNOLGdDQUFnQztRQUNoQyxnQkFBVyxHQUF3QyxJQUFJLEdBQUcsRUFBa0MsQ0FBQztRQUU3Rjs7V0FFRztRQUNNLGNBQVMsR0FBYyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQy9DOztXQUVHO1FBQ00saUJBQVksR0FBRyxLQUFLLENBQUM7UUFFOUIsY0FBUyxHQUFHLEtBQUssRUFBeUIsQ0FBQztRQUMzQyxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxzQkFBaUIsR0FBRyxLQUFLLEVBQWlDLENBQUM7UUFDM0QsNkJBQXdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNyQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQyxDQUFDO1FBR0g7O1dBRUc7UUFDSCxtQkFBYyxHQUFHLE1BQU0sRUFBYSxDQUFDO1FBQ3JDOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxNQUFNLEVBQTBCLENBQUM7S0FxSWxEO0lBak1DLGVBQWUsQ0FBaUM7SUFDaEQsb0JBQW9CLENBQStCO0lBRW5ELE9BQU8sQ0FBeUI7SUFDaEMsV0FBVyxDQUFzQjtJQUlqQyxjQUFjLENBQVU7SUFDeEIsVUFBVSxDQUFhO0lBQ3ZCLGtCQUFrQixDQUFzQjtJQUN4QyxZQUFZLENBQStCO0lBa0IzQyxnQ0FBZ0M7SUFDaEMsV0FBVyxDQUFrRjtJQVk3RixnQkFBZ0IsQ0FFYjtJQUdILHdCQUF3QixDQUdyQjtJQVlILEtBQUssQ0FBQyxNQUFrQixFQUFFLE9BQTRCO1FBQ3BELElBQUksTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdEMsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO0lBQzNCLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBa0IsRUFBRSxPQUE0QjtRQUM1RCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsTUFBTSxhQUFhLEdBQXFDLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2xJLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUNySCxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDWixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FDdEIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7d0JBQ3RCLENBQUMsQ0FBQzs0QkFDRSxTQUFTLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7NEJBQ25DLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTs0QkFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLGNBQWM7eUJBQ25FO3dCQUNILENBQUMsQ0FBQyxTQUFTLENBQ2QsQ0FBQztvQkFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzt5QkFDYixNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsWUFBWSxDQUFDO3lCQUMxQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7d0JBQ1osRUFBRTt3QkFDRixLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUs7d0JBQ3BCLElBQUksRUFBRSxhQUFhLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSTt3QkFDN0IsV0FBVyxFQUFFOzRCQUNYLFNBQVMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDOzRCQUNsQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7eUJBQ2xCO3FCQUNGLENBQUMsQ0FBQyxDQUNOLENBQUM7b0JBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO29CQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM5RSxDQUFDO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFjLEVBQUUsR0FBMkI7UUFDN0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLEtBQUs7WUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7O1lBQ25ELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLGlCQUFpQjtZQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsTUFBTSxpQkFBaUIsR0FBRztZQUN4QixLQUFLLEVBQUUsS0FBSztZQUNaLGdCQUFnQixFQUFFLEtBQUs7WUFDdkIsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJLEVBQUUsRUFBRTtTQUNULENBQUM7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNaLGlCQUFpQixDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3BDLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUN2QixpQkFBaUIsQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsZ0JBQWdCLENBQUM7WUFDMUQsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNkLGlCQUFpQixDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3hDLENBQUM7WUFDRCxpQkFBaUIsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLGlCQUFpQixDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsd0JBQXdCO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUMvQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUMxRixJQUFJLEVBQUUsR0FBRyxFQUFFO29CQUNULElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO29CQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVyxDQUFDLENBQUM7b0JBQzNDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDeEIsQ0FBQztnQkFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDYixJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUM3QixFQUFFO29CQUNGLGdDQUFnQztvQkFDaEMsR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLENBQ2pKLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxRQUFRLEVBQUUsR0FBRyxFQUFFO29CQUNiLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdkIsQ0FBQzthQUNGLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUMvQixDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDaEIsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLHlFQUF5RTtRQUN6RSwrREFBK0Q7UUFDL0QsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyRSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLDJDQUEyQyxDQUFDLENBQUMsQ0FBQztRQUM1SCxDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxjQUFjO1lBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQzsrR0FqTVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsaXpCQU9jLG1CQUFtQixnRUNwQ3JFLG9xQ0F3QkEsK3NEREZZLFlBQVksNkhBQUUsbUJBQW1CLGlMQUFFLGVBQWUsMkZBQUUsbUJBQW1CLDhCQUFFLGFBQWE7OzRGQU9yRix1QkFBdUI7a0JBVm5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLFFBRzNGO3dCQUNKLGVBQWUsRUFBRSxTQUFTO3FCQUMzQjs4QkFzQ1EsU0FBUztzQkFBakIsS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgRG1zT2JqZWN0LFxuICBEbXNTZXJ2aWNlLFxuICBGbGF2b3JlZERtc09iamVjdCxcbiAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgT2JqZWN0VHlwZUZsYXZvcixcbiAgUGVuZGluZ0NoYW5nZXNTZXJ2aWNlLFxuICBTaXR1YXRpb24sXG4gIFN5c3RlbVNlcnZpY2UsXG4gIFRyYW5zbGF0ZU1vZHVsZSxcbiAgVHJhbnNsYXRlU2VydmljZVxufSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQsIE9iamVjdEZvcm1Db21wb25lbnQsIE9iamVjdEZvcm1PcHRpb25zIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtZnJhbWV3b3JrL29iamVjdC1mb3JtJztcbmltcG9ydCB7IElDT05TLCBZdmNJY29uTW9kdWxlIH0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1di1vYmplY3QtbWV0YWRhdGEnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBPYmplY3RGb3JtQ29tcG9uZW50LCBUcmFuc2xhdGVNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFl2Y0ljb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vb2JqZWN0LW1ldGFkYXRhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29iamVjdC1tZXRhZGF0YS5jb21wb25lbnQuc2NzcycsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmVtcHR5XSc6ICdlbXB0eSgpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9iamVjdE1ldGFkYXRhQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgI3BlbmRpbmdDaGFuZ2VzID0gaW5qZWN0KFBlbmRpbmdDaGFuZ2VzU2VydmljZSk7XG4gICNub3RpZmljYXRpb25TZXJ2aWNlID0gaW5qZWN0KE5vdGlmaWNhdGlvblNlcnZpY2UpO1xuICB0cmFuc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG4gICNzeXN0ZW0gPSBpbmplY3QoU3lzdGVtU2VydmljZSk7XG4gICNkbXNTZXJ2aWNlID0gaW5qZWN0KERtc1NlcnZpY2UpO1xuXG4gIG9iamVjdEZvcm1zID0gdmlld0NoaWxkcmVuPE9iamVjdEZvcm1Db21wb25lbnQ+KE9iamVjdEZvcm1Db21wb25lbnQpO1xuXG4gICNwZW5kaW5nVGFza0lkPzogc3RyaW5nO1xuICAjZG1zT2JqZWN0PzogRG1zT2JqZWN0O1xuICAjZm9ybVN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gICNpbml0aWFsRGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcblxuICBhcnJvdyA9IElDT05TLmFycm93RG93bjtcbiAgYnVzeSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIGVtcHR5ID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29udHJvbHNWaXNpYmxlID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICAvLyBmb3JtIG9mIHRoZSBkbXMgb2JqZWN0IGl0c2VsZlxuICBtYWluRm9ybU9wdGlvbnMgPSBzaWduYWw8T2JqZWN0Rm9ybU9wdGlvbnMgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIC8vIGZvcm1zIG9mZiBhbGxwaWVkIGZsYXZvcnNcbiAgZmxhdm9yRm9ybU9wdGlvbnMgPSBzaWduYWw8XG4gICAge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgICBpY29uPzogc3RyaW5nO1xuICAgICAgZm9ybU9wdGlvbnM6IE9iamVjdEZvcm1PcHRpb25zO1xuICAgIH1bXVxuICA+KFtdKTtcbiAgLy8gc3RhdGUgb2YgYWxsIGluZGl2aWR1YWwgZm9ybXNcbiAgI2Zvcm1TdGF0ZXM6IE1hcDxzdHJpbmcsIEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+ID0gbmV3IE1hcDxzdHJpbmcsIEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEZvcm0gc2l0dWF0aW9uLCBpZiBub3Qgc2V0IGRlZmF1bHQgd2lsbCBiZSAnRURJVCdcbiAgICovXG4gIEBJbnB1dCgpIHNpdHVhdGlvbjogU2l0dWF0aW9uID0gU2l0dWF0aW9uLkVESVQ7XG4gIC8qKlxuICAgKiBTZXQgdG8gJ3RydWUnIHRvIHByZXZlbnQgYWxsIG1ldGFkYXRhIGZyb20gYmVpbmcgZWRpdGVkXG4gICAqL1xuICBASW5wdXQoKSBmb3JtRGlzYWJsZWQgPSBmYWxzZTtcblxuICBkbXNPYmplY3QgPSBpbnB1dDxEbXNPYmplY3QgfCB1bmRlZmluZWQ+KCk7XG4gICNkbXNPYmplY3RFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuI2luaXQodGhpcy5kbXNPYmplY3QoKSk7XG4gIH0pO1xuXG4gIGZsYXZvcmVkRG1zT2JqZWN0ID0gaW5wdXQ8Rmxhdm9yZWREbXNPYmplY3QgfCB1bmRlZmluZWQ+KCk7XG4gICNmbGF2b3JlZERtc09iamVjdEVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZmxhdm9yZWREbXNPYmplY3QgPSB0aGlzLmZsYXZvcmVkRG1zT2JqZWN0KCk7XG4gICAgdGhpcy4jaW5pdChmbGF2b3JlZERtc09iamVjdD8ub2JqZWN0LCBmbGF2b3JlZERtc09iamVjdD8uZmxhdm9ycyk7XG4gIH0pO1xuICBjb21iaW5lZEZvcm1TdGF0ZT86IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSB1cGRhdGVkIGBEbXNPYmplY3RgIHdoZW4gbWV0YWRhdGEgaGF2ZSBiZWVuIHNhdmVkLlxuICAgKi9cbiAgaW5kZXhEYXRhU2F2ZWQgPSBvdXRwdXQ8RG1zT2JqZWN0PigpO1xuICAvKipcbiAgICogRW1pdHMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIG1ldGFkYXRhIGZvcm0uXG4gICAqL1xuICBzdGF0dXNDaGFuZ2VkID0gb3V0cHV0PEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgI2luaXQob2JqZWN0PzogRG1zT2JqZWN0LCBmbGF2b3JzPzogT2JqZWN0VHlwZUZsYXZvcltdKSB7XG4gICAgaWYgKG9iamVjdCAmJiAoIXRoaXMuI2Rtc09iamVjdCB8fCB0aGlzLiNkbXNPYmplY3QgIT09IG9iamVjdCkpIHtcbiAgICAgIHRoaXMuI2luaXRpYWxEYXRhID0gc3RydWN0dXJlZENsb25lKG9iamVjdC5kYXRhKTtcbiAgICAgIHRoaXMuI29iamVjdFRvRm9ybShvYmplY3QsIGZsYXZvcnMpO1xuICAgIH1cbiAgICB0aGlzLiNkbXNPYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICAjb2JqZWN0VG9Gb3JtKG9iamVjdD86IERtc09iamVjdCwgZmxhdm9ycz86IE9iamVjdFR5cGVGbGF2b3JbXSkge1xuICAgIGlmIChvYmplY3QpIHtcbiAgICAgIGNvbnN0IG1hcHBlZEZsYXZvcnM6IFJlY29yZDxzdHJpbmcsIE9iamVjdFR5cGVGbGF2b3I+ID0gKGZsYXZvcnMgfHwgW10pLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiAoeyAuLi5hY2MsIFtjdXJyLnNvdF06IGN1cnIgfSksIHt9KTtcbiAgICAgIHRoaXMuI3N5c3RlbS5nZXRPYmplY3RUeXBlRm9ybXMoW29iamVjdC5vYmplY3RUeXBlSWQsIC4uLihmbGF2b3JzIHx8IFtdKS5tYXAoKGYpID0+IGYuc290KV0sIHRoaXMuc2l0dWF0aW9uKS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgICAgdGhpcy5tYWluRm9ybU9wdGlvbnMuc2V0KFxuICAgICAgICAgICAgcmVzW29iamVjdC5vYmplY3RUeXBlSWRdXG4gICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgZm9ybU1vZGVsOiByZXNbb2JqZWN0Lm9iamVjdFR5cGVJZF0sXG4gICAgICAgICAgICAgICAgICBkYXRhOiBvYmplY3QuZGF0YSxcbiAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmZvcm1EaXNhYmxlZCB8fCAhb2JqZWN0LnBlcm1pc3Npb25zPy53cml0ZUluZGV4RGF0YVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgdGhpcy5mbGF2b3JGb3JtT3B0aW9ucy5zZXQoXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhyZXMpXG4gICAgICAgICAgICAgIC5maWx0ZXIoKGlkKSA9PiBpZCAhPT0gb2JqZWN0Lm9iamVjdFR5cGVJZClcbiAgICAgICAgICAgICAgLm1hcCgoaWQpID0+ICh7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHJlc1tpZF0ubGFiZWwsXG4gICAgICAgICAgICAgICAgaWNvbjogbWFwcGVkRmxhdm9yc1tpZF0/Lmljb24sXG4gICAgICAgICAgICAgICAgZm9ybU9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGZvcm1Nb2RlbDogcmVzW2lkXSxcbiAgICAgICAgICAgICAgICAgIGRhdGE6IG9iamVjdC5kYXRhXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMuZmxhdm9yRm9ybU9wdGlvbnMoKSk7XG4gICAgICAgICAgdGhpcy5lbXB0eS5zZXQoIXRoaXMubWFpbkZvcm1PcHRpb25zKCkgJiYgIXRoaXMuZmxhdm9yRm9ybU9wdGlvbnMoKS5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvbkZvcm1TdGF0dXNDaGFuZ2VkKGZvcm1JZDogc3RyaW5nLCBldnQ6IEZvcm1TdGF0dXNDaGFuZ2VkRXZlbnQpIHtcbiAgICB0aGlzLiNmb3JtU3RhdGVzLnNldChmb3JtSWQsIGV2dCk7XG4gICAgdGhpcy4jZ2V0Q29tYmluZWRGb3JtU3RhdGUoKTtcbiAgICBpZiAodGhpcy5jb21iaW5lZEZvcm1TdGF0ZT8uZGlydHkpIHRoaXMuI3N0YXJ0UGVuZGluZygpO1xuICAgIGVsc2UgdGhpcy4jZmluaXNoUGVuZGluZygpO1xuICAgIHRoaXMuY29udHJvbHNWaXNpYmxlLnNldCghIXRoaXMuY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5KTtcbiAgICBpZiAodGhpcy5jb21iaW5lZEZvcm1TdGF0ZSkgdGhpcy5zdGF0dXNDaGFuZ2VkLmVtaXQodGhpcy5jb21iaW5lZEZvcm1TdGF0ZSk7XG4gIH1cblxuICAjZ2V0Q29tYmluZWRGb3JtU3RhdGUoKTogRm9ybVN0YXR1c0NoYW5nZWRFdmVudCB7XG4gICAgY29uc3QgY29tYmluZWRGb3JtU3RhdGUgPSB7XG4gICAgICBkaXJ0eTogZmFsc2UsXG4gICAgICBpbmRleGRhdGFDaGFuZ2VkOiBmYWxzZSxcbiAgICAgIGludmFsaWQ6IGZhbHNlLFxuICAgICAgZGF0YToge31cbiAgICB9O1xuICAgIHRoaXMuI2Zvcm1TdGF0ZXMuZm9yRWFjaCgocykgPT4ge1xuICAgICAgaWYgKHMuZGlydHkpIHtcbiAgICAgICAgY29tYmluZWRGb3JtU3RhdGUuZGlydHkgPSBzLmRpcnR5O1xuICAgICAgfVxuICAgICAgaWYgKHMuaW5kZXhkYXRhQ2hhbmdlZCkge1xuICAgICAgICBjb21iaW5lZEZvcm1TdGF0ZS5pbmRleGRhdGFDaGFuZ2VkID0gcy5pbmRleGRhdGFDaGFuZ2VkO1xuICAgICAgfVxuICAgICAgaWYgKHMuaW52YWxpZCkge1xuICAgICAgICBjb21iaW5lZEZvcm1TdGF0ZS5pbnZhbGlkID0gcy5pbnZhbGlkO1xuICAgICAgfVxuICAgICAgY29tYmluZWRGb3JtU3RhdGUuZGF0YSA9IHsgLi4uY29tYmluZWRGb3JtU3RhdGUuZGF0YSwgLi4ucy5kYXRhIH07XG4gICAgfSk7XG4gICAgdGhpcy5jb21iaW5lZEZvcm1TdGF0ZSA9IGNvbWJpbmVkRm9ybVN0YXRlO1xuICAgIHJldHVybiB0aGlzLmNvbWJpbmVkRm9ybVN0YXRlO1xuICB9XG5cbiAgI3NldENvbWJpbmVkRm9ybVByaXN0aW5lKCkge1xuICAgIHRoaXMub2JqZWN0Rm9ybXMoKS5mb3JFYWNoKChmKSA9PiB7XG4gICAgICBmLnNldEZvcm1QcmlzdGluZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAodGhpcy4jZG1zT2JqZWN0ICYmIHRoaXMuY29tYmluZWRGb3JtU3RhdGUpIHtcbiAgICAgIHRoaXMuYnVzeS5zZXQodHJ1ZSk7XG4gICAgICB0aGlzLiNkbXNTZXJ2aWNlLnVwZGF0ZURtc09iamVjdCh0aGlzLiNkbXNPYmplY3QuaWQsIHRoaXMuY29tYmluZWRGb3JtU3RhdGUuZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgIHRoaXMuI3NldENvbWJpbmVkRm9ybVByaXN0aW5lKCk7XG4gICAgICAgICAgdGhpcy5pbmRleERhdGFTYXZlZC5lbWl0KHRoaXMuI2Rtc09iamVjdCEpO1xuICAgICAgICAgIHRoaXMuI2ZpbmlzaFBlbmRpbmcoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcbiAgICAgICAgICB0aGlzLiNub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKFxuICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAvLyB0aGlzLl9kbXNPYmplY3Q/LnRpdGxlIHx8ICcnLFxuICAgICAgICAgICAgZXJyLnN0YXR1cyA9PT0gNDA0ID8gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1tZXRhZGF0YS5jb250ZXh0LmxvYWQuZXJyb3InKSA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtbWV0YWRhdGEuc2F2ZS5lcnJvcicpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLmNvbnRyb2xzVmlzaWJsZS5zZXQoZmFsc2UpO1xuICAgICAgICAgIHRoaXMuYnVzeS5zZXQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFJlc2V0IHRlIGZvcm0gdG8gaXRzIGluaXRpYWwgc3RhdGVcbiAgICovXG4gIHJlc2V0Rm9ybSgpIHtcbiAgICBpZiAodGhpcy5vYmplY3RGb3JtcygpPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMub2JqZWN0Rm9ybXMoKS5mb3JFYWNoKChmKSA9PiB7XG4gICAgICAgIGYucmVzZXRGb3JtKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuI2Zvcm1TdGF0ZXMuY2xlYXIoKTtcbiAgICB9XG4gIH1cblxuICAjc3RhcnRQZW5kaW5nKCkge1xuICAgIC8vIGJlY2F1c2UgdGhpcyBtZXRob2Qgd2lsbCBiZSBjYWxsZWQgZXZlcnkgdGltZSB0aGUgZm9ybSBzdGF0dXMgY2hhbmdlcyxcbiAgICAvLyBwZW5kaW5nIHRhc2sgd2lsbCBvbmx5IGJlIHN0YXJ0ZWQgb25jZSB1bnRpbCBpdCB3YXMgZmluaXNoZWRcbiAgICBpZiAoIXRoaXMuI3BlbmRpbmdDaGFuZ2VzLmhhc1BlbmRpbmdUYXNrKHRoaXMuI3BlbmRpbmdUYXNrSWQgfHwgJyAnKSkge1xuICAgICAgdGhpcy4jcGVuZGluZ1Rhc2tJZCA9IHRoaXMuI3BlbmRpbmdDaGFuZ2VzLnN0YXJ0VGFzayh0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LW1ldGFkYXRhLnBlbmRpbmctY2hhbmdlcy5hbGVydCcpKTtcbiAgICB9XG4gIH1cblxuICAjZmluaXNoUGVuZGluZygpIHtcbiAgICBpZiAodGhpcy4jcGVuZGluZ1Rhc2tJZCkgdGhpcy4jcGVuZGluZ0NoYW5nZXMuZmluaXNoVGFzayh0aGlzLiNwZW5kaW5nVGFza0lkKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI2Zvcm1TdWJzY3JpcHRpb25zLmZvckVhY2goKHMpID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gIH1cbn1cbiIsIjxtYWluPlxuICBAaWYgKGVtcHR5KCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZW1wdHlcIj5cbiAgICAgIDxwPnt7ICd5dXYub2JqZWN0LW1ldGFkYXRhLmVtcHR5Lm1lc3NhZ2UnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgICA8eXV2LW9iamVjdC1mb3JtIFtmb3JtT3B0aW9uc109XCJtYWluRm9ybU9wdGlvbnMoKVwiIChzdGF0dXNDaGFuZ2VkKT1cIm9uRm9ybVN0YXR1c0NoYW5nZWQoJ21haW4nLCAkZXZlbnQpXCI+PC95dXYtb2JqZWN0LWZvcm0+XG5cbiAgICBAZm9yIChmbyBvZiBmbGF2b3JGb3JtT3B0aW9ucygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxkZXRhaWxzIFthdHRyLm9wZW5dPVwiJGluZGV4ID09PSAwXCI+XG4gICAgICAgIDxzdW1tYXJ5Pjx5dmMtaWNvbiBbc3ZnXT1cImZvLmljb25cIj48L3l2Yy1pY29uPiB7eyBmby5sYWJlbCB9fTx5dmMtaWNvbiBjbGFzcz1cImFyclwiIFtzdmddPVwiYXJyb3dcIj48L3l2Yy1pY29uPjwvc3VtbWFyeT5cbiAgICAgICAgPHl1di1vYmplY3QtZm9ybSBbZm9ybU9wdGlvbnNdPVwiZm8uZm9ybU9wdGlvbnNcIiAoc3RhdHVzQ2hhbmdlZCk9XCJvbkZvcm1TdGF0dXNDaGFuZ2VkKGZvLmlkLCAkZXZlbnQpXCI+PC95dXYtb2JqZWN0LWZvcm0+XG4gICAgICA8L2RldGFpbHM+XG4gICAgfVxuICB9XG48L21haW4+XG48Zm9vdGVyIFtuZ0NsYXNzXT1cInsgdmlzaWJsZTogY29udHJvbHNWaXNpYmxlKCkgfVwiPlxuICA8YnV0dG9uIGNsYXNzPVwic2Vjb25kYXJ5XCIgKGNsaWNrKT1cInJlc2V0Rm9ybSgpXCIgW2hpZGRlbl09XCIhY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5XCIgW2Rpc2FibGVkXT1cIiFjb21iaW5lZEZvcm1TdGF0ZT8uZGlydHlcIj5cbiAgICB7eyAneXV2Lm9iamVjdC1tZXRhZGF0YS5idXR0b24ucmVzZXQnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uIGNsYXNzPVwicHJpbWFyeVwiIFtuZ0NsYXNzXT1cInsgc3Bpbm5pbmc6IGJ1c3koKSB9XCIgKGNsaWNrKT1cInNhdmUoKVwiIFtkaXNhYmxlZF09XCIhY29tYmluZWRGb3JtU3RhdGU/LmRpcnR5IHx8IGNvbWJpbmVkRm9ybVN0YXRlPy5pbnZhbGlkXCI+XG4gICAge3sgJ3l1di5vYmplY3QtbWV0YWRhdGEuYnV0dG9uLnNhdmUnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9mb290ZXI+XG4iXX0=
|
|
@@ -892,7 +892,7 @@ class DataGridComponent {
|
|
|
892
892
|
multi: true
|
|
893
893
|
},
|
|
894
894
|
DecimalPipe
|
|
895
|
-
], ngImport: i0, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;
|
|
895
|
+
], ngImport: i0, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i3.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }, { kind: "directive", type: CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }, { kind: "ngmodule", type: CdkTableModule }, { kind: "component", type: i4.CdkTable, selector: "cdk-table, table[cdk-table]", inputs: ["trackBy", "dataSource", "multiTemplateDataRows", "fixedLayout"], outputs: ["contentChanged"], exportAs: ["cdkTable"] }, { kind: "directive", type: i4.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i4.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i4.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i4.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }, { kind: "directive", type: i4.CdkCell, selector: "cdk-cell, td[cdk-cell]" }, { kind: "component", type: i4.CdkRow, selector: "cdk-row, tr[cdk-row]" }, { kind: "directive", type: i4.CdkHeaderCell, selector: "cdk-header-cell, th[cdk-header-cell]" }, { kind: "component", type: i4.CdkHeaderRow, selector: "cdk-header-row, tr[cdk-header-row]" }, { kind: "directive", type: i4.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "directive", type: CdkMenuTrigger, selector: "[cdkMenuTriggerFor]", inputs: ["cdkMenuTriggerFor", "cdkMenuPosition", "cdkMenuTriggerData"], outputs: ["cdkMenuOpened", "cdkMenuClosed"], exportAs: ["cdkMenuTriggerFor"] }, { kind: "directive", type: CdkMenuItem, selector: "[cdkMenuItem]", inputs: ["cdkMenuItemDisabled", "cdkMenuitemTypeaheadLabel"], outputs: ["cdkMenuItemTriggered"], exportAs: ["cdkMenuItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
896
896
|
}
|
|
897
897
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataGridComponent, decorators: [{
|
|
898
898
|
type: Component,
|
|
@@ -905,7 +905,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
905
905
|
DecimalPipe
|
|
906
906
|
], host: {
|
|
907
907
|
class: 'yuv-data-grid'
|
|
908
|
-
}, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;
|
|
908
|
+
}, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"] }]
|
|
909
909
|
}] });
|
|
910
910
|
|
|
911
911
|
class DatetimeComponent {
|