keevo-components 0.7.0 → 0.7.1
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.
|
@@ -128,10 +128,10 @@ export class TableComponent {
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, deps: [{ token: i1.DatePipe }, { token: i1.DecimalPipe }, { token: i2.CodigoFipePipe }, { token: i3.CpfCnpjPipe }, { token: i4.TelefonePipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
131
|
-
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows" }, outputs: { onActiveItem: "onActiveItem", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '
|
|
131
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows" }, outputs: { onActiveItem: "onActiveItem", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '35rem' }\" [pageLinks]=\"1\">\r\n\r\n <ng-template pTemplate=\"caption\" *ngIf=\"config.enableCation\">\r\n <div class=\"flex flex-column md:flex-row md:justify-content-between\r\n md:align-items-center table\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span *ngIf=\"config.enableFilter\" class=\"block mt-2 md:mt-0\r\n p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText pAutoFocus [autofocus]=\"true\" type=\"text\" (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\" class=\"w-full sm:w-auto\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th style=\"width: 4rem\" *ngIf=\"config.enableSelect\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns;\" [pSortableColumn]=\"col.field\" [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\" class=\"text-sm\">\r\n <div class=\"flex flex-row\">\r\n {{col.header}}\r\n <p-sortIcon *ngIf=\"col.sortable === true\" [field]=\"col.field\" style=\"font-size: 10px;\"></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\r\n <tr>\r\n <td *ngIf=\"config.enableSelect\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n\r\n <td *ngIf=\"rowgroup\" [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td *ngIf=\"!rowgroup && !col.grouped\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- <td *ngIf=\"config.actions && config.actions.length> 0\">\r\n <i class=\"pi pi-ellipsis-h\" style=\"cursor: pointer\"\r\n (click)=\"activeItem(rowData);menu.toggle($event)\"></i>\r\n </td> -->\r\n\r\n <td *ngIf=\"config.actions && config.actions.length> 0\" class=\"flex flex-row\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <i class=\"pi {{action.icon}}\" style=\"cursor: pointer\" class=\"mr-2 ml-2\" (click)=\"action?.command()\"></i>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\" style=\"text-align: center;\">\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu #menu [popup]=\"true\" [model]=\"config.actions\"></p-menu>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "directive", type: i7.InputText, selector: "[pInputText]" }, { kind: "component", type: i8.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i9.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i9.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i9.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i9.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }] });
|
|
132
132
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
|
-
args: [{ selector: 'kv-table', template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '
|
|
134
|
+
args: [{ selector: 'kv-table', template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '35rem' }\" [pageLinks]=\"1\">\r\n\r\n <ng-template pTemplate=\"caption\" *ngIf=\"config.enableCation\">\r\n <div class=\"flex flex-column md:flex-row md:justify-content-between\r\n md:align-items-center table\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span *ngIf=\"config.enableFilter\" class=\"block mt-2 md:mt-0\r\n p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText pAutoFocus [autofocus]=\"true\" type=\"text\" (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\" class=\"w-full sm:w-auto\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th style=\"width: 4rem\" *ngIf=\"config.enableSelect\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns;\" [pSortableColumn]=\"col.field\" [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\" class=\"text-sm\">\r\n <div class=\"flex flex-row\">\r\n {{col.header}}\r\n <p-sortIcon *ngIf=\"col.sortable === true\" [field]=\"col.field\" style=\"font-size: 10px;\"></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\r\n <tr>\r\n <td *ngIf=\"config.enableSelect\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n\r\n <td *ngIf=\"rowgroup\" [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td *ngIf=\"!rowgroup && !col.grouped\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- <td *ngIf=\"config.actions && config.actions.length> 0\">\r\n <i class=\"pi pi-ellipsis-h\" style=\"cursor: pointer\"\r\n (click)=\"activeItem(rowData);menu.toggle($event)\"></i>\r\n </td> -->\r\n\r\n <td *ngIf=\"config.actions && config.actions.length> 0\" class=\"flex flex-row\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <i class=\"pi {{action.icon}}\" style=\"cursor: pointer\" class=\"mr-2 ml-2\" (click)=\"action?.command()\"></i>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\" style=\"text-align: center;\">\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu #menu [popup]=\"true\" [model]=\"config.actions\"></p-menu>\r\n" }]
|
|
135
135
|
}], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: i2.CodigoFipePipe }, { type: i3.CpfCnpjPipe }, { type: i4.TelefonePipe }]; }, propDecorators: { templates: [{
|
|
136
136
|
type: ContentChildren,
|
|
137
137
|
args: [TemplateDirective]
|
|
@@ -163,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
|
163
163
|
}], onSelectionChange: [{
|
|
164
164
|
type: Output
|
|
165
165
|
}] } });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTBCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVFqSixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7QUFVckUsTUFBTSxPQUFPLGNBQWM7SUFhekIsY0FBYztRQUNaLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUlELElBQXFCLFNBQVMsQ0FBQyxLQUFrQjtRQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksSUFBSTtZQUN4QyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxLQUFLO1lBQ3pDLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUk7WUFDeEMsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxDQUFDLENB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QUFLO3VCQUFDLFFBQVE7Z0JBZU4sVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcblxyXG5cclxuaW1wb3J0IHsgb3V0cHV0QXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tcGlsZXInO1xyXG5pbXBvcnQgeyBUYWJsZUNvbmZpZyB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XHJcbmltcG9ydCB7IFRhYmxlQ29uZmlnQ29sdW1uIH0gZnJvbSAnLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnLmNvbHVtbic7XHJcbmltcG9ydCB7IFRhYmxlUGFnaW5hdGUgfSBmcm9tICcuLi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb2RpZ29GaXBlUGlwZSB9IGZyb20gJy4uL3BpcGVzL2NvZGlnb2ZpbGUucGlwZSc7XHJcbmltcG9ydCB7IENwZkNucGpQaXBlIH0gZnJvbSAnLi4vcGlwZXMvY3BmY25wai5waXBlJztcclxuaW1wb3J0IHsgVGVsZWZvbmVQaXBlIH0gZnJvbSAnLi4vcGlwZXMvdGVsZWZvbmUucGlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25maWchOiBUYWJsZUNvbmZpZztcclxuICBwZXNxdWlzYVZhbHVlITogc3RyaW5nO1xyXG4gIGdsb2JhbEZpbHRlckZpZWxkczogc3RyaW5nW10gPSBbXTtcclxuICBhY3Rpb25zVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBzZWxlY3RlZFNpemU6IHN0cmluZyA9ICcnO1xyXG4gIHNjcmVlblNpemUhOiBudW1iZXI7XHJcbiAgdGFibGVTaXplITogbnVtYmVyO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFRlbXBsYXRlRGlyZWN0aXZlKSB0ZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8YW55PjtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICB0aGlzLnNjcmVlblNpemUgPSB3aW5kb3cuaW5uZXJXaWR0aDtcclxuICAgIHRoaXMuYWRqdXN0VGFibGVTaXplKCk7XHJcbiAgfVxyXG5cclxuICBAVmlld0NoaWxkKCd0YWJsZScsIHsgc3RhdGljOiBmYWxzZSB9KSB0YWJsZSE6IFRhYmxlO1xyXG5cclxuICBASW5wdXQoJ2NvbmZpZycpIHNldCBzZXRDb25maWcodmFsdWU6IFRhYmxlQ29uZmlnKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IHtcclxuICAgICAgZW5hYmxlQ2F0aW9uOiB2YWx1ZS5lbmFibGVDYXRpb24gfHwgdHJ1ZSxcclxuICAgICAgZW5hYmxlU2VsZWN0OiB2YWx1ZS5lbmFibGVTZWxlY3QgfHwgZmFsc2UsXHJcbiAgICAgIGVuYWJsZUZpbHRlcjogdmFsdWUuZW5hYmxlRmlsdGVyIHx8IHRydWUsXHJcbiAgICAgIC4uLnZhbHVlLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5jb25maWcuZW5hYmxlRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuY29uZmlnLmNvbHVtbnMuZm9yRWFjaChjb2wgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2xvYmFsRmlsdGVyRmllbGRzLnB1c2goY29sLmZpZWxkKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBkYXRhU291cmNlOiBhbnk7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtczogYW55O1xyXG4gIEBJbnB1dCgpIHRvdGFsUmVjb3JkcyE6IG51bWJlcjtcclxuICBASW5wdXQoKSBwYWdpbmF0b3I6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHJvd3NQZXJQYWdlT3B0aW9ucyE6IG51bWJlcltdO1xyXG4gIEBJbnB1dCgpIHJvd3M6IG51bWJlciA9IDU7XHJcblxyXG4gIEBPdXRwdXQoKSBvbkFjdGl2ZUl0ZW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblBhZ2luYXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGRhdGVQaXBlOiBEYXRlUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb2RpZ29GaXBlUGlwZTogQ29kaWdvRmlwZVBpcGUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNwZkNucGpQaXBlOiBDcGZDbnBqUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVsZWZvbmVQaXBlOiBUZWxlZm9uZVBpcGUpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2NyZWVuU2l6ZSA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgdGhpcy5hZGp1c3RUYWJsZVNpemUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVJdGVtKHJvd0RhdGE6IGFueSkge1xyXG4gICAgdGhpcy5vbkFjdGl2ZUl0ZW0uZW1pdChyb3dEYXRhKTtcclxuICB9XHJcblxyXG4gIGlzQm9vbGVhbkZpZWxkKHJvd0RhdGE6IGFueSwgY29sOiBUYWJsZUNvbmZpZ0NvbHVtbik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiByb3dEYXRhW2NvbC5maWVsZF0gPT0gJ2Jvb2xlYW4nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uR2xvYmFsRmlsdGVyKHRhYmxlOiBUYWJsZSwgZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0YWJsZS5maWx0ZXJHbG9iYWwoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSwgJ2NvbnRhaW5zJyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGFnaW5hdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coZXZlbnQsICdvaScpXHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgbGV0IHBhZ2luYUluaWNpYWwgPSAoKGV2ZW50Py5maXJzdCA+IDApID8gKGV2ZW50LmZpcnN0IC8gZXZlbnQucm93cykgOiBldmVudC5maXJzdCkgKyAxO1xyXG4gICAgICBsZXQgdGVybW9QZXNxdWlzYSA9ICcnO1xyXG4gICAgICBsZXQgb3JkZW5hY2FvID0gJyc7XHJcblxyXG4gICAgICBjb25zb2xlLmxvZyhwYWdpbmFJbmljaWFsLCAnb2knKVxyXG4gICAgICBjb25zb2xlLmxvZyh0ZXJtb1Blc3F1aXNhLCAnb2knKVxyXG4gICAgICBjb25zb2xlLmxvZyhvcmRlbmFjYW8sICdvaScpXHJcblxyXG5cclxuICAgICAgaWYgKGV2ZW50Lmdsb2JhbEZpbHRlcilcclxuICAgICAgICB0ZXJtb1Blc3F1aXNhID0gZXZlbnQuZ2xvYmFsRmlsdGVyO1xyXG5cclxuICAgICAgaWYgKGV2ZW50LnNvcnRGaWVsZCkge1xyXG4gICAgICAgIG9yZGVuYWNhbyA9IGAke2V2ZW50LnNvcnRGaWVsZH0gJHsoZXZlbnQuc29ydE9yZGVyID09PSAxKSA/ICdBU0MnIDogJ0RFU0MnfWA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IG9iamV0bzogVGFibGVQYWdpbmF0ZSA9IHtcclxuICAgICAgICBwYWdpbmFJbmljaWFsOiBwYWdpbmFJbmljaWFsLFxyXG4gICAgICAgIHRhbWFuaG9QYWdpbmE6IGV2ZW50LnJvd3MsXHJcbiAgICAgICAgdGVybW9QZXNxdWlzYTogdGVybW9QZXNxdWlzYSxcclxuICAgICAgICBvcmRlbmFjYW86IG9yZGVuYWNhb1xyXG4gICAgICB9O1xyXG5cclxuICAgICAgY29uc29sZS5sb2cob2JqZXRvKVxyXG5cclxuICAgICAgdGhpcy5vblBhZ2luYXRlLmVtaXQob2JqZXRvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdGlvbkNoYW5nZSh2YWx1ZSA9IFtdKSB7XHJcbiAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuUm93Q2xhc3Mocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKSB7XHJcbiAgICBsZXQgdmFsdWUgPSByb3dEYXRhW2NvbC5maWVsZF07XHJcblxyXG4gICAgbGV0IHJvd0NsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgdGhpcy50YWJsZVNpemUgPiA4MDAgPyByb3dDbGFzcyA9ICd0ZXh0LXNtJyA6IHJvd0NsYXNzID0gJ3RleHQteHMnO1xyXG5cclxuICAgIGlmIChjb2wuZmllbGQgPT0gJ3ZlbmNpbWVudG8nKSB7XHJcbiAgICAgIHZhbHVlID49IG5ldyBEYXRlKCkgPyAnJyA6IHJvd0NsYXNzID0gcm93Q2xhc3MgKyAnIHRleHQtcmVkLTQwMCBmb250LXNlbWlib2xkJztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcm93Q2xhc3M7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1WYWx1ZShyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pIHtcclxuICAgIGxldCB2YWx1ZSA9IHJvd0RhdGFbY29sLmZpZWxkXTtcclxuXHJcbiAgICBpZiAoY29sLmZpZWxkID09ICd2ZW5jaW1lbnRvJykgcmV0dXJuIHZhbHVlLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xyXG4gICAgZWxzZSBpZiAoIWNvbC5waXBlKSByZXR1cm4gdmFsdWU7XHJcblxyXG4gICAgc3dpdGNoIChjb2wucGlwZSkge1xyXG4gICAgICBjYXNlICdkYXRlJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbHVlLCAnZGQvTU0veXl5eScpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdkZWNpbWFsJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMuZGVjaW1hbFBpcGUudHJhbnNmb3JtKHZhbHVlLCAnMS4yLTInLCAncHQtQlInKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnY3BmY25waic6XHJcbiAgICAgICAgdmFsdWUgPSB0aGlzLmNwZkNucGpQaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3RlbGVmb25lJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMudGVsZWZvbmVQaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2NvZGlnb2ZpcGUnOlxyXG4gICAgICAgIHZhbHVlID0gdGhpcy5jb2RpZ29GaXBlUGlwZS50cmFuc2Zvcm0odmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRqdXN0VGFibGVTaXplKCkge1xyXG4gICAgdGhpcy5zY3JlZW5TaXplID0gd2luZG93LmlubmVyV2lkdGg7XHJcblxyXG4gICAgdmFyIGNvbGxlY3Rpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCd0YWJsZScpO1xyXG4gICAgdGhpcy50YWJsZVNpemUgPSBOdW1iZXIoY29sbGVjdGlvbi5pdGVtKDApPy5jbGllbnRXaWR0aCk7XHJcblxyXG4gICAgaWYgKHRoaXMudGFibGVTaXplIDwgODAwKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTaXplID0gJ3AtZGF0YXRhYmxlLXNtJztcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkU2l6ZSA9ICcnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8cC10YWJsZSAqbmdJZj1cImNvbmZpZ1wiICNkdCBbc3R5bGVDbGFzc109XCJ0aGlzLnRhYmxlU2l6ZSA8IDgwMCA/ICdwLWRhdGF0YWJsZS1zbSc6ICdwLWRhdGF0YWJsZS1zbSdcIlxyXG4gIFt2YWx1ZV09XCJkYXRhU291cmNlXCIgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkSXRlbXNcIiBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXHJcbiAgW2dsb2JhbEZpbHRlckZpZWxkc109XCJnbG9iYWxGaWx0ZXJGaWVsZHNcIiBbcm93c109XCJyb3dzXCIgW3BhZ2luYXRvcl09XCJwYWdpbmF0b3JcIlxyXG4gIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwicm93c1BlclBhZ2VPcHRpb25zXCIgW3Nob3dDdXJyZW50UGFnZVJlcG9ydF09XCJ0cnVlXCJcclxuICBjdXJyZW50UGFnZVJlcG9ydFRlbXBsYXRlPVwie2ZpcnN0fSAtIHtsYXN0fSBkZSB7dG90YWxSZWNvcmRzfVwiIFtyb3dIb3Zlcl09XCJ0cnVlXCIgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG4gIFtsYXp5XT1cImNvbmZpZy5sYXp5XCIgKG9uTGF6eUxvYWQpPVwicGFnaW5hdGUoJGV2ZW50KVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwic2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxyXG4gIHJvd0dyb3VwTW9kZT1cInJvd3NwYW5cIiBbZ3JvdXBSb3dzQnldPVwiY29uZmlnLmZpZWxkR3JvdXBcIiBbc2hvd0ZpcnN0TGFzdEljb25dPVwiZmFsc2VcIlxyXG4gIFt0YWJsZVN0eWxlXT1cInsgJ21pbi13aWR0aCc6ICczNnJlbScgfVwiIFtwYWdlTGlua3NdPVwiMVwiPlxyXG5cclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY2FwdGlvblwiICpuZ0lmPVwiY29uZmlnLmVuYWJsZUNhdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gbWQ6ZmxleC1yb3cgbWQ6anVzdGlmeS1jb250ZW50LWJldHdlZW5cclxuICAgICAgbWQ6YWxpZ24taXRlbXMtY2VudGVyIHRhYmxlXCI+XHJcbiAgICAgIDxoNSBjbGFzcz1cIm0tMFwiPnt7IGNvbmZpZy50aXRsZSB9fTwvaDU+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiY29uZmlnLmVuYWJsZUZpbHRlclwiIGNsYXNzPVwiYmxvY2sgbXQtMiBtZDptdC0wXHJcbiAgICAgICAgcC1pbnB1dC1pY29uLWxlZnRcIj5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8aW5wdXQgcElucHV0VGV4dCBwQXV0b0ZvY3VzIFthdXRvZm9jdXNdPVwidHJ1ZVwiIHR5cGU9XCJ0ZXh0XCIgKGlucHV0KT1cIm9uR2xvYmFsRmlsdGVyKGR0LCAkZXZlbnQpXCJcclxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiUGVzcXVpc2FyLi4uXCIgY2xhc3M9XCJ3LWZ1bGwgc206dy1hdXRvXCIgLz5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNHJlbVwiICpuZ0lmPVwiY29uZmlnLmVuYWJsZVNlbGVjdFwiPlxyXG4gICAgICAgIDxwLXRhYmxlSGVhZGVyQ2hlY2tib3g+PC9wLXRhYmxlSGVhZGVyQ2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnM7XCIgW3BTb3J0YWJsZUNvbHVtbl09XCJjb2wuZmllbGRcIiBbcFNvcnRhYmxlQ29sdW1uRGlzYWJsZWRdPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLndpZHRoXT1cImNvbC53aWR0aFwiIGNsYXNzPVwidGV4dC1zbVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgICB7e2NvbC5oZWFkZXJ9fVxyXG4gICAgICAgICAgPHAtc29ydEljb24gKm5nSWY9XCJjb2wuc29ydGFibGUgPT09IHRydWVcIiBbZmllbGRdPVwiY29sLmZpZWxkXCIgc3R5bGU9XCJmb250LXNpemU6IDEwcHg7XCI+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC90aD5cclxuICAgICAgPHRoICpuZ0lmPVwiY29uZmlnLmFjdGlvbnMgJiYgY29uZmlnLmFjdGlvbnMubGVuZ3RoPiAwXCI+PC90aD5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93RGF0YSBsZXQtY29sdW1ucz1cImNvbHVtbnNcIiBsZXQtcm93Z3JvdXA9XCJyb3dncm91cFwiIGxldC1yb3dzcGFuPVwicm93c3BhblwiPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGQgKm5nSWY9XCJjb25maWcuZW5hYmxlU2VsZWN0XCI+XHJcbiAgICAgICAgPHAtdGFibGVDaGVja2JveCBbdmFsdWVdPVwicm93RGF0YVwiPjwvcC10YWJsZUNoZWNrYm94PlxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuXHJcbiAgICAgICAgPHRkICpuZ0lmPVwicm93Z3JvdXBcIiBbYXR0ci5yb3dzcGFuXT1cInJvd2dyb3VwICYmIGNvbC5ncm91cGVkPyByb3dzcGFuOiBudWxsXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tjb2wuaGVhZGVyfX08L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc0Jvb2xlYW5GaWVsZChyb3dEYXRhLCBjb2wpOyBlbHNlIGJvb2xlYW5GaWVsZFwiIFtjbGFzc109XCJyZXR1cm5Sb3dDbGFzcyhyb3dEYXRhLCBjb2wpXCI+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zZm9ybVZhbHVlKHJvd0RhdGEsIGNvbCkgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Jvb2xlYW5GaWVsZD5cclxuICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RGF0YVtjb2wuZmllbGRdID8gJ3BpIHBpLWNoZWNrJyA6ICdwaSBwaS10aW1lcydcIj48L2k+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgIDx0ZCAqbmdJZj1cIiFyb3dncm91cCAmJiAhY29sLmdyb3VwZWRcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e2NvbC5oZWFkZXJ9fTwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzQm9vbGVhbkZpZWxkKHJvd0RhdGEsIGNvbCk7IGVsc2UgYm9vbGVhbkZpZWxkXCIgW2NsYXNzXT1cInJldHVyblJvd0NsYXNzKHJvd0RhdGEsIGNvbClcIj5cclxuICAgICAgICAgICAge3sgdHJhbnNmb3JtVmFsdWUocm93RGF0YSwgY29sKSB9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm9vbGVhbkZpZWxkPlxyXG4gICAgICAgICAgICA8aSBbbmdDbGFzc109XCJyb3dEYXRhW2NvbC5maWVsZF0gPyAncGkgcGktY2hlY2snIDogJ3BpIHBpLXRpbWVzJ1wiPjwvaT5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPCEtLSA8dGQgKm5nSWY9XCJjb25maWcuYWN0aW9ucyAmJiBjb25maWcuYWN0aW9ucy5sZW5ndGg+IDBcIj5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWVsbGlwc2lzLWhcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlSXRlbShyb3dEYXRhKTttZW51LnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG4gICAgICA8L3RkPiAtLT5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImNvbmZpZy5hY3Rpb25zICYmIGNvbmZpZy5hY3Rpb25zLmxlbmd0aD4gMFwiIGNsYXNzPVwiZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBjb25maWcuYWN0aW9uc1wiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJwaSB7e2FjdGlvbi5pY29ufX1cIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiIGNsYXNzPVwibXItMiBtbC0yXCIgKGNsaWNrKT1cImFjdGlvbj8uY29tbWFuZCgpXCI+PC9pPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiIGxldC1jb2x1bW5zPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aFwiIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPlxyXG4gICAgICAgIE5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC10YWJsZT5cclxuPHAtbWVudSAjbWVudSBbcG9wdXBdPVwidHJ1ZVwiIFttb2RlbF09XCJjb25maWcuYWN0aW9uc1wiPjwvcC1tZW51PlxyXG4iXX0=
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTBCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVFqSixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7QUFVckUsTUFBTSxPQUFPLGNBQWM7SUFhekIsY0FBYztRQUNaLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUlELElBQXFCLFNBQVMsQ0FBQyxLQUFrQjtRQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksSUFBSTtZQUN4QyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxLQUFLO1lBQ3pDLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUk7WUFDeEMsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxDQUFDLENB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QUFLO3VCQUFDLFFBQVE7Z0JBZU4sVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcblxyXG5cclxuaW1wb3J0IHsgb3V0cHV0QXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tcGlsZXInO1xyXG5pbXBvcnQgeyBUYWJsZUNvbmZpZyB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XHJcbmltcG9ydCB7IFRhYmxlQ29uZmlnQ29sdW1uIH0gZnJvbSAnLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnLmNvbHVtbic7XHJcbmltcG9ydCB7IFRhYmxlUGFnaW5hdGUgfSBmcm9tICcuLi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb2RpZ29GaXBlUGlwZSB9IGZyb20gJy4uL3BpcGVzL2NvZGlnb2ZpbGUucGlwZSc7XHJcbmltcG9ydCB7IENwZkNucGpQaXBlIH0gZnJvbSAnLi4vcGlwZXMvY3BmY25wai5waXBlJztcclxuaW1wb3J0IHsgVGVsZWZvbmVQaXBlIH0gZnJvbSAnLi4vcGlwZXMvdGVsZWZvbmUucGlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25maWchOiBUYWJsZUNvbmZpZztcclxuICBwZXNxdWlzYVZhbHVlITogc3RyaW5nO1xyXG4gIGdsb2JhbEZpbHRlckZpZWxkczogc3RyaW5nW10gPSBbXTtcclxuICBhY3Rpb25zVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBzZWxlY3RlZFNpemU6IHN0cmluZyA9ICcnO1xyXG4gIHNjcmVlblNpemUhOiBudW1iZXI7XHJcbiAgdGFibGVTaXplITogbnVtYmVyO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFRlbXBsYXRlRGlyZWN0aXZlKSB0ZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8YW55PjtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICB0aGlzLnNjcmVlblNpemUgPSB3aW5kb3cuaW5uZXJXaWR0aDtcclxuICAgIHRoaXMuYWRqdXN0VGFibGVTaXplKCk7XHJcbiAgfVxyXG5cclxuICBAVmlld0NoaWxkKCd0YWJsZScsIHsgc3RhdGljOiBmYWxzZSB9KSB0YWJsZSE6IFRhYmxlO1xyXG5cclxuICBASW5wdXQoJ2NvbmZpZycpIHNldCBzZXRDb25maWcodmFsdWU6IFRhYmxlQ29uZmlnKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IHtcclxuICAgICAgZW5hYmxlQ2F0aW9uOiB2YWx1ZS5lbmFibGVDYXRpb24gfHwgdHJ1ZSxcclxuICAgICAgZW5hYmxlU2VsZWN0OiB2YWx1ZS5lbmFibGVTZWxlY3QgfHwgZmFsc2UsXHJcbiAgICAgIGVuYWJsZUZpbHRlcjogdmFsdWUuZW5hYmxlRmlsdGVyIHx8IHRydWUsXHJcbiAgICAgIC4uLnZhbHVlLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5jb25maWcuZW5hYmxlRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuY29uZmlnLmNvbHVtbnMuZm9yRWFjaChjb2wgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2xvYmFsRmlsdGVyRmllbGRzLnB1c2goY29sLmZpZWxkKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBkYXRhU291cmNlOiBhbnk7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtczogYW55O1xyXG4gIEBJbnB1dCgpIHRvdGFsUmVjb3JkcyE6IG51bWJlcjtcclxuICBASW5wdXQoKSBwYWdpbmF0b3I6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHJvd3NQZXJQYWdlT3B0aW9ucyE6IG51bWJlcltdO1xyXG4gIEBJbnB1dCgpIHJvd3M6IG51bWJlciA9IDU7XHJcblxyXG4gIEBPdXRwdXQoKSBvbkFjdGl2ZUl0ZW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblBhZ2luYXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGRhdGVQaXBlOiBEYXRlUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb2RpZ29GaXBlUGlwZTogQ29kaWdvRmlwZVBpcGUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNwZkNucGpQaXBlOiBDcGZDbnBqUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVsZWZvbmVQaXBlOiBUZWxlZm9uZVBpcGUpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2NyZWVuU2l6ZSA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgdGhpcy5hZGp1c3RUYWJsZVNpemUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVJdGVtKHJvd0RhdGE6IGFueSkge1xyXG4gICAgdGhpcy5vbkFjdGl2ZUl0ZW0uZW1pdChyb3dEYXRhKTtcclxuICB9XHJcblxyXG4gIGlzQm9vbGVhbkZpZWxkKHJvd0RhdGE6IGFueSwgY29sOiBUYWJsZUNvbmZpZ0NvbHVtbik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiByb3dEYXRhW2NvbC5maWVsZF0gPT0gJ2Jvb2xlYW4nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uR2xvYmFsRmlsdGVyKHRhYmxlOiBUYWJsZSwgZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0YWJsZS5maWx0ZXJHbG9iYWwoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSwgJ2NvbnRhaW5zJyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGFnaW5hdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coZXZlbnQsICdvaScpXHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgbGV0IHBhZ2luYUluaWNpYWwgPSAoKGV2ZW50Py5maXJzdCA+IDApID8gKGV2ZW50LmZpcnN0IC8gZXZlbnQucm93cykgOiBldmVudC5maXJzdCkgKyAxO1xyXG4gICAgICBsZXQgdGVybW9QZXNxdWlzYSA9ICcnO1xyXG4gICAgICBsZXQgb3JkZW5hY2FvID0gJyc7XHJcblxyXG4gICAgICBjb25zb2xlLmxvZyhwYWdpbmFJbmljaWFsLCAnb2knKVxyXG4gICAgICBjb25zb2xlLmxvZyh0ZXJtb1Blc3F1aXNhLCAnb2knKVxyXG4gICAgICBjb25zb2xlLmxvZyhvcmRlbmFjYW8sICdvaScpXHJcblxyXG5cclxuICAgICAgaWYgKGV2ZW50Lmdsb2JhbEZpbHRlcilcclxuICAgICAgICB0ZXJtb1Blc3F1aXNhID0gZXZlbnQuZ2xvYmFsRmlsdGVyO1xyXG5cclxuICAgICAgaWYgKGV2ZW50LnNvcnRGaWVsZCkge1xyXG4gICAgICAgIG9yZGVuYWNhbyA9IGAke2V2ZW50LnNvcnRGaWVsZH0gJHsoZXZlbnQuc29ydE9yZGVyID09PSAxKSA/ICdBU0MnIDogJ0RFU0MnfWA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IG9iamV0bzogVGFibGVQYWdpbmF0ZSA9IHtcclxuICAgICAgICBwYWdpbmFJbmljaWFsOiBwYWdpbmFJbmljaWFsLFxyXG4gICAgICAgIHRhbWFuaG9QYWdpbmE6IGV2ZW50LnJvd3MsXHJcbiAgICAgICAgdGVybW9QZXNxdWlzYTogdGVybW9QZXNxdWlzYSxcclxuICAgICAgICBvcmRlbmFjYW86IG9yZGVuYWNhb1xyXG4gICAgICB9O1xyXG5cclxuICAgICAgY29uc29sZS5sb2cob2JqZXRvKVxyXG5cclxuICAgICAgdGhpcy5vblBhZ2luYXRlLmVtaXQob2JqZXRvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdGlvbkNoYW5nZSh2YWx1ZSA9IFtdKSB7XHJcbiAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuUm93Q2xhc3Mocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKSB7XHJcbiAgICBsZXQgdmFsdWUgPSByb3dEYXRhW2NvbC5maWVsZF07XHJcblxyXG4gICAgbGV0IHJvd0NsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgdGhpcy50YWJsZVNpemUgPiA4MDAgPyByb3dDbGFzcyA9ICd0ZXh0LXNtJyA6IHJvd0NsYXNzID0gJ3RleHQteHMnO1xyXG5cclxuICAgIGlmIChjb2wuZmllbGQgPT0gJ3ZlbmNpbWVudG8nKSB7XHJcbiAgICAgIHZhbHVlID49IG5ldyBEYXRlKCkgPyAnJyA6IHJvd0NsYXNzID0gcm93Q2xhc3MgKyAnIHRleHQtcmVkLTQwMCBmb250LXNlbWlib2xkJztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcm93Q2xhc3M7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1WYWx1ZShyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pIHtcclxuICAgIGxldCB2YWx1ZSA9IHJvd0RhdGFbY29sLmZpZWxkXTtcclxuXHJcbiAgICBpZiAoY29sLmZpZWxkID09ICd2ZW5jaW1lbnRvJykgcmV0dXJuIHZhbHVlLnRvTG9jYWxlRGF0ZVN0cmluZygpO1xyXG4gICAgZWxzZSBpZiAoIWNvbC5waXBlKSByZXR1cm4gdmFsdWU7XHJcblxyXG4gICAgc3dpdGNoIChjb2wucGlwZSkge1xyXG4gICAgICBjYXNlICdkYXRlJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbHVlLCAnZGQvTU0veXl5eScpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdkZWNpbWFsJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMuZGVjaW1hbFBpcGUudHJhbnNmb3JtKHZhbHVlLCAnMS4yLTInLCAncHQtQlInKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnY3BmY25waic6XHJcbiAgICAgICAgdmFsdWUgPSB0aGlzLmNwZkNucGpQaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3RlbGVmb25lJzpcclxuICAgICAgICB2YWx1ZSA9IHRoaXMudGVsZWZvbmVQaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2NvZGlnb2ZpcGUnOlxyXG4gICAgICAgIHZhbHVlID0gdGhpcy5jb2RpZ29GaXBlUGlwZS50cmFuc2Zvcm0odmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRqdXN0VGFibGVTaXplKCkge1xyXG4gICAgdGhpcy5zY3JlZW5TaXplID0gd2luZG93LmlubmVyV2lkdGg7XHJcblxyXG4gICAgdmFyIGNvbGxlY3Rpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCd0YWJsZScpO1xyXG4gICAgdGhpcy50YWJsZVNpemUgPSBOdW1iZXIoY29sbGVjdGlvbi5pdGVtKDApPy5jbGllbnRXaWR0aCk7XHJcblxyXG4gICAgaWYgKHRoaXMudGFibGVTaXplIDwgODAwKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTaXplID0gJ3AtZGF0YXRhYmxlLXNtJztcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkU2l6ZSA9ICcnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8cC10YWJsZSAqbmdJZj1cImNvbmZpZ1wiICNkdCBbc3R5bGVDbGFzc109XCJ0aGlzLnRhYmxlU2l6ZSA8IDgwMCA/ICdwLWRhdGF0YWJsZS1zbSc6ICdwLWRhdGF0YWJsZS1zbSdcIlxyXG4gIFt2YWx1ZV09XCJkYXRhU291cmNlXCIgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkSXRlbXNcIiBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXHJcbiAgW2dsb2JhbEZpbHRlckZpZWxkc109XCJnbG9iYWxGaWx0ZXJGaWVsZHNcIiBbcm93c109XCJyb3dzXCIgW3BhZ2luYXRvcl09XCJwYWdpbmF0b3JcIlxyXG4gIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwicm93c1BlclBhZ2VPcHRpb25zXCIgW3Nob3dDdXJyZW50UGFnZVJlcG9ydF09XCJ0cnVlXCJcclxuICBjdXJyZW50UGFnZVJlcG9ydFRlbXBsYXRlPVwie2ZpcnN0fSAtIHtsYXN0fSBkZSB7dG90YWxSZWNvcmRzfVwiIFtyb3dIb3Zlcl09XCJ0cnVlXCIgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG4gIFtsYXp5XT1cImNvbmZpZy5sYXp5XCIgKG9uTGF6eUxvYWQpPVwicGFnaW5hdGUoJGV2ZW50KVwiIChzZWxlY3Rpb25DaGFuZ2UpPVwic2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxyXG4gIHJvd0dyb3VwTW9kZT1cInJvd3NwYW5cIiBbZ3JvdXBSb3dzQnldPVwiY29uZmlnLmZpZWxkR3JvdXBcIiBbc2hvd0ZpcnN0TGFzdEljb25dPVwiZmFsc2VcIlxyXG4gIFt0YWJsZVN0eWxlXT1cInsgJ21pbi13aWR0aCc6ICczNXJlbScgfVwiIFtwYWdlTGlua3NdPVwiMVwiPlxyXG5cclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY2FwdGlvblwiICpuZ0lmPVwiY29uZmlnLmVuYWJsZUNhdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gbWQ6ZmxleC1yb3cgbWQ6anVzdGlmeS1jb250ZW50LWJldHdlZW5cclxuICAgICAgbWQ6YWxpZ24taXRlbXMtY2VudGVyIHRhYmxlXCI+XHJcbiAgICAgIDxoNSBjbGFzcz1cIm0tMFwiPnt7IGNvbmZpZy50aXRsZSB9fTwvaDU+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiY29uZmlnLmVuYWJsZUZpbHRlclwiIGNsYXNzPVwiYmxvY2sgbXQtMiBtZDptdC0wXHJcbiAgICAgICAgcC1pbnB1dC1pY29uLWxlZnRcIj5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8aW5wdXQgcElucHV0VGV4dCBwQXV0b0ZvY3VzIFthdXRvZm9jdXNdPVwidHJ1ZVwiIHR5cGU9XCJ0ZXh0XCIgKGlucHV0KT1cIm9uR2xvYmFsRmlsdGVyKGR0LCAkZXZlbnQpXCJcclxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiUGVzcXVpc2FyLi4uXCIgY2xhc3M9XCJ3LWZ1bGwgc206dy1hdXRvXCIgLz5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIGxldC1jb2x1bW5zPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNHJlbVwiICpuZ0lmPVwiY29uZmlnLmVuYWJsZVNlbGVjdFwiPlxyXG4gICAgICAgIDxwLXRhYmxlSGVhZGVyQ2hlY2tib3g+PC9wLXRhYmxlSGVhZGVyQ2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnM7XCIgW3BTb3J0YWJsZUNvbHVtbl09XCJjb2wuZmllbGRcIiBbcFNvcnRhYmxlQ29sdW1uRGlzYWJsZWRdPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLndpZHRoXT1cImNvbC53aWR0aFwiIGNsYXNzPVwidGV4dC1zbVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgICB7e2NvbC5oZWFkZXJ9fVxyXG4gICAgICAgICAgPHAtc29ydEljb24gKm5nSWY9XCJjb2wuc29ydGFibGUgPT09IHRydWVcIiBbZmllbGRdPVwiY29sLmZpZWxkXCIgc3R5bGU9XCJmb250LXNpemU6IDEwcHg7XCI+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC90aD5cclxuICAgICAgPHRoICpuZ0lmPVwiY29uZmlnLmFjdGlvbnMgJiYgY29uZmlnLmFjdGlvbnMubGVuZ3RoPiAwXCI+PC90aD5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93RGF0YSBsZXQtY29sdW1ucz1cImNvbHVtbnNcIiBsZXQtcm93Z3JvdXA9XCJyb3dncm91cFwiIGxldC1yb3dzcGFuPVwicm93c3BhblwiPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGQgKm5nSWY9XCJjb25maWcuZW5hYmxlU2VsZWN0XCI+XHJcbiAgICAgICAgPHAtdGFibGVDaGVja2JveCBbdmFsdWVdPVwicm93RGF0YVwiPjwvcC10YWJsZUNoZWNrYm94PlxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuXHJcbiAgICAgICAgPHRkICpuZ0lmPVwicm93Z3JvdXBcIiBbYXR0ci5yb3dzcGFuXT1cInJvd2dyb3VwICYmIGNvbC5ncm91cGVkPyByb3dzcGFuOiBudWxsXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tjb2wuaGVhZGVyfX08L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc0Jvb2xlYW5GaWVsZChyb3dEYXRhLCBjb2wpOyBlbHNlIGJvb2xlYW5GaWVsZFwiIFtjbGFzc109XCJyZXR1cm5Sb3dDbGFzcyhyb3dEYXRhLCBjb2wpXCI+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zZm9ybVZhbHVlKHJvd0RhdGEsIGNvbCkgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Jvb2xlYW5GaWVsZD5cclxuICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RGF0YVtjb2wuZmllbGRdID8gJ3BpIHBpLWNoZWNrJyA6ICdwaSBwaS10aW1lcydcIj48L2k+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgIDx0ZCAqbmdJZj1cIiFyb3dncm91cCAmJiAhY29sLmdyb3VwZWRcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e2NvbC5oZWFkZXJ9fTwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzQm9vbGVhbkZpZWxkKHJvd0RhdGEsIGNvbCk7IGVsc2UgYm9vbGVhbkZpZWxkXCIgW2NsYXNzXT1cInJldHVyblJvd0NsYXNzKHJvd0RhdGEsIGNvbClcIj5cclxuICAgICAgICAgICAge3sgdHJhbnNmb3JtVmFsdWUocm93RGF0YSwgY29sKSB9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm9vbGVhbkZpZWxkPlxyXG4gICAgICAgICAgICA8aSBbbmdDbGFzc109XCJyb3dEYXRhW2NvbC5maWVsZF0gPyAncGkgcGktY2hlY2snIDogJ3BpIHBpLXRpbWVzJ1wiPjwvaT5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPCEtLSA8dGQgKm5nSWY9XCJjb25maWcuYWN0aW9ucyAmJiBjb25maWcuYWN0aW9ucy5sZW5ndGg+IDBcIj5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWVsbGlwc2lzLWhcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlSXRlbShyb3dEYXRhKTttZW51LnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG4gICAgICA8L3RkPiAtLT5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImNvbmZpZy5hY3Rpb25zICYmIGNvbmZpZy5hY3Rpb25zLmxlbmd0aD4gMFwiIGNsYXNzPVwiZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBjb25maWcuYWN0aW9uc1wiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJwaSB7e2FjdGlvbi5pY29ufX1cIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiIGNsYXNzPVwibXItMiBtbC0yXCIgKGNsaWNrKT1cImFjdGlvbj8uY29tbWFuZCgpXCI+PC9pPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiIGxldC1jb2x1bW5zPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aFwiIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPlxyXG4gICAgICAgIE5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC10YWJsZT5cclxuPHAtbWVudSAjbWVudSBbcG9wdXBdPVwidHJ1ZVwiIFttb2RlbF09XCJjb25maWcuYWN0aW9uc1wiPjwvcC1tZW51PlxyXG4iXX0=
|
|
@@ -945,10 +945,10 @@ class TableComponent {
|
|
|
945
945
|
}
|
|
946
946
|
}
|
|
947
947
|
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, deps: [{ token: i1.DatePipe }, { token: i1.DecimalPipe }, { token: CodigoFipePipe }, { token: CpfCnpjPipe }, { token: TelefonePipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
948
|
-
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows" }, outputs: { onActiveItem: "onActiveItem", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '
|
|
948
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows" }, outputs: { onActiveItem: "onActiveItem", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '35rem' }\" [pageLinks]=\"1\">\r\n\r\n <ng-template pTemplate=\"caption\" *ngIf=\"config.enableCation\">\r\n <div class=\"flex flex-column md:flex-row md:justify-content-between\r\n md:align-items-center table\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span *ngIf=\"config.enableFilter\" class=\"block mt-2 md:mt-0\r\n p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText pAutoFocus [autofocus]=\"true\" type=\"text\" (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\" class=\"w-full sm:w-auto\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th style=\"width: 4rem\" *ngIf=\"config.enableSelect\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns;\" [pSortableColumn]=\"col.field\" [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\" class=\"text-sm\">\r\n <div class=\"flex flex-row\">\r\n {{col.header}}\r\n <p-sortIcon *ngIf=\"col.sortable === true\" [field]=\"col.field\" style=\"font-size: 10px;\"></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\r\n <tr>\r\n <td *ngIf=\"config.enableSelect\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n\r\n <td *ngIf=\"rowgroup\" [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td *ngIf=\"!rowgroup && !col.grouped\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- <td *ngIf=\"config.actions && config.actions.length> 0\">\r\n <i class=\"pi pi-ellipsis-h\" style=\"cursor: pointer\"\r\n (click)=\"activeItem(rowData);menu.toggle($event)\"></i>\r\n </td> -->\r\n\r\n <td *ngIf=\"config.actions && config.actions.length> 0\" class=\"flex flex-row\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <i class=\"pi {{action.icon}}\" style=\"cursor: pointer\" class=\"mr-2 ml-2\" (click)=\"action?.command()\"></i>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\" style=\"text-align: center;\">\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu #menu [popup]=\"true\" [model]=\"config.actions\"></p-menu>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "directive", type: i4$5.InputText, selector: "[pInputText]" }, { kind: "component", type: i8$1.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i9$1.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i9$1.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i9$1.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i9$1.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i9$1.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }] });
|
|
949
949
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, decorators: [{
|
|
950
950
|
type: Component,
|
|
951
|
-
args: [{ selector: 'kv-table', template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '
|
|
951
|
+
args: [{ selector: 'kv-table', template: "<p-table *ngIf=\"config\" #dt [styleClass]=\"this.tableSize < 800 ? 'p-datatable-sm': 'p-datatable-sm'\"\r\n [value]=\"dataSource\" [(selection)]=\"selectedItems\" [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\" [rows]=\"rows\" [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\" [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\" [rowHover]=\"true\" [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\" (onLazyLoad)=\"paginate($event)\" (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\" [groupRowsBy]=\"config.fieldGroup\" [showFirstLastIcon]=\"false\"\r\n [tableStyle]=\"{ 'min-width': '35rem' }\" [pageLinks]=\"1\">\r\n\r\n <ng-template pTemplate=\"caption\" *ngIf=\"config.enableCation\">\r\n <div class=\"flex flex-column md:flex-row md:justify-content-between\r\n md:align-items-center table\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span *ngIf=\"config.enableFilter\" class=\"block mt-2 md:mt-0\r\n p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText pAutoFocus [autofocus]=\"true\" type=\"text\" (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\" class=\"w-full sm:w-auto\" />\r\n </span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th style=\"width: 4rem\" *ngIf=\"config.enableSelect\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th *ngFor=\"let col of columns;\" [pSortableColumn]=\"col.field\" [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\" class=\"text-sm\">\r\n <div class=\"flex flex-row\">\r\n {{col.header}}\r\n <p-sortIcon *ngIf=\"col.sortable === true\" [field]=\"col.field\" style=\"font-size: 10px;\"></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\" let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\r\n <tr>\r\n <td *ngIf=\"config.enableSelect\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n\r\n <td *ngIf=\"rowgroup\" [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td *ngIf=\"!rowgroup && !col.grouped\">\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'pi pi-check' : 'pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- <td *ngIf=\"config.actions && config.actions.length> 0\">\r\n <i class=\"pi pi-ellipsis-h\" style=\"cursor: pointer\"\r\n (click)=\"activeItem(rowData);menu.toggle($event)\"></i>\r\n </td> -->\r\n\r\n <td *ngIf=\"config.actions && config.actions.length> 0\" class=\"flex flex-row\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <i class=\"pi {{action.icon}}\" style=\"cursor: pointer\" class=\"mr-2 ml-2\" (click)=\"action?.command()\"></i>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\" style=\"text-align: center;\">\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu #menu [popup]=\"true\" [model]=\"config.actions\"></p-menu>\r\n" }]
|
|
952
952
|
}], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: CodigoFipePipe }, { type: CpfCnpjPipe }, { type: TelefonePipe }]; }, propDecorators: { templates: [{
|
|
953
953
|
type: ContentChildren,
|
|
954
954
|
args: [TemplateDirective]
|