ngx-vector-components 4.20.1 → 4.22.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.22.1] (06/09/2022)
4
+
5
+ ### BugFix
6
+
7
+ - added `onHeaderCheckboxToggle` in `datatableComponent`
8
+
9
+ ## [4.22.0] (05/09/2022)
10
+
11
+ ### Feature
12
+
13
+ - added `cpf-cnpj-validator` in `utils`, added `plate-mask` in `mask-utils`, added permissions in `profile.model.ts`.
14
+
15
+ ## [4.21.0] (30/08/2022)
16
+
17
+ ### Feature
18
+
19
+ - added `profileName` to user info in `profile.service.ts`.
20
+
3
21
  ## [4.20.1] (15/08/2022)
4
22
 
5
23
  ### Bugfix
@@ -235,10 +235,10 @@ export class DataTableComponent {
235
235
  }
236
236
  }
237
237
  DataTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DataTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
238
- DataTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DataTableComponent, selector: "vector-data-table", inputs: { columns: "columns", data: "data", exportExcel: "exportExcel", exportPDF: "exportPDF", totalRecords: "totalRecords", filters: "filters", addItemLabel: "addItemLabel", pagination: "pagination", virtualPagination: "virtualPagination", tabs: "tabs", customButtons: "customButtons", addItemButtonPlusSign: "addItemButtonPlusSign", hasActions: "hasActions", selectionMode: "selectionMode", selectionType: "selectionType", height: "height" }, outputs: { onLazyLoad: "onLazyLoad", onFilter: "onFilter", onAdd: "onAdd", onExportExcel: "onExportExcel", onExportPDF: "onExportPDF", onSelectedRows: "onSelectedRows", onFilterChanged: "onFilterChanged" }, viewQueries: [{ propertyName: "filtersComponent", first: true, predicate: FiltersComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div class=\"table-header-actions field\" *ngIf=\"addItemLabel || exportExcel || exportPDF\">\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file\"></i><span>PDF</span>\r\n </button>\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n </div>\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\" [header]=\"tab.name\"></p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n [scrollHeight]=\"height\"\r\n [attr.selectionMode]=\"selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th style=\"max-width: 3rem\" *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th style=\"max-width: 100px\" class=\"centered\" *ngIf=\"hasActions\">A\u00E7\u00F5es</th>\r\n <th\r\n *ngFor=\"let col of columns\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n >\r\n {{ col.header }} <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item>\r\n <tr class=\"row\" [pSelectableRow]=\"rowData\">\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasActions\" style=\"max-width: 100px\" class=\"centered\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i class=\"actions-menu-button fas fa-cog\" (click)=\"menu.toggle($event)\"></i>\r\n </td>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"isHtmlCell(col)\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"!isHtmlCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"col.type === 'TEXT_BADGE' && !!col.getStatus\"\r\n [label]=\"item[col.field]\"\r\n [type]=\"col.getStatus(item[col.field])\"\r\n ></vector-badge>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media (min-width: 768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium)}\n"], components: [{ type: i1.FiltersComponent, selector: "vector-filters", inputs: ["fields"], outputs: ["onSearch", "formBuilded"] }, { type: i2.ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "style"], outputs: ["onClick"] }, { type: i3.PanelComponent, selector: "vector-panel" }, { type: i4.TabView, selector: "p-tabView", inputs: ["orientation", "style", "styleClass", "controlClose", "scrollable", "activeIndex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { type: i4.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { type: i5.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", "virtualScrollDelay", "virtualRowHeight", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "minBufferPx", "maxBufferPx", "responsiveLayout", "breakpoint", "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"] }, { type: i5.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { type: i5.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { type: i5.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { type: i5.TableRadioButton, selector: "p-tableRadioButton", inputs: ["disabled", "value", "index", "inputId", "name", "ariaLabel"] }, { type: i6.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i7.BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { type: i5.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }] });
238
+ DataTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DataTableComponent, selector: "vector-data-table", inputs: { columns: "columns", data: "data", exportExcel: "exportExcel", exportPDF: "exportPDF", totalRecords: "totalRecords", filters: "filters", addItemLabel: "addItemLabel", pagination: "pagination", virtualPagination: "virtualPagination", tabs: "tabs", customButtons: "customButtons", addItemButtonPlusSign: "addItemButtonPlusSign", hasActions: "hasActions", selectionMode: "selectionMode", selectionType: "selectionType", height: "height" }, outputs: { onLazyLoad: "onLazyLoad", onFilter: "onFilter", onAdd: "onAdd", onExportExcel: "onExportExcel", onExportPDF: "onExportPDF", onSelectedRows: "onSelectedRows", onFilterChanged: "onFilterChanged" }, viewQueries: [{ propertyName: "filtersComponent", first: true, predicate: FiltersComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div class=\"table-header-actions field\" *ngIf=\"addItemLabel || exportExcel || exportPDF\">\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file\"></i><span>PDF</span>\r\n </button>\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n </div>\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\" [header]=\"tab.name\"></p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n [scrollHeight]=\"height\"\r\n [attr.selectionMode]=\"selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th style=\"max-width: 3rem\" *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th style=\"max-width: 100px\" class=\"centered\" *ngIf=\"hasActions\">A\u00E7\u00F5es</th>\r\n <th\r\n *ngFor=\"let col of columns\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n >\r\n {{ col.header }} <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item>\r\n <tr class=\"row\" [pSelectableRow]=\"rowData\">\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasActions\" style=\"max-width: 100px\" class=\"centered\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i class=\"actions-menu-button fas fa-cog\" (click)=\"menu.toggle($event)\"></i>\r\n </td>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"isHtmlCell(col)\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"!isHtmlCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"col.type === 'TEXT_BADGE' && !!col.getStatus\"\r\n [label]=\"item[col.field]\"\r\n [type]=\"col.getStatus(item[col.field])\"\r\n ></vector-badge>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media (min-width: 768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium)}\n"], components: [{ type: i1.FiltersComponent, selector: "vector-filters", inputs: ["fields"], outputs: ["onSearch", "formBuilded"] }, { type: i2.ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "style"], outputs: ["onClick"] }, { type: i3.PanelComponent, selector: "vector-panel" }, { type: i4.TabView, selector: "p-tabView", inputs: ["orientation", "style", "styleClass", "controlClose", "scrollable", "activeIndex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { type: i4.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { type: i5.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", "virtualScrollDelay", "virtualRowHeight", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "minBufferPx", "maxBufferPx", "responsiveLayout", "breakpoint", "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"] }, { type: i5.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { type: i5.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { type: i5.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { type: i5.TableRadioButton, selector: "p-tableRadioButton", inputs: ["disabled", "value", "index", "inputId", "name", "ariaLabel"] }, { type: i6.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i7.BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { type: i5.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }] });
239
239
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DataTableComponent, decorators: [{
240
240
  type: Component,
241
- args: [{ selector: 'vector-data-table', template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div class=\"table-header-actions field\" *ngIf=\"addItemLabel || exportExcel || exportPDF\">\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file\"></i><span>PDF</span>\r\n </button>\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n </div>\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\" [header]=\"tab.name\"></p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n [scrollHeight]=\"height\"\r\n [attr.selectionMode]=\"selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th style=\"max-width: 3rem\" *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th style=\"max-width: 100px\" class=\"centered\" *ngIf=\"hasActions\">A\u00E7\u00F5es</th>\r\n <th\r\n *ngFor=\"let col of columns\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n >\r\n {{ col.header }} <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item>\r\n <tr class=\"row\" [pSelectableRow]=\"rowData\">\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasActions\" style=\"max-width: 100px\" class=\"centered\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i class=\"actions-menu-button fas fa-cog\" (click)=\"menu.toggle($event)\"></i>\r\n </td>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"isHtmlCell(col)\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"!isHtmlCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"col.type === 'TEXT_BADGE' && !!col.getStatus\"\r\n [label]=\"item[col.field]\"\r\n [type]=\"col.getStatus(item[col.field])\"\r\n ></vector-badge>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media (min-width: 768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium)}\n"] }]
241
+ args: [{ selector: 'vector-data-table', template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div class=\"table-header-actions field\" *ngIf=\"addItemLabel || exportExcel || exportPDF\">\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file\"></i><span>PDF</span>\r\n </button>\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n ></vector-button>\r\n </div>\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\" [header]=\"tab.name\"></p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n [scrollHeight]=\"height\"\r\n [attr.selectionMode]=\"selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th style=\"max-width: 3rem\" *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <th style=\"max-width: 100px\" class=\"centered\" *ngIf=\"hasActions\">A\u00E7\u00F5es</th>\r\n <th\r\n *ngFor=\"let col of columns\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n >\r\n {{ col.header }} <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item>\r\n <tr class=\"row\" [pSelectableRow]=\"rowData\">\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"flex justify-content-center align-items-center\">\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasActions\" style=\"max-width: 100px\" class=\"centered\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i class=\"actions-menu-button fas fa-cog\" (click)=\"menu.toggle($event)\"></i>\r\n </td>\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"isHtmlCell(col)\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"!isHtmlCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"col.type === 'TEXT_BADGE' && !!col.getStatus\"\r\n [label]=\"item[col.field]\"\r\n [type]=\"col.getStatus(item[col.field])\"\r\n ></vector-badge>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media (min-width: 768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium)}\n"] }]
242
242
  }], ctorParameters: function () { return []; }, propDecorators: { columns: [{
243
243
  type: Input
244
244
  }], data: [{
@@ -289,4 +289,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
289
289
  type: ViewChild,
290
290
  args: [FiltersComponent, { static: true }]
291
291
  }] } });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2ZpZWxkcy9kYXRhLXRhYmxlL2RhdGEtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWVsZHMvZGF0YS10YWJsZS9kYXRhLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBZ0MsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUF1QyxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFlLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7Ozs7O0FBTzdFLE1BQU0sT0FBTyxrQkFBa0I7SUF1RzdCO1FBckdPLFlBQU8sR0FBa0IsRUFBRSxDQUFDO1FBRTVCLFNBQUksR0FBVSxFQUFFLENBQUM7UUFFakIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUVqQixZQUFPLEdBQWtC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RSxtQkFBbUI7MEVBTXRCLE9BQU87c0JBRGIsS0FBSztnQkFHQyxJQUFJO3NCQURWLEtBQUs7Z0JBR0MsV0FBVztzQkFEakIsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSztnQkFHQyxPQUFPO3NCQURiLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSztnQkFHQyxVQUFVO3NCQURoQixLQUFLO2dCQUdDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFHSyxJQUFJO3NCQURkLEtBQUs7Z0JBTUMsYUFBYTtzQkFEbkIsS0FBSztnQkFHQyxxQkFBcUI7c0JBRDNCLEtBQUs7Z0JBR0MsVUFBVTtzQkFEaEIsS0FBSztnQkFHSyxhQUFhO3NCQUR2QixLQUFLO2dCQWVDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBR0ssTUFBTTtzQkFEaEIsS0FBSztnQkFvQkMsVUFBVTtzQkFEaEIsTUFBTTtnQkFHQSxRQUFRO3NCQURkLE1BQU07Z0JBR0EsS0FBSztzQkFEWCxNQUFNO2dCQUdBLGFBQWE7c0JBRG5CLE1BQU07Z0JBR0EsV0FBVztzQkFEakIsTUFBTTtnQkFHQSxjQUFjO3NCQURwQixNQUFNO2dCQUdBLGVBQWU7c0JBRHJCLE1BQU07Z0JBR0EsZ0JBQWdCO3NCQUR0QixTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBGaWx0ZXJDaGFuZ2VkRXZlbnQsIExpc3RJdGVtLCBTdGF0dXMgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBEYXRhVGFibGVMYXp5TG9hZEV2ZW50LCBUYWJsZUNvbHVtbiwgVGFibGVDb2x1bW5UeXBlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2RhdGEtdGFibGUubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXNrVXRpbCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgRmlsdGVyRmllbGQsIEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuLi9maWx0ZXJzL2ZpbHRlcnMuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmVjdG9yLWRhdGEtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY29sdW1uczogVGFibGVDb2x1bW5bXSA9IFtdO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRhdGE6IGFueVtdID0gW107XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZXhwb3J0RXhjZWwgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBleHBvcnRQREYgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0b3RhbFJlY29yZHMgPSAwO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZpbHRlcnM6IEZpbHRlckZpZWxkW10gPSBbXTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhZGRJdGVtTGFiZWwgPSAnJztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwYWdpbmF0aW9uID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2aXJ0dWFsUGFnaW5hdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0YWJzKF90YWJzOiBMaXN0SXRlbVtdKSB7XHJcbiAgICB0aGlzLl90YWJzID0gX3RhYnM7XHJcbiAgICB0aGlzLl90YWJTZWxlY3RlZCA9IF90YWJzWzBdO1xyXG4gIH1cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjdXN0b21CdXR0b25zOiB7IGxhYmVsOiBzdHJpbmc7IGNsaWNrRnVuY3Rpb246IEZ1bmN0aW9uIH1bXSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhZGRJdGVtQnV0dG9uUGx1c1NpZ24gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBoYXNBY3Rpb25zOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgc2VsZWN0aW9uTW9kZShfc2VsZWN0aW9uTW9kZSkge1xyXG4gICAgc3dpdGNoIChfc2VsZWN0aW9uTW9kZSkge1xyXG4gICAgICBjYXNlICdzaW5nbGUnOlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSAnc2luZ2xlJztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbXVsdGlwbGUnOlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSAnbXVsdGlwbGUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSBudWxsO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3Rpb25UeXBlOiAnY2hlY2tib3gnIHwgJ3JhZGlvYnV0dG9uJyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBoZWlnaHQoX2hlaWdodDogc3RyaW5nKSB7XHJcbiAgICBzd2l0Y2ggKF9oZWlnaHQpIHtcclxuICAgICAgY2FzZSAnc21hbGwnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICczMDBweCc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ21lZGl1bSc6XHJcbiAgICAgICAgdGhpcy5faGVpZ2h0ID0gJzUwMHB4JztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbGFyZ2UnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICc3MDBweCc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2Z1bGwnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICdmbGV4JztcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLl9oZWlnaHQgPSAnMzAwcHgnO1xyXG4gICAgfVxyXG4gIH1cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25MYXp5TG9hZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0YVRhYmxlTGF6eUxvYWRFdmVudD4oKTtcclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25GaWx0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25BZGQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIG9uRXhwb3J0RXhjZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIG9uRXhwb3J0UERGID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvblNlbGVjdGVkUm93cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvbkZpbHRlckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbHRlckNoYW5nZWRFdmVudD4oKTtcclxuICBAVmlld0NoaWxkKEZpbHRlcnNDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXHJcbiAgcHVibGljIGZpbHRlcnNDb21wb25lbnQ6IEZpbHRlcnNDb21wb25lbnQgfCB1bmRlZmluZWQ7XHJcblxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW1zOiBhbnkgPSBbXTtcclxuXHJcbiAgZ2V0IHRhYnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFicztcclxuICB9XHJcbiAgZ2V0IGhlaWdodCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9oZWlnaHQ7XHJcbiAgfVxyXG4gIGdldCBzZWxlY3Rpb25Nb2RlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGlvbk1vZGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZWxlY3Rpb25Nb2RlOiAnc2luZ2xlJyB8ICdtdWx0aXBsZScgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIF9oZWlnaHQ6IHN0cmluZyA9ICdzbWFsbCc7XHJcbiAgcHJpdmF0ZSBfdGFiczogTGlzdEl0ZW1bXSA9IFtdO1xyXG4gIHByaXZhdGUgX2RyYXcgPSAxO1xyXG4gIHByaXZhdGUgX2ZpcnN0TGF6eUxvYWRlZERvbmUgPSBmYWxzZTtcclxuICBwcml2YXRlIF9sYXN0TGF6eUxvYWRFdmVudDogRGF0YVRhYmxlTGF6eUxvYWRFdmVudCB8IHVuZGVmaW5lZDtcclxuICBwcml2YXRlIF90YWJTZWxlY3RlZDogTGlzdEl0ZW0gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBfZmlsdGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmhlaWdodCkge1xyXG4gICAgICB0aGlzLmhlaWdodCA9ICdzbWFsbCc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLnBhZ2luYXRpb24gfHwgdGhpcy52aXJ0dWFsUGFnaW5hdGlvbikge1xyXG4gICAgICB0aGlzLmZpbHRlcnNDb21wb25lbnQ/LnNlYXJjaCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9maWx0ZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIGdldENvbFN0eWxlKGNvbDogVGFibGVDb2x1bW4pIHtcclxuICAgIHJldHVybiB7ICdtaW4td2lkdGgnOiBjb2wud2lkdGggfTtcclxuICB9XHJcblxyXG4gIGxhenlMb2FkZWQocGFyYW1zOiB7IGZpbHRlcjogYm9vbGVhbjsgZGF0YTogYW55IH0gPSB7IGZpbHRlcjogZmFsc2UsIGRhdGE6IHsgc3RhcnQ6IDAsIHJvd3M6IDEwIH0gfSkge1xyXG4gICAgaWYgKCFwYXJhbXMuZmlsdGVyKSB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmNvbHVtbnMubWFwKChjb2wpID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZGF0YTogY29sLmZpZWxkLFxyXG4gICAgICAgICAgbmFtZTogYCR7Y29sLmZpZWxkLnN1YnN0cmluZygwLCAxKS50b1VwcGVyQ2FzZSgpfSR7Y29sLmZpZWxkLnN1YnN0cmluZygxLCBjb2wuZmllbGQubGVuZ3RoKX1gLFxyXG4gICAgICAgICAgb3JkZXJhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgc2VhcmNoOiB7IHZhbHVlOiAnJywgcmVnZXg6IGZhbHNlIH0sXHJcbiAgICAgICAgICBzZWFyY2hhYmxlOiB0cnVlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodGhpcy5oYXNBY3Rpb25zKSB7XHJcbiAgICAgICAgY29sdW1ucy51bnNoaWZ0KHtcclxuICAgICAgICAgIGRhdGE6ICdhY3RpdmUnLFxyXG4gICAgICAgICAgbmFtZTogJ0FjdGl2ZScsXHJcbiAgICAgICAgICBvcmRlcmFibGU6IHRydWUsXHJcbiAgICAgICAgICBzZWFyY2g6IHsgdmFsdWU6ICcnLCByZWdleDogZmFsc2UgfSxcclxuICAgICAgICAgIHNlYXJjaGFibGU6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fbGFzdExhenlMb2FkRXZlbnQgPSB7XHJcbiAgICAgICAgLi4uKHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50IHx8ICh7fSBhcyBhbnkpKSxcclxuICAgICAgICBzdGFydDogcGFyYW1zLmRhdGEuZmlyc3QsXHJcbiAgICAgICAgbGVuZ3RoOiBwYXJhbXMuZGF0YS5yb3dzLFxyXG4gICAgICAgIGRyYXc6IHRoaXMuX2RyYXcrKyxcclxuICAgICAgICBvcmRlcjogcGFyYW1zLmRhdGEuc29ydEZpZWxkXHJcbiAgICAgICAgICA/IFtcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW46XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY29sdW1ucy5maW5kSW5kZXgoKGNvbCkgPT4gY29sLmZpZWxkID09PSBwYXJhbXMuZGF0YS5zb3J0RmllbGQpICsgKHRoaXMuaGFzQWN0aW9ucyA/IDEgOiAwKSxcclxuICAgICAgICAgICAgICAgIGRpcjogcGFyYW1zLmRhdGEuc29ydE9yZGVyID4gMCA/ICdhc2MnIDogJ2Rlc2MnLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgIDogW3sgY29sdW1uOiAwLCBkaXI6ICdkZXNjJyB9XSxcclxuICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fbGFzdExhenlMb2FkRXZlbnQgPSB7XHJcbiAgICAgICAgLi4udGhpcy5fbGFzdExhenlMb2FkRXZlbnQsXHJcbiAgICAgICAgLi4ucGFyYW1zLmRhdGEsXHJcbiAgICAgICAgc3RhcnQ6IDAsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICh0aGlzLl90YWJTZWxlY3RlZCkge1xyXG4gICAgICAgIHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50ID0ge1xyXG4gICAgICAgICAgLi4uKHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50IHx8ICh7fSBhcyBhbnkpKSxcclxuICAgICAgICAgIC4uLnsgU3RhdHVzOiB0aGlzLl90YWJTZWxlY3RlZC5jb2RlIH0sXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9maXJzdExhenlMb2FkZWREb25lKSB7XHJcbiAgICAgIHRoaXMub25MYXp5TG9hZC5lbWl0KHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50KTtcclxuICAgIH1cclxuICAgIHRoaXMuX2ZpcnN0TGF6eUxvYWRlZERvbmUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2VsbENvbnRlbnQoaXRlbTogYW55LCBjb2w6IFRhYmxlQ29sdW1uKSB7XHJcbiAgICBsZXQgY29udGVudCA9IGA8c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+JHtjb2wuaGVhZGVyfTwvc3Bhbj48c3BhbiBjbGFzcz1cInctMTAwXCI+YDtcclxuICAgIGlmICghY29sLnR5cGUgfHwgY29sLnR5cGUgPT09IFRhYmxlQ29sdW1uVHlwZS5URVhUKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gaXRlbVtjb2wuZmllbGRdIHx8ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLkNVU1RPTV9TVFlMRSkge1xyXG4gICAgICBjb250ZW50ICs9IGA8c3BhbiBjbGFzcz1cIiR7Y29sLnRleHRGaWVsZENsYXNzID8gaXRlbVtjb2wudGV4dEZpZWxkQ2xhc3NdIDogJyd9XCI+JHtpdGVtW2NvbC5maWVsZCB8fCAnJ119PC9zcGFuPmA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuQk9PTEVBTikge1xyXG4gICAgICBjb250ZW50ICs9IGA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJlZFwiPjxpIGNsYXNzPVwiIHN0YXR1cy10YWJsZS1maWVsZCBmYXMgZmEtJHtcclxuICAgICAgICBpdGVtW2NvbC5maWVsZF0gPyAnY2hlY2sgYm9vbGVhbi12YWx1ZS1wb3NpdGl2ZScgOiAndGltZXMgYm9vbGVhbi12YWx1ZS1uZWdhdGl2ZSdcclxuICAgICAgfVwiPjwvaT48L2Rpdj5gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLkVOVU0gJiYgY29sLmdldEVudW1UcmFuc2xhdGVkKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gY29sLmdldEVudW1UcmFuc2xhdGVkKGl0ZW1bY29sLmZpZWxkXSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuREFURVRJTUUgJiYgaXRlbVtjb2wuZmllbGRdKSB7XHJcbiAgICAgIGNvbnN0IGRhdGVUaW1lID1cclxuICAgICAgICBpdGVtW2NvbC5maWVsZF0gaW5zdGFuY2VvZiBEYXRlID8gRGF0ZVRpbWUuZnJvbUpTRGF0ZShpdGVtW2NvbC5maWVsZF0pIDogRGF0ZVRpbWUuZnJvbUlTTyhpdGVtW2NvbC5maWVsZF0pO1xyXG4gICAgICBjb250ZW50ICs9IGRhdGVUaW1lLnRvRm9ybWF0KCdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuU1RBVFVTX0JBREdFKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gYDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlcmVkXCI+PGkgY2xhc3M9XCJmYXMgZmEtY2lyY2xlIHN0YXR1cy10YWJsZS1maWVsZCAke3RoaXMuZ2V0U3RhdHVzQ29sb3IoXHJcbiAgICAgICAgaXRlbVtjb2wuZmllbGRdXHJcbiAgICAgICl9XCI+PC9pPjwvZGl2PmA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuQUNUSVZFX0JPT0xFQU5fQkFER0UpIHtcclxuICAgICAgY29udGVudCArPSBgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyZWRcIj48aSBjbGFzcz1cImZhcyBmYS1jaXJjbGUgc3RhdHVzLXRhYmxlLWZpZWxkICR7dGhpcy5nZXRBY3RpdmVTdGF0dXNDb2xvcihcclxuICAgICAgICBpdGVtW2NvbC5maWVsZF1cclxuICAgICAgKX1cIj48L2k+PC9kaXY+YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sdW1uVHlwZS5CVVRUT04pIHtcclxuICAgICAgY29udGVudCArPSBgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyZWRcIj48aSBjbGFzcz1cImZhcyAke1xyXG4gICAgICAgIGNvbC5pY29uIHx8ICdmYS1jaXJjbGUnXHJcbiAgICAgIH0gc3RhdHVzLXRhYmxlLWZpZWxkIHRhYmxlLWJ1dHRvblwiPjwvaT48L2Rpdj5gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLk1BU0spIHtcclxuICAgICAgY29udGVudCArPSBNYXNrVXRpbC5kb01hc2tTdHJpbmcoaXRlbVtjb2wuZmllbGRdIHx8ICcnLCBjb2wubWFzayk7XHJcbiAgICB9XHJcblxyXG4gICAgY29udGVudCArPSBgPC9zcGFuPmA7XHJcbiAgICByZXR1cm4gY29udGVudDtcclxuICB9XHJcblxyXG4gIG9uVGFiQ2hhbmdlKCRldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl90YWJTZWxlY3RlZCA9IHRoaXMudGFic1skZXZlbnQuaW5kZXhdO1xyXG4gICAgdGhpcy5sYXp5TG9hZGVkKHsgZmlsdGVyOiB0cnVlLCBkYXRhOiB7fSB9KTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZVRvRmlsdGVyQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuX2ZpbHRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fZmlsdGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5maWx0ZXJzQ29tcG9uZW50Py5mb3JtR3JvdXAuY29udHJvbHMgfHwge30pLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICB0aGlzLl9maWx0ZXJTdWJzY3JpcHRpb24uYWRkKFxyXG4gICAgICAgIHRoaXMuZmlsdGVyc0NvbXBvbmVudD8uZm9ybUdyb3VwXHJcbiAgICAgICAgICAuZ2V0KGtleSlcclxuICAgICAgICAgID8udmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlZC5lbWl0KHsgZmllbGQ6IGtleSwgdmFsdWUgfSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlZC5lbWl0KHsgZmllbGQ6IGtleSwgdmFsdWU6IHRoaXMuZmlsdGVyc0NvbXBvbmVudD8uZm9ybUdyb3VwLmdldChrZXkpPy52YWx1ZSB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpc3RIYXNBY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YS5zb21lKChpdGVtKSA9PiBpdGVtLmFjdGlvbnM/Lmxlbmd0aCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFN0YXR1c0NvbG9yKHN0YXR1czogU3RhdHVzKSB7XHJcbiAgICBzd2l0Y2ggKHN0YXR1cykge1xyXG4gICAgICBjYXNlIFN0YXR1cy5QRU5ESU5HOlxyXG4gICAgICAgIHJldHVybiAnd2FybmluZyc7XHJcbiAgICAgIGNhc2UgU3RhdHVzLkFQUFJPVkVEOlxyXG4gICAgICAgIHJldHVybiAnc3VjY2Vzcyc7XHJcbiAgICAgIGNhc2UgU3RhdHVzLlJFSkVDVEVEOlxyXG4gICAgICAgIHJldHVybiAnZXJyb3InO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRBY3RpdmVTdGF0dXNDb2xvcihhY3RpdmU6IGJvb2xlYW4pIHtcclxuICAgIHJldHVybiBhY3RpdmUgPyAnc3VjY2VzcycgOiAnZXJyb3InO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZVNlbGVjdGVkSXRlbXModmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5vblNlbGVjdGVkUm93cy5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNIdG1sQ2VsbChjb2w6IFRhYmxlQ29sdW1uKSB7XHJcbiAgICBpZiAoIWNvbC50eXBlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICFbVGFibGVDb2x1bW5UeXBlLlRFWFRfQkFER0VdLmluY2x1ZGVzKGNvbC50eXBlKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICA8dmVjdG9yLWZpbHRlcnNcclxuICAgICAgW2ZpZWxkc109XCJmaWx0ZXJzXCJcclxuICAgICAgKG9uU2VhcmNoKT1cImxhenlMb2FkZWQoeyBmaWx0ZXI6IHRydWUsIGRhdGE6ICRldmVudCB9KVwiXHJcbiAgICAgIChmb3JtQnVpbGRlZCk9XCJzdWJzY3JpYmVUb0ZpbHRlckNoYW5nZXMoKVwiXHJcbiAgICA+PC92ZWN0b3ItZmlsdGVycz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidGFibGUtaGVhZGVyLWFjdGlvbnMgZmllbGRcIiAqbmdJZj1cImFkZEl0ZW1MYWJlbCB8fCBleHBvcnRFeGNlbCB8fCBleHBvcnRQREZcIj5cclxuICAgIDxidXR0b24gKm5nSWY9XCJleHBvcnRFeGNlbFwiIChjbGljayk9XCJvbkV4cG9ydEV4Y2VsLmVtaXQoKVwiIGNsYXNzPVwiZXhwb3J0LWJ1dHRvbiBleHBvcnQtZXhjZWxcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtZmlsZVwiPjwvaT48c3Bhbj5FeGNlbDwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAqbmdJZj1cImV4cG9ydFBERlwiIChjbGljayk9XCJvbkV4cG9ydFBERi5lbWl0KClcIiBjbGFzcz1cImV4cG9ydC1idXR0b24gZXhwb3J0LXBkZlwiPlxyXG4gICAgICA8aSBjbGFzcz1cImZhcyBmYS1maWxlXCI+PC9pPjxzcGFuPlBERjwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHZlY3Rvci1idXR0b25cclxuICAgICAgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBjdXN0b21CdXR0b25zXCJcclxuICAgICAgY2xhc3M9XCJhZGQtaXRlbS1idXR0b25cIlxyXG4gICAgICBbbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcclxuICAgICAgKGNsaWNrKT1cImJ1dHRvbi5jbGlja0Z1bmN0aW9uKClcIlxyXG4gICAgICBbcmlnaHRJY29uXT1cImFkZEl0ZW1CdXR0b25QbHVzU2lnbiA/ICdwaSBwaS1wbHVzJyA6ICcnXCJcclxuICAgID48L3ZlY3Rvci1idXR0b24+XHJcbiAgICA8dmVjdG9yLWJ1dHRvblxyXG4gICAgICAqbmdJZj1cImFkZEl0ZW1MYWJlbFwiXHJcbiAgICAgIGNsYXNzPVwiYWRkLWl0ZW0tYnV0dG9uXCJcclxuICAgICAgW2xhYmVsXT1cImFkZEl0ZW1MYWJlbFwiXHJcbiAgICAgIChjbGljayk9XCJvbkFkZC5lbWl0KClcIlxyXG4gICAgICBbcmlnaHRJY29uXT1cImFkZEl0ZW1CdXR0b25QbHVzU2lnbiA/ICdwaSBwaS1wbHVzJyA6ICcnXCJcclxuICAgID48L3ZlY3Rvci1idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgPHZlY3Rvci1wYW5lbCBjbGFzcz1cImRhdGEtdGFibGUtcGFuZWxcIj5cclxuICAgICAgPHAtdGFiVmlldyAob25DaGFuZ2UpPVwib25UYWJDaGFuZ2UoJGV2ZW50KVwiICpuZ0lmPVwidGFicz8ubGVuZ3RoXCI+XHJcbiAgICAgICAgPHAtdGFiUGFuZWwgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCIgW2hlYWRlcl09XCJ0YWIubmFtZVwiPjwvcC10YWJQYW5lbD5cclxuICAgICAgPC9wLXRhYlZpZXc+XHJcbiAgICAgIDxwLXRhYmxlXHJcbiAgICAgICAgY3VycmVudFBhZ2VSZXBvcnRUZW1wbGF0ZT1cIk1vc3RyYW5kbyB7Zmlyc3R9IGF0w6kge2xhc3R9IGRlIHt0b3RhbFJlY29yZHN9IHJlZ2lzdHJvc1wiXHJcbiAgICAgICAgc29ydE1vZGU9XCJzaW5nbGVcIlxyXG4gICAgICAgIFtyb3dzXT1cIjEwXCJcclxuICAgICAgICBbbGF6eV09XCJwYWdpbmF0aW9uICYmICF2aXJ0dWFsUGFnaW5hdGlvblwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImRhdGFcIlxyXG4gICAgICAgIFtwYWdpbmF0b3JdPVwicGFnaW5hdGlvblwiXHJcbiAgICAgICAgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG4gICAgICAgIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJbMTAsIDI1LCA1MCwgMTAwXVwiXHJcbiAgICAgICAgW3Jlc3BvbnNpdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgc2Nyb2xsRGlyZWN0aW9uPVwidmVydGljYWxcIlxyXG4gICAgICAgIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIlxyXG4gICAgICAgIFtzY3JvbGxIZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgICAgICBbYXR0ci5zZWxlY3Rpb25Nb2RlXT1cInNlbGVjdGlvbk1vZGVcIlxyXG4gICAgICAgIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZEl0ZW1zXCJcclxuICAgICAgICAob25Sb3dTZWxlY3QpPVwiY2hhbmdlU2VsZWN0ZWRJdGVtcygkZXZlbnQpXCJcclxuICAgICAgICAob25Sb3dVbnNlbGVjdCk9XCJjaGFuZ2VTZWxlY3RlZEl0ZW1zKCRldmVudClcIlxyXG4gICAgICAgIChvbkxhenlMb2FkKT1cImxhenlMb2FkZWQoeyBmaWx0ZXI6IGZhbHNlLCBkYXRhOiAkZXZlbnQgfSlcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG4gICAgICAgICAgPHRyIGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIm1heC13aWR0aDogM3JlbVwiICpuZ0lmPVwic2VsZWN0aW9uVHlwZSA9PT0gJ2NoZWNrYm94J1wiPlxyXG4gICAgICAgICAgICAgIDxwLXRhYmxlSGVhZGVyQ2hlY2tib3g+PC9wLXRhYmxlSGVhZGVyQ2hlY2tib3g+XHJcbiAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIm1heC13aWR0aDogMTAwcHhcIiBjbGFzcz1cImNlbnRlcmVkXCIgKm5nSWY9XCJoYXNBY3Rpb25zXCI+QcOnw7VlczwvdGg+XHJcbiAgICAgICAgICAgIDx0aFxyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwiZ2V0Q29sU3R5bGUoY29sKVwiXHJcbiAgICAgICAgICAgICAgW3BTb3J0YWJsZUNvbHVtbl09XCJjb2wubm90U29ydGFibGUgPyAnJyA6IGNvbC5maWVsZFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7eyBjb2wuaGVhZGVyIH19IDxwLXNvcnRJY29uICpuZ0lmPVwiIWNvbC5ub3RTb3J0YWJsZVwiIFtmaWVsZF09XCJjb2wuZmllbGRcIj48L3Atc29ydEljb24+XHJcbiAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93RGF0YSBsZXQtaXRlbT5cclxuICAgICAgICAgIDx0ciBjbGFzcz1cInJvd1wiIFtwU2VsZWN0YWJsZVJvd109XCJyb3dEYXRhXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3Rpb25UeXBlID09PSAnY2hlY2tib3gnXCI+XHJcbiAgICAgICAgICAgICAgPHRkIHN0eWxlPVwibWF4LXdpZHRoOiAzcmVtOyBwYWRkaW5nLWxlZnQ6IDEwcHhcIiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxwLXRhYmxlQ2hlY2tib3ggW3ZhbHVlXT1cIml0ZW1cIj48L3AtdGFibGVDaGVja2JveD5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGlvblR5cGUgPT09ICdyYWRpb2J1dHRvbidcIj5cclxuICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJtYXgtd2lkdGg6IDNyZW07IHBhZGRpbmctbGVmdDogMTBweFwiIGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHAtdGFibGVSYWRpb0J1dHRvbiBbdmFsdWVdPVwiaXRlbVwiPjwvcC10YWJsZVJhZGlvQnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8dGQgKm5nSWY9XCJoYXNBY3Rpb25zXCIgc3R5bGU9XCJtYXgtd2lkdGg6IDEwMHB4XCIgY2xhc3M9XCJjZW50ZXJlZFwiPlxyXG4gICAgICAgICAgICAgIDxwLW1lbnUgI21lbnUgW21vZGVsXT1cIml0ZW0uYWN0aW9uc1wiIFtwb3B1cF09XCJ0cnVlXCIgYXBwZW5kVG89XCJib2R5XCI+PC9wLW1lbnU+XHJcbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJhY3Rpb25zLW1lbnUtYnV0dG9uIGZhcyBmYS1jb2dcIiAoY2xpY2spPVwibWVudS50b2dnbGUoJGV2ZW50KVwiPjwvaT5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICAgICAgICA8dGRcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNIdG1sQ2VsbChjb2wpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2VsbFwiXHJcbiAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImdldENlbGxDb250ZW50KGl0ZW0sIGNvbClcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbCAmJiBjb2wuY2xpY2tGdW5jdGlvbiAmJiBjb2wuY2xpY2tGdW5jdGlvbihpdGVtKVwiXHJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRDb2xTdHlsZShjb2wpXCJcclxuICAgICAgICAgICAgICA+PC90ZD5cclxuICAgICAgICAgICAgICA8dGRcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIWlzSHRtbENlbGwoY29sKVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNlbGxcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbCAmJiBjb2wuY2xpY2tGdW5jdGlvbiAmJiBjb2wuY2xpY2tGdW5jdGlvbihpdGVtKVwiXHJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRDb2xTdHlsZShjb2wpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dmVjdG9yLWJhZGdlXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29sLnR5cGUgPT09ICdURVhUX0JBREdFJyAmJiAhIWNvbC5nZXRTdGF0dXNcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiaXRlbVtjb2wuZmllbGRdXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29sLmdldFN0YXR1cyhpdGVtW2NvbC5maWVsZF0pXCJcclxuICAgICAgICAgICAgICAgID48L3ZlY3Rvci1iYWRnZT5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCI+XHJcbiAgICAgICAgICA8dHIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPHRkIGNsYXNzPVwibm8tcmVzdWx0c1wiIFthdHRyLmNvbHNwYW5dPVwiY29sdW1ucy5sZW5ndGggKyAxXCI+TmVuaHVtIHJlc3VsdGFkbyBlbmNvbnRyYWRvPC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwicGFnaW5hdG9ycmlnaHRcIj4gPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWl0ZW0gcFRlbXBsYXRlPVwicGFnaW5hdG9yZHJvcGRvd25pdGVtXCI+IHt7IGl0ZW0udmFsdWUgfX0gPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9wLXRhYmxlPlxyXG4gICAgPC92ZWN0b3ItcGFuZWw+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2ZpZWxkcy9kYXRhLXRhYmxlL2RhdGEtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWVsZHMvZGF0YS10YWJsZS9kYXRhLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBZ0MsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUF1QyxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFlLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7Ozs7O0FBTzdFLE1BQU0sT0FBTyxrQkFBa0I7SUF1RzdCO1FBckdPLFlBQU8sR0FBa0IsRUFBRSxDQUFDO1FBRTVCLFNBQUksR0FBVSxFQUFFLENBQUM7UUFFakIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUVqQixZQUFPLEdBQWtC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RSxtQkFBbUI7MEVBTXRCLE9BQU87c0JBRGIsS0FBSztnQkFHQyxJQUFJO3NCQURWLEtBQUs7Z0JBR0MsV0FBVztzQkFEakIsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSztnQkFHQyxPQUFPO3NCQURiLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSztnQkFHQyxVQUFVO3NCQURoQixLQUFLO2dCQUdDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFHSyxJQUFJO3NCQURkLEtBQUs7Z0JBTUMsYUFBYTtzQkFEbkIsS0FBSztnQkFHQyxxQkFBcUI7c0JBRDNCLEtBQUs7Z0JBR0MsVUFBVTtzQkFEaEIsS0FBSztnQkFHSyxhQUFhO3NCQUR2QixLQUFLO2dCQWVDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBR0ssTUFBTTtzQkFEaEIsS0FBSztnQkFvQkMsVUFBVTtzQkFEaEIsTUFBTTtnQkFHQSxRQUFRO3NCQURkLE1BQU07Z0JBR0EsS0FBSztzQkFEWCxNQUFNO2dCQUdBLGFBQWE7c0JBRG5CLE1BQU07Z0JBR0EsV0FBVztzQkFEakIsTUFBTTtnQkFHQSxjQUFjO3NCQURwQixNQUFNO2dCQUdBLGVBQWU7c0JBRHJCLE1BQU07Z0JBR0EsZ0JBQWdCO3NCQUR0QixTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBGaWx0ZXJDaGFuZ2VkRXZlbnQsIExpc3RJdGVtLCBTdGF0dXMgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBEYXRhVGFibGVMYXp5TG9hZEV2ZW50LCBUYWJsZUNvbHVtbiwgVGFibGVDb2x1bW5UeXBlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2RhdGEtdGFibGUubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXNrVXRpbCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgRmlsdGVyRmllbGQsIEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuLi9maWx0ZXJzL2ZpbHRlcnMuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmVjdG9yLWRhdGEtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY29sdW1uczogVGFibGVDb2x1bW5bXSA9IFtdO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRhdGE6IGFueVtdID0gW107XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZXhwb3J0RXhjZWwgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBleHBvcnRQREYgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0b3RhbFJlY29yZHMgPSAwO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGZpbHRlcnM6IEZpbHRlckZpZWxkW10gPSBbXTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhZGRJdGVtTGFiZWwgPSAnJztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwYWdpbmF0aW9uID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2aXJ0dWFsUGFnaW5hdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0YWJzKF90YWJzOiBMaXN0SXRlbVtdKSB7XHJcbiAgICB0aGlzLl90YWJzID0gX3RhYnM7XHJcbiAgICB0aGlzLl90YWJTZWxlY3RlZCA9IF90YWJzWzBdO1xyXG4gIH1cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjdXN0b21CdXR0b25zOiB7IGxhYmVsOiBzdHJpbmc7IGNsaWNrRnVuY3Rpb246IEZ1bmN0aW9uIH1bXSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhZGRJdGVtQnV0dG9uUGx1c1NpZ24gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBoYXNBY3Rpb25zOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgc2VsZWN0aW9uTW9kZShfc2VsZWN0aW9uTW9kZSkge1xyXG4gICAgc3dpdGNoIChfc2VsZWN0aW9uTW9kZSkge1xyXG4gICAgICBjYXNlICdzaW5nbGUnOlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSAnc2luZ2xlJztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbXVsdGlwbGUnOlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSAnbXVsdGlwbGUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGUgPSBudWxsO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZWxlY3Rpb25UeXBlOiAnY2hlY2tib3gnIHwgJ3JhZGlvYnV0dG9uJyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBoZWlnaHQoX2hlaWdodDogc3RyaW5nKSB7XHJcbiAgICBzd2l0Y2ggKF9oZWlnaHQpIHtcclxuICAgICAgY2FzZSAnc21hbGwnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICczMDBweCc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ21lZGl1bSc6XHJcbiAgICAgICAgdGhpcy5faGVpZ2h0ID0gJzUwMHB4JztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbGFyZ2UnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICc3MDBweCc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2Z1bGwnOlxyXG4gICAgICAgIHRoaXMuX2hlaWdodCA9ICdmbGV4JztcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLl9oZWlnaHQgPSAnMzAwcHgnO1xyXG4gICAgfVxyXG4gIH1cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25MYXp5TG9hZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0YVRhYmxlTGF6eUxvYWRFdmVudD4oKTtcclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25GaWx0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb25BZGQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIG9uRXhwb3J0RXhjZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIG9uRXhwb3J0UERGID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvblNlbGVjdGVkUm93cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvbkZpbHRlckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbHRlckNoYW5nZWRFdmVudD4oKTtcclxuICBAVmlld0NoaWxkKEZpbHRlcnNDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXHJcbiAgcHVibGljIGZpbHRlcnNDb21wb25lbnQ6IEZpbHRlcnNDb21wb25lbnQgfCB1bmRlZmluZWQ7XHJcblxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW1zOiBhbnkgPSBbXTtcclxuXHJcbiAgZ2V0IHRhYnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFicztcclxuICB9XHJcbiAgZ2V0IGhlaWdodCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9oZWlnaHQ7XHJcbiAgfVxyXG4gIGdldCBzZWxlY3Rpb25Nb2RlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGlvbk1vZGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZWxlY3Rpb25Nb2RlOiAnc2luZ2xlJyB8ICdtdWx0aXBsZScgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIF9oZWlnaHQ6IHN0cmluZyA9ICdzbWFsbCc7XHJcbiAgcHJpdmF0ZSBfdGFiczogTGlzdEl0ZW1bXSA9IFtdO1xyXG4gIHByaXZhdGUgX2RyYXcgPSAxO1xyXG4gIHByaXZhdGUgX2ZpcnN0TGF6eUxvYWRlZERvbmUgPSBmYWxzZTtcclxuICBwcml2YXRlIF9sYXN0TGF6eUxvYWRFdmVudDogRGF0YVRhYmxlTGF6eUxvYWRFdmVudCB8IHVuZGVmaW5lZDtcclxuICBwcml2YXRlIF90YWJTZWxlY3RlZDogTGlzdEl0ZW0gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBfZmlsdGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmhlaWdodCkge1xyXG4gICAgICB0aGlzLmhlaWdodCA9ICdzbWFsbCc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLnBhZ2luYXRpb24gfHwgdGhpcy52aXJ0dWFsUGFnaW5hdGlvbikge1xyXG4gICAgICB0aGlzLmZpbHRlcnNDb21wb25lbnQ/LnNlYXJjaCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9maWx0ZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIGdldENvbFN0eWxlKGNvbDogVGFibGVDb2x1bW4pIHtcclxuICAgIHJldHVybiB7ICdtaW4td2lkdGgnOiBjb2wud2lkdGggfTtcclxuICB9XHJcblxyXG4gIGxhenlMb2FkZWQocGFyYW1zOiB7IGZpbHRlcjogYm9vbGVhbjsgZGF0YTogYW55IH0gPSB7IGZpbHRlcjogZmFsc2UsIGRhdGE6IHsgc3RhcnQ6IDAsIHJvd3M6IDEwIH0gfSkge1xyXG4gICAgaWYgKCFwYXJhbXMuZmlsdGVyKSB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmNvbHVtbnMubWFwKChjb2wpID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZGF0YTogY29sLmZpZWxkLFxyXG4gICAgICAgICAgbmFtZTogYCR7Y29sLmZpZWxkLnN1YnN0cmluZygwLCAxKS50b1VwcGVyQ2FzZSgpfSR7Y29sLmZpZWxkLnN1YnN0cmluZygxLCBjb2wuZmllbGQubGVuZ3RoKX1gLFxyXG4gICAgICAgICAgb3JkZXJhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgc2VhcmNoOiB7IHZhbHVlOiAnJywgcmVnZXg6IGZhbHNlIH0sXHJcbiAgICAgICAgICBzZWFyY2hhYmxlOiB0cnVlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodGhpcy5oYXNBY3Rpb25zKSB7XHJcbiAgICAgICAgY29sdW1ucy51bnNoaWZ0KHtcclxuICAgICAgICAgIGRhdGE6ICdhY3RpdmUnLFxyXG4gICAgICAgICAgbmFtZTogJ0FjdGl2ZScsXHJcbiAgICAgICAgICBvcmRlcmFibGU6IHRydWUsXHJcbiAgICAgICAgICBzZWFyY2g6IHsgdmFsdWU6ICcnLCByZWdleDogZmFsc2UgfSxcclxuICAgICAgICAgIHNlYXJjaGFibGU6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fbGFzdExhenlMb2FkRXZlbnQgPSB7XHJcbiAgICAgICAgLi4uKHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50IHx8ICh7fSBhcyBhbnkpKSxcclxuICAgICAgICBzdGFydDogcGFyYW1zLmRhdGEuZmlyc3QsXHJcbiAgICAgICAgbGVuZ3RoOiBwYXJhbXMuZGF0YS5yb3dzLFxyXG4gICAgICAgIGRyYXc6IHRoaXMuX2RyYXcrKyxcclxuICAgICAgICBvcmRlcjogcGFyYW1zLmRhdGEuc29ydEZpZWxkXHJcbiAgICAgICAgICA/IFtcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW46XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuY29sdW1ucy5maW5kSW5kZXgoKGNvbCkgPT4gY29sLmZpZWxkID09PSBwYXJhbXMuZGF0YS5zb3J0RmllbGQpICsgKHRoaXMuaGFzQWN0aW9ucyA/IDEgOiAwKSxcclxuICAgICAgICAgICAgICAgIGRpcjogcGFyYW1zLmRhdGEuc29ydE9yZGVyID4gMCA/ICdhc2MnIDogJ2Rlc2MnLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgIDogW3sgY29sdW1uOiAwLCBkaXI6ICdkZXNjJyB9XSxcclxuICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fbGFzdExhenlMb2FkRXZlbnQgPSB7XHJcbiAgICAgICAgLi4udGhpcy5fbGFzdExhenlMb2FkRXZlbnQsXHJcbiAgICAgICAgLi4ucGFyYW1zLmRhdGEsXHJcbiAgICAgICAgc3RhcnQ6IDAsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICh0aGlzLl90YWJTZWxlY3RlZCkge1xyXG4gICAgICAgIHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50ID0ge1xyXG4gICAgICAgICAgLi4uKHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50IHx8ICh7fSBhcyBhbnkpKSxcclxuICAgICAgICAgIC4uLnsgU3RhdHVzOiB0aGlzLl90YWJTZWxlY3RlZC5jb2RlIH0sXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9maXJzdExhenlMb2FkZWREb25lKSB7XHJcbiAgICAgIHRoaXMub25MYXp5TG9hZC5lbWl0KHRoaXMuX2xhc3RMYXp5TG9hZEV2ZW50KTtcclxuICAgIH1cclxuICAgIHRoaXMuX2ZpcnN0TGF6eUxvYWRlZERvbmUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2VsbENvbnRlbnQoaXRlbTogYW55LCBjb2w6IFRhYmxlQ29sdW1uKSB7XHJcbiAgICBsZXQgY29udGVudCA9IGA8c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+JHtjb2wuaGVhZGVyfTwvc3Bhbj48c3BhbiBjbGFzcz1cInctMTAwXCI+YDtcclxuICAgIGlmICghY29sLnR5cGUgfHwgY29sLnR5cGUgPT09IFRhYmxlQ29sdW1uVHlwZS5URVhUKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gaXRlbVtjb2wuZmllbGRdIHx8ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLkNVU1RPTV9TVFlMRSkge1xyXG4gICAgICBjb250ZW50ICs9IGA8c3BhbiBjbGFzcz1cIiR7Y29sLnRleHRGaWVsZENsYXNzID8gaXRlbVtjb2wudGV4dEZpZWxkQ2xhc3NdIDogJyd9XCI+JHtpdGVtW2NvbC5maWVsZCB8fCAnJ119PC9zcGFuPmA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuQk9PTEVBTikge1xyXG4gICAgICBjb250ZW50ICs9IGA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJlZFwiPjxpIGNsYXNzPVwiIHN0YXR1cy10YWJsZS1maWVsZCBmYXMgZmEtJHtcclxuICAgICAgICBpdGVtW2NvbC5maWVsZF0gPyAnY2hlY2sgYm9vbGVhbi12YWx1ZS1wb3NpdGl2ZScgOiAndGltZXMgYm9vbGVhbi12YWx1ZS1uZWdhdGl2ZSdcclxuICAgICAgfVwiPjwvaT48L2Rpdj5gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLkVOVU0gJiYgY29sLmdldEVudW1UcmFuc2xhdGVkKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gY29sLmdldEVudW1UcmFuc2xhdGVkKGl0ZW1bY29sLmZpZWxkXSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuREFURVRJTUUgJiYgaXRlbVtjb2wuZmllbGRdKSB7XHJcbiAgICAgIGNvbnN0IGRhdGVUaW1lID1cclxuICAgICAgICBpdGVtW2NvbC5maWVsZF0gaW5zdGFuY2VvZiBEYXRlID8gRGF0ZVRpbWUuZnJvbUpTRGF0ZShpdGVtW2NvbC5maWVsZF0pIDogRGF0ZVRpbWUuZnJvbUlTTyhpdGVtW2NvbC5maWVsZF0pO1xyXG4gICAgICBjb250ZW50ICs9IGRhdGVUaW1lLnRvRm9ybWF0KCdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuU1RBVFVTX0JBREdFKSB7XHJcbiAgICAgIGNvbnRlbnQgKz0gYDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlcmVkXCI+PGkgY2xhc3M9XCJmYXMgZmEtY2lyY2xlIHN0YXR1cy10YWJsZS1maWVsZCAke3RoaXMuZ2V0U3RhdHVzQ29sb3IoXHJcbiAgICAgICAgaXRlbVtjb2wuZmllbGRdXHJcbiAgICAgICl9XCI+PC9pPjwvZGl2PmA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbC50eXBlID09PSBUYWJsZUNvbHVtblR5cGUuQUNUSVZFX0JPT0xFQU5fQkFER0UpIHtcclxuICAgICAgY29udGVudCArPSBgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyZWRcIj48aSBjbGFzcz1cImZhcyBmYS1jaXJjbGUgc3RhdHVzLXRhYmxlLWZpZWxkICR7dGhpcy5nZXRBY3RpdmVTdGF0dXNDb2xvcihcclxuICAgICAgICBpdGVtW2NvbC5maWVsZF1cclxuICAgICAgKX1cIj48L2k+PC9kaXY+YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29sLnR5cGUgPT09IFRhYmxlQ29sdW1uVHlwZS5CVVRUT04pIHtcclxuICAgICAgY29udGVudCArPSBgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyZWRcIj48aSBjbGFzcz1cImZhcyAke1xyXG4gICAgICAgIGNvbC5pY29uIHx8ICdmYS1jaXJjbGUnXHJcbiAgICAgIH0gc3RhdHVzLXRhYmxlLWZpZWxkIHRhYmxlLWJ1dHRvblwiPjwvaT48L2Rpdj5gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2wudHlwZSA9PT0gVGFibGVDb2x1bW5UeXBlLk1BU0spIHtcclxuICAgICAgY29udGVudCArPSBNYXNrVXRpbC5kb01hc2tTdHJpbmcoaXRlbVtjb2wuZmllbGRdIHx8ICcnLCBjb2wubWFzayk7XHJcbiAgICB9XHJcblxyXG4gICAgY29udGVudCArPSBgPC9zcGFuPmA7XHJcbiAgICByZXR1cm4gY29udGVudDtcclxuICB9XHJcblxyXG4gIG9uVGFiQ2hhbmdlKCRldmVudDogYW55KSB7XHJcbiAgICB0aGlzLl90YWJTZWxlY3RlZCA9IHRoaXMudGFic1skZXZlbnQuaW5kZXhdO1xyXG4gICAgdGhpcy5sYXp5TG9hZGVkKHsgZmlsdGVyOiB0cnVlLCBkYXRhOiB7fSB9KTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZVRvRmlsdGVyQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuX2ZpbHRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fZmlsdGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5maWx0ZXJzQ29tcG9uZW50Py5mb3JtR3JvdXAuY29udHJvbHMgfHwge30pLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICB0aGlzLl9maWx0ZXJTdWJzY3JpcHRpb24uYWRkKFxyXG4gICAgICAgIHRoaXMuZmlsdGVyc0NvbXBvbmVudD8uZm9ybUdyb3VwXHJcbiAgICAgICAgICAuZ2V0KGtleSlcclxuICAgICAgICAgID8udmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlZC5lbWl0KHsgZmllbGQ6IGtleSwgdmFsdWUgfSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlZC5lbWl0KHsgZmllbGQ6IGtleSwgdmFsdWU6IHRoaXMuZmlsdGVyc0NvbXBvbmVudD8uZm9ybUdyb3VwLmdldChrZXkpPy52YWx1ZSB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpc3RIYXNBY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YS5zb21lKChpdGVtKSA9PiBpdGVtLmFjdGlvbnM/Lmxlbmd0aCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFN0YXR1c0NvbG9yKHN0YXR1czogU3RhdHVzKSB7XHJcbiAgICBzd2l0Y2ggKHN0YXR1cykge1xyXG4gICAgICBjYXNlIFN0YXR1cy5QRU5ESU5HOlxyXG4gICAgICAgIHJldHVybiAnd2FybmluZyc7XHJcbiAgICAgIGNhc2UgU3RhdHVzLkFQUFJPVkVEOlxyXG4gICAgICAgIHJldHVybiAnc3VjY2Vzcyc7XHJcbiAgICAgIGNhc2UgU3RhdHVzLlJFSkVDVEVEOlxyXG4gICAgICAgIHJldHVybiAnZXJyb3InO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRBY3RpdmVTdGF0dXNDb2xvcihhY3RpdmU6IGJvb2xlYW4pIHtcclxuICAgIHJldHVybiBhY3RpdmUgPyAnc3VjY2VzcycgOiAnZXJyb3InO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZVNlbGVjdGVkSXRlbXModmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5vblNlbGVjdGVkUm93cy5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNIdG1sQ2VsbChjb2w6IFRhYmxlQ29sdW1uKSB7XHJcbiAgICBpZiAoIWNvbC50eXBlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICFbVGFibGVDb2x1bW5UeXBlLlRFWFRfQkFER0VdLmluY2x1ZGVzKGNvbC50eXBlKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICA8dmVjdG9yLWZpbHRlcnNcclxuICAgICAgW2ZpZWxkc109XCJmaWx0ZXJzXCJcclxuICAgICAgKG9uU2VhcmNoKT1cImxhenlMb2FkZWQoeyBmaWx0ZXI6IHRydWUsIGRhdGE6ICRldmVudCB9KVwiXHJcbiAgICAgIChmb3JtQnVpbGRlZCk9XCJzdWJzY3JpYmVUb0ZpbHRlckNoYW5nZXMoKVwiXHJcbiAgICA+PC92ZWN0b3ItZmlsdGVycz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidGFibGUtaGVhZGVyLWFjdGlvbnMgZmllbGRcIiAqbmdJZj1cImFkZEl0ZW1MYWJlbCB8fCBleHBvcnRFeGNlbCB8fCBleHBvcnRQREZcIj5cclxuICAgIDxidXR0b24gKm5nSWY9XCJleHBvcnRFeGNlbFwiIChjbGljayk9XCJvbkV4cG9ydEV4Y2VsLmVtaXQoKVwiIGNsYXNzPVwiZXhwb3J0LWJ1dHRvbiBleHBvcnQtZXhjZWxcIj5cclxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtZmlsZVwiPjwvaT48c3Bhbj5FeGNlbDwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAqbmdJZj1cImV4cG9ydFBERlwiIChjbGljayk9XCJvbkV4cG9ydFBERi5lbWl0KClcIiBjbGFzcz1cImV4cG9ydC1idXR0b24gZXhwb3J0LXBkZlwiPlxyXG4gICAgICA8aSBjbGFzcz1cImZhcyBmYS1maWxlXCI+PC9pPjxzcGFuPlBERjwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHZlY3Rvci1idXR0b25cclxuICAgICAgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBjdXN0b21CdXR0b25zXCJcclxuICAgICAgY2xhc3M9XCJhZGQtaXRlbS1idXR0b25cIlxyXG4gICAgICBbbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcclxuICAgICAgKGNsaWNrKT1cImJ1dHRvbi5jbGlja0Z1bmN0aW9uKClcIlxyXG4gICAgICBbcmlnaHRJY29uXT1cImFkZEl0ZW1CdXR0b25QbHVzU2lnbiA/ICdwaSBwaS1wbHVzJyA6ICcnXCJcclxuICAgID48L3ZlY3Rvci1idXR0b24+XHJcbiAgICA8dmVjdG9yLWJ1dHRvblxyXG4gICAgICAqbmdJZj1cImFkZEl0ZW1MYWJlbFwiXHJcbiAgICAgIGNsYXNzPVwiYWRkLWl0ZW0tYnV0dG9uXCJcclxuICAgICAgW2xhYmVsXT1cImFkZEl0ZW1MYWJlbFwiXHJcbiAgICAgIChjbGljayk9XCJvbkFkZC5lbWl0KClcIlxyXG4gICAgICBbcmlnaHRJY29uXT1cImFkZEl0ZW1CdXR0b25QbHVzU2lnbiA/ICdwaSBwaS1wbHVzJyA6ICcnXCJcclxuICAgID48L3ZlY3Rvci1idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgPHZlY3Rvci1wYW5lbCBjbGFzcz1cImRhdGEtdGFibGUtcGFuZWxcIj5cclxuICAgICAgPHAtdGFiVmlldyAob25DaGFuZ2UpPVwib25UYWJDaGFuZ2UoJGV2ZW50KVwiICpuZ0lmPVwidGFicz8ubGVuZ3RoXCI+XHJcbiAgICAgICAgPHAtdGFiUGFuZWwgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCIgW2hlYWRlcl09XCJ0YWIubmFtZVwiPjwvcC10YWJQYW5lbD5cclxuICAgICAgPC9wLXRhYlZpZXc+XHJcbiAgICAgIDxwLXRhYmxlXHJcbiAgICAgICAgY3VycmVudFBhZ2VSZXBvcnRUZW1wbGF0ZT1cIk1vc3RyYW5kbyB7Zmlyc3R9IGF0w6kge2xhc3R9IGRlIHt0b3RhbFJlY29yZHN9IHJlZ2lzdHJvc1wiXHJcbiAgICAgICAgc29ydE1vZGU9XCJzaW5nbGVcIlxyXG4gICAgICAgIFtyb3dzXT1cIjEwXCJcclxuICAgICAgICBbbGF6eV09XCJwYWdpbmF0aW9uICYmICF2aXJ0dWFsUGFnaW5hdGlvblwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImRhdGFcIlxyXG4gICAgICAgIFtwYWdpbmF0b3JdPVwicGFnaW5hdGlvblwiXHJcbiAgICAgICAgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG4gICAgICAgIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJbMTAsIDI1LCA1MCwgMTAwXVwiXHJcbiAgICAgICAgW3Jlc3BvbnNpdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Jlc2l6YWJsZUNvbHVtbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Njcm9sbGFibGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgc2Nyb2xsRGlyZWN0aW9uPVwidmVydGljYWxcIlxyXG4gICAgICAgIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIlxyXG4gICAgICAgIFtzY3JvbGxIZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgICAgICBbYXR0ci5zZWxlY3Rpb25Nb2RlXT1cInNlbGVjdGlvbk1vZGVcIlxyXG4gICAgICAgIFsoc2VsZWN0aW9uKV09XCJzZWxlY3RlZEl0ZW1zXCJcclxuICAgICAgICAob25Sb3dTZWxlY3QpPVwiY2hhbmdlU2VsZWN0ZWRJdGVtcygkZXZlbnQpXCJcclxuICAgICAgICAob25IZWFkZXJDaGVja2JveFRvZ2dsZSk9XCJjaGFuZ2VTZWxlY3RlZEl0ZW1zKCRldmVudClcIlxyXG4gICAgICAgIChvblJvd1Vuc2VsZWN0KT1cImNoYW5nZVNlbGVjdGVkSXRlbXMoJGV2ZW50KVwiXHJcbiAgICAgICAgKG9uTGF6eUxvYWQpPVwibGF6eUxvYWRlZCh7IGZpbHRlcjogZmFsc2UsIGRhdGE6ICRldmVudCB9KVwiXHJcbiAgICAgID5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICA8dHIgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgPHRoIHN0eWxlPVwibWF4LXdpZHRoOiAzcmVtXCIgKm5nSWY9XCJzZWxlY3Rpb25UeXBlID09PSAnY2hlY2tib3gnXCI+XHJcbiAgICAgICAgICAgICAgPHAtdGFibGVIZWFkZXJDaGVja2JveD48L3AtdGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgPHRoIHN0eWxlPVwibWF4LXdpZHRoOiAxMDBweFwiIGNsYXNzPVwiY2VudGVyZWRcIiAqbmdJZj1cImhhc0FjdGlvbnNcIj5Bw6fDtWVzPC90aD5cclxuICAgICAgICAgICAgPHRoXHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCJcclxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRDb2xTdHlsZShjb2wpXCJcclxuICAgICAgICAgICAgICBbcFNvcnRhYmxlQ29sdW1uXT1cImNvbC5ub3RTb3J0YWJsZSA/ICcnIDogY29sLmZpZWxkXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHt7IGNvbC5oZWFkZXIgfX0gPHAtc29ydEljb24gKm5nSWY9XCIhY29sLm5vdFNvcnRhYmxlXCIgW2ZpZWxkXT1cImNvbC5maWVsZFwiPjwvcC1zb3J0SWNvbj5cclxuICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb3dEYXRhIGxldC1pdGVtPlxyXG4gICAgICAgICAgPHRyIGNsYXNzPVwicm93XCIgW3BTZWxlY3RhYmxlUm93XT1cInJvd0RhdGFcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGlvblR5cGUgPT09ICdjaGVja2JveCdcIj5cclxuICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJtYXgtd2lkdGg6IDNyZW07IHBhZGRpbmctbGVmdDogMTBweFwiIGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHAtdGFibGVDaGVja2JveCBbdmFsdWVdPVwiaXRlbVwiPjwvcC10YWJsZUNoZWNrYm94PlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0aW9uVHlwZSA9PT0gJ3JhZGlvYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIm1heC13aWR0aDogM3JlbTsgcGFkZGluZy1sZWZ0OiAxMHB4XCIgY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8cC10YWJsZVJhZGlvQnV0dG9uIFt2YWx1ZV09XCJpdGVtXCI+PC9wLXRhYmxlUmFkaW9CdXR0b24+XHJcbiAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDx0ZCAqbmdJZj1cImhhc0FjdGlvbnNcIiBzdHlsZT1cIm1heC13aWR0aDogMTAwcHhcIiBjbGFzcz1cImNlbnRlcmVkXCI+XHJcbiAgICAgICAgICAgICAgPHAtbWVudSAjbWVudSBbbW9kZWxdPVwiaXRlbS5hY3Rpb25zXCIgW3BvcHVwXT1cInRydWVcIiBhcHBlbmRUbz1cImJvZHlcIj48L3AtbWVudT5cclxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImFjdGlvbnMtbWVudS1idXR0b24gZmFzIGZhLWNvZ1wiIChjbGljayk9XCJtZW51LnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG4gICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgIDx0ZFxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpc0h0bWxDZWxsKGNvbClcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjZWxsXCJcclxuICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ2V0Q2VsbENvbnRlbnQoaXRlbSwgY29sKVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29sICYmIGNvbC5jbGlja0Z1bmN0aW9uICYmIGNvbC5jbGlja0Z1bmN0aW9uKGl0ZW0pXCJcclxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldENvbFN0eWxlKGNvbClcIlxyXG4gICAgICAgICAgICAgID48L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZFxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhaXNIdG1sQ2VsbChjb2wpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2VsbFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29sICYmIGNvbC5jbGlja0Z1bmN0aW9uICYmIGNvbC5jbGlja0Z1bmN0aW9uKGl0ZW0pXCJcclxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldENvbFN0eWxlKGNvbClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx2ZWN0b3ItYmFkZ2VcclxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjb2wudHlwZSA9PT0gJ1RFWFRfQkFER0UnICYmICEhY29sLmdldFN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJpdGVtW2NvbC5maWVsZF1cIlxyXG4gICAgICAgICAgICAgICAgICBbdHlwZV09XCJjb2wuZ2V0U3RhdHVzKGl0ZW1bY29sLmZpZWxkXSlcIlxyXG4gICAgICAgICAgICAgICAgPjwvdmVjdG9yLWJhZGdlPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cclxuICAgICAgICAgIDx0ciBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJuby1yZXN1bHRzXCIgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aCArIDFcIj5OZW5odW0gcmVzdWx0YWRvIGVuY29udHJhZG88L3RkPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJwYWdpbmF0b3JyaWdodFwiPiA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtaXRlbSBwVGVtcGxhdGU9XCJwYWdpbmF0b3Jkcm9wZG93bml0ZW1cIj4ge3sgaXRlbS52YWx1ZSB9fSA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L3AtdGFibGU+XHJcbiAgICA8L3ZlY3Rvci1wYW5lbD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -124,5 +124,12 @@ export var ProfileModuleActionType;
124
124
  ProfileModuleActionType["EDIT_LOCATION_SHIPPER"] = "Edit LocationShipper";
125
125
  ProfileModuleActionType["SHOW_LOCATION_SHIPPER"] = "Show LocationShipper";
126
126
  ProfileModuleActionType["DELETE_LOCATION_SHIPPER"] = "Delete LocationShipper";
127
+ ProfileModuleActionType["ADD_SCHEDULE"] = "Add Schedule";
128
+ ProfileModuleActionType["EDIT_SCHEDULE"] = "Edit Schedule";
129
+ ProfileModuleActionType["SHOW_SCHEDULE"] = "Show Schedule";
130
+ ProfileModuleActionType["ADD_VACANCIES_LOGISTIC"] = "Add Vacancies Logistic";
131
+ ProfileModuleActionType["ADD_VACANCIES_COMMERCIAL"] = "Add Vacancies Commercial";
132
+ ProfileModuleActionType["SHOW_VACANCIES_COMPLETE"] = "Show Vacancies Complete";
133
+ ProfileModuleActionType["ADD_SCHEDULE_OFF"] = "Add Schedule Off";
127
134
  })(ProfileModuleActionType || (ProfileModuleActionType = {}));
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9wcm9maWxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCQSxNQUFNLENBQU4sSUFBWSxpQkFHWDtBQUhELFdBQVksaUJBQWlCO0lBQzNCLHFFQUFnRCxDQUFBO0lBQ2hELG1EQUE4QixDQUFBO0FBQ2hDLENBQUMsRUFIVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBRzVCO0FBRUQsTUFBTSxDQUFOLElBQVksdUJBd0hYO0FBeEhELFdBQVksdUJBQXVCO0lBQ2pDLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLG9EQUF5QixDQUFBO0lBQ3pCLHNEQUEyQixDQUFBO0lBQzNCLDBEQUErQixDQUFBO0lBQy9CLHNEQUEyQixDQUFBO0lBQzNCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLDBFQUErQyxDQUFBO0lBQy9DLGdEQUFxQixDQUFBO0lBQ3JCLGtEQUF1QixDQUFBO0lBQ3ZCLG9GQUF5RCxDQUFBO0lBQ3pELGtGQUF1RCxDQUFBO0lBQ3ZELG9GQUF5RCxDQUFBO0lBQ3pELDhFQUFtRCxDQUFBO0lBQ25ELDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDBEQUErQixDQUFBO0lBQy9CLDBEQUErQixDQUFBO0lBQy9CLGdFQUFxQyxDQUFBO0lBQ3JDLGtFQUF1QyxDQUFBO0lBQ3ZDLGtFQUF1QyxDQUFBO0lBQ3ZDLHNFQUEyQyxDQUFBO0lBQzNDLDhEQUFtQyxDQUFBO0lBQ25DLDBEQUErQixDQUFBO0lBQy9CLDBEQUErQixDQUFBO0lBQy9CLDhEQUFtQyxDQUFBO0lBQ25DLHdEQUE2QixDQUFBO0lBQzdCLDhDQUFtQixDQUFBO0lBQ25CLGdEQUFxQixDQUFBO0lBQ3JCLG9EQUF5QixDQUFBO0lBQ3pCLGdEQUFxQixDQUFBO0lBQ3JCLDBEQUErQixDQUFBO0lBQy9CLHNEQUEyQixDQUFBO0lBQzNCLGtGQUF1RCxDQUFBO0lBQ3ZELG9GQUF5RCxDQUFBO0lBQ3pELG9GQUF5RCxDQUFBO0lBQ3pELDREQUFpQyxDQUFBO0lBQ2pDLDhEQUFtQyxDQUFBO0lBQ25DLGtFQUF1QyxDQUFBO0lBQ3ZDLGtHQUF1RSxDQUFBO0lBQ3ZFLG9HQUF5RSxDQUFBO0lBQ3pFLG9HQUF5RSxDQUFBO0lBQ3pFLDhEQUFtQyxDQUFBO0lBQ25DLDhEQUFtQyxDQUFBO0lBQ25DLG9HQUF5RSxDQUFBO0lBQ3pFLG9HQUF5RSxDQUFBO0lBQ3pFLG9GQUF5RCxDQUFBO0lBQ3pELHNGQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGdFQUFxQyxDQUFBO0lBQ3JDLDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDhGQUFtRSxDQUFBO0lBQ25FLDRGQUFpRSxDQUFBO0lBQ2pFLDRGQUFpRSxDQUFBO0lBQ2pFLDBGQUErRCxDQUFBO0lBQy9ELDRGQUFpRSxDQUFBO0lBQ2pFLGdHQUFxRSxDQUFBO0lBQ3JFLDBGQUErRCxDQUFBO0lBQy9ELHdGQUE2RCxDQUFBO0lBQzdELDBGQUErRCxDQUFBO0lBQy9ELDhGQUFtRSxDQUFBO0lBQ25FLHdGQUE2RCxDQUFBO0lBQzdELHNGQUEyRCxDQUFBO0lBQzNELHdGQUE2RCxDQUFBO0lBQzdELDRGQUFpRSxDQUFBO0lBQ2pFLDRGQUFpRSxDQUFBO0lBQ2pFLDBGQUErRCxDQUFBO0lBQy9ELDRGQUFpRSxDQUFBO0lBQ2pFLGdHQUFxRSxDQUFBO0lBQ3JFLDhFQUFtRCxDQUFBO0lBQ25ELDRFQUFpRCxDQUFBO0lBQ2pELGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLHdFQUE2QyxDQUFBO0lBQzdDLDhFQUFtRCxDQUFBO0lBQ25ELDRFQUFpRCxDQUFBO0lBQ2pELDhFQUFtRCxDQUFBO0lBQ25ELHNFQUEyQyxDQUFBO0lBQzNDLG9FQUF5QyxDQUFBO0lBQ3pDLHNFQUEyQyxDQUFBO0lBQzNDLDBFQUErQyxDQUFBO0lBQy9DLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLHdFQUE2QyxDQUFBO0lBQzdDLHNFQUEyQyxDQUFBO0lBQzNDLGtHQUF1RSxDQUFBO0lBQ3ZFLHdIQUE2RixDQUFBO0lBQzdGLGtIQUF1RixDQUFBO0lBQ3ZGLGdFQUFxQyxDQUFBO0lBQ3JDLDhEQUFtQyxDQUFBO0lBQ25DLDhEQUFtQyxDQUFBO0lBQ25DLHdEQUE2QixDQUFBO0lBQzdCLGtEQUF1QixDQUFBO0lBQ3ZCLGdEQUFxQixDQUFBO0lBQ3JCLGtEQUF1QixDQUFBO0lBQ3ZCLHNEQUEyQixDQUFBO0lBQzNCLG9EQUF5QixDQUFBO0lBQ3pCLHNEQUEyQixDQUFBO0lBQzNCLHNEQUEyQixDQUFBO0lBQzNCLHVFQUE0QyxDQUFBO0lBQzVDLHlFQUE4QyxDQUFBO0lBQzlDLHlFQUE4QyxDQUFBO0lBQzlDLDZFQUFrRCxDQUFBO0FBQ3BELENBQUMsRUF4SFcsdUJBQXVCLEtBQXZCLHVCQUF1QixRQXdIbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVGFibGVCYXNlSXRlbSB9IGZyb20gJy4vZGF0YS10YWJsZS5tb2RlbCc7XHJcblxyXG5leHBvcnQgdHlwZSBQcm9maWxlID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHByb2ZpbGVUeXBlSWQ6IG51bWJlcjtcclxuICBQcm9maWxlVHlwZU5hbWU6IHN0cmluZztcclxuICBtb2R1bGVzOiBQcm9maWxlTW9kdWxlW107XHJcbn0gJiBEYXRhVGFibGVCYXNlSXRlbTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb2ZpbGVNb2R1bGUgPSB7XHJcbiAgbWVudTogc3RyaW5nO1xyXG4gIGFjdGlvbnM6IFByb2ZpbGVNb2R1bGVBY3Rpb25bXTtcclxufSAmIFByb2ZpbGVNb2R1bGVCYXNlO1xyXG5cclxuZXhwb3J0IHR5cGUgUHJvZmlsZU1vZHVsZUdyb3VwZWRCeU1lbnUgPSB7XHJcbiAgbWVudTogc3RyaW5nO1xyXG4gIG1vZHVsZXM6IFByb2ZpbGVNb2R1bGVbXTtcclxuICBjaGlsZHJlbj86IFByb2ZpbGVNb2R1bGVHcm91cGVkQnlNZW51W107XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBQcm9maWxlTW9kdWxlQWN0aW9uID0ge30gJiBQcm9maWxlTW9kdWxlQmFzZTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb2ZpbGVNb2R1bGVCYXNlID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGlzQXZhaWxhYmxlPzogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBlbnVtIFByb2ZpbGVNb2R1bGVUeXBlIHtcclxuICBPUEVSQVRJT05BTF9FVkFMVUFUSU9OID0gJ09wZXJhdGlvbmFsRXZhbHVhdGlvbicsXHJcbiAgQURNSU5fU1VSVkVZUyA9ICdBZG1pblN1cnZleXMnLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZSB7XHJcbiAgQUREX1ZFSElDTEUgPSAnQWRkIFZlaGljbGUnLFxyXG4gIEVESVRfVkVISUNMRSA9ICdFZGl0IFZlaGljbGUnLFxyXG4gIERFTEVURV9WRUhJQ0xFID0gJ0RlbGV0ZSBWZWhpY2xlJyxcclxuICBTSE9XX1ZFSElDTEUgPSAnU2hvdyBWZWhpY2xlJyxcclxuICBBRERfRFJJVkVSID0gJ0FkZCBEcml2ZXInLFxyXG4gIEVESVRfRFJJVkVSID0gJ0VkaXQgRHJpdmVyJyxcclxuICBERUxFVEVfRFJJVkVSID0gJ0RlbGV0ZSBEcml2ZXInLFxyXG4gIFNIT1dfRFJJVkVSID0gJ1Nob3cgRHJpdmVyJyxcclxuICBBRERfQ0FSUklFUiA9ICdBZGQgQ2FycmllcicsXHJcbiAgRURJVF9DQVJSSUVSID0gJ0VkaXQgQ2FycmllcicsXHJcbiAgREVMRVRFX0NBUlJJRVIgPSAnRGVsZXRlIENhcnJpZXInLFxyXG4gIFNIT1dfQ0FSUklFUiA9ICdTaG93IENhcnJpZXInLFxyXG4gIEFERF9QUk9GSUxFID0gJ0FkZCBQcm9maWxlJyxcclxuICBFRElUX1BST0ZJTEUgPSAnRWRpdCBQcm9maWxlJyxcclxuICBERUxFVEVfUFJPRklMRSA9ICdEZWxldGUgUHJvZmlsZScsXHJcbiAgU0hPV19QUk9GSUxFID0gJ1Nob3cgUHJvZmlsZScsXHJcbiAgRURJVF9CUk9BRENBU1RfVkFMVUVTID0gJ0VkaXQgQnJvYWRjYXN0IFZhbHVlcycsXHJcbiAgQUREX1dBVkUgPSAnQWRkIFdhdmUnLFxyXG4gIEVESVRfV0FWRSA9ICdFZGl0IFdhdmUnLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19WRUhJQ0xFID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBWZWhpY2xlJyxcclxuICBISVNUT1JJQ0FMX0NIQU5HRVNfRFJJVkVSID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBEcml2ZXInLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19DQVJSSUVSID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBDYXJyaWVyJyxcclxuICBISVNUT1JJQ0FMX0NIQU5HRVNfVFJJUCA9ICdIaXN0b3JpY2FsIENoYW5nZXMgVHJpcCcsXHJcbiAgSElTVE9SSUNBTF9DSEFOR0VTX1VTRVIgPSAnSGlzdG9yaWNhbCBDaGFuZ2VzIFVzZXInLFxyXG4gIENBTkNFTF9UUklQUyA9ICdDYW5jZWwgVHJpcHMnLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19MT1RTID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBMb3RzJyxcclxuICBBRERfTE9DQVRJT04gPSAnQWRkIExvY2F0aW9uJyxcclxuICBFRElUX0xPQ0FUSU9OID0gJ0VkaXQgTG9jYXRpb24nLFxyXG4gIFNIT1dfTE9DQVRJT04gPSAnU2hvdyBMb2NhdGlvbicsXHJcbiAgQUREX1JFU1RSSUNUSU9OUyA9ICdBZGQgUmVzdHJpY3Rpb25zJyxcclxuICBFRElUX1JFU1RSSUNUSU9OUyA9ICdFZGl0IFJlc3RyaWN0aW9ucycsXHJcbiAgU0hPV19SRVNUUklDVElPTlMgPSAnU2hvdyBSZXN0cmljdGlvbnMnLFxyXG4gIERFTEVURV9SRVNUUklDVElPTlMgPSAnRGVsZXRlIFJlc3RyaWN0aW9ucycsXHJcbiAgREVMRVRFX0xPQ0FUSU9OID0gJ0RlbGV0ZSBMb2NhdGlvbicsXHJcbiAgU0hPV19NRVNTQUdFUyA9ICdTaG93IE1lc3NhZ2VzJyxcclxuICBFRElUX01FU1NBR0VTID0gJ0VkaXQgTWVzc2FnZXMnLFxyXG4gIERFTEVURV9NRVNTQUdFUyA9ICdEZWxldGUgTWVzc2FnZXMnLFxyXG4gIEFERF9NRVNTQUdFUyA9ICdBZGQgTWVzc2FnZXMnLFxyXG4gIEFERF9MT1QgPSAnQWRkIExvdCcsXHJcbiAgRURJVF9MT1QgPSAnRWRpdCBMb3QnLFxyXG4gIERFTEVURV9MT1QgPSAnRGVsZXRlIExvdCcsXHJcbiAgU0hPV19MT1QgPSAnU2hvdyBMb3QnLFxyXG4gIEFDQ0VQVF9DUkVESVQgPSAnQWNjZXB0IENyZWRpdCcsXHJcbiAgU0hPV19DUkVESVQgPSAnU2hvdyBDcmVkaXQnLFxyXG4gIEFERF9WRUhJQ0xFX0NPTkZJR1VSQVRJT04gPSAnQWRkIFZlaGljbGUgQ29uZmlndXJhdGlvbicsXHJcbiAgRURJVF9WRUhJQ0xFX0NPTkZJR1VSQVRJT04gPSAnRWRpdCBWZWhpY2xlIENvbmZpZ3VyYXRpb24nLFxyXG4gIFNIT1dfVkVISUNMRV9DT05GSUdVUkFUSU9OID0gJ1Nob3cgVmVoaWNsZSBDb25maWd1cmF0aW9uJyxcclxuICBBRERfU0NIRURVTElORyA9ICdBZGQgU2NoZWR1bGluZycsXHJcbiAgRURJVF9TQ0hFRFVMSU5HID0gJ0VkaXQgU2NoZWR1bGluZycsXHJcbiAgREVMRVRFX1NDSEVEVUxJTkcgPSAnRGVsZXRlIFNjaGVkdWxpbmcnLFxyXG4gIEFERF9WRUhJQ0xFX0NPTkZJR1VSQVRJT05fU0hJUFBFUiA9ICdBZGQgVmVoaWNsZSBDb25maWd1cmF0aW9uIFNoaXBwZXInLFxyXG4gIEVESVRfVkVISUNMRV9DT05GSUdVUkFUSU9OX1NISVBQRVIgPSAnRWRpdCBWZWhpY2xlIENvbmZpZ3VyYXRpb24gU2hpcHBlcicsXHJcbiAgU0hPV19WRUhJQ0xFX0NPTkZJR1VSQVRJT05fU0hJUFBFUiA9ICdTaG93IFZlaGljbGUgQ29uZmlndXJhdGlvbiBTaGlwcGVyJyxcclxuICBFRElUX1RSSVBfQlVOR0UgPSAnRWRpdCB0cmlwIEJ1bmdlJyxcclxuICBFRElUX1RSSVBfQ09GQ08gPSAnRWRpdCB0cmlwIENvZmNvJyxcclxuICBTSE9XX01JTklNVU1fVFJBTlNQT1JUX1BSSUNFX1RBQkxFID0gJ1Nob3cgTWluaW11bSBUcmFuc3BvcnQgUHJpY2UgVGFibGUnLFxyXG4gIEVESVRfTUlOSU1VTV9UUkFOU1BPUlRfUFJJQ0VfVEFCTEUgPSAnRWRpdCBNaW5pbXVtIFRyYW5zcG9ydCBQcmljZSBUYWJsZScsXHJcbiAgSElTVE9SSUNBTF9DSEFOR0VTX0NSRURJVFMgPSAnSGlzdG9yaWNhbCBDaGFuZ2VzIENyZWRpdHMnLFxyXG4gIElOVEVHUkHDh8ODT19QQUdCRU0gPSAnSW50ZWdyYcOnw6NvIFBhZ2JlbScsXHJcbiAgVkFMSURBVElPTl9DQVJSSUVSID0gJ1ZhbGlkYXRpb24gQ2FycmllcicsXHJcbiAgVkFMSURBVElPTl9EUklWRVIgPSAnVmFsaWRhdGlvbiBEcml2ZXInLFxyXG4gIFZBTElEQVRJT05fVkVISUNMRSA9ICdWYWxpZGF0aW9uIFZlaGljbGUnLFxyXG4gIEVESVRfVFJJUF9TVEFUVVMgPSAnRWRpdCB0cmlwIHN0YXR1cycsXHJcbiAgUkVHSVNUUkFUSU9OX1ZBTElEQVRJT04gPSAnUmVnaXN0cmF0aW9uIFZhbGlkYXRpb24nLFxyXG4gIEIzX09QRVJBVElPTiA9ICdCMyBPcGVyYXRpb24nLFxyXG4gIFNIT1dfQ0FSUklFUl9ERVRBSUxfSU5URUdSQVRJT04gPSAnU2hvdyBDYXJyaWVyIERldGFpbCBJbnRlZ3JhdGlvbicsXHJcbiAgU0hPV19EUklWRVJfREVUQUlMX0lOVEVHUkFUSU9OID0gJ1Nob3cgRHJpdmVyIERldGFpbCBJbnRlZ3JhdGlvbicsXHJcbiAgRlVFTFNfU0hPV19ESVNUUklCVVRJT05fQ0VOVEVSID0gJ0Z1ZWxzIHNob3cgZGlzdHJpYnV0aW9uIGNlbnRlcicsXHJcbiAgRlVFTFNfQUREX0RJU1RSSUJVVElPTl9DRU5URVIgPSAnRnVlbHMgYWRkIGRpc3RyaWJ1dGlvbiBjZW50ZXInLFxyXG4gIEZVRUxTX0VESVRfRElTVFJJQlVUSU9OX0NFTlRFUiA9ICdGdWVscyBlZGl0IGRpc3RyaWJ1dGlvbiBjZW50ZXInLFxyXG4gIEZVRUxTX0RFTEVURV9ESVNUUklCVVRJT05fQ0VOVEVSID0gJ0Z1ZWxzIGRlbGV0ZSBkaXN0cmlidXRpb24gY2VudGVyJyxcclxuICBGVUVMU19TSE9XX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBzaG93IGRpc3RyaWJ1dGlvbiBwb2ludCcsXHJcbiAgRlVFTFNfQUREX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBhZGQgZGlzdHJpYnV0aW9uIHBvaW50JyxcclxuICBGVUVMU19FRElUX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBlZGl0IGRpc3RyaWJ1dGlvbiBwb2ludCcsXHJcbiAgRlVFTFNfREVMRVRFX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBkZWxldGUgZGlzdHJpYnV0aW9uIHBvaW50JyxcclxuICBGVUVMU19TSE9XX0RJU1RSSUJVVElPTl9QT1NUID0gJ0Z1ZWxzIHNob3cgZGlzdHJpYnV0aW9uIHBvc3QnLFxyXG4gIEZVRUxTX0FERF9ESVNUUklCVVRJT05fUE9TVCA9ICdGdWVscyBhZGQgZGlzdHJpYnV0aW9uIHBvc3QnLFxyXG4gIEZVRUxTX0VESVRfRElTVFJJQlVUSU9OX1BPU1QgPSAnRnVlbHMgZWRpdCBkaXN0cmlidXRpb24gcG9zdCcsXHJcbiAgRlVFTFNfREVMRVRFX0RJU1RSSUJVVElPTl9QT1NUID0gJ0Z1ZWxzIGRlbGV0ZSBkaXN0cmlidXRpb24gcG9zdCcsXHJcbiAgRlVFTFNfU0hPV19NQVJLRVRQTEFDRV9QUk9EVUNUID0gJ0Z1ZWxzIHNob3cgbWFya2V0cGxhY2UgcHJvZHVjdCcsXHJcbiAgRlVFTFNfQUREX01BUktFVFBMQUNFX1BST0RVQ1QgPSAnRnVlbHMgYWRkIG1hcmtldHBsYWNlIHByb2R1Y3QnLFxyXG4gIEZVRUxTX0VESVRfTUFSS0VUUExBQ0VfUFJPRFVDVCA9ICdGdWVscyBlZGl0IG1hcmtldHBsYWNlIHByb2R1Y3QnLFxyXG4gIEZVRUxTX0RFTEVURV9NQVJLRVRQTEFDRV9QUk9EVUNUID0gJ0Z1ZWxzIGRlbGV0ZSBtYXJrZXRwbGFjZSBwcm9kdWN0JyxcclxuICBGVUVMU19TSE9XX1NUT0NLX1VQREFURSA9ICdGdWVscyBzaG93IHN0b2NrIHVwZGF0ZScsXHJcbiAgRlVFTFNfQUREX1NUT0NLX1VQREFURSA9ICdGdWVscyBhZGQgc3RvY2sgdXBkYXRlJyxcclxuICBTSE9XX01BUktFVFBMQUNFUyA9ICdTaG93IG1hcmtldHBsYWNlcycsXHJcbiAgRlVFTFNfU0hPV19ERVBPU0lUID0gJ0Z1ZWxzIHNob3cgZGVwb3NpdCcsXHJcbiAgRlVFTFNfQUREX0RFUE9TSVQgPSAnRnVlbHMgYWRkIGRlcG9zaXQnLFxyXG4gIEZVRUxTX0VESVRfREVQT1NJVCA9ICdGdWVscyBlZGl0IGRlcG9zaXQnLFxyXG4gIEZVRUxTX0RFTEVURV9ERVBPU0lUID0gJ0Z1ZWxzIGRlbGV0ZSBkZXBvc2l0JyxcclxuICBGVUVMU19TSE9XX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBzaG93IHN1cHBseSBvZmZlcicsXHJcbiAgRlVFTFNfQUREX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBhZGQgc3VwcGx5IG9mZmVyJyxcclxuICBGVUVMU19FRElUX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBlZGl0IHN1cHBseSBvZmZlcicsXHJcbiAgRlVFTFNfU0hPV19PUEVSQVRPUiA9ICdGdWVscyBzaG93IG9wZXJhdG9yJyxcclxuICBGVUVMU19BRERfT1BFUkFUT1IgPSAnRnVlbHMgYWRkIG9wZXJhdG9yJyxcclxuICBGVUVMU19FRElUX09QRVJBVE9SID0gJ0Z1ZWxzIGVkaXQgb3BlcmF0b3InLFxyXG4gIEZVRUxTX0RFTEVURV9PUEVSQVRPUiA9ICdGdWVscyBkZWxldGUgb3BlcmF0b3InLFxyXG4gIEZJTlRFQ0hfQkFOS19BRE1JTiA9ICdGaW50ZWNoIEJhbmsgQWRtaW4nLFxyXG4gIEZJTlRFQ0hfQkFOS19VU0VSID0gJ0ZpbnRlY2ggQmFuayBVc2VyJyxcclxuICBGSU5URUNIX0NSRURJVF9BRE1JTiA9ICdGaW50ZWNoIENyZWRpdCBBZG1pbicsXHJcbiAgRklOVEVDSF9DUkVESVRfVVNFUiA9ICdGaW50ZWNoIENyZWRpdCBVc2VyJyxcclxuICBGSU5URUNIX0JBTktfQURNSU5fQUNDT1VOVFNfVklFVyA9ICdGaW50ZWNoIEJhbmsgQWRtaW4gLSBBY2NvdW50cyBWaWV3JyxcclxuICBGSU5URUNIX0NSRURJVF9BRE1JTl9QUk9QT1NBTF9OT1RfQ09ORklSTUVEID0gJ0ZpbnRlY2ggQ3JlZGl0IEFkbWluIC0gUHJvcG9zYWwgTm90IENvbmZpcm1lZCcsXHJcbiAgRklOVEVDSF9DUkVESVRfQURNSU5fQ09OVFJBQ1RTX0ZPTExPV19VUCA9ICdGaW50ZWNoIENyZWRpdCBBZG1pbiAtIENvbnRyYWN0cyBGb2xsb3ctVXAnLFxyXG4gIEFETUlOX01BUktFUExBQ0UgPSAnQWRtaW4gTWFya2VwbGFjZScsXHJcbiAgQVBQUk9WRV9SRVFVRVNUID0gJ0FwcHJvdmUgUmVxdWVzdCcsXHJcbiAgUkVQUk9WRV9SRVFVRVNUID0gJ1JlcHJvdmUgUmVxdWVzdCcsXHJcbiAgU0hPV19SRVFVRVNUID0gJ1Nob3cgUmVxdWVzdCcsXHJcbiAgU0hPV19VU0VSID0gJ1Nob3cgVXNlcicsXHJcbiAgQUREX1VTRVIgPSAnQWRkIFVzZXInLFxyXG4gIEVESVRfVVNFUiA9ICdFZGl0IFVzZXInLFxyXG4gIERFTEVURV9VU0VSID0gJ0RlbGV0ZSBVc2VyJyxcclxuICBBRERfUkVHSU9OID0gJ0FkZCBSZWdpb24nLFxyXG4gIFNIT1dfUkVHSU9OID0gJ1Nob3cgUmVnaW9uJyxcclxuICBFRElUX1JFR0lPTiA9ICdFZGl0IFJlZ2lvbicsXHJcbiAgQUREX0xPQ0FUSU9OX1NISVBQRVIgPSAnQWRkIExvY2F0aW9uU2hpcHBlcicsXHJcbiAgRURJVF9MT0NBVElPTl9TSElQUEVSID0gJ0VkaXQgTG9jYXRpb25TaGlwcGVyJyxcclxuICBTSE9XX0xPQ0FUSU9OX1NISVBQRVIgPSAnU2hvdyBMb2NhdGlvblNoaXBwZXInLFxyXG4gIERFTEVURV9MT0NBVElPTl9TSElQUEVSID0gJ0RlbGV0ZSBMb2NhdGlvblNoaXBwZXInLFxyXG59XHJcbiJdfQ==
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9wcm9maWxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCQSxNQUFNLENBQU4sSUFBWSxpQkFHWDtBQUhELFdBQVksaUJBQWlCO0lBQzNCLHFFQUFnRCxDQUFBO0lBQ2hELG1EQUE4QixDQUFBO0FBQ2hDLENBQUMsRUFIVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBRzVCO0FBRUQsTUFBTSxDQUFOLElBQVksdUJBK0hYO0FBL0hELFdBQVksdUJBQXVCO0lBQ2pDLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLG9EQUF5QixDQUFBO0lBQ3pCLHNEQUEyQixDQUFBO0lBQzNCLDBEQUErQixDQUFBO0lBQy9CLHNEQUEyQixDQUFBO0lBQzNCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDREQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QixDQUFBO0lBQzdCLDBFQUErQyxDQUFBO0lBQy9DLGdEQUFxQixDQUFBO0lBQ3JCLGtEQUF1QixDQUFBO0lBQ3ZCLG9GQUF5RCxDQUFBO0lBQ3pELGtGQUF1RCxDQUFBO0lBQ3ZELG9GQUF5RCxDQUFBO0lBQ3pELDhFQUFtRCxDQUFBO0lBQ25ELDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDBEQUErQixDQUFBO0lBQy9CLDBEQUErQixDQUFBO0lBQy9CLGdFQUFxQyxDQUFBO0lBQ3JDLGtFQUF1QyxDQUFBO0lBQ3ZDLGtFQUF1QyxDQUFBO0lBQ3ZDLHNFQUEyQyxDQUFBO0lBQzNDLDhEQUFtQyxDQUFBO0lBQ25DLDBEQUErQixDQUFBO0lBQy9CLDBEQUErQixDQUFBO0lBQy9CLDhEQUFtQyxDQUFBO0lBQ25DLHdEQUE2QixDQUFBO0lBQzdCLDhDQUFtQixDQUFBO0lBQ25CLGdEQUFxQixDQUFBO0lBQ3JCLG9EQUF5QixDQUFBO0lBQ3pCLGdEQUFxQixDQUFBO0lBQ3JCLDBEQUErQixDQUFBO0lBQy9CLHNEQUEyQixDQUFBO0lBQzNCLGtGQUF1RCxDQUFBO0lBQ3ZELG9GQUF5RCxDQUFBO0lBQ3pELG9GQUF5RCxDQUFBO0lBQ3pELDREQUFpQyxDQUFBO0lBQ2pDLDhEQUFtQyxDQUFBO0lBQ25DLGtFQUF1QyxDQUFBO0lBQ3ZDLGtHQUF1RSxDQUFBO0lBQ3ZFLG9HQUF5RSxDQUFBO0lBQ3pFLG9HQUF5RSxDQUFBO0lBQ3pFLDhEQUFtQyxDQUFBO0lBQ25DLDhEQUFtQyxDQUFBO0lBQ25DLG9HQUF5RSxDQUFBO0lBQ3pFLG9HQUF5RSxDQUFBO0lBQ3pFLG9GQUF5RCxDQUFBO0lBQ3pELHNGQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGdFQUFxQyxDQUFBO0lBQ3JDLDhFQUFtRCxDQUFBO0lBQ25ELHdEQUE2QixDQUFBO0lBQzdCLDhGQUFtRSxDQUFBO0lBQ25FLDRGQUFpRSxDQUFBO0lBQ2pFLDRGQUFpRSxDQUFBO0lBQ2pFLDBGQUErRCxDQUFBO0lBQy9ELDRGQUFpRSxDQUFBO0lBQ2pFLGdHQUFxRSxDQUFBO0lBQ3JFLDBGQUErRCxDQUFBO0lBQy9ELHdGQUE2RCxDQUFBO0lBQzdELDBGQUErRCxDQUFBO0lBQy9ELDhGQUFtRSxDQUFBO0lBQ25FLHdGQUE2RCxDQUFBO0lBQzdELHNGQUEyRCxDQUFBO0lBQzNELHdGQUE2RCxDQUFBO0lBQzdELDRGQUFpRSxDQUFBO0lBQ2pFLDRGQUFpRSxDQUFBO0lBQ2pFLDBGQUErRCxDQUFBO0lBQy9ELDRGQUFpRSxDQUFBO0lBQ2pFLGdHQUFxRSxDQUFBO0lBQ3JFLDhFQUFtRCxDQUFBO0lBQ25ELDRFQUFpRCxDQUFBO0lBQ2pELGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLG9FQUF5QyxDQUFBO0lBQ3pDLHdFQUE2QyxDQUFBO0lBQzdDLDhFQUFtRCxDQUFBO0lBQ25ELDRFQUFpRCxDQUFBO0lBQ2pELDhFQUFtRCxDQUFBO0lBQ25ELHNFQUEyQyxDQUFBO0lBQzNDLG9FQUF5QyxDQUFBO0lBQ3pDLHNFQUEyQyxDQUFBO0lBQzNDLDBFQUErQyxDQUFBO0lBQy9DLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLHdFQUE2QyxDQUFBO0lBQzdDLHNFQUEyQyxDQUFBO0lBQzNDLGtHQUF1RSxDQUFBO0lBQ3ZFLHdIQUE2RixDQUFBO0lBQzdGLGtIQUF1RixDQUFBO0lBQ3ZGLGdFQUFxQyxDQUFBO0lBQ3JDLDhEQUFtQyxDQUFBO0lBQ25DLDhEQUFtQyxDQUFBO0lBQ25DLHdEQUE2QixDQUFBO0lBQzdCLGtEQUF1QixDQUFBO0lBQ3ZCLGdEQUFxQixDQUFBO0lBQ3JCLGtEQUF1QixDQUFBO0lBQ3ZCLHNEQUEyQixDQUFBO0lBQzNCLG9EQUF5QixDQUFBO0lBQ3pCLHNEQUEyQixDQUFBO0lBQzNCLHNEQUEyQixDQUFBO0lBQzNCLHVFQUE0QyxDQUFBO0lBQzVDLHlFQUE4QyxDQUFBO0lBQzlDLHlFQUE4QyxDQUFBO0lBQzlDLDZFQUFrRCxDQUFBO0lBQ2xELHdEQUE2QixDQUFBO0lBQzdCLDBEQUErQixDQUFBO0lBQy9CLDBEQUErQixDQUFBO0lBQy9CLDRFQUFpRCxDQUFBO0lBQ2pELGdGQUFxRCxDQUFBO0lBQ3JELDhFQUFtRCxDQUFBO0lBQ25ELGdFQUFxQyxDQUFBO0FBQ3ZDLENBQUMsRUEvSFcsdUJBQXVCLEtBQXZCLHVCQUF1QixRQStIbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVGFibGVCYXNlSXRlbSB9IGZyb20gJy4vZGF0YS10YWJsZS5tb2RlbCc7XHJcblxyXG5leHBvcnQgdHlwZSBQcm9maWxlID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHByb2ZpbGVUeXBlSWQ6IG51bWJlcjtcclxuICBQcm9maWxlVHlwZU5hbWU6IHN0cmluZztcclxuICBtb2R1bGVzOiBQcm9maWxlTW9kdWxlW107XHJcbn0gJiBEYXRhVGFibGVCYXNlSXRlbTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb2ZpbGVNb2R1bGUgPSB7XHJcbiAgbWVudTogc3RyaW5nO1xyXG4gIGFjdGlvbnM6IFByb2ZpbGVNb2R1bGVBY3Rpb25bXTtcclxufSAmIFByb2ZpbGVNb2R1bGVCYXNlO1xyXG5cclxuZXhwb3J0IHR5cGUgUHJvZmlsZU1vZHVsZUdyb3VwZWRCeU1lbnUgPSB7XHJcbiAgbWVudTogc3RyaW5nO1xyXG4gIG1vZHVsZXM6IFByb2ZpbGVNb2R1bGVbXTtcclxuICBjaGlsZHJlbj86IFByb2ZpbGVNb2R1bGVHcm91cGVkQnlNZW51W107XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBQcm9maWxlTW9kdWxlQWN0aW9uID0ge30gJiBQcm9maWxlTW9kdWxlQmFzZTtcclxuXHJcbmV4cG9ydCB0eXBlIFByb2ZpbGVNb2R1bGVCYXNlID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGlzQXZhaWxhYmxlPzogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBlbnVtIFByb2ZpbGVNb2R1bGVUeXBlIHtcclxuICBPUEVSQVRJT05BTF9FVkFMVUFUSU9OID0gJ09wZXJhdGlvbmFsRXZhbHVhdGlvbicsXHJcbiAgQURNSU5fU1VSVkVZUyA9ICdBZG1pblN1cnZleXMnLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZSB7XHJcbiAgQUREX1ZFSElDTEUgPSAnQWRkIFZlaGljbGUnLFxyXG4gIEVESVRfVkVISUNMRSA9ICdFZGl0IFZlaGljbGUnLFxyXG4gIERFTEVURV9WRUhJQ0xFID0gJ0RlbGV0ZSBWZWhpY2xlJyxcclxuICBTSE9XX1ZFSElDTEUgPSAnU2hvdyBWZWhpY2xlJyxcclxuICBBRERfRFJJVkVSID0gJ0FkZCBEcml2ZXInLFxyXG4gIEVESVRfRFJJVkVSID0gJ0VkaXQgRHJpdmVyJyxcclxuICBERUxFVEVfRFJJVkVSID0gJ0RlbGV0ZSBEcml2ZXInLFxyXG4gIFNIT1dfRFJJVkVSID0gJ1Nob3cgRHJpdmVyJyxcclxuICBBRERfQ0FSUklFUiA9ICdBZGQgQ2FycmllcicsXHJcbiAgRURJVF9DQVJSSUVSID0gJ0VkaXQgQ2FycmllcicsXHJcbiAgREVMRVRFX0NBUlJJRVIgPSAnRGVsZXRlIENhcnJpZXInLFxyXG4gIFNIT1dfQ0FSUklFUiA9ICdTaG93IENhcnJpZXInLFxyXG4gIEFERF9QUk9GSUxFID0gJ0FkZCBQcm9maWxlJyxcclxuICBFRElUX1BST0ZJTEUgPSAnRWRpdCBQcm9maWxlJyxcclxuICBERUxFVEVfUFJPRklMRSA9ICdEZWxldGUgUHJvZmlsZScsXHJcbiAgU0hPV19QUk9GSUxFID0gJ1Nob3cgUHJvZmlsZScsXHJcbiAgRURJVF9CUk9BRENBU1RfVkFMVUVTID0gJ0VkaXQgQnJvYWRjYXN0IFZhbHVlcycsXHJcbiAgQUREX1dBVkUgPSAnQWRkIFdhdmUnLFxyXG4gIEVESVRfV0FWRSA9ICdFZGl0IFdhdmUnLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19WRUhJQ0xFID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBWZWhpY2xlJyxcclxuICBISVNUT1JJQ0FMX0NIQU5HRVNfRFJJVkVSID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBEcml2ZXInLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19DQVJSSUVSID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBDYXJyaWVyJyxcclxuICBISVNUT1JJQ0FMX0NIQU5HRVNfVFJJUCA9ICdIaXN0b3JpY2FsIENoYW5nZXMgVHJpcCcsXHJcbiAgSElTVE9SSUNBTF9DSEFOR0VTX1VTRVIgPSAnSGlzdG9yaWNhbCBDaGFuZ2VzIFVzZXInLFxyXG4gIENBTkNFTF9UUklQUyA9ICdDYW5jZWwgVHJpcHMnLFxyXG4gIEhJU1RPUklDQUxfQ0hBTkdFU19MT1RTID0gJ0hpc3RvcmljYWwgQ2hhbmdlcyBMb3RzJyxcclxuICBBRERfTE9DQVRJT04gPSAnQWRkIExvY2F0aW9uJyxcclxuICBFRElUX0xPQ0FUSU9OID0gJ0VkaXQgTG9jYXRpb24nLFxyXG4gIFNIT1dfTE9DQVRJT04gPSAnU2hvdyBMb2NhdGlvbicsXHJcbiAgQUREX1JFU1RSSUNUSU9OUyA9ICdBZGQgUmVzdHJpY3Rpb25zJyxcclxuICBFRElUX1JFU1RSSUNUSU9OUyA9ICdFZGl0IFJlc3RyaWN0aW9ucycsXHJcbiAgU0hPV19SRVNUUklDVElPTlMgPSAnU2hvdyBSZXN0cmljdGlvbnMnLFxyXG4gIERFTEVURV9SRVNUUklDVElPTlMgPSAnRGVsZXRlIFJlc3RyaWN0aW9ucycsXHJcbiAgREVMRVRFX0xPQ0FUSU9OID0gJ0RlbGV0ZSBMb2NhdGlvbicsXHJcbiAgU0hPV19NRVNTQUdFUyA9ICdTaG93IE1lc3NhZ2VzJyxcclxuICBFRElUX01FU1NBR0VTID0gJ0VkaXQgTWVzc2FnZXMnLFxyXG4gIERFTEVURV9NRVNTQUdFUyA9ICdEZWxldGUgTWVzc2FnZXMnLFxyXG4gIEFERF9NRVNTQUdFUyA9ICdBZGQgTWVzc2FnZXMnLFxyXG4gIEFERF9MT1QgPSAnQWRkIExvdCcsXHJcbiAgRURJVF9MT1QgPSAnRWRpdCBMb3QnLFxyXG4gIERFTEVURV9MT1QgPSAnRGVsZXRlIExvdCcsXHJcbiAgU0hPV19MT1QgPSAnU2hvdyBMb3QnLFxyXG4gIEFDQ0VQVF9DUkVESVQgPSAnQWNjZXB0IENyZWRpdCcsXHJcbiAgU0hPV19DUkVESVQgPSAnU2hvdyBDcmVkaXQnLFxyXG4gIEFERF9WRUhJQ0xFX0NPTkZJR1VSQVRJT04gPSAnQWRkIFZlaGljbGUgQ29uZmlndXJhdGlvbicsXHJcbiAgRURJVF9WRUhJQ0xFX0NPTkZJR1VSQVRJT04gPSAnRWRpdCBWZWhpY2xlIENvbmZpZ3VyYXRpb24nLFxyXG4gIFNIT1dfVkVISUNMRV9DT05GSUdVUkFUSU9OID0gJ1Nob3cgVmVoaWNsZSBDb25maWd1cmF0aW9uJyxcclxuICBBRERfU0NIRURVTElORyA9ICdBZGQgU2NoZWR1bGluZycsXHJcbiAgRURJVF9TQ0hFRFVMSU5HID0gJ0VkaXQgU2NoZWR1bGluZycsXHJcbiAgREVMRVRFX1NDSEVEVUxJTkcgPSAnRGVsZXRlIFNjaGVkdWxpbmcnLFxyXG4gIEFERF9WRUhJQ0xFX0NPTkZJR1VSQVRJT05fU0hJUFBFUiA9ICdBZGQgVmVoaWNsZSBDb25maWd1cmF0aW9uIFNoaXBwZXInLFxyXG4gIEVESVRfVkVISUNMRV9DT05GSUdVUkFUSU9OX1NISVBQRVIgPSAnRWRpdCBWZWhpY2xlIENvbmZpZ3VyYXRpb24gU2hpcHBlcicsXHJcbiAgU0hPV19WRUhJQ0xFX0NPTkZJR1VSQVRJT05fU0hJUFBFUiA9ICdTaG93IFZlaGljbGUgQ29uZmlndXJhdGlvbiBTaGlwcGVyJyxcclxuICBFRElUX1RSSVBfQlVOR0UgPSAnRWRpdCB0cmlwIEJ1bmdlJyxcclxuICBFRElUX1RSSVBfQ09GQ08gPSAnRWRpdCB0cmlwIENvZmNvJyxcclxuICBTSE9XX01JTklNVU1fVFJBTlNQT1JUX1BSSUNFX1RBQkxFID0gJ1Nob3cgTWluaW11bSBUcmFuc3BvcnQgUHJpY2UgVGFibGUnLFxyXG4gIEVESVRfTUlOSU1VTV9UUkFOU1BPUlRfUFJJQ0VfVEFCTEUgPSAnRWRpdCBNaW5pbXVtIFRyYW5zcG9ydCBQcmljZSBUYWJsZScsXHJcbiAgSElTVE9SSUNBTF9DSEFOR0VTX0NSRURJVFMgPSAnSGlzdG9yaWNhbCBDaGFuZ2VzIENyZWRpdHMnLFxyXG4gIElOVEVHUkHDh8ODT19QQUdCRU0gPSAnSW50ZWdyYcOnw6NvIFBhZ2JlbScsXHJcbiAgVkFMSURBVElPTl9DQVJSSUVSID0gJ1ZhbGlkYXRpb24gQ2FycmllcicsXHJcbiAgVkFMSURBVElPTl9EUklWRVIgPSAnVmFsaWRhdGlvbiBEcml2ZXInLFxyXG4gIFZBTElEQVRJT05fVkVISUNMRSA9ICdWYWxpZGF0aW9uIFZlaGljbGUnLFxyXG4gIEVESVRfVFJJUF9TVEFUVVMgPSAnRWRpdCB0cmlwIHN0YXR1cycsXHJcbiAgUkVHSVNUUkFUSU9OX1ZBTElEQVRJT04gPSAnUmVnaXN0cmF0aW9uIFZhbGlkYXRpb24nLFxyXG4gIEIzX09QRVJBVElPTiA9ICdCMyBPcGVyYXRpb24nLFxyXG4gIFNIT1dfQ0FSUklFUl9ERVRBSUxfSU5URUdSQVRJT04gPSAnU2hvdyBDYXJyaWVyIERldGFpbCBJbnRlZ3JhdGlvbicsXHJcbiAgU0hPV19EUklWRVJfREVUQUlMX0lOVEVHUkFUSU9OID0gJ1Nob3cgRHJpdmVyIERldGFpbCBJbnRlZ3JhdGlvbicsXHJcbiAgRlVFTFNfU0hPV19ESVNUUklCVVRJT05fQ0VOVEVSID0gJ0Z1ZWxzIHNob3cgZGlzdHJpYnV0aW9uIGNlbnRlcicsXHJcbiAgRlVFTFNfQUREX0RJU1RSSUJVVElPTl9DRU5URVIgPSAnRnVlbHMgYWRkIGRpc3RyaWJ1dGlvbiBjZW50ZXInLFxyXG4gIEZVRUxTX0VESVRfRElTVFJJQlVUSU9OX0NFTlRFUiA9ICdGdWVscyBlZGl0IGRpc3RyaWJ1dGlvbiBjZW50ZXInLFxyXG4gIEZVRUxTX0RFTEVURV9ESVNUUklCVVRJT05fQ0VOVEVSID0gJ0Z1ZWxzIGRlbGV0ZSBkaXN0cmlidXRpb24gY2VudGVyJyxcclxuICBGVUVMU19TSE9XX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBzaG93IGRpc3RyaWJ1dGlvbiBwb2ludCcsXHJcbiAgRlVFTFNfQUREX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBhZGQgZGlzdHJpYnV0aW9uIHBvaW50JyxcclxuICBGVUVMU19FRElUX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBlZGl0IGRpc3RyaWJ1dGlvbiBwb2ludCcsXHJcbiAgRlVFTFNfREVMRVRFX0RJU1RSSUJVVElPTl9QT0lOVCA9ICdGdWVscyBkZWxldGUgZGlzdHJpYnV0aW9uIHBvaW50JyxcclxuICBGVUVMU19TSE9XX0RJU1RSSUJVVElPTl9QT1NUID0gJ0Z1ZWxzIHNob3cgZGlzdHJpYnV0aW9uIHBvc3QnLFxyXG4gIEZVRUxTX0FERF9ESVNUUklCVVRJT05fUE9TVCA9ICdGdWVscyBhZGQgZGlzdHJpYnV0aW9uIHBvc3QnLFxyXG4gIEZVRUxTX0VESVRfRElTVFJJQlVUSU9OX1BPU1QgPSAnRnVlbHMgZWRpdCBkaXN0cmlidXRpb24gcG9zdCcsXHJcbiAgRlVFTFNfREVMRVRFX0RJU1RSSUJVVElPTl9QT1NUID0gJ0Z1ZWxzIGRlbGV0ZSBkaXN0cmlidXRpb24gcG9zdCcsXHJcbiAgRlVFTFNfU0hPV19NQVJLRVRQTEFDRV9QUk9EVUNUID0gJ0Z1ZWxzIHNob3cgbWFya2V0cGxhY2UgcHJvZHVjdCcsXHJcbiAgRlVFTFNfQUREX01BUktFVFBMQUNFX1BST0RVQ1QgPSAnRnVlbHMgYWRkIG1hcmtldHBsYWNlIHByb2R1Y3QnLFxyXG4gIEZVRUxTX0VESVRfTUFSS0VUUExBQ0VfUFJPRFVDVCA9ICdGdWVscyBlZGl0IG1hcmtldHBsYWNlIHByb2R1Y3QnLFxyXG4gIEZVRUxTX0RFTEVURV9NQVJLRVRQTEFDRV9QUk9EVUNUID0gJ0Z1ZWxzIGRlbGV0ZSBtYXJrZXRwbGFjZSBwcm9kdWN0JyxcclxuICBGVUVMU19TSE9XX1NUT0NLX1VQREFURSA9ICdGdWVscyBzaG93IHN0b2NrIHVwZGF0ZScsXHJcbiAgRlVFTFNfQUREX1NUT0NLX1VQREFURSA9ICdGdWVscyBhZGQgc3RvY2sgdXBkYXRlJyxcclxuICBTSE9XX01BUktFVFBMQUNFUyA9ICdTaG93IG1hcmtldHBsYWNlcycsXHJcbiAgRlVFTFNfU0hPV19ERVBPU0lUID0gJ0Z1ZWxzIHNob3cgZGVwb3NpdCcsXHJcbiAgRlVFTFNfQUREX0RFUE9TSVQgPSAnRnVlbHMgYWRkIGRlcG9zaXQnLFxyXG4gIEZVRUxTX0VESVRfREVQT1NJVCA9ICdGdWVscyBlZGl0IGRlcG9zaXQnLFxyXG4gIEZVRUxTX0RFTEVURV9ERVBPU0lUID0gJ0Z1ZWxzIGRlbGV0ZSBkZXBvc2l0JyxcclxuICBGVUVMU19TSE9XX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBzaG93IHN1cHBseSBvZmZlcicsXHJcbiAgRlVFTFNfQUREX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBhZGQgc3VwcGx5IG9mZmVyJyxcclxuICBGVUVMU19FRElUX1NVUFBMWV9PRkZFUiA9ICdGdWVscyBlZGl0IHN1cHBseSBvZmZlcicsXHJcbiAgRlVFTFNfU0hPV19PUEVSQVRPUiA9ICdGdWVscyBzaG93IG9wZXJhdG9yJyxcclxuICBGVUVMU19BRERfT1BFUkFUT1IgPSAnRnVlbHMgYWRkIG9wZXJhdG9yJyxcclxuICBGVUVMU19FRElUX09QRVJBVE9SID0gJ0Z1ZWxzIGVkaXQgb3BlcmF0b3InLFxyXG4gIEZVRUxTX0RFTEVURV9PUEVSQVRPUiA9ICdGdWVscyBkZWxldGUgb3BlcmF0b3InLFxyXG4gIEZJTlRFQ0hfQkFOS19BRE1JTiA9ICdGaW50ZWNoIEJhbmsgQWRtaW4nLFxyXG4gIEZJTlRFQ0hfQkFOS19VU0VSID0gJ0ZpbnRlY2ggQmFuayBVc2VyJyxcclxuICBGSU5URUNIX0NSRURJVF9BRE1JTiA9ICdGaW50ZWNoIENyZWRpdCBBZG1pbicsXHJcbiAgRklOVEVDSF9DUkVESVRfVVNFUiA9ICdGaW50ZWNoIENyZWRpdCBVc2VyJyxcclxuICBGSU5URUNIX0JBTktfQURNSU5fQUNDT1VOVFNfVklFVyA9ICdGaW50ZWNoIEJhbmsgQWRtaW4gLSBBY2NvdW50cyBWaWV3JyxcclxuICBGSU5URUNIX0NSRURJVF9BRE1JTl9QUk9QT1NBTF9OT1RfQ09ORklSTUVEID0gJ0ZpbnRlY2ggQ3JlZGl0IEFkbWluIC0gUHJvcG9zYWwgTm90IENvbmZpcm1lZCcsXHJcbiAgRklOVEVDSF9DUkVESVRfQURNSU5fQ09OVFJBQ1RTX0ZPTExPV19VUCA9ICdGaW50ZWNoIENyZWRpdCBBZG1pbiAtIENvbnRyYWN0cyBGb2xsb3ctVXAnLFxyXG4gIEFETUlOX01BUktFUExBQ0UgPSAnQWRtaW4gTWFya2VwbGFjZScsXHJcbiAgQVBQUk9WRV9SRVFVRVNUID0gJ0FwcHJvdmUgUmVxdWVzdCcsXHJcbiAgUkVQUk9WRV9SRVFVRVNUID0gJ1JlcHJvdmUgUmVxdWVzdCcsXHJcbiAgU0hPV19SRVFVRVNUID0gJ1Nob3cgUmVxdWVzdCcsXHJcbiAgU0hPV19VU0VSID0gJ1Nob3cgVXNlcicsXHJcbiAgQUREX1VTRVIgPSAnQWRkIFVzZXInLFxyXG4gIEVESVRfVVNFUiA9ICdFZGl0IFVzZXInLFxyXG4gIERFTEVURV9VU0VSID0gJ0RlbGV0ZSBVc2VyJyxcclxuICBBRERfUkVHSU9OID0gJ0FkZCBSZWdpb24nLFxyXG4gIFNIT1dfUkVHSU9OID0gJ1Nob3cgUmVnaW9uJyxcclxuICBFRElUX1JFR0lPTiA9ICdFZGl0IFJlZ2lvbicsXHJcbiAgQUREX0xPQ0FUSU9OX1NISVBQRVIgPSAnQWRkIExvY2F0aW9uU2hpcHBlcicsXHJcbiAgRURJVF9MT0NBVElPTl9TSElQUEVSID0gJ0VkaXQgTG9jYXRpb25TaGlwcGVyJyxcclxuICBTSE9XX0xPQ0FUSU9OX1NISVBQRVIgPSAnU2hvdyBMb2NhdGlvblNoaXBwZXInLFxyXG4gIERFTEVURV9MT0NBVElPTl9TSElQUEVSID0gJ0RlbGV0ZSBMb2NhdGlvblNoaXBwZXInLFxyXG4gIEFERF9TQ0hFRFVMRSA9ICdBZGQgU2NoZWR1bGUnLFxyXG4gIEVESVRfU0NIRURVTEUgPSAnRWRpdCBTY2hlZHVsZScsXHJcbiAgU0hPV19TQ0hFRFVMRSA9ICdTaG93IFNjaGVkdWxlJyxcclxuICBBRERfVkFDQU5DSUVTX0xPR0lTVElDID0gJ0FkZCBWYWNhbmNpZXMgTG9naXN0aWMnLFxyXG4gIEFERF9WQUNBTkNJRVNfQ09NTUVSQ0lBTCA9ICdBZGQgVmFjYW5jaWVzIENvbW1lcmNpYWwnLFxyXG4gIFNIT1dfVkFDQU5DSUVTX0NPTVBMRVRFID0gJ1Nob3cgVmFjYW5jaWVzIENvbXBsZXRlJyxcclxuICBBRERfU0NIRURVTEVfT0ZGID0gJ0FkZCBTY2hlZHVsZSBPZmYnLFxyXG59XHJcbiJdfQ==
@@ -34,6 +34,7 @@ export class ProfileService {
34
34
  shipper: response?.shipper,
35
35
  carrierId: response?.carrierId,
36
36
  profileTypeId: response?.profile.profileTypeId,
37
+ profileName: response?.profile.name,
37
38
  };
38
39
  this.storageService.setSession('userInfo', dataObject);
39
40
  this.profileTypeItens$.next(dataObject);
@@ -94,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
94
95
  type: Injectable,
95
96
  args: [{ providedIn: 'root' }]
96
97
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.StorageService }]; } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvcHJvZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQTBCLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFJN0csTUFBTSxPQUFPLGNBQWM7SUFjekIsWUFBb0IsSUFBZ0IsRUFBVSxjQUE4QjtRQUF4RCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBYjVELG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQ2xELElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUM1QyxDQUFDO1FBRWMsc0JBQWlCLEdBQUcsSUFBSSxlQUFlLENBQXFCLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZFLHNCQUFpQixHQUFHLElBQUksZUFBZSxDQUVyRCxTQUFTLENBQUMsQ0FBQztRQUNOLDhCQUF5QixHQUFHLEtBQUssQ0FBQztRQUNsQyxrQ0FBNkIsR0FBRyxLQUFLLENBQUM7UUFDdEMsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLGdDQUEyQixHQUFHLEtBQUssQ0FBQztRQUd6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLHlCQUF5QixHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQy9EO1lBQ0UsdUJBQXVCLENBQUMs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QUFFLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxFQUFFO2dCQUN4RSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQzthQUN0RztZQUVELElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxFQUFFO2dCQUNsRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQzthQUMzRTtTQUNGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLGtCQUFrQixDQUFDLENBQUM7SUFDaEQsQ0FBQzs7MkdBM0dVLGNBQWM7K0dBQWQsY0FBYyxjQURELE1BQU07MkZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUHJvZmlsZSwgUHJvZmlsZU1vZHVsZSwgUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUsIFByb2ZpbGVNb2R1bGVUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3Byb2ZpbGUubW9kZWwnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBQcm9maWxlU2VydmljZSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IG1vZHVsZVByb2ZpbGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQcm9maWxlTW9kdWxlW10gfCB1bmRlZmluZWQ+KFxyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRQcm9maWxlKCkuYWxsTW9kdWxlc1xyXG4gICk7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBwcm9maWxlRmlyc3ROYW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG4gIHB1YmxpYyByZWFkb25seSBwcm9maWxlVHlwZUl0ZW5zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XHJcbiAgICB7IHNoaXBwZXI6IG51bWJlcjsgY2FycmllcklkOiBudW1iZXI7IHByb2ZpbGVUeXBlSWQ6IG51bWJlciB9IHwgdW5kZWZpbmVkXHJcbiAgPih1bmRlZmluZWQpO1xyXG4gIHB1YmxpYyBoYXNGaW50ZWNoQWRtaW5QZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc01hcmtldHBsYWNlQWRtaW5QZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc0FueUZpbnRlY2hQZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc0FueU1hcmtldHBsYWNlUGVybWlzc2lvbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlKSB7XHJcbiAgICBjb25zdCB7IGZpbnRlY2gsIG1hcmtldHBsYWNlIH0gPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFByb2ZpbGUoKTtcclxuICAgIHRoaXMuaGFzRmludGVjaEFkbWluUGVybWlzc2lvbiA9ICEhZmludGVjaD8uYWN0aW9ucy5zb21lKChhY3QpID0+XHJcbiAgICAgIFtcclxuICAgICAgICBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5GSU5URUNIX0JBTktfQURNSU4udG9TdHJpbmcoKSxcclxuICAgICAgICBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5GSU5URUNIX0NSRURJVF9BRE1JTi50b1N0cmluZygpLFxyXG4gICAgICBdLmluY2x1ZGVzKGFjdC5uYW1lKVxyXG4gICAgKTtcclxuICAgIHRoaXMuaGFzTWFya2V0cGxhY2VBZG1pblBlcm1pc3Npb24gPSAhIW1hcmtldHBsYWNlPy5hY3Rpb25zLnNvbWUoXHJcbiAgICAgIChhY3QpID0+IGFjdC5uYW1lID09PSBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5BRE1JTl9NQVJLRVBMQUNFXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYXNBbnlGaW50ZWNoUGVybWlzc2lvbiA9ICEhZmludGVjaD8uYWN0aW9ucz8ubGVuZ3RoO1xyXG4gICAgdGhpcy5oYXNBbnlNYXJrZXRwbGFjZVBlcm1pc3Npb24gPSAhIW1hcmtldHBsYWNlPy5hY3Rpb25zPy5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VXNlclByb2ZpbGUoKSB7XHJcbiAgICB0aGlzLmh0dHAuZ2V0PGFueT4oJ2Nvbm5lY3QvdXNlcmluZm8nKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmIChyZXNwb25zZS5maXJzdE5hbWUpIHtcclxuICAgICAgICB0aGlzLnByb2ZpbGVGaXJzdE5hbWUkLm5leHQocmVzcG9uc2UuZmlyc3ROYW1lKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgICAgbGV0IGRhdGFPYmplY3QgPSB7XHJcbiAgICAgICAgICBzaGlwcGVyOiByZXNwb25zZT8uc2hpcHBlcixcclxuICAgICAgICAgIGNhcnJpZXJJZDogcmVzcG9uc2U/LmNhcnJpZXJJZCxcclxuICAgICAgICAgIHByb2ZpbGVUeXBlSWQ6IHJlc3BvbnNlPy5wcm9maWxlLnByb2ZpbGVUeXBlSWQsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldFNlc3Npb24oJ3VzZXJJbmZvJywgZGF0YU9iamVjdCk7XHJcbiAgICAgICAgdGhpcy5wcm9maWxlVHlwZUl0ZW5zJC5uZXh0KGRhdGFPYmplY3QpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBjb21wbGV0ZVByb2ZpbGU6IFByb2ZpbGUgPSByZXNwb25zZS5wcm9maWxlO1xyXG4gICAgICBjb25zdCBtYXJrZXRwbGFjZVByb2ZpbGVNb2R1bGUgPSBjb21wbGV0ZVByb2ZpbGUubW9kdWxlcy5maW5kKChtb2QpID0+IG1vZC5uYW1lID09PSAnTWFya2V0cGxhY2UnKTtcclxuICAgICAgY29uc3QgZmludGVjaFByb2ZpbGVNb2R1bGUgPSBjb21wbGV0ZVByb2ZpbGUubW9kdWxlcy5maW5kKChtb2QpID0+IG1vZC5uYW1lID09PSAnRmludGVjaCcpO1xyXG4gICAgICBjb25zdCBhbGxNb2R1bGVzID0gY29tcGxldGVQcm9maWxlLm1vZHVsZXM7XHJcbiAgICAgIHRoaXMuaGFzRmludGVjaEFkbWluUGVybWlzc2lvbiA9ICEhZmludGVjaFByb2ZpbGVNb2R1bGU/LmFjdGlvbnMuc29tZSgoYWN0KSA9PlxyXG4gICAgICAgIFtcclxuICAgICAgICAgIFByb2ZpbGVNb2R1bGVBY3Rpb25UeXBlLkZJTlRFQ0hfQkFOS19BRE1JTi50b1N0cmluZygpLFxyXG4gICAgICAgICAgUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUuRklOVEVDSF9DUkVESVRfQURNSU4udG9TdHJpbmcoKSxcclxuICAgICAgICBdLmluY2x1ZGVzKGFjdC5uYW1lKVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmhhc01hcmtldHBsYWNlQWRtaW5QZXJtaXNzaW9uID0gISFtYXJrZXRwbGFjZVByb2ZpbGVNb2R1bGU/LmFjdGlvbnMuc29tZShcclxuICAgICAgICAoYWN0KSA9PiBhY3QubmFtZSA9PT0gUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUuQURNSU5fTUFSS0VQTEFDRVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmhhc0FueUZpbnRlY2hQZXJtaXNzaW9uID0gISFmaW50ZWNoUHJvZmlsZU1vZHVsZT8uYWN0aW9ucz8ubGVuZ3RoO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldFByb2ZpbGUoe1xyXG4gICAgICAgIG1hcmtldHBsYWNlOiBtYXJrZXRwbGFjZVByb2ZpbGVNb2R1bGUsXHJcbiAgICAgICAgZmludGVjaDogZmludGVjaFByb2ZpbGVNb2R1bGUsXHJcbiAgICAgICAgYWxsTW9kdWxlcyxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMubW9kdWxlUHJvZmlsZSQubmV4dChhbGxNb2R1bGVzKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVzZXJIYXNQZXJtaXNzaW9uKFxyXG4gICAgYWN0aW9uOiBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZSB8IFByb2ZpbGVNb2R1bGVUeXBlIHwgUHJvZmlsZU1vZHVsZUFjdGlvblR5cGVbXSB8IFByb2ZpbGVNb2R1bGVUeXBlW10gfCB1bmRlZmluZWRcclxuICApIHtcclxuICAgIGlmICghYWN0aW9uKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLm1vZHVsZVByb2ZpbGUkLnZhbHVlKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShhY3Rpb24pKSB7XHJcbiAgICAgIHJldHVybiBhY3Rpb24uc29tZSgoYWN0KSA9PiB7XHJcbiAgICAgICAgaWYgKE9iamVjdC52YWx1ZXMoUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUpLnNvbWUoKHZhbCkgPT4gdmFsID09PSBhY3QpKSB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5tb2R1bGVQcm9maWxlJC52YWx1ZT8uc29tZSgobW9kdWxlKSA9PlxyXG4gICAgICAgICAgICBtb2R1bGUuYWN0aW9ucy5zb21lKChtb2R1bGVBY3Rpb24pID0+IG1vZHVsZUFjdGlvbi5uYW1lID09PSBhY3QpXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKE9iamVjdC52YWx1ZXMoUHJvZmlsZU1vZHVsZVR5cGUpLnNvbWUoKHZhbCkgPT4gdmFsID09PSBhY3QpKSB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5tb2R1bGVQcm9maWxlJC52YWx1ZT8uc29tZSgobW9kdWxlKSA9PiBtb2R1bGUubmFtZSA9PT0gYWN0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoT2JqZWN0LnZhbHVlcyhQcm9maWxlTW9kdWxlQWN0aW9uVHlwZSkuc29tZSgodmFsKSA9PiB2YWwgPT09IGFjdGlvbikpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tb2R1bGVQcm9maWxlJC52YWx1ZS5zb21lKChtb2R1bGUpID0+IG1vZHVsZS5hY3Rpb25zLnNvbWUoKGFjdCkgPT4gYWN0Lm5hbWUgPT09IGFjdGlvbikpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoT2JqZWN0LnZhbHVlcyhQcm9maWxlTW9kdWxlVHlwZSkuc29tZSgodmFsKSA9PiB2YWwgPT09IGFjdGlvbikpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tb2R1bGVQcm9maWxlJC52YWx1ZS5zb21lKChtb2R1bGUpID0+IG1vZHVsZS5uYW1lID09PSBhY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFVzZXJJbmZvKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnk+KGBjb25uZWN0L3VzZXJpbmZvYCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvcHJvZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQTBCLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFJN0csTUFBTSxPQUFPLGNBQWM7SUFjekIsWUFBb0IsSUFBZ0IsRUFBVSxjQUE4QjtRQUF4RCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBYjVELG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQ2xELElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUM1QyxDQUFDO1FBRWMsc0JBQWlCLEdBQUcsSUFBSSxlQUFlLENBQXFCLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZFLHNCQUFpQixHQUFHLElBQUksZUFBZSxDQUVyRCxTQUFTLENBQUMsQ0FBQztRQUNOLDhCQUF5QixHQUFHLEtBQUssQ0FBQztRQUNsQyxrQ0FBNkIsR0FBRyxLQUFLLENBQUM7UUFDdEMsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLGdDQUEyQixHQUFHLEtBQUssQ0FBQztRQUd6QyxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLHlCQUF5QixHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQy9EO1lBQ0UsdUJBQXVCLENBQUMs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QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxFQUFFO2dCQUN4RSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQzthQUN0RztZQUVELElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQyxFQUFFO2dCQUNsRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQzthQUMzRTtTQUNGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFNLGtCQUFrQixDQUFDLENBQUM7SUFDaEQsQ0FBQzs7MkdBNUdVLGNBQWM7K0dBQWQsY0FBYyxjQURELE1BQU07MkZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUHJvZmlsZSwgUHJvZmlsZU1vZHVsZSwgUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUsIFByb2ZpbGVNb2R1bGVUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3Byb2ZpbGUubW9kZWwnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBQcm9maWxlU2VydmljZSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IG1vZHVsZVByb2ZpbGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQcm9maWxlTW9kdWxlW10gfCB1bmRlZmluZWQ+KFxyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRQcm9maWxlKCkuYWxsTW9kdWxlc1xyXG4gICk7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBwcm9maWxlRmlyc3ROYW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG4gIHB1YmxpYyByZWFkb25seSBwcm9maWxlVHlwZUl0ZW5zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XHJcbiAgICB7IHNoaXBwZXI6IG51bWJlcjsgY2FycmllcklkOiBudW1iZXI7IHByb2ZpbGVUeXBlSWQ6IG51bWJlciB9IHwgdW5kZWZpbmVkXHJcbiAgPih1bmRlZmluZWQpO1xyXG4gIHB1YmxpYyBoYXNGaW50ZWNoQWRtaW5QZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc01hcmtldHBsYWNlQWRtaW5QZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc0FueUZpbnRlY2hQZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhhc0FueU1hcmtldHBsYWNlUGVybWlzc2lvbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlKSB7XHJcbiAgICBjb25zdCB7IGZpbnRlY2gsIG1hcmtldHBsYWNlIH0gPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFByb2ZpbGUoKTtcclxuICAgIHRoaXMuaGFzRmludGVjaEFkbWluUGVybWlzc2lvbiA9ICEhZmludGVjaD8uYWN0aW9ucy5zb21lKChhY3QpID0+XHJcbiAgICAgIFtcclxuICAgICAgICBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5GSU5URUNIX0JBTktfQURNSU4udG9TdHJpbmcoKSxcclxuICAgICAgICBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5GSU5URUNIX0NSRURJVF9BRE1JTi50b1N0cmluZygpLFxyXG4gICAgICBdLmluY2x1ZGVzKGFjdC5uYW1lKVxyXG4gICAgKTtcclxuICAgIHRoaXMuaGFzTWFya2V0cGxhY2VBZG1pblBlcm1pc3Npb24gPSAhIW1hcmtldHBsYWNlPy5hY3Rpb25zLnNvbWUoXHJcbiAgICAgIChhY3QpID0+IGFjdC5uYW1lID09PSBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5BRE1JTl9NQVJLRVBMQUNFXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYXNBbnlGaW50ZWNoUGVybWlzc2lvbiA9ICEhZmludGVjaD8uYWN0aW9ucz8ubGVuZ3RoO1xyXG4gICAgdGhpcy5oYXNBbnlNYXJrZXRwbGFjZVBlcm1pc3Npb24gPSAhIW1hcmtldHBsYWNlPy5hY3Rpb25zPy5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VXNlclByb2ZpbGUoKSB7XHJcbiAgICB0aGlzLmh0dHAuZ2V0PGFueT4oJ2Nvbm5lY3QvdXNlcmluZm8nKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmIChyZXNwb25zZS5maXJzdE5hbWUpIHtcclxuICAgICAgICB0aGlzLnByb2ZpbGVGaXJzdE5hbWUkLm5leHQocmVzcG9uc2UuZmlyc3ROYW1lKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgICAgbGV0IGRhdGFPYmplY3QgPSB7XHJcbiAgICAgICAgICBzaGlwcGVyOiByZXNwb25zZT8uc2hpcHBlcixcclxuICAgICAgICAgIGNhcnJpZXJJZDogcmVzcG9uc2U/LmNhcnJpZXJJZCxcclxuICAgICAgICAgIHByb2ZpbGVUeXBlSWQ6IHJlc3BvbnNlPy5wcm9maWxlLnByb2ZpbGVUeXBlSWQsXHJcbiAgICAgICAgICBwcm9maWxlTmFtZTogcmVzcG9uc2U/LnByb2ZpbGUubmFtZSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0U2Vzc2lvbigndXNlckluZm8nLCBkYXRhT2JqZWN0KTtcclxuICAgICAgICB0aGlzLnByb2ZpbGVUeXBlSXRlbnMkLm5leHQoZGF0YU9iamVjdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGNvbXBsZXRlUHJvZmlsZTogUHJvZmlsZSA9IHJlc3BvbnNlLnByb2ZpbGU7XHJcbiAgICAgIGNvbnN0IG1hcmtldHBsYWNlUHJvZmlsZU1vZHVsZSA9IGNvbXBsZXRlUHJvZmlsZS5tb2R1bGVzLmZpbmQoKG1vZCkgPT4gbW9kLm5hbWUgPT09ICdNYXJrZXRwbGFjZScpO1xyXG4gICAgICBjb25zdCBmaW50ZWNoUHJvZmlsZU1vZHVsZSA9IGNvbXBsZXRlUHJvZmlsZS5tb2R1bGVzLmZpbmQoKG1vZCkgPT4gbW9kLm5hbWUgPT09ICdGaW50ZWNoJyk7XHJcbiAgICAgIGNvbnN0IGFsbE1vZHVsZXMgPSBjb21wbGV0ZVByb2ZpbGUubW9kdWxlcztcclxuICAgICAgdGhpcy5oYXNGaW50ZWNoQWRtaW5QZXJtaXNzaW9uID0gISFmaW50ZWNoUHJvZmlsZU1vZHVsZT8uYWN0aW9ucy5zb21lKChhY3QpID0+XHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgUHJvZmlsZU1vZHVsZUFjdGlvblR5cGUuRklOVEVDSF9CQU5LX0FETUlOLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5GSU5URUNIX0NSRURJVF9BRE1JTi50b1N0cmluZygpLFxyXG4gICAgICAgIF0uaW5jbHVkZXMoYWN0Lm5hbWUpXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuaGFzTWFya2V0cGxhY2VBZG1pblBlcm1pc3Npb24gPSAhIW1hcmtldHBsYWNlUHJvZmlsZU1vZHVsZT8uYWN0aW9ucy5zb21lKFxyXG4gICAgICAgIChhY3QpID0+IGFjdC5uYW1lID09PSBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZS5BRE1JTl9NQVJLRVBMQUNFXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuaGFzQW55RmludGVjaFBlcm1pc3Npb24gPSAhIWZpbnRlY2hQcm9maWxlTW9kdWxlPy5hY3Rpb25zPy5sZW5ndGg7XHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0UHJvZmlsZSh7XHJcbiAgICAgICAgbWFya2V0cGxhY2U6IG1hcmtldHBsYWNlUHJvZmlsZU1vZHVsZSxcclxuICAgICAgICBmaW50ZWNoOiBmaW50ZWNoUHJvZmlsZU1vZHVsZSxcclxuICAgICAgICBhbGxNb2R1bGVzLFxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5tb2R1bGVQcm9maWxlJC5uZXh0KGFsbE1vZHVsZXMpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXNlckhhc1Blcm1pc3Npb24oXHJcbiAgICBhY3Rpb246IFByb2ZpbGVNb2R1bGVBY3Rpb25UeXBlIHwgUHJvZmlsZU1vZHVsZVR5cGUgfCBQcm9maWxlTW9kdWxlQWN0aW9uVHlwZVtdIHwgUHJvZmlsZU1vZHVsZVR5cGVbXSB8IHVuZGVmaW5lZFxyXG4gICkge1xyXG4gICAgaWYgKCFhY3Rpb24pIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMubW9kdWxlUHJvZmlsZSQudmFsdWUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGFjdGlvbikpIHtcclxuICAgICAgcmV0dXJuIGFjdGlvbi5zb21lKChhY3QpID0+IHtcclxuICAgICAgICBpZiAoT2JqZWN0LnZhbHVlcyhQcm9maWxlTW9kdWxlQWN0aW9uVHlwZSkuc29tZSgodmFsKSA9PiB2YWwgPT09IGFjdCkpIHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLm1vZHVsZVByb2ZpbGUkLnZhbHVlPy5zb21lKChtb2R1bGUpID0+XHJcbiAgICAgICAgICAgIG1vZHVsZS5hY3Rpb25zLnNvbWUoKG1vZHVsZUFjdGlvbikgPT4gbW9kdWxlQWN0aW9uLm5hbWUgPT09IGFjdClcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoT2JqZWN0LnZhbHVlcyhQcm9maWxlTW9kdWxlVHlwZSkuc29tZSgodmFsKSA9PiB2YWwgPT09IGFjdCkpIHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLm1vZHVsZVByb2ZpbGUkLnZhbHVlPy5zb21lKChtb2R1bGUpID0+IG1vZHVsZS5uYW1lID09PSBhY3QpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChPYmplY3QudmFsdWVzKFByb2ZpbGVNb2R1bGVBY3Rpb25UeXBlKS5zb21lKCh2YWwpID0+IHZhbCA9PT0gYWN0aW9uKSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1vZHVsZVByb2ZpbGUkLnZhbHVlLnNvbWUoKG1vZHVsZSkgPT4gbW9kdWxlLmFjdGlvbnMuc29tZSgoYWN0KSA9PiBhY3QubmFtZSA9PT0gYWN0aW9uKSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChPYmplY3QudmFsdWVzKFByb2ZpbGVNb2R1bGVUeXBlKS5zb21lKCh2YWwpID0+IHZhbCA9PT0gYWN0aW9uKSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1vZHVsZVByb2ZpbGUkLnZhbHVlLnNvbWUoKG1vZHVsZSkgPT4gbW9kdWxlLm5hbWUgPT09IGFjdGlvbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VXNlckluZm8oKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PGFueT4oYGNvbm5lY3QvdXNlcmluZm9gKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,116 @@
1
+ export class CpfCnpjValidator {
2
+ static validateCpfOrCnpj(taxId) {
3
+ taxId = taxId.replace(/[^0-9]+/g, '');
4
+ if (taxId.length == 11) {
5
+ return this.validateCpf(taxId);
6
+ }
7
+ else if (taxId.length == 14) {
8
+ return this.validateCnpj(taxId);
9
+ }
10
+ else {
11
+ return false;
12
+ }
13
+ }
14
+ static validateCpf(cpf) {
15
+ if (!cpf?.trim() || cpf.length !== 11 || !cpf.match('^[0-9]+$')) {
16
+ return false;
17
+ }
18
+ if ([
19
+ '00000000000',
20
+ '11111111111',
21
+ '22222222222',
22
+ '33333333333',
23
+ '44444444444',
24
+ '55555555555',
25
+ '66666666666',
26
+ '77777777777',
27
+ '88888888888',
28
+ '99999999999',
29
+ ].includes(cpf)) {
30
+ return false;
31
+ }
32
+ let num = 0;
33
+ let caracter = '';
34
+ let counter = 10;
35
+ let sum = 0;
36
+ let rest = 0;
37
+ let firstDigit = 0;
38
+ let secondDigit = 0;
39
+ let cpfAux = '';
40
+ cpfAux = cpf.substring(0, 9);
41
+ for (let i = 0; i < 9; i++) {
42
+ caracter = cpfAux.charAt(i);
43
+ num = Number(caracter);
44
+ sum = sum + num * counter;
45
+ counter--;
46
+ }
47
+ rest = sum % 11;
48
+ firstDigit = 11 - rest;
49
+ if (firstDigit > 9) {
50
+ firstDigit = 0;
51
+ }
52
+ counter = 11;
53
+ sum = 0;
54
+ cpfAux = cpfAux + firstDigit;
55
+ for (let i = 0; i < 10; i++) {
56
+ caracter = cpfAux.charAt(i);
57
+ num = Number(caracter);
58
+ sum = sum + num * counter;
59
+ counter--;
60
+ }
61
+ rest = sum % 11;
62
+ secondDigit = 11 - rest;
63
+ if (secondDigit > 9) {
64
+ secondDigit = 0;
65
+ }
66
+ cpfAux = cpfAux + secondDigit;
67
+ return cpf === cpfAux;
68
+ }
69
+ static validateCnpj(cnpj) {
70
+ cnpj = cnpj.replace(/[^\d]+/g, '');
71
+ if (cnpj == '')
72
+ return false;
73
+ if (cnpj.length != 14)
74
+ return false;
75
+ if ([
76
+ '00000000000000',
77
+ '11111111111111',
78
+ '22222222222222',
79
+ '33333333333333',
80
+ '44444444444444',
81
+ '55555555555555',
82
+ '66666666666666',
83
+ '77777777777777',
84
+ '88888888888888',
85
+ '99999999999999',
86
+ ].includes(cnpj))
87
+ return false;
88
+ let size = cnpj.length - 2;
89
+ let numbers = cnpj.substring(0, size);
90
+ let digits = cnpj.substring(size);
91
+ let sum = 0;
92
+ let pos = size - 7;
93
+ for (let i = size; i >= 1; i--) {
94
+ sum += parseInt(numbers.charAt(size - i)) * pos--;
95
+ if (pos < 2)
96
+ pos = 9;
97
+ }
98
+ let resultado = sum % 11 < 2 ? 0 : 11 - (sum % 11);
99
+ if (resultado != parseInt(digits.charAt(0)))
100
+ return false;
101
+ size = size + 1;
102
+ numbers = cnpj.substring(0, size);
103
+ sum = 0;
104
+ pos = size - 7;
105
+ for (let i = size; i >= 1; i--) {
106
+ sum += parseInt(numbers.charAt(size - i)) * pos--;
107
+ if (pos < 2)
108
+ pos = 9;
109
+ }
110
+ resultado = sum % 11 < 2 ? 0 : 11 - (sum % 11);
111
+ if (resultado != parseInt(digits.charAt(1)))
112
+ return false;
113
+ return true;
114
+ }
115
+ }
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3BmLWNucGotdmFsaWRhdG9yLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9jcGYtY25wai12YWxpZGF0b3IudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3BCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFhO1FBQzNDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV0QyxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNoQzthQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxFQUFFLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pDO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBVztRQUNuQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvRCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFDRTtZQUNFLGFBQWE7WUFDYixhQUFhO1lBQ2IsYUFBYTtZQUNiLGFBQWE7WUFDYixhQUFhO1lBQ2IsYUFBYTtZQUNiLGFBQWE7WUFDYixhQUFhO1lBQ2IsYUFBYTtZQUNiLGFBQWE7U0FDZCxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFDZjtZQUNBLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxJQUFJLEdBQUcsR0FBVyxDQUFDLENBQUM7UUFD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LEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDL0MsSUFBSSxTQUFTLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUUxRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDcGZDbnBqVmFsaWRhdG9yIHtcclxuICBwdWJsaWMgc3RhdGljIHZhbGlkYXRlQ3BmT3JDbnBqKHRheElkOiBzdHJpbmcpIHtcclxuICAgIHRheElkID0gdGF4SWQucmVwbGFjZSgvW14wLTldKy9nLCAnJyk7XHJcblxyXG4gICAgaWYgKHRheElkLmxlbmd0aCA9PSAxMSkge1xyXG4gICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUNwZih0YXhJZCk7XHJcbiAgICB9IGVsc2UgaWYgKHRheElkLmxlbmd0aCA9PSAxNCkge1xyXG4gICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUNucGoodGF4SWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB2YWxpZGF0ZUNwZihjcGY6IHN0cmluZykge1xyXG4gICAgaWYgKCFjcGY/LnRyaW0oKSB8fCBjcGYubGVuZ3RoICE9PSAxMSB8fCAhY3BmLm1hdGNoKCdeWzAtOV0rJCcpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIFtcclxuICAgICAgICAnMDAwMDAwMDAwMDAnLFxyXG4gICAgICAgICcxMTExMTExMTExMScsXHJcbiAgICAgICAgJzIyMjIyMjIyMjIyJyxcclxuICAgICAgICAnMzMzMzMzMzMzMzMnLFxyXG4gICAgICAgICc0NDQ0NDQ0NDQ0NCcsXHJcbiAgICAgICAgJzU1NTU1NTU1NTU1JyxcclxuICAgICAgICAnNjY2NjY2NjY2NjYnLFxyXG4gICAgICAgICc3Nzc3Nzc3Nzc3NycsXHJcbiAgICAgICAgJzg4ODg4ODg4ODg4JyxcclxuICAgICAgICAnOTk5OTk5OTk5OTknLFxyXG4gICAgICBdLmluY2x1ZGVzKGNwZilcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBsZXQgbnVtOiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IGNhcmFjdGVyOiBzdHJpbmcgPSAnJztcclxuICAgIGxldCBjb3VudGVyOiBudW1iZXIgPSAxMDtcclxuICAgIGxldCBzdW06IG51bWJlciA9IDA7XHJcbiAgICBsZXQgcmVzdDogbnVtYmVyID0gMDtcclxuICAgIGxldCBmaXJzdERpZ2l0OiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IHNlY29uZERpZ2l0OiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IGNwZkF1eDogc3RyaW5nID0gJyc7XHJcbiAgICBjcGZBdXggPSBjcGYuc3Vic3RyaW5nKDAsIDkpO1xyXG4gICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IDk7IGkrKykge1xyXG4gICAgICBjYXJhY3RlciA9IGNwZkF1eC5jaGFyQXQoaSk7XHJcbiAgICAgIG51bSA9IE51bWJlcihjYXJhY3Rlcik7XHJcbiAgICAgIHN1bSA9IHN1bSArIG51bSAqIGNvdW50ZXI7XHJcbiAgICAgIGNvdW50ZXItLTtcclxuICAgIH1cclxuICAgIHJlc3QgPSBzdW0gJSAxMTtcclxuICAgIGZpcnN0RGlnaXQgPSAxMSAtIHJlc3Q7XHJcbiAgICBpZiAoZmlyc3REaWdpdCA+IDkpIHtcclxuICAgICAgZmlyc3REaWdpdCA9IDA7XHJcbiAgICB9XHJcbiAgICBjb3VudGVyID0gMTE7XHJcbiAgICBzdW0gPSAwO1xyXG4gICAgY3BmQXV4ID0gY3BmQXV4ICsgZmlyc3REaWdpdDtcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCAxMDsgaSsrKSB7XHJcbiAgICAgIGNhcmFjdGVyID0gY3BmQXV4LmNoYXJBdChpKTtcclxuICAgICAgbnVtID0gTnVtYmVyKGNhcmFjdGVyKTtcclxuICAgICAgc3VtID0gc3VtICsgbnVtICogY291bnRlcjtcclxuICAgICAgY291bnRlci0tO1xyXG4gICAgfVxyXG4gICAgcmVzdCA9IHN1bSAlIDExO1xyXG4gICAgc2Vjb25kRGlnaXQgPSAxMSAtIHJlc3Q7XHJcbiAgICBpZiAoc2Vjb25kRGlnaXQgPiA5KSB7XHJcbiAgICAgIHNlY29uZERpZ2l0ID0gMDtcclxuICAgIH1cclxuICAgIGNwZkF1eCA9IGNwZkF1eCArIHNlY29uZERpZ2l0O1xyXG4gICAgcmV0dXJuIGNwZiA9PT0gY3BmQXV4O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB2YWxpZGF0ZUNucGooY25wajogc3RyaW5nKSB7XHJcbiAgICBjbnBqID0gY25wai5yZXBsYWNlKC9bXlxcZF0rL2csICcnKTtcclxuXHJcbiAgICBpZiAoY25waiA9PSAnJykgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmIChjbnBqLmxlbmd0aCAhPSAxNCkgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgW1xyXG4gICAgICAgICcwMDAwMDAwMDAwMDAwMCcsXHJcbiAgICAgICAgJzExMTExMTExMTExMTExJyxcclxuICAgICAgICAnMjIyMjIyMjIyMjIyMjInLFxyXG4gICAgICAgICczMzMzMzMzMzMzMzMzMycsXHJcbiAgICAgICAgJzQ0NDQ0NDQ0NDQ0NDQ0JyxcclxuICAgICAgICAnNTU1NTU1NTU1NTU1NTUnLFxyXG4gICAgICAgICc2NjY2NjY2NjY2NjY2NicsXHJcbiAgICAgICAgJzc3Nzc3Nzc3Nzc3Nzc3JyxcclxuICAgICAgICAnODg4ODg4ODg4ODg4ODgnLFxyXG4gICAgICAgICc5OTk5OTk5OTk5OTk5OScsXHJcbiAgICAgIF0uaW5jbHVkZXMoY25wailcclxuICAgIClcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGxldCBzaXplID0gY25wai5sZW5ndGggLSAyO1xyXG4gICAgbGV0IG51bWJlcnMgPSBjbnBqLnN1YnN0cmluZygwLCBzaXplKTtcclxuICAgIGxldCBkaWdpdHMgPSBjbnBqLnN1YnN0cmluZyhzaXplKTtcclxuICAgIGxldCBzdW0gPSAwO1xyXG4gICAgbGV0IHBvcyA9IHNpemUgLSA3O1xyXG4gICAgZm9yIChsZXQgaSA9IHNpemU7IGkgPj0gMTsgaS0tKSB7XHJcbiAgICAgIHN1bSArPSBwYXJzZUludChudW1iZXJzLmNoYXJBdChzaXplIC0gaSkpICogcG9zLS07XHJcbiAgICAgIGlmIChwb3MgPCAyKSBwb3MgPSA5O1xyXG4gICAgfVxyXG4gICAgbGV0IHJlc3VsdGFkbyA9IHN1bSAlIDExIDwgMiA/IDAgOiAxMSAtIChzdW0gJSAxMSk7XHJcbiAgICBpZiAocmVzdWx0YWRvICE9IHBhcnNlSW50KGRpZ2l0cy5jaGFyQXQoMCkpKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgc2l6ZSA9IHNpemUgKyAxO1xyXG4gICAgbnVtYmVycyA9IGNucGouc3Vic3RyaW5nKDAsIHNpemUpO1xyXG4gICAgc3VtID0gMDtcclxuICAgIHBvcyA9IHNpemUgLSA3O1xyXG4gICAgZm9yIChsZXQgaSA9IHNpemU7IGkgPj0gMTsgaS0tKSB7XHJcbiAgICAgIHN1bSArPSBwYXJzZUludChudW1iZXJzLmNoYXJBdChzaXplIC0gaSkpICogcG9zLS07XHJcbiAgICAgIGlmIChwb3MgPCAyKSBwb3MgPSA5O1xyXG4gICAgfVxyXG4gICAgcmVzdWx0YWRvID0gc3VtICUgMTEgPCAyID8gMCA6IDExIC0gKHN1bSAlIDExKTtcclxuICAgIGlmIChyZXN1bHRhZG8gIT0gcGFyc2VJbnQoZGlnaXRzLmNoYXJBdCgxKSkpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,7 +1,8 @@
1
+ export * from './cpf-cnpj-validator.util';
1
2
  export * from './file.util';
2
3
  export * from './mask.util';
3
4
  export * from './object.util';
4
5
  export * from './string.util';
5
6
  export * from './validation.util';
6
7
  export * from './window.util';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9maWxlLnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL21hc2sudXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vb2JqZWN0LnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0cmluZy51dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uLnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy51dGlsJztcclxuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NwZi1jbnBqLXZhbGlkYXRvci51dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9maWxlLnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL21hc2sudXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vb2JqZWN0LnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0cmluZy51dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uLnV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dpbmRvdy51dGlsJztcclxuIl19