@sachin9822/reports-lib 0.0.224 → 0.0.226

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.
Files changed (37) hide show
  1. package/esm2020/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.mjs +3 -3
  2. package/esm2020/lib/components/accounting-report/accounting-report.component.mjs +30 -24
  3. package/esm2020/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.mjs +1 -1
  4. package/esm2020/lib/components/branch-activity-send-report/branch-activity-send-report.component.mjs +8 -5
  5. package/esm2020/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.mjs +700 -0
  6. package/esm2020/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.mjs +6 -2
  7. package/esm2020/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.mjs +1 -1
  8. package/esm2020/lib/components/funding-report/funding-report.component.mjs +1 -1
  9. package/esm2020/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.mjs +4 -2
  10. package/esm2020/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.mjs +1 -1
  11. package/esm2020/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.mjs +6 -4
  12. package/esm2020/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.mjs +332 -0
  13. package/esm2020/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.mjs +1 -1
  14. package/esm2020/lib/models/branch-activity-report/branch-activity-send-report.mjs +1 -1
  15. package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.mjs +6 -0
  16. package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report.mjs +5 -0
  17. package/esm2020/lib/reports-lib.module.mjs +15 -5
  18. package/esm2020/lib/services/report.service.mjs +59 -1
  19. package/esm2020/lib/shared/export-generic.service.mjs +10 -1
  20. package/esm2020/lib/shared/search-filter/search-filter.component.mjs +329 -5
  21. package/esm2020/public-api.mjs +5 -1
  22. package/fesm2015/sachin9822-reports-lib.mjs +1627 -213
  23. package/fesm2015/sachin9822-reports-lib.mjs.map +1 -1
  24. package/fesm2020/sachin9822-reports-lib.mjs +1629 -215
  25. package/fesm2020/sachin9822-reports-lib.mjs.map +1 -1
  26. package/lib/components/branch-activity-send-report/branch-activity-send-report.component.d.ts +1 -0
  27. package/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.d.ts +78 -0
  28. package/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.d.ts +28 -0
  29. package/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.d.ts +69 -0
  30. package/lib/models/branch-activity-report/branch-activity-send-report.d.ts +4 -0
  31. package/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.d.ts +13 -0
  32. package/lib/models/transaction-monitoring-report/transaction-monitoring-report.d.ts +23 -0
  33. package/lib/reports-lib.module.d.ts +12 -10
  34. package/lib/services/report.service.d.ts +10 -0
  35. package/lib/shared/search-filter/search-filter.component.d.ts +6 -1
  36. package/package.json +1 -1
  37. package/public-api.d.ts +4 -0
@@ -184,7 +184,7 @@ export class CreditLimitStatusEnquiryReportComponent {
184
184
  }
185
185
  }
186
186
  CreditLimitStatusEnquiryReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CreditLimitStatusEnquiryReportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
187
- CreditLimitStatusEnquiryReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CreditLimitStatusEnquiryReportComponent, selector: "lib-credit-limit-status-enquiry-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n <ng-container *ngIf=\"!noDataFound else noDataTemplate\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n <ng-template #noDataTemplate>\r\n <div class=\"alert alert-warning mt-3\">\r\n No Data found matching your search criteria.\r\n </div>\r\n </ng-template>\r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i1.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: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i4.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i5.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i6.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName"], outputs: ["searchClicked", "formValid"] }] });
187
+ CreditLimitStatusEnquiryReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CreditLimitStatusEnquiryReportComponent, selector: "lib-credit-limit-status-enquiry-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n <ng-container *ngIf=\"!noDataFound else noDataTemplate\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n <ng-template #noDataTemplate>\r\n <div class=\"alert alert-warning mt-3\">\r\n No Data found matching your search criteria.\r\n </div>\r\n </ng-template>\r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i1.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: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i4.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i5.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i6.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName", "initialFilters"], outputs: ["searchClicked", "formValid"] }] });
188
188
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CreditLimitStatusEnquiryReportComponent, decorators: [{
189
189
  type: Component,
190
190
  args: [{ selector: 'lib-credit-limit-status-enquiry-report', template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n <ng-container *ngIf=\"!noDataFound else noDataTemplate\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n <ng-template #noDataTemplate>\r\n <div class=\"alert alert-warning mt-3\">\r\n No Data found matching your search criteria.\r\n </div>\r\n </ng-template>\r\n</section>", styles: [".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}\n"] }]
@@ -190,7 +190,7 @@ export class FundingReportComponent {
190
190
  }
191
191
  }
192
192
  FundingReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FundingReportComponent, deps: [{ token: i1.ReportService }, { token: i2.ExportService }], target: i0.ɵɵFactoryTarget.Component });
193
- FundingReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FundingReportComponent, selector: "lib-funding-report", ngImport: i0, template: "<lib-search-filter \r\n [ReportName]=\"ReportName\" \r\n (searchClicked)=\"handleSearch($event)\"\r\n (formValid)=\"handleFormValid($event)\"\r\n >\r\n</lib-search-filter>\r\n\r\n<app-loader *ngIf=\"loadingState === ComponentLoadingState.Loading\"></app-loader>\r\n\r\n<div *ngIf=\"errorMessage\" class=\"error alert alert-danger mt-3\">{{ errorMessage }}</div>\r\n\r\n<div class=\"alert alert-warning mt-3\" *ngIf=\"hasSearched && transactionData.length === 0 && !errorMessage\">\r\n No Data found matching your search criteria.\r\n</div>\r\n\r\n<section *ngIf=\"showReport && isFormValid && transactionData.length > 0\">\r\n\r\n <lib-metadata \r\n [reportName]=\"ReportName\" \r\n [showmetaDataOne]=\"true\" \r\n [showmetaDataTwo]=\"true\" \r\n [metaDataOne]=\"metaDataOne\"\r\n [metaDataTwo]=\"metaDataTwo\" \r\n (exportEvent)=\"handleExport($event)\" \r\n (searchEvent)=\"filter($event)\">\r\n </lib-metadata>\r\n\r\n <div style=\"position: relative;\" *ngIf=\"filteredData.length > 0\">\r\n\r\n <lib-page-size-selector \r\n [totalEntries]=\"filteredData.length\" \r\n [defaultSize]=\"'15'\" \r\n [gridApi]=\"gridApi\">\r\n </lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" \r\n [rowData]=\"filteredData\" \r\n [columnDefs]=\"columnDefs\"\r\n [defaultColDef]=\"defaultColDef\"\r\n [rowHeight]=\"22\"\r\n [pagination]=\"true\" \r\n [headerHeight]=\"35\" \r\n [paginationPageSize]=\"paginationPageSize\"\r\n (gridReady)=\"onGridReady($event)\" \r\n style=\"width: 100%; height: 375px;\">\r\n </ag-grid-angular>\r\n </div>\r\n \r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i3.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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i6.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i7.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i8.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName"], outputs: ["searchClicked", "formValid"] }] });
193
+ FundingReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FundingReportComponent, selector: "lib-funding-report", ngImport: i0, template: "<lib-search-filter \r\n [ReportName]=\"ReportName\" \r\n (searchClicked)=\"handleSearch($event)\"\r\n (formValid)=\"handleFormValid($event)\"\r\n >\r\n</lib-search-filter>\r\n\r\n<app-loader *ngIf=\"loadingState === ComponentLoadingState.Loading\"></app-loader>\r\n\r\n<div *ngIf=\"errorMessage\" class=\"error alert alert-danger mt-3\">{{ errorMessage }}</div>\r\n\r\n<div class=\"alert alert-warning mt-3\" *ngIf=\"hasSearched && transactionData.length === 0 && !errorMessage\">\r\n No Data found matching your search criteria.\r\n</div>\r\n\r\n<section *ngIf=\"showReport && isFormValid && transactionData.length > 0\">\r\n\r\n <lib-metadata \r\n [reportName]=\"ReportName\" \r\n [showmetaDataOne]=\"true\" \r\n [showmetaDataTwo]=\"true\" \r\n [metaDataOne]=\"metaDataOne\"\r\n [metaDataTwo]=\"metaDataTwo\" \r\n (exportEvent)=\"handleExport($event)\" \r\n (searchEvent)=\"filter($event)\">\r\n </lib-metadata>\r\n\r\n <div style=\"position: relative;\" *ngIf=\"filteredData.length > 0\">\r\n\r\n <lib-page-size-selector \r\n [totalEntries]=\"filteredData.length\" \r\n [defaultSize]=\"'15'\" \r\n [gridApi]=\"gridApi\">\r\n </lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" \r\n [rowData]=\"filteredData\" \r\n [columnDefs]=\"columnDefs\"\r\n [defaultColDef]=\"defaultColDef\"\r\n [rowHeight]=\"22\"\r\n [pagination]=\"true\" \r\n [headerHeight]=\"35\" \r\n [paginationPageSize]=\"paginationPageSize\"\r\n (gridReady)=\"onGridReady($event)\" \r\n style=\"width: 100%; height: 375px;\">\r\n </ag-grid-angular>\r\n </div>\r\n \r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i3.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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i6.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i7.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i8.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName", "initialFilters"], outputs: ["searchClicked", "formValid"] }] });
194
194
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FundingReportComponent, decorators: [{
195
195
  type: Component,
196
196
  args: [{ selector: 'lib-funding-report', template: "<lib-search-filter \r\n [ReportName]=\"ReportName\" \r\n (searchClicked)=\"handleSearch($event)\"\r\n (formValid)=\"handleFormValid($event)\"\r\n >\r\n</lib-search-filter>\r\n\r\n<app-loader *ngIf=\"loadingState === ComponentLoadingState.Loading\"></app-loader>\r\n\r\n<div *ngIf=\"errorMessage\" class=\"error alert alert-danger mt-3\">{{ errorMessage }}</div>\r\n\r\n<div class=\"alert alert-warning mt-3\" *ngIf=\"hasSearched && transactionData.length === 0 && !errorMessage\">\r\n No Data found matching your search criteria.\r\n</div>\r\n\r\n<section *ngIf=\"showReport && isFormValid && transactionData.length > 0\">\r\n\r\n <lib-metadata \r\n [reportName]=\"ReportName\" \r\n [showmetaDataOne]=\"true\" \r\n [showmetaDataTwo]=\"true\" \r\n [metaDataOne]=\"metaDataOne\"\r\n [metaDataTwo]=\"metaDataTwo\" \r\n (exportEvent)=\"handleExport($event)\" \r\n (searchEvent)=\"filter($event)\">\r\n </lib-metadata>\r\n\r\n <div style=\"position: relative;\" *ngIf=\"filteredData.length > 0\">\r\n\r\n <lib-page-size-selector \r\n [totalEntries]=\"filteredData.length\" \r\n [defaultSize]=\"'15'\" \r\n [gridApi]=\"gridApi\">\r\n </lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" \r\n [rowData]=\"filteredData\" \r\n [columnDefs]=\"columnDefs\"\r\n [defaultColDef]=\"defaultColDef\"\r\n [rowHeight]=\"22\"\r\n [pagination]=\"true\" \r\n [headerHeight]=\"35\" \r\n [paginationPageSize]=\"paginationPageSize\"\r\n (gridReady)=\"onGridReady($event)\" \r\n style=\"width: 100%; height: 375px;\">\r\n </ag-grid-angular>\r\n </div>\r\n \r\n</section>", styles: [".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}\n"] }]
@@ -39,6 +39,8 @@ export class RevenuePerTransactionReportComponent {
39
39
  { field: 'receiveCountry', headerName: 'Receive Country', flex: 1, headerClass: 'ag-header-cell', minWidth: 80, wrapText: true, autoHeight: true, tooltipField: 'receiveCountry' },
40
40
  { field: 'receiveAgentName', headerName: 'ReceiveClient Name', flex: 1, headerClass: 'ag-header-cell', minWidth: 150, wrapText: true, autoHeight: true, tooltipField: 'receiveAgentName' },
41
41
  { field: 'receiveAgentCode', headerName: 'ReceiveClient Code', flex: 1, headerClass: 'ag-header-cell', minWidth: 90, wrapText: true, autoHeight: true, tooltipField: 'receiveAgentCode' },
42
+ { headerName: 'Is Sender Corporate', field: 'isSenderCorporate', flex: 1, minWidth: 80 },
43
+ { headerName: 'Is Beneficiary Corporate', field: 'isBeneficiaryCorporate', flex: 1, minWidth: 80 },
42
44
  { field: 'payInCurrency', headerName: 'Send CcyCode', flex: 1, headerClass: 'ag-header-cell', minWidth: 80, wrapText: true, autoHeight: true, tooltipField: 'payInCurrency' },
43
45
  { field: 'payInAmount', headerName: 'Send Amount', flex: 1, headerClass: 'ag-header-cell', minWidth: 80, wrapText: true, autoHeight: true, cellClass: 'ag-right-aligned-cell compact-cell', tooltipField: 'payInAmount' },
44
46
  { field: 'transactionCommission', headerName: 'Service Fee', flex: 1, headerClass: 'ag-header-cell', minWidth: 80, wrapText: true, autoHeight: true, cellClass: 'ag-right-aligned-cell compact-cell', tooltipField: 'transactionCommission' },
@@ -236,9 +238,9 @@ export class RevenuePerTransactionReportComponent {
236
238
  }
237
239
  }
238
240
  RevenuePerTransactionReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RevenuePerTransactionReportComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
239
- RevenuePerTransactionReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RevenuePerTransactionReportComponent, selector: "lib-revenue-per-transaction-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n\r\n <ng-container *ngIf=\"!noDataFound\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"noDataFound\">\r\n No Data found matching your search criteria.\r\n </div>\r\n\r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i1.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: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i4.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i5.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i6.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName"], outputs: ["searchClicked", "formValid"] }] });
241
+ RevenuePerTransactionReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RevenuePerTransactionReportComponent, selector: "lib-revenue-per-transaction-report", ngImport: i0, template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n\r\n <ng-container *ngIf=\"!noDataFound\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"noDataFound\">\r\n No Data found matching your search criteria.\r\n </div>\r\n\r\n</section>", styles: [".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}\n"], dependencies: [{ kind: "component", type: i1.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: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PageSizeSelectorComponent, selector: "lib-page-size-selector", inputs: ["pageSizeArray", "defaultSize", "totalEntries", "gridApi"] }, { kind: "component", type: i4.MetadataComponent, selector: "lib-metadata", inputs: ["metaDataOne", "metaDataTwo", "showmetaDataOne", "showmetaDataTwo", "reportName"], outputs: ["searchEvent", "exportEvent"] }, { kind: "component", type: i5.LoaderComponent, selector: "app-loader" }, { kind: "component", type: i6.SearchFilterComponent, selector: "lib-search-filter", inputs: ["ReportName", "initialFilters"], outputs: ["searchClicked", "formValid"] }] });
240
242
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RevenuePerTransactionReportComponent, decorators: [{
241
243
  type: Component,
242
244
  args: [{ selector: 'lib-revenue-per-transaction-report', template: "<lib-search-filter [ReportName]=\"ReportName\" (searchClicked)=\"handleSearch($event)\" (formValid)=\"handleFormValid($event)\">\r\n</lib-search-filter>\r\n<app-loader class=\"\" *ngIf=\"loadingState == ComponentLoadingState.Loading\"></app-loader>\r\n<section *ngIf=\"showReport && isFormValid\" class=\"my-2 mx-1\">\r\n\r\n <ng-container *ngIf=\"!noDataFound\">\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=\"filteredData?.length>0\">\r\n <lib-page-size-selector [totalEntries]=\"data?.length\" [defaultSize]=\"'15'\" [gridApi]=\"gridApi\">\r\n ></lib-page-size-selector>\r\n\r\n <ag-grid-angular class=\"ag-theme-alpine transaction-grid\" style=\"width: 100%;height: 407px;\"\r\n [columnDefs]=\"columnDefs\" [defaultColDef]=\"defaultColDef\" [rowData]=\"filteredData\" [rowHeight]=\"20\"\r\n [headerHeight]=\"22\" [pagination]=\"true\" [paginationPageSize]=\"pageSize\"\r\n (gridReady)=\"onGridReady($event)\">\r\n </ag-grid-angular>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"alert alert-warning mt-3\" *ngIf=\"noDataFound\">\r\n No Data found matching your search criteria.\r\n </div>\r\n\r\n</section>", styles: [".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}\n"] }]
243
245
  }], ctorParameters: function () { return []; } });
244
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQvcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQvcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRTFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQU83QyxNQUFNLE9BQU8sb0NBQW9DO0lBb0UvQztRQW5FQSxTQUFJLEdBQXlDLEVBQUUsQ0FBQztRQUNoRCxpQkFBWSxHQUF5QyxFQUFFLENBQUM7UUFDeEQsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyx5QkFBeUIsQ0FBQTtRQUN0QyxrQkFBYSxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBa0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBTXJELDBCQUFxQixHQUFHLHNCQUFzQixDQUFD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RUFBRSxFQUFFO2dCQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO2dCQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDMUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxFQUFFLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3ZELENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDYixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLHNCQUFzQixDQUFDLFFBQVEsQ0FBQztZQUN0RCxDQUFDO1lBQ0QsUUFBUSxFQUFFLEdBQUcsRUFBRTtnQkFDYixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxzQkFBc0IsQ0FBQyxRQUFRLENBQUM7WUFDdEQsQ0FBQztTQUNGLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBZ0I7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7SUFDN0IsQ0FBQzs7aUlBM1BVLG9DQUFvQztxSEFBcEMsb0NBQW9DLDBFQ2JqRCwyL0NBeUJVOzJGRFpHLG9DQUFvQztrQkFMaEQsU0FBUzsrQkFDRSxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJldmVudWVQZXJUcmFuc2FjdGlvblJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0L3JldmVudWUtcGVyLXRyYW5zYWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgUmVwb3J0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3JlcG9ydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXhwb3J0U2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9leHBvcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudExvYWRpbmdTdGF0ZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tcG9uZW50LWxvYWRpbmctc3RhdGVzJztcclxuaW1wb3J0IHsgQ29sRGVmLCBDb2x1bW5BcGksIEdyaWRBcGksIEdyaWRSZWFkeUV2ZW50IH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xyXG5pbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXJldmVudWUtcGVyLXRyYW5zYWN0aW9uLXJlcG9ydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JldmVudWUtcGVyLXRyYW5zYWN0aW9uLXJlcG9ydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFJldmVudWVQZXJUcmFuc2FjdGlvblJlcG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZGF0YTogUmV2ZW51ZVBlclRyYW5zYWN0aW9uUmVzcG9uc2VNb2RlbFtdID0gW107XHJcbiAgZmlsdGVyZWREYXRhOiBSZXZlbnVlUGVyVHJhbnNhY3Rpb25SZXNwb25zZU1vZGVsW10gPSBbXTtcclxuICB1c2VyOiBzdHJpbmcgPSBcIlwiO1xyXG4gIHN5c1VzZXJJZDogc3RyaW5nID0gXCJcIjtcclxuICBSZXBvcnROYW1lID0gXCJSZXZlbnVlIFBlciBUcmFuc2FjdGlvblwiXHJcbiAgcmVwb3J0U2VydmljZTogUmVwb3J0U2VydmljZSA9IGluamVjdChSZXBvcnRTZXJ2aWNlKTtcclxuICBleHBvcnRTZXJ2aWNlOiBFeHBvcnRTZXJ2aWNlID0gaW5qZWN0KEV4cG9ydFNlcnZpY2UpO1xyXG4gIHJlcG9ydERhdGU6IHN0cmluZztcclxuICBmcm9tRGF0ZTogc3RyaW5nO1xyXG4gIHRvRGF0ZTogc3RyaW5nO1xyXG4gIG1ldGFEYXRhT25lOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xyXG4gIG1ldGFEYXRhVHdvOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xyXG4gIENvbXBvbmVudExvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXM7XHJcbiAgbG9hZGluZ1N0YXRlOiBDb21wb25lbnRMb2FkaW5nU3RhdGVzID0gQ29tcG9uZW50TG9hZGluZ1N0YXRlcy5Db21wbGV0ZTtcclxuICBzZWxlY3RlZEV4cG9ydE9wdGlvbjogc3RyaW5nO1xyXG4gIHNlYXJjaFRleHQ6IHN0cmluZyA9ICcnO1xyXG4gIHBhZ2VTaXplOiBudW1iZXIgPSAxNTtcclxuICBzZWFyY2hDcml0ZXJpYTogW3N0cmluZywgc3RyaW5nXVtdO1xyXG5cclxuICBncmlkQXBpOiBHcmlkQXBpO1xyXG4gIGdyaWRDb2x1bW5BcGk6IENvbHVtbkFwaTtcclxuICBzaG93UmVwb3J0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgbm9EYXRhRm91bmQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc0Zvcm1WYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb2x1bW5EZWZzOiBDb2xEZWY8UmV2ZW51ZVBlclRyYW5zYWN0aW9uUmVzcG9uc2VNb2RlbD5bXSA9IFtcclxuICAgIHsgZmllbGQ6ICdidXNpbmVzc0RhdGUnLCBoZWFkZXJOYW1lOiAnQnVzaW5lc3MgRGF0ZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHRvb2x0aXBGaWVsZDogJ2J1c2luZXNzRGF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlJbkRhdGUnLCBoZWFkZXJOYW1lOiAnU2VuZCBEYXRlJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiAxMDAsIHRvb2x0aXBGaWVsZDogJ3BheUluRGF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlPdXREYXRlJywgaGVhZGVyTmFtZTogJ1JlY2VpdmUgRGF0ZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogMTAwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncGF5T3V0RGF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICd0cmFuc2FjdGlvbk51bWJlcicsIGhlYWRlck5hbWU6ICdUcmFuc2FjdGlvbiBOdW1iZXInLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAndHJhbnNhY3Rpb25OdW1iZXInIH0sXHJcbiAgICB7IGZpZWxkOiAncHJvZHVjdENvZGUnLCBoZWFkZXJOYW1lOiAnUHJvZHVjdCcsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdwcm9kdWN0Q29kZScgfSxcclxuICAgIHsgZmllbGQ6ICdzZW5kQ291bnRyeScsIGhlYWRlck5hbWU6ICdTZW5kIENvdW50cnknLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDEyMCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3NlbmRDb3VudHJ5JyB9LFxyXG4gICAgeyBmaWVsZDogJ3NlbmRBZ2VudE5hbWUnLCBoZWFkZXJOYW1lOiAnU2VuZENsaWVudCBOYW1lJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiAxMjAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdzZW5kQWdlbnROYW1lJyB9LFxyXG4gICAgeyBmaWVsZDogJ3NlbmRBZ2VudENvZGUnLCBoZWFkZXJOYW1lOiAnU2VuZENsaWVudCBDb2RlJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3NlbmRBZ2VudENvZGUnIH0sXHJcbiAgICB7IGZpZWxkOiAnc2VuZEFnZW50QnJhbmNoQ29kZScsIGhlYWRlck5hbWU6ICdTZW5kQ2xpZW50IEJyYW5jaENvZGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAnc2VuZEFnZW50QnJhbmNoQ29kZScgfSxcclxuICAgIHsgZmllbGQ6ICdyZWNlaXZlQ291bnRyeScsIGhlYWRlck5hbWU6ICdSZWNlaXZlIENvdW50cnknLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncmVjZWl2ZUNvdW50cnknIH0sXHJcbiAgICB7IGZpZWxkOiAncmVjZWl2ZUFnZW50TmFtZScsIGhlYWRlck5hbWU6ICdSZWNlaXZlQ2xpZW50IE5hbWUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDE1MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3JlY2VpdmVBZ2VudE5hbWUnIH0sXHJcbiAgICB7IGZpZWxkOiAncmVjZWl2ZUFnZW50Q29kZScsIGhlYWRlck5hbWU6ICdSZWNlaXZlQ2xpZW50IENvZGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDkwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncmVjZWl2ZUFnZW50Q29kZScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlJbkN1cnJlbmN5JywgaGVhZGVyTmFtZTogJ1NlbmQgQ2N5Q29kZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdwYXlJbkN1cnJlbmN5JyB9LFxyXG4gICAgeyBmaWVsZDogJ3BheUluQW1vdW50JywgaGVhZGVyTmFtZTogJ1NlbmQgQW1vdW50JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3BheUluQW1vdW50JyB9LFxyXG4gICAgeyBmaWVsZDogJ3RyYW5zYWN0aW9uQ29tbWlzc2lvbicsIGhlYWRlck5hbWU6ICdTZXJ2aWNlIEZlZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICd0cmFuc2FjdGlvbkNvbW1pc3Npb24nIH0sXHJcbiAgICB7IGZpZWxkOiAndXNkUmF0ZScsIGhlYWRlck5hbWU6ICdVU0QgUmF0ZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCB3cmFwVGV4dDogdHJ1ZSwgbWluV2lkdGg6IDgwLCBhdXRvSGVpZ2h0OiB0cnVlLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAndXNkUmF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICdlelJlbWl0U2VsbE1hcmdpbicsIGhlYWRlck5hbWU6ICdYTSBTZWxsTWFyZ2luJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICdlelJlbWl0U2VsbE1hcmdpbicgfSxcclxuICAgIHsgZmllbGQ6ICdlelJlbWl0U2VsbFJhdGUnLCBoZWFkZXJOYW1lOiAnWE0gU2VsbFJhdGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ2V6UmVtaXRTZWxsUmF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICdiYW5rU2VsbFJhdGUnLCBoZWFkZXJOYW1lOiAnQmFuayBTZWxsUmF0ZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAnYmFua1NlbGxSYXRlJyB9LFxyXG4gICAgeyBmaWVsZDogJ3BheU91dEN1cnJlbmN5JywgaGVhZGVyTmFtZTogJ1JlY2VpdmUgQ2N5Q29kZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdwYXlPdXRDdXJyZW5jeScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlPdXRBbW91bnQnLCBoZWFkZXJOYW1lOiAnUmVjZWl2ZSBBbW91bnQnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAncGF5T3V0QW1vdW50JyB9LFxyXG4gICAgeyBmaWVsZDogJ2JlbmVEZWR1Y3RBbW91bnQnLCBoZWFkZXJOYW1lOiAnQmVuZURlZHVjdCBBbW91bnQnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAnYmVuZURlZHVjdEFtb3VudCcgfSxcclxuICAgIHsgZmllbGQ6ICd1c2RSYXRlQXBwbGllZFBheW91dCcsIGhlYWRlck5hbWU6ICdVU0RSYXRlIEBQYXlvdXQnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3VzZFJhdGVBcHBsaWVkUGF5b3V0JyB9LFxyXG4gICAgeyBmaWVsZDogJ3hNc0NvbW1pc3Npb25TaGFyZScsIGhlYWRlck5hbWU6IFwiWE0ncyBTZXJ2aWNlIEZlZSBTaGFyZVwiLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAneG1zQ29tbWlzc2lvblNoYXJlJyB9LFxyXG4gICAgeyBmaWVsZDogJ3htRXhjaGFuZ2VWYXJpYXRpb24nLCBoZWFkZXJOYW1lOiAnWE0gRXhjaGFuZ2UgVmFyaWF0aW9uIChHYWluL0xvc3MpJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3htRXhjaGFuZ2VWYXJpYXRpb24nIH0sXHJcbiAgICB7IGZpZWxkOiAneE1zQmVuZURlZHVjdFNoYXJlJywgaGVhZGVyTmFtZTogXCJYTSdzIEJlbmVEZWR1Y3QgU2hhcmVcIiwgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3htc0JlbmVEZWR1Y3RTaGFyZScgfSxcclxuICAgIHsgZmllbGQ6ICdyZXZlbnVlUGVyVHJhbnNhY3Rpb24nLCBoZWFkZXJOYW1lOiAnUmV2ZW51ZSBQZXIgVHJhbnNhY3Rpb24nLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAncmV2ZW51ZVBlclRyYW5zYWN0aW9uJyB9LFxyXG4gICAgeyBmaWVsZDogJ3RvdGFsU2V0dGxlQW1vdW50JywgaGVhZGVyTmFtZTogJ1RvdGFsIFNldHRsZW1lbnQnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAndG90YWxTZXR0bGVBbW91bnQnIH0sXHJcbiAgICB7IGZpZWxkOiAndHJhbnNhY3Rpb25TdGF0dXMnLCBoZWFkZXJOYW1lOiAnVHJhbnNhY3Rpb24gU3RhdHVzJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3RyYW5zYWN0aW9uU3RhdHVzJyB9LFxyXG4gIF1cclxuXHJcbiAgZGVmYXVsdENvbERlZiA9IHtcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgZmlsdGVyOiB0cnVlLFxyXG4gICAgcmVzaXphYmxlOiB0cnVlLFxyXG4gICAgbWlud2lkdGg6IDQwLFxyXG4gICAgd3JhcEhlYWRlclRleHQ6IHRydWUsXHJcbiAgICBhdXRvSGVhZGVySGVpZ2h0OiB0cnVlLFxyXG4gICAgc3VwcHJlc3NTaXplVG9GaXQ6IGZhbHNlLFxyXG4gICAgd3JhcFRleHQ6IHRydWVcclxuICB9O1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ2Zvc3NpbHVzZXJuYW1lJykpIHtcclxuICAgICAgdGhpcy5zeXNVc2VySWQgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdmb3NzaWx1c2VybmFtZScpXHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zeXNVc2VySWQgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdlenJlbWl0dXNlcm5hbWUnKTtcclxuICAgIH1cclxuICAgIHRoaXMuc3lzVXNlcklkID0gdGhpcy5zeXNVc2VySWQucmVwbGFjZSgvXltcIiddKC4qKVtcIiddJC8sICckMScpO1xyXG4gIH1cclxuXHJcbiAgb25HcmlkUmVhZHkocGFyYW1zOiBHcmlkUmVhZHlFdmVudCkge1xyXG4gICAgdGhpcy5ncmlkQXBpID0gcGFyYW1zLmFwaTtcclxuICAgIHRoaXMuZ3JpZENvbHVtbkFwaSA9IHBhcmFtcy5jb2x1bW5BcGk7XHJcbiAgfVxyXG5cclxuICAvLyBDdXJyZW5jeSBGb3JtYXR0ZXJcclxuICBmb3JtYXRBbW91bnQocGFyYW1zOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKHBhcmFtcy52YWx1ZSA9PSBudWxsKSByZXR1cm4gJzAuMDAwJztcclxuICAgIGNvbnN0IG51bSA9IE51bWJlcihwYXJhbXMudmFsdWUpO1xyXG4gICAgcmV0dXJuIG51bS50b0ZpeGVkKDMpO1xyXG4gIH1cclxuXHJcbiAgZm9ybWF0UmF0ZShwYXJhbXM6IGFueSk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtcz8udmFsdWU7XHJcbiAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gJycpIHtcclxuICAgICAgY29uc3QgbnVtID0gTnVtYmVyKHZhbHVlKTtcclxuICAgICAgLy8gcmV0dXJuIChNYXRoLnRydW5jKG51bSAqIDEwMDAwMDAwMCkgLyAxMDAwMDAwMDApLnRvRml4ZWQoOCk7XHJcbiAgICAgIHJldHVybiBwYXJzZUZsb2F0KHZhbHVlKS50b0ZpeGVkKDgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgb25TZWFyY2godGV4dDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB0ZXh0O1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoVGV4dCA9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlYXJjaFRleHQgPT09IFwiXCIpIHtcclxuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZGF0YSkpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGEpKTtcclxuICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZGF0YS5maWx0ZXIoKHJvdykgPT5cclxuICAgICAgT2JqZWN0LnZhbHVlcyhyb3cpLnNvbWUodmFsID0+IFN0cmluZyh2YWwpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5zZWFyY2hUZXh0Py50b0xvd2VyQ2FzZSgpKSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIGhhbmRsZUV4cG9ydChvcHRpb246IHN0cmluZykge1xyXG4gICAgdGhpcy5zZWxlY3RlZEV4cG9ydE9wdGlvbiA9IG9wdGlvbjtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkRXhwb3J0T3B0aW9uID09PSAncGRmJykge1xyXG4gICAgICB0aGlzLmV4cG9ydFRvUERGKCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24gPT09ICdleGNlbCcpIHtcclxuICAgICAgdGhpcy5leHBvcnRUb0V4Y2VsKCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24gPT09ICdjc3YnKSB7XHJcbiAgICAgIHRoaXMuZXhwb3J0VG9DU1YoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGFsZXJ0KCdQbGVhc2Ugc2VsZWN0IGEgdmFsaWQgZXhwb3J0IGZvcm1hdC4nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4cG9ydFRvRXhjZWwoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGF0YT8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLlJlcG9ydE5hbWU7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgIFsnUmVwb3J0IFBlcmlvZCAnLCB0aGlzLmZyb21EYXRlICsgXCIgLSBcIiArIHRoaXMudG9EYXRlXSxcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUnLCB0aGlzLnVzZXI/dGhpcy51c2VyK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlOicnK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlXSxcclxuICAgIF0pO1xyXG4gICAgLy8gLS0tIHNlYXJjaCBjcml0ZXJpYSAtLS1cclxuICAgIGNvbnN0IHNlYXJjaENyaXRlcmlhOiBbc3RyaW5nLCBzdHJpbmddW10gPSB0aGlzLnNlYXJjaENyaXRlcmlhO1xyXG5cclxuICAgIGNvbnN0IHsgaGVhZGVycywgcm93cyB9ID0gdGhpcy5leHBvcnRTZXJ2aWNlLnByZXBhcmVFeHBvcnRUYWJsZSh0aGlzLmRhdGEsIHRoaXMuY29sdW1uRGVmcywge1xyXG4gICAgICBjdXJyZW5jeUZpZWxkczogWydwYXlJbkFtb3VudCcsICdwYXlPdXRBbW91bnQnLFxyXG4gICAgICAgICd0cmFuc2FjdGlvbkNvbW1pc3Npb24nLCAnYmVuZURlZHVjdEFtb3VudCcsICd4TXNDb21taXNzaW9uU2hhcmUnLCAneG1FeGNoYW5nZVZhcmlhdGlvbicsXHJcbiAgICAgICAgJ3hNc0JlbmVEZWR1Y3RTaGFyZScsICdyZXZlbnVlUGVyVHJhbnNhY3Rpb24nLCAndG90YWxTZXR0bGVBbW91bnQnXHJcbiAgICAgIF0sXHJcbiAgICAgIHJhdGVGaWVsZHM6IFsndXNkUmF0ZScsICdlelJlbWl0U2VsbE1hcmdpbicsICdlelJlbWl0U2VsbFJhdGUnLCAnYmFua1NlbGxSYXRlJywgJ3VzZFJhdGVBcHBsaWVkUGF5b3V0JyxdXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmV4cG9ydFNlcnZpY2UuZXhwb3J0VG9FeGNlbFVuaXZlcnNhbCh0aXRsZSwgbWV0YWRhdGEsIHNlYXJjaENyaXRlcmlhLCBoZWFkZXJzLCByb3dzLCAnUmV2ZW51ZV9QZXJfVHJhbnNhY3Rpb24ueGxzeCcpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0VG9DU1YoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGF0YT8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLlJlcG9ydE5hbWU7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgIFsnUmVwb3J0IFBlcmlvZCAnLCB0aGlzLmZyb21EYXRlICsgXCIgLSBcIiArIHRoaXMudG9EYXRlXSxcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUnLCB0aGlzLnVzZXI/dGhpcy51c2VyK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlOicnK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlXSxcclxuICAgIF0pO1xyXG4gICAgLy8gLS0tIHNlYXJjaCBjcml0ZXJpYSAtLS1cclxuICAgIGNvbnN0IHNlYXJjaENyaXRlcmlhOiBbc3RyaW5nLCBzdHJpbmddW10gPSB0aGlzLnNlYXJjaENyaXRlcmlhO1xyXG5cclxuICAgIGNvbnN0IHsgaGVhZGVycywgcm93cyB9ID0gdGhpcy5leHBvcnRTZXJ2aWNlLnByZXBhcmVFeHBvcnRUYWJsZSh0aGlzLmRhdGEsIHRoaXMuY29sdW1uRGVmcywge1xyXG4gICAgICBjdXJyZW5jeUZpZWxkczogWydwYXlJbkFtb3VudCcsICdwYXlPdXRBbW91bnQnLFxyXG4gICAgICAgICd0cmFuc2FjdGlvbkNvbW1pc3Npb24nLCAnYmVuZURlZHVjdEFtb3VudCcsICd4TXNDb21taXNzaW9uU2hhcmUnLCAneG1FeGNoYW5nZVZhcmlhdGlvbicsXHJcbiAgICAgICAgJ3hNc0JlbmVEZWR1Y3RTaGFyZScsICdyZXZlbnVlUGVyVHJhbnNhY3Rpb24nLCAndG90YWxTZXR0bGVBbW91bnQnXHJcbiAgICAgIF0sXHJcbiAgICAgIHJhdGVGaWVsZHM6IFsndXNkUmF0ZScsICdlelJlbWl0U2VsbE1hcmdpbicsICdlelJlbWl0U2VsbFJhdGUnLCAnYmFua1NlbGxSYXRlJywgJ3VzZFJhdGVBcHBsaWVkUGF5b3V0JyxdXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmV4cG9ydFNlcnZpY2UuZXhwb3J0VG9Dc3ZVbml2ZXJzYWwodGl0bGUsIG1ldGFkYXRhLCBzZWFyY2hDcml0ZXJpYSwgaGVhZGVycywgcm93cywgJ1JldmVudWVfUGVyX1RyYW5zYWN0aW9uLmNzdicpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0VG9QREYoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGF0YT8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLlJlcG9ydE5hbWU7XHJcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuZXhwb3J0U2VydmljZS5nZW5lcmF0ZVJlcG9ydE1ldGFkYXRhKFtcclxuICAgICAgWydSZXBvcnQgUGVyaW9kICcsIHRoaXMuZnJvbURhdGUgKyBcIiAtIFwiICsgdGhpcy50b0RhdGVdLFxyXG4gICAgICBbJ1JlcG9ydCBVc2VyICYgVGltZScsIHRoaXMudXNlcj90aGlzLnVzZXIrXCIgQCBcIit0aGlzLnJlcG9ydERhdGU6JycrXCIgQCBcIit0aGlzLnJlcG9ydERhdGVdLFxyXG4gICAgXSk7XHJcbiAgICAvLyAtLS0gc2VhcmNoIGNyaXRlcmlhIC0tLVxyXG4gICAgY29uc3Qgc2VhcmNoQ3JpdGVyaWE6IFtzdHJpbmcsIHN0cmluZ11bXSA9IHRoaXMuc2VhcmNoQ3JpdGVyaWE7XHJcblxyXG4gICAgY29uc3QgeyBoZWFkZXJzLCByb3dzIH0gPSB0aGlzLmV4cG9ydFNlcnZpY2UucHJlcGFyZUV4cG9ydFRhYmxlKHRoaXMuZGF0YSwgdGhpcy5jb2x1bW5EZWZzLCB7XHJcbiAgICAgIGN1cnJlbmN5RmllbGRzOiBbJ3BheUluQW1vdW50JywgJ3BheU91dEFtb3VudCcsXHJcbiAgICAgICAgJ3RyYW5zYWN0aW9uQ29tbWlzc2lvbicsICdiZW5lRGVkdWN0QW1vdW50JywgJ3hNc0NvbW1pc3Npb25TaGFyZScsICd4bUV4Y2hhbmdlVmFyaWF0aW9uJyxcclxuICAgICAgICAneE1zQmVuZURlZHVjdFNoYXJlJywgJ3JldmVudWVQZXJUcmFuc2FjdGlvbicsICd0b3RhbFNldHRsZUFtb3VudCdcclxuICAgICAgXSxcclxuICAgICAgcmF0ZUZpZWxkczogWyd1c2RSYXRlJywgJ2V6UmVtaXRTZWxsTWFyZ2luJywgJ2V6UmVtaXRTZWxsUmF0ZScsICdiYW5rU2VsbFJhdGUnLCAndXNkUmF0ZUFwcGxpZWRQYXlvdXQnLF1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZXhwb3J0U2VydmljZS5leHBvcnRUb1BkZlVuaXZlcnNhbCh0aXRsZSwgbWV0YWRhdGEsIHNlYXJjaENyaXRlcmlhLCBoZWFkZXJzLCByb3dzLCAnUmV2ZW51ZV9QZXJfVHJhbnNhY3Rpb24ucGRmJylcclxuICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdQREYgZXhwb3J0IGNvbXBsZXRlZC4nKTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKGVyciA9PiB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignUERGIGV4cG9ydCBmYWlsZWQ6JywgZXJyKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVTZWFyY2goY3JpdGVyaWE6IGFueSkge1xyXG4gICAgdGhpcy5zZWFyY2hDcml0ZXJpYSA9IGNyaXRlcmlhLnNlYXJjaENyaXRlcmlhO1xyXG4gICAgdGhpcy5yZXBvcnREYXRlID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xyXG4gICAgdGhpcy5yZXBvcnREYXRlID0gZm9ybWF0RGF0ZSh0aGlzLnJlcG9ydERhdGUsICdkZC9NTS95eXl5IGhoOm1tIGEnLCAnZW4tVVMnKTtcclxuICAgIGNvbnN0IG1vZGFsID0gY3JpdGVyaWEubW9kYWw7XHJcbiAgICB0aGlzLnVzZXIgPSB0aGlzLnN5c1VzZXJJZDtcclxuICAgIHRoaXMuZnJvbURhdGUgPSBmb3JtYXREYXRlKG1vZGFsLmZyb21EYXRlLCAnZGQvTU0veXl5eSBoaDptbSBhJywgJ2VuLVVTJykuc2xpY2UoMCwxMCk7XHJcbiAgICB0aGlzLnRvRGF0ZSA9IGZvcm1hdERhdGUobW9kYWwudG9EYXRlLCAnZGQvTU0veXl5eSBoaDptbSBhJywgJ2VuLVVTJykuc2xpY2UoMCwxMCk7XHJcbiAgICBjb25zb2xlLmxvZyhtb2RhbCk7XHJcbiAgICAvLyBDb2RlIEZvciBNZXRhIERhdGFcclxuICAgIHRoaXMubWV0YURhdGFPbmUgPSB7XHJcbiAgICAgICdSZXBvcnQgUGVyaW9kJzogdGhpcy5mcm9tRGF0ZSArIFwiIC0gXCIgKyB0aGlzLnRvRGF0ZSxcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm1ldGFEYXRhVHdvID0ge1xyXG4gICAgICAnUmVwb3J0IFVzZXIgJiBUaW1lJzogdGhpcy51c2VyK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlLFxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHNlYXJjaERhdGEgPSB7XHJcbiAgICAgIFwiU3RhcnREYXRlXCI6IG1vZGFsLmZyb21EYXRlLFxyXG4gICAgICBcIkVuZERhdGVcIjogbW9kYWwudG9EYXRlLFxyXG4gICAgICBcIlNlbmRDb3VudHJ5Q29kZVwiOiBtb2RhbC5zZW5kQ291bnRyeSxcclxuICAgICAgXCJSZWN2Q291bnRyeUNvZGVcIjogbW9kYWwucmVjZWl2ZUNvdW50cnksXHJcbiAgICAgIFwic2VuZEJ1c2luZXNzUGFydG5lcklkXCI6IG1vZGFsLnNlbmRCdXNpbmVzc1BhcnRuZXIsXHJcbiAgICAgIFwiUmVjdkJ1c2luZXNzUGFydGVucklkXCI6IG1vZGFsLnJlY3ZCdXNpbmVzc1BhcnRuZXIsXHJcbiAgICAgIFwiVHJhbnNhY3Rpb25TdGF0dXNcIjogbW9kYWwudHJhbnNhY3Rpb25TdGF0dXMuam9pbihcIixcIilcclxuICAgIH1cclxuICAgIHRoaXMubG9hZGluZ1N0YXRlID0gQ29tcG9uZW50TG9hZGluZ1N0YXRlcy5Mb2FkaW5nO1xyXG4gICAgdGhpcy5yZXBvcnRTZXJ2aWNlLmdldFJldmVudWVQZXJUcmFuc2FjdGlvblJlcG9ydChzZWFyY2hEYXRhKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcclxuICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGEpKTtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMuZGF0YSk7XHJcbiAgICAgICAgICB0aGlzLm5vRGF0YUZvdW5kID0gZGF0YT8ubGVuZ3RoID09PSAwID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuQ29tcGxldGU7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zaG93UmVwb3J0ID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMubG9hZGluZ1N0YXRlID0gQ29tcG9uZW50TG9hZGluZ1N0YXRlcy5Db21wbGV0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBoYW5kbGVGb3JtVmFsaWQoaXNWYWxpZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5pc0Zvcm1WYWxpZCA9IGlzVmFsaWQ7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bGliLXNlYXJjaC1maWx0ZXIgW1JlcG9ydE5hbWVdPVwiUmVwb3J0TmFtZVwiIChzZWFyY2hDbGlja2VkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCIgKGZvcm1WYWxpZCk9XCJoYW5kbGVGb3JtVmFsaWQoJGV2ZW50KVwiPlxyXG48L2xpYi1zZWFyY2gtZmlsdGVyPlxyXG48YXBwLWxvYWRlciBjbGFzcz1cIlwiICpuZ0lmPVwibG9hZGluZ1N0YXRlID09IENvbXBvbmVudExvYWRpbmdTdGF0ZS5Mb2FkaW5nXCI+PC9hcHAtbG9hZGVyPlxyXG48c2VjdGlvbiAqbmdJZj1cInNob3dSZXBvcnQgJiYgaXNGb3JtVmFsaWRcIiBjbGFzcz1cIm15LTIgbXgtMVwiPlxyXG5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbm9EYXRhRm91bmRcIj5cclxuICAgICAgICA8bGliLW1ldGFkYXRhIFtyZXBvcnROYW1lXT1cIlJlcG9ydE5hbWVcIiBbc2hvd21ldGFEYXRhT25lXT1cInRydWVcIiBbc2hvd21ldGFEYXRhVHdvXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbbWV0YURhdGFPbmVdPVwibWV0YURhdGFPbmVcIiBbbWV0YURhdGFUd29dPVwibWV0YURhdGFUd29cIiAoZXhwb3J0RXZlbnQpPVwiaGFuZGxlRXhwb3J0KCRldmVudClcIlxyXG4gICAgICAgICAgICAoc2VhcmNoRXZlbnQpPVwib25TZWFyY2goJGV2ZW50KVwiPjwvbGliLW1ldGFkYXRhPlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCIgKm5nSWY9XCJmaWx0ZXJlZERhdGE/Lmxlbmd0aD4wXCI+XHJcbiAgICAgICAgICAgIDxsaWItcGFnZS1zaXplLXNlbGVjdG9yIFt0b3RhbEVudHJpZXNdPVwiZGF0YT8ubGVuZ3RoXCIgW2RlZmF1bHRTaXplXT1cIicxNSdcIiBbZ3JpZEFwaV09XCJncmlkQXBpXCI+XHJcbiAgICAgICAgICAgICAgICA+PC9saWItcGFnZS1zaXplLXNlbGVjdG9yPlxyXG5cclxuICAgICAgICAgICAgPGFnLWdyaWQtYW5ndWxhciBjbGFzcz1cImFnLXRoZW1lLWFscGluZSB0cmFuc2FjdGlvbi1ncmlkXCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtoZWlnaHQ6IDQwN3B4O1wiXHJcbiAgICAgICAgICAgICAgICBbY29sdW1uRGVmc109XCJjb2x1bW5EZWZzXCIgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiIFtyb3dEYXRhXT1cImZpbHRlcmVkRGF0YVwiIFtyb3dIZWlnaHRdPVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgW2hlYWRlckhlaWdodF09XCIyMlwiIFtwYWdpbmF0aW9uXT1cInRydWVcIiBbcGFnaW5hdGlvblBhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuICAgICAgICAgICAgICAgIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8L2FnLWdyaWQtYW5ndWxhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC13YXJuaW5nIG10LTNcIiAqbmdJZj1cIm5vRGF0YUZvdW5kXCI+XHJcbiAgICAgICAgTm8gRGF0YSBmb3VuZCBtYXRjaGluZyB5b3VyIHNlYXJjaCBjcml0ZXJpYS5cclxuICAgIDwvZGl2PlxyXG5cclxuPC9zZWN0aW9uPiJdfQ==
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQvcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3JlcG9ydHMtbGliL3NyYy9saWIvY29tcG9uZW50cy9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQvcmV2ZW51ZS1wZXItdHJhbnNhY3Rpb24tcmVwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRTFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQU83QyxNQUFNLE9BQU8sb0NBQW9DO0lBc0UvQztRQXJFQSxTQUFJLEdBQXlDLEVBQUUsQ0FBQztRQUNoRCxpQkFBWSxHQUF5QyxFQUFFLENBQUM7UUFDeEQsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyx5QkFBeUIsQ0FBQTtRQUN0QyxrQkFBYSxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBa0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBTXJELDBCQUFxQixHQUFHLHNCQUFzQixDQUFD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a0JBTGhELFNBQVM7K0JBQ0Usb0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXZlbnVlUGVyVHJhbnNhY3Rpb25SZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3JldmVudWUtcGVyLXRyYW5zYWN0aW9uLXJlcG9ydC9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IFJlcG9ydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXBvcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEV4cG9ydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvZXhwb3J0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRMb2FkaW5nU3RhdGVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbXBvbmVudC1sb2FkaW5nLXN0YXRlcyc7XHJcbmltcG9ydCB7IENvbERlZiwgQ29sdW1uQXBpLCBHcmlkQXBpLCBHcmlkUmVhZHlFdmVudCB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcclxuaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXZlbnVlLXBlci10cmFuc2FjdGlvbi1yZXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JldmVudWUtcGVyLXRyYW5zYWN0aW9uLXJlcG9ydC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXZlbnVlUGVyVHJhbnNhY3Rpb25SZXBvcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGRhdGE6IFJldmVudWVQZXJUcmFuc2FjdGlvblJlc3BvbnNlTW9kZWxbXSA9IFtdO1xyXG4gIGZpbHRlcmVkRGF0YTogUmV2ZW51ZVBlclRyYW5zYWN0aW9uUmVzcG9uc2VNb2RlbFtdID0gW107XHJcbiAgdXNlcjogc3RyaW5nID0gXCJcIjtcclxuICBzeXNVc2VySWQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgUmVwb3J0TmFtZSA9IFwiUmV2ZW51ZSBQZXIgVHJhbnNhY3Rpb25cIlxyXG4gIHJlcG9ydFNlcnZpY2U6IFJlcG9ydFNlcnZpY2UgPSBpbmplY3QoUmVwb3J0U2VydmljZSk7XHJcbiAgZXhwb3J0U2VydmljZTogRXhwb3J0U2VydmljZSA9IGluamVjdChFeHBvcnRTZXJ2aWNlKTtcclxuICByZXBvcnREYXRlOiBzdHJpbmc7XHJcbiAgZnJvbURhdGU6IHN0cmluZztcclxuICB0b0RhdGU6IHN0cmluZztcclxuICBtZXRhRGF0YU9uZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICBtZXRhRGF0YVR3bzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICBDb21wb25lbnRMb2FkaW5nU3RhdGUgPSBDb21wb25lbnRMb2FkaW5nU3RhdGVzO1xyXG4gIGxvYWRpbmdTdGF0ZTogQ29tcG9uZW50TG9hZGluZ1N0YXRlcyA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuQ29tcGxldGU7XHJcbiAgc2VsZWN0ZWRFeHBvcnRPcHRpb246IHN0cmluZztcclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSAnJztcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gMTU7XHJcbiAgc2VhcmNoQ3JpdGVyaWE6IFtzdHJpbmcsIHN0cmluZ11bXTtcclxuXHJcbiAgZ3JpZEFwaTogR3JpZEFwaTtcclxuICBncmlkQ29sdW1uQXBpOiBDb2x1bW5BcGk7XHJcbiAgc2hvd1JlcG9ydDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG5vRGF0YUZvdW5kOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNGb3JtVmFsaWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29sdW1uRGVmczogQ29sRGVmPFJldmVudWVQZXJUcmFuc2FjdGlvblJlc3BvbnNlTW9kZWw+W10gPSBbXHJcbiAgICB7IGZpZWxkOiAnYnVzaW5lc3NEYXRlJywgaGVhZGVyTmFtZTogJ0J1c2luZXNzIERhdGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB0b29sdGlwRmllbGQ6ICdidXNpbmVzc0RhdGUnIH0sXHJcbiAgICB7IGZpZWxkOiAncGF5SW5EYXRlJywgaGVhZGVyTmFtZTogJ1NlbmQgRGF0ZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogMTAwLCB0b29sdGlwRmllbGQ6ICdwYXlJbkRhdGUnIH0sXHJcbiAgICB7IGZpZWxkOiAncGF5T3V0RGF0ZScsIGhlYWRlck5hbWU6ICdSZWNlaXZlIERhdGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDEwMCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3BheU91dERhdGUnIH0sXHJcbiAgICB7IGZpZWxkOiAndHJhbnNhY3Rpb25OdW1iZXInLCBoZWFkZXJOYW1lOiAnVHJhbnNhY3Rpb24gTnVtYmVyJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3RyYW5zYWN0aW9uTnVtYmVyJyB9LFxyXG4gICAgeyBmaWVsZDogJ3Byb2R1Y3RDb2RlJywgaGVhZGVyTmFtZTogJ1Byb2R1Y3QnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncHJvZHVjdENvZGUnIH0sXHJcbiAgICB7IGZpZWxkOiAnc2VuZENvdW50cnknLCBoZWFkZXJOYW1lOiAnU2VuZCBDb3VudHJ5JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiAxMjAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdzZW5kQ291bnRyeScgfSxcclxuICAgIHsgZmllbGQ6ICdzZW5kQWdlbnROYW1lJywgaGVhZGVyTmFtZTogJ1NlbmRDbGllbnQgTmFtZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogMTIwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAnc2VuZEFnZW50TmFtZScgfSxcclxuICAgIHsgZmllbGQ6ICdzZW5kQWdlbnRDb2RlJywgaGVhZGVyTmFtZTogJ1NlbmRDbGllbnQgQ29kZScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdzZW5kQWdlbnRDb2RlJyB9LFxyXG4gICAgeyBmaWVsZDogJ3NlbmRBZ2VudEJyYW5jaENvZGUnLCBoZWFkZXJOYW1lOiAnU2VuZENsaWVudCBCcmFuY2hDb2RlJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3NlbmRBZ2VudEJyYW5jaENvZGUnIH0sXHJcbiAgICB7IGZpZWxkOiAncmVjZWl2ZUNvdW50cnknLCBoZWFkZXJOYW1lOiAnUmVjZWl2ZSBDb3VudHJ5JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3JlY2VpdmVDb3VudHJ5JyB9LFxyXG4gICAgeyBmaWVsZDogJ3JlY2VpdmVBZ2VudE5hbWUnLCBoZWFkZXJOYW1lOiAnUmVjZWl2ZUNsaWVudCBOYW1lJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiAxNTAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICdyZWNlaXZlQWdlbnROYW1lJyB9LFxyXG4gICAgeyBmaWVsZDogJ3JlY2VpdmVBZ2VudENvZGUnLCBoZWFkZXJOYW1lOiAnUmVjZWl2ZUNsaWVudCBDb2RlJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA5MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIHRvb2x0aXBGaWVsZDogJ3JlY2VpdmVBZ2VudENvZGUnIH0sXHJcbiAgICB7IGhlYWRlck5hbWU6ICdJcyBTZW5kZXIgQ29ycG9yYXRlJywgZmllbGQ6ICdpc1NlbmRlckNvcnBvcmF0ZScsIGZsZXg6IDEsIG1pbldpZHRoOiA4MCB9LFxyXG4gICAgeyBoZWFkZXJOYW1lOiAnSXMgQmVuZWZpY2lhcnkgQ29ycG9yYXRlJywgZmllbGQ6ICdpc0JlbmVmaWNpYXJ5Q29ycG9yYXRlJywgZmxleDogMSwgbWluV2lkdGg6IDgwIH0sXHJcbiAgICB7IGZpZWxkOiAncGF5SW5DdXJyZW5jeScsIGhlYWRlck5hbWU6ICdTZW5kIENjeUNvZGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncGF5SW5DdXJyZW5jeScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlJbkFtb3VudCcsIGhlYWRlck5hbWU6ICdTZW5kIEFtb3VudCcsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICdwYXlJbkFtb3VudCcgfSxcclxuICAgIHsgZmllbGQ6ICd0cmFuc2FjdGlvbkNvbW1pc3Npb24nLCBoZWFkZXJOYW1lOiAnU2VydmljZSBGZWUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSxjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAndHJhbnNhY3Rpb25Db21taXNzaW9uJyB9LFxyXG4gICAgeyBmaWVsZDogJ3VzZFJhdGUnLCBoZWFkZXJOYW1lOiAnVVNEIFJhdGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgd3JhcFRleHQ6IHRydWUsIG1pbldpZHRoOiA4MCwgYXV0b0hlaWdodDogdHJ1ZSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3VzZFJhdGUnIH0sXHJcbiAgICB7IGZpZWxkOiAnZXpSZW1pdFNlbGxNYXJnaW4nLCBoZWFkZXJOYW1lOiAnWE0gU2VsbE1hcmdpbicsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCBjZWxsQ2xhc3M6ICdhZy1yaWdodC1hbGlnbmVkLWNlbGwgY29tcGFjdC1jZWxsJywgdG9vbHRpcEZpZWxkOiAnZXpSZW1pdFNlbGxNYXJnaW4nIH0sXHJcbiAgICB7IGZpZWxkOiAnZXpSZW1pdFNlbGxSYXRlJywgaGVhZGVyTmFtZTogJ1hNIFNlbGxSYXRlJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICdlelJlbWl0U2VsbFJhdGUnIH0sXHJcbiAgICB7IGZpZWxkOiAnYmFua1NlbGxSYXRlJywgaGVhZGVyTmFtZTogJ0JhbmsgU2VsbFJhdGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ2JhbmtTZWxsUmF0ZScgfSxcclxuICAgIHsgZmllbGQ6ICdwYXlPdXRDdXJyZW5jeScsIGhlYWRlck5hbWU6ICdSZWNlaXZlIENjeUNvZGUnLCBmbGV4OiAxLCBoZWFkZXJDbGFzczogJ2FnLWhlYWRlci1jZWxsJywgbWluV2lkdGg6IDgwLCB3cmFwVGV4dDogdHJ1ZSwgYXV0b0hlaWdodDogdHJ1ZSwgdG9vbHRpcEZpZWxkOiAncGF5T3V0Q3VycmVuY3knIH0sXHJcbiAgICB7IGZpZWxkOiAncGF5T3V0QW1vdW50JywgaGVhZGVyTmFtZTogJ1JlY2VpdmUgQW1vdW50JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3BheU91dEFtb3VudCcgfSxcclxuICAgIHsgZmllbGQ6ICdiZW5lRGVkdWN0QW1vdW50JywgaGVhZGVyTmFtZTogJ0JlbmVEZWR1Y3QgQW1vdW50JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ2JlbmVEZWR1Y3RBbW91bnQnIH0sXHJcbiAgICB7IGZpZWxkOiAndXNkUmF0ZUFwcGxpZWRQYXlvdXQnLCBoZWFkZXJOYW1lOiAnVVNEUmF0ZSBAUGF5b3V0JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsIGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICd1c2RSYXRlQXBwbGllZFBheW91dCcgfSxcclxuICAgIHsgZmllbGQ6ICd4TXNDb21taXNzaW9uU2hhcmUnLCBoZWFkZXJOYW1lOiBcIlhNJ3MgU2VydmljZSBGZWUgU2hhcmVcIiwgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3htc0NvbW1pc3Npb25TaGFyZScgfSxcclxuICAgIHsgZmllbGQ6ICd4bUV4Y2hhbmdlVmFyaWF0aW9uJywgaGVhZGVyTmFtZTogJ1hNIEV4Y2hhbmdlIFZhcmlhdGlvbiAoR2Fpbi9Mb3NzKScsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICd4bUV4Y2hhbmdlVmFyaWF0aW9uJyB9LFxyXG4gICAgeyBmaWVsZDogJ3hNc0JlbmVEZWR1Y3RTaGFyZScsIGhlYWRlck5hbWU6IFwiWE0ncyBCZW5lRGVkdWN0IFNoYXJlXCIsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLGNlbGxDbGFzczogJ2FnLXJpZ2h0LWFsaWduZWQtY2VsbCBjb21wYWN0LWNlbGwnLCB0b29sdGlwRmllbGQ6ICd4bXNCZW5lRGVkdWN0U2hhcmUnIH0sXHJcbiAgICB7IGZpZWxkOiAncmV2ZW51ZVBlclRyYW5zYWN0aW9uJywgaGVhZGVyTmFtZTogJ1JldmVudWUgUGVyIFRyYW5zYWN0aW9uJywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3JldmVudWVQZXJUcmFuc2FjdGlvbicgfSxcclxuICAgIHsgZmllbGQ6ICd0b3RhbFNldHRsZUFtb3VudCcsIGhlYWRlck5hbWU6ICdUb3RhbCBTZXR0bGVtZW50JywgZmxleDogMSwgaGVhZGVyQ2xhc3M6ICdhZy1oZWFkZXItY2VsbCcsIG1pbldpZHRoOiA4MCwgd3JhcFRleHQ6IHRydWUsIGF1dG9IZWlnaHQ6IHRydWUsY2VsbENsYXNzOiAnYWctcmlnaHQtYWxpZ25lZC1jZWxsIGNvbXBhY3QtY2VsbCcsIHRvb2x0aXBGaWVsZDogJ3RvdGFsU2V0dGxlQW1vdW50JyB9LFxyXG4gICAgeyBmaWVsZDogJ3RyYW5zYWN0aW9uU3RhdHVzJywgaGVhZGVyTmFtZTogJ1RyYW5zYWN0aW9uIFN0YXR1cycsIGZsZXg6IDEsIGhlYWRlckNsYXNzOiAnYWctaGVhZGVyLWNlbGwnLCBtaW5XaWR0aDogODAsIHdyYXBUZXh0OiB0cnVlLCBhdXRvSGVpZ2h0OiB0cnVlLCB0b29sdGlwRmllbGQ6ICd0cmFuc2FjdGlvblN0YXR1cycgfSxcclxuICBdXHJcblxyXG4gIGRlZmF1bHRDb2xEZWYgPSB7XHJcbiAgICBzb3J0YWJsZTogdHJ1ZSxcclxuICAgIGZpbHRlcjogdHJ1ZSxcclxuICAgIHJlc2l6YWJsZTogdHJ1ZSxcclxuICAgIG1pbndpZHRoOiA0MCxcclxuICAgIHdyYXBIZWFkZXJUZXh0OiB0cnVlLFxyXG4gICAgYXV0b0hlYWRlckhlaWdodDogdHJ1ZSxcclxuICAgIHN1cHByZXNzU2l6ZVRvRml0OiBmYWxzZSxcclxuICAgIHdyYXBUZXh0OiB0cnVlXHJcbiAgfTtcclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdmb3NzaWx1c2VybmFtZScpKSB7XHJcbiAgICAgIHRoaXMuc3lzVXNlcklkID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnZm9zc2lsdXNlcm5hbWUnKVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuc3lzVXNlcklkID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnZXpyZW1pdHVzZXJuYW1lJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN5c1VzZXJJZCA9IHRoaXMuc3lzVXNlcklkLnJlcGxhY2UoL15bXCInXSguKilbXCInXSQvLCAnJDEnKTtcclxuICB9XHJcblxyXG4gIG9uR3JpZFJlYWR5KHBhcmFtczogR3JpZFJlYWR5RXZlbnQpIHtcclxuICAgIHRoaXMuZ3JpZEFwaSA9IHBhcmFtcy5hcGk7XHJcbiAgICB0aGlzLmdyaWRDb2x1bW5BcGkgPSBwYXJhbXMuY29sdW1uQXBpO1xyXG4gIH1cclxuXHJcbiAgLy8gQ3VycmVuY3kgRm9ybWF0dGVyXHJcbiAgZm9ybWF0QW1vdW50KHBhcmFtczogYW55KTogc3RyaW5nIHtcclxuICAgIGlmIChwYXJhbXMudmFsdWUgPT0gbnVsbCkgcmV0dXJuICcwLjAwMCc7XHJcbiAgICBjb25zdCBudW0gPSBOdW1iZXIocGFyYW1zLnZhbHVlKTtcclxuICAgIHJldHVybiBudW0udG9GaXhlZCgzKTtcclxuICB9XHJcblxyXG4gIGZvcm1hdFJhdGUocGFyYW1zOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbXM/LnZhbHVlO1xyXG4gICAgaWYgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09ICcnKSB7XHJcbiAgICAgIGNvbnN0IG51bSA9IE51bWJlcih2YWx1ZSk7XHJcbiAgICAgIC8vIHJldHVybiAoTWF0aC50cnVuYyhudW0gKiAxMDAwMDAwMDApIC8gMTAwMDAwMDAwKS50b0ZpeGVkKDgpO1xyXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdCh2YWx1ZSkudG9GaXhlZCg4KTtcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoKHRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIGlmICh0aGlzLnNlYXJjaFRleHQgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWFyY2hUZXh0ID09PSBcIlwiKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGEpKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5kYXRhKSk7XHJcbiAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IGRhdGEuZmlsdGVyKChyb3cpID0+XHJcbiAgICAgIE9iamVjdC52YWx1ZXMocm93KS5zb21lKHZhbCA9PiBTdHJpbmcodmFsKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2VhcmNoVGV4dD8udG9Mb3dlckNhc2UoKSkpXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBoYW5kbGVFeHBvcnQob3B0aW9uOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRFeHBvcnRPcHRpb24gPSBvcHRpb247XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZEV4cG9ydE9wdGlvbiA9PT0gJ3BkZicpIHtcclxuICAgICAgdGhpcy5leHBvcnRUb1BERigpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkRXhwb3J0T3B0aW9uID09PSAnZXhjZWwnKSB7XHJcbiAgICAgIHRoaXMuZXhwb3J0VG9FeGNlbCgpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkRXhwb3J0T3B0aW9uID09PSAnY3N2Jykge1xyXG4gICAgICB0aGlzLmV4cG9ydFRvQ1NWKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBhbGVydCgnUGxlYXNlIHNlbGVjdCBhIHZhbGlkIGV4cG9ydCBmb3JtYXQuJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBleHBvcnRUb0V4Y2VsKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRhdGE/Lmxlbmd0aCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5SZXBvcnROYW1lO1xyXG4gICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmV4cG9ydFNlcnZpY2UuZ2VuZXJhdGVSZXBvcnRNZXRhZGF0YShbXHJcbiAgICAgICBbJ1JlcG9ydCBQZXJpb2QgJywgdGhpcy5mcm9tRGF0ZSArIFwiIC0gXCIgKyB0aGlzLnRvRGF0ZV0sXHJcbiAgICAgIFsnUmVwb3J0IFVzZXIgJiBUaW1lJywgdGhpcy51c2VyP3RoaXMudXNlcitcIiBAIFwiK3RoaXMucmVwb3J0RGF0ZTonJytcIiBAIFwiK3RoaXMucmVwb3J0RGF0ZV0sXHJcbiAgICBdKTtcclxuICAgIC8vIC0tLSBzZWFyY2ggY3JpdGVyaWEgLS0tXHJcbiAgICBjb25zdCBzZWFyY2hDcml0ZXJpYTogW3N0cmluZywgc3RyaW5nXVtdID0gdGhpcy5zZWFyY2hDcml0ZXJpYTtcclxuXHJcbiAgICBjb25zdCB7IGhlYWRlcnMsIHJvd3MgfSA9IHRoaXMuZXhwb3J0U2VydmljZS5wcmVwYXJlRXhwb3J0VGFibGUodGhpcy5kYXRhLCB0aGlzLmNvbHVtbkRlZnMsIHtcclxuICAgICAgY3VycmVuY3lGaWVsZHM6IFsncGF5SW5BbW91bnQnLCAncGF5T3V0QW1vdW50JyxcclxuICAgICAgICAndHJhbnNhY3Rpb25Db21taXNzaW9uJywgJ2JlbmVEZWR1Y3RBbW91bnQnLCAneE1zQ29tbWlzc2lvblNoYXJlJywgJ3htRXhjaGFuZ2VWYXJpYXRpb24nLFxyXG4gICAgICAgICd4TXNCZW5lRGVkdWN0U2hhcmUnLCAncmV2ZW51ZVBlclRyYW5zYWN0aW9uJywgJ3RvdGFsU2V0dGxlQW1vdW50J1xyXG4gICAgICBdLFxyXG4gICAgICByYXRlRmllbGRzOiBbJ3VzZFJhdGUnLCAnZXpSZW1pdFNlbGxNYXJnaW4nLCAnZXpSZW1pdFNlbGxSYXRlJywgJ2JhbmtTZWxsUmF0ZScsICd1c2RSYXRlQXBwbGllZFBheW91dCcsXVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5leHBvcnRTZXJ2aWNlLmV4cG9ydFRvRXhjZWxVbml2ZXJzYWwodGl0bGUsIG1ldGFkYXRhLCBzZWFyY2hDcml0ZXJpYSwgaGVhZGVycywgcm93cywgJ1JldmVudWVfUGVyX1RyYW5zYWN0aW9uLnhsc3gnKTtcclxuICB9XHJcblxyXG4gIGV4cG9ydFRvQ1NWKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRhdGE/Lmxlbmd0aCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5SZXBvcnROYW1lO1xyXG4gICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmV4cG9ydFNlcnZpY2UuZ2VuZXJhdGVSZXBvcnRNZXRhZGF0YShbXHJcbiAgICAgICBbJ1JlcG9ydCBQZXJpb2QgJywgdGhpcy5mcm9tRGF0ZSArIFwiIC0gXCIgKyB0aGlzLnRvRGF0ZV0sXHJcbiAgICAgIFsnUmVwb3J0IFVzZXIgJiBUaW1lJywgdGhpcy51c2VyP3RoaXMudXNlcitcIiBAIFwiK3RoaXMucmVwb3J0RGF0ZTonJytcIiBAIFwiK3RoaXMucmVwb3J0RGF0ZV0sXHJcbiAgICBdKTtcclxuICAgIC8vIC0tLSBzZWFyY2ggY3JpdGVyaWEgLS0tXHJcbiAgICBjb25zdCBzZWFyY2hDcml0ZXJpYTogW3N0cmluZywgc3RyaW5nXVtdID0gdGhpcy5zZWFyY2hDcml0ZXJpYTtcclxuXHJcbiAgICBjb25zdCB7IGhlYWRlcnMsIHJvd3MgfSA9IHRoaXMuZXhwb3J0U2VydmljZS5wcmVwYXJlRXhwb3J0VGFibGUodGhpcy5kYXRhLCB0aGlzLmNvbHVtbkRlZnMsIHtcclxuICAgICAgY3VycmVuY3lGaWVsZHM6IFsncGF5SW5BbW91bnQnLCAncGF5T3V0QW1vdW50JyxcclxuICAgICAgICAndHJhbnNhY3Rpb25Db21taXNzaW9uJywgJ2JlbmVEZWR1Y3RBbW91bnQnLCAneE1zQ29tbWlzc2lvblNoYXJlJywgJ3htRXhjaGFuZ2VWYXJpYXRpb24nLFxyXG4gICAgICAgICd4TXNCZW5lRGVkdWN0U2hhcmUnLCAncmV2ZW51ZVBlclRyYW5zYWN0aW9uJywgJ3RvdGFsU2V0dGxlQW1vdW50J1xyXG4gICAgICBdLFxyXG4gICAgICByYXRlRmllbGRzOiBbJ3VzZFJhdGUnLCAnZXpSZW1pdFNlbGxNYXJnaW4nLCAnZXpSZW1pdFNlbGxSYXRlJywgJ2JhbmtTZWxsUmF0ZScsICd1c2RSYXRlQXBwbGllZFBheW91dCcsXVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5leHBvcnRTZXJ2aWNlLmV4cG9ydFRvQ3N2VW5pdmVyc2FsKHRpdGxlLCBtZXRhZGF0YSwgc2VhcmNoQ3JpdGVyaWEsIGhlYWRlcnMsIHJvd3MsICdSZXZlbnVlX1Blcl9UcmFuc2FjdGlvbi5jc3YnKTtcclxuICB9XHJcblxyXG4gIGV4cG9ydFRvUERGKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRhdGE/Lmxlbmd0aCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5SZXBvcnROYW1lO1xyXG4gICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmV4cG9ydFNlcnZpY2UuZ2VuZXJhdGVSZXBvcnRNZXRhZGF0YShbXHJcbiAgICAgIFsnUmVwb3J0IFBlcmlvZCAnLCB0aGlzLmZyb21EYXRlICsgXCIgLSBcIiArIHRoaXMudG9EYXRlXSxcclxuICAgICAgWydSZXBvcnQgVXNlciAmIFRpbWUnLCB0aGlzLnVzZXI/dGhpcy51c2VyK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlOicnK1wiIEAgXCIrdGhpcy5yZXBvcnREYXRlXSxcclxuICAgIF0pO1xyXG4gICAgLy8gLS0tIHNlYXJjaCBjcml0ZXJpYSAtLS1cclxuICAgIGNvbnN0IHNlYXJjaENyaXRlcmlhOiBbc3RyaW5nLCBzdHJpbmddW10gPSB0aGlzLnNlYXJjaENyaXRlcmlhO1xyXG5cclxuICAgIGNvbnN0IHsgaGVhZGVycywgcm93cyB9ID0gdGhpcy5leHBvcnRTZXJ2aWNlLnByZXBhcmVFeHBvcnRUYWJsZSh0aGlzLmRhdGEsIHRoaXMuY29sdW1uRGVmcywge1xyXG4gICAgICBjdXJyZW5jeUZpZWxkczogWydwYXlJbkFtb3VudCcsICdwYXlPdXRBbW91bnQnLFxyXG4gICAgICAgICd0cmFuc2FjdGlvbkNvbW1pc3Npb24nLCAnYmVuZURlZHVjdEFtb3VudCcsICd4TXNDb21taXNzaW9uU2hhcmUnLCAneG1FeGNoYW5nZVZhcmlhdGlvbicsXHJcbiAgICAgICAgJ3hNc0JlbmVEZWR1Y3RTaGFyZScsICdyZXZlbnVlUGVyVHJhbnNhY3Rpb24nLCAndG90YWxTZXR0bGVBbW91bnQnXHJcbiAgICAgIF0sXHJcbiAgICAgIHJhdGVGaWVsZHM6IFsndXNkUmF0ZScsICdlelJlbWl0U2VsbE1hcmdpbicsICdlelJlbWl0U2VsbFJhdGUnLCAnYmFua1NlbGxSYXRlJywgJ3VzZFJhdGVBcHBsaWVkUGF5b3V0JyxdXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmV4cG9ydFNlcnZpY2UuZXhwb3J0VG9QZGZVbml2ZXJzYWwodGl0bGUsIG1ldGFkYXRhLCBzZWFyY2hDcml0ZXJpYSwgaGVhZGVycywgcm93cywgJ1JldmVudWVfUGVyX1RyYW5zYWN0aW9uLnBkZicpXHJcbiAgICAgIC50aGVuKCgpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZygnUERGIGV4cG9ydCBjb21wbGV0ZWQuJyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaChlcnIgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1BERiBleHBvcnQgZmFpbGVkOicsIGVycik7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VhcmNoKGNyaXRlcmlhOiBhbnkpIHtcclxuICAgIHRoaXMuc2VhcmNoQ3JpdGVyaWEgPSBjcml0ZXJpYS5zZWFyY2hDcml0ZXJpYTtcclxuICAgIHRoaXMucmVwb3J0RGF0ZSA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcclxuICAgIHRoaXMucmVwb3J0RGF0ZSA9IGZvcm1hdERhdGUodGhpcy5yZXBvcnREYXRlLCAnZGQvTU0veXl5eSBoaDptbSBhJywgJ2VuLVVTJyk7XHJcbiAgICBjb25zdCBtb2RhbCA9IGNyaXRlcmlhLm1vZGFsO1xyXG4gICAgdGhpcy51c2VyID0gdGhpcy5zeXNVc2VySWQ7XHJcbiAgICB0aGlzLmZyb21EYXRlID0gZm9ybWF0RGF0ZShtb2RhbC5mcm9tRGF0ZSwgJ2RkL01NL3l5eXkgaGg6bW0gYScsICdlbi1VUycpLnNsaWNlKDAsMTApO1xyXG4gICAgdGhpcy50b0RhdGUgPSBmb3JtYXREYXRlKG1vZGFsLnRvRGF0ZSwgJ2RkL01NL3l5eXkgaGg6bW0gYScsICdlbi1VUycpLnNsaWNlKDAsMTApO1xyXG4gICAgY29uc29sZS5sb2cobW9kYWwpO1xyXG4gICAgLy8gQ29kZSBGb3IgTWV0YSBEYXRhXHJcbiAgICB0aGlzLm1ldGFEYXRhT25lID0ge1xyXG4gICAgICAnUmVwb3J0IFBlcmlvZCc6IHRoaXMuZnJvbURhdGUgKyBcIiAtIFwiICsgdGhpcy50b0RhdGUsXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5tZXRhRGF0YVR3byA9IHtcclxuICAgICAgJ1JlcG9ydCBVc2VyICYgVGltZSc6IHRoaXMudXNlcitcIiBAIFwiK3RoaXMucmVwb3J0RGF0ZSxcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzZWFyY2hEYXRhID0ge1xyXG4gICAgICBcIlN0YXJ0RGF0ZVwiOiBtb2RhbC5mcm9tRGF0ZSxcclxuICAgICAgXCJFbmREYXRlXCI6IG1vZGFsLnRvRGF0ZSxcclxuICAgICAgXCJTZW5kQ291bnRyeUNvZGVcIjogbW9kYWwuc2VuZENvdW50cnksXHJcbiAgICAgIFwiUmVjdkNvdW50cnlDb2RlXCI6IG1vZGFsLnJlY2VpdmVDb3VudHJ5LFxyXG4gICAgICBcInNlbmRCdXNpbmVzc1BhcnRuZXJJZFwiOiBtb2RhbC5zZW5kQnVzaW5lc3NQYXJ0bmVyLFxyXG4gICAgICBcIlJlY3ZCdXNpbmVzc1BhcnRlbnJJZFwiOiBtb2RhbC5yZWN2QnVzaW5lc3NQYXJ0bmVyLFxyXG4gICAgICBcIlRyYW5zYWN0aW9uU3RhdHVzXCI6IG1vZGFsLnRyYW5zYWN0aW9uU3RhdHVzLmpvaW4oXCIsXCIpXHJcbiAgICB9XHJcbiAgICB0aGlzLmxvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuTG9hZGluZztcclxuICAgIHRoaXMucmVwb3J0U2VydmljZS5nZXRSZXZlbnVlUGVyVHJhbnNhY3Rpb25SZXBvcnQoc2VhcmNoRGF0YSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKGRhdGEpID0+IHtcclxuICAgICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5kYXRhKSk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyh0aGlzLmRhdGEpO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGFGb3VuZCA9IGRhdGE/Lmxlbmd0aCA9PT0gMCA/IHRydWUgOiBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nU3RhdGUgPSBDb21wb25lbnRMb2FkaW5nU3RhdGVzLkNvbXBsZXRlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd1JlcG9ydCA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZSA9IENvbXBvbmVudExvYWRpbmdTdGF0ZXMuQ29tcGxldGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRm9ybVZhbGlkKGlzVmFsaWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuaXNGb3JtVmFsaWQgPSBpc1ZhbGlkO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGxpYi1zZWFyY2gtZmlsdGVyIFtSZXBvcnROYW1lXT1cIlJlcG9ydE5hbWVcIiAoc2VhcmNoQ2xpY2tlZCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiIChmb3JtVmFsaWQpPVwiaGFuZGxlRm9ybVZhbGlkKCRldmVudClcIj5cclxuPC9saWItc2VhcmNoLWZpbHRlcj5cclxuPGFwcC1sb2FkZXIgY2xhc3M9XCJcIiAqbmdJZj1cImxvYWRpbmdTdGF0ZSA9PSBDb21wb25lbnRMb2FkaW5nU3RhdGUuTG9hZGluZ1wiPjwvYXBwLWxvYWRlcj5cclxuPHNlY3Rpb24gKm5nSWY9XCJzaG93UmVwb3J0ICYmIGlzRm9ybVZhbGlkXCIgY2xhc3M9XCJteS0yIG14LTFcIj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW5vRGF0YUZvdW5kXCI+XHJcbiAgICAgICAgPGxpYi1tZXRhZGF0YSBbcmVwb3J0TmFtZV09XCJSZXBvcnROYW1lXCIgW3Nob3dtZXRhRGF0YU9uZV09XCJ0cnVlXCIgW3Nob3dtZXRhRGF0YVR3b109XCJ0cnVlXCJcclxuICAgICAgICAgICAgW21ldGFEYXRhT25lXT1cIm1ldGFEYXRhT25lXCIgW21ldGFEYXRhVHdvXT1cIm1ldGFEYXRhVHdvXCIgKGV4cG9ydEV2ZW50KT1cImhhbmRsZUV4cG9ydCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgKHNlYXJjaEV2ZW50KT1cIm9uU2VhcmNoKCRldmVudClcIj48L2xpYi1tZXRhZGF0YT5cclxuICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlO1wiICpuZ0lmPVwiZmlsdGVyZWREYXRhPy5sZW5ndGg+MFwiPlxyXG4gICAgICAgICAgICA8bGliLXBhZ2Utc2l6ZS1zZWxlY3RvciBbdG90YWxFbnRyaWVzXT1cImRhdGE/Lmxlbmd0aFwiIFtkZWZhdWx0U2l6ZV09XCInMTUnXCIgW2dyaWRBcGldPVwiZ3JpZEFwaVwiPlxyXG4gICAgICAgICAgICAgICAgPjwvbGliLXBhZ2Utc2l6ZS1zZWxlY3Rvcj5cclxuXHJcbiAgICAgICAgICAgIDxhZy1ncmlkLWFuZ3VsYXIgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmUgdHJhbnNhY3Rpb24tZ3JpZFwiIHN0eWxlPVwid2lkdGg6IDEwMCU7aGVpZ2h0OiA0MDdweDtcIlxyXG4gICAgICAgICAgICAgICAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIiBbcm93RGF0YV09XCJmaWx0ZXJlZERhdGFcIiBbcm93SGVpZ2h0XT1cIjIwXCJcclxuICAgICAgICAgICAgICAgIFtoZWFkZXJIZWlnaHRdPVwiMjJcIiBbcGFnaW5hdGlvbl09XCJ0cnVlXCIgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAoZ3JpZFJlYWR5KT1cIm9uR3JpZFJlYWR5KCRldmVudClcIj5cclxuICAgICAgICAgICAgPC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtd2FybmluZyBtdC0zXCIgKm5nSWY9XCJub0RhdGFGb3VuZFwiPlxyXG4gICAgICAgIE5vIERhdGEgZm91bmQgbWF0Y2hpbmcgeW91ciBzZWFyY2ggY3JpdGVyaWEuXHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvc2VjdGlvbj4iXX0=