@unipin/angular-applet 18.6.6 → 18.6.7

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.
@@ -58,8 +58,10 @@ export class GridSnapshotComponent {
58
58
  if (edges.length > 0)
59
59
  this.after = pageInfo.endCursor;
60
60
  if (page === 0) {
61
- if (edges.length === 0)
61
+ if (edges.length === 0) {
62
+ this.gridApi.setGridOption('overlayNoRowsTemplate', this.config.noRowText);
62
63
  this.gridApi.showNoRowsOverlay();
64
+ }
63
65
  this.count = totalRecord;
64
66
  }
65
67
  if (!this.config.useTotalRecord && !pageInfo.hasNextPage) {
@@ -67,7 +69,8 @@ export class GridSnapshotComponent {
67
69
  }
68
70
  successCallback(edges, this.count);
69
71
  },
70
- error: () => {
72
+ error: ({ message }) => {
73
+ this.gridApi.setGridOption('overlayNoRowsTemplate', `<span class="f20">${message}</span>`);
71
74
  this.gridApi.hideOverlay();
72
75
  this.gridApi.showNoRowsOverlay();
73
76
  failCallback();
@@ -78,7 +81,7 @@ export class GridSnapshotComponent {
78
81
  this.gridApi.setGridOption('datasource', datasource);
79
82
  }
80
83
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GridSnapshotComponent, deps: [{ token: i1.GridService }], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: GridSnapshotComponent, isStandalone: true, selector: "up-snapshot-grid", inputs: { id: "id", config: "config", rowSelection: "rowSelection" }, outputs: { onRowClick: "onRowClick", onGridReady: "onGridReady", onSelectionChanged: "onSelectionChanged" }, host: { classAttribute: "d-block h-100 w-100" }, ngImport: i0, template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n rowModelType=\"infinite\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i2.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: GridSnapshotComponent, isStandalone: true, selector: "up-snapshot-grid", inputs: { id: "id", config: "config", rowSelection: "rowSelection", getRowClass: "getRowClass" }, outputs: { onRowClick: "onRowClick", onGridReady: "onGridReady", onSelectionChanged: "onSelectionChanged" }, host: { classAttribute: "d-block h-100 w-100" }, ngImport: i0, template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n rowModelType=\"infinite\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i2.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
85
  }
83
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GridSnapshotComponent, decorators: [{
84
87
  type: Component,
@@ -86,7 +89,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
86
89
  class: 'd-block h-100 w-100'
87
90
  }, imports: [
88
91
  AgGridModule
89
- ], template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n rowModelType=\"infinite\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n" }]
92
+ ], template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n rowModelType=\"infinite\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n" }]
90
93
  }], ctorParameters: () => [{ type: i1.GridService }], propDecorators: { id: [{
91
94
  type: Input
92
95
  }], config: [{
@@ -94,6 +97,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
94
97
  args: [{ required: true }]
95
98
  }], rowSelection: [{
96
99
  type: Input
100
+ }], getRowClass: [{
101
+ type: Input
97
102
  }], onRowClick: [{
98
103
  type: Output
99
104
  }], onGridReady: [{
@@ -101,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
101
106
  }], onSelectionChanged: [{
102
107
  type: Output
103
108
  }] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zbmFwc2hvdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZHMvZ3JpZC1zbmFwc2hvdC9ncmlkLXNuYXBzaG90LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXNuYXBzaG90L2dyaWQtc25hcHNob3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkgsT0FBTyxFQUF1QyxjQUFjLEVBQTRGLE1BQU0seUJBQXlCLENBQUM7QUFDeEwsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7O0FBaUIvRSxNQUFNLE9BQU8scUJBQXFCO0lBOEVoQyxZQUNxQixPQUFvQjtRQUFwQixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBekV6QixPQUFFLEdBQXVCLFFBQVEsQ0FBQztRQWFsQyxpQkFBWSxHQUEwQixRQUFRLENBQUM7UUFPckMsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBT25ELGdCQUFXLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFPL0QsdUJBQWtCLEdBQTZDLElBQUksWUFBWSxFQUFFLENBQUM7UUFNNUYsa0JBQWEsR0FBVyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENB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VixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO3dCQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUM7d0JBRWpDLFlBQVksRUFBRSxDQUFDO29CQUNqQixDQUFDO2lCQUNGLENBQUMsQ0FBQztZQUNMLENBQUM7U0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7OEdBbE1VLHFCQUFxQjtrR0FBckIscUJBQXFCLGdUQ3JCbEMsdW5CQWdCQSx5RERFSSxZQUFZOzsyRkFHSCxxQkFBcUI7a0JBYmpDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxxQkFBcUI7cUJBQzdCLFdBQ1E7d0JBQ1AsWUFBWTtxQkFDYjtnRkFRZSxFQUFFO3NCQUFqQixLQUFLO2dCQU80QixNQUFNO3NCQUF2QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFNVCxZQUFZO3NCQUEzQixLQUFLO2dCQU9vQixVQUFVO3NCQUFuQyxNQUFNO2dCQU9tQixXQUFXO3NCQUFwQyxNQUFNO2dCQU9tQixrQkFBa0I7c0JBQTNDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbERlZiwgSURhdGFzb3VyY2UsIElHZXRSb3dzUGFyYW1zLCBNb2R1bGVSZWdpc3RyeSwgR3JpZFJlYWR5RXZlbnQsIERyYWdTdG9wcGVkRXZlbnQsIFNlbGVjdGlvbkNoYW5nZWRFdmVudCwgR3JpZEFwaSwgUGFnaW5hdGlvbkNoYW5nZWRFdmVudCB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9jb3JlJztcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyJztcbmltcG9ydCB7IEluZmluaXRlUm93TW9kZWxNb2R1bGUgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvaW5maW5pdGUtcm93LW1vZGVsJztcbmltcG9ydCB7IEdyaWRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2dyaWQtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VwLXNuYXBzaG90LWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC1zbmFwc2hvdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQtc25hcHNob3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHsgXG4gICAgY2xhc3M6ICdkLWJsb2NrIGgtMTAwIHctMTAwJyBcbiAgfSxcbiAgaW1wb3J0czogW1xuICAgIEFnR3JpZE1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRTbmFwc2hvdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHNwZWNpZnlpbmcgdGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBhZy1HcmlkIGNvbXBvbmVudC5cbiAgICogQHR5cGUge2BncmlkLSR7IHN0cmluZyB9YH1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBpZDogYGdyaWQtJHsgc3RyaW5nIH1gID0gJ2dyaWQtcyc7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciB0aGUgY29uZmlndXJhdGlvbiBvYmplY3QgZGVmaW5pbmcgdGhlIGFnLUdyaWQgcHJvcGVydGllcy5cbiAgICogQHR5cGUge0dyaWRDb25maWd9XG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgcHVibGljIGNvbmZpZyE6IEdyaWRDb25maWc7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciBzcGVjaWZ5aW5nIHRoZSByb3cgc2VsZWN0aW9uIG1vZGUuIEl0IGNhbiBiZSAnc2luZ2xlJyBvciAnbXVsdGlwbGUnLlxuICAgKiBAdHlwZSB7KCdzaW5nbGUnIHwgJ211bHRpcGxlJyl9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcm93U2VsZWN0aW9uOiAnc2luZ2xlJyB8ICdtdWx0aXBsZScgPSAnc2luZ2xlJztcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gYSByb3cgaW4gdGhlIGFnLUdyaWQgaXMgY2xpY2tlZC5cbiAgICogRW1pdHMgdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxhbnk+fVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBvblJvd0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gdGhlIGFnLUdyaWQgaXMgcmVhZHkuXG4gICAqIEVtaXRzIGEgYEdyaWRSZWFkeUV2ZW50YCBvYmplY3QuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8R3JpZFJlYWR5RXZlbnQ+fVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBvbkdyaWRSZWFkeTogRXZlbnRFbWl0dGVyPEdyaWRSZWFkeUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gdGhlIHNlbGVjdGlvbiBpbiB0aGUgYWctR3JpZCBjaGFuZ2VzLlxuICAgKiBFbWl0cyBhIGBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55PmAgb2JqZWN0LlxuICAgKiBAdHlwZSB7RXZlbnRFbWl0dGVyPFNlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgb25TZWxlY3Rpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGNvbHVtbiBkZWZpbml0aW9uIGZvciB0aGUgYWctR3JpZC5cbiAgICogQHR5cGUge0NvbERlZn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkZWZhdWx0Q29sRGVmOiBDb2xEZWYgPSB7IG1pbldpZHRoOiAyMDAsIGZsZXg6IDEsIHNvcnRhYmxlOiB0cnVlLCByZXNpemFibGU6IHRydWUsIHNvcnRpbmdPcmRlcjogWyAnYXNjJywgJ2Rlc2MnIF0sIGNlbGxTdHlsZTogeyB0ZXh0QWxpZ246ICdsZWZ0JyB9fTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHNvcnRpbmcgaW5mb3JtYXRpb24uXG4gICAqIEB0eXBlIHt7IG9yZGVyQnk6IHN0cmluZywgb3JkZXI6IHN0cmluZyB9fVxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNvcnQ6IHsgb3JkZXJCeTogc3RyaW5nLCBvcmRlcjogc3RyaW5nIH0gPSB7IG9yZGVyOiAnJywgb3JkZXJCeTogJycgfTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSB0b3RhbCBjb3VudCBvZiByZWNvcmRzLlxuICAgKiBAdHlwZSB7bnVtYmVyIHwgdW5kZWZpbmVkfVxuICAgKi9cbiAgcHJvdGVjdGVkIGNvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBQcm90ZWN0ZWQgdmFyaWFibGUgdG8gc3RvcmUgdGhlIGFnLUdyaWQgQVBJLlxuICAgKiBAdHlwZSB7R3JpZEFwaX1cbiAgICovXG4gIHByb3RlY3RlZCBncmlkQXBpITogR3JpZEFwaTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSBzdWJzY3JpcHRpb24gdG8gZGF0YSByZXRyaWV2YWwuXG4gICAqIEB0eXBlIHtTdWJzY3JpcHRpb24gfCB1bmRlZmluZWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgc3Vicz86IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSBjdXJzb3IgZm9yIHBhZ2luYXRpbmcgc25hcHNob3QgZGF0YS5cbiAgICogQHR5cGUge3N0cmluZyB8IG51bGx9XG4gICAqL1xuICBwcm90ZWN0ZWQgYWZ0ZXI/OiBzdHJpbmcgfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBHcmlkU2VydmljZVxuICApIHtcbiAgICBNb2R1bGVSZWdpc3RyeS5yZWdpc3RlcihJbmZpbml0ZVJvd01vZGVsTW9kdWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBpbml0aWFsaXplIHRoZSBjb21wb25lbnQuXG4gICAqIFNldHMgZGVmYXVsdCB2YWx1ZXMgZm9yIHJvd1BlclBhZ2UgYW5kIG5vUm93VGV4dCBwcm9wZXJ0aWVzIGluIHRoZSBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWR7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy5yb3dQZXJQYWdlKSB0aGlzLmNvbmZpZy5yb3dQZXJQYWdlID0gNTA7XG5cbiAgICB0aGlzLmNvbmZpZy5ub1Jvd1RleHQgPSBgPHNwYW4gY2xhc3M9XCJmMjBcIj4keyB0aGlzLmNvbmZpZy5ub1Jvd1RleHQ/PyAnRGF0YSBub3QgZm91bmQnIH08L3NwYW4+YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBoYW5kbGUgY29tcG9uZW50IGRlc3RydWN0aW9uLlxuICAgKiBVbnN1YnNjcmliZXMgZnJvbSBkYXRhIHJldHJpZXZhbCBzdWJzY3JpcHRpb25zLlxuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWR7IHRoaXMuc3Vicz8udW5zdWJzY3JpYmUoKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBjbGlja2luZyBhIHJvdyBpbiB0aGUgYWctR3JpZC5cbiAgICogRW1pdHMgdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICogQHBhcmFtIHthbnl9IGRhdGEgLSBEYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgY2xpY2tlZCByb3cuXG4gICAqL1xuICBwdWJsaWMgY2xpY2tSb3coZGF0YTogYW55KTogdm9pZHsgdGhpcy5vblJvd0NsaWNrLmVtaXQoZGF0YS5ub2RlKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciB3aGVuIGNvbHVtbiBkcmFnIHN0b3BzIGluIHRoZSBhZy1HcmlkLlxuICAgKiBTYXZlcyB0aGUgY29sdW1uIHN0YXRlIHRvIGxvY2FsIHN0b3JhZ2UuXG4gICAqIEBwYXJhbSB7RHJhZ1N0b3BwZWRFdmVudH0gcGFyYW0wIC0gRHJhZ1N0b3BwZWRFdmVudCBvYmplY3QgY29udGFpbmluZyBBUEkgaW5mb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgZHJhZ0NvbHVtbih7IGFwaSB9OiBEcmFnU3RvcHBlZEV2ZW50KTogdm9pZHsgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5pZCwgSlNPTi5zdHJpbmdpZnkoYXBpLmdldENvbHVtblN0YXRlKCkpKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBzZWxlY3Rpb24gY2hhbmdlIGluIHRoZSBhZy1HcmlkLlxuICAgKiBFbWl0cyBhIGBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55PmAgb2JqZWN0LlxuICAgKiBAcGFyYW0ge1NlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+fSBkYXRhIC0gU2VsZWN0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VTZWxlY3RlZChkYXRhOiBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pik6IHZvaWR7IHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoZGF0YSk7IH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgcGFnaW5hdGlvbiBjaGFuZ2UgaW4gdGhlIGFnLUdyaWQuXG4gICAqIFVwZGF0ZXMgdGhlIHJvd1BlclBhZ2UgcHJvcGVydHkgaW4gdGhlIGNvbmZpZ3VyYXRpb24gYmFzZWQgb24gdGhlIG5ldyBwYWdlIHNpemUuXG4gICAqIEBwYXJhbSB7UGFnaW5hdGlvbkNoYW5nZWRFdmVudH0gZXYgLSBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdpbmF0aW9uKGV2OiBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50KTogdm9pZHtcbiAgICBpZiAoZXYubmV3UGFnZVNpemUpIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UgPSB0aGlzLmdyaWRBcGkucGFnaW5hdGlvbkdldFBhZ2VTaXplKCk7XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3Igc2V0dGluZyB0aGUgZGF0YXNvdXJjZSB3aGVuIHRoZSBhZy1HcmlkIGlzIHJlYWR5LlxuICAgKiBFbWl0cyB0aGUgb25HcmlkUmVhZHkgZXZlbnQgYW5kIHNldHMgdGhlIEFQSSBpbiB0aGUgR3JpZFNlcnZpY2UuXG4gICAqIEFwcGxpZXMgY29sdW1uIHN0YXRlIGZyb20gbG9jYWwgc3RvcmFnZSBhbmQgcmVzZXRzIHRoZSBncmlkLlxuICAgKiBAcGFyYW0ge0dyaWRSZWFkeUV2ZW50fSBldiAtIEdyaWRSZWFkeUV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBzZXREYXRhc291cmNlKGV2OiBHcmlkUmVhZHlFdmVudCk6IHZvaWR7XG4gICAgdGhpcy5ncmlkQXBpID0gZXYuYXBpO1xuICAgIHRoaXMub25HcmlkUmVhZHkuZW1pdChldik7XG4gICAgdGhpcy5zZXJ2aWNlLnNldEFwaSh0aGlzLmlkLCB0aGlzLmdyaWRBcGkpO1xuXG4gICAgY29uc3Qgc3RhdGUgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuaWQpIGFzIGFueSk7XG4gICAgaWYgKHN0YXRlKSBldi5hcGkuYXBwbHlDb2x1bW5TdGF0ZSh7IHN0YXRlLCBhcHBseU9yZGVyOiB0cnVlIH0pO1xuXG4gICAgdGhpcy5yZXNldCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgZGF0YXNvdXJjZSBmb3Igc25hcHNob3QgZGF0YS5cbiAgICogUmV0cmlldmVzIHJvd3MgYXN5bmNocm9ub3VzbHkgYmFzZWQgb24gcGFnaW5hdGlvbiBhbmQgc29ydGluZy5cbiAgICogVXBkYXRlcyB0aGUgY291bnQgb2YgcmVjb3JkcyBhbmQgY2FsbHMgc3VjY2VzcyBvciBmYWlsIGNhbGxiYWNrcyBhY2NvcmRpbmdseS5cbiAgICovXG4gIHB1YmxpYyByZXNldCgpOiB2b2lke1xuICAgIGNvbnN0IGRhdGFzb3VyY2U6IElEYXRhc291cmNlID0ge1xuICAgICAgZ2V0Um93czogKHsgc29ydE1vZGVsOiBbeyBjb2xJZCwgc29ydCB9XSwgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsQ2FsbGJhY2sgfTogSUdldFJvd3NQYXJhbXMpID0+IHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dMb2FkaW5nT3ZlcmxheSgpO1xuXG4gICAgICAgIGlmIChjb2xJZCAhPT0gdGhpcy5zb3J0Lm9yZGVyQnkgfHwgc29ydCAhPT0gdGhpcy5zb3J0Lm9yZGVyKSB7XG4gICAgICAgICAgdGhpcy5zb3J0Lm9yZGVyID0gc29ydDtcbiAgICAgICAgICB0aGlzLnNvcnQub3JkZXJCeSA9IGNvbElkO1xuXG4gICAgICAgICAgdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25Hb1RvRmlyc3RQYWdlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYWdlID0gdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25HZXRDdXJyZW50UGFnZSgpO1xuICAgICAgICBpZiAocGFnZSA9PT0gMCkgdGhpcy5hZnRlciA9IG51bGw7XG5cbiAgICAgICAgdGhpcy5zdWJzID0gdGhpcy5jb25maWcuZ2V0RGF0YVNuYXBzaG90ISh0aGlzLmNvbmZpZy5yb3dQZXJQYWdlISwgY29sSWQsIHNvcnQsIHRoaXMuYWZ0ZXIpLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogKHsgZGF0YSwgdG90YWxSZWNvcmQgfSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLmhpZGVPdmVybGF5KCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHsgZWRnZXMsIHBhZ2VJbmZvIH0gPSBkYXRhO1xuICAgICAgICAgICAgaWYgKGVkZ2VzLmxlbmd0aCA+IDApIHRoaXMuYWZ0ZXIgPSBwYWdlSW5mby5lbmRDdXJzb3I7XG5cbiAgICAgICAgICAgIGlmIChwYWdlID09PSAwKSB7XG4gICAgICAgICAgICAgIGlmIChlZGdlcy5sZW5ndGggPT09IDApIHRoaXMuZ3JpZEFwaS5zaG93Tm9Sb3dzT3ZlcmxheSgpO1xuICAgICAgICAgICAgICB0aGlzLmNvdW50ID0gdG90YWxSZWNvcmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghdGhpcy5jb25maWcudXNlVG90YWxSZWNvcmQgJiYgIXBhZ2VJbmZvLmhhc05leHRQYWdlKSB7XG4gICAgICAgICAgICAgIHRoaXMuY291bnQgPSAocGFnZSAqIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UhKSArIGVkZ2VzLmxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjayhlZGdlcywgdGhpcy5jb3VudCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLmhpZGVPdmVybGF5KCk7XG4gICAgICAgICAgICB0aGlzLmdyaWRBcGkuc2hvd05vUm93c092ZXJsYXkoKTtcblxuICAgICAgICAgICAgZmFpbENhbGxiYWNrKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMuZ3JpZEFwaS5zZXRHcmlkT3B0aW9uKCdkYXRhc291cmNlJywgZGF0YXNvdXJjZSk7XG4gIH1cbn1cbiIsIjxhZy1ncmlkLWFuZ3VsYXIgY2xhc3M9XCJhZy10aGVtZS1iYWxoYW0gaC0xMDBcIlxuICAgIHJvd01vZGVsVHlwZT1cImluZmluaXRlXCJcbiAgICBbcGFnaW5hdGlvbl09XCJ0cnVlXCJcbiAgICBbYW5pbWF0ZVJvd3NdPVwidHJ1ZVwiXG4gICAgW3Jvd1NlbGVjdGlvbl09XCJyb3dTZWxlY3Rpb25cIlxuICAgIFtjb2x1bW5EZWZzXT1cImNvbmZpZy5jb2xEZWZzXCJcbiAgICBbZGVmYXVsdENvbERlZl09XCJkZWZhdWx0Q29sRGVmXCJcbiAgICBbY2FjaGVCbG9ja1NpemVdPVwiY29uZmlnLnJvd1BlclBhZ2VcIlxuICAgIFtwYWdpbmF0aW9uUGFnZVNpemVdPVwiY29uZmlnLnJvd1BlclBhZ2VcIlxuICAgIFtvdmVybGF5Tm9Sb3dzVGVtcGxhdGVdPVwiY29uZmlnLm5vUm93VGV4dFwiXG4gICAgKGRyYWdTdG9wcGVkKT1cImRyYWdDb2x1bW4oJGV2ZW50KVwiXG4gICAgKGdyaWRSZWFkeSk9XCJzZXREYXRhc291cmNlKCRldmVudClcIlxuICAgIChyb3dDbGlja2VkKT1cImNsaWNrUm93KCRldmVudC5kYXRhKVwiXG4gICAgKHNlbGVjdGlvbkNoYW5nZWQpPVwiY2hhbmdlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgKHBhZ2luYXRpb25DaGFuZ2VkKT1cImNoYW5nZVBhZ2luYXRpb24oJGV2ZW50KVwiXG4vPlxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1zbmFwc2hvdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZHMvZ3JpZC1zbmFwc2hvdC9ncmlkLXNuYXBzaG90LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXNuYXBzaG90L2dyaWQtc25hcHNob3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkgsT0FBTyxFQUF1QyxjQUFjLEVBQXFILE1BQU0seUJBQXlCLENBQUM7QUFDak4sT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7O0FBaUIvRSxNQUFNLE9BQU8scUJBQXFCO0lBc0ZoQyxZQUNxQixPQUFvQjtRQUFwQixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBakZ6QixPQUFFLEdBQXVCLFFBQVEsQ0FBQztRQWFsQyxpQkFBWSxHQUEwQixRQUFRLENBQUM7UUFlckMsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBT25ELGdCQUFXLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFPL0QsdUJBQWtCLEdBQTZDLElBQUksWUFBWSxFQUFFLENBQUM7UUFNNUYsa0JBQWEsR0FBVyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsRUFBQyxDQUFDO1FBTW5KLFNBQUksR0FBdUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQztRQTZCdkYsY0FBYyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFNTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUV6RCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxxQkFBc0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLElBQUcsZ0JBQWlCLFNBQVMsQ0FBQztJQUNuRyxDQUFDO0lBTU0sV0FBVyxLQUFVLElBQUksQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBT2hELFFBQVEsQ0FBQyxJQUFTLElBQVMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQU83RCxVQUFVLENBQUMsRUFBRSxHQUFHLEVBQW9CLElBQVMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFPbkgsY0FBYyxDQUFDLElBQWdDLElBQVMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFPN0YsZ0JBQWdCLENBQUMsRUFBMEI7UUFDaEQsSUFBSSxFQUFFLENBQUMsV0FBVztZQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNwRixDQUFDO0lBUU0sYUFBYSxDQUFDLEVBQWtCO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBUSxDQUFDLENBQUM7UUFDL0QsSUFBSSxLQUFLO1lBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBT00sS0FBSztRQUNWLE1BQU0sVUFBVSxHQUFnQjtZQUM5QixPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBa0IsRUFBRSxFQUFFO2dCQUMzRixJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBRWxDLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztvQkFFMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO2dCQUN6QyxDQUFDO2dCQUVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztnQkFDckQsSUFBSSxJQUFJLEtBQUssQ0FBQztvQkFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztnQkFFbEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFXLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUNuRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFO3dCQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO3dCQUUzQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQzt3QkFDakMsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7NEJBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDO3dCQUV0RCxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQzs0QkFDZixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFDLENBQUM7Z0NBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7Z0NBQzNFLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzs0QkFDbkMsQ0FBQzs0QkFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQzt3QkFDM0IsQ0FBQzt3QkFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7NEJBQ3pELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFXLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO3dCQUMvRCxDQUFDO3dCQUNELGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNyQyxDQUFDO29CQUNELEtBQUssRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRTt3QkFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsdUJBQXVCLEVBQUUscUJBQXNCLE9BQVEsU0FBUyxDQUFDLENBQUM7d0JBRTdGLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7d0JBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzt3QkFDakMsWUFBWSxFQUFFLENBQUM7b0JBQ2pCLENBQUM7aUJBQ0YsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUNGLENBQUM7UUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDdkQsQ0FBQzs4R0E5TVUscUJBQXFCO2tHQUFyQixxQkFBcUIsNFVDckJsQywwcEJBaUJBLHlERENJLFlBQVk7OzJGQUdILHFCQUFxQjtrQkFiakMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLHFCQUFxQjtxQkFDN0IsV0FDUTt3QkFDUCxZQUFZO3FCQUNiO2dGQVFlLEVBQUU7c0JBQWpCLEtBQUs7Z0JBTzRCLE1BQU07c0JBQXZDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU1ULFlBQVk7c0JBQTNCLEtBQUs7Z0JBUVUsV0FBVztzQkFBMUIsS0FBSztnQkFPb0IsVUFBVTtzQkFBbkMsTUFBTTtnQkFPbUIsV0FBVztzQkFBcEMsTUFBTTtnQkFPbUIsa0JBQWtCO3NCQUEzQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb2xEZWYsIElEYXRhc291cmNlLCBJR2V0Um93c1BhcmFtcywgTW9kdWxlUmVnaXN0cnksIEdyaWRSZWFkeUV2ZW50LCBEcmFnU3RvcHBlZEV2ZW50LCBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQsIEdyaWRBcGksIFBhZ2luYXRpb25DaGFuZ2VkRXZlbnQsIFJvd0NsYXNzUGFyYW1zLCBSb3dOb2RlIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2NvcmUnO1xuaW1wb3J0IHsgQWdHcmlkTW9kdWxlIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXInO1xuaW1wb3J0IHsgSW5maW5pdGVSb3dNb2RlbE1vZHVsZSB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9pbmZpbml0ZS1yb3ctbW9kZWwnO1xuaW1wb3J0IHsgR3JpZENvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMvZ3JpZC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZ3JpZC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndXAtc25hcHNob3QtZ3JpZCcsXG4gIHN0eWxlVXJsOiAnLi9ncmlkLXNuYXBzaG90LmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtc25hcHNob3QuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBcbiAgICBjbGFzczogJ2QtYmxvY2sgaC0xMDAgdy0xMDAnIFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgQWdHcmlkTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgR3JpZFNuYXBzaG90Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3Igc3BlY2lmeWluZyB0aGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGFnLUdyaWQgY29tcG9uZW50LlxuICAgKiBAdHlwZSB7YGdyaWQtJHsgc3RyaW5nIH1gfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGlkOiBgZ3JpZC0keyBzdHJpbmcgfWAgPSAnZ3JpZC1zJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCBkZWZpbmluZyB0aGUgYWctR3JpZCBwcm9wZXJ0aWVzLlxuICAgKiBAdHlwZSB7R3JpZENvbmZpZ31cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwdWJsaWMgY29uZmlnITogR3JpZENvbmZpZztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHNwZWNpZnlpbmcgdGhlIHJvdyBzZWxlY3Rpb24gbW9kZS4gSXQgY2FuIGJlICdzaW5nbGUnIG9yICdtdWx0aXBsZScuXG4gICAqIEB0eXBlIHsoJ3NpbmdsZScgfCAnbXVsdGlwbGUnKX1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByb3dTZWxlY3Rpb246ICdzaW5nbGUnIHwgJ211bHRpcGxlJyA9ICdzaW5nbGUnO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB2ZXJzaW9uIG9mIHByb3BlcnR5IGByb3dDbGFzc2AgdG8gc2V0IGNsYXNzKGVzKSBmb3IgZWFjaCByb3cgaW5kaXZpZHVhbGx5LiBcbiAgICogRnVuY3Rpb24gc2hvdWxkIHJldHVybiBlaXRoZXIgYSBzdHJpbmcgKGNsYXNzIG5hbWUpLCBhcnJheSBvZiBzdHJpbmdzIChhcnJheSBvZiBjbGFzcyBuYW1lcykgb3IgdW5kZWZpbmVkIGZvciBubyBjbGFzcy5cbiAgICogQHR5cGUgeyBSb3dDbGFzc1BhcmFtczxURGF0YSA9IGFueSwgVENvbnRleHQgPSBhbnk+IH1cbiAgICogQHJldHVybnMgeyBzdHJpbmcgfVxuICAgKi8gXG4gIEBJbnB1dCgpIHB1YmxpYyBnZXRSb3dDbGFzczogKChwYXJhbXM6IFJvd0NsYXNzUGFyYW1zPFJvd05vZGUsIGFueT4pID0+IHN0cmluZykgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIE91dHB1dCBldmVudCBlbWl0dGVyIHRyaWdnZXJlZCB3aGVuIGEgcm93IGluIHRoZSBhZy1HcmlkIGlzIGNsaWNrZWQuXG4gICAqIEVtaXRzIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgY2xpY2tlZCByb3cuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8YW55Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgb25Sb3dDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIE91dHB1dCBldmVudCBlbWl0dGVyIHRyaWdnZXJlZCB3aGVuIHRoZSBhZy1HcmlkIGlzIHJlYWR5LlxuICAgKiBFbWl0cyBhIGBHcmlkUmVhZHlFdmVudGAgb2JqZWN0LlxuICAgKiBAdHlwZSB7RXZlbnRFbWl0dGVyPEdyaWRSZWFkeUV2ZW50Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgb25HcmlkUmVhZHk6IEV2ZW50RW1pdHRlcjxHcmlkUmVhZHlFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIE91dHB1dCBldmVudCBlbWl0dGVyIHRyaWdnZXJlZCB3aGVuIHRoZSBzZWxlY3Rpb24gaW4gdGhlIGFnLUdyaWQgY2hhbmdlcy5cbiAgICogRW1pdHMgYSBgU2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT5gIG9iamVjdC5cbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pj59XG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IG9uU2VsZWN0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFNlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogRGVmYXVsdCBjb2x1bW4gZGVmaW5pdGlvbiBmb3IgdGhlIGFnLUdyaWQuXG4gICAqIEB0eXBlIHtDb2xEZWZ9XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVmYXVsdENvbERlZjogQ29sRGVmID0geyBtaW5XaWR0aDogMjAwLCBmbGV4OiAxLCBzb3J0YWJsZTogdHJ1ZSwgcmVzaXphYmxlOiB0cnVlLCBzb3J0aW5nT3JkZXI6IFsgJ2FzYycsICdkZXNjJyBdLCBjZWxsU3R5bGU6IHsgdGV4dEFsaWduOiAnbGVmdCcgfX07XG5cbiAgLyoqXG4gICAqIFByb3RlY3RlZCB2YXJpYWJsZSB0byBzdG9yZSBzb3J0aW5nIGluZm9ybWF0aW9uLlxuICAgKiBAdHlwZSB7eyBvcmRlckJ5OiBzdHJpbmcsIG9yZGVyOiBzdHJpbmcgfX1cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBzb3J0OiB7IG9yZGVyQnk6IHN0cmluZywgb3JkZXI6IHN0cmluZyB9ID0geyBvcmRlcjogJycsIG9yZGVyQnk6ICcnIH07XG4gIFxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSB0b3RhbCBjb3VudCBvZiByZWNvcmRzLlxuICAgKiBAdHlwZSB7bnVtYmVyIHwgdW5kZWZpbmVkfVxuICAgKi9cbiAgcHJvdGVjdGVkIGNvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBQcm90ZWN0ZWQgdmFyaWFibGUgdG8gc3RvcmUgdGhlIGFnLUdyaWQgQVBJLlxuICAgKiBAdHlwZSB7R3JpZEFwaX1cbiAgICovXG4gIHByb3RlY3RlZCBncmlkQXBpITogR3JpZEFwaTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSBzdWJzY3JpcHRpb24gdG8gZGF0YSByZXRyaWV2YWwuXG4gICAqIEB0eXBlIHtTdWJzY3JpcHRpb24gfCB1bmRlZmluZWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgc3Vicz86IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSBjdXJzb3IgZm9yIHBhZ2luYXRpbmcgc25hcHNob3QgZGF0YS5cbiAgICogQHR5cGUge3N0cmluZyB8IG51bGx9XG4gICAqL1xuICBwcm90ZWN0ZWQgYWZ0ZXI/OiBzdHJpbmcgfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBHcmlkU2VydmljZVxuICApIHtcbiAgICBNb2R1bGVSZWdpc3RyeS5yZWdpc3RlcihJbmZpbml0ZVJvd01vZGVsTW9kdWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBpbml0aWFsaXplIHRoZSBjb21wb25lbnQuXG4gICAqIFNldHMgZGVmYXVsdCB2YWx1ZXMgZm9yIHJvd1BlclBhZ2UgYW5kIG5vUm93VGV4dCBwcm9wZXJ0aWVzIGluIHRoZSBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWR7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy5yb3dQZXJQYWdlKSB0aGlzLmNvbmZpZy5yb3dQZXJQYWdlID0gNTA7XG5cbiAgICB0aGlzLmNvbmZpZy5ub1Jvd1RleHQgPSBgPHNwYW4gY2xhc3M9XCJmMjBcIj4keyB0aGlzLmNvbmZpZy5ub1Jvd1RleHQ/PyAnRGF0YSBub3QgZm91bmQnIH08L3NwYW4+YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBoYW5kbGUgY29tcG9uZW50IGRlc3RydWN0aW9uLlxuICAgKiBVbnN1YnNjcmliZXMgZnJvbSBkYXRhIHJldHJpZXZhbCBzdWJzY3JpcHRpb25zLlxuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWR7IHRoaXMuc3Vicz8udW5zdWJzY3JpYmUoKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBjbGlja2luZyBhIHJvdyBpbiB0aGUgYWctR3JpZC5cbiAgICogRW1pdHMgdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICogQHBhcmFtIHthbnl9IGRhdGEgLSBEYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgY2xpY2tlZCByb3cuXG4gICAqL1xuICBwdWJsaWMgY2xpY2tSb3coZGF0YTogYW55KTogdm9pZHsgdGhpcy5vblJvd0NsaWNrLmVtaXQoZGF0YS5ub2RlKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciB3aGVuIGNvbHVtbiBkcmFnIHN0b3BzIGluIHRoZSBhZy1HcmlkLlxuICAgKiBTYXZlcyB0aGUgY29sdW1uIHN0YXRlIHRvIGxvY2FsIHN0b3JhZ2UuXG4gICAqIEBwYXJhbSB7RHJhZ1N0b3BwZWRFdmVudH0gcGFyYW0wIC0gRHJhZ1N0b3BwZWRFdmVudCBvYmplY3QgY29udGFpbmluZyBBUEkgaW5mb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgZHJhZ0NvbHVtbih7IGFwaSB9OiBEcmFnU3RvcHBlZEV2ZW50KTogdm9pZHsgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5pZCwgSlNPTi5zdHJpbmdpZnkoYXBpLmdldENvbHVtblN0YXRlKCkpKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBzZWxlY3Rpb24gY2hhbmdlIGluIHRoZSBhZy1HcmlkLlxuICAgKiBFbWl0cyBhIGBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55PmAgb2JqZWN0LlxuICAgKiBAcGFyYW0ge1NlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+fSBkYXRhIC0gU2VsZWN0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VTZWxlY3RlZChkYXRhOiBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pik6IHZvaWR7IHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoZGF0YSk7IH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgcGFnaW5hdGlvbiBjaGFuZ2UgaW4gdGhlIGFnLUdyaWQuXG4gICAqIFVwZGF0ZXMgdGhlIHJvd1BlclBhZ2UgcHJvcGVydHkgaW4gdGhlIGNvbmZpZ3VyYXRpb24gYmFzZWQgb24gdGhlIG5ldyBwYWdlIHNpemUuXG4gICAqIEBwYXJhbSB7UGFnaW5hdGlvbkNoYW5nZWRFdmVudH0gZXYgLSBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdpbmF0aW9uKGV2OiBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50KTogdm9pZHtcbiAgICBpZiAoZXYubmV3UGFnZVNpemUpIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UgPSB0aGlzLmdyaWRBcGkucGFnaW5hdGlvbkdldFBhZ2VTaXplKCk7XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3Igc2V0dGluZyB0aGUgZGF0YXNvdXJjZSB3aGVuIHRoZSBhZy1HcmlkIGlzIHJlYWR5LlxuICAgKiBFbWl0cyB0aGUgb25HcmlkUmVhZHkgZXZlbnQgYW5kIHNldHMgdGhlIEFQSSBpbiB0aGUgR3JpZFNlcnZpY2UuXG4gICAqIEFwcGxpZXMgY29sdW1uIHN0YXRlIGZyb20gbG9jYWwgc3RvcmFnZSBhbmQgcmVzZXRzIHRoZSBncmlkLlxuICAgKiBAcGFyYW0ge0dyaWRSZWFkeUV2ZW50fSBldiAtIEdyaWRSZWFkeUV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBzZXREYXRhc291cmNlKGV2OiBHcmlkUmVhZHlFdmVudCk6IHZvaWR7XG4gICAgdGhpcy5ncmlkQXBpID0gZXYuYXBpO1xuICAgIHRoaXMub25HcmlkUmVhZHkuZW1pdChldik7XG4gICAgdGhpcy5zZXJ2aWNlLnNldEFwaSh0aGlzLmlkLCB0aGlzLmdyaWRBcGkpO1xuXG4gICAgY29uc3Qgc3RhdGUgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMuaWQpIGFzIGFueSk7XG4gICAgaWYgKHN0YXRlKSBldi5hcGkuYXBwbHlDb2x1bW5TdGF0ZSh7IHN0YXRlLCBhcHBseU9yZGVyOiB0cnVlIH0pO1xuXG4gICAgdGhpcy5yZXNldCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgZGF0YXNvdXJjZSBmb3Igc25hcHNob3QgZGF0YS5cbiAgICogUmV0cmlldmVzIHJvd3MgYXN5bmNocm9ub3VzbHkgYmFzZWQgb24gcGFnaW5hdGlvbiBhbmQgc29ydGluZy5cbiAgICogVXBkYXRlcyB0aGUgY291bnQgb2YgcmVjb3JkcyBhbmQgY2FsbHMgc3VjY2VzcyBvciBmYWlsIGNhbGxiYWNrcyBhY2NvcmRpbmdseS5cbiAgICovXG4gIHB1YmxpYyByZXNldCgpOiB2b2lke1xuICAgIGNvbnN0IGRhdGFzb3VyY2U6IElEYXRhc291cmNlID0ge1xuICAgICAgZ2V0Um93czogKHsgc29ydE1vZGVsOiBbeyBjb2xJZCwgc29ydCB9XSwgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsQ2FsbGJhY2sgfTogSUdldFJvd3NQYXJhbXMpID0+IHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dMb2FkaW5nT3ZlcmxheSgpO1xuXG4gICAgICAgIGlmIChjb2xJZCAhPT0gdGhpcy5zb3J0Lm9yZGVyQnkgfHwgc29ydCAhPT0gdGhpcy5zb3J0Lm9yZGVyKSB7XG4gICAgICAgICAgdGhpcy5zb3J0Lm9yZGVyID0gc29ydDtcbiAgICAgICAgICB0aGlzLnNvcnQub3JkZXJCeSA9IGNvbElkO1xuXG4gICAgICAgICAgdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25Hb1RvRmlyc3RQYWdlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYWdlID0gdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25HZXRDdXJyZW50UGFnZSgpO1xuICAgICAgICBpZiAocGFnZSA9PT0gMCkgdGhpcy5hZnRlciA9IG51bGw7XG5cbiAgICAgICAgdGhpcy5zdWJzID0gdGhpcy5jb25maWcuZ2V0RGF0YVNuYXBzaG90ISh0aGlzLmNvbmZpZy5yb3dQZXJQYWdlISwgY29sSWQsIHNvcnQsIHRoaXMuYWZ0ZXIpLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogKHsgZGF0YSwgdG90YWxSZWNvcmQgfSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLmhpZGVPdmVybGF5KCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHsgZWRnZXMsIHBhZ2VJbmZvIH0gPSBkYXRhO1xuICAgICAgICAgICAgaWYgKGVkZ2VzLmxlbmd0aCA+IDApIHRoaXMuYWZ0ZXIgPSBwYWdlSW5mby5lbmRDdXJzb3I7XG5cbiAgICAgICAgICAgIGlmIChwYWdlID09PSAwKSB7XG4gICAgICAgICAgICAgIGlmIChlZGdlcy5sZW5ndGggPT09IDApe1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5zZXRHcmlkT3B0aW9uKCdvdmVybGF5Tm9Sb3dzVGVtcGxhdGUnLCB0aGlzLmNvbmZpZy5ub1Jvd1RleHQpO1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5zaG93Tm9Sb3dzT3ZlcmxheSgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHRoaXMuY291bnQgPSB0b3RhbFJlY29yZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0aGlzLmNvbmZpZy51c2VUb3RhbFJlY29yZCAmJiAhcGFnZUluZm8uaGFzTmV4dFBhZ2UpIHtcbiAgICAgICAgICAgICAgdGhpcy5jb3VudCA9IChwYWdlICogdGhpcy5jb25maWcucm93UGVyUGFnZSEpICsgZWRnZXMubGVuZ3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3VjY2Vzc0NhbGxiYWNrKGVkZ2VzLCB0aGlzLmNvdW50KTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yOiAoeyBtZXNzYWdlIH0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5zZXRHcmlkT3B0aW9uKCdvdmVybGF5Tm9Sb3dzVGVtcGxhdGUnLCBgPHNwYW4gY2xhc3M9XCJmMjBcIj4keyBtZXNzYWdlIH08L3NwYW4+YCk7XG5cbiAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5oaWRlT3ZlcmxheSgpO1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dOb1Jvd3NPdmVybGF5KCk7XG4gICAgICAgICAgICBmYWlsQ2FsbGJhY2soKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ2RhdGFzb3VyY2UnLCBkYXRhc291cmNlKTtcbiAgfVxufVxuIiwiPGFnLWdyaWQtYW5ndWxhciBjbGFzcz1cImFnLXRoZW1lLWJhbGhhbSBoLTEwMFwiXG4gICAgcm93TW9kZWxUeXBlPVwiaW5maW5pdGVcIlxuICAgIFtwYWdpbmF0aW9uXT1cInRydWVcIlxuICAgIFthbmltYXRlUm93c109XCJ0cnVlXCJcbiAgICBbZ2V0Um93Q2xhc3NdPVwiZ2V0Um93Q2xhc3NcIlxuICAgIFtyb3dTZWxlY3Rpb25dPVwicm93U2VsZWN0aW9uXCJcbiAgICBbY29sdW1uRGVmc109XCJjb25maWcuY29sRGVmc1wiXG4gICAgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiXG4gICAgW2NhY2hlQmxvY2tTaXplXT1cImNvbmZpZy5yb3dQZXJQYWdlXCJcbiAgICBbcGFnaW5hdGlvblBhZ2VTaXplXT1cImNvbmZpZy5yb3dQZXJQYWdlXCJcbiAgICBbb3ZlcmxheU5vUm93c1RlbXBsYXRlXT1cImNvbmZpZy5ub1Jvd1RleHRcIlxuICAgIChkcmFnU3RvcHBlZCk9XCJkcmFnQ29sdW1uKCRldmVudClcIlxuICAgIChncmlkUmVhZHkpPVwic2V0RGF0YXNvdXJjZSgkZXZlbnQpXCJcbiAgICAocm93Q2xpY2tlZCk9XCJjbGlja1JvdygkZXZlbnQuZGF0YSlcIlxuICAgIChzZWxlY3Rpb25DaGFuZ2VkKT1cImNoYW5nZVNlbGVjdGVkKCRldmVudClcIlxuICAgIChwYWdpbmF0aW9uQ2hhbmdlZCk9XCJjaGFuZ2VQYWdpbmF0aW9uKCRldmVudClcIlxuLz5cbiJdfQ==
@@ -22,7 +22,10 @@ export class RefreshTokenInterceptor {
22
22
  }
23
23
  }));
24
24
  }), catchError(() => {
25
- localStorage.clear();
25
+ localStorage.removeItem('roles');
26
+ localStorage.removeItem('userGuid');
27
+ localStorage.removeItem('authToken');
28
+ localStorage.removeItem('refreshToken');
26
29
  AuthService.authToken = '';
27
30
  AuthService.refreshToken = '';
28
31
  this.authService.user = undefined;
@@ -39,4 +42,4 @@ export class RefreshTokenInterceptor {
39
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RefreshTokenInterceptor, decorators: [{
40
43
  type: Injectable
41
44
  }], ctorParameters: () => [{ type: i1.AuthService }] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvaW50ZXJjZXB0b3JzL3JlZnJlc2gtdG9rZW4vcmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQWMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUc3QyxNQUFNLE9BQU8sdUJBQXVCO0lBRWxDLFlBQ3FCLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQ3pDLENBQUM7SUFFRSxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM5QixVQUFVLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3ZELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNuRixTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7b0JBQ3JCLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSyxDQUFDLHdCQUF3QixDQUFDO29CQUVyRSxXQUFXLENBQUMsU0FBUyxHQUFHLFdBQVksQ0FBQztvQkFDckMsV0FBVyxDQUFDLFlBQVksR0FBRyxZQUFhLENBQUM7b0JBRXpDLFlBQVksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFdBQVksQ0FBQyxDQUFDO29CQUNoRCxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxZQUFhLENBQUMsQ0FBQztvQkFFcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7d0JBQy9CLFVBQVUsRUFBRTs0QkFDVixhQUFhLEVBQUUsV0FBWTt5QkFDNUI7cUJBQ0YsQ0FBQyxDQUFDLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ3JCLFdBQVcsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO29CQUMzQixXQUFXLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztvQkFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO29CQUVsQyxRQUFRLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztvQkFDOUIsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JDLENBQUMsQ0FBQyxDQUNILENBQUM7WUFDSixDQUFDO1lBRUQsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBekNVLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIE9ic2VydmFibGUsIHN3aXRjaE1hcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZWZyZXNoVG9rZW5JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PntcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKHsgZXJyb3I6IHsgZXJyb3JzIH0gfSkgPT4ge1xuICAgICAgICBpZiAoZXJyb3JzWzBdLmV4dGVuc2lvbnMuY29kZSA9PT0gJ1VTRVJfSU5WQUxJRF9UT0tFTicpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5hdXRoU2VydmljZS5yZWZyZXNoVG9rZW4oeyByZWZyZXNoVG9rZW46IEF1dGhTZXJ2aWNlLnJlZnJlc2hUb2tlbiB9KS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB7IGFjY2Vzc1Rva2VuLCByZWZyZXNoVG9rZW4gfSA9IGRhdGEhLmF1dGhNc1JlZnJlc2hBY2Nlc3NUb2tlbjtcblxuICAgICAgICAgICAgICBBdXRoU2VydmljZS5hdXRoVG9rZW4gPSBhY2Nlc3NUb2tlbiE7XG4gICAgICAgICAgICAgIEF1dGhTZXJ2aWNlLnJlZnJlc2hUb2tlbiA9IHJlZnJlc2hUb2tlbiE7XG5cbiAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2F1dGhUb2tlbicsIGFjY2Vzc1Rva2VuISk7XG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdyZWZyZXNoVG9rZW4nLCByZWZyZXNoVG9rZW4hKTtcblxuICAgICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdC5jbG9uZSh7XG4gICAgICAgICAgICAgICAgc2V0SGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgYXV0aG9yaXphdGlvbjogYWNjZXNzVG9rZW4hXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcbiAgICAgICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gJyc7XG4gICAgICAgICAgICAgIEF1dGhTZXJ2aWNlLnJlZnJlc2hUb2tlbiA9ICcnO1xuICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVzZXIgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9ICcvYXV0aC9sb2dpbic7XG4gICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yc1swXSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcnNbMF0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvaW50ZXJjZXB0b3JzL3JlZnJlc2gtdG9rZW4vcmVmcmVzaC10b2tlbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQWMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUc3QyxNQUFNLE9BQU8sdUJBQXVCO0lBRWxDLFlBQ3FCLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQ3pDLENBQUM7SUFFRSxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM5QixVQUFVLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUNuQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3ZELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNuRixTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUU7b0JBQ3JCLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSyxDQUFDLHdCQUF3QixDQUFDO29CQUVyRSxXQUFXLENBQUMsU0FBUyxHQUFHLFdBQVksQ0FBQztvQkFDckMsV0FBVyxDQUFDLFlBQVksR0FBRyxZQUFhLENBQUM7b0JBRXpDLFlBQVksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFdBQVksQ0FBQyxDQUFDO29CQUNoRCxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxZQUFhLENBQUMsQ0FBQztvQkFFcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7d0JBQy9CLFVBQVUsRUFBRTs0QkFDVixhQUFhLEVBQUUsV0FBWTt5QkFDNUI7cUJBQ0YsQ0FBQyxDQUFDLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNqQyxZQUFZLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUNwQyxZQUFZLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUNyQyxZQUFZLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO29CQUV4QyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztvQkFDM0IsV0FBVyxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7b0JBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQztvQkFFbEMsUUFBUSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUM7b0JBQzlCLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQztZQUVELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQTdDVSx1QkFBdUI7a0hBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVmcmVzaFRva2VuSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2VcbiAgKSB7IH1cblxuICBwdWJsaWMgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj57XG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKCh7IGVycm9yOiB7IGVycm9ycyB9IH0pID0+IHtcbiAgICAgICAgaWYgKGVycm9yc1swXS5leHRlbnNpb25zLmNvZGUgPT09ICdVU0VSX0lOVkFMSURfVE9LRU4nKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXV0aFNlcnZpY2UucmVmcmVzaFRva2VuKHsgcmVmcmVzaFRva2VuOiBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gfSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoeyBkYXRhIH0pID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgeyBhY2Nlc3NUb2tlbiwgcmVmcmVzaFRva2VuIH0gPSBkYXRhIS5hdXRoTXNSZWZyZXNoQWNjZXNzVG9rZW47XG5cbiAgICAgICAgICAgICAgQXV0aFNlcnZpY2UuYXV0aFRva2VuID0gYWNjZXNzVG9rZW4hO1xuICAgICAgICAgICAgICBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gPSByZWZyZXNoVG9rZW4hO1xuXG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRoVG9rZW4nLCBhY2Nlc3NUb2tlbiEpO1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVmcmVzaFRva2VuJywgcmVmcmVzaFRva2VuISk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QuY2xvbmUoe1xuICAgICAgICAgICAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgIGF1dGhvcml6YXRpb246IGFjY2Vzc1Rva2VuIVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3JvbGVzJyk7XG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCd1c2VyR3VpZCcpO1xuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnYXV0aFRva2VuJyk7XG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdyZWZyZXNoVG9rZW4nKTtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIEF1dGhTZXJ2aWNlLmF1dGhUb2tlbiA9ICcnO1xuICAgICAgICAgICAgICBBdXRoU2VydmljZS5yZWZyZXNoVG9rZW4gPSAnJztcbiAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS51c2VyID0gdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSAnL2F1dGgvbG9naW4nO1xuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcnNbMF0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3JzWzBdKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19