bpm-core 0.0.52 → 0.0.53

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 (51) hide show
  1. package/esm2022/lib/app/app.component.mjs +20 -9
  2. package/esm2022/lib/components/app-component-sections/previous-requests/previous-requests.component.mjs +3 -5
  3. package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +7 -5
  4. package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs +4 -6
  5. package/esm2022/lib/components/shared-components/dialogs/delete-dialog/delete-dialog.component.mjs +5 -4
  6. package/esm2022/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.mjs +76 -51
  7. package/esm2022/lib/components/shared-components/form-field/attachment-section/attachment-section.component.mjs +151 -110
  8. package/esm2022/lib/components/shared-components/form-field/checkbox/checkbox.component.mjs +6 -7
  9. package/esm2022/lib/components/shared-components/form-field/control-value-accessor.directive.mjs +12 -5
  10. package/esm2022/lib/components/shared-components/form-field/custom-searchable-autocomplete/custom-searchable.component.mjs +2 -1
  11. package/esm2022/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.mjs +3 -4
  12. package/esm2022/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.mjs +139 -206
  13. package/esm2022/lib/components/shared-components/form-field/index.mjs +2 -1
  14. package/esm2022/lib/components/shared-components/form-field/info-item/info-item.component.mjs +3 -3
  15. package/esm2022/lib/components/shared-components/form-field/input-mask/input-mask.component.mjs +14 -7
  16. package/esm2022/lib/components/shared-components/form-field/radio/radio.component.mjs +6 -4
  17. package/esm2022/lib/components/shared-components/form-field/search-employee/search-employee.component.mjs +43 -101
  18. package/esm2022/lib/components/shared-components/index.mjs +1 -3
  19. package/esm2022/lib/i18n/ar.mjs +4 -2
  20. package/esm2022/lib/i18n/en.mjs +4 -2
  21. package/esm2022/lib/services/core.service.ts.mjs +11 -1
  22. package/esm2022/lib/services/i18n.service.mjs +3 -3
  23. package/esm2022/lib/testComponent/request-details-section/request-details-section.component.mjs +24 -23
  24. package/esm2022/lib/testComponent/services/i18n.service.mjs +3 -3
  25. package/fesm2022/bpm-core.mjs +582 -663
  26. package/fesm2022/bpm-core.mjs.map +1 -1
  27. package/lib/app/app.component.d.ts +5 -2
  28. package/lib/components/app-component-sections/service-header/service-header.component.d.ts +2 -2
  29. package/lib/components/shared-components/action-buttons/action-buttons.component.d.ts +3 -4
  30. package/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.d.ts +12 -3
  31. package/lib/components/shared-components/form-field/attachment-section/attachment-section.component.d.ts +23 -12
  32. package/lib/components/shared-components/form-field/control-value-accessor.directive.d.ts +5 -2
  33. package/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.d.ts +14 -12
  34. package/lib/components/shared-components/form-field/index.d.ts +1 -0
  35. package/lib/components/shared-components/form-field/info-item/info-item.component.d.ts +1 -1
  36. package/lib/components/shared-components/form-field/search-employee/search-employee.component.d.ts +1 -7
  37. package/lib/components/shared-components/index.d.ts +0 -2
  38. package/lib/i18n/ar.d.ts +2 -0
  39. package/lib/i18n/en.d.ts +2 -0
  40. package/lib/services/core.service.ts.d.ts +1 -0
  41. package/lib/testComponent/request-details-section/request-details-section.component.d.ts +0 -2
  42. package/package.json +2 -2
  43. package/src/lib/assets/images/user.svg +6 -0
  44. package/src/lib/assets/scss/_general.scss +4 -1
  45. package/src/lib/assets/scss/_upgrade.scss +2 -2
  46. package/esm2022/lib/components/shared-components/confirmation-popup/confirmation-popup.component.mjs +0 -39
  47. package/esm2022/lib/components/shared-components/delete-popup/delete-popup.component.mjs +0 -19
  48. package/esm2022/lib/components/shared-components/doc-uploader/docs-uploader.component.mjs +0 -686
  49. package/lib/components/shared-components/confirmation-popup/confirmation-popup.component.d.ts +0 -25
  50. package/lib/components/shared-components/delete-popup/delete-popup.component.d.ts +0 -6
  51. package/lib/components/shared-components/doc-uploader/docs-uploader.component.d.ts +0 -144
@@ -1,9 +1,8 @@
1
1
  import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, NO_ERRORS_SCHEMA } from '@angular/core';
2
2
  import { NgClass } from "@angular/common";
3
- import { ActionButtonsComponent } from "../../components/shared-components/action-buttons/action-buttons.component";
3
+ import { ActionButtonsComponent } from "../../components/shared-components";
4
4
  import { ReactiveFormsModule, Validators, FormControl } from "@angular/forms";
5
- import { CheckBoxComponent, CustomSearchableComponent, DatePickerComponent, DateRangePickerComponent, InputComponent, InputCurrencyComponent, InputEmailComponent, InputNumberComponent, InputTelephoneComponent, RadioComponent, TextareaComponent } from '../../components/shared-components';
6
- import { RegexPatterns } from '../../regex/regex-patterns';
5
+ import { AttachmentSectionComponent, CheckBoxComponent, CustomSearchableComponent, DatePickerComponent, DateRangePickerComponent, InputComponent, InputCurrencyComponent, InputEmailComponent, InputNumberComponent, InputTelephoneComponent, RadioComponent, SearchEmployeeComponent, TextareaComponent } from '../../components/shared-components';
7
6
  import { ToggleButtonComponent } from "../../components/shared-components";
8
7
  import { DocsUploaderComponent } from "../../components/shared-components/form-field/doc-uploader/docs-uploader.component";
9
8
  import * as i0 from "@angular/core";
@@ -18,9 +17,6 @@ export class RequestDetailsSectionComponent {
18
17
  form;
19
18
  lov;
20
19
  className = "info-section";
21
- // fieldsForm: FormGroup;
22
- currentSectionId;
23
- lastSectionId;
24
20
  formGroup;
25
21
  options = ['Option 1', 'Option 2', 'Option 3'];
26
22
  constructor(i18n, fb, actionStateService) {
@@ -30,6 +26,7 @@ export class RequestDetailsSectionComponent {
30
26
  }
31
27
  ngOnInit() {
32
28
  this.createForm();
29
+ this.formGroup.setValue(this.section.body.details);
33
30
  }
34
31
  createForm() {
35
32
  let newForm = {
@@ -39,20 +36,22 @@ export class RequestDetailsSectionComponent {
39
36
  newForm[option.value] = [''];
40
37
  });
41
38
  this.formGroup = this.fb.group({
42
- input: new FormControl('inp', [Validators.required, Validators.maxLength(3), Validators.minLength(2)]),
43
- currencyInput: new FormControl(100, Validators.required),
44
- emailInput: new FormControl('ana@gmail.com', [Validators.required, Validators.pattern(RegexPatterns.email)]),
45
- numberInput: new FormControl(100, [Validators.required]),
46
- customSearchable: new FormControl({ key: 'Reject', value: 'Reject' }, Validators.required),
47
- checkbox: new FormControl(true, Validators.requiredTrue),
48
- textArea: new FormControl('text-area', [Validators.required, Validators.maxLength(10), Validators.minLength(5)]),
49
- datePicker: new FormControl('2024-11-11'),
50
- datePickerRange: new FormControl({ startDate: '2024-11-11', endDate: '2024-11-20' }),
51
- radio: new FormControl('Option 1', Validators.required),
52
- toggle: new FormControl('Endorse', Validators.required),
53
- telephone: new FormControl('0532614213'),
39
+ input: new FormControl(null, Validators.required),
40
+ currencyInput: new FormControl(null, Validators.required),
41
+ emailInput: new FormControl(null, Validators.required),
42
+ numberInput: new FormControl(null, Validators.required),
43
+ customSearchable: new FormControl(null, Validators.required),
44
+ checkbox: new FormControl(null, Validators.required),
45
+ textArea: new FormControl(null, Validators.required),
46
+ datePicker: new FormControl(null, Validators.required),
47
+ datePickerRange: new FormControl(null, Validators.required),
48
+ radio: new FormControl(null, Validators.required),
49
+ toggle: new FormControl(null, Validators.required),
50
+ telephone: new FormControl(null, Validators.required),
51
+ searchEmployee: new FormControl(null, Validators.required),
54
52
  // ...newForm,
55
- file: new FormControl('Endorse', Validators.required),
53
+ attachment: new FormControl(null, Validators.required),
54
+ attachmentSection: new FormControl([], Validators.required),
56
55
  });
57
56
  this.formGroup.valueChanges.subscribe(value => {
58
57
  this.lov?.['decision']?.options?.forEach(option => {
@@ -89,7 +88,7 @@ export class RequestDetailsSectionComponent {
89
88
  this.formGroup.reset();
90
89
  }
91
90
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RequestDetailsSectionComponent, deps: [{ token: i1.CoreI18nService }, { token: i2.FormBuilder }, { token: i1.ActionStateService }], target: i0.ɵɵFactoryTarget.Component });
92
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: RequestDetailsSectionComponent, isStandalone: true, selector: "app-request-details-section", inputs: { isReadOnly: "isReadOnly", section: "section", form: "form", lov: "lov", className: "className" }, ngImport: i0, template: "<div>\r\n<form [ngClass]=\"{'form-section-divide form-section':!section?.header?.readOnly,'info-section':section?.header?.readOnly}\" [formGroup]=\"formGroup\">\r\n <app-input [isReadOnly]=\"isReadOnly\" [loading]=\"true\" type=\"enOnly\" formControlName=\"input\" label=\"Input\" class=\"section-item\"></app-input>\r\n <app-input-currency class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"currencyInput\" label=\"currency\"></app-input-currency>\r\n <app-input-email class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"emailInput\" label=\"email\"></app-input-email>\r\n <app-input-number class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"numberInput\" label=\"number\"></app-input-number>\r\n <app-custom-searchable [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"customSearchable\" label=\"Custom-searchable\" [options]=\"lov?.['approverActions']?.options\" [displayedLabel]=\"'name'\" [key]=\"'name'\"></app-custom-searchable>\r\n <app-checkbox [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"checkbox\" termsLabel=\"Terms and condtions\" label=\"check-box\" [containTerms]=\"true\"></app-checkbox>\r\n <app-textarea [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"textArea\" label=\"Text-area\"></app-textarea>\r\n <app-datepicker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePicker\" [matSuffix]=\"true\" label=\"Date-picker\" minDate=\"today\" maxDate=\"today\"></app-datepicker>\r\n <app-date-range-picker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePickerRange\" label=\"Date-picker-range\" [matSuffix]=\"true\"></app-date-range-picker>\r\n <app-radio [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"radio\" [options]=\"options\" label=\"Radio\"></app-radio>\r\n <app-toggle-button [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"toggle\" [options]=\"lov?.['approverActions']?.options\" label=\"Toggle-button\" [displayedLable]=\"'name'\" [key]=\"'name'\"></app-toggle-button>\r\n <app-input-telephone [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"telephone\" label=\"Telephone\"></app-input-telephone>\r\n <!-- <app-input [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"input1\"></app-input> -->\r\n\r\n\r\n <app-file-uploader [callApi]=\"true\" [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"file\"></app-file-uploader>\r\n</form>\r\n<ds-button\r\n(click)=\"formValue(formGroup)\"\r\n[ngClass]=\"{'disabled': !formGroup.valid}\"\r\n>\r\n{{ i18n.translate('submit') }}\r\n</ds-button>\r\n <ds-alert class=\"full\" type=\"warning\" icon=\"info\">\r\n <div class=\"d-flex gap-2\">\r\n Request details working fine\r\n </div>\r\n </ds-alert>\r\n <!-- <form [formGroup]=\"fieldsForm\">\r\n <app-input formControlName=\"input1\" ></app-input>\r\n </form> -->\r\n</div>\r\n@if (!section?.header?.readOnly) {\r\n <div class=\"mt-4\">\r\n <lib-action-buttons\r\n [lovOptions]=\"lov?.['decision']?.options\"\r\n [lovType]=\"lov?.['decision']?.type\"\r\n [section]=\"section\"\r\n [form]=\"form\"\r\n [sections]=\"form.sections\"\r\n [showApprovalCycle]=\"true\"\r\n [customCall]=\"false\"\r\n [fieldsForm]=\"formGroup\"\r\n (customCallEmit)=\"customCallSubmit($event)\"\r\n (resetFormEmit)=\"resetForm()\"\r\n />\r\n </div>\r\n}\r\n", styles: [".form-section-divide{--form-section-columns: 1fr 1fr}@media (max-width: 756px){.form-section-divide{--form-section-columns: 100%}}.form-section-divide .full{grid-column:1/-1}.head-title{position:relative;margin-bottom:12px}.head-title h3{display:inline-block;color:#8e9aa0;font-size:14px;font-weight:500;background-color:#fff;padding-inline-end:20px;position:relative;z-index:2;margin:0}.head-title:after{content:\"\";position:absolute;width:100%;height:1px;background-color:#dee0e2;top:50%;left:0;right:0;transform:translateY(-50%);z-index:1}.chamber{margin-bottom:20px}.chamber .chamber-content{background-color:#f8f8f8;padding:20px}.chamber .chamber-content .chamber-select{display:flex}.chamber .chamber-content mat-checkbox{font-size:14px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: InputComponent, selector: "app-input", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "emitedChangedValue1"] }, { kind: "component", type: ActionButtonsComponent, selector: "lib-action-buttons", inputs: ["lovOptions", "lovType", "fieldsForm", "form", "section", "sections", "showApprovalCycle", "customCall"], outputs: ["resetFormEmit", "customCallEmit"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: CustomSearchableComponent, selector: "app-custom-searchable", inputs: ["options", "disabled", "displayedLabel", "key", "floatLabel", "className"], outputs: ["selectedValue", "isLengthGreaterThan4"] }, { kind: "component", type: CheckBoxComponent, selector: "app-checkbox", inputs: ["containTerms", "termsLabel", "linkText", "hrefLink", "link", "termsBody"], outputs: ["downloadCheckBox"] }, { kind: "component", type: TextareaComponent, selector: "app-textarea", inputs: ["className", "preventSpecailChar"] }, { kind: "component", type: InputCurrencyComponent, selector: "app-input-currency", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "numberSuffixName"] }, { kind: "component", type: DatePickerComponent, selector: "app-datepicker", inputs: ["className", "calendarType", "showLabel", "yearOnly", "error", "format"], outputs: ["dateValue"] }, { kind: "component", type: DateRangePickerComponent, selector: "app-date-range-picker", inputs: ["className", "yearOnly", "calendarType"] }, { kind: "component", type: InputEmailComponent, selector: "app-input-email", inputs: ["tooltip", "floatLabel", "className", "matPrefix", "iconPrefixName", "iconSuffixName", "numberSuffixName"] }, { kind: "component", type: InputNumberComponent, selector: "app-input-number", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "numberSuffixName", "allowedPattern"], outputs: ["emitedChangedValue"] }, { kind: "component", type: RadioComponent, selector: "app-radio", inputs: ["options"] }, { kind: "component", type: ToggleButtonComponent, selector: "app-toggle-button", inputs: ["tooltip", "className", "showLabel", "data", "error", "optionAr", "optionEn", "hasHint", "options", "displayedLable", "key"], outputs: ["onChange"] }, { kind: "component", type: InputTelephoneComponent, selector: "app-input-telephone", inputs: ["floatLabel", "className"] }, { kind: "component", type: DocsUploaderComponent, selector: "app-file-uploader", inputs: ["useCrop", "formKey", "showLabel", "downloadLink", "showActions", "styleHeight", "fileInputHeight", "styleWidth", "hints", "allowedExtensions", "callApi", "tooltip", "attachments", "optional", "display", "attachType", "error", "displayedFiles", "getDataFromTemplate", "allowFileContentsWithMultiAttachments", "accept", "signType", "showSignButton", "printType", "showPrintButton", "downloadType", "showDownloadButton", "preventFileContents", "maxSize"], outputs: ["selectedTemplateAttachment", "addSignatureClicked", "printActionClicked", "downloadActionClicked"] }] });
91
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: RequestDetailsSectionComponent, isStandalone: true, selector: "app-request-details-section", inputs: { isReadOnly: "isReadOnly", section: "section", form: "form", lov: "lov", className: "className" }, ngImport: i0, template: "<div>\r\n<form [ngClass]=\"{'form-section-divide form-section':!section?.header?.readOnly,'info-section':section?.header?.readOnly}\" [formGroup]=\"formGroup\">\r\n <app-search-employee [multiple]=\"true\" [arrayList]=\"formGroup.get('searchEmployee').value\" [isReadOnly]=\"isReadOnly\" formControlName=\"searchEmployee\" label=\"Search-employee\"></app-search-employee>\r\n <app-input [isReadOnly]=\"isReadOnly\" [loading]=\"true\" type=\"enOnly\" formControlName=\"input\" label=\"Input\" class=\"section-item\"></app-input>\r\n <app-input-currency class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"currencyInput\" label=\"currency\"></app-input-currency>\r\n <app-input-email class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"emailInput\" label=\"email\"></app-input-email>\r\n <app-input-number class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"numberInput\" label=\"number\"></app-input-number>\r\n <app-custom-searchable [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"customSearchable\" label=\"Custom-searchable\" [options]=\"lov?.['approverActions']?.options\" [displayedLabel]=\"'name'\" [key]=\"'name'\"></app-custom-searchable>\r\n <app-checkbox [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"checkbox\" termsLabel=\"Terms and condtions\" label=\"check-box\" [containTerms]=\"true\"></app-checkbox>\r\n <app-textarea [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"textArea\" label=\"Text-area\"></app-textarea>\r\n <app-datepicker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePicker\" [matSuffix]=\"true\" label=\"Date-picker\"></app-datepicker>\r\n <app-date-range-picker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePickerRange\" label=\"Date-picker-range\" [matSuffix]=\"true\"></app-date-range-picker>\r\n <app-radio [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"radio\" [options]=\"options\" label=\"Radio\"></app-radio>\r\n <app-toggle-button [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"toggle\" [options]=\"lov?.['approverActions']?.options\" label=\"Toggle-button\" [displayedLable]=\"'name'\" [key]=\"'name'\"></app-toggle-button>\r\n <app-input-telephone [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"telephone\" label=\"Telephone\"></app-input-telephone>\r\n <app-file-uploader [isReadOnly]=\"isReadOnly\" [multiple]=\"true\" class=\"section-item\" label=\"attachment\" formControlName=\"attachment\"></app-file-uploader>\r\n <app-attachment-section [descriptionRequired]=\"true\" [commentsRequired]=\"true\" [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"attachmentSection\"></app-attachment-section>\r\n\r\n</form>\r\n<ds-button\r\n(click)=\"formValue(formGroup)\"\r\n[ngClass]=\"{'disabled': !formGroup.valid}\"\r\n>\r\n{{ i18n.translate('submit') }}\r\n</ds-button>\r\n <ds-alert class=\"full\" type=\"warning\" icon=\"info\">\r\n <div class=\"d-flex gap-2\">\r\n Request details working fine\r\n </div>\r\n </ds-alert>\r\n <!-- <form [formGroup]=\"fieldsForm\">\r\n <app-input formControlName=\"input1\" ></app-input>\r\n </form> -->\r\n</div>\r\n@if (!section?.header?.readOnly) {\r\n <div class=\"mt-4\">\r\n <lib-action-buttons\r\n [lovOptions]=\"lov?.['decision']?.options\"\r\n [lovType]=\"lov?.['decision']?.type\"\r\n [section]=\"section\"\r\n [form]=\"form\"\r\n [sections]=\"form.sections\"\r\n [showApprovalCycle]=\"true\"\r\n [customCall]=\"false\"\r\n [fieldsForm]=\"formGroup\"\r\n (customCallEmit)=\"customCallSubmit($event)\"\r\n (resetFormEmit)=\"resetForm()\"\r\n />\r\n </div>\r\n}\r\n", styles: [".form-section-divide{--form-section-columns: 1fr 1fr}@media (max-width: 756px){.form-section-divide{--form-section-columns: 100%}}.form-section-divide .full{grid-column:1/-1}.head-title{position:relative;margin-bottom:12px}.head-title h3{display:inline-block;color:#8e9aa0;font-size:14px;font-weight:500;background-color:#fff;padding-inline-end:20px;position:relative;z-index:2;margin:0}.head-title:after{content:\"\";position:absolute;width:100%;height:1px;background-color:#dee0e2;top:50%;left:0;right:0;transform:translateY(-50%);z-index:1}.chamber{margin-bottom:20px}.chamber .chamber-content{background-color:#f8f8f8;padding:20px}.chamber .chamber-content .chamber-select{display:flex}.chamber .chamber-content mat-checkbox{font-size:14px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: InputComponent, selector: "app-input", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "emitedChangedValue1"] }, { kind: "component", type: ActionButtonsComponent, selector: "lib-action-buttons", inputs: ["lovOptions", "lovType", "fieldsForm", "form", "section", "sections", "showApprovalCycle", "customCall"], outputs: ["resetFormEmit", "customCallEmit"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: CustomSearchableComponent, selector: "app-custom-searchable", inputs: ["options", "disabled", "displayedLabel", "key", "floatLabel", "className"], outputs: ["selectedValue", "isLengthGreaterThan4"] }, { kind: "component", type: CheckBoxComponent, selector: "app-checkbox", inputs: ["containTerms", "termsLabel", "linkText", "hrefLink", "link", "termsBody"], outputs: ["downloadCheckBox"] }, { kind: "component", type: TextareaComponent, selector: "app-textarea", inputs: ["className", "preventSpecailChar"] }, { kind: "component", type: InputCurrencyComponent, selector: "app-input-currency", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "numberSuffixName"] }, { kind: "component", type: DatePickerComponent, selector: "app-datepicker", inputs: ["className", "calendarType", "showLabel", "yearOnly", "error", "format"], outputs: ["dateValue"] }, { kind: "component", type: DateRangePickerComponent, selector: "app-date-range-picker", inputs: ["className", "yearOnly", "calendarType"] }, { kind: "component", type: InputEmailComponent, selector: "app-input-email", inputs: ["tooltip", "floatLabel", "className", "matPrefix", "iconPrefixName", "iconSuffixName", "numberSuffixName"] }, { kind: "component", type: InputNumberComponent, selector: "app-input-number", inputs: ["tooltip", "floatLabel", "className", "iconPrefixName", "iconSuffixName", "numberSuffixName", "allowedPattern"], outputs: ["emitedChangedValue"] }, { kind: "component", type: RadioComponent, selector: "app-radio", inputs: ["options"] }, { kind: "component", type: ToggleButtonComponent, selector: "app-toggle-button", inputs: ["tooltip", "className", "showLabel", "data", "error", "optionAr", "optionEn", "hasHint", "options", "displayedLable", "key"], outputs: ["onChange"] }, { kind: "component", type: InputTelephoneComponent, selector: "app-input-telephone", inputs: ["floatLabel", "className"] }, { kind: "component", type: DocsUploaderComponent, selector: "app-file-uploader", inputs: ["useCrop", "formKey", "showLabel", "downloadLink", "showActions", "styleHeight", "fileInputHeight", "styleWidth", "hints", "allowedExtensions", "callApi", "tooltip", "optional", "display", "attachType", "error", "displayedFiles", "getDataFromTemplate", "allowFileContentsWithMultiAttachments", "accept", "signType", "showSignButton", "printType", "showPrintButton", "downloadType", "showDownloadButton", "preventFileContents", "maxSize"], outputs: ["selectedTemplateAttachment", "addSignatureClicked", "printActionClicked", "emitedValue", "downloadActionClicked"] }, { kind: "component", type: SearchEmployeeComponent, selector: "app-search-employee", inputs: ["valueName", "tooltip", "className", "showLabel", "optional", "data", "floatLabel", "error", "showEdit", "arrayList", "isUniqueUsers"], outputs: ["selectedEmp", "onInputChange", "editDirectManger", "deleteDirectManger", "emitedDeletedValue"] }, { kind: "component", type: AttachmentSectionComponent, selector: "app-attachment-section", inputs: ["className", "attachmentsMax", "isSortable", "downloadAll", "isRequired", "descriptionRequired", "commentsRequired", "allowedExtensions"], outputs: ["emitedValue"] }] });
93
92
  }
94
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RequestDetailsSectionComponent, decorators: [{
95
94
  type: Component,
@@ -109,8 +108,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
109
108
  RadioComponent,
110
109
  ToggleButtonComponent,
111
110
  InputTelephoneComponent,
112
- DocsUploaderComponent
113
- ], template: "<div>\r\n<form [ngClass]=\"{'form-section-divide form-section':!section?.header?.readOnly,'info-section':section?.header?.readOnly}\" [formGroup]=\"formGroup\">\r\n <app-input [isReadOnly]=\"isReadOnly\" [loading]=\"true\" type=\"enOnly\" formControlName=\"input\" label=\"Input\" class=\"section-item\"></app-input>\r\n <app-input-currency class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"currencyInput\" label=\"currency\"></app-input-currency>\r\n <app-input-email class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"emailInput\" label=\"email\"></app-input-email>\r\n <app-input-number class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"numberInput\" label=\"number\"></app-input-number>\r\n <app-custom-searchable [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"customSearchable\" label=\"Custom-searchable\" [options]=\"lov?.['approverActions']?.options\" [displayedLabel]=\"'name'\" [key]=\"'name'\"></app-custom-searchable>\r\n <app-checkbox [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"checkbox\" termsLabel=\"Terms and condtions\" label=\"check-box\" [containTerms]=\"true\"></app-checkbox>\r\n <app-textarea [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"textArea\" label=\"Text-area\"></app-textarea>\r\n <app-datepicker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePicker\" [matSuffix]=\"true\" label=\"Date-picker\" minDate=\"today\" maxDate=\"today\"></app-datepicker>\r\n <app-date-range-picker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePickerRange\" label=\"Date-picker-range\" [matSuffix]=\"true\"></app-date-range-picker>\r\n <app-radio [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"radio\" [options]=\"options\" label=\"Radio\"></app-radio>\r\n <app-toggle-button [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"toggle\" [options]=\"lov?.['approverActions']?.options\" label=\"Toggle-button\" [displayedLable]=\"'name'\" [key]=\"'name'\"></app-toggle-button>\r\n <app-input-telephone [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"telephone\" label=\"Telephone\"></app-input-telephone>\r\n <!-- <app-input [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"input1\"></app-input> -->\r\n\r\n\r\n <app-file-uploader [callApi]=\"true\" [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"file\"></app-file-uploader>\r\n</form>\r\n<ds-button\r\n(click)=\"formValue(formGroup)\"\r\n[ngClass]=\"{'disabled': !formGroup.valid}\"\r\n>\r\n{{ i18n.translate('submit') }}\r\n</ds-button>\r\n <ds-alert class=\"full\" type=\"warning\" icon=\"info\">\r\n <div class=\"d-flex gap-2\">\r\n Request details working fine\r\n </div>\r\n </ds-alert>\r\n <!-- <form [formGroup]=\"fieldsForm\">\r\n <app-input formControlName=\"input1\" ></app-input>\r\n </form> -->\r\n</div>\r\n@if (!section?.header?.readOnly) {\r\n <div class=\"mt-4\">\r\n <lib-action-buttons\r\n [lovOptions]=\"lov?.['decision']?.options\"\r\n [lovType]=\"lov?.['decision']?.type\"\r\n [section]=\"section\"\r\n [form]=\"form\"\r\n [sections]=\"form.sections\"\r\n [showApprovalCycle]=\"true\"\r\n [customCall]=\"false\"\r\n [fieldsForm]=\"formGroup\"\r\n (customCallEmit)=\"customCallSubmit($event)\"\r\n (resetFormEmit)=\"resetForm()\"\r\n />\r\n </div>\r\n}\r\n", styles: [".form-section-divide{--form-section-columns: 1fr 1fr}@media (max-width: 756px){.form-section-divide{--form-section-columns: 100%}}.form-section-divide .full{grid-column:1/-1}.head-title{position:relative;margin-bottom:12px}.head-title h3{display:inline-block;color:#8e9aa0;font-size:14px;font-weight:500;background-color:#fff;padding-inline-end:20px;position:relative;z-index:2;margin:0}.head-title:after{content:\"\";position:absolute;width:100%;height:1px;background-color:#dee0e2;top:50%;left:0;right:0;transform:translateY(-50%);z-index:1}.chamber{margin-bottom:20px}.chamber .chamber-content{background-color:#f8f8f8;padding:20px}.chamber .chamber-content .chamber-select{display:flex}.chamber .chamber-content mat-checkbox{font-size:14px}\n"] }]
111
+ DocsUploaderComponent,
112
+ SearchEmployeeComponent,
113
+ AttachmentSectionComponent
114
+ ], template: "<div>\r\n<form [ngClass]=\"{'form-section-divide form-section':!section?.header?.readOnly,'info-section':section?.header?.readOnly}\" [formGroup]=\"formGroup\">\r\n <app-search-employee [multiple]=\"true\" [arrayList]=\"formGroup.get('searchEmployee').value\" [isReadOnly]=\"isReadOnly\" formControlName=\"searchEmployee\" label=\"Search-employee\"></app-search-employee>\r\n <app-input [isReadOnly]=\"isReadOnly\" [loading]=\"true\" type=\"enOnly\" formControlName=\"input\" label=\"Input\" class=\"section-item\"></app-input>\r\n <app-input-currency class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"currencyInput\" label=\"currency\"></app-input-currency>\r\n <app-input-email class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"emailInput\" label=\"email\"></app-input-email>\r\n <app-input-number class=\"section-item\" [isReadOnly]=\"isReadOnly\" formControlName=\"numberInput\" label=\"number\"></app-input-number>\r\n <app-custom-searchable [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"customSearchable\" label=\"Custom-searchable\" [options]=\"lov?.['approverActions']?.options\" [displayedLabel]=\"'name'\" [key]=\"'name'\"></app-custom-searchable>\r\n <app-checkbox [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"checkbox\" termsLabel=\"Terms and condtions\" label=\"check-box\" [containTerms]=\"true\"></app-checkbox>\r\n <app-textarea [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"textArea\" label=\"Text-area\"></app-textarea>\r\n <app-datepicker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePicker\" [matSuffix]=\"true\" label=\"Date-picker\"></app-datepicker>\r\n <app-date-range-picker [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"datePickerRange\" label=\"Date-picker-range\" [matSuffix]=\"true\"></app-date-range-picker>\r\n <app-radio [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"radio\" [options]=\"options\" label=\"Radio\"></app-radio>\r\n <app-toggle-button [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"toggle\" [options]=\"lov?.['approverActions']?.options\" label=\"Toggle-button\" [displayedLable]=\"'name'\" [key]=\"'name'\"></app-toggle-button>\r\n <app-input-telephone [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"telephone\" label=\"Telephone\"></app-input-telephone>\r\n <app-file-uploader [isReadOnly]=\"isReadOnly\" [multiple]=\"true\" class=\"section-item\" label=\"attachment\" formControlName=\"attachment\"></app-file-uploader>\r\n <app-attachment-section [descriptionRequired]=\"true\" [commentsRequired]=\"true\" [isReadOnly]=\"isReadOnly\" class=\"section-item\" formControlName=\"attachmentSection\"></app-attachment-section>\r\n\r\n</form>\r\n<ds-button\r\n(click)=\"formValue(formGroup)\"\r\n[ngClass]=\"{'disabled': !formGroup.valid}\"\r\n>\r\n{{ i18n.translate('submit') }}\r\n</ds-button>\r\n <ds-alert class=\"full\" type=\"warning\" icon=\"info\">\r\n <div class=\"d-flex gap-2\">\r\n Request details working fine\r\n </div>\r\n </ds-alert>\r\n <!-- <form [formGroup]=\"fieldsForm\">\r\n <app-input formControlName=\"input1\" ></app-input>\r\n </form> -->\r\n</div>\r\n@if (!section?.header?.readOnly) {\r\n <div class=\"mt-4\">\r\n <lib-action-buttons\r\n [lovOptions]=\"lov?.['decision']?.options\"\r\n [lovType]=\"lov?.['decision']?.type\"\r\n [section]=\"section\"\r\n [form]=\"form\"\r\n [sections]=\"form.sections\"\r\n [showApprovalCycle]=\"true\"\r\n [customCall]=\"false\"\r\n [fieldsForm]=\"formGroup\"\r\n (customCallEmit)=\"customCallSubmit($event)\"\r\n (resetFormEmit)=\"resetForm()\"\r\n />\r\n </div>\r\n}\r\n", styles: [".form-section-divide{--form-section-columns: 1fr 1fr}@media (max-width: 756px){.form-section-divide{--form-section-columns: 100%}}.form-section-divide .full{grid-column:1/-1}.head-title{position:relative;margin-bottom:12px}.head-title h3{display:inline-block;color:#8e9aa0;font-size:14px;font-weight:500;background-color:#fff;padding-inline-end:20px;position:relative;z-index:2;margin:0}.head-title:after{content:\"\";position:absolute;width:100%;height:1px;background-color:#dee0e2;top:50%;left:0;right:0;transform:translateY(-50%);z-index:1}.chamber{margin-bottom:20px}.chamber .chamber-content{background-color:#f8f8f8;padding:20px}.chamber .chamber-content .chamber-select{display:flex}.chamber .chamber-content mat-checkbox{font-size:14px}\n"] }]
114
115
  }], ctorParameters: () => [{ type: i1.CoreI18nService }, { type: i2.FormBuilder }, { type: i1.ActionStateService }], propDecorators: { isReadOnly: [{
115
116
  type: Input
116
117
  }], section: [{
@@ -122,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
122
123
  }], className: [{
123
124
  type: Input
124
125
  }] } });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi90ZXN0Q29tcG9uZW50L3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvdGVzdENvbXBvbmVudC9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUdqRyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDbEgsT0FBTyxFQUF5QixtQkFBbUIsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHlCQUF5QixFQUFFLG1CQUFtQixFQUFFLHdCQUF3QixFQUFFLGNBQWMsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxjQUFjLEVBQW1CLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDalQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9GQUFvRixDQUFDOzs7O0FBMkJ6SCxNQUFNLE9BQU8sOEJB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QUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUN4QixDQUFDO3VHQW5GVSw4QkFBOEI7MkZBQTlCLDhCQUE4QixtTUNwQzNDLHM5R0FrREEsb3lCRGhDSSxPQUFPLG9GQUNQLGNBQWMsaUtBQ2Qsc0JBQXNCLCtOQUN0QixtQkFBbUIsNnJCQUNuQix5QkFBeUIsMk1BQ3pCLGlCQUFpQiw2S0FDakIsaUJBQWlCLHNHQUNqQixzQkFBc0IsdUtBQ3RCLG1CQUFtQixzS0FDbkIsd0JBQXdCLHFIQUN4QixtQkFBbUIsaUxBQ25CLG9CQUFvQix3TkFDcEIsY0FBYywyRUFDZCxxQkFBcUIsNE5BQ3JCLHVCQUF1QixxR0FDdkIscUJBQXFCOzsyRkFHWiw4QkFBOEI7a0JBekIxQyxTQUFTOytCQUNFLDZCQUE2QixjQUczQixJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyxXQUMxQzt3QkFDUCxPQUFPO3dCQUNQLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixxQkFBcUI7cUJBQ3RCOytJQUlRLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBJbnB1dCwgTk9fRVJST1JTX1NDSEVNQSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtLCBTZWN0aW9ufSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xyXG5pbXBvcnQge0FjdGlvblN0YXRlU2VydmljZSwgQ29yZUkxOG5TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHtOZ0NsYXNzfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7QWN0aW9uQnV0dG9uc0NvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvYWN0aW9uLWJ1dHRvbnMvYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Rm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2x9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBDaGVja0JveENvbXBvbmVudCwgQ3VzdG9tU2VhcmNoYWJsZUNvbXBvbmVudCwgRGF0ZVBpY2tlckNvbXBvbmVudCwgRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50LCBJbnB1dENvbXBvbmVudCwgSW5wdXRDdXJyZW5jeUNvbXBvbmVudCwgSW5wdXRFbWFpbENvbXBvbmVudCwgSW5wdXROdW1iZXJDb21wb25lbnQsIElucHV0VGVsZXBob25lQ29tcG9uZW50LCBSYWRpb0NvbXBvbmVudCwgU2VsZWN0Q29tcG9uZW50LCBUZXh0YXJlYUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSZWdleFBhdHRlcm5zIH0gZnJvbSAnLi4vLi4vcmVnZXgvcmVnZXgtcGF0dGVybnMnO1xyXG5pbXBvcnQgeyBUb2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50c1wiO1xyXG5pbXBvcnQge0RvY3NVcGxvYWRlckNvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9kb2MtdXBsb2FkZXIvZG9jcy11cGxvYWRlci5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJlcXVlc3QtZGV0YWlscy1zZWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVxdWVzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIElucHV0Q29tcG9uZW50LFxyXG4gICAgQWN0aW9uQnV0dG9uc0NvbXBvbmVudCxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBDdXN0b21TZWFyY2hhYmxlQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tCb3hDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIElucHV0Q3VycmVuY3lDb21wb25lbnQsXHJcbiAgICBEYXRlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgSW5wdXRFbWFpbENvbXBvbmVudCxcclxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxyXG4gICAgUmFkaW9Db21wb25lbnQsXHJcbiAgICBUb2dnbGVCdXR0b25Db21wb25lbnQsXHJcbiAgICBJbnB1dFRlbGVwaG9uZUNvbXBvbmVudCxcclxuICAgIERvY3NVcGxvYWRlckNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlcXVlc3REZXRhaWxzU2VjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuXHJcbiAgQElucHV0KCkgaXNSZWFkT25seTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzZWN0aW9uOiBTZWN0aW9uO1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm07XHJcbiAgQElucHV0KCkgbG92OiBhbnk7XHJcbiAgQElucHV0KCkgY2xhc3NOYW1lOiBzdHJpbmcgPSBcImluZm8tc2VjdGlvblwiO1xyXG4gIC8vIGZpZWxkc0Zvcm06IEZvcm1Hcm91cDtcclxuXHJcbiAgY3VycmVudFNlY3Rpb25JZDogc3RyaW5nO1xyXG4gIGxhc3RTZWN0aW9uSWQ6IHN0cmluZztcclxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcclxuICBvcHRpb25zOiBzdHJpbmdbXSA9IFsnT3B0aW9uIDEnLCAnT3B0aW9uIDInLCAnT3B0aW9uIDMnXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSwgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgYWN0aW9uU3RhdGVTZXJ2aWNlOiBBY3Rpb25TdGF0ZVNlcnZpY2UpIHtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIGxldCBuZXdGb3JtID0ge1xyXG4gICAgICBpbnB1dDE6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH07XHJcbiAgICB0aGlzLmxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zPy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgIG5ld0Zvcm1bb3B0aW9uLnZhbHVlXSA9IFsnJ107XHJcbiAgICB9KVxyXG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgaW5wdXQ6IG5ldyBGb3JtQ29udHJvbCgnaW5wJywgIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgzKSwgVmFsaWRhdG9ycy5taW5MZW5ndGgoMildKSxcclxuICAgICAgY3VycmVuY3lJbnB1dDogbmV3IEZvcm1Db250cm9sKDEwMCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIGVtYWlsSW5wdXQ6IG5ldyBGb3JtQ29udHJvbCgnYW5hQGdtYWlsLmNvbScsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oUmVnZXhQYXR0ZXJucy5lbWFpbCldKSxcclxuICAgICAgbnVtYmVySW5wdXQ6IG5ldyBGb3JtQ29udHJvbCgxMDAsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcbiAgICAgIGN1c3RvbVNlYXJjaGFibGU6IG5ldyBGb3JtQ29udHJvbCh7a2V5OidSZWplY3QnLHZhbHVlOidSZWplY3QnfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIGNoZWNrYm94OiBuZXcgRm9ybUNvbnRyb2wodHJ1ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZFRydWUpLFxyXG4gICAgICB0ZXh0QXJlYTogbmV3IEZvcm1Db250cm9sKCd0ZXh0LWFyZWEnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTApLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg1KV0pLFxyXG4gICAgICBkYXRlUGlja2VyOiBuZXcgRm9ybUNvbnRyb2woJzIwMjQtMTEtMTEnKSxcclxuICAgICAgZGF0ZVBpY2tlclJhbmdlOiBuZXcgRm9ybUNvbnRyb2woe3N0YXJ0RGF0ZTonMjAyNC0xMS0xMScgLCBlbmREYXRlOicyMDI0LTExLTIwJ30pLFxyXG4gICAgICByYWRpbzogbmV3IEZvcm1Db250cm9sKCdPcHRpb24gMScsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICB0b2dnbGU6IG5ldyBGb3JtQ29udHJvbCgnRW5kb3JzZScsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICB0ZWxlcGhvbmU6IG5ldyBGb3JtQ29udHJvbCgnMDUzMjYxNDIxMycsKSxcclxuICAgICAgLy8gLi4ubmV3Rm9ybSxcclxuICAgICAgZmlsZTogbmV3IEZvcm1Db250cm9sKCdFbmRvcnNlJywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLmxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zPy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgICAgbGV0IGlzQWN0aW9uVmFsaWQgPSB0aGlzLmNoZWNrVmFsaWRpdHkob3B0aW9uLnZhbHVlKTtcclxuICAgICAgICB0aGlzLmFjdGlvblN0YXRlU2VydmljZS5zZXRBY3Rpb25WYWxpZChvcHRpb24udmFsdWUsIGlzQWN0aW9uVmFsaWQpO1xyXG4gICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZVxyXG4gICAgICAgICAvKntcclxuICAgICAgICAgIGlucHV0MTogdGhpcy5maWVsZHNGb3JtLmdldCgnaW5wdXQxJykudmFsdWVcclxuICAgICAgICB9Ki9cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBmb3JtVmFsdWUoZm9ybSl7XHJcbmNvbnNvbGUubG9nKGZvcm0udmFsdWUpXHJcbiAgfVxyXG5cclxuICBjaGVja1ZhbGlkaXR5KGFjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xyXG4gICAgICBjYXNlICdTVUJNSVQnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC52YWxpZDtcclxuICAgICAgY2FzZSAnQVBQUk9WRSc6XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBjYXNlICdTRU5EQkFDSyc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBjdXN0b21DYWxsU3VibWl0KGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICBjb25zb2xlLmxvZygnY3VzdG9tQ2FsbFN1Ym1pdCcsIGFjdGlvbilcclxuICB9XHJcblxyXG4gIHJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnJlc2V0KClcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXY+XHJcbjxmb3JtIFtuZ0NsYXNzXT1cInsnZm9ybS1zZWN0aW9uLWRpdmlkZSBmb3JtLXNlY3Rpb24nOiFzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5LCdpbmZvLXNlY3Rpb24nOnNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHl9XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICAgIDxhcHAtaW5wdXQgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIFtsb2FkaW5nXT1cInRydWVcIiB0eXBlPVwiZW5Pbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiaW5wdXRcIiBsYWJlbD1cIklucHV0XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIj48L2FwcC1pbnB1dD5cclxuICAgIDxhcHAtaW5wdXQtY3VycmVuY3kgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiY3VycmVuY3lJbnB1dFwiIGxhYmVsPVwiY3VycmVuY3lcIj48L2FwcC1pbnB1dC1jdXJyZW5jeT5cclxuICAgIDxhcHAtaW5wdXQtZW1haWwgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxJbnB1dFwiIGxhYmVsPVwiZW1haWxcIj48L2FwcC1pbnB1dC1lbWFpbD5cclxuICAgIDxhcHAtaW5wdXQtbnVtYmVyIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGZvcm1Db250cm9sTmFtZT1cIm51bWJlcklucHV0XCIgbGFiZWw9XCJudW1iZXJcIj48L2FwcC1pbnB1dC1udW1iZXI+XHJcbiAgICA8YXBwLWN1c3RvbS1zZWFyY2hhYmxlIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbVNlYXJjaGFibGVcIiBsYWJlbD1cIkN1c3RvbS1zZWFyY2hhYmxlXCIgW29wdGlvbnNdPVwibG92Py5bJ2FwcHJvdmVyQWN0aW9ucyddPy5vcHRpb25zXCIgW2Rpc3BsYXllZExhYmVsXT1cIiduYW1lJ1wiIFtrZXldPVwiJ25hbWUnXCI+PC9hcHAtY3VzdG9tLXNlYXJjaGFibGU+XHJcbiAgICA8YXBwLWNoZWNrYm94ICBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJjaGVja2JveFwiIHRlcm1zTGFiZWw9XCJUZXJtcyBhbmQgY29uZHRpb25zXCIgbGFiZWw9XCJjaGVjay1ib3hcIiBbY29udGFpblRlcm1zXT1cInRydWVcIj48L2FwcC1jaGVja2JveD5cclxuICAgIDxhcHAtdGV4dGFyZWEgIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cInRleHRBcmVhXCIgbGFiZWw9XCJUZXh0LWFyZWFcIj48L2FwcC10ZXh0YXJlYT5cclxuICAgIDxhcHAtZGF0ZXBpY2tlciBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJkYXRlUGlja2VyXCIgW21hdFN1ZmZpeF09XCJ0cnVlXCIgbGFiZWw9XCJEYXRlLXBpY2tlclwiIG1pbkRhdGU9XCJ0b2RheVwiIG1heERhdGU9XCJ0b2RheVwiPjwvYXBwLWRhdGVwaWNrZXI+XHJcbiAgICA8YXBwLWRhdGUtcmFuZ2UtcGlja2VyIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cImRhdGVQaWNrZXJSYW5nZVwiIGxhYmVsPVwiRGF0ZS1waWNrZXItcmFuZ2VcIiBbbWF0U3VmZml4XT1cInRydWVcIj48L2FwcC1kYXRlLXJhbmdlLXBpY2tlcj5cclxuICAgIDxhcHAtcmFkaW8gW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwicmFkaW9cIiBbb3B0aW9uc109XCJvcHRpb25zXCIgbGFiZWw9XCJSYWRpb1wiPjwvYXBwLXJhZGlvPlxyXG4gICAgPGFwcC10b2dnbGUtYnV0dG9uIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiICBmb3JtQ29udHJvbE5hbWU9XCJ0b2dnbGVcIiBbb3B0aW9uc109XCJsb3Y/LlsnYXBwcm92ZXJBY3Rpb25zJ10/Lm9wdGlvbnNcIiBsYWJlbD1cIlRvZ2dsZS1idXR0b25cIiBbZGlzcGxheWVkTGFibGVdPVwiJ25hbWUnXCIgW2tleV09XCInbmFtZSdcIj48L2FwcC10b2dnbGUtYnV0dG9uPlxyXG4gICAgPGFwcC1pbnB1dC10ZWxlcGhvbmUgIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiICBmb3JtQ29udHJvbE5hbWU9XCJ0ZWxlcGhvbmVcIiAgbGFiZWw9XCJUZWxlcGhvbmVcIj48L2FwcC1pbnB1dC10ZWxlcGhvbmU+XHJcbiAgICA8IS0tIDxhcHAtaW5wdXQgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwiaW5wdXQxXCI+PC9hcHAtaW5wdXQ+IC0tPlxyXG5cclxuXHJcbiAgPGFwcC1maWxlLXVwbG9hZGVyIFtjYWxsQXBpXT1cInRydWVcIiAgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwiZmlsZVwiPjwvYXBwLWZpbGUtdXBsb2FkZXI+XHJcbjwvZm9ybT5cclxuPGRzLWJ1dHRvblxyXG4oY2xpY2spPVwiZm9ybVZhbHVlKGZvcm1Hcm91cClcIlxyXG5bbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogIWZvcm1Hcm91cC52YWxpZH1cIlxyXG4+XHJcbnt7IGkxOG4udHJhbnNsYXRlKCdzdWJtaXQnKSB9fVxyXG48L2RzLWJ1dHRvbj5cclxuICA8ZHMtYWxlcnQgY2xhc3M9XCJmdWxsXCIgdHlwZT1cIndhcm5pbmdcIiBpY29uPVwiaW5mb1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMlwiPlxyXG4gICAgICBSZXF1ZXN0IGRldGFpbHMgd29ya2luZyBmaW5lXHJcbiAgICA8L2Rpdj5cclxuICA8L2RzLWFsZXJ0PlxyXG4gIDwhLS0gPGZvcm0gW2Zvcm1Hcm91cF09XCJmaWVsZHNGb3JtXCI+XHJcbiAgICA8YXBwLWlucHV0IGZvcm1Db250cm9sTmFtZT1cImlucHV0MVwiID48L2FwcC1pbnB1dD5cclxuICA8L2Zvcm0+IC0tPlxyXG48L2Rpdj5cclxuQGlmICghc2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seSkge1xyXG4gIDxkaXYgY2xhc3M9XCJtdC00XCI+XHJcbiAgICA8bGliLWFjdGlvbi1idXR0b25zXHJcbiAgICAgIFtsb3ZPcHRpb25zXT1cImxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zXCJcclxuICAgICAgW2xvdlR5cGVdPVwibG92Py5bJ2RlY2lzaW9uJ10/LnR5cGVcIlxyXG4gICAgICBbc2VjdGlvbl09XCJzZWN0aW9uXCJcclxuICAgICAgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgIFtzZWN0aW9uc109XCJmb3JtLnNlY3Rpb25zXCJcclxuICAgICAgW3Nob3dBcHByb3ZhbEN5Y2xlXT1cInRydWVcIlxyXG4gICAgICBbY3VzdG9tQ2FsbF09XCJmYWxzZVwiXHJcbiAgICAgIFtmaWVsZHNGb3JtXT1cImZvcm1Hcm91cFwiXHJcbiAgICAgIChjdXN0b21DYWxsRW1pdCk9XCJjdXN0b21DYWxsU3VibWl0KCRldmVudClcIlxyXG4gICAgICAocmVzZXRGb3JtRW1pdCk9XCJyZXNldEZvcm0oKVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG59XHJcbiJdfQ==
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi90ZXN0Q29tcG9uZW50L3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvdGVzdENvbXBvbmVudC9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUdqRyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUF5QixtQkFBbUIsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEcsT0FBTyxFQUNMLDBCQUEwQixFQUMxQixpQkFBaUIsRUFDakIseUJBQXlCLEVBQ3pCLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsY0FBYyxFQUNkLHNCQUFzQixFQUN0QixtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLHVCQUF1QixFQUN2QixjQUFjLEVBQ2QsdUJBQXVCLEVBRXZCLGlCQUFpQixFQUNsQixNQUFNLG9DQUFvQyxDQUFDO0FBRTVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9GQUFvRixDQUFDOzs7O0FBNkJ6SCxNQUFNLE9BQU8sOEJBQThCO0lBVXRC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LG9GQUNQLGNBQWMsaUtBQ2Qsc0JBQXNCLCtOQUN0QixtQkFBbUIsNnJCQUNuQix5QkFBeUIsMk1BQ3pCLGlCQUFpQiw2S0FDakIsaUJBQWlCLHNHQUNqQixzQkFBc0IsdUtBQ3RCLG1CQUFtQixzS0FDbkIsd0JBQXdCLHFIQUN4QixtQkFBbUIsaUxBQ25CLG9CQUFvQix3TkFDcEIsY0FBYywyRUFDZCxxQkFBcUIsNE5BQ3JCLHVCQUF1QixxR0FDdkIscUJBQXFCLDRuQkFDckIsdUJBQXVCLDRUQUN2QiwwQkFBMEI7OzJGQUdqQiw4QkFBOEI7a0JBM0IxQyxTQUFTOytCQUNFLDZCQUE2QixjQUczQixJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyxXQUMxQzt3QkFDUCxPQUFPO3dCQUNQLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixxQkFBcUI7d0JBQ3JCLHVCQUF1Qjt3QkFDdkIsMEJBQTBCO3FCQUMzQjsrSUFJUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgSW5wdXQsIE5PX0VSUk9SU19TQ0hFTUEsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcclxuaW1wb3J0IHtBY3Rpb25TdGF0ZVNlcnZpY2UsIENvcmVJMThuU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7TmdDbGFzc30gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge0FjdGlvbkJ1dHRvbnNDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7Rm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2x9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge1xyXG4gIEF0dGFjaG1lbnRTZWN0aW9uQ29tcG9uZW50LFxyXG4gIENoZWNrQm94Q29tcG9uZW50LFxyXG4gIEN1c3RvbVNlYXJjaGFibGVDb21wb25lbnQsXHJcbiAgRGF0ZVBpY2tlckNvbXBvbmVudCxcclxuICBEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQsXHJcbiAgSW5wdXRDb21wb25lbnQsXHJcbiAgSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcclxuICBJbnB1dEVtYWlsQ29tcG9uZW50LFxyXG4gIElucHV0TnVtYmVyQ29tcG9uZW50LFxyXG4gIElucHV0VGVsZXBob25lQ29tcG9uZW50LFxyXG4gIFJhZGlvQ29tcG9uZW50LFxyXG4gIFNlYXJjaEVtcGxveWVlQ29tcG9uZW50LFxyXG4gIFNlbGVjdENvbXBvbmVudCxcclxuICBUZXh0YXJlYUNvbXBvbmVudFxyXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSZWdleFBhdHRlcm5zIH0gZnJvbSAnLi4vLi4vcmVnZXgvcmVnZXgtcGF0dGVybnMnO1xyXG5pbXBvcnQgeyBUb2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50c1wiO1xyXG5pbXBvcnQge0RvY3NVcGxvYWRlckNvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9kb2MtdXBsb2FkZXIvZG9jcy11cGxvYWRlci5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJlcXVlc3QtZGV0YWlscy1zZWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVxdWVzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIElucHV0Q29tcG9uZW50LFxyXG4gICAgQWN0aW9uQnV0dG9uc0NvbXBvbmVudCxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBDdXN0b21TZWFyY2hhYmxlQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tCb3hDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIElucHV0Q3VycmVuY3lDb21wb25lbnQsXHJcbiAgICBEYXRlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgSW5wdXRFbWFpbENvbXBvbmVudCxcclxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxyXG4gICAgUmFkaW9Db21wb25lbnQsXHJcbiAgICBUb2dnbGVCdXR0b25Db21wb25lbnQsXHJcbiAgICBJbnB1dFRlbGVwaG9uZUNvbXBvbmVudCxcclxuICAgIERvY3NVcGxvYWRlckNvbXBvbmVudCxcclxuICAgIFNlYXJjaEVtcGxveWVlQ29tcG9uZW50LFxyXG4gICAgQXR0YWNobWVudFNlY3Rpb25Db21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXF1ZXN0RGV0YWlsc1NlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcblxyXG4gIEBJbnB1dCgpIGlzUmVhZE9ubHk6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIGxvdjogYW55O1xyXG4gIEBJbnB1dCgpIGNsYXNzTmFtZTogc3RyaW5nID0gXCJpbmZvLXNlY3Rpb25cIjtcclxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcclxuICBvcHRpb25zOiBzdHJpbmdbXSA9IFsnT3B0aW9uIDEnLCAnT3B0aW9uIDInLCAnT3B0aW9uIDMnXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSwgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgYWN0aW9uU3RhdGVTZXJ2aWNlOiBBY3Rpb25TdGF0ZVNlcnZpY2UpIHtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG4gICAgdGhpcy5mb3JtR3JvdXAuc2V0VmFsdWUodGhpcy5zZWN0aW9uLmJvZHkuZGV0YWlscyk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVGb3JtKCkge1xyXG4gICAgbGV0IG5ld0Zvcm0gPSB7XHJcbiAgICAgIGlucHV0MTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG4gICAgfTtcclxuICAgIHRoaXMubG92Py5bJ2RlY2lzaW9uJ10/Lm9wdGlvbnM/LmZvckVhY2gob3B0aW9uID0+IHtcclxuICAgICAgbmV3Rm9ybVtvcHRpb24udmFsdWVdID0gWycnXTtcclxuICAgIH0pXHJcbiAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBpbnB1dDogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICBjdXJyZW5jeUlucHV0OiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIGVtYWlsSW5wdXQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgbnVtYmVySW5wdXQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgY3VzdG9tU2VhcmNoYWJsZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICBjaGVja2JveDogbmV3IEZvcm1Db250cm9sKG51bGwgLFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICB0ZXh0QXJlYTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICBkYXRlUGlja2VyOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIGRhdGVQaWNrZXJSYW5nZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICByYWRpbzogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICB0b2dnbGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgdGVsZXBob25lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIHNlYXJjaEVtcGxveWVlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIC8vIC4uLm5ld0Zvcm0sXHJcbiAgICAgIGF0dGFjaG1lbnQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgYXR0YWNobWVudFNlY3Rpb246IG5ldyBGb3JtQ29udHJvbChbXSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLmxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zPy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgICAgbGV0IGlzQWN0aW9uVmFsaWQgPSB0aGlzLmNoZWNrVmFsaWRpdHkob3B0aW9uLnZhbHVlKTtcclxuICAgICAgICB0aGlzLmFjdGlvblN0YXRlU2VydmljZS5zZXRBY3Rpb25WYWxpZChvcHRpb24udmFsdWUsIGlzQWN0aW9uVmFsaWQpO1xyXG4gICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZVxyXG4gICAgICAgICAvKntcclxuICAgICAgICAgIGlucHV0MTogdGhpcy5maWVsZHNGb3JtLmdldCgnaW5wdXQxJykudmFsdWVcclxuICAgICAgICB9Ki9cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBmb3JtVmFsdWUoZm9ybSl7XHJcbmNvbnNvbGUubG9nKGZvcm0udmFsdWUpXHJcbiAgfVxyXG5cclxuICBjaGVja1ZhbGlkaXR5KGFjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xyXG4gICAgICBjYXNlICdTVUJNSVQnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC52YWxpZDtcclxuICAgICAgY2FzZSAnQVBQUk9WRSc6XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBjYXNlICdTRU5EQkFDSyc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBjdXN0b21DYWxsU3VibWl0KGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICBjb25zb2xlLmxvZygnY3VzdG9tQ2FsbFN1Ym1pdCcsIGFjdGlvbilcclxuICB9XHJcblxyXG4gIHJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnJlc2V0KClcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXY+XHJcbjxmb3JtIFtuZ0NsYXNzXT1cInsnZm9ybS1zZWN0aW9uLWRpdmlkZSBmb3JtLXNlY3Rpb24nOiFzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5LCdpbmZvLXNlY3Rpb24nOnNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHl9XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICAgIDxhcHAtc2VhcmNoLWVtcGxveWVlIFttdWx0aXBsZV09XCJ0cnVlXCIgW2FycmF5TGlzdF09XCJmb3JtR3JvdXAuZ2V0KCdzZWFyY2hFbXBsb3llZScpLnZhbHVlXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGZvcm1Db250cm9sTmFtZT1cInNlYXJjaEVtcGxveWVlXCIgbGFiZWw9XCJTZWFyY2gtZW1wbG95ZWVcIj48L2FwcC1zZWFyY2gtZW1wbG95ZWU+XHJcbiAgICA8YXBwLWlucHV0IFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBbbG9hZGluZ109XCJ0cnVlXCIgdHlwZT1cImVuT25seVwiIGZvcm1Db250cm9sTmFtZT1cImlucHV0XCIgbGFiZWw9XCJJbnB1dFwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCI+PC9hcHAtaW5wdXQ+XHJcbiAgICA8YXBwLWlucHV0LWN1cnJlbmN5IGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGZvcm1Db250cm9sTmFtZT1cImN1cnJlbmN5SW5wdXRcIiBsYWJlbD1cImN1cnJlbmN5XCI+PC9hcHAtaW5wdXQtY3VycmVuY3k+XHJcbiAgICA8YXBwLWlucHV0LWVtYWlsIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsSW5wdXRcIiBsYWJlbD1cImVtYWlsXCI+PC9hcHAtaW5wdXQtZW1haWw+XHJcbiAgICA8YXBwLWlucHV0LW51bWJlciBjbGFzcz1cInNlY3Rpb24taXRlbVwiIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBmb3JtQ29udHJvbE5hbWU9XCJudW1iZXJJbnB1dFwiIGxhYmVsPVwibnVtYmVyXCI+PC9hcHAtaW5wdXQtbnVtYmVyPlxyXG4gICAgPGFwcC1jdXN0b20tc2VhcmNoYWJsZSBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJjdXN0b21TZWFyY2hhYmxlXCIgbGFiZWw9XCJDdXN0b20tc2VhcmNoYWJsZVwiIFtvcHRpb25zXT1cImxvdj8uWydhcHByb3ZlckFjdGlvbnMnXT8ub3B0aW9uc1wiIFtkaXNwbGF5ZWRMYWJlbF09XCInbmFtZSdcIiBba2V5XT1cIiduYW1lJ1wiPjwvYXBwLWN1c3RvbS1zZWFyY2hhYmxlPlxyXG4gICAgPGFwcC1jaGVja2JveCAgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwiY2hlY2tib3hcIiB0ZXJtc0xhYmVsPVwiVGVybXMgYW5kIGNvbmR0aW9uc1wiIGxhYmVsPVwiY2hlY2stYm94XCIgW2NvbnRhaW5UZXJtc109XCJ0cnVlXCI+PC9hcHAtY2hlY2tib3g+XHJcbiAgICA8YXBwLXRleHRhcmVhICBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJ0ZXh0QXJlYVwiIGxhYmVsPVwiVGV4dC1hcmVhXCI+PC9hcHAtdGV4dGFyZWE+XHJcbiAgICA8YXBwLWRhdGVwaWNrZXIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVBpY2tlclwiIFttYXRTdWZmaXhdPVwidHJ1ZVwiIGxhYmVsPVwiRGF0ZS1waWNrZXJcIj48L2FwcC1kYXRlcGlja2VyPlxyXG4gICAgPGFwcC1kYXRlLXJhbmdlLXBpY2tlciBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJkYXRlUGlja2VyUmFuZ2VcIiBsYWJlbD1cIkRhdGUtcGlja2VyLXJhbmdlXCIgW21hdFN1ZmZpeF09XCJ0cnVlXCI+PC9hcHAtZGF0ZS1yYW5nZS1waWNrZXI+XHJcbiAgICA8YXBwLXJhZGlvIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cInJhZGlvXCIgW29wdGlvbnNdPVwib3B0aW9uc1wiIGxhYmVsPVwiUmFkaW9cIj48L2FwcC1yYWRpbz5cclxuICAgIDxhcHAtdG9nZ2xlLWJ1dHRvbiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiAgZm9ybUNvbnRyb2xOYW1lPVwidG9nZ2xlXCIgW29wdGlvbnNdPVwibG92Py5bJ2FwcHJvdmVyQWN0aW9ucyddPy5vcHRpb25zXCIgbGFiZWw9XCJUb2dnbGUtYnV0dG9uXCIgW2Rpc3BsYXllZExhYmxlXT1cIiduYW1lJ1wiIFtrZXldPVwiJ25hbWUnXCI+PC9hcHAtdG9nZ2xlLWJ1dHRvbj5cclxuICAgIDxhcHAtaW5wdXQtdGVsZXBob25lICBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiAgZm9ybUNvbnRyb2xOYW1lPVwidGVsZXBob25lXCIgIGxhYmVsPVwiVGVsZXBob25lXCI+PC9hcHAtaW5wdXQtdGVsZXBob25lPlxyXG4gIDxhcHAtZmlsZS11cGxvYWRlciBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgW211bHRpcGxlXT1cInRydWVcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGxhYmVsPVwiYXR0YWNobWVudFwiIGZvcm1Db250cm9sTmFtZT1cImF0dGFjaG1lbnRcIj48L2FwcC1maWxlLXVwbG9hZGVyPlxyXG4gIDxhcHAtYXR0YWNobWVudC1zZWN0aW9uIFtkZXNjcmlwdGlvblJlcXVpcmVkXT1cInRydWVcIiBbY29tbWVudHNSZXF1aXJlZF09XCJ0cnVlXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwiYXR0YWNobWVudFNlY3Rpb25cIj48L2FwcC1hdHRhY2htZW50LXNlY3Rpb24+XHJcblxyXG48L2Zvcm0+XHJcbjxkcy1idXR0b25cclxuKGNsaWNrKT1cImZvcm1WYWx1ZShmb3JtR3JvdXApXCJcclxuW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFmb3JtR3JvdXAudmFsaWR9XCJcclxuPlxyXG57eyBpMThuLnRyYW5zbGF0ZSgnc3VibWl0JykgfX1cclxuPC9kcy1idXR0b24+XHJcbiAgPGRzLWFsZXJ0IGNsYXNzPVwiZnVsbFwiIHR5cGU9XCJ3YXJuaW5nXCIgaWNvbj1cImluZm9cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTJcIj5cclxuICAgICAgUmVxdWVzdCBkZXRhaWxzIHdvcmtpbmcgZmluZVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kcy1hbGVydD5cclxuICA8IS0tIDxmb3JtIFtmb3JtR3JvdXBdPVwiZmllbGRzRm9ybVwiPlxyXG4gICAgPGFwcC1pbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpbnB1dDFcIiA+PC9hcHAtaW5wdXQ+XHJcbiAgPC9mb3JtPiAtLT5cclxuPC9kaXY+XHJcbkBpZiAoIXNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHkpIHtcclxuICA8ZGl2IGNsYXNzPVwibXQtNFwiPlxyXG4gICAgPGxpYi1hY3Rpb24tYnV0dG9uc1xyXG4gICAgICBbbG92T3B0aW9uc109XCJsb3Y/LlsnZGVjaXNpb24nXT8ub3B0aW9uc1wiXHJcbiAgICAgIFtsb3ZUeXBlXT1cImxvdj8uWydkZWNpc2lvbiddPy50eXBlXCJcclxuICAgICAgW3NlY3Rpb25dPVwic2VjdGlvblwiXHJcbiAgICAgIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICBbc2VjdGlvbnNdPVwiZm9ybS5zZWN0aW9uc1wiXHJcbiAgICAgIFtzaG93QXBwcm92YWxDeWNsZV09XCJ0cnVlXCJcclxuICAgICAgW2N1c3RvbUNhbGxdPVwiZmFsc2VcIlxyXG4gICAgICBbZmllbGRzRm9ybV09XCJmb3JtR3JvdXBcIlxyXG4gICAgICAoY3VzdG9tQ2FsbEVtaXQpPVwiY3VzdG9tQ2FsbFN1Ym1pdCgkZXZlbnQpXCJcclxuICAgICAgKHJlc2V0Rm9ybUVtaXQpPVwicmVzZXRGb3JtKClcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxufVxyXG4iXX0=
@@ -7,8 +7,8 @@ export class I18nService {
7
7
  coreLocales;
8
8
  language;
9
9
  constructor() {
10
- // this.language = (window as any).wmConfig.language;
11
- this.language = "en";
10
+ this.language = window.wmConfig.language;
11
+ // this.language = "en";
12
12
  this.locales = { en: en.default, ar: ar.default };
13
13
  }
14
14
  translate(key) {
@@ -36,4 +36,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
36
36
  providedIn: 'any',
37
37
  }]
38
38
  }], ctorParameters: () => [] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi90ZXN0Q29tcG9uZW50L3NlcnZpY2VzL2kxOG4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUtwQyxNQUFNLE9BQU8sV0FBVztJQUNkLE9BQU8sQ0FBMkM7SUFDbEQsV0FBVyxDQUEyQztJQUN0RCxRQUFRLENBQVU7SUFFMUI7UUFDRSxxREFBcUQ7UUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFHO1FBQ1gsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQztZQUNILE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ1osTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTSxDQUFDLEVBQUUsQ0FBQztZQUNSLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sTUFBTSxJQUFJLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO3VHQTNCVSxXQUFXOzJHQUFYLFdBQVcsY0FGUixLQUFLOzsyRkFFUixXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxLQUFLO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgZW4gZnJvbSAnLi4vLi4vaTE4bi9lbic7XHJcbmltcG9ydCAqIGFzIGFyIGZyb20gJy4uLy4uL2kxOG4vYXInO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ2FueScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJMThuU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBsb2NhbGVzOiB7W2tleTogc3RyaW5nXToge1trZXk6IHN0cmluZ106IHN0cmluZ319O1xyXG4gIHByaXZhdGUgY29yZUxvY2FsZXM6IHtba2V5OiBzdHJpbmddOiB7W2tleTogc3RyaW5nXTogc3RyaW5nfX07XHJcbiAgcHJpdmF0ZSBsYW5ndWFnZSA6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAvLyB0aGlzLmxhbmd1YWdlID0gKHdpbmRvdyBhcyBhbnkpLndtQ29uZmlnLmxhbmd1YWdlO1xyXG4gICAgdGhpcy5sYW5ndWFnZSA9IFwiZW5cIjtcclxuICAgIHRoaXMubG9jYWxlcyA9IHtlbjogZW4uZGVmYXVsdCwgYXI6IGFyLmRlZmF1bHR9O1xyXG4gIH1cclxuXHJcbiAgdHJhbnNsYXRlKGtleSkge1xyXG4gICAgbGV0IHJlc3VsdCA9IG51bGw7XHJcbiAgICB0cnkge1xyXG4gICAgICByZXN1bHQgPSB0aGlzLmNvcmVMb2NhbGVzW3RoaXMubGFuZ3VhZ2VdW2tleV07XHJcbiAgICAgIGlmICghcmVzdWx0KSB7XHJcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5sb2NhbGVzW3RoaXMubGFuZ3VhZ2VdW2tleV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNhdGNoKGUpIHtcclxuICAgICAgcmVzdWx0ID0gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQgfHwga2V5O1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFuZ3VhZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZTtcclxuICB9XHJcbn1cclxuIl19
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi90ZXN0Q29tcG9uZW50L3NlcnZpY2VzL2kxOG4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUtwQyxNQUFNLE9BQU8sV0FBVztJQUNkLE9BQU8sQ0FBMkM7SUFDbEQsV0FBVyxDQUEyQztJQUN0RCxRQUFRLENBQVU7SUFFMUI7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFJLE1BQWMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ2xELHdCQUF3QjtRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQUc7UUFDWCxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzlDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDWixNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUMsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1IsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxNQUFNLElBQUksR0FBRyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7dUdBM0JVLFdBQVc7MkdBQVgsV0FBVyxjQUZSLEtBQUs7OzJGQUVSLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBlbiBmcm9tICcuLi8uLi9pMThuL2VuJztcclxuaW1wb3J0ICogYXMgYXIgZnJvbSAnLi4vLi4vaTE4bi9hcic7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAnYW55JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEkxOG5TZXJ2aWNlIHtcclxuICBwcml2YXRlIGxvY2FsZXM6IHtba2V5OiBzdHJpbmddOiB7W2tleTogc3RyaW5nXTogc3RyaW5nfX07XHJcbiAgcHJpdmF0ZSBjb3JlTG9jYWxlczoge1trZXk6IHN0cmluZ106IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9fTtcclxuICBwcml2YXRlIGxhbmd1YWdlIDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMubGFuZ3VhZ2UgPSAod2luZG93IGFzIGFueSkud21Db25maWcubGFuZ3VhZ2U7XHJcbiAgICAvLyB0aGlzLmxhbmd1YWdlID0gXCJlblwiO1xyXG4gICAgdGhpcy5sb2NhbGVzID0ge2VuOiBlbi5kZWZhdWx0LCBhcjogYXIuZGVmYXVsdH07XHJcbiAgfVxyXG5cclxuICB0cmFuc2xhdGUoa2V5KSB7XHJcbiAgICBsZXQgcmVzdWx0ID0gbnVsbDtcclxuICAgIHRyeSB7XHJcbiAgICAgIHJlc3VsdCA9IHRoaXMuY29yZUxvY2FsZXNbdGhpcy5sYW5ndWFnZV1ba2V5XTtcclxuICAgICAgaWYgKCFyZXN1bHQpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLmxvY2FsZXNbdGhpcy5sYW5ndWFnZV1ba2V5XTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgY2F0Y2goZSkge1xyXG4gICAgICByZXN1bHQgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdCB8fCBrZXk7XHJcbiAgfVxyXG5cclxuICBnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlO1xyXG4gIH1cclxufVxyXG4iXX0=