bpm-core 0.0.52 → 0.0.54

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 (84) hide show
  1. package/esm2022/lib/app/app.component.mjs +20 -9
  2. package/esm2022/lib/components/app-component-sections/activities/activities.component.mjs +6 -3
  3. package/esm2022/lib/components/app-component-sections/approvals/approvals.component.mjs +3 -6
  4. package/esm2022/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.mjs +69 -56
  5. package/esm2022/lib/components/app-component-sections/faqs/faqs.component.mjs +1 -1
  6. package/esm2022/lib/components/app-component-sections/feedback-section/feedback-section.component.mjs +5 -6
  7. package/esm2022/lib/components/app-component-sections/previous-requests/previous-requests.component.mjs +3 -5
  8. package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +7 -5
  9. package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs +4 -6
  10. package/esm2022/lib/components/shared-components/dialogs/delete-dialog/delete-dialog.component.mjs +5 -4
  11. package/esm2022/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.mjs +76 -51
  12. package/esm2022/lib/components/shared-components/form-field/attachment-section/attachment-section.component.mjs +153 -110
  13. package/esm2022/lib/components/shared-components/form-field/checkbox/checkbox.component.mjs +9 -9
  14. package/esm2022/lib/components/shared-components/form-field/control-value-accessor.directive.mjs +31 -8
  15. package/esm2022/lib/components/shared-components/form-field/custom-searchable-autocomplete/custom-searchable.component.mjs +15 -18
  16. package/esm2022/lib/components/shared-components/form-field/date-picker/date-picker.component.mjs +15 -18
  17. package/esm2022/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.mjs +12 -14
  18. package/esm2022/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.mjs +141 -212
  19. package/esm2022/lib/components/shared-components/form-field/form-label/form-label.component.mjs +9 -9
  20. package/esm2022/lib/components/shared-components/form-field/index.mjs +2 -1
  21. package/esm2022/lib/components/shared-components/form-field/info-item/info-item.component.mjs +3 -3
  22. package/esm2022/lib/components/shared-components/form-field/input/input.component.mjs +19 -33
  23. package/esm2022/lib/components/shared-components/form-field/input-currency/input-currency.component.mjs +16 -26
  24. package/esm2022/lib/components/shared-components/form-field/input-email/input-email.component.mjs +16 -27
  25. package/esm2022/lib/components/shared-components/form-field/input-mask/input-mask.component.mjs +16 -12
  26. package/esm2022/lib/components/shared-components/form-field/input-number/input-number.component.mjs +16 -24
  27. package/esm2022/lib/components/shared-components/form-field/input-telephone/input-telephone.component.mjs +11 -12
  28. package/esm2022/lib/components/shared-components/form-field/radio/radio.component.mjs +10 -10
  29. package/esm2022/lib/components/shared-components/form-field/search-employee/search-employee.component.mjs +43 -108
  30. package/esm2022/lib/components/shared-components/form-field/select/select.component.mjs +2 -2
  31. package/esm2022/lib/components/shared-components/form-field/shared-imports.mjs +19 -1
  32. package/esm2022/lib/components/shared-components/form-field/textarea/textarea.component.mjs +17 -29
  33. package/esm2022/lib/components/shared-components/form-field/toggle-button/toggle-button.component.mjs +11 -20
  34. package/esm2022/lib/components/shared-components/index.mjs +1 -3
  35. package/esm2022/lib/i18n/ar.mjs +5 -3
  36. package/esm2022/lib/i18n/en.mjs +5 -3
  37. package/esm2022/lib/services/core.service.ts.mjs +11 -1
  38. package/esm2022/lib/services/i18n.service.mjs +4 -4
  39. package/esm2022/lib/testComponent/general-approver-section/general-approver-section.component.mjs +2 -2
  40. package/esm2022/lib/testComponent/request-details-section/request-details-section.component.mjs +303 -35
  41. package/esm2022/lib/testComponent/services/i18n.service.mjs +3 -3
  42. package/fesm2022/bpm-core.mjs +1230 -1103
  43. package/fesm2022/bpm-core.mjs.map +1 -1
  44. package/lib/app/app.component.d.ts +5 -2
  45. package/lib/components/app-component-sections/activities/activities.component.d.ts +2 -0
  46. package/lib/components/app-component-sections/approvals/approvals.component.d.ts +1 -1
  47. package/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.d.ts +19 -5
  48. package/lib/components/app-component-sections/feedback-section/feedback-section.component.d.ts +1 -1
  49. package/lib/components/app-component-sections/service-header/service-header.component.d.ts +2 -2
  50. package/lib/components/shared-components/action-buttons/action-buttons.component.d.ts +2 -3
  51. package/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.d.ts +12 -3
  52. package/lib/components/shared-components/form-field/attachment-section/attachment-section.component.d.ts +23 -12
  53. package/lib/components/shared-components/form-field/control-value-accessor.directive.d.ts +7 -3
  54. package/lib/components/shared-components/form-field/date-picker/date-picker.component.d.ts +1 -2
  55. package/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.d.ts +14 -14
  56. package/lib/components/shared-components/form-field/form-label/form-label.component.d.ts +2 -3
  57. package/lib/components/shared-components/form-field/index.d.ts +1 -0
  58. package/lib/components/shared-components/form-field/info-item/info-item.component.d.ts +1 -1
  59. package/lib/components/shared-components/form-field/input/input.component.d.ts +1 -2
  60. package/lib/components/shared-components/form-field/input-currency/input-currency.component.d.ts +1 -2
  61. package/lib/components/shared-components/form-field/input-email/input-email.component.d.ts +1 -2
  62. package/lib/components/shared-components/form-field/input-mask/input-mask.component.d.ts +1 -2
  63. package/lib/components/shared-components/form-field/input-number/input-number.component.d.ts +1 -2
  64. package/lib/components/shared-components/form-field/search-employee/search-employee.component.d.ts +2 -10
  65. package/lib/components/shared-components/form-field/shared-imports.d.ts +11 -2
  66. package/lib/components/shared-components/form-field/textarea/textarea.component.d.ts +0 -3
  67. package/lib/components/shared-components/form-field/toggle-button/toggle-button.component.d.ts +1 -3
  68. package/lib/components/shared-components/index.d.ts +0 -2
  69. package/lib/i18n/ar.d.ts +3 -1
  70. package/lib/i18n/en.d.ts +3 -1
  71. package/lib/services/core.service.ts.d.ts +1 -0
  72. package/lib/testComponent/request-details-section/request-details-section.component.d.ts +40 -2
  73. package/package.json +1 -1
  74. package/src/lib/assets/images/user.svg +6 -0
  75. package/src/lib/assets/scss/_general.scss +4 -1
  76. package/src/lib/assets/scss/_upgrade.scss +4 -2
  77. package/esm2022/lib/components/shared-components/confirmation-popup/confirmation-popup.component.mjs +0 -39
  78. package/esm2022/lib/components/shared-components/delete-popup/delete-popup.component.mjs +0 -19
  79. package/esm2022/lib/components/shared-components/doc-uploader/docs-uploader.component.mjs +0 -686
  80. package/esm2022/lib/environments/environment.local.mjs +0 -27
  81. package/lib/components/shared-components/confirmation-popup/confirmation-popup.component.d.ts +0 -25
  82. package/lib/components/shared-components/delete-popup/delete-popup.component.d.ts +0 -6
  83. package/lib/components/shared-components/doc-uploader/docs-uploader.component.d.ts +0 -144
  84. package/lib/environments/environment.local.d.ts +0 -26
@@ -1,11 +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, AttachmentSectionComponent, CheckBoxComponent, CustomSearchableComponent, DatePickerComponent, DateRangePickerComponent, InputComponent, InputCurrencyComponent, InputEmailComponent, InputNumberComponent, InputTelephoneComponent, RadioComponent, SearchEmployeeComponent, TextareaComponent, ToggleButtonComponent } 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';
7
- import { ToggleButtonComponent } from "../../components/shared-components";
8
- import { DocsUploaderComponent } from "../../components/shared-components/form-field/doc-uploader/docs-uploader.component";
5
+ import { DocsUploaderComponent } from "../../components/shared-components";
9
6
  import * as i0 from "@angular/core";
10
7
  import * as i1 from "../../services";
11
8
  import * as i2 from "@angular/forms";
@@ -17,12 +14,200 @@ export class RequestDetailsSectionComponent {
17
14
  section;
18
15
  form;
19
16
  lov;
17
+ isLoading = false;
20
18
  className = "info-section";
21
- // fieldsForm: FormGroup;
22
- currentSectionId;
23
- lastSectionId;
24
19
  formGroup;
25
20
  options = ['Option 1', 'Option 2', 'Option 3'];
21
+ DEFAULT_PAGE_SIZE = 10;
22
+ DEFAULT_PAGE_NUMBER = 0;
23
+ pageNumber = this.DEFAULT_PAGE_NUMBER;
24
+ pageSize = this.DEFAULT_PAGE_SIZE;
25
+ columnsConfig = [];
26
+ columns = [];
27
+ isError = false;
28
+ categoryData = [
29
+ {
30
+ "assetDeviceType": null,
31
+ "brand": "Benq",
32
+ "colors": null,
33
+ "assetCompanies": null,
34
+ "descAr": null,
35
+ "descEn": null,
36
+ "estoreVisible": false,
37
+ "id": "402",
38
+ "model": "B400",
39
+ "files": null,
40
+ "vendors": [
41
+ {
42
+ "id": 71,
43
+ "vendorName": null,
44
+ "vendorNumber": "26",
45
+ "__typename": "VendorDto"
46
+ }
47
+ ],
48
+ "category": null,
49
+ "assetType": "Scanner",
50
+ "classifications": null,
51
+ "consumedCount": 0,
52
+ "consumedPercentage": 0,
53
+ "specs": [
54
+ "4GB"
55
+ ],
56
+ "sumQuantity": 1,
57
+ "__typename": "AllAssetsDto"
58
+ },
59
+ {
60
+ "assetDeviceType": null,
61
+ "brand": "HP",
62
+ "colors": null,
63
+ "assetCompanies": null,
64
+ "descAr": null,
65
+ "descEn": null,
66
+ "estoreVisible": false,
67
+ "id": "403",
68
+ "model": "EliteBook",
69
+ "files": null,
70
+ "vendors": [
71
+ {
72
+ "id": 71,
73
+ "vendorName": null,
74
+ "vendorNumber": "26",
75
+ "__typename": "VendorDto"
76
+ }
77
+ ],
78
+ "category": null,
79
+ "assetType": "Laptop",
80
+ "classifications": null,
81
+ "consumedCount": 0,
82
+ "consumedPercentage": 0,
83
+ "specs": [
84
+ "512GB"
85
+ ],
86
+ "sumQuantity": 1,
87
+ "__typename": "AllAssetsDto"
88
+ },
89
+ {
90
+ "assetDeviceType": null,
91
+ "brand": "Hp",
92
+ "colors": null,
93
+ "assetCompanies": null,
94
+ "descAr": null,
95
+ "descEn": null,
96
+ "estoreVisible": false,
97
+ "id": "404",
98
+ "model": "Laser",
99
+ "files": null,
100
+ "vendors": [
101
+ {
102
+ "id": 71,
103
+ "vendorName": null,
104
+ "vendorNumber": "26",
105
+ "__typename": "VendorDto"
106
+ }
107
+ ],
108
+ "category": null,
109
+ "assetType": "Printer",
110
+ "classifications": null,
111
+ "consumedCount": 0,
112
+ "consumedPercentage": 0,
113
+ "specs": [
114
+ "2GB"
115
+ ],
116
+ "sumQuantity": 1,
117
+ "__typename": "AllAssetsDto"
118
+ },
119
+ {
120
+ "assetDeviceType": null,
121
+ "brand": "Asus",
122
+ "colors": null,
123
+ "assetCompanies": null,
124
+ "descAr": null,
125
+ "descEn": null,
126
+ "estoreVisible": false,
127
+ "id": "405",
128
+ "model": "A500",
129
+ "files": null,
130
+ "vendors": [
131
+ {
132
+ "id": 71,
133
+ "vendorName": null,
134
+ "vendorNumber": "26",
135
+ "__typename": "VendorDto"
136
+ }
137
+ ],
138
+ "category": null,
139
+ "assetType": "Laptop",
140
+ "classifications": null,
141
+ "consumedCount": 0,
142
+ "consumedPercentage": 0,
143
+ "specs": [
144
+ "1TB"
145
+ ],
146
+ "sumQuantity": 1,
147
+ "__typename": "AllAssetsDto"
148
+ },
149
+ {
150
+ "assetDeviceType": null,
151
+ "brand": "Dell",
152
+ "colors": null,
153
+ "assetCompanies": null,
154
+ "descAr": null,
155
+ "descEn": null,
156
+ "estoreVisible": false,
157
+ "id": "407",
158
+ "model": "Latitude",
159
+ "files": null,
160
+ "vendors": [
161
+ {
162
+ "id": 71,
163
+ "vendorName": null,
164
+ "vendorNumber": "26",
165
+ "__typename": "VendorDto"
166
+ }
167
+ ],
168
+ "category": null,
169
+ "assetType": "Laptop",
170
+ "classifications": null,
171
+ "consumedCount": 0,
172
+ "consumedPercentage": 0,
173
+ "specs": [
174
+ "1TB"
175
+ ],
176
+ "sumQuantity": 4,
177
+ "__typename": "AllAssetsDto"
178
+ },
179
+ {
180
+ "assetDeviceType": null,
181
+ "brand": "Samsung",
182
+ "colors": null,
183
+ "assetCompanies": null,
184
+ "descAr": null,
185
+ "descEn": null,
186
+ "estoreVisible": false,
187
+ "id": "408",
188
+ "model": "Galaxy",
189
+ "files": null,
190
+ "vendors": [
191
+ {
192
+ "id": 71,
193
+ "vendorName": null,
194
+ "vendorNumber": "26",
195
+ "__typename": "VendorDto"
196
+ }
197
+ ],
198
+ "category": null,
199
+ "assetType": "Tablet",
200
+ "classifications": null,
201
+ "consumedCount": 0,
202
+ "consumedPercentage": 0,
203
+ "specs": [
204
+ "256GB"
205
+ ],
206
+ "sumQuantity": 1,
207
+ "__typename": "AllAssetsDto"
208
+ }
209
+ ];
210
+ totalElements = 6;
26
211
  constructor(i18n, fb, actionStateService) {
27
212
  this.i18n = i18n;
28
213
  this.fb = fb;
@@ -30,40 +215,121 @@ export class RequestDetailsSectionComponent {
30
215
  }
31
216
  ngOnInit() {
32
217
  this.createForm();
218
+ this.initializeTableConfig();
219
+ }
220
+ initializeTableConfig() {
221
+ this.initializeColumns();
222
+ this.initializeColumnConfig();
223
+ }
224
+ initializeColumns() {
225
+ this.columns = ['id', 'assetType', 'brand', 'model', 'sumQuantity', 'specs', 'allocate'];
226
+ }
227
+ initializeColumnConfig() {
228
+ this.columnsConfig = [
229
+ {
230
+ label: 'Id',
231
+ type: 'text',
232
+ },
233
+ {
234
+ label: 'Asset Type',
235
+ type: 'text',
236
+ },
237
+ {
238
+ label: 'Brand',
239
+ type: 'text'
240
+ },
241
+ {
242
+ label: 'Model',
243
+ type: 'text'
244
+ },
245
+ {
246
+ label: 'Quantity',
247
+ type: 'text'
248
+ },
249
+ {
250
+ label: 'Capacity',
251
+ type: 'specs',
252
+ clickableText: 'View'
253
+ },
254
+ {
255
+ label: 'Actions',
256
+ type: 'actions',
257
+ actions: [
258
+ { viewMode: 'allocate', actionName: "Allocate", disabled: true },
259
+ { viewMode: 'edit', actionName: "Edit", action: "edit", onClick: (asset) => {
260
+ this.editAsset(asset);
261
+ }, },
262
+ { viewMode: 'delete', actionName: "Delete", action: "delete", onClick: (asset) => {
263
+ this.deleteAsset(asset);
264
+ }, },
265
+ { viewMode: 'chart', actionName: "Chart", action: "chart" },
266
+ ]
267
+ },
268
+ ];
33
269
  }
270
+ // createForm() {
271
+ // let newForm = {
272
+ // input1: ['', Validators.required]
273
+ // };
274
+ // this.lov?.['decision']?.options?.forEach(option => {
275
+ // newForm[option.value] = [''];
276
+ // })
277
+ // this.formGroup = this.fb.group({
278
+ // input: new FormControl(null, Validators.required),
279
+ // currencyInput: new FormControl(null, Validators.required),
280
+ // emailInput: new FormControl(null, Validators.required),
281
+ // numberInput: new FormControl(null, Validators.required),
282
+ // customSearchable: new FormControl(null, Validators.required),
283
+ // checkbox: new FormControl(null ,Validators.requiredTrue),
284
+ // textArea: new FormControl(null, [Validators.required,Validators.maxLength(5)]),
285
+ // datePicker: new FormControl(null, Validators.required),
286
+ // datePickerRange: new FormControl(null, Validators.required),
287
+ // radio: new FormControl(null, Validators.required),
288
+ // toggle: new FormControl(null, Validators.required),
289
+ // telephone: new FormControl(null, Validators.required),
290
+ // searchEmployee: new FormControl(null, Validators.required),
291
+ // // ...newForm,
292
+ // attachment: new FormControl(null, Validators.required),
293
+ // attachmentSection: new FormControl([], Validators.required),
294
+ // });
295
+ // this.formGroup.valueChanges.subscribe(value => {
296
+ // this.lov?.['decision']?.options?.forEach(option => {
297
+ // let isActionValid = this.checkValidity(option.value);
298
+ // this.actionStateService.setActionValid(option.value, isActionValid);
299
+ // this.section.body.details = this.formGroup.value
300
+ // /!*{
301
+ // input1: this.fieldsForm.get('input1').value
302
+ // }*!/
303
+ // })
304
+ // })
305
+ // }
34
306
  createForm() {
35
- let newForm = {
36
- input1: ['', Validators.required]
37
- };
38
- this.lov?.['decision']?.options?.forEach(option => {
39
- newForm[option.value] = [''];
40
- });
41
307
  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'),
54
- // ...newForm,
55
- file: new FormControl('Endorse', Validators.required),
308
+ customerName: new FormControl(null, [Validators.required]),
309
+ customerPhone: new FormControl(null, [Validators.required]),
310
+ reasonForRequest: new FormControl(null, [Validators.required]),
311
+ callType: new FormControl(null, [Validators.required]),
312
+ centerOfCalls: new FormControl(null, [Validators.required]),
313
+ callDate: new FormControl(null, [Validators.required]),
314
+ agreement: new FormControl(null, [Validators.required, Validators.requiredTrue]),
56
315
  });
57
316
  this.formGroup.valueChanges.subscribe(value => {
58
317
  this.lov?.['decision']?.options?.forEach(option => {
59
318
  let isActionValid = this.checkValidity(option.value);
60
319
  this.actionStateService.setActionValid(option.value, isActionValid);
61
320
  this.section.body.details = this.formGroup.value;
62
- /*{
63
- input1: this.fieldsForm.get('input1').value
64
- }*/
321
+ this.section.body.details.customerPhone = this.section.body.details.customerPhone?.e164Number;
322
+ this.section.body.details.agreement = (this.section.body.details.agreement).toString();
65
323
  });
66
324
  });
325
+ console.log(this.section.body.details);
326
+ this.formGroup.setValue(this.section.body.details);
327
+ }
328
+ editAsset(asset) {
329
+ console.log(asset);
330
+ }
331
+ deleteAsset(asset) {
332
+ console.log(asset);
67
333
  }
68
334
  formValue(form) {
69
335
  console.log(form.value);
@@ -89,7 +355,7 @@ export class RequestDetailsSectionComponent {
89
355
  this.formGroup.reset();
90
356
  }
91
357
  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"] }] });
358
+ 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<!--\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\r\n <app-input\r\n class=\"section-item full\" formControlName=\"customerName\"\r\n [label]=\"i18n.translate('customerName')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input>\r\n\r\n\r\n <app-input-telephone\r\n class=\"section-item full\" formControlName=\"customerPhone\"\r\n [label]=\"i18n.translate('customerPhone')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input-telephone>\r\n\r\n\r\n <app-input\r\n class=\"section-item full\" formControlName=\"reasonForRequest\"\r\n [label]=\"i18n.translate('reasonForRequest')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input>\r\n\r\n\r\n <app-custom-searchable\r\n class=\"section-item full\" formControlName=\"callType\"\r\n [label]=\"i18n.translate('callType')\"\r\n [options]=\"lov?.['decision']?.options\"\r\n [displayedLabel]=\"'description'\" [key]=\"'value'\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-custom-searchable>\r\n\r\n\r\n <app-custom-searchable\r\n class=\"section-item full\" formControlName=\"centerOfCalls\"\r\n [label]=\"i18n.translate('centerOfCalls')\"\r\n [options]=\"lov?.['decision']?.options\"\r\n [displayedLabel]=\"'description'\" [key]=\"'value'\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-custom-searchable\r\n >\r\n\r\n\r\n <app-datepicker\r\n class=\"section-item full\" formControlName=\"callDate\"\r\n [label]=\"i18n.translate('callDate')\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-datepicker>\r\n\r\n\r\n <app-checkbox\r\n [containTerms]=\"true\"\r\n class=\"section-item full\" formControlName=\"agreement\"\r\n [label]=\"i18n.translate('agreement')\"\r\n termsLabel=\"Terms and condtions\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-checkbox>\r\n\r\n\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 <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\">Request details working fine</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: ["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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { 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: DatePickerComponent, selector: "app-datepicker", inputs: ["className", "calendarType", "yearOnly", "error", "format"], outputs: ["dateValue"] }, { kind: "component", type: InputTelephoneComponent, selector: "app-input-telephone", inputs: ["floatLabel", "className"] }] });
93
359
  }
94
360
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RequestDetailsSectionComponent, decorators: [{
95
361
  type: Component,
@@ -109,8 +375,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
109
375
  RadioComponent,
110
376
  ToggleButtonComponent,
111
377
  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"] }]
378
+ DocsUploaderComponent,
379
+ SearchEmployeeComponent,
380
+ AttachmentSectionComponent
381
+ ], template: "<div>\r\n<form [ngClass]=\"{'form-section-divide form-section':!section?.header?.readOnly,'info-section':section?.header?.readOnly}\" [formGroup]=\"formGroup\">\r\n<!--\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\r\n <app-input\r\n class=\"section-item full\" formControlName=\"customerName\"\r\n [label]=\"i18n.translate('customerName')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input>\r\n\r\n\r\n <app-input-telephone\r\n class=\"section-item full\" formControlName=\"customerPhone\"\r\n [label]=\"i18n.translate('customerPhone')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input-telephone>\r\n\r\n\r\n <app-input\r\n class=\"section-item full\" formControlName=\"reasonForRequest\"\r\n [label]=\"i18n.translate('reasonForRequest')\"\r\n\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-input>\r\n\r\n\r\n <app-custom-searchable\r\n class=\"section-item full\" formControlName=\"callType\"\r\n [label]=\"i18n.translate('callType')\"\r\n [options]=\"lov?.['decision']?.options\"\r\n [displayedLabel]=\"'description'\" [key]=\"'value'\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-custom-searchable>\r\n\r\n\r\n <app-custom-searchable\r\n class=\"section-item full\" formControlName=\"centerOfCalls\"\r\n [label]=\"i18n.translate('centerOfCalls')\"\r\n [options]=\"lov?.['decision']?.options\"\r\n [displayedLabel]=\"'description'\" [key]=\"'value'\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-custom-searchable\r\n >\r\n\r\n\r\n <app-datepicker\r\n class=\"section-item full\" formControlName=\"callDate\"\r\n [label]=\"i18n.translate('callDate')\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-datepicker>\r\n\r\n\r\n <app-checkbox\r\n [containTerms]=\"true\"\r\n class=\"section-item full\" formControlName=\"agreement\"\r\n [label]=\"i18n.translate('agreement')\"\r\n termsLabel=\"Terms and condtions\"\r\n [required]=\"true\"\r\n [isReadOnly]=\"section?.header?.readOnly\">\r\n </app-checkbox>\r\n\r\n\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 <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\">Request details working fine</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
382
  }], ctorParameters: () => [{ type: i1.CoreI18nService }, { type: i2.FormBuilder }, { type: i1.ActionStateService }], propDecorators: { isReadOnly: [{
115
383
  type: Input
116
384
  }], section: [{
@@ -122,4 +390,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
122
390
  }], className: [{
123
391
  type: Input
124
392
  }] } });
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==
393
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1kZXRhaWxzLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi90ZXN0Q29tcG9uZW50L3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvdGVzdENvbXBvbmVudC9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUdqRyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFDLHNCQUFzQixFQUM1QiwwQkFBMEIsRUFDMUIsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix1QkFBdUIsRUFDdkIsY0FBYyxFQUNkLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDZixxQkFBcUIsRUFDeEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQXlCLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQStCekUsTUFBTSxPQUFPLDhCQUE4QjtJQTRNdEI7SUFBK0I7SUFBeUI7SUExTWxFLFVBQVUsQ0FBVTtJQUNwQixPQUFPLENBQVU7SUFDakIsSUFBSSxDQUFPO0lB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QyxLQUFLLENBQUM7WUFDOUI7Z0JBQ0UsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztJQUNILENBQUM7SUFHRCxnQkFBZ0IsQ0FBQyxNQUFjO1FBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDekMsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3hCLENBQUM7dUdBeldVLDhCQUE4QjsyRkFBOUIsOEJBQThCLG1NQ3BEM0MsaXBNQWdJQSxveUJEbEdJLE9BQU8sb0ZBQ1AsY0FBYyxzSkFDZCxzQkFBc0IsK05BQ3RCLG1CQUFtQiwwNUJBQ25CLHlCQUF5QiwyTUFDekIsaUJBQWlCLDZLQUdqQixtQkFBbUIseUpBTW5CLHVCQUF1Qjs7MkZBUWQsOEJBQThCO2tCQTdCMUMsU0FBUzsrQkFDRSw2QkFBNkIsY0FHM0IsSUFBSSxXQUNQLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsV0FDMUM7d0JBQ1AsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQix5QkFBeUI7d0JBQ3pCLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsd0JBQXdCO3dCQUN4QixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLHVCQUF1Qjt3QkFDdkIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLDBCQUEwQjtxQkFDM0I7K0lBTVEsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFHRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIElucHV0LCBOT19FUlJPUlNfU0NIRU1BLCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Zvcm0sIFNlY3Rpb259IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzXCI7XHJcbmltcG9ydCB7QWN0aW9uU3RhdGVTZXJ2aWNlLCBDb3JlSTE4blNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQge05nQ2xhc3N9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtBY3Rpb25CdXR0b25zQ29tcG9uZW50LFxyXG4gIEF0dGFjaG1lbnRTZWN0aW9uQ29tcG9uZW50LFxyXG4gIENoZWNrQm94Q29tcG9uZW50LFxyXG4gIEN1c3RvbVNlYXJjaGFibGVDb21wb25lbnQsXHJcbiAgRGF0ZVBpY2tlckNvbXBvbmVudCxcclxuICBEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQsXHJcbiAgSW5wdXRDb21wb25lbnQsXHJcbiAgSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcclxuICBJbnB1dEVtYWlsQ29tcG9uZW50LFxyXG4gIElucHV0TnVtYmVyQ29tcG9uZW50LFxyXG4gIElucHV0VGVsZXBob25lQ29tcG9uZW50LFxyXG4gIFJhZGlvQ29tcG9uZW50LFxyXG4gIFNlYXJjaEVtcGxveWVlQ29tcG9uZW50LFxyXG4gIFRleHRhcmVhQ29tcG9uZW50XHJcbiAgLCBUb2dnbGVCdXR0b25Db21wb25lbnRcclxufSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50c1wiO1xyXG5pbXBvcnQge0Zvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMsIEZvcm1Db250cm9sfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtEb2NzVXBsb2FkZXJDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlcXVlc3QtZGV0YWlscy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yZXF1ZXN0LWRldGFpbHMtc2VjdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5PX0VSUk9SU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIEFjdGlvbkJ1dHRvbnNDb21wb25lbnQsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgQ3VzdG9tU2VhcmNoYWJsZUNvbXBvbmVudCxcclxuICAgIENoZWNrQm94Q29tcG9uZW50LFxyXG4gICAgVGV4dGFyZWFDb21wb25lbnQsXHJcbiAgICBJbnB1dEN1cnJlbmN5Q29tcG9uZW50LFxyXG4gICAgRGF0ZVBpY2tlckNvbXBvbmVudCxcclxuICAgIERhdGVSYW5nZVBpY2tlckNvbXBvbmVudCxcclxuICAgIElucHV0RW1haWxDb21wb25lbnQsXHJcbiAgICBJbnB1dE51bWJlckNvbXBvbmVudCxcclxuICAgIFJhZGlvQ29tcG9uZW50LFxyXG4gICAgVG9nZ2xlQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgSW5wdXRUZWxlcGhvbmVDb21wb25lbnQsXHJcbiAgICBEb2NzVXBsb2FkZXJDb21wb25lbnQsXHJcbiAgICBTZWFyY2hFbXBsb3llZUNvbXBvbmVudCxcclxuICAgIEF0dGFjaG1lbnRTZWN0aW9uQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBSZXF1ZXN0RGV0YWlsc1NlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcblxyXG4gIEBJbnB1dCgpIGlzUmVhZE9ubHk6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIGxvdjogYW55O1xyXG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZyA9IFwiaW5mby1zZWN0aW9uXCI7XHJcbiAgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgb3B0aW9uczogc3RyaW5nW10gPSBbJ09wdGlvbiAxJywgJ09wdGlvbiAyJywgJ09wdGlvbiAzJ107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBERUZBVUxUX1BBR0VfU0laRSA9IDEwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgREVGQVVMVF9QQUdFX05VTUJFUiA9IDA7XHJcbiAgcGFnZU51bWJlcjogbnVtYmVyID0gdGhpcy5ERUZBVUxUX1BBR0VfTlVNQkVSO1xyXG4gIHBhZ2VTaXplOiBudW1iZXIgPSB0aGlzLkRFRkFVTFRfUEFHRV9TSVpFO1xyXG4gIGNvbHVtbnNDb25maWc6IGFueVtdID0gW107XHJcbiAgY29sdW1uczogc3RyaW5nW10gPSBbXTtcclxuICBpc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2F0ZWdvcnlEYXRhID0gW1xyXG4gICAge1xyXG4gICAgICBcImFzc2V0RGV2aWNlVHlwZVwiOiBudWxsLFxyXG4gICAgICBcImJyYW5kXCI6IFwiQmVucVwiLFxyXG4gICAgICBcImNvbG9yc1wiOiBudWxsLFxyXG4gICAgICBcImFzc2V0Q29tcGFuaWVzXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0FyXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0VuXCI6IG51bGwsXHJcbiAgICAgIFwiZXN0b3JlVmlzaWJsZVwiOiBmYWxzZSxcclxuICAgICAgXCJpZFwiOiBcIjQwMlwiLFxyXG4gICAgICBcIm1vZGVsXCI6IFwiQjQwMFwiLFxyXG4gICAgICBcImZpbGVzXCI6IG51bGwsXHJcbiAgICAgIFwidmVuZG9yc1wiOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgXCJpZFwiOiA3MSxcclxuICAgICAgICAgIFwidmVuZG9yTmFtZVwiOiBudWxsLFxyXG4gICAgICAgICAgXCJ2ZW5kb3JOdW1iZXJcIjogXCIyNlwiLFxyXG4gICAgICAgICAgXCJfX3R5cGVuYW1lXCI6IFwiVmVuZG9yRHRvXCJcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICAgIFwiY2F0ZWdvcnlcIjogbnVsbCxcclxuICAgICAgXCJhc3NldFR5cGVcIjogXCJTY2FubmVyXCIsXHJcbiAgICAgIFwiY2xhc3NpZmljYXRpb25zXCI6IG51bGwsXHJcbiAgICAgIFwiY29uc3VtZWRDb3VudFwiOiAwLFxyXG4gICAgICBcImNvbnN1bWVkUGVyY2VudGFnZVwiOiAwLFxyXG4gICAgICBcInNwZWNzXCI6IFtcclxuICAgICAgICBcIjRHQlwiXHJcbiAgICAgIF0sXHJcbiAgICAgIFwic3VtUXVhbnRpdHlcIjogMSxcclxuICAgICAgXCJfX3R5cGVuYW1lXCI6IFwiQWxsQXNzZXRzRHRvXCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIFwiYXNzZXREZXZpY2VUeXBlXCI6IG51bGwsXHJcbiAgICAgIFwiYnJhbmRcIjogXCJIUFwiLFxyXG4gICAgICBcImNvbG9yc1wiOiBudWxsLFxyXG4gICAgICBcImFzc2V0Q29tcGFuaWVzXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0FyXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0VuXCI6IG51bGwsXHJcbiAgICAgIFwiZXN0b3JlVmlzaWJsZVwiOiBmYWxzZSxcclxuICAgICAgXCJpZFwiOiBcIjQwM1wiLFxyXG4gICAgICBcIm1vZGVsXCI6IFwiRWxpdGVCb29rXCIsXHJcbiAgICAgIFwiZmlsZXNcIjogbnVsbCxcclxuICAgICAgXCJ2ZW5kb3JzXCI6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBcImlkXCI6IDcxLFxyXG4gICAgICAgICAgXCJ2ZW5kb3JOYW1lXCI6IG51bGwsXHJcbiAgICAgICAgICBcInZlbmRvck51bWJlclwiOiBcIjI2XCIsXHJcbiAgICAgICAgICBcIl9fdHlwZW5hbWVcIjogXCJWZW5kb3JEdG9cIlxyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgICAgXCJjYXRlZ29yeVwiOiBudWxsLFxyXG4gICAgICBcImFzc2V0VHlwZVwiOiBcIkxhcHRvcFwiLFxyXG4gICAgICBcImNsYXNzaWZpY2F0aW9uc1wiOiBudWxsLFxyXG4gICAgICBcImNvbnN1bWVkQ291bnRcIjogMCxcclxuICAgICAgXCJjb25zdW1lZFBlcmNlbnRhZ2VcIjogMCxcclxuICAgICAgXCJzcGVjc1wiOiBbXHJcbiAgICAgICAgXCI1MTJHQlwiXHJcbiAgICAgIF0sXHJcbiAgICAgIFwic3VtUXVhbnRpdHlcIjogMSxcclxuICAgICAgXCJfX3R5cGVuYW1lXCI6IFwiQWxsQXNzZXRzRHRvXCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIFwiYXNzZXREZXZpY2VUeXBlXCI6IG51bGwsXHJcbiAgICAgIFwiYnJhbmRcIjogXCJIcFwiLFxyXG4gICAgICBcImNvbG9yc1wiOiBudWxsLFxyXG4gICAgICBcImFzc2V0Q29tcGFuaWVzXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0FyXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0VuXCI6IG51bGwsXHJcbiAgICAgIFwiZXN0b3JlVmlzaWJsZVwiOiBmYWxzZSxcclxuICAgICAgXCJpZFwiOiBcIjQwNFwiLFxyXG4gICAgICBcIm1vZGVsXCI6IFwiTGFzZXJcIixcclxuICAgICAgXCJmaWxlc1wiOiBudWxsLFxyXG4gICAgICBcInZlbmRvcnNcIjogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIFwiaWRcIjogNzEsXHJcbiAgICAgICAgICBcInZlbmRvck5hbWVcIjogbnVsbCxcclxuICAgICAgICAgIFwidmVuZG9yTnVtYmVyXCI6IFwiMjZcIixcclxuICAgICAgICAgIFwiX190eXBlbmFtZVwiOiBcIlZlbmRvckR0b1wiXHJcbiAgICAgICAgfVxyXG4gICAgICBdLFxyXG4gICAgICBcImNhdGVnb3J5XCI6IG51bGwsXHJcbiAgICAgIFwiYXNzZXRUeXBlXCI6IFwiUHJpbnRlclwiLFxyXG4gICAgICBcImNsYXNzaWZpY2F0aW9uc1wiOiBudWxsLFxyXG4gICAgICBcImNvbnN1bWVkQ291bnRcIjogMCxcclxuICAgICAgXCJjb25zdW1lZFBlcmNlbnRhZ2VcIjogMCxcclxuICAgICAgXCJzcGVjc1wiOiBbXHJcbiAgICAgICAgXCIyR0JcIlxyXG4gICAgICBdLFxyXG4gICAgICBcInN1bVF1YW50aXR5XCI6IDEsXHJcbiAgICAgIFwiX190eXBlbmFtZVwiOiBcIkFsbEFzc2V0c0R0b1wiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBcImFzc2V0RGV2aWNlVHlwZVwiOiBudWxsLFxyXG4gICAgICBcImJyYW5kXCI6IFwiQXN1c1wiLFxyXG4gICAgICBcImNvbG9yc1wiOiBudWxsLFxyXG4gICAgICBcImFzc2V0Q29tcGFuaWVzXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0FyXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0VuXCI6IG51bGwsXHJcbiAgICAgIFwiZXN0b3JlVmlzaWJsZVwiOiBmYWxzZSxcclxuICAgICAgXCJpZFwiOiBcIjQwNVwiLFxyXG4gICAgICBcIm1vZGVsXCI6IFwiQTUwMFwiLFxyXG4gICAgICBcImZpbGVzXCI6IG51bGwsXHJcbiAgICAgIFwidmVuZG9yc1wiOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgXCJpZFwiOiA3MSxcclxuICAgICAgICAgIFwidmVuZG9yTmFtZVwiOiBudWxsLFxyXG4gICAgICAgICAgXCJ2ZW5kb3JOdW1iZXJcIjogXCIyNlwiLFxyXG4gICAgICAgICAgXCJfX3R5cGVuYW1lXCI6IFwiVmVuZG9yRHRvXCJcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICAgIFwiY2F0ZWdvcnlcIjogbnVsbCxcclxuICAgICAgXCJhc3NldFR5cGVcIjogXCJMYXB0b3BcIixcclxuICAgICAgXCJjbGFzc2lmaWNhdGlvbnNcIjogbnVsbCxcclxuICAgICAgXCJjb25zdW1lZENvdW50XCI6IDAsXHJcbiAgICAgIFwiY29uc3VtZWRQZXJjZW50YWdlXCI6IDAsXHJcbiAgICAgIFwic3BlY3NcIjogW1xyXG4gICAgICAgIFwiMVRCXCJcclxuICAgICAgXSxcclxuICAgICAgXCJzdW1RdWFudGl0eVwiOiAxLFxyXG4gICAgICBcIl9fdHlwZW5hbWVcIjogXCJBbGxBc3NldHNEdG9cIlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgXCJhc3NldERldmljZVR5cGVcIjogbnVsbCxcclxuICAgICAgXCJicmFuZFwiOiBcIkRlbGxcIixcclxuICAgICAgXCJjb2xvcnNcIjogbnVsbCxcclxuICAgICAgXCJhc3NldENvbXBhbmllc1wiOiBudWxsLFxyXG4gICAgICBcImRlc2NBclwiOiBudWxsLFxyXG4gICAgICBcImRlc2NFblwiOiBudWxsLFxyXG4gICAgICBcImVzdG9yZVZpc2libGVcIjogZmFsc2UsXHJcbiAgICAgIFwiaWRcIjogXCI0MDdcIixcclxuICAgICAgXCJtb2RlbFwiOiBcIkxhdGl0dWRlXCIsXHJcbiAgICAgIFwiZmlsZXNcIjogbnVsbCxcclxuICAgICAgXCJ2ZW5kb3JzXCI6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBcImlkXCI6IDcxLFxyXG4gICAgICAgICAgXCJ2ZW5kb3JOYW1lXCI6IG51bGwsXHJcbiAgICAgICAgICBcInZlbmRvck51bWJlclwiOiBcIjI2XCIsXHJcbiAgICAgICAgICBcIl9fdHlwZW5hbWVcIjogXCJWZW5kb3JEdG9cIlxyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgICAgXCJjYXRlZ29yeVwiOiBudWxsLFxyXG4gICAgICBcImFzc2V0VHlwZVwiOiBcIkxhcHRvcFwiLFxyXG4gICAgICBcImNsYXNzaWZpY2F0aW9uc1wiOiBudWxsLFxyXG4gICAgICBcImNvbnN1bWVkQ291bnRcIjogMCxcclxuICAgICAgXCJjb25zdW1lZFBlcmNlbnRhZ2VcIjogMCxcclxuICAgICAgXCJzcGVjc1wiOiBbXHJcbiAgICAgICAgXCIxVEJcIlxyXG4gICAgICBdLFxyXG4gICAgICBcInN1bVF1YW50aXR5XCI6IDQsXHJcbiAgICAgIFwiX190eXBlbmFtZVwiOiBcIkFsbEFzc2V0c0R0b1wiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBcImFzc2V0RGV2aWNlVHlwZVwiOiBudWxsLFxyXG4gICAgICBcImJyYW5kXCI6IFwiU2Ftc3VuZ1wiLFxyXG4gICAgICBcImNvbG9yc1wiOiBudWxsLFxyXG4gICAgICBcImFzc2V0Q29tcGFuaWVzXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0FyXCI6IG51bGwsXHJcbiAgICAgIFwiZGVzY0VuXCI6IG51bGwsXHJcbiAgICAgIFwiZXN0b3JlVmlzaWJsZVwiOiBmYWxzZSxcclxuICAgICAgXCJpZFwiOiBcIjQwOFwiLFxyXG4gICAgICBcIm1vZGVsXCI6IFwiR2FsYXh5XCIsXHJcbiAgICAgIFwiZmlsZXNcIjogbnVsbCxcclxuICAgICAgXCJ2ZW5kb3JzXCI6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBcImlkXCI6IDcxLFxyXG4gICAgICAgICAgXCJ2ZW5kb3JOYW1lXCI6IG51bGwsXHJcbiAgICAgICAgICBcInZlbmRvck51bWJlclwiOiBcIjI2XCIsXHJcbiAgICAgICAgICBcIl9fdHlwZW5hbWVcIjogXCJWZW5kb3JEdG9cIlxyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgICAgXCJjYXRlZ29yeVwiOiBudWxsLFxyXG4gICAgICBcImFzc2V0VHlwZVwiOiBcIlRhYmxldFwiLFxyXG4gICAgICBcImNsYXNzaWZpY2F0aW9uc1wiOiBudWxsLFxyXG4gICAgICBcImNvbnN1bWVkQ291bnRcIjogMCxcclxuICAgICAgXCJjb25zdW1lZFBlcmNlbnRhZ2VcIjogMCxcclxuICAgICAgXCJzcGVjc1wiOiBbXHJcbiAgICAgICAgXCIyNTZHQlwiXHJcbiAgICAgIF0sXHJcbiAgICAgIFwic3VtUXVhbnRpdHlcIjogMSxcclxuICAgICAgXCJfX3R5cGVuYW1lXCI6IFwiQWxsQXNzZXRzRHRvXCJcclxuICAgIH1cclxuICBdXHJcblxyXG4gIHRvdGFsRWxlbWVudHM6IG51bWJlciA9IDY7XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaTE4bjogQ29yZUkxOG5TZXJ2aWNlLCBwcml2YXRlIGZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBhY3Rpb25TdGF0ZVNlcnZpY2U6IEFjdGlvblN0YXRlU2VydmljZSkge1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XHJcbiAgICB0aGlzLmluaXRpYWxpemVUYWJsZUNvbmZpZygpXHJcbiAgfVxyXG5cclxuXHJcbiAgaW5pdGlhbGl6ZVRhYmxlQ29uZmlnKCkge1xyXG4gICAgdGhpcy5pbml0aWFsaXplQ29sdW1ucygpXHJcbiAgICB0aGlzLmluaXRpYWxpemVDb2x1bW5Db25maWcoKVxyXG5cclxufVxyXG5pbml0aWFsaXplQ29sdW1ucygpIHtcclxuICB0aGlzLmNvbHVtbnMgPSBbJ2lkJywgJ2Fzc2V0VHlwZScsICdicmFuZCcsICdtb2RlbCcsICdzdW1RdWFudGl0eScsICdzcGVjcycsICdhbGxvY2F0ZSddO1xyXG59XHJcblxyXG5pbml0aWFsaXplQ29sdW1uQ29uZmlnKCkge1xyXG4gIHRoaXMuY29sdW1uc0NvbmZpZyA9IFtcclxuICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6ICdJZCcsXHJcbiAgICAgICAgICB0eXBlOiAndGV4dCcsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnQXNzZXQgVHlwZScsXHJcbiAgICAgICAgICB0eXBlOiAndGV4dCcsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnQnJhbmQnLFxyXG4gICAgICAgICAgdHlwZTogJ3RleHQnXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnTW9kZWwnLFxyXG4gICAgICAgICAgdHlwZTogJ3RleHQnXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnUXVhbnRpdHknLFxyXG4gICAgICAgICAgdHlwZTogJ3RleHQnXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnQ2FwYWNpdHknLFxyXG4gICAgICAgICAgdHlwZTogJ3NwZWNzJyxcclxuICAgICAgICAgIGNsaWNrYWJsZVRleHQ6ICdWaWV3J1xyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6ICdBY3Rpb25zJyxcclxuICAgICAgICB0eXBlOiAnYWN0aW9ucycsXHJcbiAgICAgICAgYWN0aW9uczogW1xyXG4gICAgICAgICAge3ZpZXdNb2RlOiAnYWxsb2NhdGUnLCBhY3Rpb25OYW1lOiBcIkFsbG9jYXRlXCIsIGRpc2FibGVkOnRydWV9LFxyXG4gICAgICAgICAgIHt2aWV3TW9kZTogJ2VkaXQnLCBhY3Rpb25OYW1lOiBcIkVkaXRcIiwgYWN0aW9uOiBcImVkaXRcIixvbkNsaWNrOiAoYXNzZXQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmVkaXRBc3NldChhc3NldCk7XHJcbiAgICAgICAgfSx9LFxyXG4gICAgICAgIHt2aWV3TW9kZTogJ2RlbGV0ZScsIGFjdGlvbk5hbWU6IFwiRGVsZXRlXCIsIGFjdGlvbjogXCJkZWxldGVcIixvbkNsaWNrOiAoYXNzZXQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5kZWxldGVBc3NldChhc3NldCk7XHJcbiAgICAgIH0sfSxcclxuICAgICAge3ZpZXdNb2RlOiAnY2hhcnQnLCBhY3Rpb25OYW1lOiBcIkNoYXJ0XCIsIGFjdGlvbjpcImNoYXJ0XCJ9LFxyXG4gICAgICAgICAgXVxyXG4gICAgfSxcclxuICBdO1xyXG59XHJcblxyXG5cclxuICAvLyBjcmVhdGVGb3JtKCkge1xyXG4gIC8vICAgbGV0IG5ld0Zvcm0gPSB7XHJcbiAgLy8gICAgIGlucHV0MTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG4gIC8vICAgfTtcclxuICAvLyAgIHRoaXMubG92Py5bJ2RlY2lzaW9uJ10/Lm9wdGlvbnM/LmZvckVhY2gob3B0aW9uID0+IHtcclxuICAvLyAgICAgbmV3Rm9ybVtvcHRpb24udmFsdWVdID0gWycnXTtcclxuICAvLyAgIH0pXHJcbiAgLy8gICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gIC8vICAgICBpbnB1dDogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gIC8vICAgICBjdXJyZW5jeUlucHV0OiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgLy8gICAgIGVtYWlsSW5wdXQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAvLyAgICAgbnVtYmVySW5wdXQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAvLyAgICAgY3VzdG9tU2VhcmNoYWJsZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gIC8vICAgICBjaGVja2JveDogbmV3IEZvcm1Db250cm9sKG51bGwgLFZhbGlkYXRvcnMucmVxdWlyZWRUcnVlKSxcclxuICAvLyAgICAgdGV4dEFyZWE6IG5ldyBGb3JtQ29udHJvbChudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCxWYWxpZGF0b3JzLm1heExlbmd0aCg1KV0pLFxyXG4gIC8vICAgICBkYXRlUGlja2VyOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgLy8gICAgIGRhdGVQaWNrZXJSYW5nZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gIC8vICAgICByYWRpbzogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gIC8vICAgICB0b2dnbGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAvLyAgICAgdGVsZXBob25lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgLy8gICAgIHNlYXJjaEVtcGxveWVlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgLy8gICAgIC8vIC4uLm5ld0Zvcm0sXHJcbiAgLy8gICAgIGF0dGFjaG1lbnQ6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAvLyAgICAgYXR0YWNobWVudFNlY3Rpb246IG5ldyBGb3JtQ29udHJvbChbXSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgLy8gICB9KTtcclxuICAvLyAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gIC8vICAgICB0aGlzLmxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zPy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgLy8gICAgICAgbGV0IGlzQWN0aW9uVmFsaWQgPSB0aGlzLmNoZWNrVmFsaWRpdHkob3B0aW9uLnZhbHVlKTtcclxuICAvLyAgICAgICB0aGlzLmFjdGlvblN0YXRlU2VydmljZS5zZXRBY3Rpb25WYWxpZChvcHRpb24udmFsdWUsIGlzQWN0aW9uVmFsaWQpO1xyXG4gIC8vICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZVxyXG4gIC8vICAgICAgICAvISp7XHJcbiAgLy8gICAgICAgICBpbnB1dDE6IHRoaXMuZmllbGRzRm9ybS5nZXQoJ2lucHV0MScpLnZhbHVlXHJcbiAgLy8gICAgICAgfSohL1xyXG4gIC8vICAgICB9KVxyXG4gIC8vICAgfSlcclxuICAvLyB9XHJcbiAgICBjcmVhdGVGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgY3VzdG9tZXJOYW1lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuICAgICAgY3VzdG9tZXJQaG9uZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcbiAgICAgIHJlYXNvbkZvclJlcXVlc3Q6IG5ldyBGb3JtQ29udHJvbChudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxyXG4gICAgICBjYWxsVHlwZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcbiAgICAgIGNlbnRlck9mQ2FsbHM6IG5ldyBGb3JtQ29udHJvbChudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxyXG4gICAgICBjYWxsRGF0ZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcbiAgICAgIGFncmVlbWVudDogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLFZhbGlkYXRvcnMucmVxdWlyZWRUcnVlXSksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLmxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zPy5mb3JFYWNoKG9wdGlvbiA9PiB7XHJcbiAgICAgICAgbGV0IGlzQWN0aW9uVmFsaWQgPSB0aGlzLmNoZWNrVmFsaWRpdHkob3B0aW9uLnZhbHVlKTtcclxuICAgICAgICB0aGlzLmFjdGlvblN0YXRlU2VydmljZS5zZXRBY3Rpb25WYWxpZChvcHRpb24udmFsdWUsIGlzQWN0aW9uVmFsaWQpO1xyXG4gICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMgPSB0aGlzLmZvcm1Hcm91cC52YWx1ZVxyXG4gICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMuY3VzdG9tZXJQaG9uZSA9IHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMuY3VzdG9tZXJQaG9uZT8uZTE2NE51bWJlclxyXG4gICAgICAgIHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMuYWdyZWVtZW50ID0gKHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMuYWdyZWVtZW50KS50b1N0cmluZygpXHJcblxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIGNvbnNvbGUubG9nKHRoaXMuc2VjdGlvbi5ib2R5LmRldGFpbHMpXHJcbiAgICB0aGlzLmZvcm1Hcm91cC5zZXRWYWx1ZSh0aGlzLnNlY3Rpb24uYm9keS5kZXRhaWxzKTtcclxuICB9XHJcblxyXG4gIGVkaXRBc3NldChhc3NldCl7XHJcbiAgICBjb25zb2xlLmxvZyhhc3NldClcclxuICB9XHJcbiAgZGVsZXRlQXNzZXQoYXNzZXQpe1xyXG4gICAgY29uc29sZS5sb2coYXNzZXQpXHJcbiAgfVxyXG5cclxuICBmb3JtVmFsdWUoZm9ybSl7XHJcbmNvbnNvbGUubG9nKGZvcm0udmFsdWUpXHJcbiAgfVxyXG5cclxuICBjaGVja1ZhbGlkaXR5KGFjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xyXG4gICAgICBjYXNlICdTVUJNSVQnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC52YWxpZDtcclxuICAgICAgY2FzZSAnQVBQUk9WRSc6XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBjYXNlICdTRU5EQkFDSyc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLnZhbGlkO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBjdXN0b21DYWxsU3VibWl0KGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICBjb25zb2xlLmxvZygnY3VzdG9tQ2FsbFN1Ym1pdCcsIGFjdGlvbilcclxuICB9XHJcblxyXG4gIHJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwLnJlc2V0KClcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXY+XHJcbjxmb3JtIFtuZ0NsYXNzXT1cInsnZm9ybS1zZWN0aW9uLWRpdmlkZSBmb3JtLXNlY3Rpb24nOiFzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5LCdpbmZvLXNlY3Rpb24nOnNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHl9XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuPCEtLVxyXG4gICAgPGFwcC1zZWFyY2gtZW1wbG95ZWUgW211bHRpcGxlXT1cInRydWVcIiBbYXJyYXlMaXN0XT1cImZvcm1Hcm91cC5nZXQoJ3NlYXJjaEVtcGxveWVlJykudmFsdWVcIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoRW1wbG95ZWVcIiBsYWJlbD1cIlNlYXJjaC1lbXBsb3llZVwiPjwvYXBwLXNlYXJjaC1lbXBsb3llZT5cclxuICAgIDxhcHAtaW5wdXQgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIFtsb2FkaW5nXT1cInRydWVcIiB0eXBlPVwiZW5Pbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiaW5wdXRcIiBsYWJlbD1cIklucHV0XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIj48L2FwcC1pbnB1dD5cclxuICAgIDxhcHAtaW5wdXQtY3VycmVuY3kgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiY3VycmVuY3lJbnB1dFwiIGxhYmVsPVwiY3VycmVuY3lcIj48L2FwcC1pbnB1dC1jdXJyZW5jeT5cclxuICAgIDxhcHAtaW5wdXQtZW1haWwgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxJbnB1dFwiIGxhYmVsPVwiZW1haWxcIj48L2FwcC1pbnB1dC1lbWFpbD5cclxuICAgIDxhcHAtaW5wdXQtbnVtYmVyIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGZvcm1Db250cm9sTmFtZT1cIm51bWJlcklucHV0XCIgbGFiZWw9XCJudW1iZXJcIj48L2FwcC1pbnB1dC1udW1iZXI+XHJcbiAgICA8YXBwLWN1c3RvbS1zZWFyY2hhYmxlIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbVNlYXJjaGFibGVcIiBsYWJlbD1cIkN1c3RvbS1zZWFyY2hhYmxlXCIgW29wdGlvbnNdPVwibG92Py5bJ2FwcHJvdmVyQWN0aW9ucyddPy5vcHRpb25zXCIgW2Rpc3BsYXllZExhYmVsXT1cIiduYW1lJ1wiIFtrZXldPVwiJ25hbWUnXCI+PC9hcHAtY3VzdG9tLXNlYXJjaGFibGU+XHJcbiAgICA8YXBwLWNoZWNrYm94ICBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJjaGVja2JveFwiIHRlcm1zTGFiZWw9XCJUZXJtcyBhbmQgY29uZHRpb25zXCIgbGFiZWw9XCJjaGVjay1ib3hcIiBbY29udGFpblRlcm1zXT1cInRydWVcIj48L2FwcC1jaGVja2JveD5cclxuICAgIDxhcHAtdGV4dGFyZWEgIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cInRleHRBcmVhXCIgbGFiZWw9XCJUZXh0LWFyZWFcIj48L2FwcC10ZXh0YXJlYT5cclxuICAgIDxhcHAtZGF0ZXBpY2tlciBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJkYXRlUGlja2VyXCIgW21hdFN1ZmZpeF09XCJ0cnVlXCIgbGFiZWw9XCJEYXRlLXBpY2tlclwiPjwvYXBwLWRhdGVwaWNrZXI+XHJcbiAgICA8YXBwLWRhdGUtcmFuZ2UtcGlja2VyIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiIGZvcm1Db250cm9sTmFtZT1cImRhdGVQaWNrZXJSYW5nZVwiIGxhYmVsPVwiRGF0ZS1waWNrZXItcmFuZ2VcIiBbbWF0U3VmZml4XT1cInRydWVcIj48L2FwcC1kYXRlLXJhbmdlLXBpY2tlcj5cclxuICAgIDxhcHAtcmFkaW8gW2lzUmVhZE9ubHldPVwiaXNSZWFkT25seVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgZm9ybUNvbnRyb2xOYW1lPVwicmFkaW9cIiBbb3B0aW9uc109XCJvcHRpb25zXCIgbGFiZWw9XCJSYWRpb1wiPjwvYXBwLXJhZGlvPlxyXG4gICAgPGFwcC10b2dnbGUtYnV0dG9uIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiICBmb3JtQ29udHJvbE5hbWU9XCJ0b2dnbGVcIiBbb3B0aW9uc109XCJsb3Y/LlsnYXBwcm92ZXJBY3Rpb25zJ10/Lm9wdGlvbnNcIiBsYWJlbD1cIlRvZ2dsZS1idXR0b25cIiBbZGlzcGxheWVkTGFibGVdPVwiJ25hbWUnXCIgW2tleV09XCInbmFtZSdcIj48L2FwcC10b2dnbGUtYnV0dG9uPlxyXG4gICAgPGFwcC1pbnB1dC10ZWxlcGhvbmUgIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBjbGFzcz1cInNlY3Rpb24taXRlbVwiICBmb3JtQ29udHJvbE5hbWU9XCJ0ZWxlcGhvbmVcIiAgbGFiZWw9XCJUZWxlcGhvbmVcIj48L2FwcC1pbnB1dC10ZWxlcGhvbmU+XHJcbiAgPGFwcC1maWxlLXVwbG9hZGVyIFtpc1JlYWRPbmx5XT1cImlzUmVhZE9ubHlcIiBbbXVsdGlwbGVdPVwidHJ1ZVwiIGNsYXNzPVwic2VjdGlvbi1pdGVtXCIgbGFiZWw9XCJhdHRhY2htZW50XCIgZm9ybUNvbnRyb2xOYW1lPVwiYXR0YWNobWVudFwiPjwvYXBwLWZpbGUtdXBsb2FkZXI+XHJcbiAgPGFwcC1hdHRhY2htZW50LXNlY3Rpb24gW2Rlc2NyaXB0aW9uUmVxdWlyZWRdPVwidHJ1ZVwiIFtjb21tZW50c1JlcXVpcmVkXT1cInRydWVcIiBbaXNSZWFkT25seV09XCJpc1JlYWRPbmx5XCIgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBmb3JtQ29udHJvbE5hbWU9XCJhdHRhY2htZW50U2VjdGlvblwiPjwvYXBwLWF0dGFjaG1lbnQtc2VjdGlvbj5cclxuLS0+XHJcblxyXG4gIDxhcHAtaW5wdXRcclxuICAgICAgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbWVyTmFtZVwiXHJcbiAgICAgIFtsYWJlbF09XCJpMThuLnRyYW5zbGF0ZSgnY3VzdG9tZXJOYW1lJylcIlxyXG5cclxuICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5XCI+XHJcbiAgICA8L2FwcC1pbnB1dD5cclxuXHJcblxyXG4gICAgPGFwcC1pbnB1dC10ZWxlcGhvbmVcclxuICAgICAgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbWVyUGhvbmVcIlxyXG4gICAgICBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2N1c3RvbWVyUGhvbmUnKVwiXHJcblxyXG4gICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIj5cclxuICAgIDwvYXBwLWlucHV0LXRlbGVwaG9uZT5cclxuXHJcblxyXG4gICAgPGFwcC1pbnB1dFxyXG4gICAgICBjbGFzcz1cInNlY3Rpb24taXRlbSBmdWxsXCIgZm9ybUNvbnRyb2xOYW1lPVwicmVhc29uRm9yUmVxdWVzdFwiXHJcbiAgICAgIFtsYWJlbF09XCJpMThuLnRyYW5zbGF0ZSgncmVhc29uRm9yUmVxdWVzdCcpXCJcclxuXHJcbiAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgW2lzUmVhZE9ubHldPVwic2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seVwiPlxyXG4gICAgPC9hcHAtaW5wdXQ+XHJcblxyXG5cclxuICAgIDxhcHAtY3VzdG9tLXNlYXJjaGFibGVcclxuICAgICAgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIGZvcm1Db250cm9sTmFtZT1cImNhbGxUeXBlXCJcclxuICAgICAgW2xhYmVsXT1cImkxOG4udHJhbnNsYXRlKCdjYWxsVHlwZScpXCJcclxuICAgICAgW29wdGlvbnNdPVwibG92Py5bJ2RlY2lzaW9uJ10/Lm9wdGlvbnNcIlxyXG4gICAgICBbZGlzcGxheWVkTGFiZWxdPVwiJ2Rlc2NyaXB0aW9uJ1wiIFtrZXldPVwiJ3ZhbHVlJ1wiXHJcbiAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgW2lzUmVhZE9ubHldPVwic2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seVwiPlxyXG4gICAgPC9hcHAtY3VzdG9tLXNlYXJjaGFibGU+XHJcblxyXG5cclxuICAgIDxhcHAtY3VzdG9tLXNlYXJjaGFibGVcclxuICAgICAgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIGZvcm1Db250cm9sTmFtZT1cImNlbnRlck9mQ2FsbHNcIlxyXG4gICAgICBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2NlbnRlck9mQ2FsbHMnKVwiXHJcbiAgICAgIFtvcHRpb25zXT1cImxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zXCJcclxuICAgICAgW2Rpc3BsYXllZExhYmVsXT1cIidkZXNjcmlwdGlvbidcIiBba2V5XT1cIid2YWx1ZSdcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIj5cclxuICAgIDwvYXBwLWN1c3RvbS1zZWFyY2hhYmxlXHJcbiAgICA+XHJcblxyXG5cclxuICAgIDxhcHAtZGF0ZXBpY2tlclxyXG4gICAgICBjbGFzcz1cInNlY3Rpb24taXRlbSBmdWxsXCIgZm9ybUNvbnRyb2xOYW1lPVwiY2FsbERhdGVcIlxyXG4gICAgICBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2NhbGxEYXRlJylcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIj5cclxuICAgIDwvYXBwLWRhdGVwaWNrZXI+XHJcblxyXG5cclxuICAgIDxhcHAtY2hlY2tib3hcclxuICAgIFtjb250YWluVGVybXNdPVwidHJ1ZVwiXHJcbiAgICAgIGNsYXNzPVwic2VjdGlvbi1pdGVtIGZ1bGxcIiBmb3JtQ29udHJvbE5hbWU9XCJhZ3JlZW1lbnRcIlxyXG4gICAgICBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2FncmVlbWVudCcpXCJcclxuICAgICAgdGVybXNMYWJlbD1cIlRlcm1zIGFuZCBjb25kdGlvbnNcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIj5cclxuICAgIDwvYXBwLWNoZWNrYm94PlxyXG5cclxuXHJcblxyXG48L2Zvcm0+XHJcbjwhLS08ZHMtYnV0dG9uXHJcbihjbGljayk9XCJmb3JtVmFsdWUoZm9ybUdyb3VwKVwiXHJcbltuZ0NsYXNzXT1cInsnZGlzYWJsZWQnOiAhZm9ybUdyb3VwLnZhbGlkfVwiXHJcbj5cclxue3sgaTE4bi50cmFuc2xhdGUoJ3N1Ym1pdCcpIH19XHJcbjwvZHMtYnV0dG9uPlxyXG4gIDxkcy1hbGVydCBjbGFzcz1cImZ1bGxcIiB0eXBlPVwid2FybmluZ1wiIGljb249XCJpbmZvXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0yXCI+XHJcbiAgICAgIFJlcXVlc3QgZGV0YWlscyB3b3JraW5nIGZpbmVcclxuICAgIDwvZGl2PlxyXG4gIDwvZHMtYWxlcnQ+LS0+XHJcbiAgPGRzLWJ1dHRvblxyXG4gICAgKGNsaWNrKT1cImZvcm1WYWx1ZShmb3JtR3JvdXApXCJcclxuICAgIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6ICFmb3JtR3JvdXAudmFsaWQgfVwiXHJcbiAgPlxyXG4gICAge3sgaTE4bi50cmFuc2xhdGUoXCJzdWJtaXRcIikgfX1cclxuICA8L2RzLWJ1dHRvbj5cclxuICA8ZHMtYWxlcnQgY2xhc3M9XCJmdWxsXCIgdHlwZT1cIndhcm5pbmdcIiBpY29uPVwiaW5mb1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMlwiPlJlcXVlc3QgZGV0YWlscyB3b3JraW5nIGZpbmU8L2Rpdj5cclxuICA8L2RzLWFsZXJ0PlxyXG4gIDwhLS0gPGZvcm0gW2Zvcm1Hcm91cF09XCJmaWVsZHNGb3JtXCI+XHJcbiAgICA8YXBwLWlucHV0IGZvcm1Db250cm9sTmFtZT1cImlucHV0MVwiID48L2FwcC1pbnB1dD5cclxuICA8L2Zvcm0+IC0tPlxyXG48L2Rpdj5cclxuQGlmICghc2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seSkge1xyXG48ZGl2IGNsYXNzPVwibXQtNFwiPlxyXG4gIDxsaWItYWN0aW9uLWJ1dHRvbnNcclxuICAgIFtsb3ZPcHRpb25zXT1cImxvdj8uWydkZWNpc2lvbiddPy5vcHRpb25zXCJcclxuICAgIFtsb3ZUeXBlXT1cImxvdj8uWydkZWNpc2lvbiddPy50eXBlXCJcclxuICAgIFtzZWN0aW9uXT1cInNlY3Rpb25cIlxyXG4gICAgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICBbc2VjdGlvbnNdPVwiZm9ybS5zZWN0aW9uc1wiXHJcbiAgICBbc2hvd0FwcHJvdmFsQ3ljbGVdPVwidHJ1ZVwiXHJcbiAgICBbY3VzdG9tQ2FsbF09XCJmYWxzZVwiXHJcbiAgICBbZmllbGRzRm9ybV09XCJmb3JtR3JvdXBcIlxyXG4gICAgKGN1c3RvbUNhbGxFbWl0KT1cImN1c3RvbUNhbGxTdWJtaXQoJGV2ZW50KVwiXHJcbiAgICAocmVzZXRGb3JtRW1pdCk9XCJyZXNldEZvcm0oKVwiXHJcbiAgLz5cclxuPC9kaXY+XHJcbn1cclxuIl19
@@ -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=