@hitsoft/e-donusum 1.0.45 → 1.0.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/config/providers/document-serial-route.provider.d.ts +9 -0
  2. package/esm2020/config/e-donusum-config.module.mjs +4 -2
  3. package/esm2020/config/providers/document-serial-route.provider.mjs +19 -0
  4. package/esm2020/lib/components/hit-inbound-invoices/hit-inbound-invoice.component.mjs +3 -3
  5. package/esm2020/lib/components/hit-paramas-invoices/hit-params-invoice.component.mjs +8 -4
  6. package/esm2020/lib/components/hit-params-dispatches/hit-params-dispatch.component.mjs +8 -4
  7. package/esm2020/lib/despatches/despatch/despatch.module.mjs +1 -1
  8. package/esm2020/lib/document-serials/document-serial/components/document-serial.component.mjs +100 -0
  9. package/esm2020/lib/document-serials/document-serial/document-serial-routing.module.mjs +26 -0
  10. package/esm2020/lib/document-serials/document-serial/document-serial.module.mjs +52 -0
  11. package/esm2020/lib/e-donusum-routing.module.mjs +8 -3
  12. package/esm2020/lib/gib-partner-pk-alls/gib-partner-pk-all/gib-partner-pk-all.module.mjs +1 -1
  13. package/esm2020/lib/gib-partner-pks/gib-partner-pk/gib-partner-pk.module.mjs +1 -1
  14. package/esm2020/lib/hit-proxy/hit-params-dispatches/hit-params-dispatch.service.mjs +5 -1
  15. package/esm2020/lib/hit-proxy/hit-params-invoices/hit-params-invoice.service.mjs +5 -1
  16. package/esm2020/lib/invoices/invoice/invoice.module.mjs +1 -1
  17. package/esm2020/lib/note-rules/note-rule/note-rule.module.mjs +1 -1
  18. package/esm2020/lib/params-companies/params-company/params-company.module.mjs +1 -1
  19. package/esm2020/lib/paramse-dispatches/paramse-dispatch/components/paramse-dispatch.component.mjs +5 -4
  20. package/esm2020/lib/paramse-invoices/paramse-invoice/components/paramse-invoice.component.mjs +5 -4
  21. package/esm2020/lib/proxy/document-serials/document-serial.service.mjs +41 -0
  22. package/esm2020/lib/proxy/document-serials/models.mjs +2 -0
  23. package/esm2020/lib/proxy/note-rule-doc-types/index.mjs +1 -1
  24. package/esm2020/lib/proxy/note-rule-scenarios/index.mjs +1 -1
  25. package/esm2020/lib/proxy/note-rules/index.mjs +1 -1
  26. package/esm2020/lib/proxy/params-companies/index.mjs +1 -1
  27. package/esm2020/lib/proxy/params-generals/index.mjs +1 -1
  28. package/esm2020/lib/proxy/params-integrators/index.mjs +1 -1
  29. package/esm2020/lib/proxy/paramse-dispatches/index.mjs +1 -1
  30. package/esm2020/lib/proxy/paramse-dispatches/models.mjs +1 -1
  31. package/esm2020/lib/proxy/paramse-dispatches/paramse-dispatch.service.mjs +2 -2
  32. package/esm2020/lib/proxy/paramse-invoices/index.mjs +1 -1
  33. package/esm2020/lib/proxy/paramse-invoices/models.mjs +1 -1
  34. package/esm2020/lib/proxy/paramse-invoices/paramse-invoice.service.mjs +2 -2
  35. package/esm2020/lib/proxy/xslt-formats/index.mjs +1 -1
  36. package/esm2020/lib/proxy/xslt-rule-doc-types/index.mjs +1 -1
  37. package/esm2020/lib/proxy/xslt-rule-scenarios/index.mjs +1 -1
  38. package/esm2020/lib/proxy/xslt-rules/index.mjs +1 -1
  39. package/fesm2015/hitsoft-e-donusum-config.mjs +116 -98
  40. package/fesm2015/hitsoft-e-donusum-config.mjs.map +1 -1
  41. package/fesm2015/hitsoft-e-donusum.mjs +323 -126
  42. package/fesm2015/hitsoft-e-donusum.mjs.map +1 -1
  43. package/fesm2020/hitsoft-e-donusum-config.mjs +116 -98
  44. package/fesm2020/hitsoft-e-donusum-config.mjs.map +1 -1
  45. package/fesm2020/hitsoft-e-donusum.mjs +330 -126
  46. package/fesm2020/hitsoft-e-donusum.mjs.map +1 -1
  47. package/lib/components/hit-paramas-invoices/hit-params-invoice.component.d.ts +1 -0
  48. package/lib/components/hit-params-dispatches/hit-params-dispatch.component.d.ts +1 -0
  49. package/lib/document-serials/document-serial/components/document-serial.component.d.ts +33 -0
  50. package/lib/document-serials/document-serial/document-serial-routing.module.d.ts +7 -0
  51. package/lib/document-serials/document-serial/document-serial.module.d.ts +15 -0
  52. package/lib/hit-proxy/hit-params-dispatches/hit-params-dispatch.service.d.ts +1 -0
  53. package/lib/hit-proxy/hit-params-invoices/hit-params-invoice.service.d.ts +1 -0
  54. package/lib/proxy/document-serials/document-serial.service.d.ts +16 -0
  55. package/lib/proxy/document-serials/models.d.ts +24 -0
  56. package/lib/proxy/paramse-dispatches/models.d.ts +5 -0
  57. package/lib/proxy/paramse-invoices/models.d.ts +5 -0
  58. package/package.json +1 -1
@@ -38,10 +38,13 @@ export class HitParamsInvoiceComponent {
38
38
  this.hitDocumentTypesService.getDocumentTypesLookup().subscribe(data => {
39
39
  this.documentTypeDataSource = data;
40
40
  });
41
+ this.hitParamsInvoicesService.getItemTreeOptions().subscribe(data => {
42
+ this.itemTreeOptions = data;
43
+ });
41
44
  await this.getParamsInvoice(true);
42
45
  }
43
46
  buildForm() {
44
- const { defaultScenario, defaultInvType, defaultInvSerial, isShippingAddress, useDefScenario, useDefInvType, } = this.paramsInvoiceDto || {};
47
+ const { defaultScenario, defaultInvType, defaultInvSerial, isShippingAddress, useDefScenario, useDefInvType, itemTreeOption } = this.paramsInvoiceDto || {};
45
48
  this.formParamsInvoice = this.fb.group({
46
49
  defaultScenario: [defaultScenario ?? false, []],
47
50
  defaultInvType: [defaultInvType ?? false, []],
@@ -49,6 +52,7 @@ export class HitParamsInvoiceComponent {
49
52
  isShippingAddress: [isShippingAddress ?? false, []],
50
53
  useDefScenario: [useDefScenario ?? false, []],
51
54
  useDefInvType: [useDefInvType ?? false, []],
55
+ itemTreeOption: [itemTreeOption ?? 0, []]
52
56
  });
53
57
  }
54
58
  async submitForm() {
@@ -97,13 +101,13 @@ export class HitParamsInvoiceComponent {
97
101
  }
98
102
  }
99
103
  HitParamsInvoiceComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitParamsInvoiceComponent, deps: [{ token: i1.ListService }, { token: i1.TrackByService }, { token: i2.ParamseInvoiceService }, { token: i3.ConfirmationService }, { token: i4.FormBuilder }, { token: i5.HitParamsInvoicesService }, { token: i3.ToasterService }, { token: i6.HitScenarioTypesService }, { token: i7.HitDocumentTypesService }], target: i0.ɵɵFactoryTarget.Component });
100
- HitParamsInvoiceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitParamsInvoiceComponent, selector: "hit-params-invoice", inputs: { IsSubmitButtonHidden: "IsSubmitButtonHidden" }, outputs: { valid: "valid" }, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsInvoice\" id=\"params-invoice\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"params-invoice-default-inv-serial\">\r\n {{ 'eDonusum::DefaultInvSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"params-invoice-default-inv-serial\" formControlName=\"defaultInvSerial\"\r\n class=\"form-control\" maxlength=\"8\" autofocus />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-default-scenario\" formControlName=\"useDefScenario\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefScenario.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-def-inv-type\" formControlName=\"useDefInvType\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-def-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefInvType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefInvType.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-inv-type\" formControlName=\"defaultInvType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-is-shipping-address\"\r\n formControlName=\"isShippingAddress\" class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-is-shipping-address\" class=\"form-check-label\">\r\n {{ 'eDonusum::IsShippingAddress' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"params-invoice\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: i9.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i9.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i10.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
104
+ HitParamsInvoiceComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitParamsInvoiceComponent, selector: "hit-params-invoice", inputs: { IsSubmitButtonHidden: "IsSubmitButtonHidden" }, outputs: { valid: "valid" }, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsInvoice\" id=\"params-invoice\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"params-invoice-default-inv-serial\">\r\n {{ 'eDonusum::DefaultInvSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"params-invoice-default-inv-serial\" formControlName=\"defaultInvSerial\"\r\n class=\"form-control\" maxlength=\"8\" autofocus />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-default-scenario\" formControlName=\"useDefScenario\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefScenario.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-def-inv-type\" formControlName=\"useDefInvType\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-def-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefInvType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefInvType.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-inv-type\" formControlName=\"defaultInvType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-invoice-item-trees-options\">\r\n {{ 'eDonusum::ItemTreesOptions' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"paramse-invoice-item-trees-options\" formControlName=\"itemTreeOption\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"itemTreeOptions\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-is-shipping-address\"\r\n formControlName=\"isShippingAddress\" class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-is-shipping-address\" class=\"form-check-label\">\r\n {{ 'eDonusum::IsShippingAddress' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"params-invoice\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: i9.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i9.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i10.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
101
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitParamsInvoiceComponent, decorators: [{
102
106
  type: Component,
103
- args: [{ selector: 'hit-params-invoice', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsInvoice\" id=\"params-invoice\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"params-invoice-default-inv-serial\">\r\n {{ 'eDonusum::DefaultInvSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"params-invoice-default-inv-serial\" formControlName=\"defaultInvSerial\"\r\n class=\"form-control\" maxlength=\"8\" autofocus />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-default-scenario\" formControlName=\"useDefScenario\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefScenario.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-def-inv-type\" formControlName=\"useDefInvType\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-def-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefInvType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefInvType.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-inv-type\" formControlName=\"defaultInvType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-is-shipping-address\"\r\n formControlName=\"isShippingAddress\" class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-is-shipping-address\" class=\"form-check-label\">\r\n {{ 'eDonusum::IsShippingAddress' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"params-invoice\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
107
+ args: [{ selector: 'hit-params-invoice', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsInvoice\" id=\"params-invoice\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"params-invoice-default-inv-serial\">\r\n {{ 'eDonusum::DefaultInvSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"params-invoice-default-inv-serial\" formControlName=\"defaultInvSerial\"\r\n class=\"form-control\" maxlength=\"8\" autofocus />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-default-scenario\" formControlName=\"useDefScenario\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefScenario.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-use-def-inv-type\" formControlName=\"useDefInvType\"\r\n class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-use-def-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefInvType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsInvoice.controls.useDefInvType.value\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-inv-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"params-invoice-default-inv-type\" formControlName=\"defaultInvType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-invoice-item-trees-options\">\r\n {{ 'eDonusum::ItemTreesOptions' | abpLocalization }}\r\n </label>\r\n\r\n <dx-select-box id=\"paramse-invoice-item-trees-options\" formControlName=\"itemTreeOption\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"itemTreeOptions\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"params-invoice-is-shipping-address\"\r\n formControlName=\"isShippingAddress\" class=\"form-check-input\" />\r\n\r\n <label for=\"params-invoice-is-shipping-address\" class=\"form-check-label\">\r\n {{ 'eDonusum::IsShippingAddress' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"params-invoice\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
104
108
  }], ctorParameters: function () { return [{ type: i1.ListService }, { type: i1.TrackByService }, { type: i2.ParamseInvoiceService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: i5.HitParamsInvoicesService }, { type: i3.ToasterService }, { type: i6.HitScenarioTypesService }, { type: i7.HitDocumentTypesService }]; }, propDecorators: { IsSubmitButtonHidden: [{
105
109
  type: Input
106
110
  }], valid: [{
107
111
  type: Output
108
112
  }] } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtYXMtaW52b2ljZXMvaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtYXMtaW52b2ljZXMvaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsV0FBVyxFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUU5RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7OztBQVlyQyxNQUFNLE9BQU8seUJBQXlCO0lBY3BDLFlBQ2tCLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQThCLEVBQ3RDLFlBQWlDLEVBQ2pDLEVBQWUsRUFDTix3QkFBa0QsRUFDbEQsY0FBOEIsRUFDOUIsdUJBQWdELEVBQ2hELHVCQUFnRDtRQVJqRCxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQ3RDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxP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QyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7WUFFN0IsSUFBSSxTQUFTO2dCQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3NIQXhIVSx5QkFBeUI7MEdBQXpCLHlCQUF5QixvSUFKekIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQywwQkN0QjlFLDRySkF5Rk07MkZEL0RPLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBQ2IsdUJBQXVCLENBQUMsT0FBTyxhQUNyQyxDQUFDLFdBQVcsRUFBRSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDOytXQWNuRSxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBRUksS0FBSztzQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJQLCBkb3dubG9hZEJsb2IsIExpc3RTZXJ2aWNlLCBQYWdlZFJlc3VsdER0bywgVHJhY2tCeVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlLCBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdGFibGUsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiRGF0ZUFkYXB0ZXIgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCB0YXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSGl0UGFyYW1zSW52b2ljZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaGl0LXByb3h5L2hpdC1wYXJhbXMtaW52b2ljZXMvaGl0LXBhcmFtcy1pbnZvaWNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXRTY2VuYXJpb1R5cGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtc2NlbmFyaW8tdHlwZXMvaGl0LXNjZW5hcmlvLXR5cGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEhpdERvY3VtZW50VHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaGl0LXByb3h5L2hpdC1kb2N1bWVudC10eXBlcy9oaXQtZG9jdW1lbnQtdHlwZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGFyYW1zZUludm9pY2VEdG8sIFBhcmFtc2VJbnZvaWNlU2VydmljZSB9IGZyb20gJy4uLy4uL3Byb3h5L3BhcmFtc2UtaW52b2ljZXMnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2hpdC1wYXJhbXMtaW52b2ljZScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxyXG4gIHByb3ZpZGVyczogW0xpc3RTZXJ2aWNlLCB7IHByb3ZpZGU6IE5nYkRhdGVBZGFwdGVyLCB1c2VDbGFzczogRGF0ZUFkYXB0ZXIgfV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdC1wYXJhbXMtaW52b2ljZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEhpdFBhcmFtc0ludm9pY2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGZvcm1QYXJhbXNJbnZvaWNlOiBGb3JtR3JvdXA7XHJcblxyXG4gIHBhcmFtc0ludm9pY2VEdG8/OiBQYXJhbXNlSW52b2ljZUR0bztcclxuXHJcbiAgc3VibWl0QnV0dG9uRGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgc2NlbmFyaW9UeXBlRGF0YVNvdXJjZTogYW55O1xyXG4gIGRvY3VtZW50VHlwZURhdGFTb3VyY2U6IGFueTtcclxuXHJcbiAgQElucHV0KCkgSXNTdWJtaXRCdXR0b25IaWRkZW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHZhbGlkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZWFkb25seSBsaXN0OiBMaXN0U2VydmljZSxcclxuICAgIHB1YmxpYyByZWFkb25seSB0cmFjazogVHJhY2tCeVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogUGFyYW1zZUludm9pY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb246IENvbmZpcm1hdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGl0UGFyYW1zSW52b2ljZXNTZXJ2aWNlOiBIaXRQYXJhbXNJbnZvaWNlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGl0U2NlbmFyaW9UeXBlc1NlcnZpY2U6IEhpdFNjZW5hcmlvVHlwZXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaXREb2N1bWVudFR5cGVzU2VydmljZTogSGl0RG9jdW1lbnRUeXBlc1NlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuXHJcbiAgICB0aGlzLmhpdFNjZW5hcmlvVHlwZXNTZXJ2aWNlLmdldFNjZW5hcmlvVHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuc2NlbmFyaW9UeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdERvY3VtZW50VHlwZXNTZXJ2aWNlLmdldERvY3VtZW50VHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnRUeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICBhd2FpdCB0aGlzLmdldFBhcmFtc0ludm9pY2UodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBidWlsZEZvcm0oKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGRlZmF1bHRTY2VuYXJpbyxcclxuICAgICAgZGVmYXVsdEludlR5cGUsXHJcbiAgICAgIGRlZmF1bHRJbnZTZXJpYWwsXHJcbiAgICAgIGlzU2hpcHBpbmdBZGRyZXNzLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbyxcclxuICAgICAgdXNlRGVmSW52VHlwZSxcclxuICAgIH0gPSB0aGlzLnBhcmFtc0ludm9pY2VEdG8gfHwge307XHJcblxyXG4gICAgdGhpcy5mb3JtUGFyYW1zSW52b2ljZSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBkZWZhdWx0U2NlbmFyaW86IFtkZWZhdWx0U2NlbmFyaW8gPz8gZmFsc2UsIFtdXSxcclxuICAgICAgZGVmYXVsdEludlR5cGU6IFtkZWZhdWx0SW52VHlwZSA/PyBmYWxzZSwgW11dLFxyXG4gICAgICBkZWZhdWx0SW52U2VyaWFsOiBbZGVmYXVsdEludlNlcmlhbCA/PyBudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMyldXSxcclxuICAgICAgaXNTaGlwcGluZ0FkZHJlc3M6IFtpc1NoaXBwaW5nQWRkcmVzcyA/PyBmYWxzZSwgW11dLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbzogW3VzZURlZlNjZW5hcmlvID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZURlZkludlR5cGU6IFt1c2VEZWZJbnZUeXBlID8/IGZhbHNlLCBbXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHN1Ym1pdEZvcm0oKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtUGFyYW1zSW52b2ljZS5jb250cm9scy5kZWZhdWx0SW52U2VyaWFsLnZhbHVlLmxlbmd0aCA+IDMpIHtcclxuICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcignZURvbnVzdW06OkVudGVyTWF4M0NoYXJhY3RlcicpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmludmFsaWQpIHtcclxuICAgICAgd2luZG93LnNjcm9sbCh7XHJcbiAgICAgICAgdG9wOiAwLFxyXG4gICAgICAgIGxlZnQ6IDAsXHJcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy52YWxpZC5lbWl0KGZhbHNlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3VibWl0QnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIC8vIHRoaXMudG9hc3RlclNlcnZpY2UuaW5mbygnZURvbnVzdW06OlRyYW5zYWN0aW9uU3RhcnRlZCcpO1xyXG4gICAgXHJcbiAgICBpZiAoIXRoaXMuZm9ybVBhcmFtc0ludm9pY2UuY29udHJvbHMuZGVmYXVsdFNjZW5hcmlvLnZhbHVlKVxyXG4gICAgICB0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRTY2VuYXJpby5zZXRWYWx1ZSgwKTtcclxuICAgIFxyXG4gICAgaWYgKCF0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRJbnZUeXBlLnZhbHVlKVxyXG4gICAgICB0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRJbnZUeXBlLnNldFZhbHVlKDApO1xyXG5cclxuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnBhcmFtc0ludm9pY2VEdG9cclxuICAgICAgPyB0aGlzLnNlcnZpY2UudXBkYXRlKHRoaXMucGFyYW1zSW52b2ljZUR0by5pZCwge1xyXG4gICAgICAgICAgLi4udGhpcy5mb3JtUGFyYW1zSW52b2ljZS52YWx1ZSxcclxuICAgICAgICB9KVxyXG4gICAgICA6IHRoaXMuc2VydmljZS5jcmVhdGUodGhpcy5mb3JtUGFyYW1zSW52b2ljZS52YWx1ZSk7XHJcblxyXG4gICAgcmVxdWVzdFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1pdEJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgdGFwKCgpID0+IHt9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgLy8gdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdlRG9udXN1bTo6VHJhbnNhY3Rpb25TdWNjZXNzZnVsJyk7XHJcblxyXG4gICAgICAgICAgYXdhaXQgdGhpcy5nZXRQYXJhbXNJbnZvaWNlKCk7XHJcblxyXG4gICAgICAgICAgdGhpcy52YWxpZC5lbWl0KHRydWUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoJ2VEb251c3VtOjpUcmFuc2FjdGlvblVuc3VjY2Vzc2Z1bCcpO1xyXG5cclxuICAgICAgICAgIHRoaXMudmFsaWQuZW1pdCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRQYXJhbXNJbnZvaWNlKGJ1aWxkRm9ybTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICB0aGlzLmhpdFBhcmFtc0ludm9pY2VzU2VydmljZS5nZXRQYXJhbXNJbnZvaWNlKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnBhcmFtc0ludm9pY2VEdG8gPSBkYXRhO1xyXG5cclxuICAgICAgaWYgKGJ1aWxkRm9ybSkgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVBhcmFtc0ludm9pY2VcIiBpZD1cInBhcmFtcy1pbnZvaWNlXCIgKG5nU3VibWl0KT1cInN1Ym1pdEZvcm0oKVwiIHZhbGlkYXRlT25TdWJtaXQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi1zZXJpYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6RGVmYXVsdEludlNlcmlhbCcgfCBhYnBMb2NhbGl6YXRpb24gfX0gKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1pbnYtc2VyaWFsXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdEludlNlcmlhbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIG1heGxlbmd0aD1cIjhcIiBhdXRvZm9jdXMgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXMtaW52b2ljZS11c2UtZGVmYXVsdC1zY2VuYXJpb1wiIGZvcm1Db250cm9sTmFtZT1cInVzZURlZlNjZW5hcmlvXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtdXNlLWRlZmF1bHQtc2NlbmFyaW9cIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlRGVmU2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cImZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLnVzZURlZlNjZW5hcmlvLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1zY2VuYXJpb1wiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpEZWZhdWx0U2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtcy1pbnZvaWNlLWRlZmF1bHQtc2NlbmFyaW9cIiBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0U2NlbmFyaW9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNwbGF5RXhwcj1cImRpc3BsYXlOYW1lXCIgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwic2NlbmFyaW9UeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zLWludm9pY2UtdXNlLWRlZi1pbnYtdHlwZVwiIGZvcm1Db250cm9sTmFtZT1cInVzZURlZkludlR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXMtaW52b2ljZS11c2UtZGVmLWludi10eXBlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlVzZURlZkludlR5cGUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cImZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLnVzZURlZkludlR5cGUudmFsdWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi10eXBlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OkRlZmF1bHRJbnZUeXBlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGR4LXNlbGVjdC1ib3ggaWQ9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi10eXBlXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdEludlR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNwbGF5RXhwcj1cImRpc3BsYXlOYW1lXCIgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwiZG9jdW1lbnRUeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zLWludm9pY2UtaXMtc2hpcHBpbmctYWRkcmVzc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJpc1NoaXBwaW5nQWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtaXMtc2hpcHBpbmctYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpJc1NoaXBwaW5nQWRkcmVzcycgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIHRleHQtbGctZW5kXCI+XHJcbiAgICAgICAgICAgICAgICA8YWJwLWJ1dHRvbiBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiIGJ1dHRvblR5cGU9XCJzdWJtaXRcIiBmb3JtTmFtZT1cInBhcmFtcy1pbnZvaWNlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwic3VibWl0QnV0dG9uRGlzYWJsZWRcIiBbaGlkZGVuXT1cIklzU3VibWl0QnV0dG9uSGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgJ0FicFVpOjpTYXZlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgPC9hYnAtYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtYXMtaW52b2ljZXMvaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtYXMtaW52b2ljZXMvaGl0LXBhcmFtcy1pbnZvaWNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsV0FBVyxFQUFrQyxNQUFNLGNBQWMsQ0FBQztBQUU5RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7OztBQVlyQyxNQUFNLE9BQU8seUJBQXlCO0lBZXBDLFlBQ2tCLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQThCLEVBQ3RDLFlBQWlDLEVBQ2pDLEVBQWUsRUFDTix3QkFBa0QsRUFDbEQsY0FBOEIsRUFDOUIsdUJBQWdELEVBQ2hELHVCQUFnRDtRQVJqRCxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBQ3RDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxP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QUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FDRixDQUFDO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFxQixLQUFLO1FBQy9DLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1lBRTdCLElBQUksU0FBUztnQkFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztzSEEvSFUseUJBQXlCOzBHQUF6Qix5QkFBeUIsb0lBSnpCLENBQUMsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMsMEJDdEI5RSxtNUtBdUdNOzJGRDdFTyx5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUNiLHVCQUF1QixDQUFDLE9BQU8sYUFDckMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQzsrV0FlbkUsb0JBQW9CO3NCQUE1QixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgZG93bmxvYWRCbG9iLCBMaXN0U2VydmljZSwgUGFnZWRSZXN1bHREdG8sIFRyYWNrQnlTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IERhdGVBZGFwdGVyIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3RhYmxlLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE5nYkRhdGVBZGFwdGVyIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEhpdFBhcmFtc0ludm9pY2VzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtcGFyYW1zLWludm9pY2VzL2hpdC1wYXJhbXMtaW52b2ljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSGl0U2NlbmFyaW9UeXBlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXNjZW5hcmlvLXR5cGVzL2hpdC1zY2VuYXJpby10eXBlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXREb2N1bWVudFR5cGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtZG9jdW1lbnQtdHlwZXMvaGl0LWRvY3VtZW50LXR5cGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFBhcmFtc2VJbnZvaWNlRHRvLCBQYXJhbXNlSW52b2ljZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcm94eS9wYXJhbXNlLWludm9pY2VzJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdoaXQtcGFyYW1zLWludm9pY2UnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcclxuICBwcm92aWRlcnM6IFtMaXN0U2VydmljZSwgeyBwcm92aWRlOiBOZ2JEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IERhdGVBZGFwdGVyIH1dLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9oaXQtcGFyYW1zLWludm9pY2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRQYXJhbXNJbnZvaWNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBmb3JtUGFyYW1zSW52b2ljZTogRm9ybUdyb3VwO1xyXG5cclxuICBwYXJhbXNJbnZvaWNlRHRvPzogUGFyYW1zZUludm9pY2VEdG87XHJcblxyXG4gIHN1Ym1pdEJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XHJcblxyXG4gIHNjZW5hcmlvVHlwZURhdGFTb3VyY2U6IGFueTtcclxuICBkb2N1bWVudFR5cGVEYXRhU291cmNlOiBhbnk7XHJcbiAgaXRlbVRyZWVPcHRpb25zOiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpIElzU3VibWl0QnV0dG9uSGlkZGVuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKSB2YWxpZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgbGlzdDogTGlzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHJhY2s6IFRyYWNrQnlTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2U6IFBhcmFtc2VJbnZvaWNlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdFBhcmFtc0ludm9pY2VzU2VydmljZTogSGl0UGFyYW1zSW52b2ljZXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdFNjZW5hcmlvVHlwZXNTZXJ2aWNlOiBIaXRTY2VuYXJpb1R5cGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGl0RG9jdW1lbnRUeXBlc1NlcnZpY2U6IEhpdERvY3VtZW50VHlwZXNTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYnVpbGRGb3JtKCk7XHJcblxyXG4gICAgdGhpcy5oaXRTY2VuYXJpb1R5cGVzU2VydmljZS5nZXRTY2VuYXJpb1R5cGVzTG9va3VwKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnNjZW5hcmlvVHlwZURhdGFTb3VyY2UgPSBkYXRhO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5oaXREb2N1bWVudFR5cGVzU2VydmljZS5nZXREb2N1bWVudFR5cGVzTG9va3VwKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLmRvY3VtZW50VHlwZURhdGFTb3VyY2UgPSBkYXRhO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5oaXRQYXJhbXNJbnZvaWNlc1NlcnZpY2UuZ2V0SXRlbVRyZWVPcHRpb25zKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLml0ZW1UcmVlT3B0aW9ucz1kYXRhO1xyXG4gICAgfSlcclxuXHJcbiAgICBhd2FpdCB0aGlzLmdldFBhcmFtc0ludm9pY2UodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBidWlsZEZvcm0oKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGRlZmF1bHRTY2VuYXJpbyxcclxuICAgICAgZGVmYXVsdEludlR5cGUsXHJcbiAgICAgIGRlZmF1bHRJbnZTZXJpYWwsXHJcbiAgICAgIGlzU2hpcHBpbmdBZGRyZXNzLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbyxcclxuICAgICAgdXNlRGVmSW52VHlwZSxcclxuICAgICAgaXRlbVRyZWVPcHRpb25cclxuICAgIH0gPSB0aGlzLnBhcmFtc0ludm9pY2VEdG8gfHwge307XHJcblxyXG4gICAgdGhpcy5mb3JtUGFyYW1zSW52b2ljZSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBkZWZhdWx0U2NlbmFyaW86IFtkZWZhdWx0U2NlbmFyaW8gPz8gZmFsc2UsIFtdXSxcclxuICAgICAgZGVmYXVsdEludlR5cGU6IFtkZWZhdWx0SW52VHlwZSA/PyBmYWxzZSwgW11dLFxyXG4gICAgICBkZWZhdWx0SW52U2VyaWFsOiBbZGVmYXVsdEludlNlcmlhbCA/PyBudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMyldXSxcclxuICAgICAgaXNTaGlwcGluZ0FkZHJlc3M6IFtpc1NoaXBwaW5nQWRkcmVzcyA/PyBmYWxzZSwgW11dLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbzogW3VzZURlZlNjZW5hcmlvID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZURlZkludlR5cGU6IFt1c2VEZWZJbnZUeXBlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIGl0ZW1UcmVlT3B0aW9uOiBbaXRlbVRyZWVPcHRpb24gPz8gMCwgW11dXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHN1Ym1pdEZvcm0oKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtUGFyYW1zSW52b2ljZS5jb250cm9scy5kZWZhdWx0SW52U2VyaWFsLnZhbHVlLmxlbmd0aCA+IDMpIHtcclxuICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcignZURvbnVzdW06OkVudGVyTWF4M0NoYXJhY3RlcicpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmludmFsaWQpIHtcclxuICAgICAgd2luZG93LnNjcm9sbCh7XHJcbiAgICAgICAgdG9wOiAwLFxyXG4gICAgICAgIGxlZnQ6IDAsXHJcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy52YWxpZC5lbWl0KGZhbHNlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3VibWl0QnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIC8vIHRoaXMudG9hc3RlclNlcnZpY2UuaW5mbygnZURvbnVzdW06OlRyYW5zYWN0aW9uU3RhcnRlZCcpO1xyXG4gICAgXHJcbiAgICBpZiAoIXRoaXMuZm9ybVBhcmFtc0ludm9pY2UuY29udHJvbHMuZGVmYXVsdFNjZW5hcmlvLnZhbHVlKVxyXG4gICAgICB0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRTY2VuYXJpby5zZXRWYWx1ZSgwKTtcclxuICAgIFxyXG4gICAgaWYgKCF0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRJbnZUeXBlLnZhbHVlKVxyXG4gICAgICB0aGlzLmZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLmRlZmF1bHRJbnZUeXBlLnNldFZhbHVlKDApO1xyXG5cclxuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnBhcmFtc0ludm9pY2VEdG9cclxuICAgICAgPyB0aGlzLnNlcnZpY2UudXBkYXRlKHRoaXMucGFyYW1zSW52b2ljZUR0by5pZCwge1xyXG4gICAgICAgICAgLi4udGhpcy5mb3JtUGFyYW1zSW52b2ljZS52YWx1ZSxcclxuICAgICAgICB9KVxyXG4gICAgICA6IHRoaXMuc2VydmljZS5jcmVhdGUodGhpcy5mb3JtUGFyYW1zSW52b2ljZS52YWx1ZSk7XHJcblxyXG4gICAgcmVxdWVzdFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1pdEJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgdGFwKCgpID0+IHt9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgLy8gdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdlRG9udXN1bTo6VHJhbnNhY3Rpb25TdWNjZXNzZnVsJyk7XHJcblxyXG4gICAgICAgICAgYXdhaXQgdGhpcy5nZXRQYXJhbXNJbnZvaWNlKCk7XHJcblxyXG4gICAgICAgICAgdGhpcy52YWxpZC5lbWl0KHRydWUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoJ2VEb251c3VtOjpUcmFuc2FjdGlvblVuc3VjY2Vzc2Z1bCcpO1xyXG5cclxuICAgICAgICAgIHRoaXMudmFsaWQuZW1pdCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRQYXJhbXNJbnZvaWNlKGJ1aWxkRm9ybTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICB0aGlzLmhpdFBhcmFtc0ludm9pY2VzU2VydmljZS5nZXRQYXJhbXNJbnZvaWNlKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnBhcmFtc0ludm9pY2VEdG8gPSBkYXRhO1xyXG5cclxuICAgICAgaWYgKGJ1aWxkRm9ybSkgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVBhcmFtc0ludm9pY2VcIiBpZD1cInBhcmFtcy1pbnZvaWNlXCIgKG5nU3VibWl0KT1cInN1Ym1pdEZvcm0oKVwiIHZhbGlkYXRlT25TdWJtaXQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi1zZXJpYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6RGVmYXVsdEludlNlcmlhbCcgfCBhYnBMb2NhbGl6YXRpb24gfX0gKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1pbnYtc2VyaWFsXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdEludlNlcmlhbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIG1heGxlbmd0aD1cIjhcIiBhdXRvZm9jdXMgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXMtaW52b2ljZS11c2UtZGVmYXVsdC1zY2VuYXJpb1wiIGZvcm1Db250cm9sTmFtZT1cInVzZURlZlNjZW5hcmlvXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtdXNlLWRlZmF1bHQtc2NlbmFyaW9cIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlRGVmU2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cImZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLnVzZURlZlNjZW5hcmlvLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1zY2VuYXJpb1wiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpEZWZhdWx0U2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtcy1pbnZvaWNlLWRlZmF1bHQtc2NlbmFyaW9cIiBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0U2NlbmFyaW9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNwbGF5RXhwcj1cImRpc3BsYXlOYW1lXCIgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwic2NlbmFyaW9UeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zLWludm9pY2UtdXNlLWRlZi1pbnYtdHlwZVwiIGZvcm1Db250cm9sTmFtZT1cInVzZURlZkludlR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXMtaW52b2ljZS11c2UtZGVmLWludi10eXBlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlVzZURlZkludlR5cGUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cImZvcm1QYXJhbXNJbnZvaWNlLmNvbnRyb2xzLnVzZURlZkludlR5cGUudmFsdWVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi10eXBlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OkRlZmF1bHRJbnZUeXBlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGR4LXNlbGVjdC1ib3ggaWQ9XCJwYXJhbXMtaW52b2ljZS1kZWZhdWx0LWludi10eXBlXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdEludlR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNwbGF5RXhwcj1cImRpc3BsYXlOYW1lXCIgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwiZG9jdW1lbnRUeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXJhbXNlLWludm9pY2UtaXRlbS10cmVlcy1vcHRpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06Okl0ZW1UcmVlc09wdGlvbnMnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtc2UtaW52b2ljZS1pdGVtLXRyZWVzLW9wdGlvbnNcIiBmb3JtQ29udHJvbE5hbWU9XCJpdGVtVHJlZU9wdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIGRpc3BsYXlFeHByPVwiZGlzcGxheU5hbWVcIiB2YWx1ZUV4cHI9XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJpdGVtVHJlZU9wdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9keC1zZWxlY3QtYm94PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtcy1pbnZvaWNlLWlzLXNoaXBwaW5nLWFkZHJlc3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaXNTaGlwcGluZ0FkZHJlc3NcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiAvPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtcy1pbnZvaWNlLWlzLXNoaXBwaW5nLWFkZHJlc3NcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6SXNTaGlwcGluZ0FkZHJlc3MnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9mb3JtPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMiB0ZXh0LWxnLWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgPGFicC1idXR0b24gaWNvbkNsYXNzPVwiZmEgZmEtY2hlY2tcIiBidXR0b25UeXBlPVwic3VibWl0XCIgZm9ybU5hbWU9XCJwYXJhbXMtaW52b2ljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN1Ym1pdEJ1dHRvbkRpc2FibGVkXCIgW2hpZGRlbl09XCJJc1N1Ym1pdEJ1dHRvbkhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ICdBYnBVaTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgIDwvYWJwLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -43,10 +43,13 @@ export class HitParamsDispatchComponent {
43
43
  this.hitInventoryTransferAddressesService.getInventoryTransferAddress().subscribe(data => {
44
44
  this.inventoryTransferAddressDataSource = data;
45
45
  });
46
+ this.hitParamsDispatchesService.getItemTreeOptions().subscribe(data => {
47
+ this.itemTreeOptions = data;
48
+ });
46
49
  await this.getParamsDispatch(true);
47
50
  }
48
51
  buildForm() {
49
- const { defaultScenario, defaultDisType, defaultDisSerial, useDefScenario, useDefDisType, noPrice, inventoryTrAddress, receiverChannel, noRemainOrder, useSouWhoAdr, useCusStockCode, useBarcode, } = this.paramsDispatchDto || {};
52
+ const { defaultScenario, defaultDisType, defaultDisSerial, useDefScenario, useDefDisType, noPrice, inventoryTrAddress, receiverChannel, noRemainOrder, useSouWhoAdr, useCusStockCode, useBarcode, itemTreeOption } = this.paramsDispatchDto || {};
50
53
  this.formParamsDispatch = this.fb.group({
51
54
  defaultScenario: [defaultScenario ?? 0, []],
52
55
  defaultDisType: [defaultDisType ?? 0, []],
@@ -60,6 +63,7 @@ export class HitParamsDispatchComponent {
60
63
  useSouWhoAdr: [useSouWhoAdr ?? false, []],
61
64
  useCusStockCode: [useCusStockCode ?? false, []],
62
65
  useBarcode: [useBarcode ?? false, []],
66
+ itemTreeOption: [itemTreeOption ?? 0, []],
63
67
  });
64
68
  }
65
69
  async submitForm() {
@@ -109,13 +113,13 @@ export class HitParamsDispatchComponent {
109
113
  }
110
114
  }
111
115
  HitParamsDispatchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitParamsDispatchComponent, deps: [{ token: i1.ListService }, { token: i1.TrackByService }, { token: i2.ParamseDispatchService }, { token: i3.ConfirmationService }, { token: i4.FormBuilder }, { token: i5.HitParamsDispatchesService }, { token: i3.ToasterService }, { token: i6.HitScenarioTypesService }, { token: i7.HitDocumentTypesService }, { token: i8.HitInventoryTransferAddressesService }], target: i0.ɵɵFactoryTarget.Component });
112
- HitParamsDispatchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitParamsDispatchComponent, selector: "hit-params-dispatch", inputs: { IsSubmitButtonHidden: "IsSubmitButtonHidden" }, outputs: { valid: "valid" }, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsDispatch\" id=\"paramse-dispatch\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-default-dis-serial\">\r\n {{ 'eDonusum::DefaultDisSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"paramse-dispatch-default-dis-serial\" formControlName=\"defaultDisSerial\"\r\n class=\"form-control\" maxlength=\"8\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-scenario\"\r\n formControlName=\"useDefScenario\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-dis-type\"\r\n formControlName=\"useDefDisType\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefDisType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-price\" formControlName=\"noPrice\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-price\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoPrice' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-remain-order\"\r\n formControlName=\"noRemainOrder\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-remain-order\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoRemainOrder' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-receiver-channel\"\r\n formControlName=\"receiverChannel\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-receiver-channel\" class=\"form-check-label\">\r\n {{ 'eDonusum::ReceiverChannel' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-sou-who-adr\"\r\n formControlName=\"useSouWhoAdr\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-sou-who-adr\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseSouWhoAdr' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-cus-stock-code\"\r\n formControlName=\"useCusStockCode\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-cus-stock-code\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseCusStockCode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-barcode\" formControlName=\"useBarcode\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-barcode\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseBarcode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefScenario.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefDisType.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-dispatch-default-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-dispatch-default-dis-type\" formControlName=\"defaultDisType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-inventory-tr-address\">\r\n {{ 'eDonusum::InventoryTrAddress' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-inventory-tr-address\" formControlName=\"inventoryTrAddress\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"inventoryTransferAddressDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"paramse-dispatch\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: i10.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i10.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i11.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
116
+ HitParamsDispatchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitParamsDispatchComponent, selector: "hit-params-dispatch", inputs: { IsSubmitButtonHidden: "IsSubmitButtonHidden" }, outputs: { valid: "valid" }, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsDispatch\" id=\"paramse-dispatch\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-default-dis-serial\">\r\n {{ 'eDonusum::DefaultDisSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"paramse-dispatch-default-dis-serial\" formControlName=\"defaultDisSerial\"\r\n class=\"form-control\" maxlength=\"8\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-scenario\"\r\n formControlName=\"useDefScenario\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-dis-type\"\r\n formControlName=\"useDefDisType\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefDisType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-price\" formControlName=\"noPrice\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-price\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoPrice' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-remain-order\"\r\n formControlName=\"noRemainOrder\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-remain-order\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoRemainOrder' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-receiver-channel\"\r\n formControlName=\"receiverChannel\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-receiver-channel\" class=\"form-check-label\">\r\n {{ 'eDonusum::ReceiverChannel' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-sou-who-adr\"\r\n formControlName=\"useSouWhoAdr\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-sou-who-adr\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseSouWhoAdr' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-cus-stock-code\"\r\n formControlName=\"useCusStockCode\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-cus-stock-code\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseCusStockCode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-barcode\" formControlName=\"useBarcode\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-barcode\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseBarcode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefScenario.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefDisType.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-dispatch-default-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-dispatch-default-dis-type\" formControlName=\"defaultDisType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-inventory-tr-address\">\r\n {{ 'eDonusum::InventoryTrAddress' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-inventory-tr-address\" formControlName=\"inventoryTrAddress\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"inventoryTransferAddressDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-item-trees-options\">\r\n {{ 'eDonusum::ItemTreesOptions' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-item-trees-options\" formControlName=\"itemTreeOption\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"itemTreeOptions\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"paramse-dispatch\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: i10.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i10.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i11.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
113
117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitParamsDispatchComponent, decorators: [{
114
118
  type: Component,
115
- args: [{ selector: 'hit-params-dispatch', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsDispatch\" id=\"paramse-dispatch\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-default-dis-serial\">\r\n {{ 'eDonusum::DefaultDisSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"paramse-dispatch-default-dis-serial\" formControlName=\"defaultDisSerial\"\r\n class=\"form-control\" maxlength=\"8\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-scenario\"\r\n formControlName=\"useDefScenario\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-dis-type\"\r\n formControlName=\"useDefDisType\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefDisType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-price\" formControlName=\"noPrice\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-price\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoPrice' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-remain-order\"\r\n formControlName=\"noRemainOrder\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-remain-order\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoRemainOrder' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-receiver-channel\"\r\n formControlName=\"receiverChannel\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-receiver-channel\" class=\"form-check-label\">\r\n {{ 'eDonusum::ReceiverChannel' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-sou-who-adr\"\r\n formControlName=\"useSouWhoAdr\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-sou-who-adr\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseSouWhoAdr' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-cus-stock-code\"\r\n formControlName=\"useCusStockCode\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-cus-stock-code\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseCusStockCode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-barcode\" formControlName=\"useBarcode\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-barcode\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseBarcode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefScenario.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefDisType.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-dispatch-default-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-dispatch-default-dis-type\" formControlName=\"defaultDisType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-inventory-tr-address\">\r\n {{ 'eDonusum::InventoryTrAddress' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-inventory-tr-address\" formControlName=\"inventoryTrAddress\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"inventoryTransferAddressDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"paramse-dispatch\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
119
+ args: [{ selector: 'hit-params-dispatch', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<div class=\"card\">\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"formParamsDispatch\" id=\"paramse-dispatch\" (ngSubmit)=\"submitForm()\" validateOnSubmit>\r\n <div class=\"row\">\r\n <div class=\"col-sm-2\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-default-dis-serial\">\r\n {{ 'eDonusum::DefaultDisSerial' | abpLocalization }} *\r\n </label>\r\n\r\n <input id=\"paramse-dispatch-default-dis-serial\" formControlName=\"defaultDisSerial\"\r\n class=\"form-control\" maxlength=\"8\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-8\">\r\n <div class=\"row mt-3\">\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-scenario\"\r\n formControlName=\"useDefScenario\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefScenario' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-def-dis-type\"\r\n formControlName=\"useDefDisType\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-def-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseDefDisType' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-price\" formControlName=\"noPrice\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-price\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoPrice' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-no-remain-order\"\r\n formControlName=\"noRemainOrder\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-no-remain-order\" class=\"form-check-label\">\r\n {{ 'eDonusum::NoRemainOrder' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-6\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-receiver-channel\"\r\n formControlName=\"receiverChannel\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-receiver-channel\" class=\"form-check-label\">\r\n {{ 'eDonusum::ReceiverChannel' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-sou-who-adr\"\r\n formControlName=\"useSouWhoAdr\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-sou-who-adr\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseSouWhoAdr' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-cus-stock-code\"\r\n formControlName=\"useCusStockCode\" class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-cus-stock-code\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseCusStockCode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"form-check mb-3\">\r\n <input type=\"checkbox\" id=\"paramse-dispatch-use-barcode\" formControlName=\"useBarcode\"\r\n class=\"form-check-input\" />\r\n \r\n <label for=\"paramse-dispatch-use-barcode\" class=\"form-check-label\">\r\n {{ 'eDonusum::UseBarcode' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefScenario.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-invoice-default-scenario\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultScenario' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-invoice-default-scenario\" formControlName=\"defaultScenario\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"scenarioTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"formParamsDispatch.controls.useDefDisType.value\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label for=\"params-dispatch-default-dis-type\" class=\"form-check-label\">\r\n {{ 'eDonusum::DefaultInvType' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"params-dispatch-default-dis-type\" formControlName=\"defaultDisType\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"documentTypeDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-inventory-tr-address\">\r\n {{ 'eDonusum::InventoryTrAddress' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-inventory-tr-address\" formControlName=\"inventoryTrAddress\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"inventoryTransferAddressDataSource\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\" for=\"paramse-dispatch-item-trees-options\">\r\n {{ 'eDonusum::ItemTreesOptions' | abpLocalization }}\r\n </label>\r\n \r\n <dx-select-box id=\"paramse-dispatch-item-trees-options\" formControlName=\"itemTreeOption\"\r\n class=\"form-control\" displayExpr=\"displayName\" valueExpr=\"id\"\r\n [dataSource]=\"itemTreeOptions\">\r\n </dx-select-box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n </form>\r\n <div class=\"row\">\r\n <div class=\"col-sm-12 text-lg-end\">\r\n <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"paramse-dispatch\"\r\n [disabled]=\"submitButtonDisabled\" [hidden]=\"IsSubmitButtonHidden\">\r\n {{ 'AbpUi::Save' | abpLocalization }}\r\n </abp-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
116
120
  }], ctorParameters: function () { return [{ type: i1.ListService }, { type: i1.TrackByService }, { type: i2.ParamseDispatchService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: i5.HitParamsDispatchesService }, { type: i3.ToasterService }, { type: i6.HitScenarioTypesService }, { type: i7.HitDocumentTypesService }, { type: i8.HitInventoryTransferAddressesService }]; }, propDecorators: { IsSubmitButtonHidden: [{
117
121
  type: Input
118
122
  }], valid: [{
119
123
  type: Output
120
124
  }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXBhcmFtcy1kaXNwYXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lLWRvbnVzdW0vc3JjL2xpYi9jb21wb25lbnRzL2hpdC1wYXJhbXMtZGlzcGF0Y2hlcy9oaXQtcGFyYW1zLWRpc3BhdGNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtcy1kaXNwYXRjaGVzL2hpdC1wYXJhbXMtZGlzcGF0Y2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixXQUFXLEVBQWtDLE1BQU0sY0FBYyxDQUFDO0FBRTlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7OztBQVlyQyxNQUFNLE9BQU8sMEJBQTBCO0lBZXJDLFlBQ2tCLElBQWlCLEVBQ2pCLEtBQXFCLEVBQ3JCLE9BQStCLEVBQ3ZDLFlBQWlDLEVBQ2pDLEVBQWUsRUFDTiwwQkFBc0QsRUFDdEQsY0FBOEIsRUFDOUIsdUJBQWdELEVBQ2hELHVCQUFnRCxFQUNoRCxvQ0FBMEU7UUFUM0UsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixZQUFPLEdBQVAsT0FBTyxDQUF3QjtRQUN2QyxpQkFBWSxHQUFa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LG9CQUFvQjtzQkFBNUIsS0FBSztnQkFFSSxLQUFLO3NCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIGRvd25sb2FkQmxvYiwgTGlzdFNlcnZpY2UsIFBhZ2VkUmVzdWx0RHRvLCBUcmFja0J5U2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0YWJsZSxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ2JEYXRlQWRhcHRlciB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgUGFyYW1zZURpc3BhdGNoRHRvLCBQYXJhbXNlRGlzcGF0Y2hTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJveHkvcGFyYW1zZS1kaXNwYXRjaGVzJztcclxuaW1wb3J0IHsgZmluYWxpemUsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIaXRQYXJhbXNEaXNwYXRjaGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtcGFyYW1zLWRpc3BhdGNoZXMvaGl0LXBhcmFtcy1kaXNwYXRjaC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSGl0U2NlbmFyaW9UeXBlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXNjZW5hcmlvLXR5cGVzL2hpdC1zY2VuYXJpby10eXBlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXREb2N1bWVudFR5cGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtZG9jdW1lbnQtdHlwZXMvaGl0LWRvY3VtZW50LXR5cGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEhpdEludmVudG9yeVRyYW5zZmVyQWRkcmVzc2VzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtaW52ZW50b3J5LXRyYW5zZmVyLWFkZHJlc3Nlcy9oaXQtaW52ZW50b3J5LXRyYW5zZmVyLWFkZHJlc3Muc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaGl0LXBhcmFtcy1kaXNwYXRjaCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxyXG4gIHByb3ZpZGVyczogW0xpc3RTZXJ2aWNlLCB7IHByb3ZpZGU6IE5nYkRhdGVBZGFwdGVyLCB1c2VDbGFzczogRGF0ZUFkYXB0ZXIgfV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdC1wYXJhbXMtZGlzcGF0Y2guY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRQYXJhbXNEaXNwYXRjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZm9ybVBhcmFtc0Rpc3BhdGNoOiBGb3JtR3JvdXA7XHJcblxyXG4gIHBhcmFtc0Rpc3BhdGNoRHRvPzogUGFyYW1zZURpc3BhdGNoRHRvO1xyXG5cclxuICBzdWJtaXRCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBzY2VuYXJpb1R5cGVEYXRhU291cmNlOiBhbnk7XHJcbiAgZG9jdW1lbnRUeXBlRGF0YVNvdXJjZTogYW55O1xyXG4gIGludmVudG9yeVRyYW5zZmVyQWRkcmVzc0RhdGFTb3VyY2U6IGFueTtcclxuXHJcbiAgQElucHV0KCkgSXNTdWJtaXRCdXR0b25IaWRkZW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHZhbGlkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZWFkb25seSBsaXN0OiBMaXN0U2VydmljZSxcclxuICAgIHB1YmxpYyByZWFkb25seSB0cmFjazogVHJhY2tCeVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogUGFyYW1zZURpc3BhdGNoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdFBhcmFtc0Rpc3BhdGNoZXNTZXJ2aWNlOiBIaXRQYXJhbXNEaXNwYXRjaGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaXRTY2VuYXJpb1R5cGVzU2VydmljZTogSGl0U2NlbmFyaW9UeXBlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdERvY3VtZW50VHlwZXNTZXJ2aWNlOiBIaXREb2N1bWVudFR5cGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGl0SW52ZW50b3J5VHJhbnNmZXJBZGRyZXNzZXNTZXJ2aWNlOiBIaXRJbnZlbnRvcnlUcmFuc2ZlckFkZHJlc3Nlc1NlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuXHJcbiAgICB0aGlzLmhpdFNjZW5hcmlvVHlwZXNTZXJ2aWNlLmdldFNjZW5hcmlvVHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuc2NlbmFyaW9UeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdERvY3VtZW50VHlwZXNTZXJ2aWNlLmdldERvY3VtZW50VHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnRUeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdEludmVudG9yeVRyYW5zZmVyQWRkcmVzc2VzU2VydmljZS5nZXRJbnZlbnRvcnlUcmFuc2ZlckFkZHJlc3MoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuaW52ZW50b3J5VHJhbnNmZXJBZGRyZXNzRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICBhd2FpdCB0aGlzLmdldFBhcmFtc0Rpc3BhdGNoKHRydWUpO1xyXG4gIH1cclxuXHJcbiAgYnVpbGRGb3JtKCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBkZWZhdWx0U2NlbmFyaW8sXHJcbiAgICAgIGRlZmF1bHREaXNUeXBlLFxyXG4gICAgICBkZWZhdWx0RGlzU2VyaWFsLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbyxcclxuICAgICAgdXNlRGVmRGlzVHlwZSxcclxuICAgICAgbm9QcmljZSxcclxuICAgICAgaW52ZW50b3J5VHJBZGRyZXNzLFxyXG4gICAgICByZWNlaXZlckNoYW5uZWwsXHJcbiAgICAgIG5vUmVtYWluT3JkZXIsXHJcbiAgICAgIHVzZVNvdVdob0FkcixcclxuICAgICAgdXNlQ3VzU3RvY2tDb2RlLFxyXG4gICAgICB1c2VCYXJjb2RlLFxyXG4gICAgfSA9IHRoaXMucGFyYW1zRGlzcGF0Y2hEdG8gfHwge307XHJcblxyXG4gICAgdGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2ggPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgZGVmYXVsdFNjZW5hcmlvOiBbZGVmYXVsdFNjZW5hcmlvID8/IDAsIFtdXSxcclxuICAgICAgZGVmYXVsdERpc1R5cGU6IFtkZWZhdWx0RGlzVHlwZSA/PyAwLCBbXV0sXHJcbiAgICAgIGRlZmF1bHREaXNTZXJpYWw6IFtkZWZhdWx0RGlzU2VyaWFsID8/IG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgzKV1dLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbzogW3VzZURlZlNjZW5hcmlvID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZURlZkRpc1R5cGU6IFt1c2VEZWZEaXNUeXBlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIG5vUHJpY2U6IFtub1ByaWNlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIGludmVudG9yeVRyQWRkcmVzczogW2ludmVudG9yeVRyQWRkcmVzcyA/PyAwLCBbXV0sXHJcbiAgICAgIHJlY2VpdmVyQ2hhbm5lbDogW3JlY2VpdmVyQ2hhbm5lbCA/PyBmYWxzZSwgW11dLFxyXG4gICAgICBub1JlbWFpbk9yZGVyOiBbbm9SZW1haW5PcmRlciA/PyBmYWxzZSwgW11dLFxyXG4gICAgICB1c2VTb3VXaG9BZHI6IFt1c2VTb3VXaG9BZHIgPz8gZmFsc2UsIFtdXSxcclxuICAgICAgdXNlQ3VzU3RvY2tDb2RlOiBbdXNlQ3VzU3RvY2tDb2RlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZUJhcmNvZGU6IFt1c2VCYXJjb2RlID8/IGZhbHNlLCBbXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHN1Ym1pdEZvcm0oKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2guY29udHJvbHMuZGVmYXVsdERpc1NlcmlhbC52YWx1ZSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoJ2VEb251c3VtOjpGaWxsUmVxdWlyZWRGaWVsZHMnKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2guY29udHJvbHMuZGVmYXVsdERpc1NlcmlhbC52YWx1ZS5sZW5ndGggPiAzKSB7XHJcbiAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoJ2VEb251c3VtOjpFbnRlck1heDNDaGFyYWN0ZXInKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2guaW52YWxpZCkge1xyXG4gICAgICB3aW5kb3cuc2Nyb2xsKHtcclxuICAgICAgICB0b3A6IDAsXHJcbiAgICAgICAgbGVmdDogMCxcclxuICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnZhbGlkLmVtaXQoZmFsc2UpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdWJtaXRCdXR0b25EaXNhYmxlZCA9IHRydWU7XHJcblxyXG4gICAgLy8gdGhpcy50b2FzdGVyU2VydmljZS5pbmZvKCdlRG9udXN1bTo6VHJhbnNhY3Rpb25TdGFydGVkJyk7XHJcblxyXG4gICAgaWYgKCF0aGlzLmZvcm1QYXJhbXNEaXNwYXRjaC5jb250cm9scy5kZWZhdWx0U2NlbmFyaW8udmFsdWUpXHJcbiAgICAgIHRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLmNvbnRyb2xzLmRlZmF1bHRTY2VuYXJpby5zZXRWYWx1ZSgwKTtcclxuXHJcbiAgICBjb25zdCByZXF1ZXN0ID0gdGhpcy5wYXJhbXNEaXNwYXRjaER0b1xyXG4gICAgICA/IHRoaXMuc2VydmljZS51cGRhdGUodGhpcy5wYXJhbXNEaXNwYXRjaER0by5pZCwge1xyXG4gICAgICAgICAgLi4udGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2gudmFsdWUsXHJcbiAgICAgICAgfSlcclxuICAgICAgOiB0aGlzLnNlcnZpY2UuY3JlYXRlKHRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLnZhbHVlKTtcclxuXHJcbiAgICByZXF1ZXN0XHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuc3VibWl0QnV0dG9uRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICB9KSxcclxuICAgICAgICB0YXAoKCkgPT4ge30pXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICAvLyB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnN1Y2Nlc3MoJ2VEb251c3VtOjpUcmFuc2FjdGlvblN1Y2Nlc3NmdWwnKTtcclxuXHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmdldFBhcmFtc0Rpc3BhdGNoKCk7XHJcblxyXG4gICAgICAgICAgdGhpcy52YWxpZC5lbWl0KHRydWUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoJ2VEb251c3VtOjpUcmFuc2FjdGlvblVuc3VjY2Vzc2Z1bCcpO1xyXG5cclxuICAgICAgICAgIHRoaXMudmFsaWQuZW1pdChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0UGFyYW1zRGlzcGF0Y2goYnVpbGRGb3JtOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIHRoaXMuaGl0UGFyYW1zRGlzcGF0Y2hlc1NlcnZpY2UuZ2V0UGFyYW1zRGlzcGF0Y2goKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMucGFyYW1zRGlzcGF0Y2hEdG8gPSBkYXRhO1xyXG5cclxuICAgICAgaWYgKGJ1aWxkRm9ybSkgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVBhcmFtc0Rpc3BhdGNoXCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoXCIgKG5nU3VibWl0KT1cInN1Ym1pdEZvcm0oKVwiIHZhbGlkYXRlT25TdWJtaXQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLWRlZmF1bHQtZGlzLXNlcmlhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpEZWZhdWx0RGlzU2VyaWFsJyB8IGFicExvY2FsaXphdGlvbiB9fSAqXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLWRlZmF1bHQtZGlzLXNlcmlhbFwiIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHREaXNTZXJpYWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBtYXhsZW5ndGg9XCI4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS04XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaC11c2UtZGVmLXNjZW5hcmlvXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VEZWZTY2VuYXJpb1wiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC11c2UtZGVmLXNjZW5hcmlvXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpVc2VEZWZTY2VuYXJpbycgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1kZWYtZGlzLXR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZURlZkRpc1R5cGVcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiAvPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWRlZi1kaXMtdHlwZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlRGVmRGlzVHlwZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLW5vLXByaWNlXCIgZm9ybUNvbnRyb2xOYW1lPVwibm9QcmljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLW5vLXByaWNlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpOb1ByaWNlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtbm8tcmVtYWluLW9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJub1JlbWFpbk9yZGVyXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLW5vLXJlbWFpbi1vcmRlclwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6Tm9SZW1haW5PcmRlcicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtcmVjZWl2ZXItY2hhbm5lbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicmVjZWl2ZXJDaGFubmVsXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLXJlY2VpdmVyLWNoYW5uZWxcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlJlY2VpdmVyQ2hhbm5lbCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1zb3Utd2hvLWFkclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlU291V2hvQWRyXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1zb3Utd2hvLWFkclwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlU291V2hvQWRyJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWN1cy1zdG9jay1jb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VDdXNTdG9ja0NvZGVcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiAvPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWN1cy1zdG9jay1jb2RlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpVc2VDdXNTdG9ja0NvZGUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaC11c2UtYmFyY29kZVwiIGZvcm1Db250cm9sTmFtZT1cInVzZUJhcmNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC11c2UtYmFyY29kZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlQmFyY29kZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgKm5nSWY9XCJmb3JtUGFyYW1zRGlzcGF0Y2guY29udHJvbHMudXNlRGVmU2NlbmFyaW8udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1zY2VuYXJpb1wiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OkRlZmF1bHRTY2VuYXJpbycgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkeC1zZWxlY3QtYm94IGlkPVwicGFyYW1zLWludm9pY2UtZGVmYXVsdC1zY2VuYXJpb1wiIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHRTY2VuYXJpb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZGlzcGxheUV4cHI9XCJkaXNwbGF5TmFtZVwiIHZhbHVlRXhwcj1cImlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwic2NlbmFyaW9UeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZHgtc2VsZWN0LWJveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgKm5nSWY9XCJmb3JtUGFyYW1zRGlzcGF0Y2guY29udHJvbHMudXNlRGVmRGlzVHlwZS52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXMtZGlzcGF0Y2gtZGVmYXVsdC1kaXMtdHlwZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OkRlZmF1bHRJbnZUeXBlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR4LXNlbGVjdC1ib3ggaWQ9XCJwYXJhbXMtZGlzcGF0Y2gtZGVmYXVsdC1kaXMtdHlwZVwiIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHREaXNUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNwbGF5RXhwcj1cImRpc3BsYXlOYW1lXCIgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGF0YVNvdXJjZV09XCJkb2N1bWVudFR5cGVEYXRhU291cmNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9keC1zZWxlY3QtYm94PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC1pbnZlbnRvcnktdHItYWRkcmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OkludmVudG9yeVRyQWRkcmVzcycgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkeC1zZWxlY3QtYm94IGlkPVwicGFyYW1zZS1kaXNwYXRjaC1pbnZlbnRvcnktdHItYWRkcmVzc1wiIGZvcm1Db250cm9sTmFtZT1cImludmVudG9yeVRyQWRkcmVzc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZGlzcGxheUV4cHI9XCJkaXNwbGF5TmFtZVwiIHZhbHVlRXhwcj1cImlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwiaW52ZW50b3J5VHJhbnNmZXJBZGRyZXNzRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZHgtc2VsZWN0LWJveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICBcclxuICAgICAgICAgICBcclxuICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIHRleHQtbGctZW5kXCI+XHJcbiAgICAgICAgICAgICAgICA8YWJwLWJ1dHRvbiBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiIGJ1dHRvblR5cGU9XCJzdWJtaXRcIiBmb3JtTmFtZT1cInBhcmFtc2UtZGlzcGF0Y2hcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJzdWJtaXRCdXR0b25EaXNhYmxlZFwiIFtoaWRkZW5dPVwiSXNTdWJtaXRCdXR0b25IaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyAnQWJwVWk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICA8L2FicC1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0LXBhcmFtcy1kaXNwYXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lLWRvbnVzdW0vc3JjL2xpYi9jb21wb25lbnRzL2hpdC1wYXJhbXMtZGlzcGF0Y2hlcy9oaXQtcGFyYW1zLWRpc3BhdGNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2UtZG9udXN1bS9zcmMvbGliL2NvbXBvbmVudHMvaGl0LXBhcmFtcy1kaXNwYXRjaGVzL2hpdC1wYXJhbXMtZGlzcGF0Y2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixXQUFXLEVBQWtDLE1BQU0sY0FBYyxDQUFDO0FBRTlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7OztBQVlyQyxNQUFNLE9BQU8sMEJBQTBCO0lBZ0JyQyxZQUNrQixJQUFpQixFQUNqQixLQUFxQixFQUNyQixPQUErQixFQUN2QyxZQUFpQyxFQUNqQyxFQUFlLEVBQ04sMEJBQXNELEVBQ3RELGNBQThCLEVBQzlCLHVCQUFnRCxFQUNoRCx1QkFBZ0QsRUFDaEQsb0NBQTBFO1FBVDNFLFNBQUksR0FBSixJQUFJLENBQWE7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBd0I7UUFDdkMsaUJBQVksR0FB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QWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMsMEJDdkI5RSxvaFhBK0xNOzJGRHBLTywwQkFBMEI7a0JBUHRDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUNkLHVCQUF1QixDQUFDLE9BQU8sYUFDckMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztxYUFnQm5FLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFFSSxLQUFLO3NCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIGRvd25sb2FkQmxvYiwgTGlzdFNlcnZpY2UsIFBhZ2VkUmVzdWx0RHRvLCBUcmFja0J5U2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0YWJsZSxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ2JEYXRlQWRhcHRlciB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgUGFyYW1zZURpc3BhdGNoRHRvLCBQYXJhbXNlRGlzcGF0Y2hTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJveHkvcGFyYW1zZS1kaXNwYXRjaGVzJztcclxuaW1wb3J0IHsgZmluYWxpemUsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIaXRQYXJhbXNEaXNwYXRjaGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtcGFyYW1zLWRpc3BhdGNoZXMvaGl0LXBhcmFtcy1kaXNwYXRjaC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSGl0U2NlbmFyaW9UeXBlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9oaXQtcHJveHkvaGl0LXNjZW5hcmlvLXR5cGVzL2hpdC1zY2VuYXJpby10eXBlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXREb2N1bWVudFR5cGVzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtZG9jdW1lbnQtdHlwZXMvaGl0LWRvY3VtZW50LXR5cGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEhpdEludmVudG9yeVRyYW5zZmVyQWRkcmVzc2VzU2VydmljZSB9IGZyb20gJy4uLy4uL2hpdC1wcm94eS9oaXQtaW52ZW50b3J5LXRyYW5zZmVyLWFkZHJlc3Nlcy9oaXQtaW52ZW50b3J5LXRyYW5zZmVyLWFkZHJlc3Muc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaGl0LXBhcmFtcy1kaXNwYXRjaCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxyXG4gIHByb3ZpZGVyczogW0xpc3RTZXJ2aWNlLCB7IHByb3ZpZGU6IE5nYkRhdGVBZGFwdGVyLCB1c2VDbGFzczogRGF0ZUFkYXB0ZXIgfV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hpdC1wYXJhbXMtZGlzcGF0Y2guY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXRQYXJhbXNEaXNwYXRjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZm9ybVBhcmFtc0Rpc3BhdGNoOiBGb3JtR3JvdXA7XHJcblxyXG4gIHBhcmFtc0Rpc3BhdGNoRHRvPzogUGFyYW1zZURpc3BhdGNoRHRvO1xyXG5cclxuICBzdWJtaXRCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBzY2VuYXJpb1R5cGVEYXRhU291cmNlOiBhbnk7XHJcbiAgZG9jdW1lbnRUeXBlRGF0YVNvdXJjZTogYW55O1xyXG4gIGludmVudG9yeVRyYW5zZmVyQWRkcmVzc0RhdGFTb3VyY2U6IGFueTtcclxuICBpdGVtVHJlZU9wdGlvbnM6IGFueTtcclxuXHJcbiAgQElucHV0KCkgSXNTdWJtaXRCdXR0b25IaWRkZW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHZhbGlkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZWFkb25seSBsaXN0OiBMaXN0U2VydmljZSxcclxuICAgIHB1YmxpYyByZWFkb25seSB0cmFjazogVHJhY2tCeVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZTogUGFyYW1zZURpc3BhdGNoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdFBhcmFtc0Rpc3BhdGNoZXNTZXJ2aWNlOiBIaXRQYXJhbXNEaXNwYXRjaGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaXRTY2VuYXJpb1R5cGVzU2VydmljZTogSGl0U2NlbmFyaW9UeXBlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpdERvY3VtZW50VHlwZXNTZXJ2aWNlOiBIaXREb2N1bWVudFR5cGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGl0SW52ZW50b3J5VHJhbnNmZXJBZGRyZXNzZXNTZXJ2aWNlOiBIaXRJbnZlbnRvcnlUcmFuc2ZlckFkZHJlc3Nlc1NlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuXHJcbiAgICB0aGlzLmhpdFNjZW5hcmlvVHlwZXNTZXJ2aWNlLmdldFNjZW5hcmlvVHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuc2NlbmFyaW9UeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdERvY3VtZW50VHlwZXNTZXJ2aWNlLmdldERvY3VtZW50VHlwZXNMb29rdXAoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnRUeXBlRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdEludmVudG9yeVRyYW5zZmVyQWRkcmVzc2VzU2VydmljZS5nZXRJbnZlbnRvcnlUcmFuc2ZlckFkZHJlc3MoKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuaW52ZW50b3J5VHJhbnNmZXJBZGRyZXNzRGF0YVNvdXJjZSA9IGRhdGE7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmhpdFBhcmFtc0Rpc3BhdGNoZXNTZXJ2aWNlLmdldEl0ZW1UcmVlT3B0aW9ucygpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy5pdGVtVHJlZU9wdGlvbnMgPSBkYXRhO1xyXG4gICAgfSlcclxuXHJcbiAgICBhd2FpdCB0aGlzLmdldFBhcmFtc0Rpc3BhdGNoKHRydWUpO1xyXG4gIH1cclxuXHJcbiAgYnVpbGRGb3JtKCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBkZWZhdWx0U2NlbmFyaW8sXHJcbiAgICAgIGRlZmF1bHREaXNUeXBlLFxyXG4gICAgICBkZWZhdWx0RGlzU2VyaWFsLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbyxcclxuICAgICAgdXNlRGVmRGlzVHlwZSxcclxuICAgICAgbm9QcmljZSxcclxuICAgICAgaW52ZW50b3J5VHJBZGRyZXNzLFxyXG4gICAgICByZWNlaXZlckNoYW5uZWwsXHJcbiAgICAgIG5vUmVtYWluT3JkZXIsXHJcbiAgICAgIHVzZVNvdVdob0FkcixcclxuICAgICAgdXNlQ3VzU3RvY2tDb2RlLFxyXG4gICAgICB1c2VCYXJjb2RlLFxyXG4gICAgICBpdGVtVHJlZU9wdGlvblxyXG4gICAgfSA9IHRoaXMucGFyYW1zRGlzcGF0Y2hEdG8gfHwge307XHJcblxyXG4gICAgdGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2ggPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgZGVmYXVsdFNjZW5hcmlvOiBbZGVmYXVsdFNjZW5hcmlvID8/IDAsIFtdXSxcclxuICAgICAgZGVmYXVsdERpc1R5cGU6IFtkZWZhdWx0RGlzVHlwZSA/PyAwLCBbXV0sXHJcbiAgICAgIGRlZmF1bHREaXNTZXJpYWw6IFtkZWZhdWx0RGlzU2VyaWFsID8/IG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgzKV1dLFxyXG4gICAgICB1c2VEZWZTY2VuYXJpbzogW3VzZURlZlNjZW5hcmlvID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZURlZkRpc1R5cGU6IFt1c2VEZWZEaXNUeXBlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIG5vUHJpY2U6IFtub1ByaWNlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIGludmVudG9yeVRyQWRkcmVzczogW2ludmVudG9yeVRyQWRkcmVzcyA/PyAwLCBbXV0sXHJcbiAgICAgIHJlY2VpdmVyQ2hhbm5lbDogW3JlY2VpdmVyQ2hhbm5lbCA/PyBmYWxzZSwgW11dLFxyXG4gICAgICBub1JlbWFpbk9yZGVyOiBbbm9SZW1haW5PcmRlciA/PyBmYWxzZSwgW11dLFxyXG4gICAgICB1c2VTb3VXaG9BZHI6IFt1c2VTb3VXaG9BZHIgPz8gZmFsc2UsIFtdXSxcclxuICAgICAgdXNlQ3VzU3RvY2tDb2RlOiBbdXNlQ3VzU3RvY2tDb2RlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIHVzZUJhcmNvZGU6IFt1c2VCYXJjb2RlID8/IGZhbHNlLCBbXV0sXHJcbiAgICAgIGl0ZW1UcmVlT3B0aW9uOiBbaXRlbVRyZWVPcHRpb24gPz8gMCwgW11dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBzdWJtaXRGb3JtKCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLmNvbnRyb2xzLmRlZmF1bHREaXNTZXJpYWwudmFsdWUgPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKCdlRG9udXN1bTo6RmlsbFJlcXVpcmVkRmllbGRzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLmNvbnRyb2xzLmRlZmF1bHREaXNTZXJpYWwudmFsdWUubGVuZ3RoID4gMykge1xyXG4gICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKCdlRG9udXN1bTo6RW50ZXJNYXgzQ2hhcmFjdGVyJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLmludmFsaWQpIHtcclxuICAgICAgd2luZG93LnNjcm9sbCh7XHJcbiAgICAgICAgdG9wOiAwLFxyXG4gICAgICAgIGxlZnQ6IDAsXHJcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy52YWxpZC5lbWl0KGZhbHNlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3VibWl0QnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIC8vIHRoaXMudG9hc3RlclNlcnZpY2UuaW5mbygnZURvbnVzdW06OlRyYW5zYWN0aW9uU3RhcnRlZCcpO1xyXG5cclxuICAgIGlmICghdGhpcy5mb3JtUGFyYW1zRGlzcGF0Y2guY29udHJvbHMuZGVmYXVsdFNjZW5hcmlvLnZhbHVlKVxyXG4gICAgICB0aGlzLmZvcm1QYXJhbXNEaXNwYXRjaC5jb250cm9scy5kZWZhdWx0U2NlbmFyaW8uc2V0VmFsdWUoMCk7XHJcblxyXG4gICAgY29uc3QgcmVxdWVzdCA9IHRoaXMucGFyYW1zRGlzcGF0Y2hEdG9cclxuICAgICAgPyB0aGlzLnNlcnZpY2UudXBkYXRlKHRoaXMucGFyYW1zRGlzcGF0Y2hEdG8uaWQsIHtcclxuICAgICAgICAgIC4uLnRoaXMuZm9ybVBhcmFtc0Rpc3BhdGNoLnZhbHVlLFxyXG4gICAgICAgIH0pXHJcbiAgICAgIDogdGhpcy5zZXJ2aWNlLmNyZWF0ZSh0aGlzLmZvcm1QYXJhbXNEaXNwYXRjaC52YWx1ZSk7XHJcblxyXG4gICAgcmVxdWVzdFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1pdEJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgdGFwKCgpID0+IHt9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgLy8gdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdlRG9udXN1bTo6VHJhbnNhY3Rpb25TdWNjZXNzZnVsJyk7XHJcblxyXG4gICAgICAgICAgYXdhaXQgdGhpcy5nZXRQYXJhbXNEaXNwYXRjaCgpO1xyXG5cclxuICAgICAgICAgIHRoaXMudmFsaWQuZW1pdCh0cnVlKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKCdlRG9udXN1bTo6VHJhbnNhY3Rpb25VbnN1Y2Nlc3NmdWwnKTtcclxuXHJcbiAgICAgICAgICB0aGlzLnZhbGlkLmVtaXQoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldFBhcmFtc0Rpc3BhdGNoKGJ1aWxkRm9ybTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICB0aGlzLmhpdFBhcmFtc0Rpc3BhdGNoZXNTZXJ2aWNlLmdldFBhcmFtc0Rpc3BhdGNoKCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnBhcmFtc0Rpc3BhdGNoRHRvID0gZGF0YTtcclxuXHJcbiAgICAgIGlmIChidWlsZEZvcm0pIHRoaXMuYnVpbGRGb3JtKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1QYXJhbXNEaXNwYXRjaFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaFwiIChuZ1N1Ym1pdCk9XCJzdWJtaXRGb3JtKClcIiB2YWxpZGF0ZU9uU3VibWl0PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC1kZWZhdWx0LWRpcy1zZXJpYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6RGVmYXVsdERpc1NlcmlhbCcgfCBhYnBMb2NhbGl6YXRpb24gfX0gKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicGFyYW1zZS1kaXNwYXRjaC1kZWZhdWx0LWRpcy1zZXJpYWxcIiBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0RGlzU2VyaWFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgbWF4bGVuZ3RoPVwiOFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWRlZi1zY2VuYXJpb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlRGVmU2NlbmFyaW9cIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiAvPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWRlZi1zY2VuYXJpb1wiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlRGVmU2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaC11c2UtZGVmLWRpcy10eXBlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VEZWZEaXNUeXBlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1kZWYtZGlzLXR5cGVcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlVzZURlZkRpc1R5cGUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaC1uby1wcmljZVwiIGZvcm1Db250cm9sTmFtZT1cIm5vUHJpY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC1uby1wcmljZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6Tm9QcmljZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLW5vLXJlbWFpbi1vcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibm9SZW1haW5PcmRlclwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC1uby1yZW1haW4tb3JkZXJcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06Ok5vUmVtYWluT3JkZXInIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLXJlY2VpdmVyLWNoYW5uZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInJlY2VpdmVyQ2hhbm5lbFwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC1yZWNlaXZlci1jaGFubmVsXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpSZWNlaXZlckNoYW5uZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwicGFyYW1zZS1kaXNwYXRjaC11c2Utc291LXdoby1hZHJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZVNvdVdob0FkclwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIC8+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zZS1kaXNwYXRjaC11c2Utc291LXdoby1hZHJcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlVzZVNvdVdob0FkcicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1jdXMtc3RvY2stY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlQ3VzU3RvY2tDb2RlXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgLz5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLXVzZS1jdXMtc3RvY2stY29kZVwiIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdlRG9udXN1bTo6VXNlQ3VzU3RvY2tDb2RlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWJhcmNvZGVcIiBmb3JtQ29udHJvbE5hbWU9XCJ1c2VCYXJjb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiAvPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtc2UtZGlzcGF0Y2gtdXNlLWJhcmNvZGVcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06OlVzZUJhcmNvZGUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiICpuZ0lmPVwiZm9ybVBhcmFtc0Rpc3BhdGNoLmNvbnRyb2xzLnVzZURlZlNjZW5hcmlvLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhcmFtcy1pbnZvaWNlLWRlZmF1bHQtc2NlbmFyaW9cIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpEZWZhdWx0U2NlbmFyaW8nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtcy1pbnZvaWNlLWRlZmF1bHQtc2NlbmFyaW9cIiBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0U2NlbmFyaW9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIGRpc3BsYXlFeHByPVwiZGlzcGxheU5hbWVcIiB2YWx1ZUV4cHI9XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cInNjZW5hcmlvVHlwZURhdGFTb3VyY2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiICpuZ0lmPVwiZm9ybVBhcmFtc0Rpc3BhdGNoLmNvbnRyb2xzLnVzZURlZkRpc1R5cGUudmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGFyYW1zLWRpc3BhdGNoLWRlZmF1bHQtZGlzLXR5cGVcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpEZWZhdWx0SW52VHlwZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkeC1zZWxlY3QtYm94IGlkPVwicGFyYW1zLWRpc3BhdGNoLWRlZmF1bHQtZGlzLXR5cGVcIiBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0RGlzVHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZGlzcGxheUV4cHI9XCJkaXNwbGF5TmFtZVwiIHZhbHVlRXhwcj1cImlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFTb3VyY2VdPVwiZG9jdW1lbnRUeXBlRGF0YVNvdXJjZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZHgtc2VsZWN0LWJveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiIGZvcj1cInBhcmFtc2UtZGlzcGF0Y2gtaW52ZW50b3J5LXRyLWFkZHJlc3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2VEb251c3VtOjpJbnZlbnRvcnlUckFkZHJlc3MnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtaW52ZW50b3J5LXRyLWFkZHJlc3NcIiBmb3JtQ29udHJvbE5hbWU9XCJpbnZlbnRvcnlUckFkZHJlc3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIGRpc3BsYXlFeHByPVwiZGlzcGxheU5hbWVcIiB2YWx1ZUV4cHI9XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImludmVudG9yeVRyYW5zZmVyQWRkcmVzc0RhdGFTb3VyY2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJwYXJhbXNlLWRpc3BhdGNoLWl0ZW0tdHJlZXMtb3B0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZURvbnVzdW06Okl0ZW1UcmVlc09wdGlvbnMnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHgtc2VsZWN0LWJveCBpZD1cInBhcmFtc2UtZGlzcGF0Y2gtaXRlbS10cmVlcy1vcHRpb25zXCIgZm9ybUNvbnRyb2xOYW1lPVwiaXRlbVRyZWVPcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIGRpc3BsYXlFeHByPVwiZGlzcGxheU5hbWVcIiB2YWx1ZUV4cHI9XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cIml0ZW1UcmVlT3B0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZHgtc2VsZWN0LWJveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICBcclxuICAgICAgICAgICBcclxuICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIHRleHQtbGctZW5kXCI+XHJcbiAgICAgICAgICAgICAgICA8YWJwLWJ1dHRvbiBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiIGJ1dHRvblR5cGU9XCJzdWJtaXRcIiBmb3JtTmFtZT1cInBhcmFtc2UtZGlzcGF0Y2hcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJzdWJtaXRCdXR0b25EaXNhYmxlZFwiIFtoaWRkZW5dPVwiSXNTdWJtaXRCdXR0b25IaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyAnQWJwVWk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgICA8L2FicC1idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
@@ -49,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
49
49
  export function loadDespatchModuleAsChild() {
50
50
  return Promise.resolve(DespatchModule);
51
51
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzcGF0Y2gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZS1kb251c3VtL3NyYy9saWIvZGVzcGF0Y2hlcy9kZXNwYXRjaC9kZXNwYXRjaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixHQUNsQixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFpQmxFLE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBZFYsaUJBQWlCLGFBRTlCLHFCQUFxQjtRQUNyQixVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFFakIsVUFBVTs0R0FHRCxjQUFjLFlBWnZCLHFCQUFxQjtRQUNyQixVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFFakIsVUFBVTsyRkFHRCxjQUFjO2tCQWYxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBRWpCLFVBQVU7cUJBQ1g7aUJBQ0Y7O0FBR0QsTUFBTSxVQUFVLHlCQUF5QjtJQUN2QyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTmdiQ29sbGFwc2VNb2R1bGUsXG4gIE5nYkRhdGVwaWNrZXJNb2R1bGUsXG4gIE5nYkRyb3Bkb3duTW9kdWxlLFxufSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29tbWVyY2lhbFVpTW9kdWxlIH0gZnJvbSAnQHZvbG8vYWJwLmNvbW1lcmNpYWwubmcudWknO1xuaW1wb3J0IHsgUGFnZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29tcG9uZW50cy9wYWdlJztcbmltcG9ydCB7IERlc3BhdGNoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Rlc3BhdGNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXNwYXRjaFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2Rlc3BhdGNoLXJvdXRpbmcubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRGVzcGF0Y2hDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgRGVzcGF0Y2hSb3V0aW5nTW9kdWxlLFxuICAgIENvcmVNb2R1bGUsXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgQ29tbWVyY2lhbFVpTW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBOZ2JDb2xsYXBzZU1vZHVsZSxcbiAgICBOZ2JEYXRlcGlja2VyTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuXG4gICAgUGFnZU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRGVzcGF0Y2hNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIGxvYWREZXNwYXRjaE1vZHVsZUFzQ2hpbGQoKSB7XG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoRGVzcGF0Y2hNb2R1bGUpO1xufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzcGF0Y2gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZS1kb251c3VtL3NyYy9saWIvZGVzcGF0Y2hlcy9kZXNwYXRjaC9kZXNwYXRjaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGlCQUFpQixHQUNsQixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFpQmxFLE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBZFYsaUJBQWlCLGFBRTlCLHFCQUFxQjtRQUNyQixVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFFakIsVUFBVTs0R0FHRCxjQUFjLFlBWnZCLHFCQUFxQjtRQUNyQixVQUFVO1FBQ1YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFFakIsVUFBVTsyRkFHRCxjQUFjO2tCQWYxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBRWpCLFVBQVU7cUJBQ1g7aUJBQ0Y7O0FBR0QsTUFBTSxVQUFVLHlCQUF5QjtJQUN2QyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBOZ2JDb2xsYXBzZU1vZHVsZSxcclxuICBOZ2JEYXRlcGlja2VyTW9kdWxlLFxyXG4gIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG59IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQ29tbWVyY2lhbFVpTW9kdWxlIH0gZnJvbSAnQHZvbG8vYWJwLmNvbW1lcmNpYWwubmcudWknO1xyXG5pbXBvcnQgeyBQYWdlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb21wb25lbnRzL3BhZ2UnO1xyXG5pbXBvcnQgeyBEZXNwYXRjaENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kZXNwYXRjaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEZXNwYXRjaFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2Rlc3BhdGNoLXJvdXRpbmcubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRGVzcGF0Y2hDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIERlc3BhdGNoUm91dGluZ01vZHVsZSxcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcclxuICAgIENvbW1lcmNpYWxVaU1vZHVsZSxcclxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcclxuICAgIE5nYkNvbGxhcHNlTW9kdWxlLFxyXG4gICAgTmdiRGF0ZXBpY2tlck1vZHVsZSxcclxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG5cclxuICAgIFBhZ2VNb2R1bGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERlc3BhdGNoTW9kdWxlIHt9XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZERlc3BhdGNoTW9kdWxlQXNDaGlsZCgpIHtcclxuICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKERlc3BhdGNoTW9kdWxlKTtcclxufVxyXG4iXX0=