@hitsoft/uretim-yonetimi 1.0.35 → 1.0.37

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.
@@ -5,7 +5,8 @@ import * as i2 from "@abp/ng.theme.shared";
5
5
  import * as i3 from "@angular/common";
6
6
  import * as i4 from "@abp/ng.components/page";
7
7
  import * as i5 from "devextreme-angular";
8
- import * as i6 from "devextreme-angular/ui/radio-group";
8
+ import * as i6 from "devextreme-angular/ui/nested";
9
+ import * as i7 from "devextreme-angular/ui/radio-group";
9
10
  export class HitFillingReceiptFromProductionComponent {
10
11
  constructor(service, confirmation, ngZone) {
11
12
  this.service = service;
@@ -20,6 +21,9 @@ export class HitFillingReceiptFromProductionComponent {
20
21
  this.paletTipleri = ['TAM', 'KISMI'];
21
22
  this.koliAdet = null;
22
23
  this.toplamMiktar = 0;
24
+ this.calcRowIndex = (row) => (this.workOrderInfo?.receiptHistory?.indexOf(row) ?? -1) + 1;
25
+ this.calcDocStatus = (row) => row.docStatus === 'C' ? 'Tamamlandı' : 'Beklemede';
26
+ this.formatNumber = (value) => value?.toLocaleString('tr-TR') ?? '';
23
27
  }
24
28
  ngOnInit() {
25
29
  // Initialize
@@ -205,10 +209,10 @@ export class HitFillingReceiptFromProductionComponent {
205
209
  }
206
210
  }
207
211
  HitFillingReceiptFromProductionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitFillingReceiptFromProductionComponent, deps: [{ token: i1.HitFillingReceiptFromProductionService }, { token: i2.ConfirmationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
208
- HitFillingReceiptFromProductionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitFillingReceiptFromProductionComponent, selector: "lib-hit-filling-receipt-from-production", viewQueries: [{ propertyName: "nmbBoxIsEmriNo", first: true, predicate: ["isEmriNoRef"], descendants: true }, { propertyName: "radioPaletTipi", first: true, predicate: ["paletTipiRef"], descendants: true }, { propertyName: "nmbBoxKoliAdet", first: true, predicate: ["koliAdetRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n \u00DCretimden Giri\u015F\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"save()\" [disabled]=\"isSaveButtonDisabled\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u00DCretimden Giri\u015F Yap\r\n </button>\r\n </div>\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n Temizle\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n \r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <!-- Work Order Input -->\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #isEmriNoRef \r\n class=\"me-1\" \r\n style=\"width:100%;\"\r\n label=\"\u0130\u015F Emri No\"\r\n [(value)]=\"isEmriNo\"\r\n (onChange)=\"getProductionOrder()\" \r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" \r\n icon=\"search\" \r\n type=\"default\" \r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-button>\r\n </div>\r\n\r\n <!-- Work Order Information -->\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderLoaded && workOrderInfo\">\r\n <!-- Product Info -->\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <dx-text-box \r\n label=\"\u00DCr\u00FCn Kodu\" \r\n [(value)]=\"workOrderInfo.itemCode\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-text-box \r\n label=\"\u00DCr\u00FCn Ad\u0131\" \r\n [(value)]=\"workOrderInfo.itemName\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-4\">\r\n <dx-number-box \r\n label=\"Planlanan Miktar\" \r\n [(value)]=\"workOrderInfo.plannedQty\" \r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-number-box \r\n label=\"Tamamlanan Miktar\" \r\n [(value)]=\"workOrderInfo.cmpltQty\" \r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-text-box \r\n label=\"Depo\" \r\n [(value)]=\"workOrderInfo.warehouse\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Pallet Type Selection -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-md-12\">\r\n <dx-radio-group #paletTipiRef\r\n [items]=\"paletTipleri\"\r\n layout=\"horizontal\"\r\n [(value)]=\"paletTipi\"\r\n (onValueChanged)=\"onPaletTipiChange()\">\r\n </dx-radio-group>\r\n </div>\r\n </div>\r\n\r\n <!-- Koli Count for KISMI Pallet -->\r\n <div class=\"row mt-2\" *ngIf=\"paletTipi === 'KISMI'\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box #koliAdetRef\r\n label=\"Koli Adedi\"\r\n [(value)]=\"koliAdet\"\r\n (onValueChanged)=\"onKoliAdetChange()\"\r\n [min]=\"1\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Calculated Total Quantity -->\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box \r\n label=\"Toplam Miktar (Adet)\"\r\n [(value)]=\"toplamMiktar\"\r\n [disabled]=\"true\"\r\n [stylingMode]=\"'filled'\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-number-box \r\n label=\"Koli \u0130\u00E7i Adet\"\r\n [(value)]=\"workOrderInfo.salPackUn\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Quality Status Info -->\r\n <div class=\"row mt-2\" *ngIf=\"workOrderInfo.u_KaliteDurumu\">\r\n <div class=\"col-md-12\">\r\n <div class=\"alert alert-info\" role=\"alert\">\r\n <strong>Kalite Durumu:</strong> {{ workOrderInfo.u_KaliteDurumu }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [".page-title{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i4.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i5.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i5.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i5.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6.DxRadioGroupComponent, selector: "dx-radio-group", inputs: ["accessKey", "activeStateEnabled", "dataSource", "disabled", "displayExpr", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isValid", "items", "itemTemplate", "layout", "name", "readOnly", "rtlEnabled", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueExpr", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "dataSourceChange", "disabledChange", "displayExprChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isValidChange", "itemsChange", "itemTemplateChange", "layoutChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueExprChange", "visibleChange", "widthChange", "onBlur"] }] });
212
+ HitFillingReceiptFromProductionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitFillingReceiptFromProductionComponent, selector: "lib-hit-filling-receipt-from-production", viewQueries: [{ propertyName: "nmbBoxIsEmriNo", first: true, predicate: ["isEmriNoRef"], descendants: true }, { propertyName: "radioPaletTipi", first: true, predicate: ["paletTipiRef"], descendants: true }, { propertyName: "nmbBoxKoliAdet", first: true, predicate: ["koliAdetRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n \u00DCretimden Giri\u015F\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"save()\" [disabled]=\"isSaveButtonDisabled\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u00DCretimden Giri\u015F Yap\r\n </button>\r\n </div>\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n Temizle\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <!-- Work Order Input -->\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #isEmriNoRef class=\"me-1\" style=\"width:100%;\" label=\"\u0130\u015F Emri No\" [(value)]=\"isEmriNo\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"isWorkOrderLoaded\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-button>\r\n </div>\r\n\r\n <!-- Work Order Information -->\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderLoaded && workOrderInfo\">\r\n <!-- Product Info -->\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <dx-text-box label=\"\u00DCr\u00FCn Kodu\" [(value)]=\"workOrderInfo.itemCode\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-text-box label=\"\u00DCr\u00FCn Ad\u0131\" [(value)]=\"workOrderInfo.itemName\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-4\">\r\n <dx-number-box label=\"Planlanan Miktar\" [(value)]=\"workOrderInfo.plannedQty\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-number-box label=\"Tamamlanan Miktar\" [(value)]=\"workOrderInfo.cmpltQty\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-text-box label=\"Depo\" [(value)]=\"workOrderInfo.warehouse\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Pallet Type Selection -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-md-12\">\r\n <dx-radio-group #paletTipiRef [items]=\"paletTipleri\" layout=\"horizontal\" [(value)]=\"paletTipi\"\r\n (onValueChanged)=\"onPaletTipiChange()\">\r\n </dx-radio-group>\r\n </div>\r\n </div>\r\n\r\n <!-- Koli Count for KISMI Pallet -->\r\n <div class=\"row mt-2\" *ngIf=\"paletTipi === 'KISMI'\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box #koliAdetRef label=\"Koli Adedi\" [(value)]=\"koliAdet\" (onValueChanged)=\"onKoliAdetChange()\"\r\n [min]=\"1\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Calculated Total Quantity -->\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box label=\"Toplam Miktar (Adet)\" [(value)]=\"toplamMiktar\" [disabled]=\"true\"\r\n [stylingMode]=\"'filled'\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-number-box label=\"Koli \u0130\u00E7i Adet\" [(value)]=\"workOrderInfo.salPackUn\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Quality Status Info -->\r\n <div class=\"row mt-2\" *ngIf=\"workOrderInfo.u_KaliteDurumu\">\r\n <div class=\"col-md-12\">\r\n <div class=\"alert alert-info\" role=\"alert\">\r\n <strong>Kalite Durumu:</strong> {{ workOrderInfo.u_KaliteDurumu }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Receipt History -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-12\">\r\n <div class=\"fw-semibold mb-1\" style=\"font-size: 13px;\">\r\n \u00DCretimden Giri\u015F Hareketleri\r\n </div>\r\n <dx-data-grid [dataSource]=\"workOrderInfo.receiptHistory\" [showBorders]=\"true\" [columnAutoWidth]=\"true\"\r\n [wordWrapEnabled]=\"false\" [rowAlternationEnabled]=\"true\" [hoverStateEnabled]=\"true\"\r\n [noDataText]=\"'Hen\u00FCz giri\u015F hareketi bulunmamaktad\u0131r.'\" [height]=\"'auto'\">\r\n <dxo-scrolling mode=\"standard\"></dxo-scrolling>\r\n <dxo-paging [enabled]=\"false\"></dxo-paging>\r\n <dxi-column caption=\"#\" name=\"rowNum\" [width]=\"40\" alignment=\"center\" [calculateCellValue]=\"calcRowIndex\"></dxi-column>\r\n <dxi-column dataField=\"docNum\" caption=\"Belge No\" [minWidth]=\"110\" alignment=\"center\"></dxi-column>\r\n <dxi-column dataField=\"packQuantity\" caption=\"Koli Adedi\" dataType=\"number\" [minWidth]=\"75\" alignment=\"right\"></dxi-column>\r\n <dxi-column dataField=\"whsName\" caption=\"Depo\" [minWidth]=\"100\"></dxi-column>\r\n <dxi-column dataField=\"docStatus\" caption=\"Durum\" [minWidth]=\"105\" alignment=\"center\"\r\n [calculateCellValue]=\"calcDocStatus\">\r\n </dxi-column>\r\n <dxi-column dataField=\"userCode\" caption=\"Kullan\u0131c\u0131\" [minWidth]=\"80\" alignment=\"center\"></dxi-column>\r\n <dxo-summary>\r\n <dxi-total-item column=\"docNum\" summaryType=\"count\" displayFormat=\"Toplam\"></dxi-total-item>\r\n <dxi-total-item column=\"packQuantity\" summaryType=\"sum\" displayFormat=\"{0}\" [valueFormat]=\"formatNumber\"></dxi-total-item>\r\n </dxo-summary>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>", styles: [".page-title{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i4.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i5.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i5.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i6.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i6.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i6.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i6.DxoSummaryComponent, selector: "dxo-summary", inputs: ["calculateCustomSummary", "groupItems", "recalculateWhileEditing", "skipEmptyValues", "texts", "totalItems"] }, { kind: "component", type: i6.DxiTotalItemComponent, selector: "dxi-total-item", inputs: ["alignment", "column", "cssClass", "customizeText", "displayFormat", "name", "showInColumn", "skipEmptyValues", "summaryType", "valueFormat"] }, { kind: "component", type: i5.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i5.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i7.DxRadioGroupComponent, selector: "dx-radio-group", inputs: ["accessKey", "activeStateEnabled", "dataSource", "disabled", "displayExpr", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isValid", "items", "itemTemplate", "layout", "name", "readOnly", "rtlEnabled", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueExpr", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "dataSourceChange", "disabledChange", "displayExprChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isValidChange", "itemsChange", "itemTemplateChange", "layoutChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueExprChange", "visibleChange", "widthChange", "onBlur"] }] });
209
213
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitFillingReceiptFromProductionComponent, decorators: [{
210
214
  type: Component,
211
- args: [{ selector: 'lib-hit-filling-receipt-from-production', template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n \u00DCretimden Giri\u015F\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"save()\" [disabled]=\"isSaveButtonDisabled\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u00DCretimden Giri\u015F Yap\r\n </button>\r\n </div>\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n Temizle\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n \r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <!-- Work Order Input -->\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #isEmriNoRef \r\n class=\"me-1\" \r\n style=\"width:100%;\"\r\n label=\"\u0130\u015F Emri No\"\r\n [(value)]=\"isEmriNo\"\r\n (onChange)=\"getProductionOrder()\" \r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" \r\n icon=\"search\" \r\n type=\"default\" \r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-button>\r\n </div>\r\n\r\n <!-- Work Order Information -->\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderLoaded && workOrderInfo\">\r\n <!-- Product Info -->\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <dx-text-box \r\n label=\"\u00DCr\u00FCn Kodu\" \r\n [(value)]=\"workOrderInfo.itemCode\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-text-box \r\n label=\"\u00DCr\u00FCn Ad\u0131\" \r\n [(value)]=\"workOrderInfo.itemName\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-4\">\r\n <dx-number-box \r\n label=\"Planlanan Miktar\" \r\n [(value)]=\"workOrderInfo.plannedQty\" \r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-number-box \r\n label=\"Tamamlanan Miktar\" \r\n [(value)]=\"workOrderInfo.cmpltQty\" \r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-text-box \r\n label=\"Depo\" \r\n [(value)]=\"workOrderInfo.warehouse\" \r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Pallet Type Selection -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-md-12\">\r\n <dx-radio-group #paletTipiRef\r\n [items]=\"paletTipleri\"\r\n layout=\"horizontal\"\r\n [(value)]=\"paletTipi\"\r\n (onValueChanged)=\"onPaletTipiChange()\">\r\n </dx-radio-group>\r\n </div>\r\n </div>\r\n\r\n <!-- Koli Count for KISMI Pallet -->\r\n <div class=\"row mt-2\" *ngIf=\"paletTipi === 'KISMI'\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box #koliAdetRef\r\n label=\"Koli Adedi\"\r\n [(value)]=\"koliAdet\"\r\n (onValueChanged)=\"onKoliAdetChange()\"\r\n [min]=\"1\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Calculated Total Quantity -->\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box \r\n label=\"Toplam Miktar (Adet)\"\r\n [(value)]=\"toplamMiktar\"\r\n [disabled]=\"true\"\r\n [stylingMode]=\"'filled'\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-number-box \r\n label=\"Koli \u0130\u00E7i Adet\"\r\n [(value)]=\"workOrderInfo.salPackUn\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Quality Status Info -->\r\n <div class=\"row mt-2\" *ngIf=\"workOrderInfo.u_KaliteDurumu\">\r\n <div class=\"col-md-12\">\r\n <div class=\"alert alert-info\" role=\"alert\">\r\n <strong>Kalite Durumu:</strong> {{ workOrderInfo.u_KaliteDurumu }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [".page-title{margin:0;padding:0}\n"] }]
215
+ args: [{ selector: 'lib-hit-filling-receipt-from-production', template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n \u00DCretimden Giri\u015F\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"save()\" [disabled]=\"isSaveButtonDisabled\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u00DCretimden Giri\u015F Yap\r\n </button>\r\n </div>\r\n <div class=\"col-6\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n Temizle\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <!-- Work Order Input -->\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #isEmriNoRef class=\"me-1\" style=\"width:100%;\" label=\"\u0130\u015F Emri No\" [(value)]=\"isEmriNo\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"isWorkOrderLoaded\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"isWorkOrderLoaded\">\r\n </dx-button>\r\n </div>\r\n\r\n <!-- Work Order Information -->\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderLoaded && workOrderInfo\">\r\n <!-- Product Info -->\r\n <div class=\"row\">\r\n <div class=\"col-md-6\">\r\n <dx-text-box label=\"\u00DCr\u00FCn Kodu\" [(value)]=\"workOrderInfo.itemCode\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-text-box label=\"\u00DCr\u00FCn Ad\u0131\" [(value)]=\"workOrderInfo.itemName\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-4\">\r\n <dx-number-box label=\"Planlanan Miktar\" [(value)]=\"workOrderInfo.plannedQty\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-number-box label=\"Tamamlanan Miktar\" [(value)]=\"workOrderInfo.cmpltQty\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-4\">\r\n <dx-text-box label=\"Depo\" [(value)]=\"workOrderInfo.warehouse\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Pallet Type Selection -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-md-12\">\r\n <dx-radio-group #paletTipiRef [items]=\"paletTipleri\" layout=\"horizontal\" [(value)]=\"paletTipi\"\r\n (onValueChanged)=\"onPaletTipiChange()\">\r\n </dx-radio-group>\r\n </div>\r\n </div>\r\n\r\n <!-- Koli Count for KISMI Pallet -->\r\n <div class=\"row mt-2\" *ngIf=\"paletTipi === 'KISMI'\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box #koliAdetRef label=\"Koli Adedi\" [(value)]=\"koliAdet\" (onValueChanged)=\"onKoliAdetChange()\"\r\n [min]=\"1\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Calculated Total Quantity -->\r\n <div class=\"row mt-2\">\r\n <div class=\"col-md-6\">\r\n <dx-number-box label=\"Toplam Miktar (Adet)\" [(value)]=\"toplamMiktar\" [disabled]=\"true\"\r\n [stylingMode]=\"'filled'\">\r\n </dx-number-box>\r\n </div>\r\n <div class=\"col-md-6\">\r\n <dx-number-box label=\"Koli \u0130\u00E7i Adet\" [(value)]=\"workOrderInfo.salPackUn\" [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n\r\n <!-- Quality Status Info -->\r\n <div class=\"row mt-2\" *ngIf=\"workOrderInfo.u_KaliteDurumu\">\r\n <div class=\"col-md-12\">\r\n <div class=\"alert alert-info\" role=\"alert\">\r\n <strong>Kalite Durumu:</strong> {{ workOrderInfo.u_KaliteDurumu }}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Receipt History -->\r\n <div class=\"row mt-3\">\r\n <div class=\"col-12\">\r\n <div class=\"fw-semibold mb-1\" style=\"font-size: 13px;\">\r\n \u00DCretimden Giri\u015F Hareketleri\r\n </div>\r\n <dx-data-grid [dataSource]=\"workOrderInfo.receiptHistory\" [showBorders]=\"true\" [columnAutoWidth]=\"true\"\r\n [wordWrapEnabled]=\"false\" [rowAlternationEnabled]=\"true\" [hoverStateEnabled]=\"true\"\r\n [noDataText]=\"'Hen\u00FCz giri\u015F hareketi bulunmamaktad\u0131r.'\" [height]=\"'auto'\">\r\n <dxo-scrolling mode=\"standard\"></dxo-scrolling>\r\n <dxo-paging [enabled]=\"false\"></dxo-paging>\r\n <dxi-column caption=\"#\" name=\"rowNum\" [width]=\"40\" alignment=\"center\" [calculateCellValue]=\"calcRowIndex\"></dxi-column>\r\n <dxi-column dataField=\"docNum\" caption=\"Belge No\" [minWidth]=\"110\" alignment=\"center\"></dxi-column>\r\n <dxi-column dataField=\"packQuantity\" caption=\"Koli Adedi\" dataType=\"number\" [minWidth]=\"75\" alignment=\"right\"></dxi-column>\r\n <dxi-column dataField=\"whsName\" caption=\"Depo\" [minWidth]=\"100\"></dxi-column>\r\n <dxi-column dataField=\"docStatus\" caption=\"Durum\" [minWidth]=\"105\" alignment=\"center\"\r\n [calculateCellValue]=\"calcDocStatus\">\r\n </dxi-column>\r\n <dxi-column dataField=\"userCode\" caption=\"Kullan\u0131c\u0131\" [minWidth]=\"80\" alignment=\"center\"></dxi-column>\r\n <dxo-summary>\r\n <dxi-total-item column=\"docNum\" summaryType=\"count\" displayFormat=\"Toplam\"></dxi-total-item>\r\n <dxi-total-item column=\"packQuantity\" summaryType=\"sum\" displayFormat=\"{0}\" [valueFormat]=\"formatNumber\"></dxi-total-item>\r\n </dxo-summary>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>", styles: [".page-title{margin:0;padding:0}\n"] }]
212
216
  }], ctorParameters: function () { return [{ type: i1.HitFillingReceiptFromProductionService }, { type: i2.ConfirmationService }, { type: i0.NgZone }]; }, propDecorators: { nmbBoxIsEmriNo: [{
213
217
  type: ViewChild,
214
218
  args: ['isEmriNoRef', { static: false }]
@@ -219,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
219
223
  type: ViewChild,
220
224
  args: ['koliAdetRef', { static: false }]
221
225
  }] } });
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvY29tcG9uZW50cy9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQWM3RCxNQUFNLE9BQU8sd0NBQXdDO0lBaUJuRCxZQUNVLE9BQStDLEVBQy9DLFlBQWlDLEVBQ2pDLE1BQWM7UUFGZCxZQUFPLEdBQVAsT0FBTyxDQUF3QztRQUMvQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWR4QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLGtCQUFhLEdBQXdCLElBQUksQ0FBQztRQUUxQyxrQkFBa0I7UUFDbEIsY0FBUyxHQUFXLEtBQUssQ0FBQyxDQUFDLGVBQWU7UUFDMUMsaUJBQVksR0FBRyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoQyxhQUFRLEdBQVcsSUFBSSxDQUFDO1FBQ3hCLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO0lBTXRCLENBQUM7SUFFSixRQUFR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QTFELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRHhOdW1iZXJCb3hDb21wb25lbnQsIER4UmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhcic7XHJcbmltcG9ydCB7IFxyXG4gIEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25TZXJ2aWNlLFxyXG4gIEdldFdvcmtPcmRlckluZm9EdG8sXHJcbiAgV29ya09yZGVyTGluZUR0b1xyXG59IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWhpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uLmNvbXBvbmVudC5jc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25Db21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2lzRW1yaU5vUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pIG5tYkJveElzRW1yaU5vOiBEeE51bWJlckJveENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdwYWxldFRpcGlSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgcmFkaW9QYWxldFRpcGk6IER4UmFkaW9Hcm91cENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdrb2xpQWRldFJlZicsIHsgc3RhdGljOiBmYWxzZSB9KSBubWJCb3hLb2xpQWRldDogRHhOdW1iZXJCb3hDb21wb25lbnQ7XHJcblxyXG4gIGlzRW1yaU5vOiBudW1iZXI7XHJcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNTYXZpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1dvcmtPcmRlckxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHdvcmtPcmRlckluZm86IEdldFdvcmtPcmRlckluZm9EdG8gPSBudWxsO1xyXG4gIFxyXG4gIC8vIFBhbGxldCBjb250cm9sc1xyXG4gIHBhbGV0VGlwaTogc3RyaW5nID0gJ1RBTSc7IC8vIFRBTSBvciBLSVNNSVxyXG4gIHBhbGV0VGlwbGVyaSA9IFsnVEFNJywgJ0tJU01JJ107XHJcbiAga29saUFkZXQ6IG51bWJlciA9IG51bGw7XHJcbiAgdG9wbGFtTWlrdGFyOiBudW1iZXIgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2VydmljZTogSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvbjogQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmVcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gSW5pdGlhbGl6ZVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5mb2N1c09uSXNFbXJpTm8oKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldFByb2R1Y3Rpb25PcmRlcigpIHtcclxuICAgIGlmICghdGhpcy5pc0VtcmlObykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5pc1dvcmtPcmRlckxvYWRlZCA9IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuc2VydmljZS5nZXRXb3JrT3JkZXJJbmZvKHRoaXMuaXNFbXJpTm8pLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IHJlc3BvbnNlID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2U/LmlzU3VjY2Vzc2Z1bCAmJiByZXNwb25zZS5pdGVtcykge1xyXG4gICAgICAgICAgdGhpcy53b3JrT3JkZXJJbmZvID0gcmVzcG9uc2UuaXRlbXM7XHJcbiAgICAgICAgICB0aGlzLmlzV29ya09yZGVyTG9hZGVkID0gdHJ1ZTtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIGRlZmF1bHQgdmFsdWVzIGZvciBUQU0gcGFsbGV0XHJcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVRvdGFsUXVhbnRpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IGUgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNXb3JrT3JkZXJMb2FkZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY29uZmlybWF0aW9uLnN0YXR1cyQuc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jbGVhckFsbCgpO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25QYWxldFRpcGlDaGFuZ2UoKSB7XHJcbiAgICB0aGlzLmNhbGN1bGF0ZVRvdGFsUXVhbnRpdHkoKTtcclxuICAgIFxyXG4gICAgaWYgKHRoaXMucGFsZXRUaXBpID09PSAnS0lTTUknKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubm1iQm94S29saUFkZXQ/Lmluc3RhbmNlLmZvY3VzKCk7XHJcbiAgICAgIH0sIDEwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbktvbGlBZGV0Q2hhbmdlKCkge1xyXG4gICAgdGhpcy5jYWxjdWxhdGVUb3RhbFF1YW50aXR5KCk7XHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGVUb3RhbFF1YW50aXR5KCkge1xyXG4gICAgaWYgKCF0aGlzLndvcmtPcmRlckluZm8pIHtcclxuICAgICAgdGhpcy50b3BsYW1NaWt0YXIgPSAwO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2FsUGFja1VuID0gdGhpcy53b3JrT3JkZXJJbmZvLnNhbFBhY2tVbiB8fCAwO1xyXG4gICAgZGVidWdnZXI7XHJcbiAgICBpZiAodGhpcy5wYWxldFRpcGkgPT09ICdUQU0nKSB7XHJcbiAgICAgIC8vIFRhbSBQYWxldDogUGFsbGV0IGhlaWdodCDDlyBQaWVjZXMgcGVyIGJveFxyXG4gICAgICBjb25zdCBwYWxldFl1a3Nla2xpayA9IHRoaXMud29ya09yZGVySW5mby51X0RLcGFsZXR5dXNla2xpayB8fCAwO1xyXG4gICAgICB0aGlzLnRvcGxhbU1pa3RhciA9IHBhbGV0WXVrc2VrbGlrICogc2FsUGFja1VuO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gS8Sxc21pIFBhbGV0OiBLb2xpIGNvdW50IMOXIFBpZWNlcyBwZXIgYm94XHJcbiAgICAgIGNvbnN0IGtvbGlBZGV0ID0gdGhpcy5rb2xpQWRldCB8fCAwO1xyXG4gICAgICBjb25zdCBraXNtaU1pa3RhciA9IGtvbGlBZGV0ICogc2FsUGFja1VuO1xyXG4gICAgICBcclxuICAgICAgLy8gQ2FsY3VsYXRlIFRBTSBwYWxsZXQgcXVhbnRpdHkgZm9yIGNvbXBhcmlzb25cclxuICAgICAgY29uc3QgcGFsZXRZdWtzZWtsaWsgPSB0aGlzLndvcmtPcmRlckluZm8udV9ES3BhbGV0eXVzZWtsaWsgfHwgMDtcclxuICAgICAgY29uc3QgdGFtUGFsZXRNaWt0YXIgPSBwYWxldFl1a3Nla2xpayAqIHNhbFBhY2tVbjtcclxuICAgICAgXHJcbiAgICAgIC8vIEtJU01JIHF1YW50aXR5IHNob3VsZCBub3QgZXhjZWVkIFRBTSBwYWxsZXQgcXVhbnRpdHlcclxuICAgICAgaWYgKGtpc21pTWlrdGFyID4gdGFtUGFsZXRNaWt0YXIpIHtcclxuICAgICAgICB0aGlzLnRvcGxhbU1pa3RhciA9IHRhbVBhbGV0TWlrdGFyO1xyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIFJlc2V0IHRvIG1heGltdW0gYWxsb3dlZCB2YWx1ZSBhc3luY2hyb25vdXNseSB0byBhdm9pZCBjaGFuZ2UgZGV0ZWN0aW9uIGxvb3BcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMua29saUFkZXQgPSBwYWxldFl1a3Nla2xpaztcclxuICAgICAgICB9LCAwKTtcclxuICAgICAgICBcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi53YXJuKCcnLCBgS29saSBhZGVkaSAke3BhbGV0WXVrc2VrbGlrfSdpIGdlw6dlbWV6ISAoVEFNIHBhbGV0IG1pa3RhcsSxOiAke3RhbVBhbGV0TWlrdGFyfSlgLCB7XHJcbiAgICAgICAgICBoaWRlWWVzQnRuOiB0cnVlLFxyXG4gICAgICAgICAgY2FuY2VsVGV4dDogJ0thcGF0JyxcclxuICAgICAgICAgIGRpc21pc3NpYmxlOiBmYWxzZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnRvcGxhbU1pa3RhciA9IGtpc21pTWlrdGFyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBzYXZlKCkge1xyXG4gICAgZGVidWdnZXI7XHJcbiAgICBpZiAoIXRoaXMuaXNFbXJpTm8gfHwgIXRoaXMud29ya09yZGVySW5mbyB8fCB0aGlzLnRvcGxhbU1pa3RhciA8PSAwIHx8IHRoaXMuaXNTYXZpbmcpIHtcclxuICAgICAgaWYgKCF0aGlzLmlzU2F2aW5nKSB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb24ud2FybignJywgJ0zDvHRmZW4gdMO8bSBhbGFubGFyxLEgZG9sZHVydW4hJywge1xyXG4gICAgICAgICAgaGlkZVllc0J0bjogdHJ1ZSxcclxuICAgICAgICAgIGNhbmNlbFRleHQ6ICdLYXBhdCcsXHJcbiAgICAgICAgICBkaXNtaXNzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENoZWNrIGlmIGNvbXBsZXRlZCBxdWFudGl0eSB3aWxsIGV4Y2VlZCBwbGFubmVkIHF1YW50aXR5XHJcbiAgICBjb25zdCByZW1haW5pbmdRdHkgPSB0aGlzLndvcmtPcmRlckluZm8ucGxhbm5lZFF0eSAtIHRoaXMud29ya09yZGVySW5mby5jbXBsdFF0eTtcclxuICAgIGlmICh0aGlzLnRvcGxhbU1pa3RhciA+IHJlbWFpbmluZ1F0eSkge1xyXG4gICAgICB0aGlzLmNvbmZpcm1hdGlvbi53YXJuKCcnLCBgR2lyaWxlbiBtaWt0YXIgKCR7dGhpcy50b3BsYW1NaWt0YXJ9KSBrYWxhbiBtaWt0YXLEsSAoJHtyZW1haW5pbmdRdHl9KSBhxZ/EsXlvciFgLCB7XHJcbiAgICAgICAgaGlkZVllc0J0bjogdHJ1ZSxcclxuICAgICAgICBjYW5jZWxUZXh0OiAnS2FwYXQnLFxyXG4gICAgICAgIGRpc21pc3NpYmxlOiBmYWxzZSxcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzYXZlRGF0YSA9IHtcclxuICAgICAgZG9jRW50cnk6IHRoaXMuaXNFbXJpTm8sXHJcbiAgICAgIHBhbGxldFR5cGU6IHRoaXMucGFsZXRUaXBpLFxyXG4gICAgICBrb2xpQ291bnQ6IHRoaXMucGFsZXRUaXBpID09PSAnS0lTTUknID8gdGhpcy5rb2xpQWRldCA6IG51bGwsXHJcbiAgICAgIHRvdGFsUXVhbnRpdHk6IHRoaXMudG9wbGFtTWlrdGFyLFxyXG4gICAgICB3YXJlaG91c2VDb2RlOiB0aGlzLndvcmtPcmRlckluZm8ud2FyZWhvdXNlLFxyXG4gICAgICBiYXRjaE51bWJlcjogJycsIC8vIEJhdGNoIG51bWJlciB3aWxsIGJlIGdlbmVyYXRlZCBieSBTQVBcclxuICAgICAgY29tcG9uZW50c1RvQ29uc3VtZTogdGhpcy5wcmVwYXJlQ29tcG9uZW50c1RvQ29uc3VtZSgpXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuaXNTYXZpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5zZXJ2aWNlLmNyZWF0ZVJlY2VpcHQoc2F2ZURhdGEpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IHJlc3BvbnNlID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2U/LmlzU3VjY2Vzc2Z1bCkge1xyXG4gICAgICAgICAgdGhpcy5jb25maXJtYXRpb24uc3VjY2VzcygnJywgJ8OccmV0aW1kZW4gZ2lyacWfIGJhxZ9hcsSxeWxhIGdlcsOnZWtsZcWfdGlyaWxkaSEnLCB7XHJcbiAgICAgICAgICAgIGhpZGVZZXNCdG46IHRydWUsXHJcbiAgICAgICAgICAgIGNhbmNlbFRleHQ6ICdLYXBhdCcsXHJcbiAgICAgICAgICAgIGRpc21pc3NpYmxlOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5jbGVhckFsbCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlzU2F2aW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IGUgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNTYXZpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcmVwYXJlQ29tcG9uZW50c1RvQ29uc3VtZSgpOiBhbnlbXSB7XHJcbiAgICBpZiAoIXRoaXMud29ya09yZGVySW5mbyB8fCAhdGhpcy53b3JrT3JkZXJJbmZvLmxpbmVzKSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjb21wb25lbnRzID0gW107XHJcbiAgICBjb25zdCBpdGVtQ29kZSA9IHRoaXMud29ya09yZGVySW5mby5pdGVtQ29kZTtcclxuXHJcbiAgICAvLyBEZXRlcm1pbmUgaWYgdGhpcyBpcyBZTSBvciAxNTEqIHByb2R1Y3RcclxuICAgIGNvbnN0IGlzWU0gPSBpdGVtQ29kZS5zdGFydHNXaXRoKCdZTScpO1xyXG4gICAgY29uc3QgaXMxNTEgPSBpdGVtQ29kZS5zdGFydHNXaXRoKCcxNTEnKTtcclxuXHJcbiAgICAvLyBHZXQgY29udHJvbGxlZCBsaW5lcyAoWU0vMTUxKiBpdGVtcyBtYXJrZWQgd2l0aCBVX0tvbnRyb2w9J0UnKVxyXG4gICAgY29uc3QgY29udHJvbGxlZExpbmVzID0gdGhpcy53b3JrT3JkZXJJbmZvLmxpbmVzLmZpbHRlcihsaW5lID0+IFxyXG4gICAgICBsaW5lLmlzQ29udHJvbGxlZCAmJiBsaW5lLmJhdGNoTnVtYmVyXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEZvciBZTS8xNTEqIHByb2R1Y3RzLCBjb25zdW1lIGJ5IGxvdCBmcm9tIGNvbnRyb2wgc2NyZWVuXHJcbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgY29udHJvbGxlZExpbmVzKSB7XHJcbiAgICAgICAgY29tcG9uZW50cy5wdXNoKHtcclxuICAgICAgICAgIGl0ZW1Db2RlOiBsaW5lLml0ZW1Db2RlLFxyXG4gICAgICAgICAgcXVhbnRpdHk6IGxpbmUuaXNzdWVkUXR5LFxyXG4gICAgICAgICAgd2FyZWhvdXNlQ29kZTogbGluZS53YXJlaG91c2UsXHJcbiAgICAgICAgICBiYXRjaE51bWJlcjogbGluZS5iYXRjaE51bWJlcixcclxuICAgICAgICAgIGJhc2VMaW5lOiBsaW5lLmxpbmVOdW1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBGb3Igb3RoZXIgY29tcG9uZW50cywgdXNlIFwiVGV5aXQgc29ucmFzxLEgb3RvbWF0aWsgw6dla21lXCIgbG9naWNcclxuICAgIC8vIChUaGlzIHdvdWxkIGJlIGhhbmRsZWQgYnkgdGhlIGJhY2tlbmQgd2l0aCBGSUZPIGZvciBiYXRjaC9zZXJpYWwgaXRlbXMpXHJcblxyXG4gICAgcmV0dXJuIGNvbXBvbmVudHM7XHJcbiAgfVxyXG5cclxuICBjbGVhckFsbCgpIHtcclxuICAgIHRoaXMuaXNXb3JrT3JkZXJMb2FkZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuaXNFbXJpTm8gPSBudWxsO1xyXG4gICAgdGhpcy53b3JrT3JkZXJJbmZvID0gbnVsbDtcclxuICAgIHRoaXMucGFsZXRUaXBpID0gJ1RBTSc7XHJcbiAgICB0aGlzLmtvbGlBZGV0ID0gbnVsbDtcclxuICAgIHRoaXMudG9wbGFtTWlrdGFyID0gMDtcclxuICAgIHRoaXMuaXNTYXZpbmcgPSBmYWxzZTtcclxuICAgIHRoaXMuZm9jdXNPbklzRW1yaU5vKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNTYXZlQnV0dG9uRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNFbXJpTm8gfHwgXHJcbiAgICAgICAgICAgIXRoaXMud29ya09yZGVySW5mbyB8fCBcclxuICAgICAgICAgICB0aGlzLnRvcGxhbU1pa3RhciA8PSAwIHx8XHJcbiAgICAgICAgICAgKHRoaXMucGFsZXRUaXBpID09PSAnS0lTTUknICYmICghdGhpcy5rb2xpQWRldCB8fCB0aGlzLmtvbGlBZGV0IDw9IDApKSB8fFxyXG4gICAgICAgICAgIHRoaXMuaXNTYXZpbmc7XHJcbiAgfVxyXG5cclxuICBmb2N1c09uSXNFbXJpTm8oKSB7XHJcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm5tYkJveElzRW1yaU5vPy5pbnN0YW5jZS5mb2N1cygpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGFicC1wYWdlIFticmVhZGNydW1iXT1cImZhbHNlXCI+XHJcbiAgPGFicC1wYWdlLXRvb2xiYXItY29udGFpbmVyIGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgIDxoMyBjbGFzcz1cInBhZ2UtdGl0bGVcIj5cclxuICAgICAgICDDnHJldGltZGVuIEdpcmnFn1xyXG4gICAgICA8L2gzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IHRleHQtbGctZW5kIHB0LTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc3VjY2VzcyBidG4tc21cIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInNhdmUoKVwiIFtkaXNhYmxlZF09XCJpc1NhdmVCdXR0b25EaXNhYmxlZFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1jaGVjayBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgw5xyZXRpbWRlbiBHaXJpxZ8gWWFwXHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi13YXJuaW5nIGJ0bi1zbVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2xlYXJBbGwoKVwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1icm9vbSBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgVGVtaXpsZVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvYWJwLXBhZ2UtdG9vbGJhci1jb250YWluZXI+XHJcbiAgXHJcbiAgPGRpdiBjbGFzcz1cImNhcmQgbXQtMlwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiIHN0eWxlPVwiaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjQxcHgpOyBvdmVyZmxvdzogYXV0bztcIj5cclxuICAgICAgPCEtLSBXb3JrIE9yZGVyIElucHV0IC0tPlxyXG4gICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjtcIj5cclxuICAgICAgICA8ZHgtbnVtYmVyLWJveCAjaXNFbXJpTm9SZWYgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZS0xXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDoxMDAlO1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLEsMWfIEVtcmkgTm9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFsodmFsdWUpXT1cImlzRW1yaU5vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiZ2V0UHJvZHVjdGlvbk9yZGVyKClcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAob25FbnRlcktleSk9XCJnZXRQcm9kdWN0aW9uT3JkZXIoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzV29ya09yZGVyTG9hZGVkXCI+XHJcbiAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgIDxkeC1idXR0b24gc3R5bGU9XCJtYXJnaW4tdG9wOiA3LjVweDtcIiBcclxuICAgICAgICAgICAgICAgICAgIGljb249XCJzZWFyY2hcIiBcclxuICAgICAgICAgICAgICAgICAgIHR5cGU9XCJkZWZhdWx0XCIgXHJcbiAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJnZXRQcm9kdWN0aW9uT3JkZXIoKVwiXHJcbiAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNXb3JrT3JkZXJMb2FkZWRcIj5cclxuICAgICAgICA8L2R4LWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tIFdvcmsgT3JkZXIgSW5mb3JtYXRpb24gLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0zXCIgKm5nSWY9XCJpc1dvcmtPcmRlckxvYWRlZCAmJiB3b3JrT3JkZXJJbmZvXCI+XHJcbiAgICAgICAgPCEtLSBQcm9kdWN0IEluZm8gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxkeC10ZXh0LWJveCBcclxuICAgICAgICAgICAgICBsYWJlbD1cIsOccsO8biBLb2R1XCIgXHJcbiAgICAgICAgICAgICAgWyh2YWx1ZSldPVwid29ya09yZGVySW5mby5pdGVtQ29kZVwiIFxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtdGV4dC1ib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtdGV4dC1ib3ggXHJcbiAgICAgICAgICAgICAgbGFiZWw9XCLDnHLDvG4gQWTEsVwiIFxyXG4gICAgICAgICAgICAgIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8uaXRlbU5hbWVcIiBcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICA8L2R4LXRleHQtYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94IFxyXG4gICAgICAgICAgICAgIGxhYmVsPVwiUGxhbmxhbmFuIE1pa3RhclwiIFxyXG4gICAgICAgICAgICAgIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8ucGxhbm5lZFF0eVwiIFxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtbnVtYmVyLWJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94IFxyXG4gICAgICAgICAgICAgIGxhYmVsPVwiVGFtYW1sYW5hbiBNaWt0YXJcIiBcclxuICAgICAgICAgICAgICBbKHZhbHVlKV09XCJ3b3JrT3JkZXJJbmZvLmNtcGx0UXR5XCIgXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj5cclxuICAgICAgICAgICAgPGR4LXRleHQtYm94IFxyXG4gICAgICAgICAgICAgIGxhYmVsPVwiRGVwb1wiIFxyXG4gICAgICAgICAgICAgIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8ud2FyZWhvdXNlXCIgXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC10ZXh0LWJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIFBhbGxldCBUeXBlIFNlbGVjdGlvbiAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgPGR4LXJhZGlvLWdyb3VwICNwYWxldFRpcGlSZWZcclxuICAgICAgICAgICAgICBbaXRlbXNdPVwicGFsZXRUaXBsZXJpXCJcclxuICAgICAgICAgICAgICBsYXlvdXQ9XCJob3Jpem9udGFsXCJcclxuICAgICAgICAgICAgICBbKHZhbHVlKV09XCJwYWxldFRpcGlcIlxyXG4gICAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJvblBhbGV0VGlwaUNoYW5nZSgpXCI+XHJcbiAgICAgICAgICAgIDwvZHgtcmFkaW8tZ3JvdXA+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBLb2xpIENvdW50IGZvciBLSVNNSSBQYWxsZXQgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0yXCIgKm5nSWY9XCJwYWxldFRpcGkgPT09ICdLSVNNSSdcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCAja29saUFkZXRSZWZcclxuICAgICAgICAgICAgICBsYWJlbD1cIktvbGkgQWRlZGlcIlxyXG4gICAgICAgICAgICAgIFsodmFsdWUpXT1cImtvbGlBZGV0XCJcclxuICAgICAgICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwib25Lb2xpQWRldENoYW5nZSgpXCJcclxuICAgICAgICAgICAgICBbbWluXT1cIjFcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gQ2FsY3VsYXRlZCBUb3RhbCBRdWFudGl0eSAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCBcclxuICAgICAgICAgICAgICBsYWJlbD1cIlRvcGxhbSBNaWt0YXIgKEFkZXQpXCJcclxuICAgICAgICAgICAgICBbKHZhbHVlKV09XCJ0b3BsYW1NaWt0YXJcIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbc3R5bGluZ01vZGVdPVwiJ2ZpbGxlZCdcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTZcIj5cclxuICAgICAgICAgICAgPGR4LW51bWJlci1ib3ggXHJcbiAgICAgICAgICAgICAgbGFiZWw9XCJLb2xpIMSww6dpIEFkZXRcIlxyXG4gICAgICAgICAgICAgIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8uc2FsUGFja1VuXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICA8L2R4LW51bWJlci1ib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBRdWFsaXR5IFN0YXR1cyBJbmZvIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMlwiICpuZ0lmPVwid29ya09yZGVySW5mby51X0thbGl0ZUR1cnVtdVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtaW5mb1wiIHJvbGU9XCJhbGVydFwiPlxyXG4gICAgICAgICAgICAgIDxzdHJvbmc+S2FsaXRlIER1cnVtdTo8L3N0cm9uZz4ge3sgd29ya09yZGVySW5mby51X0thbGl0ZUR1cnVtdSB9fVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2FicC1wYWdlPlxyXG4iXX0=
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvY29tcG9uZW50cy9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cmV0aW0teW9uZXRpbWkvc3JjL2xpYi9jb21wb25lbnRzL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFlN0QsTUFBTSxPQUFPLHdDQUF3QztJQWlCbkQsWUFDVSxPQUErQyxFQUMvQyxZQUFpQyxFQUNqQyxNQUFjO1FBRmQsWUFBTyxHQUFQLE9BQU8sQ0FBd0M7UUFDL0MsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFkeEIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNuQyxrQkFBYSxHQUF3QixJQUFJLENBQUM7UUFFMUMsa0JBQWtCO1FBQ2xCLGNBQVMsR0FBVyxLQUFLLENBQUMsQ0FBQyxlQUFlO1FBQzFDLGlCQUFZLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEMsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4QixpQkFBWSxHQUFXLENBQUMsQ0FBQztRQWdNekIsaUJBQVksR0FBRyxD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O2dCQUNkLElBQUksQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNSLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7cUlBalBVLHdDQUF3Qzt5SEFBeEMsd0NBQXdDLCtYQ2ZyRCwrM01BcUlXOzJGRHRIRSx3Q0FBd0M7a0JBTHBELFNBQVM7K0JBQ0UseUNBQXlDO29MQUtOLGNBQWM7c0JBQTFELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRyxjQUFjO3NCQUEzRCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0MsY0FBYztzQkFBMUQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEeE51bWJlckJveENvbXBvbmVudCwgRHhSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyJztcclxuaW1wb3J0IHtcclxuICBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uU2VydmljZSxcclxuICBHZXRXb3JrT3JkZXJJbmZvRHRvLFxyXG4gIFdvcmtPcmRlckxpbmVEdG8sXHJcbiAgUmVjZWlwdEhpc3RvcnlJdGVtRHRvXHJcbn0gZnJvbSAnLi4vLi4vaGl0LXByb3h5L2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uY29tcG9uZW50LmNzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvbkNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnaXNFbXJpTm9SZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgbm1iQm94SXNFbXJpTm86IER4TnVtYmVyQm94Q29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3BhbGV0VGlwaVJlZicsIHsgc3RhdGljOiBmYWxzZSB9KSByYWRpb1BhbGV0VGlwaTogRHhSYWRpb0dyb3VwQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2tvbGlBZGV0UmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pIG5tYkJveEtvbGlBZGV0OiBEeE51bWJlckJveENvbXBvbmVudDtcclxuXHJcbiAgaXNFbXJpTm86IG51bWJlcjtcclxuICBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1NhdmluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzV29ya09yZGVyTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgd29ya09yZGVySW5mbzogR2V0V29ya09yZGVySW5mb0R0byA9IG51bGw7XHJcbiAgXHJcbiAgLy8gUGFsbGV0IGNvbnRyb2xzXHJcbiAgcGFsZXRUaXBpOiBzdHJpbmcgPSAnVEFNJzsgLy8gVEFNIG9yIEtJU01JXHJcbiAgcGFsZXRUaXBsZXJpID0gWydUQU0nLCAnS0lTTUknXTtcclxuICBrb2xpQWRldDogbnVtYmVyID0gbnVsbDtcclxuICB0b3BsYW1NaWt0YXI6IG51bWJlciA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICAvLyBJbml0aWFsaXplXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmZvY3VzT25Jc0VtcmlObygpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0UHJvZHVjdGlvbk9yZGVyKCkge1xyXG4gICAgaWYgKCF0aGlzLmlzRW1yaU5vKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmlzV29ya09yZGVyTG9hZGVkID0gZmFsc2U7XHJcblxyXG4gICAgdGhpcy5zZXJ2aWNlLmdldFdvcmtPcmRlckluZm8odGhpcy5pc0VtcmlObykuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogcmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZT8uaXNTdWNjZXNzZnVsICYmIHJlc3BvbnNlLml0ZW1zKSB7XHJcbiAgICAgICAgICB0aGlzLndvcmtPcmRlckluZm8gPSByZXNwb25zZS5pdGVtcztcclxuICAgICAgICAgIHRoaXMuaXNXb3JrT3JkZXJMb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGVmYXVsdCB2YWx1ZXMgZm9yIFRBTSBwYWxsZXRcclxuICAgICAgICAgIHRoaXMuY2FsY3VsYXRlVG90YWxRdWFudGl0eSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogZSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1dvcmtPcmRlckxvYWRlZCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb24uc3RhdHVzJC5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNsZWFyQWxsKCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblBhbGV0VGlwaUNoYW5nZSgpIHtcclxuICAgIHRoaXMuY2FsY3VsYXRlVG90YWxRdWFudGl0eSgpO1xyXG4gICAgXHJcbiAgICBpZiAodGhpcy5wYWxldFRpcGkgPT09ICdLSVNNSScpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ubWJCb3hLb2xpQWRldD8uaW5zdGFuY2UuZm9jdXMoKTtcclxuICAgICAgfSwgMTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uS29saUFkZXRDaGFuZ2UoKSB7XHJcbiAgICB0aGlzLmNhbGN1bGF0ZVRvdGFsUXVhbnRpdHkoKTtcclxuICB9XHJcblxyXG4gIGNhbGN1bGF0ZVRvdGFsUXVhbnRpdHkoKSB7XHJcbiAgICBpZiAoIXRoaXMud29ya09yZGVySW5mbykge1xyXG4gICAgICB0aGlzLnRvcGxhbU1pa3RhciA9IDA7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzYWxQYWNrVW4gPSB0aGlzLndvcmtPcmRlckluZm8uc2FsUGFja1VuIHx8IDA7XHJcbiAgICBkZWJ1Z2dlcjtcclxuICAgIGlmICh0aGlzLnBhbGV0VGlwaSA9PT0gJ1RBTScpIHtcclxuICAgICAgLy8gVGFtIFBhbGV0OiBQYWxsZXQgaGVpZ2h0IMOXIFBpZWNlcyBwZXIgYm94XHJcbiAgICAgIGNvbnN0IHBhbGV0WXVrc2VrbGlrID0gdGhpcy53b3JrT3JkZXJJbmZvLnVfREtwYWxldHl1c2VrbGlrIHx8IDA7XHJcbiAgICAgIHRoaXMudG9wbGFtTWlrdGFyID0gcGFsZXRZdWtzZWtsaWsgKiBzYWxQYWNrVW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBLxLFzbWkgUGFsZXQ6IEtvbGkgY291bnQgw5cgUGllY2VzIHBlciBib3hcclxuICAgICAgY29uc3Qga29saUFkZXQgPSB0aGlzLmtvbGlBZGV0IHx8IDA7XHJcbiAgICAgIGNvbnN0IGtpc21pTWlrdGFyID0ga29saUFkZXQgKiBzYWxQYWNrVW47XHJcbiAgICAgIFxyXG4gICAgICAvLyBDYWxjdWxhdGUgVEFNIHBhbGxldCBxdWFudGl0eSBmb3IgY29tcGFyaXNvblxyXG4gICAgICBjb25zdCBwYWxldFl1a3Nla2xpayA9IHRoaXMud29ya09yZGVySW5mby51X0RLcGFsZXR5dXNla2xpayB8fCAwO1xyXG4gICAgICBjb25zdCB0YW1QYWxldE1pa3RhciA9IHBhbGV0WXVrc2VrbGlrICogc2FsUGFja1VuO1xyXG4gICAgICBcclxuICAgICAgLy8gS0lTTUkgcXVhbnRpdHkgc2hvdWxkIG5vdCBleGNlZWQgVEFNIHBhbGxldCBxdWFudGl0eVxyXG4gICAgICBpZiAoa2lzbWlNaWt0YXIgPiB0YW1QYWxldE1pa3Rhcikge1xyXG4gICAgICAgIHRoaXMudG9wbGFtTWlrdGFyID0gdGFtUGFsZXRNaWt0YXI7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLy8gUmVzZXQgdG8gbWF4aW11bSBhbGxvd2VkIHZhbHVlIGFzeW5jaHJvbm91c2x5IHRvIGF2b2lkIGNoYW5nZSBkZXRlY3Rpb24gbG9vcFxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5rb2xpQWRldCA9IHBhbGV0WXVrc2VrbGlrO1xyXG4gICAgICAgIH0sIDApO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMuY29uZmlybWF0aW9uLndhcm4oJycsIGBLb2xpIGFkZWRpICR7cGFsZXRZdWtzZWtsaWt9J2kgZ2XDp2VtZXohIChUQU0gcGFsZXQgbWlrdGFyxLE6ICR7dGFtUGFsZXRNaWt0YXJ9KWAsIHtcclxuICAgICAgICAgIGhpZGVZZXNCdG46IHRydWUsXHJcbiAgICAgICAgICBjYW5jZWxUZXh0OiAnS2FwYXQnLFxyXG4gICAgICAgICAgZGlzbWlzc2libGU6IGZhbHNlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudG9wbGFtTWlrdGFyID0ga2lzbWlNaWt0YXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIHNhdmUoKSB7XHJcbiAgICBkZWJ1Z2dlcjtcclxuICAgIGlmICghdGhpcy5pc0VtcmlObyB8fCAhdGhpcy53b3JrT3JkZXJJbmZvIHx8IHRoaXMudG9wbGFtTWlrdGFyIDw9IDAgfHwgdGhpcy5pc1NhdmluZykge1xyXG4gICAgICBpZiAoIXRoaXMuaXNTYXZpbmcpIHtcclxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi53YXJuKCcnLCAnTMO8dGZlbiB0w7xtIGFsYW5sYXLEsSBkb2xkdXJ1biEnLCB7XHJcbiAgICAgICAgICBoaWRlWWVzQnRuOiB0cnVlLFxyXG4gICAgICAgICAgY2FuY2VsVGV4dDogJ0thcGF0JyxcclxuICAgICAgICAgIGRpc21pc3NpYmxlOiBmYWxzZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2hlY2sgaWYgY29tcGxldGVkIHF1YW50aXR5IHdpbGwgZXhjZWVkIHBsYW5uZWQgcXVhbnRpdHlcclxuICAgIGNvbnN0IHJlbWFpbmluZ1F0eSA9IHRoaXMud29ya09yZGVySW5mby5wbGFubmVkUXR5IC0gdGhpcy53b3JrT3JkZXJJbmZvLmNtcGx0UXR5O1xyXG4gICAgaWYgKHRoaXMudG9wbGFtTWlrdGFyID4gcmVtYWluaW5nUXR5KSB7XHJcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uLndhcm4oJycsIGBHaXJpbGVuIG1pa3RhciAoJHt0aGlzLnRvcGxhbU1pa3Rhcn0pIGthbGFuIG1pa3RhcsSxICgke3JlbWFpbmluZ1F0eX0pIGHFn8SxeW9yIWAsIHtcclxuICAgICAgICBoaWRlWWVzQnRuOiB0cnVlLFxyXG4gICAgICAgIGNhbmNlbFRleHQ6ICdLYXBhdCcsXHJcbiAgICAgICAgZGlzbWlzc2libGU6IGZhbHNlLFxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHNhdmVEYXRhID0ge1xyXG4gICAgICBkb2NFbnRyeTogdGhpcy5pc0VtcmlObyxcclxuICAgICAgcGFsbGV0VHlwZTogdGhpcy5wYWxldFRpcGksXHJcbiAgICAgIGtvbGlDb3VudDogdGhpcy5wYWxldFRpcGkgPT09ICdLSVNNSScgPyB0aGlzLmtvbGlBZGV0IDogbnVsbCxcclxuICAgICAgdG90YWxRdWFudGl0eTogdGhpcy50b3BsYW1NaWt0YXIsXHJcbiAgICAgIHdhcmVob3VzZUNvZGU6IHRoaXMud29ya09yZGVySW5mby53YXJlaG91c2UsXHJcbiAgICAgIGJhdGNoTnVtYmVyOiAnJywgLy8gQmF0Y2ggbnVtYmVyIHdpbGwgYmUgZ2VuZXJhdGVkIGJ5IFNBUFxyXG4gICAgICBjb21wb25lbnRzVG9Db25zdW1lOiB0aGlzLnByZXBhcmVDb21wb25lbnRzVG9Db25zdW1lKClcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5pc1NhdmluZyA9IHRydWU7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnNlcnZpY2UuY3JlYXRlUmVjZWlwdChzYXZlRGF0YSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogcmVzcG9uc2UgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZT8uaXNTdWNjZXNzZnVsKSB7XHJcbiAgICAgICAgICB0aGlzLmNvbmZpcm1hdGlvbi5zdWNjZXNzKCcnLCAnw5xyZXRpbWRlbiBnaXJpxZ8gYmHFn2FyxLF5bGEgZ2Vyw6dla2xlxZ90aXJpbGRpIScsIHtcclxuICAgICAgICAgICAgaGlkZVllc0J0bjogdHJ1ZSxcclxuICAgICAgICAgICAgY2FuY2VsVGV4dDogJ0thcGF0JyxcclxuICAgICAgICAgICAgZGlzbWlzc2libGU6IGZhbHNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmNsZWFyQWxsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaXNTYXZpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogZSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1NhdmluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByZXBhcmVDb21wb25lbnRzVG9Db25zdW1lKCk6IGFueVtdIHtcclxuICAgIGlmICghdGhpcy53b3JrT3JkZXJJbmZvIHx8ICF0aGlzLndvcmtPcmRlckluZm8ubGluZXMpIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNvbXBvbmVudHMgPSBbXTtcclxuICAgIGNvbnN0IGl0ZW1Db2RlID0gdGhpcy53b3JrT3JkZXJJbmZvLml0ZW1Db2RlO1xyXG5cclxuICAgIC8vIERldGVybWluZSBpZiB0aGlzIGlzIFlNIG9yIDE1MSogcHJvZHVjdFxyXG4gICAgY29uc3QgaXNZTSA9IGl0ZW1Db2RlLnN0YXJ0c1dpdGgoJ1lNJyk7XHJcbiAgICBjb25zdCBpczE1MSA9IGl0ZW1Db2RlLnN0YXJ0c1dpdGgoJzE1MScpO1xyXG5cclxuICAgIC8vIEdldCBjb250cm9sbGVkIGxpbmVzIChZTS8xNTEqIGl0ZW1zIG1hcmtlZCB3aXRoIFVfS29udHJvbD0nRScpXHJcbiAgICBjb25zdCBjb250cm9sbGVkTGluZXMgPSB0aGlzLndvcmtPcmRlckluZm8ubGluZXMuZmlsdGVyKGxpbmUgPT4gXHJcbiAgICAgIGxpbmUuaXNDb250cm9sbGVkICYmIGxpbmUuYmF0Y2hOdW1iZXJcclxuICAgICk7XHJcblxyXG4gICAgLy8gRm9yIFlNLzE1MSogcHJvZHVjdHMsIGNvbnN1bWUgYnkgbG90IGZyb20gY29udHJvbCBzY3JlZW5cclxuICAgIGZvciAoY29uc3QgbGluZSBvZiBjb250cm9sbGVkTGluZXMpIHtcclxuICAgICAgICBjb21wb25lbnRzLnB1c2goe1xyXG4gICAgICAgICAgaXRlbUNvZGU6IGxpbmUuaXRlbUNvZGUsXHJcbiAgICAgICAgICBxdWFudGl0eTogbGluZS5pc3N1ZWRRdHksXHJcbiAgICAgICAgICB3YXJlaG91c2VDb2RlOiBsaW5lLndhcmVob3VzZSxcclxuICAgICAgICAgIGJhdGNoTnVtYmVyOiBsaW5lLmJhdGNoTnVtYmVyLFxyXG4gICAgICAgICAgYmFzZUxpbmU6IGxpbmUubGluZU51bVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEZvciBvdGhlciBjb21wb25lbnRzLCB1c2UgXCJUZXlpdCBzb25yYXPEsSBvdG9tYXRpayDDp2VrbWVcIiBsb2dpY1xyXG4gICAgLy8gKFRoaXMgd291bGQgYmUgaGFuZGxlZCBieSB0aGUgYmFja2VuZCB3aXRoIEZJRk8gZm9yIGJhdGNoL3NlcmlhbCBpdGVtcylcclxuXHJcbiAgICByZXR1cm4gY29tcG9uZW50cztcclxuICB9XHJcblxyXG4gIGNhbGNSb3dJbmRleCA9IChyb3c6IFJlY2VpcHRIaXN0b3J5SXRlbUR0byk6IG51bWJlciA9PlxyXG4gICAgKHRoaXMud29ya09yZGVySW5mbz8ucmVjZWlwdEhpc3Rvcnk/LmluZGV4T2Yocm93KSA/PyAtMSkgKyAxO1xyXG5cclxuICBjYWxjRG9jU3RhdHVzID0gKHJvdzogUmVjZWlwdEhpc3RvcnlJdGVtRHRvKTogc3RyaW5nID0+XHJcbiAgICByb3cuZG9jU3RhdHVzID09PSAnQycgPyAnVGFtYW1sYW5kxLEnIDogJ0Jla2xlbWVkZSc7XHJcblxyXG4gIGZvcm1hdE51bWJlciA9ICh2YWx1ZTogbnVtYmVyKSA9PiB2YWx1ZT8udG9Mb2NhbGVTdHJpbmcoJ3RyLVRSJykgPz8gJyc7XHJcblxyXG5cclxuICBjbGVhckFsbCgpIHtcclxuICAgIHRoaXMuaXNXb3JrT3JkZXJMb2FkZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuaXNFbXJpTm8gPSBudWxsO1xyXG4gICAgdGhpcy53b3JrT3JkZXJJbmZvID0gbnVsbDtcclxuICAgIHRoaXMucGFsZXRUaXBpID0gJ1RBTSc7XHJcbiAgICB0aGlzLmtvbGlBZGV0ID0gbnVsbDtcclxuICAgIHRoaXMudG9wbGFtTWlrdGFyID0gMDtcclxuICAgIHRoaXMuaXNTYXZpbmcgPSBmYWxzZTtcclxuICAgIHRoaXMuZm9jdXNPbklzRW1yaU5vKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNTYXZlQnV0dG9uRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNFbXJpTm8gfHwgXHJcbiAgICAgICAgICAgIXRoaXMud29ya09yZGVySW5mbyB8fCBcclxuICAgICAgICAgICB0aGlzLnRvcGxhbU1pa3RhciA8PSAwIHx8XHJcbiAgICAgICAgICAgKHRoaXMucGFsZXRUaXBpID09PSAnS0lTTUknICYmICghdGhpcy5rb2xpQWRldCB8fCB0aGlzLmtvbGlBZGV0IDw9IDApKSB8fFxyXG4gICAgICAgICAgIHRoaXMuaXNTYXZpbmc7XHJcbiAgfVxyXG5cclxuICBmb2N1c09uSXNFbXJpTm8oKSB7XHJcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLm5tYkJveElzRW1yaU5vPy5pbnN0YW5jZS5mb2N1cygpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGFicC1wYWdlIFticmVhZGNydW1iXT1cImZhbHNlXCI+XHJcbiAgPGFicC1wYWdlLXRvb2xiYXItY29udGFpbmVyIGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgIDxoMyBjbGFzcz1cInBhZ2UtdGl0bGVcIj5cclxuICAgICAgICDDnHJldGltZGVuIEdpcmnFn1xyXG4gICAgICA8L2gzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IHRleHQtbGctZW5kIHB0LTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc3VjY2VzcyBidG4tc21cIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInNhdmUoKVwiIFtkaXNhYmxlZF09XCJpc1NhdmVCdXR0b25EaXNhYmxlZFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1jaGVjayBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgw5xyZXRpbWRlbiBHaXJpxZ8gWWFwXHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi13YXJuaW5nIGJ0bi1zbVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2xlYXJBbGwoKVwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1icm9vbSBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgVGVtaXpsZVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvYWJwLXBhZ2UtdG9vbGJhci1jb250YWluZXI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkIG10LTJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIiBzdHlsZT1cImhlaWdodDogY2FsYygxMDB2aCAtIDI0MXB4KTsgb3ZlcmZsb3c6IGF1dG87XCI+XHJcbiAgICAgIDwhLS0gV29yayBPcmRlciBJbnB1dCAtLT5cclxuICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgPGR4LW51bWJlci1ib3ggI2lzRW1yaU5vUmVmIGNsYXNzPVwibWUtMVwiIHN0eWxlPVwid2lkdGg6MTAwJTtcIiBsYWJlbD1cIsSwxZ8gRW1yaSBOb1wiIFsodmFsdWUpXT1cImlzRW1yaU5vXCJcclxuICAgICAgICAgIChvbkNoYW5nZSk9XCJnZXRQcm9kdWN0aW9uT3JkZXIoKVwiIChvbkVudGVyS2V5KT1cImdldFByb2R1Y3Rpb25PcmRlcigpXCIgW2Rpc2FibGVkXT1cImlzV29ya09yZGVyTG9hZGVkXCI+XHJcbiAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgIDxkeC1idXR0b24gc3R5bGU9XCJtYXJnaW4tdG9wOiA3LjVweDtcIiBpY29uPVwic2VhcmNoXCIgdHlwZT1cImRlZmF1bHRcIiAob25DbGljayk9XCJnZXRQcm9kdWN0aW9uT3JkZXIoKVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNXb3JrT3JkZXJMb2FkZWRcIj5cclxuICAgICAgICA8L2R4LWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tIFdvcmsgT3JkZXIgSW5mb3JtYXRpb24gLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0zXCIgKm5nSWY9XCJpc1dvcmtPcmRlckxvYWRlZCAmJiB3b3JrT3JkZXJJbmZvXCI+XHJcbiAgICAgICAgPCEtLSBQcm9kdWN0IEluZm8gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxkeC10ZXh0LWJveCBsYWJlbD1cIsOccsO8biBLb2R1XCIgWyh2YWx1ZSldPVwid29ya09yZGVySW5mby5pdGVtQ29kZVwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtdGV4dC1ib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtdGV4dC1ib3ggbGFiZWw9XCLDnHLDvG4gQWTEsVwiIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8uaXRlbU5hbWVcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICA8L2R4LXRleHQtYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94IGxhYmVsPVwiUGxhbmxhbmFuIE1pa3RhclwiIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8ucGxhbm5lZFF0eVwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDwvZHgtbnVtYmVyLWJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XHJcbiAgICAgICAgICAgIDxkeC1udW1iZXItYm94IGxhYmVsPVwiVGFtYW1sYW5hbiBNaWt0YXJcIiBbKHZhbHVlKV09XCJ3b3JrT3JkZXJJbmZvLmNtcGx0UXR5XCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIj5cclxuICAgICAgICAgICAgPGR4LXRleHQtYm94IGxhYmVsPVwiRGVwb1wiIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8ud2FyZWhvdXNlXCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC10ZXh0LWJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIFBhbGxldCBUeXBlIFNlbGVjdGlvbiAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgPGR4LXJhZGlvLWdyb3VwICNwYWxldFRpcGlSZWYgW2l0ZW1zXT1cInBhbGV0VGlwbGVyaVwiIGxheW91dD1cImhvcml6b250YWxcIiBbKHZhbHVlKV09XCJwYWxldFRpcGlcIlxyXG4gICAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJvblBhbGV0VGlwaUNoYW5nZSgpXCI+XHJcbiAgICAgICAgICAgIDwvZHgtcmFkaW8tZ3JvdXA+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBLb2xpIENvdW50IGZvciBLSVNNSSBQYWxsZXQgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0yXCIgKm5nSWY9XCJwYWxldFRpcGkgPT09ICdLSVNNSSdcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCAja29saUFkZXRSZWYgbGFiZWw9XCJLb2xpIEFkZWRpXCIgWyh2YWx1ZSldPVwia29saUFkZXRcIiAob25WYWx1ZUNoYW5nZWQpPVwib25Lb2xpQWRldENoYW5nZSgpXCJcclxuICAgICAgICAgICAgICBbbWluXT1cIjFcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gQ2FsY3VsYXRlZCBUb3RhbCBRdWFudGl0eSAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCBsYWJlbD1cIlRvcGxhbSBNaWt0YXIgKEFkZXQpXCIgWyh2YWx1ZSldPVwidG9wbGFtTWlrdGFyXCIgW2Rpc2FibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtzdHlsaW5nTW9kZV09XCInZmlsbGVkJ1wiPlxyXG4gICAgICAgICAgICA8L2R4LW51bWJlci1ib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8ZHgtbnVtYmVyLWJveCBsYWJlbD1cIktvbGkgxLDDp2kgQWRldFwiIFsodmFsdWUpXT1cIndvcmtPcmRlckluZm8uc2FsUGFja1VuXCIgW2Rpc2FibGVkXT1cInRydWVcIj5cclxuICAgICAgICAgICAgPC9keC1udW1iZXItYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gUXVhbGl0eSBTdGF0dXMgSW5mbyAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTJcIiAqbmdJZj1cIndvcmtPcmRlckluZm8udV9LYWxpdGVEdXJ1bXVcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIiByb2xlPVwiYWxlcnRcIj5cclxuICAgICAgICAgICAgICA8c3Ryb25nPkthbGl0ZSBEdXJ1bXU6PC9zdHJvbmc+IHt7IHdvcmtPcmRlckluZm8udV9LYWxpdGVEdXJ1bXUgfX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBSZWNlaXB0IEhpc3RvcnkgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0zXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmdy1zZW1pYm9sZCBtYi0xXCIgc3R5bGU9XCJmb250LXNpemU6IDEzcHg7XCI+XHJcbiAgICAgICAgICAgICAgw5xyZXRpbWRlbiBHaXJpxZ8gSGFyZWtldGxlcmlcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkeC1kYXRhLWdyaWQgW2RhdGFTb3VyY2VdPVwid29ya09yZGVySW5mby5yZWNlaXB0SGlzdG9yeVwiIFtzaG93Qm9yZGVyc109XCJ0cnVlXCIgW2NvbHVtbkF1dG9XaWR0aF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbd29yZFdyYXBFbmFibGVkXT1cImZhbHNlXCIgW3Jvd0FsdGVybmF0aW9uRW5hYmxlZF09XCJ0cnVlXCIgW2hvdmVyU3RhdGVFbmFibGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtub0RhdGFUZXh0XT1cIidIZW7DvHogZ2lyacWfIGhhcmVrZXRpIGJ1bHVubWFtYWt0YWTEsXIuJ1wiIFtoZWlnaHRdPVwiJ2F1dG8nXCI+XHJcbiAgICAgICAgICAgICAgPGR4by1zY3JvbGxpbmcgbW9kZT1cInN0YW5kYXJkXCI+PC9keG8tc2Nyb2xsaW5nPlxyXG4gICAgICAgICAgICAgIDxkeG8tcGFnaW5nIFtlbmFibGVkXT1cImZhbHNlXCI+PC9keG8tcGFnaW5nPlxyXG4gICAgICAgICAgICAgIDxkeGktY29sdW1uIGNhcHRpb249XCIjXCIgbmFtZT1cInJvd051bVwiIFt3aWR0aF09XCI0MFwiIGFsaWdubWVudD1cImNlbnRlclwiIFtjYWxjdWxhdGVDZWxsVmFsdWVdPVwiY2FsY1Jvd0luZGV4XCI+PC9keGktY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cImRvY051bVwiIGNhcHRpb249XCJCZWxnZSBOb1wiIFttaW5XaWR0aF09XCIxMTBcIiBhbGlnbm1lbnQ9XCJjZW50ZXJcIj48L2R4aS1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwicGFja1F1YW50aXR5XCIgY2FwdGlvbj1cIktvbGkgQWRlZGlcIiBkYXRhVHlwZT1cIm51bWJlclwiIFttaW5XaWR0aF09XCI3NVwiIGFsaWdubWVudD1cInJpZ2h0XCI+PC9keGktY29sdW1uPlxyXG4gICAgICAgICAgICAgIDxkeGktY29sdW1uIGRhdGFGaWVsZD1cIndoc05hbWVcIiBjYXB0aW9uPVwiRGVwb1wiIFttaW5XaWR0aF09XCIxMDBcIj48L2R4aS1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwiZG9jU3RhdHVzXCIgY2FwdGlvbj1cIkR1cnVtXCIgW21pbldpZHRoXT1cIjEwNVwiIGFsaWdubWVudD1cImNlbnRlclwiXHJcbiAgICAgICAgICAgICAgICBbY2FsY3VsYXRlQ2VsbFZhbHVlXT1cImNhbGNEb2NTdGF0dXNcIj5cclxuICAgICAgICAgICAgICA8L2R4aS1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGR4aS1jb2x1bW4gZGF0YUZpZWxkPVwidXNlckNvZGVcIiBjYXB0aW9uPVwiS3VsbGFuxLFjxLFcIiBbbWluV2lkdGhdPVwiODBcIiBhbGlnbm1lbnQ9XCJjZW50ZXJcIj48L2R4aS1jb2x1bW4+XHJcbiAgICAgICAgICAgICAgPGR4by1zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgPGR4aS10b3RhbC1pdGVtIGNvbHVtbj1cImRvY051bVwiIHN1bW1hcnlUeXBlPVwiY291bnRcIiBkaXNwbGF5Rm9ybWF0PVwiVG9wbGFtXCI+PC9keGktdG90YWwtaXRlbT5cclxuICAgICAgICAgICAgICAgIDxkeGktdG90YWwtaXRlbSBjb2x1bW49XCJwYWNrUXVhbnRpdHlcIiBzdW1tYXJ5VHlwZT1cInN1bVwiIGRpc3BsYXlGb3JtYXQ9XCJ7MH1cIiBbdmFsdWVGb3JtYXRdPVwiZm9ybWF0TnVtYmVyXCI+PC9keGktdG90YWwtaXRlbT5cclxuICAgICAgICAgICAgICA8L2R4by1zdW1tYXJ5PlxyXG4gICAgICAgICAgICA8L2R4LWRhdGEtZ3JpZD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2FicC1wYWdlPiJdfQ==
@@ -7,7 +7,7 @@ import { CommercialUiModule } from '@volo/abp.commercial.ng.ui';
7
7
  import { PageModule } from '@abp/ng.components/page';
8
8
  import { HitFillingReceiptFromProductionComponent } from './hit-filling-receipt-from-production.component';
9
9
  import { HitFillingReceiptFromProductionRoutingModule } from './hit-filling-receipt-from-production-routing.module';
10
- import { DxButtonModule, DxNumberBoxModule, DxTextBoxModule, DxRadioGroupModule } from 'devextreme-angular';
10
+ import { DxButtonModule, DxDataGridModule, DxNumberBoxModule, DxTextBoxModule, DxRadioGroupModule } from 'devextreme-angular';
11
11
  import * as i0 from "@angular/core";
12
12
  export class HitFillingReceiptFromProductionModule {
13
13
  }
@@ -22,6 +22,7 @@ HitFillingReceiptFromProductionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVers
22
22
  NgbDropdownModule,
23
23
  PageModule,
24
24
  DxButtonModule,
25
+ DxDataGridModule,
25
26
  DxNumberBoxModule,
26
27
  DxTextBoxModule,
27
28
  DxRadioGroupModule] });
@@ -35,6 +36,7 @@ HitFillingReceiptFromProductionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVers
35
36
  NgbDropdownModule,
36
37
  PageModule,
37
38
  DxButtonModule,
39
+ DxDataGridModule,
38
40
  DxNumberBoxModule,
39
41
  DxTextBoxModule,
40
42
  DxRadioGroupModule] });
@@ -53,6 +55,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
53
55
  NgbDropdownModule,
54
56
  PageModule,
55
57
  DxButtonModule,
58
+ DxDataGridModule,
56
59
  DxNumberBoxModule,
57
60
  DxTextBoxModule,
58
61
  DxRadioGroupModule,
@@ -62,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
62
65
  export function loadHitFillingReceiptFromProductionAsChild() {
63
66
  return Promise.resolve(HitFillingReceiptFromProductionModule);
64
67
  }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvY29tcG9uZW50cy9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixHQUNsQixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsd0NBQXdDLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRyxPQUFPLEVBQUUsNENBQTRDLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNwSCxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQW9CNUcsTUFBTSxPQUFPLHFDQUFxQzs7a0lBQXJDLHFDQUFxQzttSUFBckMscUNBQXFDLGlCQWpCakMsd0NBQXdDLGFBRXJELDRDQUE0QztRQUM1QyxVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsVUFBVTtRQUNWLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsZUFBZTtRQUNmLGtCQUFrQjttSUFHVCxxQ0FBcUMsWUFmOUMsNENBQTRDO1FBQzVDLFVBQVU7UUFDVixpQkFBaUI7UUFDakIsa0JBQWtCO1FBQ2xCLHFCQUFxQjtRQUNyQixpQkFBaUI7UUFDakIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixVQUFVO1FBQ1YsY0FBYztRQUNkLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2Ysa0JBQWtCOzJGQUdULHFDQUFxQztrQkFsQmpELFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsd0NBQXdDLENBQUM7b0JBQ3hELE9BQU8sRUFBRTt3QkFDUCw0Q0FBNEM7d0JBQzVDLFVBQVU7d0JBQ1YsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsVUFBVTt3QkFDVixjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixrQkFBa0I7cUJBQ25CO2lCQUNGOztBQUdELE1BQU0sVUFBVSwwQ0FBMEM7SUFDeEQsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7QUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBOZ2JDb2xsYXBzZU1vZHVsZSxcclxuICBOZ2JEYXRlcGlja2VyTW9kdWxlLFxyXG4gIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG59IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQ29tbWVyY2lhbFVpTW9kdWxlIH0gZnJvbSAnQHZvbG8vYWJwLmNvbW1lcmNpYWwubmcudWknO1xyXG5pbXBvcnQgeyBQYWdlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb21wb25lbnRzL3BhZ2UnO1xyXG5pbXBvcnQgeyBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uUm91dGluZ01vZHVsZSB9IGZyb20gJy4vaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24tcm91dGluZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBEeEJ1dHRvbk1vZHVsZSwgRHhOdW1iZXJCb3hNb2R1bGUsIER4VGV4dEJveE1vZHVsZSwgRHhSYWRpb0dyb3VwTW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvbkNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvblJvdXRpbmdNb2R1bGUsXHJcbiAgICBDb3JlTW9kdWxlLFxyXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXHJcbiAgICBDb21tZXJjaWFsVWlNb2R1bGUsXHJcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXHJcbiAgICBOZ2JDb2xsYXBzZU1vZHVsZSxcclxuICAgIE5nYkRhdGVwaWNrZXJNb2R1bGUsXHJcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcclxuICAgIFBhZ2VNb2R1bGUsXHJcbiAgICBEeEJ1dHRvbk1vZHVsZSxcclxuICAgIER4TnVtYmVyQm94TW9kdWxlLFxyXG4gICAgRHhUZXh0Qm94TW9kdWxlLFxyXG4gICAgRHhSYWRpb0dyb3VwTW9kdWxlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uTW9kdWxlIHt9XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25Bc0NoaWxkKCkge1xyXG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvbk1vZHVsZSk7XHJcbn1cclxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXJldGltLXlvbmV0aW1pL3NyYy9saWIvY29tcG9uZW50cy9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixHQUNsQixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsd0NBQXdDLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRyxPQUFPLEVBQUUsNENBQTRDLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNwSCxPQUFPLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQXFCOUgsTUFBTSxPQUFPLHFDQUFxQzs7a0lBQXJDLHFDQUFxQzttSUFBckMscUNBQXFDLGlCQWxCakMsd0NBQXdDLGFBRXJELDRDQUE0QztRQUM1QyxVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsVUFBVTtRQUNWLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixrQkFBa0I7bUlBR1QscUNBQXFDLFlBaEI5Qyw0Q0FBNEM7UUFDNUMsVUFBVTtRQUNWLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLFVBQVU7UUFDVixjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2Ysa0JBQWtCOzJGQUdULHFDQUFxQztrQkFuQmpELFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsd0NBQXdDLENBQUM7b0JBQ3hELE9BQU8sRUFBRTt3QkFDUCw0Q0FBNEM7d0JBQzVDLFVBQVU7d0JBQ1YsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsVUFBVTt3QkFDVixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLGtCQUFrQjtxQkFDbkI7aUJBQ0Y7O0FBR0QsTUFBTSxVQUFVLDBDQUEwQztJQUN4RCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMscUNBQXFDLENBQUMsQ0FBQztBQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIE5nYkNvbGxhcHNlTW9kdWxlLFxyXG4gIE5nYkRhdGVwaWNrZXJNb2R1bGUsXHJcbiAgTmdiRHJvcGRvd25Nb2R1bGUsXHJcbn0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tZXJjaWFsVWlNb2R1bGUgfSBmcm9tICdAdm9sby9hYnAuY29tbWVyY2lhbC5uZy51aSc7XHJcbmltcG9ydCB7IFBhZ2VNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvbXBvbmVudHMvcGFnZSc7XHJcbmltcG9ydCB7IEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2hpdC1maWxsaW5nLXJlY2VpcHQtZnJvbS1wcm9kdWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25Sb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IER4QnV0dG9uTW9kdWxlLCBEeERhdGFHcmlkTW9kdWxlLCBEeE51bWJlckJveE1vZHVsZSwgRHhUZXh0Qm94TW9kdWxlLCBEeFJhZGlvR3JvdXBNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXInO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uUm91dGluZ01vZHVsZSxcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcclxuICAgIENvbW1lcmNpYWxVaU1vZHVsZSxcclxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcclxuICAgIE5nYkNvbGxhcHNlTW9kdWxlLFxyXG4gICAgTmdiRGF0ZXBpY2tlck1vZHVsZSxcclxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG4gICAgUGFnZU1vZHVsZSxcclxuICAgIER4QnV0dG9uTW9kdWxlLFxyXG4gICAgRHhEYXRhR3JpZE1vZHVsZSxcclxuICAgIER4TnVtYmVyQm94TW9kdWxlLFxyXG4gICAgRHhUZXh0Qm94TW9kdWxlLFxyXG4gICAgRHhSYWRpb0dyb3VwTW9kdWxlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRGaWxsaW5nUmVjZWlwdEZyb21Qcm9kdWN0aW9uTW9kdWxlIHt9XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEhpdEZpbGxpbmdSZWNlaXB0RnJvbVByb2R1Y3Rpb25Bc0NoaWxkKCkge1xyXG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvbk1vZHVsZSk7XHJcbn1cclxuIl19
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
25
25
  providedIn: 'root',
26
26
  }]
27
27
  }], ctorParameters: function () { return [{ type: i1.RestService }]; } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VyZXRpbS15b25ldGltaS9zcmMvbGliL2hpdC1wcm94eS9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQWlEM0MsTUFBTSxPQUFPLHNDQUFzQztJQUlqRCxZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUg1QyxZQUFPLEdBQUcsZ0JBQWdCLENBQUM7UUFPM0IscUJBQWdCLEdBQUcsQ0FBQyxRQUFnQixFQUFFLEVBQUUsQ0FDdEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQ3RCO1lBQ0UsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLGVBQWUsUUFBUSxFQUFFO1NBQ3ZELEVBQ0QsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUMxQixDQUFDO1FBRUosa0JBQWEsR0FBRyxDQUFDLEtBQThCLEVBQUUsRUFBRSxDQUNqRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FDdEI7WUFDRSxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsaUJBQWlCO1lBQzlDLElBQUksRUFBRSxLQUFLO1NBQ1osRUFDRCxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQzFCLENBQUM7UUFwQkYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLHNEQUFzRCxDQUFDO0lBQ2pGLENBQUM7O21JQU5VLHNDQUFzQzt1SUFBdEMsc0NBQXNDLGNBRnJDLE1BQU07MkZBRVAsc0NBQXNDO2tCQUhsRCxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXN1bHRCYXNlIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR2V0V29ya09yZGVySW5mb0R0byB7XHJcbiAgZG9jRW50cnk6IG51bWJlcjtcclxuICBpdGVtQ29kZTogc3RyaW5nO1xyXG4gIGl0ZW1OYW1lOiBzdHJpbmc7XHJcbiAgcGxhbm5lZFF0eTogbnVtYmVyO1xyXG4gIGNtcGx0UXR5OiBudW1iZXI7XHJcbiAgd2FyZWhvdXNlOiBzdHJpbmc7XHJcbiAgdV9LYWxpdGVEdXJ1bXU6IHN0cmluZztcclxuICB1X0RLcGFsZXR5dXNla2xpaz86IG51bWJlcjtcclxuICBzYWxQYWNrVW4/OiBudW1iZXI7XHJcbiAgbGluZXM6IFdvcmtPcmRlckxpbmVEdG9bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBXb3JrT3JkZXJMaW5lRHRvIHtcclxuICBsaW5lTnVtOiBudW1iZXI7XHJcbiAgaXRlbUNvZGU6IHN0cmluZztcclxuICBpdGVtTmFtZTogc3RyaW5nO1xyXG4gIHBsYW5uZWRRdHk6IG51bWJlcjtcclxuICBpc3N1ZWRRdHk6IG51bWJlcjtcclxuICB3YXJlaG91c2U6IHN0cmluZztcclxuICBpdGVtVHlwZTogbnVtYmVyO1xyXG4gIGlzQ29udHJvbGxlZDogYm9vbGVhbjtcclxuICBiYXRjaE51bWJlcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUZpbGxpbmdSZWNlaXB0RHRvIHtcclxuICBkb2NFbnRyeTogbnVtYmVyO1xyXG4gIHBhbGxldFR5cGU6IHN0cmluZztcclxuICBrb2xpQ291bnQ/OiBudW1iZXI7XHJcbiAgdG90YWxRdWFudGl0eTogbnVtYmVyO1xyXG4gIHdhcmVob3VzZUNvZGU6IHN0cmluZztcclxuICBiYXRjaE51bWJlcjogc3RyaW5nO1xyXG4gIGNvbXBvbmVudHNUb0NvbnN1bWU6IENvbXBvbmVudENvbnN1bXB0aW9uRHRvW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29tcG9uZW50Q29uc3VtcHRpb25EdG8ge1xyXG4gIGl0ZW1Db2RlOiBzdHJpbmc7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICB3YXJlaG91c2VDb2RlOiBzdHJpbmc7XHJcbiAgYmF0Y2hOdW1iZXI6IHN0cmluZztcclxuICBiYXNlTGluZTogbnVtYmVyO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvblNlcnZpY2Uge1xyXG4gIGFwaU5hbWUgPSAnVXJldGltWW9uZXRpbWknO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSByZXNvdXJjZUVuZHBvaW50OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnJlc291cmNlRW5kcG9pbnQgPSAnL2FwaS91cmV0aW0teW9uZXRpbWkvZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbic7XHJcbiAgfVxyXG5cclxuICBnZXRXb3JrT3JkZXJJbmZvID0gKGRvY0VudHJ5OiBudW1iZXIpID0+XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLnJlcXVlc3Q8YW55LCBSZXN1bHRCYXNlPEdldFdvcmtPcmRlckluZm9EdG8+PihcclxuICAgICAge1xyXG4gICAgICAgIG1ldGhvZDogJ0dFVCcsXHJcbiAgICAgICAgdXJsOiBgJHt0aGlzLnJlc291cmNlRW5kcG9pbnR9L3dvcmstb3JkZXIvJHtkb2NFbnRyeX1gLFxyXG4gICAgICB9LFxyXG4gICAgICB7IGFwaU5hbWU6IHRoaXMuYXBpTmFtZSB9XHJcbiAgICApO1xyXG5cclxuICBjcmVhdGVSZWNlaXB0ID0gKGlucHV0OiBDcmVhdGVGaWxsaW5nUmVjZWlwdER0bykgPT5cclxuICAgIHRoaXMucmVzdFNlcnZpY2UucmVxdWVzdDxhbnksIFJlc3VsdEJhc2U8YW55Pj4oXHJcbiAgICAgIHtcclxuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcclxuICAgICAgICB1cmw6IGAke3RoaXMucmVzb3VyY2VFbmRwb2ludH0vY3JlYXRlLXJlY2VpcHRgLFxyXG4gICAgICAgIGJvZHk6IGlucHV0LFxyXG4gICAgICB9LFxyXG4gICAgICB7IGFwaU5hbWU6IHRoaXMuYXBpTmFtZSB9XHJcbiAgICApO1xyXG59XHJcbiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LWZpbGxpbmctcmVjZWlwdC1mcm9tLXByb2R1Y3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VyZXRpbS15b25ldGltaS9zcmMvbGliL2hpdC1wcm94eS9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi9oaXQtZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQTBEM0MsTUFBTSxPQUFPLHNDQUFzQztJQUlqRCxZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUg1QyxZQUFPLEdBQUcsZ0JBQWdCLENBQUM7UUFPM0IscUJBQWdCLEdBQUcsQ0FBQyxRQUFnQixFQUFFLEVBQUUsQ0FDdEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQ3RCO1lBQ0UsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLGVBQWUsUUFBUSxFQUFFO1NBQ3ZELEVBQ0QsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUMxQixDQUFDO1FBRUosa0JBQWEsR0FBRyxDQUFDLEtBQThCLEVBQUUsRUFBRSxDQUNqRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FDdEI7WUFDRSxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsaUJBQWlCO1lBQzlDLElBQUksRUFBRSxLQUFLO1NBQ1osRUFDRCxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQzFCLENBQUM7UUFwQkYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLHNEQUFzRCxDQUFDO0lBQ2pGLENBQUM7O21JQU5VLHNDQUFzQzt1SUFBdEMsc0NBQXNDLGNBRnJDLE1BQU07MkZBRVAsc0NBQXNDO2tCQUhsRCxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXN1bHRCYXNlIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVjZWlwdEhpc3RvcnlJdGVtRHRvIHtcclxuICBkb2NOdW06IG51bWJlcjtcclxuICBwYWNrUXVhbnRpdHk6IG51bWJlcjtcclxuICB3aHNOYW1lOiBzdHJpbmc7XHJcbiAgZG9jU3RhdHVzOiBzdHJpbmc7XHJcbiAgdXNlckNvZGU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZXRXb3JrT3JkZXJJbmZvRHRvIHtcclxuICBkb2NFbnRyeTogbnVtYmVyO1xyXG4gIGl0ZW1Db2RlOiBzdHJpbmc7XHJcbiAgaXRlbU5hbWU6IHN0cmluZztcclxuICBwbGFubmVkUXR5OiBudW1iZXI7XHJcbiAgY21wbHRRdHk6IG51bWJlcjtcclxuICB3YXJlaG91c2U6IHN0cmluZztcclxuICB1X0thbGl0ZUR1cnVtdTogc3RyaW5nO1xyXG4gIHVfREtwYWxldHl1c2VrbGlrPzogbnVtYmVyO1xyXG4gIHNhbFBhY2tVbj86IG51bWJlcjtcclxuICBsaW5lczogV29ya09yZGVyTGluZUR0b1tdO1xyXG4gIHJlY2VpcHRIaXN0b3J5OiBSZWNlaXB0SGlzdG9yeUl0ZW1EdG9bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBXb3JrT3JkZXJMaW5lRHRvIHtcclxuICBsaW5lTnVtOiBudW1iZXI7XHJcbiAgaXRlbUNvZGU6IHN0cmluZztcclxuICBpdGVtTmFtZTogc3RyaW5nO1xyXG4gIHBsYW5uZWRRdHk6IG51bWJlcjtcclxuICBpc3N1ZWRRdHk6IG51bWJlcjtcclxuICB3YXJlaG91c2U6IHN0cmluZztcclxuICBpdGVtVHlwZTogbnVtYmVyO1xyXG4gIGlzQ29udHJvbGxlZDogYm9vbGVhbjtcclxuICBiYXRjaE51bWJlcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUZpbGxpbmdSZWNlaXB0RHRvIHtcclxuICBkb2NFbnRyeTogbnVtYmVyO1xyXG4gIHBhbGxldFR5cGU6IHN0cmluZztcclxuICBrb2xpQ291bnQ/OiBudW1iZXI7XHJcbiAgdG90YWxRdWFudGl0eTogbnVtYmVyO1xyXG4gIHdhcmVob3VzZUNvZGU6IHN0cmluZztcclxuICBiYXRjaE51bWJlcjogc3RyaW5nO1xyXG4gIGNvbXBvbmVudHNUb0NvbnN1bWU6IENvbXBvbmVudENvbnN1bXB0aW9uRHRvW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29tcG9uZW50Q29uc3VtcHRpb25EdG8ge1xyXG4gIGl0ZW1Db2RlOiBzdHJpbmc7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICB3YXJlaG91c2VDb2RlOiBzdHJpbmc7XHJcbiAgYmF0Y2hOdW1iZXI6IHN0cmluZztcclxuICBiYXNlTGluZTogbnVtYmVyO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSGl0RmlsbGluZ1JlY2VpcHRGcm9tUHJvZHVjdGlvblNlcnZpY2Uge1xyXG4gIGFwaU5hbWUgPSAnVXJldGltWW9uZXRpbWknO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSByZXNvdXJjZUVuZHBvaW50OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnJlc291cmNlRW5kcG9pbnQgPSAnL2FwaS91cmV0aW0teW9uZXRpbWkvZmlsbGluZy1yZWNlaXB0LWZyb20tcHJvZHVjdGlvbic7XHJcbiAgfVxyXG5cclxuICBnZXRXb3JrT3JkZXJJbmZvID0gKGRvY0VudHJ5OiBudW1iZXIpID0+XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLnJlcXVlc3Q8YW55LCBSZXN1bHRCYXNlPEdldFdvcmtPcmRlckluZm9EdG8+PihcclxuICAgICAge1xyXG4gICAgICAgIG1ldGhvZDogJ0dFVCcsXHJcbiAgICAgICAgdXJsOiBgJHt0aGlzLnJlc291cmNlRW5kcG9pbnR9L3dvcmstb3JkZXIvJHtkb2NFbnRyeX1gLFxyXG4gICAgICB9LFxyXG4gICAgICB7IGFwaU5hbWU6IHRoaXMuYXBpTmFtZSB9XHJcbiAgICApO1xyXG5cclxuICBjcmVhdGVSZWNlaXB0ID0gKGlucHV0OiBDcmVhdGVGaWxsaW5nUmVjZWlwdER0bykgPT5cclxuICAgIHRoaXMucmVzdFNlcnZpY2UucmVxdWVzdDxhbnksIFJlc3VsdEJhc2U8YW55Pj4oXHJcbiAgICAgIHtcclxuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcclxuICAgICAgICB1cmw6IGAke3RoaXMucmVzb3VyY2VFbmRwb2ludH0vY3JlYXRlLXJlY2VpcHRgLFxyXG4gICAgICAgIGJvZHk6IGlucHV0LFxyXG4gICAgICB9LFxyXG4gICAgICB7IGFwaU5hbWU6IHRoaXMuYXBpTmFtZSB9XHJcbiAgICApO1xyXG59XHJcbiJdfQ==