gamma-app-controller 1.0.1 → 1.0.3
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/esm2020/lib/application-controller/application-content.service.mjs +107 -68
- package/esm2020/lib/application-controller/application-controller.module.mjs +11 -2
- package/esm2020/lib/application-controller/application-dataset-call.service.mjs +3 -6
- package/esm2020/lib/application-controller/application-view-components/application-views/application-views.component.mjs +70 -5
- package/esm2020/lib/application-controller/environment.mjs +3 -26
- package/esm2020/lib/application-controller/page-controller/page-config/page-config.component.mjs +8 -24
- package/esm2020/lib/application-controller/shared/advanced-component/advance-widget-header-filter/advance-widget-header-filter.component.mjs +9 -11
- package/esm2020/lib/application-controller/shared/advanced-component/app-advance-header/app-header.component.mjs +11 -13
- package/esm2020/lib/application-controller/shared/advanced-component/gamma-advance-chart/gamma-advance-chart.component.mjs +19 -16
- package/esm2020/lib/application-controller/shared/advanced-component/gamma-advance-operator-table/gamma-advance-operator-table.component.mjs +6 -1
- package/esm2020/lib/application-controller/shared/advanced-component/gamma-table-with-percentage/gamma-table-with-percentage.component.mjs +3 -3
- package/esm2020/lib/application-controller/shared/gamam-widget/gamam-widget.component.mjs +8 -10
- package/esm2020/lib/application-controller/shared/gamma-bread-crumbs/bread-crumbs.component.mjs +1 -3
- package/fesm2015/gamma-app-controller.mjs +238 -276
- package/fesm2015/gamma-app-controller.mjs.map +1 -1
- package/fesm2020/gamma-app-controller.mjs +236 -276
- package/fesm2020/gamma-app-controller.mjs.map +1 -1
- package/lib/application-controller/application-content.service.d.ts +7 -1
- package/lib/application-controller/application-view-components/application-views/application-views.component.d.ts +8 -0
- package/lib/application-controller/environment.d.ts +2 -25
- package/lib/application-controller/shared/advanced-component/advance-widget-header-filter/advance-widget-header-filter.component.d.ts +1 -3
- package/lib/application-controller/shared/advanced-component/app-advance-header/app-header.component.d.ts +1 -3
- package/lib/application-controller/shared/advanced-component/gamma-advance-chart/gamma-advance-chart.component.d.ts +1 -3
- package/lib/application-controller/shared/gamam-widget/gamam-widget.component.d.ts +1 -3
- package/package.json +1 -1
- package/esm2020/lib/application-controller/shared/api.service.mjs +0 -117
- package/lib/application-controller/shared/api.service.d.ts +0 -26
|
@@ -157,12 +157,12 @@ export class GammaTableWithPercentageComponent {
|
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
GammaTableWithPercentageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: GammaTableWithPercentageComponent, deps: [{ token: i1.CommonService }, { token: i2.ToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
160
|
-
GammaTableWithPercentageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: GammaTableWithPercentageComponent, selector: "app-gamma-table-with-percentage", inputs: { chartDataSource: "chartDataSource" }, ngImport: i0, template: "<div class=\"mx-2\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n
|
|
160
|
+
GammaTableWithPercentageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: GammaTableWithPercentageComponent, selector: "app-gamma-table-with-percentage", inputs: { chartDataSource: "chartDataSource" }, ngImport: i0, template: "<div class=\"mx-2 bg-gray-800\">\n <ng-container *ngIf=\"isLoader\">\n <div class=\"flex justify-center items-start bg-gray-800 p-2\">\n <app-loader></app-loader>\n </div>\n </ng-container>\n\n <div class=\"mx-2 pb-2\">\n <ng-container *ngIf=\"!isLoader\">\n <dx-data-grid [columnAutoWidth]=\"true\" [dataSource]=\"tableDataSource\" [selectedRowKeys]=\"[]\"\n [showBorders]=\"true\" [showRowLines]=\"true\" id=\"gridContainer\" [height]=\"370\">\n <dxo-search-panel [highlightCaseSensitive]=\"true\" [visible]=\"true\"></dxo-search-panel>\n <dxo-export [enabled]=\"true\"></dxo-export>\n <dxo-paging [pageSize]=\"7\"></dxo-paging>\n <dxo-pager [showInfo]=\"true\" [showPageSizeSelector]=\"false\">\n </dxo-pager>\n <dxo-selection mode=\"single\"></dxo-selection>\n <dxi-column dataField=\"eventType\"></dxi-column>\n <dxi-column dataField=\"access_cost_sar\" cellTemplate=\"cellTemplate1\"></dxi-column>\n <dxi-column dataField=\"margin_sar\" cellTemplate=\"cellTemplate2\"></dxi-column>\n <dxi-column dataField=\"ict_cost_sar\" cellTemplate=\"cellTemplate3\"></dxi-column>\n <dxi-column dataField=\"revenue\" cellTemplate=\"cellTemplate4\"></dxi-column>\n\n\n <div *dxTemplate=\"let data of 'cellTemplate1'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate2'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate3'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate4'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n\n </dx-data-grid>\n </ng-container>\n\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i5.DxoExportComponent, selector: "dxo-export", inputs: ["backgroundColor", "enabled", "fileName", "formats", "margin", "printingEnabled", "proxyUrl", "svgToCanvas", "allowExportSelectedData", "customizeExcelCell", "excelFilterEnabled", "excelWrapTextEnabled", "ignoreExcelErrors", "texts"] }, { kind: "component", type: i6.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "customizeExportData", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "focusStateEnabled", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExported", "onExporting", "onFileSaving", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "customizeExportDataChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "focusStateEnabledChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i5.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i5.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i5.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i5.DxoSearchPanelComponent, selector: "dxo-search-panel", inputs: ["highlightCaseSensitive", "highlightSearchText", "placeholder", "searchVisibleColumnsOnly", "text", "visible", "width"], outputs: ["textChange"] }, { kind: "component", type: i5.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "component", type: i7.LoaderComponent, selector: "app-loader" }, { kind: "pipe", type: i8.contentSafeHtml, name: "contentSafeHtml" }] });
|
|
161
161
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: GammaTableWithPercentageComponent, decorators: [{
|
|
162
162
|
type: Component,
|
|
163
|
-
args: [{ selector: 'app-gamma-table-with-percentage', template: "<div class=\"mx-2\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n
|
|
163
|
+
args: [{ selector: 'app-gamma-table-with-percentage', template: "<div class=\"mx-2 bg-gray-800\">\n <ng-container *ngIf=\"isLoader\">\n <div class=\"flex justify-center items-start bg-gray-800 p-2\">\n <app-loader></app-loader>\n </div>\n </ng-container>\n\n <div class=\"mx-2 pb-2\">\n <ng-container *ngIf=\"!isLoader\">\n <dx-data-grid [columnAutoWidth]=\"true\" [dataSource]=\"tableDataSource\" [selectedRowKeys]=\"[]\"\n [showBorders]=\"true\" [showRowLines]=\"true\" id=\"gridContainer\" [height]=\"370\">\n <dxo-search-panel [highlightCaseSensitive]=\"true\" [visible]=\"true\"></dxo-search-panel>\n <dxo-export [enabled]=\"true\"></dxo-export>\n <dxo-paging [pageSize]=\"7\"></dxo-paging>\n <dxo-pager [showInfo]=\"true\" [showPageSizeSelector]=\"false\">\n </dxo-pager>\n <dxo-selection mode=\"single\"></dxo-selection>\n <dxi-column dataField=\"eventType\"></dxi-column>\n <dxi-column dataField=\"access_cost_sar\" cellTemplate=\"cellTemplate1\"></dxi-column>\n <dxi-column dataField=\"margin_sar\" cellTemplate=\"cellTemplate2\"></dxi-column>\n <dxi-column dataField=\"ict_cost_sar\" cellTemplate=\"cellTemplate3\"></dxi-column>\n <dxi-column dataField=\"revenue\" cellTemplate=\"cellTemplate4\"></dxi-column>\n\n\n <div *dxTemplate=\"let data of 'cellTemplate1'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate2'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate3'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n <div *dxTemplate=\"let data of 'cellTemplate4'\">\n <div [innerHTML]=\"data.value | contentSafeHtml\"></div>\n </div>\n\n </dx-data-grid>\n </ng-container>\n\n </div>\n</div>" }]
|
|
164
164
|
}], ctorParameters: function () { return [{ type: i1.CommonService }, { type: i2.ToastrService }]; }, propDecorators: { chartDataSource: [{
|
|
165
165
|
type: Input,
|
|
166
166
|
args: ['chartDataSource']
|
|
167
167
|
}] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dhbW1hLWFwcC1jb250cm9sbGVyL3NyYy9saWIvYXBwbGljYXRpb24tY29udHJvbGxlci9zaGFyZWQvYWR2YW5jZWQtY29tcG9uZW50L2dhbW1hLXRhYmxlLXdpdGgtcGVyY2VudGFnZS9nYW1tYS10YWJsZS13aXRoLXBlcmNlbnRhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2FtbWEtYXBwLWNvbnRyb2xsZXIvc3JjL2xpYi9hcHBsaWNhdGlvbi1jb250cm9sbGVyL3NoYXJlZC9hZHZhbmNlZC1jb21wb25lbnQvZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlL2dhbW1hLXRhYmxlLXdpdGgtcGVyY2VudGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLE1BQU0sTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7OztBQVE5QyxNQUFNLE9BQU8saUNBQWlDO0lBeUU1QyxZQUNTLGFBQTRCLEVBQzNCLE1BQXFCO1FBRHRCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLFdBQU0sR0FBTixNQUFNLENBQWU7UUExRS9CLFNBQUksR0FBRztZQUNMO2dCQUNFLFNBQVMsRUFBRSxPQUFPO2dCQUNsQixlQUFlLEVBQUUsaUJBQWlCO2dCQUNsQyxVQUFVLEVBQUUsR0FBRztnQkFDZixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsVUFBVSxFQUFFLGtCQUFrQjtnQkFDOUIsT0FBTyxFQUFFLElBQUk7YUFFZDtZQUNEO2dCQUNFLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixlQUFlLEVBQUUsaUJBQWlCO2dCQUNsQyxVQUFV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QUMsV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM5SSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUVoSixJQUFJLElBQUksR0FBRztnQkFDVCxXQUFXLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDckQsaUJBQWlCLEVBQUUsYUFBYTtnQkFDaEMsWUFBWSxFQUFFLFNBQVM7Z0JBQ3ZCLGNBQWMsRUFBRSxlQUFlO2dCQUMvQixTQUFTLEVBQUUsVUFBVTthQUN0QixDQUFDO1lBRUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakM7SUFFSCxDQUFDO0lBR0QsZ0JBQWdCLENBQUMsR0FBRztRQUVsQixJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUU7WUFDZCxPQUFPLE9BQU8sQ0FBQTtTQUNmO2FBQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ3JCLE9BQU8sS0FBSyxDQUFBO1NBQ2I7YUFBTTtZQUNMLE9BQU8sTUFBTSxDQUFBO1NBQ2Q7SUFDSCxDQUFDOzs4SEE5S1UsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsdUhDVjlDLDQxREFvQ007MkZEMUJPLGlDQUFpQztrQkFMN0MsU0FBUzsrQkFDRSxpQ0FBaUM7Z0lBc0N2QyxlQUFlO3NCQURsQixLQUFLO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IG1vbWVudCBmcm9tICcuLy4uLy4uLy4uL21vbWVudC1oZWxwZXInO1xuaW1wb3J0IHsgQ29tbW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1nYW1tYS10YWJsZS13aXRoLXBlcmNlbnRhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR2FtbWFUYWJsZVdpdGhQZXJjZW50YWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGF0YSA9IFtcbiAgICB7XG4gICAgICBldmVudFR5cGU6IFwiVm9pY2VcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogNzY3Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMScsXG4gICAgICBpY3RfY29zdF9zYXI6IDcyMzIsXG4gICAgICBtYXJnaW5fc2FyOiAyNDQ1Ljc3MzAwMDAwMDAwMjMsXG4gICAgICByZXZlbnVlOiA1MjMyXG5cbiAgICB9LFxuICAgIHtcbiAgICAgIGV2ZW50VHlwZTogXCJTTVNcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogMzQ1Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMicsXG4gICAgICBpY3RfY29zdF9zYXI6IDM1NjU0LFxuICAgICAgbWFyZ2luX3NhcjogMjQ0NS43NzMwMDAwMDAwMDIzLFxuICAgICAgcmV2ZW51ZTogNTU2NTRcblxuICAgIH0sXG4gICAge1xuICAgICAgZXZlbnRUeXBlOiBcIkdQUlNcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogNTY3Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMycsXG4gICAgICBpY3RfY29zdF9zYXI6IDg5Mzg3LFxuICAgICAgbWFyZ2luX3NhcjogNTQ0NS43NzMwMDAwMDAwMDIzLFxuICAgICAgcmV2ZW51ZTogOTkzODdcblxuICAgIH1cbiAgXVxuXG4gIGlzTG9hZGVyOiBib29sZWFuXG4gIGN1cnJlbnREYXRlRGF0YVxuICBASW5wdXQoJ2NoYXJ0RGF0YVNvdXJjZScpXG4gIHNldCBjaGFydERhdGFTb3VyY2UodmFsdWUpIHtcbiAgICAvLyBjb25zb2xlLmxvZyh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNMb2FkZXIgPSB0cnVlO1xuXG4gICAgICAvLyB0aGlzLmtleVRvcGFzcyA9IHZhbHVlLmtwaUNvbmZpZy5rZXlUb1Bhc3M7XG4gICAgICBpZiAodmFsdWUua3BpQ29uZmlnLmRhdGFTb3VyY2UgJiYgdmFsdWUua3BpQ29uZmlnLmRhdGFTb3VyY2UubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGNvbnN0IHNvcnRlZERhdGEgPSB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG1vbWVudChiLnJlY29yZERhdGUsIFwiWVlZWS1NTS1ERFwiKS5kaWZmKG1vbWVudChhLnJlY29yZERhdGUsIFwiWVlZWS1NTS1ERFwiKSk7XG4gICAgICAgIH0pO1xuICAgICAgICB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5mb3JFYWNoKGl0ZW0gPT4gaXRlbS5yZWNvcmREYXRlID0gbmV3IERhdGUoaXRlbS5yZWNvcmREYXRlKSk7XG4gICAgICAgIHZhbHVlLmtwaUNvbmZpZy5kYXRhU291cmNlLnNvcnQoKGEsIGIpID0+IGIucmVjb3JkRGF0ZSAtIGEucmVjb3JkRGF0ZSk7XG5cbiAgICAgICAgLy8gQ3JlYXRlIGEgbWFwIHRvIHN0b3JlIHRoZSBtb3N0IHJlY2VudCBlbnRyeSBmb3IgZWFjaCB1bmlxdWUgZXZlbnRUeXBlS2V5XG4gICAgICAgIGNvbnN0IHVuaXF1ZUV2ZW50cyA9IG5ldyBNYXAoKTtcblxuICAgICAgICB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGlmICghdW5pcXVlRXZlbnRzLmhhcyhpdGVtLmV2ZW50VHlwZUtleSkpIHtcbiAgICAgICAgICAgIHVuaXF1ZUV2ZW50cy5zZXQoaXRlbS5ldmVudFR5cGVLZXksIGl0ZW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gQ29udmVydCB0aGUgbWFwIHZhbHVlcyB0byBhbiBhcnJheVxuICAgICAgICBjb25zdCByZXN1bHQgPSBBcnJheS5mcm9tKHVuaXF1ZUV2ZW50cy52YWx1ZXMoKSk7XG4gICAgICAgIC8vIFN0ZXAgMjogR2V0IHRoZSBtb3N0IHJlY2VudCBhbmQgcHJldmlvdXMgZGF0ZXNcbiAgICAgICAgdGhpcy5sb2FkRGFpbHlNc2NWb2ljZVRhYmxlKHJlc3VsdClcblxuICAgICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuXG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuXG4gIHRhYmxlRGF0YVNvdXJjZTogYW55ID0gW107XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjb21tb25TZXJ2aWNlOiBDb21tb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gdGhpcy5sb2FkRGFpbHlNc2NWb2ljZVRhYmxlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIGxvYWREYWlseU1zY1ZvaWNlVGFibGUoZGF0YSkge1xuXG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UgPSBbXTtcblxuXG4gICAgbGV0IGRhdGFzZXQgPSBbXTtcbiAgICBsZXQgY29sdW1uMU5hbWUgPSAnYWNjZXNzX2Nvc3Rfc2FyJztcbiAgICBsZXQgY29sdW1uMk5hbWUgPSAnaWN0X2Nvc3Rfc2FyJztcbiAgICBsZXQgY29sdW1uM05hbWUgPSAnbWFyZ2luX3Nhcic7XG4gICAgbGV0IGNvbHVtbjROYW1lID0gJ3JldmVudWUnO1xuICAgIGxldCByZXZlbnVlQXJyID0gW10sIGludGVyQ29ubmVjdEFyciA9IFtdLCBhY2Nlc3NDb3N0QXJyID0gW10sIG1hcmdpbkFyciA9IFtdO1xuICAgIGZvciAoY29uc3QgW2ksIHZdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGEpKSB7XG4gICAgICBpZiAodltjb2x1bW4xTmFtZV0gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHZbY29sdW1uMU5hbWVdID0gMDtcbiAgICAgIH1cbiAgICAgIGlmICh2W2NvbHVtbjJOYW1lXSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdltjb2x1bW4yTmFtZV0gPSAwO1xuICAgICAgfVxuICAgICAgaWYgKHZbY29sdW1uM05hbWVdID09IHVuZGVmaW5lZCkge1xuICAgICAgICB2W2NvbHVtbjNOYW1lXSA9IDA7XG4gICAgICB9XG4gICAgICBpZiAodltjb2x1bW40TmFtZV0gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHZbY29sdW1uNE5hbWVdID0gMDtcbiAgICAgIH1cbiAgICAgIGFjY2Vzc0Nvc3RBcnIucHVzaCh2W2NvbHVtbjFOYW1lXSk7XG4gICAgICBpbnRlckNvbm5lY3RBcnIucHVzaCh2W2NvbHVtbjJOYW1lXSk7XG4gICAgICBtYXJnaW5BcnIucHVzaCh2W2NvbHVtbjNOYW1lXSk7XG4gICAgICByZXZlbnVlQXJyLnB1c2godltjb2x1bW40TmFtZV0pO1xuICAgIH1cbiAgICBsZXQgbWF4QWNjZXNzQ29zdFZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIGFjY2Vzc0Nvc3RBcnIpO1xuICAgIGxldCBtaW5BY2Nlc3NDb3N0VmFsID0gTWF0aC5taW4uYXBwbHkoTWF0aCwgYWNjZXNzQ29zdEFycik7XG4gICAgbGV0IG1heGludGVyQ29ubmVjdFZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIGludGVyQ29ubmVjdEFycik7XG4gICAgbGV0IG1pbmludGVyQ29ubmVjdFZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIGludGVyQ29ubmVjdEFycik7XG4gICAgbGV0IG1heG1hcmdpblZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIG1hcmdpbkFycik7XG4gICAgbGV0IG1pbm1hcmdpblZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIG1hcmdpbkFycik7XG4gICAgbGV0IG1heFJldmVudWVWYWwgPSBNYXRoLm1heC5hcHBseShNYXRoLCByZXZlbnVlQXJyKTtcbiAgICBsZXQgbWluUmV2ZW51ZVZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIHJldmVudWVBcnIpO1xuXG5cbiAgICBmb3IgKGNvbnN0IFtpLCB2XSBvZiBPYmplY3QuZW50cmllcyhkYXRhKSkge1xuICAgICAgbGV0IHIgPSBbXTtcbiAgICAgIGxldCBhY2Nlc3NDb3N0VmFsdWUsIGludGVyQ29ubmVjdFZhbHVlLCBtYXJnaW5WYWx1ZSwgcmV2ZW51ZVZhbHVlO1xuXG4gICAgICBpZiAodltjb2x1bW4xTmFtZV0gPiAwKSB7XG4gICAgICAgIGFjY2Vzc0Nvc3RWYWx1ZSA9IHRoaXMuY29tbW9uU2VydmljZS5zY2FsZU51bWJlcihwYXJzZUZsb2F0KHZbY29sdW1uMU5hbWVdKSwgbWF4QWNjZXNzQ29zdFZhbCwgbWluQWNjZXNzQ29zdFZhbCwgMTAsIDc1KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjY2Vzc0Nvc3RWYWx1ZSA9IDA7XG4gICAgICB9XG4gICAgICBpZiAodltjb2x1bW4yTmFtZV0gPiAwKSB7XG4gICAgICAgIGludGVyQ29ubmVjdFZhbHVlID0gdGhpcy5jb21tb25TZXJ2aWNlLnNjYWxlTnVtYmVyKHBhcnNlRmxvYXQodltjb2x1bW4yTmFtZV0pLCBtYXhpbnRlckNvbm5lY3RWYWwsIG1pbmludGVyQ29ubmVjdFZhbCwgMTAsIDc1KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGludGVyQ29ubmVjdFZhbHVlID0gMDtcbiAgICAgIH1cbiAgICAgIGlmICh2W2NvbHVtbjNOYW1lXSA+IDApIHtcbiAgICAgICAgbWFyZ2luVmFsdWUgPSB0aGlzLmNvbW1vblNlcnZpY2Uuc2NhbGVOdW1iZXIocGFyc2VGbG9hdCh2W2NvbHVtbjNOYW1lXSksIG1heG1hcmdpblZhbCwgbWlubWFyZ2luVmFsLCAxMCwgNzUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWFyZ2luVmFsdWUgPSAwO1xuICAgICAgfVxuICAgICAgaWYgKHZbY29sdW1uNE5hbWVdID4gMCkge1xuICAgICAgICByZXZlbnVlVmFsdWUgPSB0aGlzLmNvbW1vblNlcnZpY2Uuc2NhbGVOdW1iZXIocGFyc2VGbG9hdCh2W2NvbHVtbjROYW1lXSksIG1heFJldmVudWVWYWwsIG1pblJldmVudWVWYWwsIDEwLCA3NSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXZlbnVlVmFsdWUgPSAwO1xuICAgICAgfVxuXG4gICAgICBsZXQgYWNjZXNzQ29zdEJhciA9IHRoaXMuY29tbW9uU2VydmljZS5jcmVhdGVIdG1sKGFjY2Vzc0Nvc3RWYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uMU5hbWVdKSwgJyMwMDJFNzAnKTtcbiAgICAgIGxldCBpbnRlcmNvbm5lY3RCYXIgPSB0aGlzLmNvbW1vblNlcnZpY2UuY3JlYXRlSHRtbChpbnRlckNvbm5lY3RWYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uMk5hbWVdKSwgJyNGNDY2MDQnKTtcbiAgICAgIGxldCBtYXJnaW5CYXIgPSB0aGlzLmNvbW1vblNlcnZpY2UuY3JlYXRlSHRtbChtYXJnaW5WYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uM05hbWVdKSwgJyMzZDg3MDYnKTtcbiAgICAgIGxldCByZXZlbnVlQmFyID0gdGhpcy5jb21tb25TZXJ2aWNlLmNyZWF0ZUh0bWwocmV2ZW51ZVZhbHVlLCB0aGlzLmNvbW1vblNlcnZpY2UucmVmb3JtYXROdW1iZXJXaXRoVGhvdXNhbmRTZXBhcmF0b3Iodltjb2x1bW40TmFtZV0pLCAnI2ZmYWM0MicpO1xuXG4gICAgICBsZXQgbm9kZSA9IHtcbiAgICAgICAgJ2V2ZW50VHlwZSc6IHRoaXMuZ2V0RXZlbnRUeXBlTmFtZSh2WydldmVudFR5cGVLZXknXSksXG4gICAgICAgICdhY2Nlc3NfY29zdF9zYXInOiBhY2Nlc3NDb3N0QmFyLFxuICAgICAgICAnbWFyZ2luX3Nhcic6IG1hcmdpbkJhcixcbiAgICAgICAgJ2ljdF9jb3N0X3Nhcic6IGludGVyY29ubmVjdEJhcixcbiAgICAgICAgJ3JldmVudWUnOiByZXZlbnVlQmFyLFxuICAgICAgfTtcblxuICAgICAgdGhpcy50YWJsZURhdGFTb3VyY2UucHVzaChub2RlKTtcbiAgICB9XG5cbiAgfVxuXG5cbiAgZ2V0RXZlbnRUeXBlTmFtZShrZXkpIHtcblxuICAgIGlmIChrZXkgPT0gXCIxXCIpIHtcbiAgICAgIHJldHVybiBcIlZvaWNlXCJcbiAgICB9IGVsc2UgaWYgKGtleSA9PSBcIjJcIikge1xuICAgICAgcmV0dXJuIFwiU01TXCJcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFwiR1BSU1wiXG4gICAgfVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJteC0yXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTG9hZGVyXCI+XG4gICAgICAgIDxhcHAtbG9hZGVyPjwvYXBwLWxvYWRlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGVyXCI+XG4gICAgICAgIDxkeC1kYXRhLWdyaWQgW2NvbHVtbkF1dG9XaWR0aF09XCJ0cnVlXCIgW2RhdGFTb3VyY2VdPVwidGFibGVEYXRhU291cmNlXCIgW3NlbGVjdGVkUm93S2V5c109XCJbXVwiXG4gICAgICAgICAgICBbc2hvd0JvcmRlcnNdPVwidHJ1ZVwiIFtzaG93Um93TGluZXNdPVwidHJ1ZVwiIGlkPVwiZ3JpZENvbnRhaW5lclwiIFtoZWlnaHRdPVwiMzcwXCI+XG4gICAgICAgICAgICA8ZHhvLXNlYXJjaC1wYW5lbCBbaGlnaGxpZ2h0Q2FzZVNlbnNpdGl2ZV09XCJ0cnVlXCIgW3Zpc2libGVdPVwidHJ1ZVwiPjwvZHhvLXNlYXJjaC1wYW5lbD5cbiAgICAgICAgICAgIDxkeG8tZXhwb3J0IFtlbmFibGVkXT1cInRydWVcIj48L2R4by1leHBvcnQ+XG4gICAgICAgICAgICA8ZHhvLXBhZ2luZyBbcGFnZVNpemVdPVwiN1wiPjwvZHhvLXBhZ2luZz5cbiAgICAgICAgICAgIDxkeG8tcGFnZXIgW3Nob3dJbmZvXT1cInRydWVcIiBbc2hvd1BhZ2VTaXplU2VsZWN0b3JdPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIDwvZHhvLXBhZ2VyPlxuICAgICAgICAgICAgPGR4by1zZWxlY3Rpb24gbW9kZT1cInNpbmdsZVwiPjwvZHhvLXNlbGVjdGlvbj5cbiAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cImV2ZW50VHlwZVwiPjwvZHhpLWNvbHVtbj5cbiAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cImFjY2Vzc19jb3N0X3NhclwiIGNlbGxUZW1wbGF0ZT1cImNlbGxUZW1wbGF0ZTFcIj48L2R4aS1jb2x1bW4+XG4gICAgICAgICAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJtYXJnaW5fc2FyXCIgY2VsbFRlbXBsYXRlPVwiY2VsbFRlbXBsYXRlMlwiPjwvZHhpLWNvbHVtbj5cbiAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cImljdF9jb3N0X3NhclwiIGNlbGxUZW1wbGF0ZT1cImNlbGxUZW1wbGF0ZTNcIj48L2R4aS1jb2x1bW4+XG4gICAgICAgICAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJyZXZlbnVlXCIgY2VsbFRlbXBsYXRlPVwiY2VsbFRlbXBsYXRlNFwiPjwvZHhpLWNvbHVtbj5cblxuXG4gICAgICAgICAgICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGRhdGEgb2YgJ2NlbGxUZW1wbGF0ZTEnXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImRhdGEudmFsdWUgfCBjb250ZW50U2FmZUh0bWxcIj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBkYXRhIG9mICdjZWxsVGVtcGxhdGUyJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJkYXRhLnZhbHVlIHwgY29udGVudFNhZmVIdG1sXCI+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgZGF0YSBvZiAnY2VsbFRlbXBsYXRlMydcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YS52YWx1ZSB8IGNvbnRlbnRTYWZlSHRtbFwiPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGRhdGEgb2YgJ2NlbGxUZW1wbGF0ZTQnXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImRhdGEudmFsdWUgfCBjb250ZW50U2FmZUh0bWxcIj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwvZHgtZGF0YS1ncmlkPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG48L2Rpdj4iXX0=
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dhbW1hLWFwcC1jb250cm9sbGVyL3NyYy9saWIvYXBwbGljYXRpb24tY29udHJvbGxlci9zaGFyZWQvYWR2YW5jZWQtY29tcG9uZW50L2dhbW1hLXRhYmxlLXdpdGgtcGVyY2VudGFnZS9nYW1tYS10YWJsZS13aXRoLXBlcmNlbnRhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2FtbWEtYXBwLWNvbnRyb2xsZXIvc3JjL2xpYi9hcHBsaWNhdGlvbi1jb250cm9sbGVyL3NoYXJlZC9hZHZhbmNlZC1jb21wb25lbnQvZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlL2dhbW1hLXRhYmxlLXdpdGgtcGVyY2VudGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLE1BQU0sTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7OztBQVE5QyxNQUFNLE9BQU8saUNBQWlDO0lBeUU1QyxZQUNTLGFBQTRCLEVBQzNCLE1BQXFCO1FBRHRCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLFdBQU0sR0FBTixNQUFNLENBQWU7UUExRS9CLFNBQUksR0FBRztZQUNMO2dCQUNFLFNBQVMsRUFBRSxPQUFPO2dCQUNsQixlQUFlLEVBQUUsaUJBQWlCO2dCQUNsQyxVQUFVLEVBQUUsR0FBRztnQkFDZixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsVUFBVSxFQUFFLGtCQUFrQjtnQkFDOUIsT0FBTyxFQUFFLElBQUk7YUFFZDtZQUNEO2dCQUNFLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixlQUFlLEVBQUUsaUJBQWlCO2dCQUNsQyxVQUFVLEVBQUUsR0FBRztnQkFDZixZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFFLGtCQUFrQjtnQkFDOUIsT0FBTyxFQUFFLEtBQUs7YUFFZjtZQUNEO2dCQUNFLFNBQVMsRUFBRSxNQUFNO2dCQUNqQixlQUFlLEVBQUUsaUJBQWlCO2dCQUNsQyxVQUFVLEVBQUUsR0FBRztnQkFDZixZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFFLGtCQUFrQjtnQkFDOUIsT0FBTyxFQUFFLEtBQUs7YUFFZjtTQUNGLENBQUE7UUEyQ0Qsb0JBQWUsR0FBUSxFQUFFLENBQUM7SUFJdEIsQ0FBQztJQTNDTCxJQUNJLGVBQWUsQ0FBQyxLQUFLO1FBRXZCLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUM3QyxPQUFPO1NBQ1I7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBR3JCLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDekUsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUMxRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixDQUFDLENBQUMsQ0FBQztnQkFDSCxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUN4RixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFHdkUsTUFBTSxZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztnQkFFL0IsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7d0JBQ3hDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztxQkFDM0M7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBR0gsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFFakQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUVuQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQzthQUN2QjtpQkFBTTthQUVOO1NBRUY7SUFDSCxDQUFDO0lBU0QsUUFBUTtJQUVSLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxJQUFJO1FBRXpCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBRzFCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUNwQyxJQUFJLFdBQVcsR0FBRyxjQUFjLENBQUM7UUFDakMsSUFBSSxXQUFXLEdBQUcsWUFBWSxDQUFDO1FBQy9CLElBQUksV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUM1QixJQUFJLFVBQVUsR0FBRyxFQUFFLEVBQUUsZUFBZSxHQUFHLEVBQUUsRUFBRSxhQUFhLEdBQUcsRUFBRSxFQUFFLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDOUUsS0FBSyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksU0FBUyxFQUFFO2dCQUMvQixDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksU0FBUyxFQUFFO2dCQUMvQixDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksU0FBUyxFQUFFO2dCQUMvQixDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksU0FBUyxFQUFFO2dCQUMvQixDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNuQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ3JDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDL0IsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztTQUNqQztRQUNELElBQUksZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzNELElBQUksZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzNELElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQy9ELElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQy9ELElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNuRCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkQsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3JELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUdyRCxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDWCxJQUFJLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsWUFBWSxDQUFDO1lBRWxFLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDdEIsZUFBZSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDMUg7aUJBQU07Z0JBQ0wsZUFBZSxHQUFHLENBQUMsQ0FBQzthQUNyQjtZQUNELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDdEIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUNoSTtpQkFBTTtnQkFDTCxpQkFBaUIsR0FBRyxDQUFDLENBQUM7YUFDdkI7WUFDRCxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLFdBQVcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDOUc7aUJBQU07Z0JBQ0wsV0FBVyxHQUFHLENBQUMsQ0FBQzthQUNqQjtZQUNELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDdEIsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUNqSDtpQkFBTTtnQkFDTCxZQUFZLEdBQUcsQ0FBQyxDQUFDO2FBQ2xCO1lBRUQsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsbUNBQW1DLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdEosSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUMxSixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM5SSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUVoSixJQUFJLElBQUksR0FBRztnQkFDVCxXQUFXLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDckQsaUJBQWlCLEVBQUUsYUFBYTtnQkFDaEMsWUFBWSxFQUFFLFNBQVM7Z0JBQ3ZCLGNBQWMsRUFBRSxlQUFlO2dCQUMvQixTQUFTLEVBQUUsVUFBVTthQUN0QixDQUFDO1lBRUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakM7SUFFSCxDQUFDO0lBR0QsZ0JBQWdCLENBQUMsR0FBRztRQUVsQixJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUU7WUFDZCxPQUFPLE9BQU8sQ0FBQTtTQUNmO2FBQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ3JCLE9BQU8sS0FBSyxDQUFBO1NBQ2I7YUFBTTtZQUNMLE9BQU8sTUFBTSxDQUFBO1NBQ2Q7SUFDSCxDQUFDOzs4SEE5S1UsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsdUhDVjlDLGttRUF5Q007MkZEL0JPLGlDQUFpQztrQkFMN0MsU0FBUzsrQkFDRSxpQ0FBaUM7Z0lBc0N2QyxlQUFlO3NCQURsQixLQUFLO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IG1vbWVudCBmcm9tICcuLy4uLy4uLy4uL21vbWVudC1oZWxwZXInO1xuaW1wb3J0IHsgQ29tbW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1nYW1tYS10YWJsZS13aXRoLXBlcmNlbnRhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2FtbWEtdGFibGUtd2l0aC1wZXJjZW50YWdlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR2FtbWFUYWJsZVdpdGhQZXJjZW50YWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGF0YSA9IFtcbiAgICB7XG4gICAgICBldmVudFR5cGU6IFwiVm9pY2VcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogNzY3Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMScsXG4gICAgICBpY3RfY29zdF9zYXI6IDcyMzIsXG4gICAgICBtYXJnaW5fc2FyOiAyNDQ1Ljc3MzAwMDAwMDAwMjMsXG4gICAgICByZXZlbnVlOiA1MjMyXG5cbiAgICB9LFxuICAgIHtcbiAgICAgIGV2ZW50VHlwZTogXCJTTVNcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogMzQ1Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMicsXG4gICAgICBpY3RfY29zdF9zYXI6IDM1NjU0LFxuICAgICAgbWFyZ2luX3NhcjogMjQ0NS43NzMwMDAwMDAwMDIzLFxuICAgICAgcmV2ZW51ZTogNTU2NTRcblxuICAgIH0sXG4gICAge1xuICAgICAgZXZlbnRUeXBlOiBcIkdQUlNcIixcbiAgICAgIGFjY2Vzc19jb3N0X3NhcjogNTY3Ljc3MzAwMDAwMDAwMjMsXG4gICAgICBldmVudF90eXBlOiAnMycsXG4gICAgICBpY3RfY29zdF9zYXI6IDg5Mzg3LFxuICAgICAgbWFyZ2luX3NhcjogNTQ0NS43NzMwMDAwMDAwMDIzLFxuICAgICAgcmV2ZW51ZTogOTkzODdcblxuICAgIH1cbiAgXVxuXG4gIGlzTG9hZGVyOiBib29sZWFuXG4gIGN1cnJlbnREYXRlRGF0YVxuICBASW5wdXQoJ2NoYXJ0RGF0YVNvdXJjZScpXG4gIHNldCBjaGFydERhdGFTb3VyY2UodmFsdWUpIHtcbiAgICAvLyBjb25zb2xlLmxvZyh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNMb2FkZXIgPSB0cnVlO1xuXG4gICAgICAvLyB0aGlzLmtleVRvcGFzcyA9IHZhbHVlLmtwaUNvbmZpZy5rZXlUb1Bhc3M7XG4gICAgICBpZiAodmFsdWUua3BpQ29uZmlnLmRhdGFTb3VyY2UgJiYgdmFsdWUua3BpQ29uZmlnLmRhdGFTb3VyY2UubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGNvbnN0IHNvcnRlZERhdGEgPSB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG1vbWVudChiLnJlY29yZERhdGUsIFwiWVlZWS1NTS1ERFwiKS5kaWZmKG1vbWVudChhLnJlY29yZERhdGUsIFwiWVlZWS1NTS1ERFwiKSk7XG4gICAgICAgIH0pO1xuICAgICAgICB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5mb3JFYWNoKGl0ZW0gPT4gaXRlbS5yZWNvcmREYXRlID0gbmV3IERhdGUoaXRlbS5yZWNvcmREYXRlKSk7XG4gICAgICAgIHZhbHVlLmtwaUNvbmZpZy5kYXRhU291cmNlLnNvcnQoKGEsIGIpID0+IGIucmVjb3JkRGF0ZSAtIGEucmVjb3JkRGF0ZSk7XG5cbiAgICAgICAgLy8gQ3JlYXRlIGEgbWFwIHRvIHN0b3JlIHRoZSBtb3N0IHJlY2VudCBlbnRyeSBmb3IgZWFjaCB1bmlxdWUgZXZlbnRUeXBlS2V5XG4gICAgICAgIGNvbnN0IHVuaXF1ZUV2ZW50cyA9IG5ldyBNYXAoKTtcblxuICAgICAgICB2YWx1ZS5rcGlDb25maWcuZGF0YVNvdXJjZS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgIGlmICghdW5pcXVlRXZlbnRzLmhhcyhpdGVtLmV2ZW50VHlwZUtleSkpIHtcbiAgICAgICAgICAgIHVuaXF1ZUV2ZW50cy5zZXQoaXRlbS5ldmVudFR5cGVLZXksIGl0ZW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gQ29udmVydCB0aGUgbWFwIHZhbHVlcyB0byBhbiBhcnJheVxuICAgICAgICBjb25zdCByZXN1bHQgPSBBcnJheS5mcm9tKHVuaXF1ZUV2ZW50cy52YWx1ZXMoKSk7XG4gICAgICAgIC8vIFN0ZXAgMjogR2V0IHRoZSBtb3N0IHJlY2VudCBhbmQgcHJldmlvdXMgZGF0ZXNcbiAgICAgICAgdGhpcy5sb2FkRGFpbHlNc2NWb2ljZVRhYmxlKHJlc3VsdClcblxuICAgICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuXG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuXG4gIHRhYmxlRGF0YVNvdXJjZTogYW55ID0gW107XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjb21tb25TZXJ2aWNlOiBDb21tb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gdGhpcy5sb2FkRGFpbHlNc2NWb2ljZVRhYmxlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIGxvYWREYWlseU1zY1ZvaWNlVGFibGUoZGF0YSkge1xuXG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UgPSBbXTtcblxuXG4gICAgbGV0IGRhdGFzZXQgPSBbXTtcbiAgICBsZXQgY29sdW1uMU5hbWUgPSAnYWNjZXNzX2Nvc3Rfc2FyJztcbiAgICBsZXQgY29sdW1uMk5hbWUgPSAnaWN0X2Nvc3Rfc2FyJztcbiAgICBsZXQgY29sdW1uM05hbWUgPSAnbWFyZ2luX3Nhcic7XG4gICAgbGV0IGNvbHVtbjROYW1lID0gJ3JldmVudWUnO1xuICAgIGxldCByZXZlbnVlQXJyID0gW10sIGludGVyQ29ubmVjdEFyciA9IFtdLCBhY2Nlc3NDb3N0QXJyID0gW10sIG1hcmdpbkFyciA9IFtdO1xuICAgIGZvciAoY29uc3QgW2ksIHZdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGEpKSB7XG4gICAgICBpZiAodltjb2x1bW4xTmFtZV0gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHZbY29sdW1uMU5hbWVdID0gMDtcbiAgICAgIH1cbiAgICAgIGlmICh2W2NvbHVtbjJOYW1lXSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdltjb2x1bW4yTmFtZV0gPSAwO1xuICAgICAgfVxuICAgICAgaWYgKHZbY29sdW1uM05hbWVdID09IHVuZGVmaW5lZCkge1xuICAgICAgICB2W2NvbHVtbjNOYW1lXSA9IDA7XG4gICAgICB9XG4gICAgICBpZiAodltjb2x1bW40TmFtZV0gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHZbY29sdW1uNE5hbWVdID0gMDtcbiAgICAgIH1cbiAgICAgIGFjY2Vzc0Nvc3RBcnIucHVzaCh2W2NvbHVtbjFOYW1lXSk7XG4gICAgICBpbnRlckNvbm5lY3RBcnIucHVzaCh2W2NvbHVtbjJOYW1lXSk7XG4gICAgICBtYXJnaW5BcnIucHVzaCh2W2NvbHVtbjNOYW1lXSk7XG4gICAgICByZXZlbnVlQXJyLnB1c2godltjb2x1bW40TmFtZV0pO1xuICAgIH1cbiAgICBsZXQgbWF4QWNjZXNzQ29zdFZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIGFjY2Vzc0Nvc3RBcnIpO1xuICAgIGxldCBtaW5BY2Nlc3NDb3N0VmFsID0gTWF0aC5taW4uYXBwbHkoTWF0aCwgYWNjZXNzQ29zdEFycik7XG4gICAgbGV0IG1heGludGVyQ29ubmVjdFZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIGludGVyQ29ubmVjdEFycik7XG4gICAgbGV0IG1pbmludGVyQ29ubmVjdFZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIGludGVyQ29ubmVjdEFycik7XG4gICAgbGV0IG1heG1hcmdpblZhbCA9IE1hdGgubWF4LmFwcGx5KE1hdGgsIG1hcmdpbkFycik7XG4gICAgbGV0IG1pbm1hcmdpblZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIG1hcmdpbkFycik7XG4gICAgbGV0IG1heFJldmVudWVWYWwgPSBNYXRoLm1heC5hcHBseShNYXRoLCByZXZlbnVlQXJyKTtcbiAgICBsZXQgbWluUmV2ZW51ZVZhbCA9IE1hdGgubWluLmFwcGx5KE1hdGgsIHJldmVudWVBcnIpO1xuXG5cbiAgICBmb3IgKGNvbnN0IFtpLCB2XSBvZiBPYmplY3QuZW50cmllcyhkYXRhKSkge1xuICAgICAgbGV0IHIgPSBbXTtcbiAgICAgIGxldCBhY2Nlc3NDb3N0VmFsdWUsIGludGVyQ29ubmVjdFZhbHVlLCBtYXJnaW5WYWx1ZSwgcmV2ZW51ZVZhbHVlO1xuXG4gICAgICBpZiAodltjb2x1bW4xTmFtZV0gPiAwKSB7XG4gICAgICAgIGFjY2Vzc0Nvc3RWYWx1ZSA9IHRoaXMuY29tbW9uU2VydmljZS5zY2FsZU51bWJlcihwYXJzZUZsb2F0KHZbY29sdW1uMU5hbWVdKSwgbWF4QWNjZXNzQ29zdFZhbCwgbWluQWNjZXNzQ29zdFZhbCwgMTAsIDc1KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjY2Vzc0Nvc3RWYWx1ZSA9IDA7XG4gICAgICB9XG4gICAgICBpZiAodltjb2x1bW4yTmFtZV0gPiAwKSB7XG4gICAgICAgIGludGVyQ29ubmVjdFZhbHVlID0gdGhpcy5jb21tb25TZXJ2aWNlLnNjYWxlTnVtYmVyKHBhcnNlRmxvYXQodltjb2x1bW4yTmFtZV0pLCBtYXhpbnRlckNvbm5lY3RWYWwsIG1pbmludGVyQ29ubmVjdFZhbCwgMTAsIDc1KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGludGVyQ29ubmVjdFZhbHVlID0gMDtcbiAgICAgIH1cbiAgICAgIGlmICh2W2NvbHVtbjNOYW1lXSA+IDApIHtcbiAgICAgICAgbWFyZ2luVmFsdWUgPSB0aGlzLmNvbW1vblNlcnZpY2Uuc2NhbGVOdW1iZXIocGFyc2VGbG9hdCh2W2NvbHVtbjNOYW1lXSksIG1heG1hcmdpblZhbCwgbWlubWFyZ2luVmFsLCAxMCwgNzUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWFyZ2luVmFsdWUgPSAwO1xuICAgICAgfVxuICAgICAgaWYgKHZbY29sdW1uNE5hbWVdID4gMCkge1xuICAgICAgICByZXZlbnVlVmFsdWUgPSB0aGlzLmNvbW1vblNlcnZpY2Uuc2NhbGVOdW1iZXIocGFyc2VGbG9hdCh2W2NvbHVtbjROYW1lXSksIG1heFJldmVudWVWYWwsIG1pblJldmVudWVWYWwsIDEwLCA3NSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXZlbnVlVmFsdWUgPSAwO1xuICAgICAgfVxuXG4gICAgICBsZXQgYWNjZXNzQ29zdEJhciA9IHRoaXMuY29tbW9uU2VydmljZS5jcmVhdGVIdG1sKGFjY2Vzc0Nvc3RWYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uMU5hbWVdKSwgJyMwMDJFNzAnKTtcbiAgICAgIGxldCBpbnRlcmNvbm5lY3RCYXIgPSB0aGlzLmNvbW1vblNlcnZpY2UuY3JlYXRlSHRtbChpbnRlckNvbm5lY3RWYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uMk5hbWVdKSwgJyNGNDY2MDQnKTtcbiAgICAgIGxldCBtYXJnaW5CYXIgPSB0aGlzLmNvbW1vblNlcnZpY2UuY3JlYXRlSHRtbChtYXJnaW5WYWx1ZSwgdGhpcy5jb21tb25TZXJ2aWNlLnJlZm9ybWF0TnVtYmVyV2l0aFRob3VzYW5kU2VwYXJhdG9yKHZbY29sdW1uM05hbWVdKSwgJyMzZDg3MDYnKTtcbiAgICAgIGxldCByZXZlbnVlQmFyID0gdGhpcy5jb21tb25TZXJ2aWNlLmNyZWF0ZUh0bWwocmV2ZW51ZVZhbHVlLCB0aGlzLmNvbW1vblNlcnZpY2UucmVmb3JtYXROdW1iZXJXaXRoVGhvdXNhbmRTZXBhcmF0b3Iodltjb2x1bW40TmFtZV0pLCAnI2ZmYWM0MicpO1xuXG4gICAgICBsZXQgbm9kZSA9IHtcbiAgICAgICAgJ2V2ZW50VHlwZSc6IHRoaXMuZ2V0RXZlbnRUeXBlTmFtZSh2WydldmVudFR5cGVLZXknXSksXG4gICAgICAgICdhY2Nlc3NfY29zdF9zYXInOiBhY2Nlc3NDb3N0QmFyLFxuICAgICAgICAnbWFyZ2luX3Nhcic6IG1hcmdpbkJhcixcbiAgICAgICAgJ2ljdF9jb3N0X3Nhcic6IGludGVyY29ubmVjdEJhcixcbiAgICAgICAgJ3JldmVudWUnOiByZXZlbnVlQmFyLFxuICAgICAgfTtcblxuICAgICAgdGhpcy50YWJsZURhdGFTb3VyY2UucHVzaChub2RlKTtcbiAgICB9XG5cbiAgfVxuXG5cbiAgZ2V0RXZlbnRUeXBlTmFtZShrZXkpIHtcblxuICAgIGlmIChrZXkgPT0gXCIxXCIpIHtcbiAgICAgIHJldHVybiBcIlZvaWNlXCJcbiAgICB9IGVsc2UgaWYgKGtleSA9PSBcIjJcIikge1xuICAgICAgcmV0dXJuIFwiU01TXCJcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFwiR1BSU1wiXG4gICAgfVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJteC0yIGJnLWdyYXktODAwXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTG9hZGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLXN0YXJ0IGJnLWdyYXktODAwIHAtMlwiPlxuICAgICAgICAgICAgPGFwcC1sb2FkZXI+PC9hcHAtbG9hZGVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxkaXYgY2xhc3M9XCJteC0yIHBiLTJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRlclwiPlxuICAgICAgICAgICAgPGR4LWRhdGEtZ3JpZCBbY29sdW1uQXV0b1dpZHRoXT1cInRydWVcIiBbZGF0YVNvdXJjZV09XCJ0YWJsZURhdGFTb3VyY2VcIiBbc2VsZWN0ZWRSb3dLZXlzXT1cIltdXCJcbiAgICAgICAgICAgICAgICBbc2hvd0JvcmRlcnNdPVwidHJ1ZVwiIFtzaG93Um93TGluZXNdPVwidHJ1ZVwiIGlkPVwiZ3JpZENvbnRhaW5lclwiIFtoZWlnaHRdPVwiMzcwXCI+XG4gICAgICAgICAgICAgICAgPGR4by1zZWFyY2gtcGFuZWwgW2hpZ2hsaWdodENhc2VTZW5zaXRpdmVdPVwidHJ1ZVwiIFt2aXNpYmxlXT1cInRydWVcIj48L2R4by1zZWFyY2gtcGFuZWw+XG4gICAgICAgICAgICAgICAgPGR4by1leHBvcnQgW2VuYWJsZWRdPVwidHJ1ZVwiPjwvZHhvLWV4cG9ydD5cbiAgICAgICAgICAgICAgICA8ZHhvLXBhZ2luZyBbcGFnZVNpemVdPVwiN1wiPjwvZHhvLXBhZ2luZz5cbiAgICAgICAgICAgICAgICA8ZHhvLXBhZ2VyIFtzaG93SW5mb109XCJ0cnVlXCIgW3Nob3dQYWdlU2l6ZVNlbGVjdG9yXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgPC9keG8tcGFnZXI+XG4gICAgICAgICAgICAgICAgPGR4by1zZWxlY3Rpb24gbW9kZT1cInNpbmdsZVwiPjwvZHhvLXNlbGVjdGlvbj5cbiAgICAgICAgICAgICAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJldmVudFR5cGVcIj48L2R4aS1jb2x1bW4+XG4gICAgICAgICAgICAgICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiYWNjZXNzX2Nvc3Rfc2FyXCIgY2VsbFRlbXBsYXRlPVwiY2VsbFRlbXBsYXRlMVwiPjwvZHhpLWNvbHVtbj5cbiAgICAgICAgICAgICAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJtYXJnaW5fc2FyXCIgY2VsbFRlbXBsYXRlPVwiY2VsbFRlbXBsYXRlMlwiPjwvZHhpLWNvbHVtbj5cbiAgICAgICAgICAgICAgICA8ZHhpLWNvbHVtbiBkYXRhRmllbGQ9XCJpY3RfY29zdF9zYXJcIiBjZWxsVGVtcGxhdGU9XCJjZWxsVGVtcGxhdGUzXCI+PC9keGktY29sdW1uPlxuICAgICAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cInJldmVudWVcIiBjZWxsVGVtcGxhdGU9XCJjZWxsVGVtcGxhdGU0XCI+PC9keGktY29sdW1uPlxuXG5cbiAgICAgICAgICAgICAgICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGRhdGEgb2YgJ2NlbGxUZW1wbGF0ZTEnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJkYXRhLnZhbHVlIHwgY29udGVudFNhZmVIdG1sXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBkYXRhIG9mICdjZWxsVGVtcGxhdGUyJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YS52YWx1ZSB8IGNvbnRlbnRTYWZlSHRtbFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgZGF0YSBvZiAnY2VsbFRlbXBsYXRlMydcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImRhdGEudmFsdWUgfCBjb250ZW50U2FmZUh0bWxcIj48L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2ICpkeFRlbXBsYXRlPVwibGV0IGRhdGEgb2YgJ2NlbGxUZW1wbGF0ZTQnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJkYXRhLnZhbHVlIHwgY29udGVudFNhZmVIdG1sXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwvZHgtZGF0YS1ncmlkPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -2,15 +2,13 @@ import { Component, Input } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "../../common";
|
|
4
4
|
import * as i2 from "ngx-toastr";
|
|
5
|
-
import * as i3 from "../
|
|
6
|
-
import * as i4 from "
|
|
7
|
-
import * as i5 from "
|
|
8
|
-
import * as i6 from "../loader/loader.component";
|
|
5
|
+
import * as i3 from "../kpi-comon-service";
|
|
6
|
+
import * as i4 from "@angular/common";
|
|
7
|
+
import * as i5 from "../loader/loader.component";
|
|
9
8
|
export class GamamWidgetComponent {
|
|
10
|
-
constructor(commonService, toastr,
|
|
9
|
+
constructor(commonService, toastr, kpiService) {
|
|
11
10
|
this.commonService = commonService;
|
|
12
11
|
this.toastr = toastr;
|
|
13
|
-
this.service = service;
|
|
14
12
|
this.kpiService = kpiService;
|
|
15
13
|
this.isLoader = true;
|
|
16
14
|
}
|
|
@@ -25,13 +23,13 @@ export class GamamWidgetComponent {
|
|
|
25
23
|
ngOnInit() {
|
|
26
24
|
}
|
|
27
25
|
}
|
|
28
|
-
GamamWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: GamamWidgetComponent, deps: [{ token: i1.CommonService }, { token: i2.ToastrService }, { token: i3.
|
|
29
|
-
GamamWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: GamamWidgetComponent, selector: "app-gamam-widget", inputs: { widgetConfigSource: "widgetConfigSource" }, ngImport: i0, template: "<div class=\"w-full my-1\">\n <div class=\"block mx-1 rounded-lg shadow-lg bg-white border border-gray-200 rounded-lg shadow-md\n dark:bg-gray-800 dark:border-gray-700 max-w-sm\">\n <div\n class=\"py-3 px-6 bg-white border border-gray-200 rounded-lg shadow-md dark:bg-gray-800 dark:border-gray-700\">\n <div class=\"flex justify-between\">\n <div class=\"flex items-center float-start\">\n {{page_config.title}}\n </div>\n <div class=\"flex items-center float-end\">\n <i class=\"{{page_config.icon}}\"></i>\n </div>\n\n </div>\n </div>\n <app-loader *ngIf=\"isLoader\"></app-loader>\n\n <div class=\"p-2\" *ngIf=\"!isLoader\">\n <div class=\"flex flex-row items-center justify-center m-0\">\n <div class=\"w-full px-2 \">\n <div class=\"flex justify-center items-center text-4xl font-bold text-{{page_config.color}} p-2\">\n {{page_config.count}}\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type:
|
|
26
|
+
GamamWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: GamamWidgetComponent, deps: [{ token: i1.CommonService }, { token: i2.ToastrService }, { token: i3.kpicommonService }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
GamamWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: GamamWidgetComponent, selector: "app-gamam-widget", inputs: { widgetConfigSource: "widgetConfigSource" }, ngImport: i0, template: "<div class=\"w-full my-1\">\n <div class=\"block mx-1 rounded-lg shadow-lg bg-white border border-gray-200 rounded-lg shadow-md\n dark:bg-gray-800 dark:border-gray-700 max-w-sm\">\n <div\n class=\"py-3 px-6 bg-white border border-gray-200 rounded-lg shadow-md dark:bg-gray-800 dark:border-gray-700\">\n <div class=\"flex justify-between\">\n <div class=\"flex items-center float-start\">\n {{page_config.title}}\n </div>\n <div class=\"flex items-center float-end\">\n <i class=\"{{page_config.icon}}\"></i>\n </div>\n\n </div>\n </div>\n <app-loader *ngIf=\"isLoader\"></app-loader>\n\n <div class=\"p-2\" *ngIf=\"!isLoader\">\n <div class=\"flex flex-row items-center justify-center m-0\">\n <div class=\"w-full px-2 \">\n <div class=\"flex justify-center items-center text-4xl font-bold text-{{page_config.color}} p-2\">\n {{page_config.count}}\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.LoaderComponent, selector: "app-loader" }] });
|
|
30
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: GamamWidgetComponent, decorators: [{
|
|
31
29
|
type: Component,
|
|
32
30
|
args: [{ selector: 'app-gamam-widget', template: "<div class=\"w-full my-1\">\n <div class=\"block mx-1 rounded-lg shadow-lg bg-white border border-gray-200 rounded-lg shadow-md\n dark:bg-gray-800 dark:border-gray-700 max-w-sm\">\n <div\n class=\"py-3 px-6 bg-white border border-gray-200 rounded-lg shadow-md dark:bg-gray-800 dark:border-gray-700\">\n <div class=\"flex justify-between\">\n <div class=\"flex items-center float-start\">\n {{page_config.title}}\n </div>\n <div class=\"flex items-center float-end\">\n <i class=\"{{page_config.icon}}\"></i>\n </div>\n\n </div>\n </div>\n <app-loader *ngIf=\"isLoader\"></app-loader>\n\n <div class=\"p-2\" *ngIf=\"!isLoader\">\n <div class=\"flex flex-row items-center justify-center m-0\">\n <div class=\"w-full px-2 \">\n <div class=\"flex justify-center items-center text-4xl font-bold text-{{page_config.color}} p-2\">\n {{page_config.count}}\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
|
|
33
|
-
}], ctorParameters: function () { return [{ type: i1.CommonService }, { type: i2.ToastrService }, { type: i3.
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.CommonService }, { type: i2.ToastrService }, { type: i3.kpicommonService }]; }, propDecorators: { widgetConfigSource: [{
|
|
34
32
|
type: Input,
|
|
35
33
|
args: ['widgetConfigSource']
|
|
36
34
|
}] } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtYW0td2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dhbW1hLWFwcC1jb250cm9sbGVyL3NyYy9saWIvYXBwbGljYXRpb24tY29udHJvbGxlci9zaGFyZWQvZ2FtYW0td2lkZ2V0L2dhbWFtLXdpZGdldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nYW1tYS1hcHAtY29udHJvbGxlci9zcmMvbGliL2FwcGxpY2F0aW9uLWNvbnRyb2xsZXIvc2hhcmVkL2dhbWFtLXdpZGdldC9nYW1hbS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFVekQsTUFBTSxPQUFPLG9CQUFvQjtJQU0vQixZQUNTLGFBQTRCLEVBQzNCLE1BQXFCLEVBQ3JCLFVBQTRCO1FBRjdCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFMdEMsYUFBUSxHQUFZLElBQUksQ0FBQztJQU1yQixDQUFDO0lBRUwsSUFDSSxrQkFBa0IsQ0FBQyxLQUFLO1FBSTFCLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtTQUU5QzthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FXdkI7SUFFSCxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7O2lIQXJDVSxvQkFBb0I7cUdBQXBCLG9CQUFvQiw4R0NWakMsbXJDQTJCTTsyRkRqQk8sb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjsrSkFpQnhCLGtCQUFrQjtzQkFEckIsS0FBSzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvYXN0clNlcnZpY2UgfSBmcm9tICduZ3gtdG9hc3RyJztcbmltcG9ydCB7IGtwaWNvbW1vblNlcnZpY2UgfSBmcm9tICcuLi9rcGktY29tb24tc2VydmljZSc7XG5pbXBvcnQgeyBDb21tb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWdhbWFtLXdpZGdldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9nYW1hbS13aWRnZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9nYW1hbS13aWRnZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHYW1hbVdpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgc3Vic2NyaWJlcl9jb3VudDtcbiAgcGFnZV9jb25maWc7XG4gIGlzTG9hZGVyOiBib29sZWFuID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgY29tbW9uU2VydmljZTogQ29tbW9uU2VydmljZSxcbiAgICBwcml2YXRlIHRvYXN0cjogVG9hc3RyU2VydmljZSxcbiAgICBwcml2YXRlIGtwaVNlcnZpY2U6IGtwaWNvbW1vblNlcnZpY2VcbiAgKSB7IH1cblxuICBASW5wdXQoJ3dpZGdldENvbmZpZ1NvdXJjZScpXG4gIHNldCB3aWRnZXRDb25maWdTb3VyY2UodmFsdWUpIHtcblxuICAgIC8vIGNvbnNvbGUubG9nKHZhbHVlKTtcbiAgICAvLyBjb25zb2xlLmxvZyh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUubGVuZ3RoID09PSAwKSB7XG5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wYWdlX2NvbmZpZyA9IHZhbHVlO1xuICAgICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuXG4gICAgICAvLyB0aGlzLnNlcnZpY2UuZ2V0VW5pcXVlRGF0YSh2YWx1ZS5rcGlDb25maWcuYXBpKS5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgLy8gICB0aGlzLnN1YnNjcmliZXJfY291bnQgPSB0aGlzLmNvbW1vblNlcnZpY2UucmVmb3JtYXROdW1iZXJXaXRoVGhvdXNhbmRTZXBhcmF0b3JWMihkYXRhLCAwKTtcbiAgICAgIC8vICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuICAgICAgLy8gfSwgZXJyb3IgPT4ge1xuICAgICAgLy8gICB0aGlzLnRvYXN0ci5lcnJvcignVW5leHBlY3RlZCBTZXJ2ZXIgRXhjZXB0aW9uLiBQbGVhc2UgY29udGFjdCBTeXN0ZW0gQWRtaW4uJywgJ1VuaXF1ZSBTdWJzY3JpYmVyJyk7XG4gICAgICAvLyB9KVxuXG4gICAgICAvLyB0aGlzLnRvYXN0ci5lcnJvcignVW5leHBlY3RlZCBTZXJ2ZXIgRXhjZXB0aW9uLiBQbGVhc2UgY29udGFjdCBTeXN0ZW0gQWRtaW4uJywgJ2Vycm9yJyk7XG5cbiAgICB9XG5cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3LWZ1bGwgbXktMVwiPlxuICAgIDxkaXYgY2xhc3M9XCJibG9jayBteC0xIHJvdW5kZWQtbGcgc2hhZG93LWxnIGJnLXdoaXRlIGJvcmRlciBib3JkZXItZ3JheS0yMDAgcm91bmRlZC1sZyBzaGFkb3ctbWRcbiAgICAgICAgICAgICAgICAgZGFyazpiZy1ncmF5LTgwMCBkYXJrOmJvcmRlci1ncmF5LTcwMCBtYXgtdy1zbVwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInB5LTMgcHgtNiBiZy13aGl0ZSBib3JkZXIgYm9yZGVyLWdyYXktMjAwIHJvdW5kZWQtbGcgc2hhZG93LW1kIGRhcms6YmctZ3JheS04MDAgZGFyazpib3JkZXItZ3JheS03MDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBmbG9hdC1zdGFydFwiPlxuICAgICAgICAgICAgICAgICAgICB7e3BhZ2VfY29uZmlnLnRpdGxlfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZmxvYXQtZW5kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwie3twYWdlX2NvbmZpZy5pY29ufX1cIj48L2k+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGFwcC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRlclwiPjwvYXBwLWxvYWRlcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicC0yXCIgKm5nSWY9XCIhaXNMb2FkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBtLTBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIHB4LTIgXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB0ZXh0LTR4bCBmb250LWJvbGQgdGV4dC17e3BhZ2VfY29uZmlnLmNvbG9yfX0gcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e3BhZ2VfY29uZmlnLmNvdW50fX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
package/esm2020/lib/application-controller/shared/gamma-bread-crumbs/bread-crumbs.component.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { environment } from "../../environment";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "@angular/common";
|
|
5
4
|
import * as i2 from "@angular/router";
|
|
@@ -48,7 +47,6 @@ export class BreadCrumbsComponent {
|
|
|
48
47
|
'desc': result['desc'],
|
|
49
48
|
'relativePath': result['relativePath'],
|
|
50
49
|
'kpiId': result['id'],
|
|
51
|
-
'kpiGifUrl': environment.appUrl + environment.apiVersion + '/kpi/gif?id=' + result['id'],
|
|
52
50
|
'isBookmarked': result['isBookmarked'],
|
|
53
51
|
};
|
|
54
52
|
}
|
|
@@ -141,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
141
139
|
type: Input,
|
|
142
140
|
args: ['kpi_data_container']
|
|
143
141
|
}] } });
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWQtY3J1bWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dhbW1hLWFwcC1jb250cm9sbGVyL3NyYy9saWIvYXBwbGljYXRpb24tY29udHJvbGxlci9zaGFyZWQvZ2FtbWEtYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nYW1tYS1hcHAtY29udHJvbGxlci9zcmMvbGliL2FwcGxpY2F0aW9uLWNvbnRyb2xsZXIvc2hhcmVkL2dhbW1hLWJyZWFkLWNydW1icy9icmVhZC1jcnVtYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFRaEQsTUFBTSxPQUFPLG9CQUFvQjtJQWdDL0IsWUFDVSxRQUFrQixFQUNsQixNQUFjLEVBQ2QsSUFBZ0IsRUFDaEIsY0FBOEIsRUFDOUIsYUFBNEI7UUFKNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUEvQnRDLGdCQUFXLEdBQVEsRUFBRSxDQUFDO1FBQ3RCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFFZixTQUFJLEdBQUcsRUFBRSxDQUFDO0lBNEJOLENBQUM7SUF2QkwsSUFDSSxrQkFBa0IsQ0FBQyxLQUFLO1FBQzFCLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUM3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QkFDM0MsRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO3dCQUMxQixPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7d0JBQy9CLFFBQVEsRUFBRSxRQUFRO3FCQUNuQixDQUFDO29CQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzdEO2dCQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDckM7WUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQzs7aUhBOUpVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLGdIQ2JqQyx5aENBZU07MkZERk8sb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLG9CQUFvQjtzTUFvQjFCLGtCQUFrQjtzQkFEckIsS0FBSzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRXh0cmFzLCBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IENvbW1vblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29tbW9uXCI7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gXCIuLi8uLi9lbnZpcm9ubWVudFwiO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJnYW1tYS1icmVhZC1jcnVtYnNcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9icmVhZC1jcnVtYnMuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2JyZWFkLWNydW1icy5jb21wb25lbnQuc2Nzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWRDcnVtYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGJyZWFkY3J1bWJMaXN0O1xuICBicmVhZGNydW1iTGlua3NMaXN0O1xuICByb3V0ZTogc3RyaW5nO1xuICBjb3VudDogbnVtYmVyO1xuICBrcGlMaXN0RGF0YTogYW55ID0gW107XG4gIGtwaV9zdHJ1Y3R1cmVzID0ge307XG4gIGtwaV9uYW1lcyA9IHt9O1xuICBrcGlVcmxJRDtcbiAgZGF0YSA9IFtdO1xuXG4gIGtwaUJyb3dzZXJOYW1lOiBCb29sZWFuO1xuICBpc0JyZWFkQ3J1bWJzOiBCb29sZWFuO1xuXG4gIEBJbnB1dCgna3BpX2RhdGFfY29udGFpbmVyJylcbiAgc2V0IGtwaV9kYXRhX2NvbnRhaW5lcih2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5pc0JyZWFkQ3J1bWJzID0gZmFsc2U7XG4gICAgICAvLyB0aGlzLmFkZFJvbGVDb250YWluZXIgPSBbeyBcInR5cGVcIjogXCJ0ZXh0XCIsIFwidmFsdWVcIjogJycsIFwicm9sZWlkXCI6IFwicm93SWQwXCIgfV07XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHRoaXMua3BpTGlzdERhdGEgPSB2YWx1ZTtcbiAgICAgIGxldCByZWxhdGl2ZVBhdGggPSAncmFrcGlCcm93c2VyJztcbiAgICAgIHRoaXMuZ2V0S3BpTmFtZSh2YWx1ZSwgcmVsYXRpdmVQYXRoKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRCcmVhZENydW1icygpO1xuICAgICAgfSwgNTAwKTtcbiAgICAgIHRoaXMuaXNCcmVhZENydW1icyA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb24sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBjb21tb25TZXJ2aWNlOiBDb21tb25TZXJ2aWNlLFxuICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuXG5cbiAgfVxuXG4gIGdldEtwaU5hbWUoZGF0YSwgcmVsYXRpdmVQYXRoKSB7XG5cbiAgICBkYXRhLmZvckVhY2gocmVzdWx0ID0+IHtcbiAgICAgIGNvbnN0IGl0ZW0gPSB7fTtcbiAgICAgIGxldCBvYmo7XG4gICAgICBpdGVtWydyZWxhdGl2ZVBhdGgnXSA9IHJlbGF0aXZlUGF0aDtcblxuICAgICAgaWYgKHJlc3VsdFsnbm9kZXMnXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGxldCBjaGlsZFJlbGF0aXZlUGF0aCA9IHJlbGF0aXZlUGF0aCArICcvJyArIHJlc3VsdFsnbmFtZSddO1xuICAgICAgICB0aGlzLmdldEtwaU5hbWUocmVzdWx0Wydub2RlcyddLCBjaGlsZFJlbGF0aXZlUGF0aCk7XG4gICAgICB9XG4gICAgICBpZiAocmVzdWx0WydpZCddKSB7XG4gICAgICAgIG9iaiA9IHtcbiAgICAgICAgICAnbmFtZSc6IHJlc3VsdFsnbmFtZSddLFxuICAgICAgICAgICdkZXNjJzogcmVzdWx0WydkZXNjJ10sXG4gICAgICAgICAgJ3JlbGF0aXZlUGF0aCc6IHJlc3VsdFsncmVsYXRpdmVQYXRoJ10sXG4gICAgICAgICAgJ2twaUlkJzogcmVzdWx0WydpZCddLFxuICAgICAgICAgICdrcGlHaWZVcmwnOiBlbnZpcm9ubWVudC5hcHBVcmwgKyBlbnZpcm9ubWVudC5hcGlWZXJzaW9uICsgJy9rcGkvZ2lmP2lkPScgKyByZXN1bHRbJ2lkJ10sXG4gICAgICAgICAgJ2lzQm9va21hcmtlZCc6IHJlc3VsdFsnaXNCb29rbWFya2VkJ10sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpdGVtWydleHRlcm5hbExpbmsnXSA9IHJlbGF0aXZlUGF0aCArICcvJyArIHJlc3VsdFsnbmFtZSddXG4gICAgICBpdGVtWyd0aWQnXSA9IHJlc3VsdFsndGlkJ107XG4gICAgICBpdGVtWydpZCddID0gcmVzdWx0WydpZCddO1xuICAgICAgaXRlbVsnbmFtZSddID0gcmVzdWx0WyduYW1lJ107XG5cbiAgICAgIHRoaXMua3BpTGlzdERhdGEucHVzaChpdGVtKTtcbiAgICB9KTtcblxuICB9XG5cblxuICBnZXRCcmVhZENydW1ic0RhdGEoZGF0YSkge1xuICAgIGxldCBzdHJ1Y3R1cmVzID0ge307XG4gICAgZGF0YS5mb3JFYWNoKHJlc3VsdCA9PiB7XG4gICAgICBjb25zdCBpdGVtOiBvYmplY3QgPSB7fTtcbiAgICAgIGl0ZW1bXCJyZWxhdGl2ZVBhdGhcIl0gPSByZXN1bHQucmVsYXRpdmVQYXRoO1xuICAgICAgaXRlbVtcIm5hbWVcIl0gPSByZXN1bHRbXCJuYW1lXCJdO1xuICAgICAgaXRlbVtcInRpZFwiXSA9IHJlc3VsdFtcInRpZFwiXS50cmltKCk7XG4gICAgICBpZiAocmVzdWx0W1wibm9kZXNcIl0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpdGVtW1wibm9kZXNcIl0gPSB0aGlzLmdldEJyZWFkQ3J1bWJzRGF0YShcbiAgICAgICAgICByZXN1bHRbXCJub2Rlc1wiXVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgdGhpcy5rcGlfbmFtZXNbcmVzdWx0W1wiaWRcIl1dID0gaXRlbVtcInRpZFwiXTtcblxuICAgICAgc3RydWN0dXJlc1tyZXN1bHRbXCJ0aWRcIl1dID0gaXRlbTtcbiAgICAgIHRoaXMua3BpX3N0cnVjdHVyZXNbcmVzdWx0W1widGlkXCJdXSA9IGl0ZW07XG4gICAgfSk7XG4gICAgcmV0dXJuIHN0cnVjdHVyZXM7XG4gIH1cblxuICBsb2FkQnJlYWRDcnVtYnMoKSB7XG5cbiAgICBsZXQga3BpUm9vdCA9IHRoaXMua3BpQnJvd3Nlck5hbWUgPyBcImZtc2twaVwiIDogXCJyYWtwaVwiO1xuICAgIGxldCBrcGlDb250YWluZXI7XG4gICAgLy8gY29uc3QgbmF2dXJsID0gdGhpcy5yb3V0ZXIudXJsLnNwbGl0KFwiP1wiKTtcbiAgICAvLyBsZXQgdXJsID0gbmF2dXJsWzBdLnNwbGl0KFwiL1wiKTtcbiAgICAvLyB0aGlzLmtwaVVybElEID0gdXJsLnNsaWNlKC0xKS5wb3AoKTtcblxuICAgIGlmICh0aGlzLmtwaUxpc3REYXRhLmxlbmd0aCA+IDAgfHwgdGhpcy5rcGlMaXN0RGF0YSAhPSB1bmRlZmluZWQpIHtcbiAgICAgIGtwaUNvbnRhaW5lciA9IHRoaXMuZ2V0QnJlYWRDcnVtYnNEYXRhKHRoaXMua3BpTGlzdERhdGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBrcGlDb250YWluZXIgPSB0aGlzLmdldEJyZWFkQ3J1bWJzRGF0YShcbiAgICAgICAgdGhpcy5jb21tb25TZXJ2aWNlLmFsbEtwaWJyb3dzZXJEZXRhaWxDb250YWluZXIsXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCBrcGlJZCA9IHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbJ2lkJ107XG4gICAgY29uc3Qga3BpVGlkID0gdGhpcy5rcGlfbmFtZXNba3BpSWRdO1xuICAgIGNvbnN0IHByb3BzID0gdGhpcy5rcGlfc3RydWN0dXJlc1trcGlUaWRdO1xuICAgIGNvbnN0IHByb3BzTGlzdCA9IHByb3BzW1wicmVsYXRpdmVQYXRoXCJdICsgXCIvXCIgKyBwcm9wc1tcIm5hbWVcIl07XG4gICAgdGhpcy5icmVhZGNydW1iTGlzdCA9IHByb3BzTGlzdC5zcGxpdChcIi9cIik7XG5cbiAgICBpZiAodGhpcy5sb2NhdGlvbi5wYXRoKCkgIT09IFwiXCIpIHtcbiAgICAgIGxldCBsaW5rID0ge307XG4gICAgICB0aGlzLmJyZWFkY3J1bWJMaW5rc0xpc3QgPSBbXTtcblxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmJyZWFkY3J1bWJMaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChpID09IDApIHtcbiAgICAgICAgICBpZiAoIXRoaXMua3BpQnJvd3Nlck5hbWUpIHtcbiAgICAgICAgICAgIGxpbmsgPSB7XG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuYnJlYWRjcnVtYkxpc3RbaV0sXG4gICAgICAgICAgICAgIHVybDogXCIvYXBwcy9yYUtwaS9yYWtwaUJyb3dzZXJcIixcbiAgICAgICAgICAgICAga3BpTmFtZTogXCJSQSBLUEkgQnJvd3NlclwiLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGluayA9IHtcbiAgICAgICAgICAgICAgbmFtZTogdGhpcy5icmVhZGNydW1iTGlzdFtpXSxcbiAgICAgICAgICAgICAgdXJsOiBcIi9hcHBzL2Ztc0twaVwiLFxuICAgICAgICAgICAgICBrcGlOYW1lOiBcIkZNUyBLUEkgQnJvd3NlclwiLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbGV0IHJldHVybklkID0gXCJcIjtcbiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8PSBpOyBqKyspIHtcbiAgICAgICAgICAgIGlmIChqICE9IDApIHtcbiAgICAgICAgICAgICAgcmV0dXJuSWQgKz0gXCIvXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm5JZCArPSB0aGlzLmJyZWFkY3J1bWJMaXN0W2pdO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsaW5rID0ge1xuICAgICAgICAgICAgbmFtZTogdGhpcy5icmVhZGNydW1iTGlzdFtpXSxcbiAgICAgICAgICAgIHVybDogdGhpcy5icmVhZGNydW1iTGlua3NMaXN0W2kgLSAxXVtcInVybFwiXSxcbiAgICAgICAgICAgIGlkOiB0aGlzLmJyZWFkY3J1bWJMaXN0W2ldLFxuICAgICAgICAgICAga3BpTmFtZTogdGhpcy5icmVhZGNydW1iTGlzdFtpXSxcbiAgICAgICAgICAgIHJldHVybklkOiByZXR1cm5JZCxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuY29tbW9uU2VydmljZS5nbG9iYWxfa3BpX25hbWUgPSB0aGlzLmJyZWFkY3J1bWJMaXN0W2ldO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYkxpbmtzTGlzdC5wdXNoKGxpbmspO1xuICAgICAgfVxuICAgICAgdGhpcy5jb3VudCA9IHRoaXMuYnJlYWRjcnVtYkxpc3QubGVuZ3RoO1xuICAgIH1cbiAgfVxufVxuIiwiPG5hdiBjbGFzcz1cImZsZXggbXQtMVwiIGFyaWEtbGFiZWw9XCJCcmVhZGNydW1iXCIgKm5nSWY9XCJpc0JyZWFkQ3J1bWJzXCI+XG4gICAgPG9sIGNsYXNzPVwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSBtZDpzcGFjZS14LTNcIj5cbiAgICAgICAgPGxpIGNsYXNzPVwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGN1cnNvci1wb2ludGVyXCIgKm5nRm9yPVwibGV0IGJyZWFkY3J1bWJMYWJlbCBvZiBicmVhZGNydW1iTGlua3NMaXN0O1wiPlxuICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiYnJlYWRjcnVtYkxhYmVsLnVybFwiIFtxdWVyeVBhcmFtc109XCJ7cmV0dXJuSWQ6IGJyZWFkY3J1bWJMYWJlbC5yZXR1cm5JZCB9XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDAgaG92ZXI6dGV4dC1ncmF5LTkwMCBkYXJrOnRleHQtZ3JheS00MDAgZGFyazpob3Zlcjp0ZXh0LXdoaXRlXCI+XG4gICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInctNiBoLTYgdGV4dC1ncmF5LTQwMFwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcbiAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy4yOTMgMTQuNzA3YTEgMSAwIDAxMC0xLjQxNEwxMC41ODYgMTAgNy4yOTMgNi43MDdhMSAxIDAgMDExLjQxNC0xLjQxNGw0IDRhMSAxIDAgMDEwIDEuNDE0bC00IDRhMSAxIDAgMDEtMS40MTQgMHpcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgICB7e2JyZWFkY3J1bWJMYWJlbC5rcGlOYW1lfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9saT5cbiAgICA8L29sPlxuPC9uYXY+Il19
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWQtY3J1bWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dhbW1hLWFwcC1jb250cm9sbGVyL3NyYy9saWIvYXBwbGljYXRpb24tY29udHJvbGxlci9zaGFyZWQvZ2FtbWEtYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9nYW1tYS1hcHAtY29udHJvbGxlci9zcmMvbGliL2FwcGxpY2F0aW9uLWNvbnRyb2xsZXIvc2hhcmVkL2dhbW1hLWJyZWFkLWNydW1icy9icmVhZC1jcnVtYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVl6RCxNQUFNLE9BQU8sb0JBQW9CO0lBZ0MvQixZQUNVLFFBQWtCLEVBQ2xCLE1BQWMsRUFDZCxJQUFnQixFQUNoQixjQUE4QixFQUM5QixhQUE0QjtRQUo1QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQS9CdEMsZ0JBQVcsR0FBUSxFQUFFLENBQUM7UUFDdEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVmLFNBQUksR0FBRyxFQUFFLENBQUM7SUE0Qk4sQ0FBQztJQXZCTCxJQUNJLGtCQUFrQixDQUFDLEtBQUs7UUFDMUIsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBRTNCLE9BQU87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Q0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDN0Q7Z0JBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyQztZQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7U0FDekM7SUFDSCxDQUFDOztpSEE5SlUsb0JBQW9CO3FHQUFwQixvQkFBb0IsZ0hDWmpDLHloQ0FlTTsyRkRITyxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0Usb0JBQW9CO3NNQW9CMUIsa0JBQWtCO3NCQURyQixLQUFLO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBSb3V0ZXIsIE5hdmlnYXRpb25FeHRyYXMsIEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgQ29tbW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb21tb25cIjtcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZ2FtbWEtYnJlYWQtY3J1bWJzXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vYnJlYWQtY3J1bWJzLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9icmVhZC1jcnVtYnMuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkQ3J1bWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBicmVhZGNydW1iTGlzdDtcbiAgYnJlYWRjcnVtYkxpbmtzTGlzdDtcbiAgcm91dGU6IHN0cmluZztcbiAgY291bnQ6IG51bWJlcjtcbiAga3BpTGlzdERhdGE6IGFueSA9IFtdO1xuICBrcGlfc3RydWN0dXJlcyA9IHt9O1xuICBrcGlfbmFtZXMgPSB7fTtcbiAga3BpVXJsSUQ7XG4gIGRhdGEgPSBbXTtcblxuICBrcGlCcm93c2VyTmFtZTogQm9vbGVhbjtcbiAgaXNCcmVhZENydW1iczogQm9vbGVhbjtcblxuICBASW5wdXQoJ2twaV9kYXRhX2NvbnRhaW5lcicpXG4gIHNldCBrcGlfZGF0YV9jb250YWluZXIodmFsdWUpIHtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuaXNCcmVhZENydW1icyA9IGZhbHNlO1xuICAgICAgLy8gdGhpcy5hZGRSb2xlQ29udGFpbmVyID0gW3sgXCJ0eXBlXCI6IFwidGV4dFwiLCBcInZhbHVlXCI6ICcnLCBcInJvbGVpZFwiOiBcInJvd0lkMFwiIH1dO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB0aGlzLmtwaUxpc3REYXRhID0gdmFsdWU7XG4gICAgICBsZXQgcmVsYXRpdmVQYXRoID0gJ3Jha3BpQnJvd3Nlcic7XG4gICAgICB0aGlzLmdldEtwaU5hbWUodmFsdWUsIHJlbGF0aXZlUGF0aCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5sb2FkQnJlYWRDcnVtYnMoKTtcbiAgICAgIH0sIDUwMCk7XG4gICAgICB0aGlzLmlzQnJlYWRDcnVtYnMgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgY29tbW9uU2VydmljZTogQ29tbW9uU2VydmljZSxcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcblxuXG4gIH1cblxuICBnZXRLcGlOYW1lKGRhdGEsIHJlbGF0aXZlUGF0aCkge1xuXG4gICAgZGF0YS5mb3JFYWNoKHJlc3VsdCA9PiB7XG4gICAgICBjb25zdCBpdGVtID0ge307XG4gICAgICBsZXQgb2JqO1xuICAgICAgaXRlbVsncmVsYXRpdmVQYXRoJ10gPSByZWxhdGl2ZVBhdGg7XG5cbiAgICAgIGlmIChyZXN1bHRbJ25vZGVzJ10gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBsZXQgY2hpbGRSZWxhdGl2ZVBhdGggPSByZWxhdGl2ZVBhdGggKyAnLycgKyByZXN1bHRbJ25hbWUnXTtcbiAgICAgICAgdGhpcy5nZXRLcGlOYW1lKHJlc3VsdFsnbm9kZXMnXSwgY2hpbGRSZWxhdGl2ZVBhdGgpO1xuICAgICAgfVxuICAgICAgaWYgKHJlc3VsdFsnaWQnXSkge1xuICAgICAgICBvYmogPSB7XG4gICAgICAgICAgJ25hbWUnOiByZXN1bHRbJ25hbWUnXSxcbiAgICAgICAgICAnZGVzYyc6IHJlc3VsdFsnZGVzYyddLFxuICAgICAgICAgICdyZWxhdGl2ZVBhdGgnOiByZXN1bHRbJ3JlbGF0aXZlUGF0aCddLFxuICAgICAgICAgICdrcGlJZCc6IHJlc3VsdFsnaWQnXSxcbiAgICAgICAgICAvLyAna3BpR2lmVXJsJzogZW52aXJvbm1lbnQuYXBwVXJsICsgZW52aXJvbm1lbnQuYXBpVmVyc2lvbiArICcva3BpL2dpZj9pZD0nICsgcmVzdWx0WydpZCddLFxuICAgICAgICAgICdpc0Jvb2ttYXJrZWQnOiByZXN1bHRbJ2lzQm9va21hcmtlZCddLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgaXRlbVsnZXh0ZXJuYWxMaW5rJ10gPSByZWxhdGl2ZVBhdGggKyAnLycgKyByZXN1bHRbJ25hbWUnXVxuICAgICAgaXRlbVsndGlkJ10gPSByZXN1bHRbJ3RpZCddO1xuICAgICAgaXRlbVsnaWQnXSA9IHJlc3VsdFsnaWQnXTtcbiAgICAgIGl0ZW1bJ25hbWUnXSA9IHJlc3VsdFsnbmFtZSddO1xuXG4gICAgICB0aGlzLmtwaUxpc3REYXRhLnB1c2goaXRlbSk7XG4gICAgfSk7XG5cbiAgfVxuXG5cbiAgZ2V0QnJlYWRDcnVtYnNEYXRhKGRhdGEpIHtcbiAgICBsZXQgc3RydWN0dXJlcyA9IHt9O1xuICAgIGRhdGEuZm9yRWFjaChyZXN1bHQgPT4ge1xuICAgICAgY29uc3QgaXRlbTogb2JqZWN0ID0ge307XG4gICAgICBpdGVtW1wicmVsYXRpdmVQYXRoXCJdID0gcmVzdWx0LnJlbGF0aXZlUGF0aDtcbiAgICAgIGl0ZW1bXCJuYW1lXCJdID0gcmVzdWx0W1wibmFtZVwiXTtcbiAgICAgIGl0ZW1bXCJ0aWRcIl0gPSByZXN1bHRbXCJ0aWRcIl0udHJpbSgpO1xuICAgICAgaWYgKHJlc3VsdFtcIm5vZGVzXCJdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaXRlbVtcIm5vZGVzXCJdID0gdGhpcy5nZXRCcmVhZENydW1ic0RhdGEoXG4gICAgICAgICAgcmVzdWx0W1wibm9kZXNcIl1cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMua3BpX25hbWVzW3Jlc3VsdFtcImlkXCJdXSA9IGl0ZW1bXCJ0aWRcIl07XG5cbiAgICAgIHN0cnVjdHVyZXNbcmVzdWx0W1widGlkXCJdXSA9IGl0ZW07XG4gICAgICB0aGlzLmtwaV9zdHJ1Y3R1cmVzW3Jlc3VsdFtcInRpZFwiXV0gPSBpdGVtO1xuICAgIH0pO1xuICAgIHJldHVybiBzdHJ1Y3R1cmVzO1xuICB9XG5cbiAgbG9hZEJyZWFkQ3J1bWJzKCkge1xuXG4gICAgbGV0IGtwaVJvb3QgPSB0aGlzLmtwaUJyb3dzZXJOYW1lID8gXCJmbXNrcGlcIiA6IFwicmFrcGlcIjtcbiAgICBsZXQga3BpQ29udGFpbmVyO1xuICAgIC8vIGNvbnN0IG5hdnVybCA9IHRoaXMucm91dGVyLnVybC5zcGxpdChcIj9cIik7XG4gICAgLy8gbGV0IHVybCA9IG5hdnVybFswXS5zcGxpdChcIi9cIik7XG4gICAgLy8gdGhpcy5rcGlVcmxJRCA9IHVybC5zbGljZSgtMSkucG9wKCk7XG5cbiAgICBpZiAodGhpcy5rcGlMaXN0RGF0YS5sZW5ndGggPiAwIHx8IHRoaXMua3BpTGlzdERhdGEgIT0gdW5kZWZpbmVkKSB7XG4gICAgICBrcGlDb250YWluZXIgPSB0aGlzLmdldEJyZWFkQ3J1bWJzRGF0YSh0aGlzLmtwaUxpc3REYXRhKTtcbiAgICB9IGVsc2Uge1xuICAgICAga3BpQ29udGFpbmVyID0gdGhpcy5nZXRCcmVhZENydW1ic0RhdGEoXG4gICAgICAgIHRoaXMuY29tbW9uU2VydmljZS5hbGxLcGlicm93c2VyRGV0YWlsQ29udGFpbmVyLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3Qga3BpSWQgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydpZCddO1xuICAgIGNvbnN0IGtwaVRpZCA9IHRoaXMua3BpX25hbWVzW2twaUlkXTtcbiAgICBjb25zdCBwcm9wcyA9IHRoaXMua3BpX3N0cnVjdHVyZXNba3BpVGlkXTtcbiAgICBjb25zdCBwcm9wc0xpc3QgPSBwcm9wc1tcInJlbGF0aXZlUGF0aFwiXSArIFwiL1wiICsgcHJvcHNbXCJuYW1lXCJdO1xuICAgIHRoaXMuYnJlYWRjcnVtYkxpc3QgPSBwcm9wc0xpc3Quc3BsaXQoXCIvXCIpO1xuXG4gICAgaWYgKHRoaXMubG9jYXRpb24ucGF0aCgpICE9PSBcIlwiKSB7XG4gICAgICBsZXQgbGluayA9IHt9O1xuICAgICAgdGhpcy5icmVhZGNydW1iTGlua3NMaXN0ID0gW107XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5icmVhZGNydW1iTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoaSA9PSAwKSB7XG4gICAgICAgICAgaWYgKCF0aGlzLmtwaUJyb3dzZXJOYW1lKSB7XG4gICAgICAgICAgICBsaW5rID0ge1xuICAgICAgICAgICAgICBuYW1lOiB0aGlzLmJyZWFkY3J1bWJMaXN0W2ldLFxuICAgICAgICAgICAgICB1cmw6IFwiL2FwcHMvcmFLcGkvcmFrcGlCcm93c2VyXCIsXG4gICAgICAgICAgICAgIGtwaU5hbWU6IFwiUkEgS1BJIEJyb3dzZXJcIixcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxpbmsgPSB7XG4gICAgICAgICAgICAgIG5hbWU6IHRoaXMuYnJlYWRjcnVtYkxpc3RbaV0sXG4gICAgICAgICAgICAgIHVybDogXCIvYXBwcy9mbXNLcGlcIixcbiAgICAgICAgICAgICAga3BpTmFtZTogXCJGTVMgS1BJIEJyb3dzZXJcIixcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCByZXR1cm5JZCA9IFwiXCI7XG4gICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPD0gaTsgaisrKSB7XG4gICAgICAgICAgICBpZiAoaiAhPSAwKSB7XG4gICAgICAgICAgICAgIHJldHVybklkICs9IFwiL1wiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuSWQgKz0gdGhpcy5icmVhZGNydW1iTGlzdFtqXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGluayA9IHtcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuYnJlYWRjcnVtYkxpc3RbaV0sXG4gICAgICAgICAgICB1cmw6IHRoaXMuYnJlYWRjcnVtYkxpbmtzTGlzdFtpIC0gMV1bXCJ1cmxcIl0sXG4gICAgICAgICAgICBpZDogdGhpcy5icmVhZGNydW1iTGlzdFtpXSxcbiAgICAgICAgICAgIGtwaU5hbWU6IHRoaXMuYnJlYWRjcnVtYkxpc3RbaV0sXG4gICAgICAgICAgICByZXR1cm5JZDogcmV0dXJuSWQsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLmNvbW1vblNlcnZpY2UuZ2xvYmFsX2twaV9uYW1lID0gdGhpcy5icmVhZGNydW1iTGlzdFtpXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmJyZWFkY3J1bWJMaW5rc0xpc3QucHVzaChsaW5rKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY291bnQgPSB0aGlzLmJyZWFkY3J1bWJMaXN0Lmxlbmd0aDtcbiAgICB9XG4gIH1cbn1cbiIsIjxuYXYgY2xhc3M9XCJmbGV4IG10LTFcIiBhcmlhLWxhYmVsPVwiQnJlYWRjcnVtYlwiICpuZ0lmPVwiaXNCcmVhZENydW1ic1wiPlxuICAgIDxvbCBjbGFzcz1cImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEgbWQ6c3BhY2UteC0zXCI+XG4gICAgICAgIDxsaSBjbGFzcz1cImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBjdXJzb3ItcG9pbnRlclwiICpuZ0Zvcj1cImxldCBicmVhZGNydW1iTGFiZWwgb2YgYnJlYWRjcnVtYkxpbmtzTGlzdDtcIj5cbiAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cImJyZWFkY3J1bWJMYWJlbC51cmxcIiBbcXVlcnlQYXJhbXNdPVwie3JldHVybklkOiBicmVhZGNydW1iTGFiZWwucmV0dXJuSWQgfVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LWdyYXktNzAwIGhvdmVyOnRleHQtZ3JheS05MDAgZGFyazp0ZXh0LWdyYXktNDAwIGRhcms6aG92ZXI6dGV4dC13aGl0ZVwiPlxuICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJ3LTYgaC02IHRleHQtZ3JheS00MDBcIiBmaWxsPVwiY3VycmVudENvbG9yXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXG4gICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuMjkzIDE0LjcwN2ExIDEgMCAwMTAtMS40MTRMMTAuNTg2IDEwIDcuMjkzIDYuNzA3YTEgMSAwIDAxMS40MTQtMS40MTRsNCA0YTEgMSAwIDAxMCAxLjQxNGwtNCA0YTEgMSAwIDAxLTEuNDE0IDB6XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIj48L3BhdGg+XG4gICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAge3ticmVhZGNydW1iTGFiZWwua3BpTmFtZX19XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgPC9vbD5cbjwvbmF2PiJdfQ==
|