@sachin9822/reports-lib 0.0.208 → 0.0.210
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/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.mjs +17 -12
- package/esm2020/lib/components/accounting-report/accounting-report.component.mjs +9 -4
- package/esm2020/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.mjs +7 -3
- package/esm2020/lib/components/branch-activity-send-report/branch-activity-send-report.component.mjs +7 -3
- package/esm2020/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.mjs +700 -0
- package/esm2020/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.mjs +7 -3
- package/esm2020/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.mjs +14 -17
- package/esm2020/lib/components/funding-report/funding-report.component.mjs +8 -4
- package/esm2020/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.mjs +16 -10
- package/esm2020/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.mjs +7 -3
- package/esm2020/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.mjs +7 -3
- package/esm2020/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.mjs +311 -0
- package/esm2020/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.mjs +10 -5
- package/esm2020/lib/models/branch-activity-report/branch-activity-send-report.mjs +1 -1
- package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.mjs +6 -0
- package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report.mjs +5 -0
- package/esm2020/lib/reports-lib.module.mjs +15 -5
- package/esm2020/lib/services/report.service.mjs +62 -4
- package/esm2020/lib/shared/export-generic.service.mjs +10 -1
- package/esm2020/lib/shared/search-filter/search-filter.component.mjs +561 -193
- package/esm2020/public-api.mjs +5 -1
- package/esm2020/sachin9822-reports-lib.mjs +5 -0
- package/fesm2015/{xpressmoney-reports-lib.mjs → sachin9822-reports-lib.mjs} +1801 -346
- package/fesm2015/sachin9822-reports-lib.mjs.map +1 -0
- package/fesm2020/{xpressmoney-reports-lib.mjs → sachin9822-reports-lib.mjs} +1806 -344
- package/fesm2020/sachin9822-reports-lib.mjs.map +1 -0
- package/index.d.ts +1 -1
- package/lib/assets/images/Search.svg +9 -9
- package/lib/assets/svg-loaders/blue-tail-spin.svg +31 -31
- package/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.d.ts +2 -0
- package/lib/components/accounting-report/accounting-report.component.d.ts +2 -0
- package/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.d.ts +2 -0
- package/lib/components/branch-activity-send-report/branch-activity-send-report.component.d.ts +2 -0
- package/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.d.ts +78 -0
- package/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.d.ts +2 -0
- package/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.d.ts +2 -0
- package/lib/components/funding-report/funding-report.component.d.ts +2 -0
- package/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.d.ts +2 -0
- package/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.d.ts +2 -0
- package/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.d.ts +2 -0
- package/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.d.ts +68 -0
- package/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.d.ts +3 -1
- package/lib/models/branch-activity-report/branch-activity-send-report.d.ts +4 -0
- package/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.d.ts +13 -0
- package/lib/models/transaction-monitoring-report/transaction-monitoring-report.d.ts +23 -0
- package/lib/reports-lib.module.d.ts +12 -10
- package/lib/services/report.service.d.ts +11 -1
- package/lib/shared/search-filter/search-filter.component.d.ts +11 -7
- package/package.json +11 -11
- package/public-api.d.ts +4 -0
- package/esm2020/xpressmoney-reports-lib.mjs +0 -5
- package/fesm2015/xpressmoney-reports-lib.mjs.map +0 -1
- package/fesm2020/xpressmoney-reports-lib.mjs.map +0 -1
|
@@ -35,9 +35,11 @@ export class AccGlDetailsEnquiryReportComponent {
|
|
|
35
35
|
];
|
|
36
36
|
this.ComponentLoadingState = ComponentLoadingStates;
|
|
37
37
|
this.loadingState = ComponentLoadingStates.Complete;
|
|
38
|
+
this.isFormValid = false;
|
|
38
39
|
this.defaultColDef = {
|
|
39
40
|
resizable: true,
|
|
40
|
-
sortable:
|
|
41
|
+
sortable: true,
|
|
42
|
+
filter: true,
|
|
41
43
|
minWidth: 40,
|
|
42
44
|
suppressSizeToFit: false,
|
|
43
45
|
cellStyle: {
|
|
@@ -55,17 +57,17 @@ export class AccGlDetailsEnquiryReportComponent {
|
|
|
55
57
|
this.columnDefs = [
|
|
56
58
|
{ headerName: 'Journal ID', field: 'journalID', flex: 1.8, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 95, tooltipField: 'journalID' },
|
|
57
59
|
{ headerName: 'Trans No', field: 'transactionNo', flex: 1.8, cellClass: 'ag-left-cols-cell compact-cell-transaction', minWidth: 73, tooltipField: 'transactionNo' },
|
|
58
|
-
{ headerName: 'Trans Code', field: 'transactionCode', flex: 1.
|
|
59
|
-
{ headerName: 'Journal Type', field: 'journalType', flex: 1
|
|
60
|
+
{ headerName: 'Trans Code', field: 'transactionCode', flex: 1.1, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 60, tooltipField: 'transactionCode' },
|
|
61
|
+
{ headerName: 'Journal Type', field: 'journalType', flex: 1, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 73, tooltipField: 'journalType' },
|
|
60
62
|
{ headerName: 'Posting Date', field: 'postingDate', flex: 1.2, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 69, tooltipField: 'postingDate' },
|
|
61
|
-
{ headerName: 'Value Date', field: 'valueDate', flex: 1.
|
|
62
|
-
{ headerName: 'Description', field: 'description', flex:
|
|
63
|
-
{ headerName: 'Account Code', field: 'accountCode', flex: 1.
|
|
64
|
-
{ headerName: 'Ccy', field: 'currency', flex:
|
|
65
|
-
{ headerName: 'Rate', field: 'rate', flex: 1.
|
|
63
|
+
{ headerName: 'Value Date', field: 'valueDate', flex: 1.1, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 68, tooltipField: 'valueDate' },
|
|
64
|
+
{ headerName: 'Description', field: 'description', flex: 3, minWidth: 119, wrapText: true, autoHeight: true, cellStyle: { 'line-height': '1.2', 'white-space': 'normal', 'word-break': 'normal', 'overflow-wrap': 'break-word' }, tooltipField: 'description' },
|
|
65
|
+
{ headerName: 'Account Code', field: 'accountCode', flex: 1.1, cellClass: 'ag-left-cols-cell compact-cell', minWidth: 73, tooltipField: 'accountCode' },
|
|
66
|
+
{ headerName: 'Ccy', field: 'currency', flex: 1, cellClass: 'ag-left-cols-cell', minWidth: 35, tooltipField: 'currency' },
|
|
67
|
+
{ headerName: 'Rate', field: 'rate', flex: 1.1, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 69, tooltipField: 'rate' },
|
|
66
68
|
{ headerName: 'FxDebit', field: 'forexDebit', flex: 1, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 58, tooltipField: 'forexDebit' },
|
|
67
69
|
{ headerName: 'Local Debit', field: 'localDebit', flex: 1, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 62, tooltipField: 'localDebit' },
|
|
68
|
-
{ headerName: 'FxCredit', field: 'forexCredit', flex: 1, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 58, tooltipField: 'forexCredit' },
|
|
70
|
+
{ headerName: 'FxCredit', field: 'forexCredit', flex: 1.4, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 58, tooltipField: 'forexCredit' },
|
|
69
71
|
{ headerName: 'Local Credit', field: 'localCredit', flex: 1, cellClass: 'ag-right-aligned-cell compact-cell', minWidth: 62, tooltipField: 'localCredit' },
|
|
70
72
|
];
|
|
71
73
|
}
|
|
@@ -225,11 +227,14 @@ export class AccGlDetailsEnquiryReportComponent {
|
|
|
225
227
|
];
|
|
226
228
|
this.getAccGLDetailsReport();
|
|
227
229
|
}
|
|
230
|
+
handleFormValid(isValid) {
|
|
231
|
+
this.isFormValid = isValid;
|
|
232
|
+
}
|
|
228
233
|
}
|
|
229
234
|
AccGlDetailsEnquiryReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AccGlDetailsEnquiryReportComponent, deps: [{ token: i1.ExportService }, { token: i2.ReportService }, { token: i3.HttpClient }, { token: i4.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
230
|
-
AccGlDetailsEnquiryReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: AccGlDetailsEnquiryReportComponent, selector: "lib-acc-gl-details-enquiry-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<div class=\"main-container\">\r\n <div class=\"report-container\"\r\n *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady && accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length!=0\">\r\n <div class=\"main-report\" *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady\">\r\n <lib-metadata [reportName]=\"ReportName\" [showmetaDataOne]=\"true\" [showmetaDataTwo]=\"true\"\r\n [metaDataOne]=\"metaDataOne\" [metaDataTwo]=\"metaDataTwo\" (exportEvent)=\"handleExport($event)\"\r\n (searchEvent)=\"onSearch($event)\"></lib-metadata>\r\n <div style=\"position: relative;\">\r\n <lib-page-size-selector [totalEntries]=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length\"\r\n [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 375px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"rowData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\" (gridReady)=\"onGridReady($event)\"\r\n (gridSizeChanged)=\"onGridSizeChanged($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length==0\">\r\n No Data found matching your search criteria.\r\n </div>\r\n</div>", styles: [".btn-report{border-radius:4px;background-color:#8091a5;color:#fff!important;font-size:14px!important;height:32px!important;height:32px;min-width:110px;margin:0 0 0 20px!important;padding:4px 15px!important}.tooltip-block{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid #ccc!important}.dpicker{border:1px solid #ccc!important;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"!important;font-size:12px!important;font-weight:400!important;height:32px!important}.dpicker:focus{box-shadow:0 0 5px 3px #1877f2!important}.cal{height:32px!important;background-color:#1877f2!important}.cal:focus{box-shadow:none!important}.input-group-button{background:none;border:1px solid #0081c6;background-color:#0081c6;border-radius:0 3px 3px 0;min-width:35px;margin-left:1px;cursor:pointer}.labl{font-size:11.2px;font-weight:700!important}.info{font-size:12px!important;font-weight:400;padding-left:.5rem}.label-data{font-weight:600!important;font-size:.7rem!important;line-height:1rem}.meta-td{padding:0!important}.title{text-align:center;font-size:18px;font-weight:700!important}.export-options{display:inline-flex;font-size:.75rem;height:2rem!important;width:5rem!important;margin-right:-1;margin-left:.4rem}.opt-cls{display:block;height:100%;width:5rem;border:1px solid #ccc!important;border-radius:4px!important;margin-right:1rem!important;outline:none!important}.opt-cls:focus{box-shadow:0 0 5px 3px #1877f2}.export-selector{height:2rem!important;width:100%}.search-btn{height:32px!important;height:32px;width:36px;background-color:#8091a5;border:none;border-radius:0 4px 4px 0;display:flex;justify-content:center;align-items:center}.search-btn:hover{background-color:#8091a5}.search-icon{height:16px;width:16px;object-fit:contain}.search-input{outline:none!important;border:1px solid #ccc!important;width:190px;height:32px!important;font-size:.75rem;padding:.25rem .5rem;border-top-left-radius:4px;border-bottom-left-radius:4px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;text-transform:uppercase}.search-input:focus{box-shadow:0 0 5px 3px #1877f2!important}.searchBox{margin-right:auto;display:flex}table{width:100%;border-collapse:separate;margin-bottom:0!important;table-layout:fixed!important}td{padding:0 1rem 6px 0!important;border-right:0 solid #ffffff!important;background-color:#fff!important}.row-cls{height:2.5rem!important}.inputbox{padding-left:1rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"}::ng-deep .ng-select.ng-select-single .ng-select-container{height:32px I!important}::ng-deep .ng-select.ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;overflow-y:auto;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container .ng-value{max-width:200px!important;overflow:hidden!important;text-overflow:hidden!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-container{cursor:default;display:flex;outline:none;overflow:hidden;position:relative;width:100%}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option{box-sizing:border-box;cursor:pointer;display:block;white-space:nowrap;overflow-x:scroll!important;text-overflow:clip!important}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option::-webkit-scrollbar{display:none!important;width:0!important}::ng-deep .ng-select .ng-select-container:focus-within{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container:focus{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container,::ng-deep .ng-select.ng-select-single .ng-select-container,::ng-deep .ng-select.ng-select-multiple .ng-select-container{min-height:32px!important;height:32px!important;font-size:12px!important}.panel-cls{font-weight:700;font-size:13px;line-height:1.2;margin:0;padding:2px 0;color:#16181e}.transaction-grid ::ng-deep .ag-header{background-color:#f9f9f9;font-weight:600;font-size:10px;color:#000;border-right:1px solid #e0e0e0}:host ::ng-deep .ag-header-cell{padding:2px!important;align-items:center!important;justify-content:center!important;border-right:1px solid #e0e0e0;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:center!important}::ng-deep .ag-header-cell-label{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;text-align:center!important}::ng-deep .ag-header-cell-text{text-align:center!important;width:100%!important;display:flex!important;justify-content:center!important}.transaction-grid ::ng-deep .ag-row{border-bottom:1px solid #e0e0e0}.transaction-grid ::ng-deep .ag-cell{font-size:9px;white-space:normal!important;word-break:keep-all!important;overflow-wrap:anywhere;line-height:1.4;padding:4px!important;color:#000;font-weight:500;border-right:.5px solid #e0e0e0;align-content:center;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;cursor:text}::ng-deep .ag-cell-label-container{padding:0!important}.ag-theme-alpine{--ag-header-font-size: 10px;--ag-font-size: 10px;--ag-header-background-color: #fdfdfd;--ag-header-foreground-color: rgb(0, 0, 0)}::ng-deep .ag-paging-panel{height:30px!important;font-weight:500!important}.main-container{display:flex;flex-direction:column;width:100%;padding:0;box-sizing:border-box}.report-loader{display:flex;justify-content:center;align-items:center;height:320px;background-color:#ffffffb3;border:none none none}.report-container{min-height:350px;font-size:.7rem;line-height:1.4;margin:0;overflow:visible}.main-report{overflow:visible}.grid-size{width:100%!important;font-weight:500!important;height:390px!important}\n"], dependencies: [{ kind: "component", type: i5.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "suppressMenuHide", "enableBrowserTooltips", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "maintainColumnOrder", "suppressFieldDotNotation", "deltaColumnMode", "applyColumnDefOrder", "immutableColumns", "suppressSetColumnStateEvents", "suppressColumnStateEvents", "colWidth", "minColWidth", "maxColWidth", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "components", "frameworkComponents", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "stopEditingWhenGridLosesFocus", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "defaultExportParams", "quickFilterText", "cacheQuickFilter", "excludeChildrenWhenTreeDataFiltering", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererFramework", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererFramework", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentFramework", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentFramework", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDelay", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererFramework", "fullWidthCellRendererParams", "embedFullWidthRows", "deprecatedEmbedFullWidthRows", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererFramework", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "groupRowsSticky", "groupRowInnerRenderer", "groupRowInnerRendererFramework", "groupMultiAutoColumn", "groupUseEntireRow", "groupSuppressAutoColumn", "rememberGroupStateWhenNewData", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "immutableData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "deltaRowDataMode", "batchUpdateWaitMillis", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "serverSideStoreType", "serverSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSideSortingAlwaysResets", "serverSideFilteringAlwaysResets", "suppressEnterpriseResetOnNewColumns", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellSelection", "suppressCellFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "deltaSort", "treeDataDisplayType", "angularCompileRows", "angularCompileFilters", "functionsPassive", "enableGroupEdit", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "suppressKeyboardEvent", "localeTextFunc", "getLocaleText", "getDocument", "paginationNumberFormatter", "groupRowAggNodes", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "defaultGroupOrderComparator", "processSecondaryColDef", "processSecondaryColGroupDef", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "defaultGroupSortComparator", "getChildCount", "getServerSideGroupLevelParams", "getServerSideStoreParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowNodeId", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSort", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthCell", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "filterOpened", "filterChanged", "filterModified", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "cellKeyPress", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i8.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i9.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i10.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName"], outputs: ["searchClicked"] }] });
|
|
235
|
+
AccGlDetailsEnquiryReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: AccGlDetailsEnquiryReportComponent, selector: "lib-acc-gl-details-enquiry-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\"\r\n (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<div class=\"main-container\">\r\n <div class=\"report-container\"\r\n *ngIf=\"accGlDetailsEnquiryReportModel != undefined && isFormValid && dataReady && accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length!=0\">\r\n <div class=\"main-report\" *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady\">\r\n <lib-metadata [reportName]=\"ReportName\" [showmetaDataOne]=\"true\" [showmetaDataTwo]=\"true\"\r\n [metaDataOne]=\"metaDataOne\" [metaDataTwo]=\"metaDataTwo\" (exportEvent)=\"handleExport($event)\"\r\n (searchEvent)=\"onSearch($event)\"></lib-metadata>\r\n <div style=\"position: relative;\" *ngIf=\"rowData && rowData.length > 0\">\r\n <lib-page-size-selector [totalEntries]=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length\"\r\n [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 375px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"rowData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\" (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length==0\">\r\n No Data found matching your search criteria.\r\n </div>\r\n</div>", styles: [".btn-report{border-radius:4px;background-color:#8091a5;color:#fff!important;font-size:14px!important;height:32px!important;height:32px;min-width:110px;margin:0 0 0 20px!important;padding:4px 15px!important}.tooltip-block{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid #ccc!important}.dpicker{border:1px solid #ccc!important;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"!important;font-size:12px!important;font-weight:400!important;height:32px!important}.dpicker:focus{box-shadow:0 0 5px 3px #1877f2!important}.cal{height:32px!important;background-color:#1877f2!important}.cal:focus{box-shadow:none!important}.input-group-button{background:none;border:1px solid #0081c6;background-color:#0081c6;border-radius:0 3px 3px 0;min-width:35px;margin-left:1px;cursor:pointer}.labl{font-size:11.2px;font-weight:700!important}.info{font-size:12px!important;font-weight:400;padding-left:.5rem}.label-data{font-weight:600!important;font-size:.7rem!important;line-height:1rem}.meta-td{padding:0!important}.title{text-align:center;font-size:18px;font-weight:700!important}.export-options{display:inline-flex;font-size:.75rem;height:2rem!important;width:5rem!important;margin-right:-1;margin-left:.4rem}.opt-cls{display:block;height:100%;width:5rem;border:1px solid #ccc!important;border-radius:4px!important;margin-right:1rem!important;outline:none!important}.opt-cls:focus{box-shadow:0 0 5px 3px #1877f2}.export-selector{height:2rem!important;width:100%}.search-btn{height:32px!important;height:32px;width:36px;background-color:#8091a5;border:none;border-radius:0 4px 4px 0;display:flex;justify-content:center;align-items:center}.search-btn:hover{background-color:#8091a5}.search-icon{height:16px;width:16px;object-fit:contain}.search-input{outline:none!important;border:1px solid #ccc!important;width:190px;height:32px!important;font-size:.75rem;padding:.25rem .5rem;border-top-left-radius:4px;border-bottom-left-radius:4px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;text-transform:uppercase}.search-input:focus{box-shadow:0 0 5px 3px #1877f2!important}.searchBox{margin-right:auto;display:flex}table{width:100%;border-collapse:separate;margin-bottom:0!important;table-layout:fixed!important}td{padding:0 1rem 6px 0!important;border-right:0 solid #ffffff!important;background-color:#fff!important}.row-cls{height:2.5rem!important}.inputbox{padding-left:1rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"}::ng-deep .ng-select.ng-select-single .ng-select-container{height:32px I!important}::ng-deep .ng-select.ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;overflow-y:auto;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container .ng-value{max-width:200px!important;overflow:hidden!important;text-overflow:hidden!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-container{cursor:default;display:flex;outline:none;overflow:hidden;position:relative;width:100%}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option{box-sizing:border-box;cursor:pointer;display:block;white-space:nowrap;overflow-x:scroll!important;text-overflow:clip!important}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option::-webkit-scrollbar{display:none!important;width:0!important}::ng-deep .ng-select .ng-select-container:focus-within{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container:focus{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container,::ng-deep .ng-select.ng-select-single .ng-select-container,::ng-deep .ng-select.ng-select-multiple .ng-select-container{min-height:32px!important;height:32px!important;font-size:12px!important}.panel-cls{font-weight:700;font-size:13px;line-height:1.2;margin:0;padding:2px 0;color:#16181e}.transaction-grid ::ng-deep .ag-header{background-color:#f9f9f9;font-weight:600;font-size:10px;color:#000;border-right:1px solid #e0e0e0}:host ::ng-deep .ag-header-cell{padding:2px!important;align-items:center!important;justify-content:center!important;border-right:1px solid #e0e0e0;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:center!important}::ng-deep .ag-header-cell-label{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;text-align:center!important}::ng-deep .ag-header-cell-text{text-align:center!important;width:100%!important;display:flex!important;justify-content:center!important}.transaction-grid ::ng-deep .ag-row{border-bottom:1px solid #e0e0e0}.transaction-grid ::ng-deep .ag-cell{font-size:9px;white-space:normal!important;word-break:keep-all!important;overflow-wrap:anywhere;line-height:1.4;padding:4px!important;color:#000;font-weight:500;border-right:.5px solid #e0e0e0;align-content:center;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;cursor:text}::ng-deep .ag-cell-label-container{padding:0!important}.ag-theme-alpine{--ag-header-font-size: 10px;--ag-font-size: 10px;--ag-header-background-color: #fdfdfd;--ag-header-foreground-color: rgb(0, 0, 0)}::ng-deep .ag-paging-panel{height:30px!important;font-weight:500!important}.main-container{display:flex;flex-direction:column;width:100%;padding:0;box-sizing:border-box}.report-loader{display:flex;justify-content:center;align-items:center;height:320px;background-color:#ffffffb3;border:none none none}.report-container{min-height:350px;font-size:.7rem;line-height:1.4;margin:0;overflow:visible}.main-report{overflow:visible}.grid-size{width:100%!important;font-weight:500!important;height:390px!important}\n"], dependencies: [{ kind: "component", type: i5.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "suppressMenuHide", "enableBrowserTooltips", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "maintainColumnOrder", "suppressFieldDotNotation", "deltaColumnMode", "applyColumnDefOrder", "immutableColumns", "suppressSetColumnStateEvents", "suppressColumnStateEvents", "colWidth", "minColWidth", "maxColWidth", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "components", "frameworkComponents", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "stopEditingWhenGridLosesFocus", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "defaultExportParams", "quickFilterText", "cacheQuickFilter", "excludeChildrenWhenTreeDataFiltering", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererFramework", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererFramework", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentFramework", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentFramework", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDelay", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererFramework", "fullWidthCellRendererParams", "embedFullWidthRows", "deprecatedEmbedFullWidthRows", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererFramework", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "groupRowsSticky", "groupRowInnerRenderer", "groupRowInnerRendererFramework", "groupMultiAutoColumn", "groupUseEntireRow", "groupSuppressAutoColumn", "rememberGroupStateWhenNewData", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "immutableData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "deltaRowDataMode", "batchUpdateWaitMillis", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "serverSideStoreType", "serverSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSideSortingAlwaysResets", "serverSideFilteringAlwaysResets", "suppressEnterpriseResetOnNewColumns", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellSelection", "suppressCellFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "deltaSort", "treeDataDisplayType", "angularCompileRows", "angularCompileFilters", "functionsPassive", "enableGroupEdit", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "suppressKeyboardEvent", "localeTextFunc", "getLocaleText", "getDocument", "paginationNumberFormatter", "groupRowAggNodes", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "defaultGroupOrderComparator", "processSecondaryColDef", "processSecondaryColGroupDef", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "defaultGroupSortComparator", "getChildCount", "getServerSideGroupLevelParams", "getServerSideStoreParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowNodeId", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSort", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthCell", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "filterOpened", "filterChanged", "filterModified", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "cellKeyPress", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i8.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i9.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i10.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName", "initialFilters"], outputs: ["searchClicked", "formValid"] }] });
|
|
231
236
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AccGlDetailsEnquiryReportComponent, decorators: [{
|
|
232
237
|
type: Component,
|
|
233
|
-
args: [{ selector: 'lib-acc-gl-details-enquiry-report', template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<div class=\"main-container\">\r\n <div class=\"report-container\"\r\n *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady && accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length!=0\">\r\n <div class=\"main-report\" *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady\">\r\n <lib-metadata [reportName]=\"ReportName\" [showmetaDataOne]=\"true\" [showmetaDataTwo]=\"true\"\r\n [metaDataOne]=\"metaDataOne\" [metaDataTwo]=\"metaDataTwo\" (exportEvent)=\"handleExport($event)\"\r\n (searchEvent)=\"onSearch($event)\"></lib-metadata>\r\n <div style=\"position: relative;\">\r\n <lib-page-size-selector [totalEntries]=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length\"\r\n [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 375px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"rowData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\" (gridReady)=\"onGridReady($event)\"
|
|
238
|
+
args: [{ selector: 'lib-acc-gl-details-enquiry-report', template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\"\r\n (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<div class=\"main-container\">\r\n <div class=\"report-container\"\r\n *ngIf=\"accGlDetailsEnquiryReportModel != undefined && isFormValid && dataReady && accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length!=0\">\r\n <div class=\"main-report\" *ngIf=\"accGlDetailsEnquiryReportModel != undefined && dataReady\">\r\n <lib-metadata [reportName]=\"ReportName\" [showmetaDataOne]=\"true\" [showmetaDataTwo]=\"true\"\r\n [metaDataOne]=\"metaDataOne\" [metaDataTwo]=\"metaDataTwo\" (exportEvent)=\"handleExport($event)\"\r\n (searchEvent)=\"onSearch($event)\"></lib-metadata>\r\n <div style=\"position: relative;\" *ngIf=\"rowData && rowData.length > 0\">\r\n <lib-page-size-selector [totalEntries]=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length\"\r\n [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 375px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"rowData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\" (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"accGlDetailsEnquiryReportModel?.journalVoucherEntries?.length==0\">\r\n No Data found matching your search criteria.\r\n </div>\r\n</div>", styles: [".btn-report{border-radius:4px;background-color:#8091a5;color:#fff!important;font-size:14px!important;height:32px!important;height:32px;min-width:110px;margin:0 0 0 20px!important;padding:4px 15px!important}.tooltip-block{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid #ccc!important}.dpicker{border:1px solid #ccc!important;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"!important;font-size:12px!important;font-weight:400!important;height:32px!important}.dpicker:focus{box-shadow:0 0 5px 3px #1877f2!important}.cal{height:32px!important;background-color:#1877f2!important}.cal:focus{box-shadow:none!important}.input-group-button{background:none;border:1px solid #0081c6;background-color:#0081c6;border-radius:0 3px 3px 0;min-width:35px;margin-left:1px;cursor:pointer}.labl{font-size:11.2px;font-weight:700!important}.info{font-size:12px!important;font-weight:400;padding-left:.5rem}.label-data{font-weight:600!important;font-size:.7rem!important;line-height:1rem}.meta-td{padding:0!important}.title{text-align:center;font-size:18px;font-weight:700!important}.export-options{display:inline-flex;font-size:.75rem;height:2rem!important;width:5rem!important;margin-right:-1;margin-left:.4rem}.opt-cls{display:block;height:100%;width:5rem;border:1px solid #ccc!important;border-radius:4px!important;margin-right:1rem!important;outline:none!important}.opt-cls:focus{box-shadow:0 0 5px 3px #1877f2}.export-selector{height:2rem!important;width:100%}.search-btn{height:32px!important;height:32px;width:36px;background-color:#8091a5;border:none;border-radius:0 4px 4px 0;display:flex;justify-content:center;align-items:center}.search-btn:hover{background-color:#8091a5}.search-icon{height:16px;width:16px;object-fit:contain}.search-input{outline:none!important;border:1px solid #ccc!important;width:190px;height:32px!important;font-size:.75rem;padding:.25rem .5rem;border-top-left-radius:4px;border-bottom-left-radius:4px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;text-transform:uppercase}.search-input:focus{box-shadow:0 0 5px 3px #1877f2!important}.searchBox{margin-right:auto;display:flex}table{width:100%;border-collapse:separate;margin-bottom:0!important;table-layout:fixed!important}td{padding:0 1rem 6px 0!important;border-right:0 solid #ffffff!important;background-color:#fff!important}.row-cls{height:2.5rem!important}.inputbox{padding-left:1rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\"}::ng-deep .ng-select.ng-select-single .ng-select-container{height:32px I!important}::ng-deep .ng-select.ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;overflow-y:auto;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container{max-height:32px!important;overflow-x:auto!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-multiple .ng-select-container .ng-value-container .ng-value{max-width:200px!important;overflow:hidden!important;text-overflow:hidden!important;white-space:nowrap!important}::ng-deep .ng-select .ng-select-container{cursor:default;display:flex;outline:none;overflow:hidden;position:relative;width:100%}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option{box-sizing:border-box;cursor:pointer;display:block;white-space:nowrap;overflow-x:scroll!important;text-overflow:clip!important}::ng-deep .ng-dropdown-panel .ng-dropdown-panel-items .ng-option::-webkit-scrollbar{display:none!important;width:0!important}::ng-deep .ng-select .ng-select-container:focus-within{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container:focus{box-shadow:0 0 5px 3px #1877f2!important}::ng-deep .ng-select .ng-select-container,::ng-deep .ng-select.ng-select-single .ng-select-container,::ng-deep .ng-select.ng-select-multiple .ng-select-container{min-height:32px!important;height:32px!important;font-size:12px!important}.panel-cls{font-weight:700;font-size:13px;line-height:1.2;margin:0;padding:2px 0;color:#16181e}.transaction-grid ::ng-deep .ag-header{background-color:#f9f9f9;font-weight:600;font-size:10px;color:#000;border-right:1px solid #e0e0e0}:host ::ng-deep .ag-header-cell{padding:2px!important;align-items:center!important;justify-content:center!important;border-right:1px solid #e0e0e0;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:center!important}::ng-deep .ag-header-cell-label{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;text-align:center!important}::ng-deep .ag-header-cell-text{text-align:center!important;width:100%!important;display:flex!important;justify-content:center!important}.transaction-grid ::ng-deep .ag-row{border-bottom:1px solid #e0e0e0}.transaction-grid ::ng-deep .ag-cell{font-size:9px;white-space:normal!important;word-break:keep-all!important;overflow-wrap:anywhere;line-height:1.4;padding:4px!important;color:#000;font-weight:500;border-right:.5px solid #e0e0e0;align-content:center;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;cursor:text}::ng-deep .ag-cell-label-container{padding:0!important}.ag-theme-alpine{--ag-header-font-size: 10px;--ag-font-size: 10px;--ag-header-background-color: #fdfdfd;--ag-header-foreground-color: rgb(0, 0, 0)}::ng-deep .ag-paging-panel{height:30px!important;font-weight:500!important}.main-container{display:flex;flex-direction:column;width:100%;padding:0;box-sizing:border-box}.report-loader{display:flex;justify-content:center;align-items:center;height:320px;background-color:#ffffffb3;border:none none none}.report-container{min-height:350px;font-size:.7rem;line-height:1.4;margin:0;overflow:visible}.main-report{overflow:visible}.grid-size{width:100%!important;font-weight:500!important;height:390px!important}\n"] }]
|
|
234
239
|
}], ctorParameters: function () { return [{ type: i1.ExportService }, { type: i2.ReportService }, { type: i3.HttpClient }, { type: i4.DomSanitizer }]; } });
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmVwb3J0cy1saWIvc3JjL2xpYi9jb21wb25lbnRzL2FjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0L2FjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUc3QyxPQUFPLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7Ozs7Ozs7QUFjL0UsTUFBTSxPQUFPLGtDQUFrQztJQXFFN0MsWUFDVSxhQUE0QixFQUM1QixhQUE0QixFQUM1QixJQUFnQixFQUNoQixTQUF1QjtRQUh2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUF0RWpDLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFHeEIseUJBQW9CLEdBQVcsT0FBTyxDQUFDO1FBQ3ZDLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFDekIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBUzNCLFlBQU8s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OytIQXJRVSxrQ0FBa0M7bUhBQWxDLGtDQUFrQyx5RUN2Qi9DLG10REEwQk07MkZESE8sa0NBQWtDO2tCQU45QyxTQUFTOytCQUNFLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlcG9ydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXBvcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC9hY2NnbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0bW9kZWwnO1xyXG5pbXBvcnQgeyBDb2xEZWYsIENvbHVtbkFwaSwgR3JpZEFwaSwgR3JpZFJlYWR5RXZlbnQgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IGZvcm1hdERhdGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCAnanNwZGYtYXV0b3RhYmxlJztcclxuaW1wb3J0IHsgRXhwb3J0U2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9leHBvcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudExvYWRpbmdTdGF0ZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tcG9uZW50LWxvYWRpbmctc3RhdGVzJztcclxuXHJcbmRlY2xhcmUgbW9kdWxlICdqc3BkZicge1xyXG4gIGludGVyZmFjZSBqc1BERiB7XHJcbiAgICBhdXRvVGFibGU6IChvcHRpb25zOiBhbnkpID0+IGpzUERGO1xyXG4gIH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxuXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcblxyXG4gIHNlYXJjaFRleHQ6IHN0cmluZyA9ICcnO1xyXG4gIGdyaWRBcGk6IEdyaWRBcGk8YW55PjtcclxuICBncmlkQ29sdW1uQXBpITogQ29sdW1uQXBpO1xyXG4gIHNlbGVjdGVkRXhwb3J0T3B0aW9uOiBzdHJpbmcgPSAnZXhjZWwnO1xyXG4gIHN2Z0xvYWRlcjogU2FmZUh0bWwgPSAnJztcclxuICBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZGF0YVJlYWR5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgZGF0ZVR5cGVGaWx0ZXI6IG51bWJlciA9IDE7XHJcbiAgZGF0ZVR5cGU6IGFueTtcclxuICBzeXNDb21wYW55Q29kZTogYW55O1xyXG4gIHN5c1VzZXJJZDogYW55O1xyXG4gIGNvbXBhbnlOYW1lOiBhbnk7XHJcbiAgcmVwb3J0VXNlcjogYW55O1xyXG4gIHJlcG9ydFRpbWU6IGFueTtcclxuICBjdXJyZW50UmVwb3J0VmFsdWVPclBvc3REYXRlOiBhbnk7XHJcbiAgYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsOiBBY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWw7XHJcbiAgcm93RGF0YSA9IFtdO1xyXG4gIGRhdGU6IHN0cmluZztcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gMTU7XHJcbiAgUmVwb3J0TmFtZSA9ICdBQ0MgR0wgRGV0YWlscyBFbnF1aXJ5JztcclxuICBleHBvcnRGb3JtYXRzID0gW1xyXG4gICAgeyBmb3JtYXROYW1lOiAnRXhjZWwnLCBjb2RlOiAnZXhjZWwnIH0sXHJcbiAgICB7IGZvcm1hdE5hbWU6ICdQREYnLCBjb2RlOiAncGRmJyB9LFxyXG4gICAgeyBmb3JtYXROYW1lOiAnQ1NWJywgY29kZTogJ2NzdicgfSxcclxuICBdO1xyXG4gIG1ldGFEYXRhT25lOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xyXG4gIG1ldGFEYXRhVHdvOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xyXG4gIENvbXBvbmVudExvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXM7XHJcbiAgbG9hZGluZ1N0YXRlOiBDb21wb25lbnRMb2FkaW5nU3RhdGVzID0gQ29tcG9uZW50TG9hZGluZ1N0YXRlcy5Db21wbGV0ZTtcclxuICBzZWFyY2hDcml0ZXJpYTogW3N0cmluZywgc3RyaW5nXVtdO1xyXG5cclxuICBkZWZhdWx0Q29sRGVmOiBDb2xEZWYgPSB7XHJcbiAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICBzb3J0YWJsZTogZmFsc2UsXHJcbiAgICBtaW5XaWR0aDogNDAsXHJcbiAgICBzdXBwcmVzc1NpemVUb0ZpdDogZmFsc2UsXHJcbiAgICBjZWxsU3R5bGU6IHtcclxuICAgICAgdXNlclNlbGVjdDogJ3RleHQnLFxyXG4gICAgICAnbGluZS1oZWlnaHQnOiAnMS4yJyxcclxuICAgICAgJ3doaXRlLXNwYWNlJzogJ25vcm1hbCcsXHJcbiAgICAgICd3b3JkLWJyZWFrJzogJ25vcm1hbCcsXHJcbiAgICAgICdvdmVyZmxvdy13cmFwJzogJ2JyZWFrLXdvcmQnLFxyXG4gICAgfSxcclxuICAgIHdyYXBIZWFkZXJUZXh0OiB0cnVlLFxyXG4gICAgYXV0b0hlYWRlckhlaWdodDogdHJ1ZSxcclxuICAgIHdyYXBUZXh0OiB0cnVlLFxyXG4gICAgYXV0b0hlaWdodDogdHJ1ZSxcclxuICB9O1xyXG5cclxuICBjb2x1bW5EZWZzOiBDb2xEZWZbXSA9IFtcclxuICAgIHsgaGVhZGVyTmFtZTogJ0pvdXJuYWwgSUQnLCBmaWVsZDogJ2pvdXJuYWxJRCcsIGZsZXg6IDEuOCwgY2VsbENsYXNzOiAnYWctbGVmdC1jb2xzLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDk1LCB0b29sdGlwRmllbGQ6ICdqb3VybmFsSUQnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdUcmFucyBObycsIGZpZWxkOiAndHJhbnNhY3Rpb25ObycsIGZsZXg6IDEuOCwgY2VsbENsYXNzOiAnYWctbGVmdC1jb2xzLWNlbGwgY29tcGFjdC1jZWxsLXRyYW5zYWN0aW9uJywgbWluV2lkdGg6IDczLCB0b29sdGlwRmllbGQ6ICd0cmFuc2FjdGlvbk5vJyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnVHJhbnMgQ29kZScsIGZpZWxkOiAndHJhbnNhY3Rpb25Db2RlJywgZmxleDogMS4yLCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjAsIHRvb2x0aXBGaWVsZDogJ3RyYW5zYWN0aW9uQ29kZScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0pvdXJuYWwgVHlwZScsIGZpZWxkOiAnam91cm5hbFR5cGUnLCBmbGV4OiAxLjIsIGNlbGxDbGFzczogJ2FnLWxlZnQtY29scy1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA3MywgdG9vbHRpcEZpZWxkOiAnam91cm5hbFR5cGUnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdQb3N0aW5nIERhdGUnLCBmaWVsZDogJ3Bvc3RpbmdEYXRlJywgZmxleDogMS4yLCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjksIHRvb2x0aXBGaWVsZDogJ3Bvc3RpbmdEYXRlJyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnVmFsdWUgRGF0ZScsIGZpZWxkOiAndmFsdWVEYXRlJywgZmxleDogMS4yLCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjgsIHRvb2x0aXBGaWVsZDogJ3ZhbHVlRGF0ZScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0Rlc2NyaXB0aW9uJywgZmllbGQ6ICdkZXNjcmlwdGlvbicsIGZsZXg6IDQuOCwgbWluV2lkdGg6IDExOSwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIGNlbGxTdHlsZTogeyAnbGluZS1oZWlnaHQnOiAnMS4yJywgJ3doaXRlLXNwYWNlJzogJ25vcm1hbCcsICd3b3JkLWJyZWFrJzogJ25vcm1hbCcsICdvdmVyZmxvdy13cmFwJzogJ2JyZWFrLXdvcmQnIH0sIHRvb2x0aXBGaWVsZDogJ2Rlc2NyaXB0aW9uJyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnQWNjb3VudCBDb2RlJywgZmllbGQ6ICdhY2NvdW50Q29kZScsIGZsZXg6IDEuMiwgY2VsbENsYXNzOiAnYWctbGVmdC1jb2xzLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDczLCB0b29sdGlwRmllbGQ6ICdhY2NvdW50Q29kZScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0NjeScsIGZpZWxkOiAnY3VycmVuY3knLCBmbGV4OiAwLjgsIGNlbGxDbGFzczogJ2FnLWxlZnQtY29scy1jZWxsJywgbWluV2lkdGg6IDM1LCB0b29sdGlwRmllbGQ6ICdjdXJyZW5jeScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ1JhdGUnLCBmaWVsZDogJ3JhdGUnLCBmbGV4OiAxLjMsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjksIHRvb2x0aXBGaWVsZDogJ3JhdGUnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdGeERlYml0JywgZmllbGQ6ICdmb3JleERlYml0JywgZmxleDogMSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA1OCwgdG9vbHRpcEZpZWxkOiAnZm9yZXhEZWJpdCcgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0xvY2FsIERlYml0JywgZmllbGQ6ICdsb2NhbERlYml0JywgZmxleDogMSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA2MiwgdG9vbHRpcEZpZWxkOiAnbG9jYWxEZWJpdCcgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0Z4Q3JlZGl0JywgZmllbGQ6ICdmb3JleENyZWRpdCcsIGZsZXg6IDEsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNTgsIHRvb2x0aXBGaWVsZDogJ2ZvcmV4Q3JlZGl0JyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnTG9jYWwgQ3JlZGl0JywgZmllbGQ6ICdsb2NhbENyZWRpdCcsIGZsZXg6IDEsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjIsIHRvb2x0aXBGaWVsZDogJ2xvY2FsQ3JlZGl0JyB9LFxyXG4gIF07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBleHBvcnRTZXJ2aWNlOiBFeHBvcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZXBvcnRTZXJ2aWNlOiBSZXBvcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplclxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgLy8gdGhpcy5odHRwXHJcbiAgICAvLyAgIC5nZXQoJ2Fzc2V0cy9yZXBvcnRzLWxpYi9hc3NldHMvc3ZnLWxvYWRlcnMvYmx1ZS10YWlsLXNwaW4uc3ZnJywgeyByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KVxyXG4gICAgLy8gICAuc3Vic2NyaWJlKChzdmcpID0+IHtcclxuICAgIC8vICAgICB0aGlzLnN2Z0xvYWRlciA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHN2Zyk7XHJcbiAgICAvLyAgIH0pO1xyXG4gICAgdGhpcy5kYXRlID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpLnNwbGl0KCdUJylbMF07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWNjR0xEZXRhaWxzUmVwb3J0KCkge1xyXG4gICAgdGhpcy5sb2FkaW5nU3RhdGUgPSBDb21wb25lbnRMb2FkaW5nU3RhdGVzLkxvYWRpbmc7XHJcbiAgICB0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbCA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmRhdGFSZWFkeSA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZEV4cG9ydE9wdGlvbiA9ICdleGNlbCc7XHJcbiAgICB0aGlzLnN5c0NvbXBhbnlDb2RlID0gJ0JIJztcclxuICAgIHRoaXMuc3lzVXNlcklkID0gdGhpcy5yZXBvcnRTZXJ2aWNlLmdldFVzZXJOYW1lRnJvbVNlc3Npb25TdG9yYWdlKCk7XHJcbiAgICB0aGlzLmNvbXBhbnlOYW1lID0gJ1hwcmVzcyBNb25leSc7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcclxuXHJcbiAgICB0aGlzLmRhdGVUeXBlID0gdGhpcy5kYXRlVHlwZUZpbHRlciA9PT0gMSA/ICdWRCcgOiAnUEQnO1xyXG5cclxuICAgIHRoaXMucmVwb3J0U2VydmljZS5nZXRBY2NHTERldGFpbHNSZXBvcnQodGhpcy5kYXRlLnNwbGl0KCdUJylbMF0sIHRoaXMuZGF0ZVR5cGUpLnN1YnNjcmliZShcclxuICAgICAgKGRhdGEpID0+IHtcclxuICAgICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgICAgLy8gIFByZS1mb3JtYXQgZW50cmllcyBiZWZvcmUgc3RvcmluZ1xyXG4gICAgICAgICAgY29uc3QgZm9ybWF0dGVkRW50cmllcyA9IGRhdGEuam91cm5hbFZvdWNoZXJFbnRyaWVzLm1hcCgoZW50cnkpID0+ICh7XHJcbiAgICAgICAgICAgIC4uLmVudHJ5LFxyXG4gICAgICAgICAgICBwb3N0aW5nRGF0ZTogdGhpcy5mb3JtYXREYXRlVmFsdWUoZW50cnkucG9zdGluZ0RhdGUpLFxyXG4gICAgICAgICAgICB2YWx1ZURhdGU6IHRoaXMuZm9ybWF0RGF0ZVZhbHVlKGVudHJ5LnZhbHVlRGF0ZSksXHJcbiAgICAgICAgICAgIHJhdGU6IHRoaXMuZm9ybWF0TnVtYmVyVmFsdWUoZW50cnkucmF0ZSwgJ3JhdGUnKSxcclxuICAgICAgICAgICAgZm9yZXhEZWJpdDogdGhpcy5mb3JtYXROdW1iZXJWYWx1ZShlbnRyeS5mb3JleERlYml0LCAnZm9yZXhEZWJpdCcpLFxyXG4gICAgICAgICAgICBsb2NhbERlYml0OiB0aGlzLmZvcm1hdE51bWJlclZhbHVlKGVudHJ5LmxvY2FsRGViaXQsICdsb2NhbERlYml0JyksXHJcbiAgICAgICAgICAgIGZvcmV4Q3JlZGl0OiB0aGlzLmZvcm1hdE51bWJlclZhbHVlKGVudHJ5LmZvcmV4Q3JlZGl0LCAnZm9yZXhDcmVkaXQnKSxcclxuICAgICAgICAgICAgbG9jYWxDcmVkaXQ6IHRoaXMuZm9ybWF0TnVtYmVyVmFsdWUoZW50cnkubG9jYWxDcmVkaXQsICdsb2NhbENyZWRpdCcpLFxyXG4gICAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICAgIHRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsID0ge1xyXG4gICAgICAgICAgICAuLi5kYXRhLFxyXG4gICAgICAgICAgICBqb3VybmFsVm91Y2hlckVudHJpZXM6IGZvcm1hdHRlZEVudHJpZXMsXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIHRoaXMucm93RGF0YSA9IGZvcm1hdHRlZEVudHJpZXM7XHJcbiAgICAgICAgICB0aGlzLmNvbXBhbnlOYW1lID0gZGF0YS5jb21wYW55TmFtZTtcclxuICAgICAgICAgIHRoaXMucmVwb3J0VXNlciA9IGRhdGEucmVwb3J0VXNlci50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgICAgdGhpcy5yZXBvcnRUaW1lID0gZm9ybWF0RGF0ZShuZXcgRGF0ZSgpLCAnZGQvTU0veXl5eSBoaDptbSBhJywgJ2VuLVVTJyk7XHJcbiAgICAgICAgICB0aGlzLmN1cnJlbnRSZXBvcnRWYWx1ZU9yUG9zdERhdGUgPSBmb3JtYXREYXRlKGRhdGEuZGF0ZSwgJ2RkL01NL3l5eXknLCAnZW4tVVMnKTtcclxuICAgICAgICAgIGNvbnN0IERhdGVUeXBlID0gdGhpcy5kYXRlVHlwZSA9PT0gJ1ZEJyA/ICdWYWx1ZSBEYXRlJyA6ICdQb3N0aW5nIERhdGUnO1xyXG5cclxuICAgICAgICAgIHRoaXMubWV0YURhdGFPbmUgPSB7XHJcbiAgICAgICAgICAgIFtEYXRlVHlwZV06IHRoaXMuY3VycmVudFJlcG9ydFZhbHVlT3JQb3N0RGF0ZSxcclxuICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgdGhpcy5tZXRhRGF0YVR3byA9IHtcclxuICAgICAgICAgICAgJ1JlcG9ydCBVc2VyICYgVGltZSAnOiBgJHt0aGlzLnJlcG9ydFVzZXJ9IEAgJHt0aGlzLnJlcG9ydFRpbWV9YFxyXG4gICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuQ29tcGxldGU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuZGF0YVJlYWR5ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHdpbmRvdy5hbGVydChlcnJvci5tZXNzYWdlKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0RGF0ZVZhbHVlKHZhbHVlOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuICcnO1xyXG4gICAgcmV0dXJuIGZvcm1hdERhdGUobmV3IERhdGUodmFsdWUpLCAnZGQvTU0veXl5eScsICdlbi1VUycpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXROdW1iZXJWYWx1ZSh2YWx1ZTogYW55LCBmaWVsZDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSByZXR1cm4gJyc7XHJcbiAgICByZXR1cm4gZmllbGQgPT09ICdyYXRlJyA/IE51bWJlcih2YWx1ZSkudG9GaXhlZCg4KSA6IE51bWJlcih2YWx1ZSkudG9GaXhlZCgzKTtcclxuICB9XHJcblxyXG4gIG9uR3JpZFJlYWR5KHBhcmFtczogR3JpZFJlYWR5RXZlbnQpIHtcclxuICAgIHRoaXMuZ3JpZEFwaSA9IHBhcmFtcy5hcGk7XHJcbiAgICB0aGlzLmdyaWRDb2x1bW5BcGkgPSBwYXJhbXMuY29sdW1uQXBpO1xyXG4gIH1cclxuXHJcbiAgb25HcmlkU2l6ZUNoYW5nZWQocGFyYW1zOiBhbnkpIHtcclxuICAgIHBhcmFtcy5hcGkuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Um93SGVpZ2h0KHBhcmFtczogYW55KTogbnVtYmVyIHtcclxuICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gcGFyYW1zLmRhdGE/LmRlc2NyaXB0aW9uIHx8ICcnO1xyXG4gICAgcmV0dXJuIGRlc2NyaXB0aW9uLmxlbmd0aCA+IDUwID8gNDAgOiAyMDtcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoKHRleHQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3Qgbm9ybWFsaXplID0gKHN0cjogYW55KTogc3RyaW5nID0+XHJcbiAgICAgIHN0clxyXG4gICAgICAgID8udG9TdHJpbmcoKVxyXG4gICAgICAgIC50b0xvd2VyQ2FzZSgpXHJcbiAgICAgICAgLnJlcGxhY2UoLywvZywgJycpXHJcbiAgICAgICAgLnJlcGxhY2UoL1xccysvZywgJyAnKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bXFx1MjAwQi1cXHUyMDBEXFx1RkVGRl0vZywgJycpXHJcbiAgICAgICAgLnRyaW0oKTtcclxuXHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB0ZXh0O1xyXG4gICAgY29uc3Qgc2VhcmNoID0gbm9ybWFsaXplKHRoaXMuc2VhcmNoVGV4dCk7XHJcblxyXG4gICAgaWYgKHNlYXJjaCkge1xyXG4gICAgICB0aGlzLnJvd0RhdGEgPSB0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbC5qb3VybmFsVm91Y2hlckVudHJpZXMuZmlsdGVyKChpdGVtKSA9PlxyXG4gICAgICAgIE9iamVjdC52YWx1ZXMoaXRlbSkuc29tZSgodmFsdWUpID0+IG5vcm1hbGl6ZSh2YWx1ZSkuaW5jbHVkZXMoc2VhcmNoKSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucm93RGF0YSA9IHRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZUV4cG9ydChvcHRpb246IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEV4cG9ydE9wdGlvbiA9IG9wdGlvbjtcclxuICAgIHN3aXRjaCAodGhpcy5zZWxlY3RlZEV4cG9ydE9wdGlvbikge1xyXG4gICAgICBjYXNlICdleGNlbCc6XHJcbiAgICAgICAgdGhpcy5leHBvcnRUb0V4Y2VsKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3BkZic6XHJcbiAgICAgICAgdGhpcy5leHBvcnRUb1BkZigpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdjc3YnOlxyXG4gICAgICAgIHRoaXMuZXhwb3J0VG9Dc3YoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBhbGVydCgnUGxlYXNlIHNlbGVjdCBhbiBleHBvcnQgZm9ybWF0LicpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZXhwb3J0VG9QZGYoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcz8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSBgJHt0aGlzLmNvbXBhbnlOYW1lfSAtIEdlbmVyYWwgTGVkZ2VyIEFjY291bnQgRGV0YWlscyBFbnF1aXJ5IFJlcG9ydGA7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUgOiAnLCBgJHt0aGlzLnJlcG9ydFVzZXJ9QCR7dGhpcy5yZXBvcnRUaW1lfWBdLFxyXG4gICAgXSk7XHJcblxyXG4gICAgY29uc3QgeyBoZWFkZXJzLCByb3dzIH0gPSB0aGlzLmV4cG9ydFNlcnZpY2UucHJlcGFyZUV4cG9ydFRhYmxlKHRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcywgdGhpcy5jb2x1bW5EZWZzLCB7XHJcbiAgICAgIGN1cnJlbmN5RmllbGRzOiBbJ2xvY2FsQ3JlZGl0JywgJ2ZvcmV4Q3JlZGl0JywgJ2xvY2FsRGViaXQnLCAnZm9yZXhEZWJpdCddLFxyXG4gICAgfSk7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5leHBvcnRTZXJ2aWNlLmV4cG9ydFRvUGRmVW5pdmVyc2FsKHRpdGxlLCBtZXRhZGF0YSwgdGhpcy5zZWFyY2hDcml0ZXJpYSwgaGVhZGVycywgcm93cywgJ0FDQy1HTC1EZXRhaWxzLUVucXVpcnktUmVwb3J0LnBkZicpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0VG9FeGNlbCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwuam91cm5hbFZvdWNoZXJFbnRyaWVzPy5sZW5ndGgpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCB0aXRsZSA9IGAke3RoaXMuY29tcGFueU5hbWV9IC0gR2VuZXJhbCBMZWRnZXIgQWNjb3VudCBEZXRhaWxzIEVucXVpcnkgUmVwb3J0YDtcclxuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5leHBvcnRTZXJ2aWNlLmdlbmVyYXRlUmVwb3J0TWV0YWRhdGEoW1xyXG4gICAgICBbJ1JlcG9ydCBVc2VyICYgVGltZSA6ICcsIGAke3RoaXMucmVwb3J0VXNlcn1AJHt0aGlzLnJlcG9ydFRpbWV9YF0sXHJcbiAgICBdKTtcclxuXHJcbiAgICBjb25zdCB7IGhlYWRlcnMsIHJvd3MgfSA9IHRoaXMuZXhwb3J0U2VydmljZS5wcmVwYXJlRXhwb3J0VGFibGUodGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwuam91cm5hbFZvdWNoZXJFbnRyaWVzLCB0aGlzLmNvbHVtbkRlZnMsIHtcclxuICAgICAgY3VycmVuY3lGaWVsZHM6IFsnbG9jYWxDcmVkaXQnLCAnZm9yZXhDcmVkaXQnLCAnbG9jYWxEZWJpdCcsICdmb3JleERlYml0J10sXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmV4cG9ydFNlcnZpY2UuZXhwb3J0VG9FeGNlbFVuaXZlcnNhbCh0aXRsZSwgbWV0YWRhdGEsIHRoaXMuc2VhcmNoQ3JpdGVyaWEsIGhlYWRlcnMsIHJvd3MsICdBQ0MtR0wtRGV0YWlscy1FbnF1aXJ5LVJlcG9ydC54bHN4Jyk7XHJcbiAgfVxyXG5cclxuICBleHBvcnRUb0NzdigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwuam91cm5hbFZvdWNoZXJFbnRyaWVzPy5sZW5ndGgpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCB0aXRsZSA9IGAke3RoaXMuY29tcGFueU5hbWV9IC0gR2VuZXJhbCBMZWRnZXIgQWNjb3VudCBEZXRhaWxzIEVucXVpcnkgUmVwb3J0YDtcclxuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5leHBvcnRTZXJ2aWNlLmdlbmVyYXRlUmVwb3J0TWV0YWRhdGEoW1xyXG4gICAgICBbJ1JlcG9ydCBVc2VyICYgVGltZSA6ICcsIGAke3RoaXMucmVwb3J0VXNlcn1AJHt0aGlzLnJlcG9ydFRpbWV9YF0sXHJcbiAgICBdKTtcclxuXHJcbiAgICBjb25zdCB7IGhlYWRlcnMsIHJvd3MgfSA9IHRoaXMuZXhwb3J0U2VydmljZS5wcmVwYXJlRXhwb3J0VGFibGUodGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwuam91cm5hbFZvdWNoZXJFbnRyaWVzLCB0aGlzLmNvbHVtbkRlZnMsIHtcclxuICAgICAgY3VycmVuY3lGaWVsZHM6IFsnbG9jYWxDcmVkaXQnLCAnZm9yZXhDcmVkaXQnLCAnbG9jYWxEZWJpdCcsICdmb3JleERlYml0J10sXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmV4cG9ydFNlcnZpY2UuZXhwb3J0VG9Dc3ZVbml2ZXJzYWwodGl0bGUsIG1ldGFkYXRhLCB0aGlzLnNlYXJjaENyaXRlcmlhLCBoZWFkZXJzLCByb3dzLCAnQUNDLUdMLURldGFpbHMtRW5xdWlyeS1SZXBvcnQuY3N2Jyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVTZWFyY2goY3JpdGVyaWE6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRlVHlwZUZpbHRlciA9IGNyaXRlcmlhLnNlbGVjdGVkRGF0ZVR5cGU7XHJcbiAgICB0aGlzLmRhdGUgPSBjcml0ZXJpYS5zZWxlY3RlZERhdGUuc3BsaXQoJ1QnKVswXTtcclxuICAgIHRoaXMuc2VhcmNoQ3JpdGVyaWEgPSBbXHJcbiAgICAgIFsnRGF0ZSBUeXBlOicsIGAke3RoaXMuZGF0ZVR5cGVGaWx0ZXIgPT09IDEgPyAnVmFsdWUgRGF0ZScgOiAnUG9zdGluZyBEYXRlJ31gXSxcclxuICAgICAgWydEYXRlOicsIGZvcm1hdERhdGUodGhpcy5kYXRlLCAnZGQvTU0veXl5eScsICdlbi1VUycpXSxcclxuICAgIF07XHJcbiAgICB0aGlzLmdldEFjY0dMRGV0YWlsc1JlcG9ydCgpO1xyXG4gIH1cclxufVxyXG4iLCI8bGliLXNlYXJjaC1maWx0ZXIgW1JlcG9ydE5hbWVdPVwiUmVwb3J0TmFtZVwiIChzZWFyY2hDbGlja2VkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCI+XHJcbjwvbGliLXNlYXJjaC1maWx0ZXI+XHJcbjxhcHAtbG9hZGVyIGNsYXNzPVwiXCIgKm5nSWY9XCJsb2FkaW5nU3RhdGUgPT0gQ29tcG9uZW50TG9hZGluZ1N0YXRlLkxvYWRpbmdcIj48L2FwcC1sb2FkZXI+XHJcbjxkaXYgY2xhc3M9XCJtYWluLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJyZXBvcnQtY29udGFpbmVyXCJcclxuICAgICpuZ0lmPVwiYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsICE9IHVuZGVmaW5lZCAmJiBkYXRhUmVhZHkgJiYgYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsPy5qb3VybmFsVm91Y2hlckVudHJpZXM/Lmxlbmd0aCE9MFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1haW4tcmVwb3J0XCIgKm5nSWY9XCJhY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwgIT0gdW5kZWZpbmVkICYmIGRhdGFSZWFkeVwiPlxyXG4gICAgICA8bGliLW1ldGFkYXRhIFtyZXBvcnROYW1lXT1cIlJlcG9ydE5hbWVcIiBbc2hvd21ldGFEYXRhT25lXT1cInRydWVcIiBbc2hvd21ldGFEYXRhVHdvXT1cInRydWVcIlxyXG4gICAgICAgIFttZXRhRGF0YU9uZV09XCJtZXRhRGF0YU9uZVwiIFttZXRhRGF0YVR3b109XCJtZXRhRGF0YVR3b1wiIChleHBvcnRFdmVudCk9XCJoYW5kbGVFeHBvcnQoJGV2ZW50KVwiXHJcbiAgICAgICAgKHNlYXJjaEV2ZW50KT1cIm9uU2VhcmNoKCRldmVudClcIj48L2xpYi1tZXRhZGF0YT5cclxuICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTtcIj5cclxuICAgICAgICA8bGliLXBhZ2Utc2l6ZS1zZWxlY3RvciBbdG90YWxFbnRyaWVzXT1cImFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbD8uam91cm5hbFZvdWNoZXJFbnRyaWVzPy5sZW5ndGhcIlxyXG4gICAgICAgICAgW2RlZmF1bHRTaXplXT1cIicxNSdcIiBbZ3JpZEFwaV09XCJncmlkQXBpXCI+XHJcbiAgICAgICAgICA+PC9saWItcGFnZS1zaXplLXNlbGVjdG9yPlxyXG4gICAgICAgIDxhZy1ncmlkLWFuZ3VsYXIgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmUgdHJhbnNhY3Rpb24tZ3JpZFwiIHN0eWxlPVwid2lkdGg6IDEwMCU7aGVpZ2h0OiAzNzVweDtcIlxyXG4gICAgICAgICAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIiBbcm93RGF0YV09XCJyb3dEYXRhXCIgW3Jvd0hlaWdodF09XCIyMFwiXHJcbiAgICAgICAgICBbaGVhZGVySGVpZ2h0XT1cIjIyXCIgW3BhZ2luYXRpb25dPVwidHJ1ZVwiIFtwYWdpbmF0aW9uUGFnZVNpemVdPVwicGFnZVNpemVcIiAoZ3JpZFJlYWR5KT1cIm9uR3JpZFJlYWR5KCRldmVudClcIlxyXG4gICAgICAgICAgKGdyaWRTaXplQ2hhbmdlZCk9XCJvbkdyaWRTaXplQ2hhbmdlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC13YXJuaW5nIG10LTNcIiAqbmdJZj1cImFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbD8uam91cm5hbFZvdWNoZXJFbnRyaWVzPy5sZW5ndGg9PTBcIj5cclxuICAgIE5vIERhdGEgZm91bmQgbWF0Y2hpbmcgeW91ciBzZWFyY2ggY3JpdGVyaWEuXHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
240
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmVwb3J0cy1saWIvc3JjL2xpYi9jb21wb25lbnRzL2FjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0L2FjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC9hY2MtZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUc3QyxPQUFPLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7Ozs7Ozs7QUFjL0UsTUFBTSxPQUFPLGtDQUFrQztJQXVFN0MsWUFDVSxhQUE0QixFQUM1QixhQUE0QixFQUM1QixJQUFnQixFQUNoQixTQUF1QjtRQUh2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUF4RWpDLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFHeEIseUJBQW9CLEdBQVcsT0FBTyxDQUFDO1FBQ3ZDLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFDekIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBUzNCLFlBQU8s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QUFDO1FBQ0YsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxPQUFnQjtRQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUM3QixDQUFDOzsrSEEzUVUsa0NBQWtDO21IQUFsQyxrQ0FBa0MseUVDdkIvQywwdkRBMEJNOzJGREhPLGtDQUFrQztrQkFOOUMsU0FBUzsrQkFDRSxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVwb3J0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQvYWNjZ2wtZGV0YWlscy1lbnF1aXJ5LXJlcG9ydG1vZGVsJztcclxuaW1wb3J0IHsgQ29sRGVmLCBDb2x1bW5BcGksIEdyaWRBcGksIEdyaWRSZWFkeUV2ZW50IH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xyXG5pbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgJ2pzcGRmLWF1dG90YWJsZSc7XHJcbmltcG9ydCB7IEV4cG9ydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvZXhwb3J0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRMb2FkaW5nU3RhdGVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbXBvbmVudC1sb2FkaW5nLXN0YXRlcyc7XHJcblxyXG5kZWNsYXJlIG1vZHVsZSAnanNwZGYnIHtcclxuICBpbnRlcmZhY2UganNQREYge1xyXG4gICAgYXV0b1RhYmxlOiAob3B0aW9uczogYW55KSA9PiBqc1BERjtcclxuICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWFjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWNjLWdsLWRldGFpbHMtZW5xdWlyeS1yZXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FjYy1nbC1kZXRhaWxzLWVucXVpcnktcmVwb3J0LmNvbXBvbmVudC5zY3NzJ10sXHJcblxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSAnJztcclxuICBncmlkQXBpOiBHcmlkQXBpPGFueT47XHJcbiAgZ3JpZENvbHVtbkFwaSE6IENvbHVtbkFwaTtcclxuICBzZWxlY3RlZEV4cG9ydE9wdGlvbjogc3RyaW5nID0gJ2V4Y2VsJztcclxuICBzdmdMb2FkZXI6IFNhZmVIdG1sID0gJyc7XHJcbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRhdGFSZWFkeTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRhdGVUeXBlRmlsdGVyOiBudW1iZXIgPSAxO1xyXG4gIGRhdGVUeXBlOiBhbnk7XHJcbiAgc3lzQ29tcGFueUNvZGU6IGFueTtcclxuICBzeXNVc2VySWQ6IGFueTtcclxuICBjb21wYW55TmFtZTogYW55O1xyXG4gIHJlcG9ydFVzZXI6IGFueTtcclxuICByZXBvcnRUaW1lOiBhbnk7XHJcbiAgY3VycmVudFJlcG9ydFZhbHVlT3JQb3N0RGF0ZTogYW55O1xyXG4gIGFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbDogQWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsO1xyXG4gIHJvd0RhdGEgPSBbXTtcclxuICBkYXRlOiBzdHJpbmc7XHJcbiAgcGFnZVNpemU6IG51bWJlciA9IDE1O1xyXG4gIFJlcG9ydE5hbWUgPSAnQUNDIEdMIERldGFpbHMgRW5xdWlyeSc7XHJcbiAgZXhwb3J0Rm9ybWF0cyA9IFtcclxuICAgIHsgZm9ybWF0TmFtZTogJ0V4Y2VsJywgY29kZTogJ2V4Y2VsJyB9LFxyXG4gICAgeyBmb3JtYXROYW1lOiAnUERGJywgY29kZTogJ3BkZicgfSxcclxuICAgIHsgZm9ybWF0TmFtZTogJ0NTVicsIGNvZGU6ICdjc3YnIH0sXHJcbiAgXTtcclxuICBtZXRhRGF0YU9uZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICBtZXRhRGF0YVR3bzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICBDb21wb25lbnRMb2FkaW5nU3RhdGUgPSBDb21wb25lbnRMb2FkaW5nU3RhdGVzO1xyXG4gIGxvYWRpbmdTdGF0ZTogQ29tcG9uZW50TG9hZGluZ1N0YXRlcyA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuQ29tcGxldGU7XHJcbiAgc2VhcmNoQ3JpdGVyaWE6IFtzdHJpbmcsIHN0cmluZ11bXTtcclxuICBpc0Zvcm1WYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBkZWZhdWx0Q29sRGVmOiBDb2xEZWYgPSB7XHJcbiAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICBzb3J0YWJsZTogdHJ1ZSxcclxuICAgIGZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbldpZHRoOiA0MCxcclxuICAgIHN1cHByZXNzU2l6ZVRvRml0OiBmYWxzZSxcclxuICAgIGNlbGxTdHlsZToge1xyXG4gICAgICB1c2VyU2VsZWN0OiAndGV4dCcsXHJcbiAgICAgICdsaW5lLWhlaWdodCc6ICcxLjInLFxyXG4gICAgICAnd2hpdGUtc3BhY2UnOiAnbm9ybWFsJyxcclxuICAgICAgJ3dvcmQtYnJlYWsnOiAnbm9ybWFsJyxcclxuICAgICAgJ292ZXJmbG93LXdyYXAnOiAnYnJlYWstd29yZCcsXHJcbiAgICB9LFxyXG4gICAgd3JhcEhlYWRlclRleHQ6IHRydWUsXHJcbiAgICBhdXRvSGVhZGVySGVpZ2h0OiB0cnVlLFxyXG4gICAgd3JhcFRleHQ6IHRydWUsXHJcbiAgICBhdXRvSGVpZ2h0OiB0cnVlLFxyXG4gIH07XHJcblxyXG4gIGNvbHVtbkRlZnM6IENvbERlZltdID0gW1xyXG4gICAgeyBoZWFkZXJOYW1lOiAnSm91cm5hbCBJRCcsIGZpZWxkOiAnam91cm5hbElEJywgZmxleDogMS44LCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogOTUsIHRvb2x0aXBGaWVsZDogJ2pvdXJuYWxJRCcgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ1RyYW5zIE5vJywgZmllbGQ6ICd0cmFuc2FjdGlvbk5vJywgZmxleDogMS44LCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwtdHJhbnNhY3Rpb24nLCBtaW5XaWR0aDogNzMsIHRvb2x0aXBGaWVsZDogJ3RyYW5zYWN0aW9uTm8nIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdUcmFucyBDb2RlJywgZmllbGQ6ICd0cmFuc2FjdGlvbkNvZGUnLCBmbGV4OiAxLjEsIGNlbGxDbGFzczogJ2FnLWxlZnQtY29scy1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA2MCwgdG9vbHRpcEZpZWxkOiAndHJhbnNhY3Rpb25Db2RlJyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnSm91cm5hbCBUeXBlJywgZmllbGQ6ICdqb3VybmFsVHlwZScsIGZsZXg6IDEsIGNlbGxDbGFzczogJ2FnLWxlZnQtY29scy1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA3MywgdG9vbHRpcEZpZWxkOiAnam91cm5hbFR5cGUnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdQb3N0aW5nIERhdGUnLCBmaWVsZDogJ3Bvc3RpbmdEYXRlJywgZmxleDogMS4yLCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjksIHRvb2x0aXBGaWVsZDogJ3Bvc3RpbmdEYXRlJyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnVmFsdWUgRGF0ZScsIGZpZWxkOiAndmFsdWVEYXRlJywgZmxleDogMS4xLCBjZWxsQ2xhc3M6ICdhZy1sZWZ0LWNvbHMtY2VsbCBjb21wYWN0LWNlbGwnLCBtaW5XaWR0aDogNjgsIHRvb2x0aXBGaWVsZDogJ3ZhbHVlRGF0ZScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0Rlc2NyaXB0aW9uJywgZmllbGQ6ICdkZXNjcmlwdGlvbicsIGZsZXg6IDMsIG1pbldpZHRoOiAxMTksIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCBjZWxsU3R5bGU6IHsgJ2xpbmUtaGVpZ2h0JzogJzEuMicsICd3aGl0ZS1zcGFjZSc6ICdub3JtYWwnLCAnd29yZC1icmVhayc6ICdub3JtYWwnLCAnb3ZlcmZsb3ctd3JhcCc6ICdicmVhay13b3JkJyB9LCB0b29sdGlwRmllbGQ6ICdkZXNjcmlwdGlvbicgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0FjY291bnQgQ29kZScsIGZpZWxkOiAnYWNjb3VudENvZGUnLCBmbGV4OiAxLjEsIGNlbGxDbGFzczogJ2FnLWxlZnQtY29scy1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA3MywgdG9vbHRpcEZpZWxkOiAnYWNjb3VudENvZGUnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdDY3knLCBmaWVsZDogJ2N1cnJlbmN5JywgZmxleDogMSwgY2VsbENsYXNzOiAnYWctbGVmdC1jb2xzLWNlbGwnLCBtaW5XaWR0aDogMzUsIHRvb2x0aXBGaWVsZDogJ2N1cnJlbmN5JyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnUmF0ZScsIGZpZWxkOiAncmF0ZScsIGZsZXg6IDEuMSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIG1pbldpZHRoOiA2OSwgdG9vbHRpcEZpZWxkOiAncmF0ZScgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0Z4RGViaXQnLCBmaWVsZDogJ2ZvcmV4RGViaXQnLCBmbGV4OiAxLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDU4LCB0b29sdGlwRmllbGQ6ICdmb3JleERlYml0JyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnTG9jYWwgRGViaXQnLCBmaWVsZDogJ2xvY2FsRGViaXQnLCBmbGV4OiAxLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDYyLCB0b29sdGlwRmllbGQ6ICdsb2NhbERlYml0JyB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnRnhDcmVkaXQnLCBmaWVsZDogJ2ZvcmV4Q3JlZGl0JywgZmxleDogMS40LCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDU4LCB0b29sdGlwRmllbGQ6ICdmb3JleENyZWRpdCcgfSxcclxuICAgIHsgaGVhZGVyTmFtZTogJ0xvY2FsIENyZWRpdCcsIGZpZWxkOiAnbG9jYWxDcmVkaXQnLCBmbGV4OiAxLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgbWluV2lkdGg6IDYyLCB0b29sdGlwRmllbGQ6ICdsb2NhbENyZWRpdCcgfSxcclxuICBdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZXhwb3J0U2VydmljZTogRXhwb3J0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVwb3J0U2VydmljZTogUmVwb3J0U2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXJcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIHRoaXMuaHR0cFxyXG4gICAgLy8gICAuZ2V0KCdhc3NldHMvcmVwb3J0cy1saWIvYXNzZXRzL3N2Zy1sb2FkZXJzL2JsdWUtdGFpbC1zcGluLnN2ZycsIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgIC8vICAgLnN1YnNjcmliZSgoc3ZnKSA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy5zdmdMb2FkZXIgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChzdmcpO1xyXG4gICAgLy8gICB9KTtcclxuICAgIHRoaXMuZGF0ZSA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEFjY0dMRGV0YWlsc1JlcG9ydCgpIHtcclxuICAgIHRoaXMubG9hZGluZ1N0YXRlID0gQ29tcG9uZW50TG9hZGluZ1N0YXRlcy5Mb2FkaW5nO1xyXG4gICAgdGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5kYXRhUmVhZHkgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24gPSAnZXhjZWwnO1xyXG4gICAgdGhpcy5zeXNDb21wYW55Q29kZSA9ICdCSCc7XHJcbiAgICB0aGlzLnN5c1VzZXJJZCA9IHRoaXMucmVwb3J0U2VydmljZS5nZXRVc2VyTmFtZUZyb21TZXNzaW9uU3RvcmFnZSgpO1xyXG4gICAgdGhpcy5jb21wYW55TmFtZSA9ICdYcHJlc3MgTW9uZXknO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XHJcblxyXG4gICAgdGhpcy5kYXRlVHlwZSA9IHRoaXMuZGF0ZVR5cGVGaWx0ZXIgPT09IDEgPyAnVkQnIDogJ1BEJztcclxuXHJcbiAgICB0aGlzLnJlcG9ydFNlcnZpY2UuZ2V0QWNjR0xEZXRhaWxzUmVwb3J0KHRoaXMuZGF0ZS5zcGxpdCgnVCcpWzBdLCB0aGlzLmRhdGVUeXBlKS5zdWJzY3JpYmUoXHJcbiAgICAgIChkYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICAgIC8vICBQcmUtZm9ybWF0IGVudHJpZXMgYmVmb3JlIHN0b3JpbmdcclxuICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZEVudHJpZXMgPSBkYXRhLmpvdXJuYWxWb3VjaGVyRW50cmllcy5tYXAoKGVudHJ5KSA9PiAoe1xyXG4gICAgICAgICAgICAuLi5lbnRyeSxcclxuICAgICAgICAgICAgcG9zdGluZ0RhdGU6IHRoaXMuZm9ybWF0RGF0ZVZhbHVlKGVudHJ5LnBvc3RpbmdEYXRlKSxcclxuICAgICAgICAgICAgdmFsdWVEYXRlOiB0aGlzLmZvcm1hdERhdGVWYWx1ZShlbnRyeS52YWx1ZURhdGUpLFxyXG4gICAgICAgICAgICByYXRlOiB0aGlzLmZvcm1hdE51bWJlclZhbHVlKGVudHJ5LnJhdGUsICdyYXRlJyksXHJcbiAgICAgICAgICAgIGZvcmV4RGViaXQ6IHRoaXMuZm9ybWF0TnVtYmVyVmFsdWUoZW50cnkuZm9yZXhEZWJpdCwgJ2ZvcmV4RGViaXQnKSxcclxuICAgICAgICAgICAgbG9jYWxEZWJpdDogdGhpcy5mb3JtYXROdW1iZXJWYWx1ZShlbnRyeS5sb2NhbERlYml0LCAnbG9jYWxEZWJpdCcpLFxyXG4gICAgICAgICAgICBmb3JleENyZWRpdDogdGhpcy5mb3JtYXROdW1iZXJWYWx1ZShlbnRyeS5mb3JleENyZWRpdCwgJ2ZvcmV4Q3JlZGl0JyksXHJcbiAgICAgICAgICAgIGxvY2FsQ3JlZGl0OiB0aGlzLmZvcm1hdE51bWJlclZhbHVlKGVudHJ5LmxvY2FsQ3JlZGl0LCAnbG9jYWxDcmVkaXQnKSxcclxuICAgICAgICAgIH0pKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbCA9IHtcclxuICAgICAgICAgICAgLi4uZGF0YSxcclxuICAgICAgICAgICAgam91cm5hbFZvdWNoZXJFbnRyaWVzOiBmb3JtYXR0ZWRFbnRyaWVzLFxyXG4gICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICB0aGlzLnJvd0RhdGEgPSBmb3JtYXR0ZWRFbnRyaWVzO1xyXG4gICAgICAgICAgdGhpcy5jb21wYW55TmFtZSA9IGRhdGEuY29tcGFueU5hbWU7XHJcbiAgICAgICAgICB0aGlzLnJlcG9ydFVzZXIgPSBkYXRhLnJlcG9ydFVzZXIudG9Mb3dlckNhc2UoKTtcclxuICAgICAgICAgIHRoaXMucmVwb3J0VGltZSA9IGZvcm1hdERhdGUobmV3IERhdGUoKSwgJ2RkL01NL3l5eXkgaGg6bW0gYScsICdlbi1VUycpO1xyXG4gICAgICAgICAgdGhpcy5jdXJyZW50UmVwb3J0VmFsdWVPclBvc3REYXRlID0gZm9ybWF0RGF0ZShkYXRhLmRhdGUsICdkZC9NTS95eXl5JywgJ2VuLVVTJyk7XHJcbiAgICAgICAgICBjb25zdCBEYXRlVHlwZSA9IHRoaXMuZGF0ZVR5cGUgPT09ICdWRCcgPyAnVmFsdWUgRGF0ZScgOiAnUG9zdGluZyBEYXRlJztcclxuXHJcbiAgICAgICAgICB0aGlzLm1ldGFEYXRhT25lID0ge1xyXG4gICAgICAgICAgICBbRGF0ZVR5cGVdOiB0aGlzLmN1cnJlbnRSZXBvcnRWYWx1ZU9yUG9zdERhdGUsXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIHRoaXMubWV0YURhdGFUd28gPSB7XHJcbiAgICAgICAgICAgICdSZXBvcnQgVXNlciAmIFRpbWUgJzogYCR7dGhpcy5yZXBvcnRVc2VyfSBAICR7dGhpcy5yZXBvcnRUaW1lfWBcclxuICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nU3RhdGUgPSBDb21wb25lbnRMb2FkaW5nU3RhdGVzLkNvbXBsZXRlO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmRhdGFSZWFkeSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB3aW5kb3cuYWxlcnQoZXJyb3IubWVzc2FnZSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdERhdGVWYWx1ZSh2YWx1ZTogYW55KTogc3RyaW5nIHtcclxuICAgIGlmICghdmFsdWUpIHJldHVybiAnJztcclxuICAgIHJldHVybiBmb3JtYXREYXRlKG5ldyBEYXRlKHZhbHVlKSwgJ2RkL01NL3l5eXknLCAnZW4tVVMnKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0TnVtYmVyVmFsdWUodmFsdWU6IGFueSwgZmllbGQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkgcmV0dXJuICcnO1xyXG4gICAgcmV0dXJuIGZpZWxkID09PSAncmF0ZScgPyBOdW1iZXIodmFsdWUpLnRvRml4ZWQoOCkgOiBOdW1iZXIodmFsdWUpLnRvRml4ZWQoMyk7XHJcbiAgfVxyXG5cclxuICBvbkdyaWRSZWFkeShwYXJhbXM6IEdyaWRSZWFkeUV2ZW50KSB7XHJcbiAgICB0aGlzLmdyaWRBcGkgPSBwYXJhbXMuYXBpO1xyXG4gICAgdGhpcy5ncmlkQ29sdW1uQXBpID0gcGFyYW1zLmNvbHVtbkFwaTtcclxuICB9XHJcblxyXG4gIG9uR3JpZFNpemVDaGFuZ2VkKHBhcmFtczogYW55KSB7XHJcbiAgICBwYXJhbXMuYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcclxuICB9XHJcblxyXG4gIGdldFJvd0hlaWdodChwYXJhbXM6IGFueSk6IG51bWJlciB7XHJcbiAgICBjb25zdCBkZXNjcmlwdGlvbiA9IHBhcmFtcy5kYXRhPy5kZXNjcmlwdGlvbiB8fCAnJztcclxuICAgIHJldHVybiBkZXNjcmlwdGlvbi5sZW5ndGggPiA1MCA/IDQwIDogMjA7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaCh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5vcm1hbGl6ZSA9IChzdHI6IGFueSk6IHN0cmluZyA9PlxyXG4gICAgICBzdHJcclxuICAgICAgICA/LnRvU3RyaW5nKClcclxuICAgICAgICAudG9Mb3dlckNhc2UoKVxyXG4gICAgICAgIC5yZXBsYWNlKC8sL2csICcnKVxyXG4gICAgICAgIC5yZXBsYWNlKC9cXHMrL2csICcgJylcclxuICAgICAgICAucmVwbGFjZSgvW1xcdTIwMEItXFx1MjAwRFxcdUZFRkZdL2csICcnKVxyXG4gICAgICAgIC50cmltKCk7XHJcblxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIGNvbnN0IHNlYXJjaCA9IG5vcm1hbGl6ZSh0aGlzLnNlYXJjaFRleHQpO1xyXG5cclxuICAgIGlmIChzZWFyY2gpIHtcclxuICAgICAgdGhpcy5yb3dEYXRhID0gdGhpcy5hY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWwuam91cm5hbFZvdWNoZXJFbnRyaWVzLmZpbHRlcigoaXRlbSkgPT5cclxuICAgICAgICBPYmplY3QudmFsdWVzKGl0ZW0pLnNvbWUoKHZhbHVlKSA9PiBub3JtYWxpemUodmFsdWUpLmluY2x1ZGVzKHNlYXJjaCkpXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJvd0RhdGEgPSB0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbC5qb3VybmFsVm91Y2hlckVudHJpZXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFeHBvcnQob3B0aW9uOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24gPSBvcHRpb247XHJcbiAgICBzd2l0Y2ggKHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24pIHtcclxuICAgICAgY2FzZSAnZXhjZWwnOlxyXG4gICAgICAgIHRoaXMuZXhwb3J0VG9FeGNlbCgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdwZGYnOlxyXG4gICAgICAgIHRoaXMuZXhwb3J0VG9QZGYoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnY3N2JzpcclxuICAgICAgICB0aGlzLmV4cG9ydFRvQ3N2KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYWxlcnQoJ1BsZWFzZSBzZWxlY3QgYW4gZXhwb3J0IGZvcm1hdC4nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIGV4cG9ydFRvUGRmKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKCF0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbC5qb3VybmFsVm91Y2hlckVudHJpZXM/Lmxlbmd0aCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRpdGxlID0gYCR7dGhpcy5jb21wYW55TmFtZX0gLSBHZW5lcmFsIExlZGdlciBBY2NvdW50IERldGFpbHMgRW5xdWlyeSBSZXBvcnRgO1xyXG4gICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmV4cG9ydFNlcnZpY2UuZ2VuZXJhdGVSZXBvcnRNZXRhZGF0YShbXHJcbiAgICAgIFsnUmVwb3J0IFVzZXIgJiBUaW1lIDogJywgYCR7dGhpcy5yZXBvcnRVc2VyfUAke3RoaXMucmVwb3J0VGltZX1gXSxcclxuICAgIF0pO1xyXG5cclxuICAgIGNvbnN0IHsgaGVhZGVycywgcm93cyB9ID0gdGhpcy5leHBvcnRTZXJ2aWNlLnByZXBhcmVFeHBvcnRUYWJsZSh0aGlzLmFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbC5qb3VybmFsVm91Y2hlckVudHJpZXMsIHRoaXMuY29sdW1uRGVmcywge1xyXG4gICAgICBjdXJyZW5jeUZpZWxkczogWydsb2NhbENyZWRpdCcsICdmb3JleENyZWRpdCcsICdsb2NhbERlYml0JywgJ2ZvcmV4RGViaXQnXSxcclxuICAgIH0pO1xyXG5cclxuICAgIGF3YWl0IHRoaXMuZXhwb3J0U2VydmljZS5leHBvcnRUb1BkZlVuaXZlcnNhbCh0aXRsZSwgbWV0YWRhdGEsIHRoaXMuc2VhcmNoQ3JpdGVyaWEsIGhlYWRlcnMsIHJvd3MsICdBQ0MtR0wtRGV0YWlscy1FbnF1aXJ5LVJlcG9ydC5wZGYnKTtcclxuICB9XHJcblxyXG4gIGV4cG9ydFRvRXhjZWwoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcz8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSBgJHt0aGlzLmNvbXBhbnlOYW1lfSAtIEdlbmVyYWwgTGVkZ2VyIEFjY291bnQgRGV0YWlscyBFbnF1aXJ5IFJlcG9ydGA7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUgOiAnLCBgJHt0aGlzLnJlcG9ydFVzZXJ9QCR7dGhpcy5yZXBvcnRUaW1lfWBdLFxyXG4gICAgXSk7XHJcblxyXG4gICAgY29uc3QgeyBoZWFkZXJzLCByb3dzIH0gPSB0aGlzLmV4cG9ydFNlcnZpY2UucHJlcGFyZUV4cG9ydFRhYmxlKHRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcywgdGhpcy5jb2x1bW5EZWZzLCB7XHJcbiAgICAgIGN1cnJlbmN5RmllbGRzOiBbJ2xvY2FsQ3JlZGl0JywgJ2ZvcmV4Q3JlZGl0JywgJ2xvY2FsRGViaXQnLCAnZm9yZXhEZWJpdCddLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5leHBvcnRTZXJ2aWNlLmV4cG9ydFRvRXhjZWxVbml2ZXJzYWwodGl0bGUsIG1ldGFkYXRhLCB0aGlzLnNlYXJjaENyaXRlcmlhLCBoZWFkZXJzLCByb3dzLCAnQUNDLUdMLURldGFpbHMtRW5xdWlyeS1SZXBvcnQueGxzeCcpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0VG9Dc3YoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcz8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSBgJHt0aGlzLmNvbXBhbnlOYW1lfSAtIEdlbmVyYWwgTGVkZ2VyIEFjY291bnQgRGV0YWlscyBFbnF1aXJ5IFJlcG9ydGA7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUgOiAnLCBgJHt0aGlzLnJlcG9ydFVzZXJ9QCR7dGhpcy5yZXBvcnRUaW1lfWBdLFxyXG4gICAgXSk7XHJcblxyXG4gICAgY29uc3QgeyBoZWFkZXJzLCByb3dzIH0gPSB0aGlzLmV4cG9ydFNlcnZpY2UucHJlcGFyZUV4cG9ydFRhYmxlKHRoaXMuYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsLmpvdXJuYWxWb3VjaGVyRW50cmllcywgdGhpcy5jb2x1bW5EZWZzLCB7XHJcbiAgICAgIGN1cnJlbmN5RmllbGRzOiBbJ2xvY2FsQ3JlZGl0JywgJ2ZvcmV4Q3JlZGl0JywgJ2xvY2FsRGViaXQnLCAnZm9yZXhEZWJpdCddLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5leHBvcnRTZXJ2aWNlLmV4cG9ydFRvQ3N2VW5pdmVyc2FsKHRpdGxlLCBtZXRhZGF0YSwgdGhpcy5zZWFyY2hDcml0ZXJpYSwgaGVhZGVycywgcm93cywgJ0FDQy1HTC1EZXRhaWxzLUVucXVpcnktUmVwb3J0LmNzdicpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VhcmNoKGNyaXRlcmlhOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0ZVR5cGVGaWx0ZXIgPSBjcml0ZXJpYS5zZWxlY3RlZERhdGVUeXBlO1xyXG4gICAgdGhpcy5kYXRlID0gY3JpdGVyaWEuc2VsZWN0ZWREYXRlLnNwbGl0KCdUJylbMF07XHJcbiAgICB0aGlzLnNlYXJjaENyaXRlcmlhID0gW1xyXG4gICAgICBbJ0RhdGUgVHlwZTonLCBgJHt0aGlzLmRhdGVUeXBlRmlsdGVyID09PSAxID8gJ1ZhbHVlIERhdGUnIDogJ1Bvc3RpbmcgRGF0ZSd9YF0sXHJcbiAgICAgIFsnRGF0ZTonLCBmb3JtYXREYXRlKHRoaXMuZGF0ZSwgJ2RkL01NL3l5eXknLCAnZW4tVVMnKV0sXHJcbiAgICBdO1xyXG4gICAgdGhpcy5nZXRBY2NHTERldGFpbHNSZXBvcnQoKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUZvcm1WYWxpZChpc1ZhbGlkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9ybVZhbGlkID0gaXNWYWxpZDtcclxuICB9XHJcbn1cclxuIiwiPGxpYi1zZWFyY2gtZmlsdGVyIFtSZXBvcnROYW1lXT1cIlJlcG9ydE5hbWVcIiAoc2VhcmNoQ2xpY2tlZCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgKGZvcm1WYWxpZCk9XCJoYW5kbGVGb3JtVmFsaWQoJGV2ZW50KVwiPlxyXG48L2xpYi1zZWFyY2gtZmlsdGVyPlxyXG48YXBwLWxvYWRlciBjbGFzcz1cIlwiICpuZ0lmPVwibG9hZGluZ1N0YXRlID09IENvbXBvbmVudExvYWRpbmdTdGF0ZS5Mb2FkaW5nXCI+PC9hcHAtbG9hZGVyPlxyXG48ZGl2IGNsYXNzPVwibWFpbi1jb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwicmVwb3J0LWNvbnRhaW5lclwiXHJcbiAgICAqbmdJZj1cImFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbCAhPSB1bmRlZmluZWQgJiYgaXNGb3JtVmFsaWQgJiYgZGF0YVJlYWR5ICYmIGFjY0dsRGV0YWlsc0VucXVpcnlSZXBvcnRNb2RlbD8uam91cm5hbFZvdWNoZXJFbnRyaWVzPy5sZW5ndGghPTBcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtYWluLXJlcG9ydFwiICpuZ0lmPVwiYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsICE9IHVuZGVmaW5lZCAmJiBkYXRhUmVhZHlcIj5cclxuICAgICAgPGxpYi1tZXRhZGF0YSBbcmVwb3J0TmFtZV09XCJSZXBvcnROYW1lXCIgW3Nob3dtZXRhRGF0YU9uZV09XCJ0cnVlXCIgW3Nob3dtZXRhRGF0YVR3b109XCJ0cnVlXCJcclxuICAgICAgICBbbWV0YURhdGFPbmVdPVwibWV0YURhdGFPbmVcIiBbbWV0YURhdGFUd29dPVwibWV0YURhdGFUd29cIiAoZXhwb3J0RXZlbnQpPVwiaGFuZGxlRXhwb3J0KCRldmVudClcIlxyXG4gICAgICAgIChzZWFyY2hFdmVudCk9XCJvblNlYXJjaCgkZXZlbnQpXCI+PC9saWItbWV0YWRhdGE+XHJcbiAgICAgIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCIgKm5nSWY9XCJyb3dEYXRhICYmIHJvd0RhdGEubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgIDxsaWItcGFnZS1zaXplLXNlbGVjdG9yIFt0b3RhbEVudHJpZXNdPVwiYWNjR2xEZXRhaWxzRW5xdWlyeVJlcG9ydE1vZGVsPy5qb3VybmFsVm91Y2hlckVudHJpZXM/Lmxlbmd0aFwiXHJcbiAgICAgICAgICBbZGVmYXVsdFNpemVdPVwiJzE1J1wiIFtncmlkQXBpXT1cImdyaWRBcGlcIj5cclxuICAgICAgICAgID48L2xpYi1wYWdlLXNpemUtc2VsZWN0b3I+XHJcbiAgICAgICAgPGFnLWdyaWQtYW5ndWxhciBjbGFzcz1cImFnLXRoZW1lLWFscGluZSB0cmFuc2FjdGlvbi1ncmlkXCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtoZWlnaHQ6IDM3NXB4O1wiXHJcbiAgICAgICAgICBbY29sdW1uRGVmc109XCJjb2x1bW5EZWZzXCIgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiIFtyb3dEYXRhXT1cInJvd0RhdGFcIiBbcm93SGVpZ2h0XT1cIjIwXCJcclxuICAgICAgICAgIFtoZWFkZXJIZWlnaHRdPVwiMjJcIiBbcGFnaW5hdGlvbl09XCJ0cnVlXCIgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJwYWdlU2l6ZVwiIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtd2FybmluZyBtdC0zXCIgKm5nSWY9XCJhY2NHbERldGFpbHNFbnF1aXJ5UmVwb3J0TW9kZWw/LmpvdXJuYWxWb3VjaGVyRW50cmllcz8ubGVuZ3RoPT0wXCI+XHJcbiAgICBObyBEYXRhIGZvdW5kIG1hdGNoaW5nIHlvdXIgc2VhcmNoIGNyaXRlcmlhLlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|