valtech-components 2.0.786 → 2.0.794
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.
- package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +3 -3
- package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +26 -8
- package/esm2022/lib/components/molecules/username-input/username-input.component.mjs +3 -3
- package/esm2022/lib/components/organisms/form/form.component.mjs +39 -2
- package/esm2022/lib/components/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/fesm2022/valtech-components.mjs +67 -13
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/select-input/select-input.component.d.ts +9 -0
- package/lib/components/organisms/form/form.component.d.ts +7 -0
- package/lib/components/types.d.ts +2 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/lib/components/styles/overrides.scss +2 -0
|
@@ -22,6 +22,7 @@ import { SearchSelectorComponent } from '../../molecules/select-input/select-inp
|
|
|
22
22
|
import { SelectSearchComponent } from '../../molecules/select-search/select-search.component';
|
|
23
23
|
import { MultiSelectSearchComponent } from '../../molecules/multi-select-search/multi-select-search.component';
|
|
24
24
|
import { TextInputComponent } from '../../molecules/text-input/text-input.component';
|
|
25
|
+
import { TextareaInputComponent } from '../../molecules/textarea-input/textarea-input.component';
|
|
25
26
|
import { PhoneInputComponent } from '../../molecules/phone-input/phone-input.component';
|
|
26
27
|
import { ToggleInputComponent } from '../../molecules/toggle-input/toggle-input.component';
|
|
27
28
|
import { CheckboxRadioInputComponent } from '../../molecules/checkbox-radio-input/checkbox-radio-input.component';
|
|
@@ -45,6 +46,7 @@ export class FormComponent {
|
|
|
45
46
|
// WeakMap: si la referencia del field cambia, el cache se libera.
|
|
46
47
|
this.fieldPropMemo = new WeakMap();
|
|
47
48
|
this.usernamePropMemo = new WeakMap();
|
|
49
|
+
this.textareaPropMemo = new WeakMap();
|
|
48
50
|
}
|
|
49
51
|
ngOnInit() {
|
|
50
52
|
const formControls = {};
|
|
@@ -203,6 +205,34 @@ export class FormComponent {
|
|
|
203
205
|
this.usernamePropMemo.set(field, result);
|
|
204
206
|
return result;
|
|
205
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* Adapter — convierte un `InputMetadata` (con type=TEXTAREA) a `TextareaInputMetadata`.
|
|
210
|
+
* Defaults sensatos: autoGrow + counter habilitado, 4-12 rows.
|
|
211
|
+
*/
|
|
212
|
+
getTextareaProp(field) {
|
|
213
|
+
const cached = this.textareaPropMemo.get(field);
|
|
214
|
+
if (cached)
|
|
215
|
+
return cached;
|
|
216
|
+
const control = this.getControl(field.name);
|
|
217
|
+
const result = {
|
|
218
|
+
control: control,
|
|
219
|
+
name: field.name,
|
|
220
|
+
label: field.label,
|
|
221
|
+
hint: field.hint,
|
|
222
|
+
placeholder: field.placeholder,
|
|
223
|
+
autoGrow: true,
|
|
224
|
+
minRows: 4,
|
|
225
|
+
maxRows: 12,
|
|
226
|
+
maxLength: field.range?.max ?? 2000,
|
|
227
|
+
showCounter: true,
|
|
228
|
+
counterFormat: 'current',
|
|
229
|
+
fill: 'outline',
|
|
230
|
+
errors: field.errors,
|
|
231
|
+
state: field.state,
|
|
232
|
+
};
|
|
233
|
+
this.textareaPropMemo.set(field, result);
|
|
234
|
+
return result;
|
|
235
|
+
}
|
|
206
236
|
get isAtEndOfForm() {
|
|
207
237
|
return isAtEnd(this.elementRef);
|
|
208
238
|
}
|
|
@@ -247,6 +277,9 @@ export class FormComponent {
|
|
|
247
277
|
@case (types.TEXT) {
|
|
248
278
|
<val-text-input [props]="getFieldProp(f)"></val-text-input>
|
|
249
279
|
}
|
|
280
|
+
@case (types.TEXTAREA) {
|
|
281
|
+
<val-textarea-input [props]="getTextareaProp(f)"></val-textarea-input>
|
|
282
|
+
}
|
|
250
283
|
@case (types.CHECK) {
|
|
251
284
|
<val-check-input></val-check-input>
|
|
252
285
|
}
|
|
@@ -315,7 +348,7 @@ export class FormComponent {
|
|
|
315
348
|
></val-button-group>
|
|
316
349
|
</form>
|
|
317
350
|
</div>
|
|
318
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}.field-description{display:block;font-size:.75rem;color:var(--ion-color-medium);margin-bottom:.25rem;line-height:1.4}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input", inputs: ["preset", "props"] }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["preset", "props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["preset", "props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: NumberFromToComponent, selector: "val-number-from-to", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["preset", "props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: MultiSelectSearchComponent, selector: "val-multi-select-search", inputs: ["label", "labelProperty", "valueProperty", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["preset", "props"] }, { kind: "component", type: PhoneInputComponent, selector: "val-phone-input", inputs: ["preset", "props"], outputs: ["phoneChange"] }, { kind: "component", type: ToggleInputComponent, selector: "val-toggle-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckboxRadioInputComponent, selector: "val-checkbox-radio-input", inputs: ["props"] }, { kind: "component", type: UsernameInputComponent, selector: "val-username-input", inputs: ["props"] }] }); }
|
|
351
|
+
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}.field-description{display:block;font-size:.75rem;color:var(--ion-color-medium);margin-bottom:.25rem;line-height:1.4}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["preset", "props"] }, { kind: "component", type: TextareaInputComponent, selector: "val-textarea-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input", inputs: ["preset", "props"] }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["preset", "props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["preset", "props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: NumberFromToComponent, selector: "val-number-from-to", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["preset", "props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: MultiSelectSearchComponent, selector: "val-multi-select-search", inputs: ["label", "labelProperty", "valueProperty", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["preset", "props"] }, { kind: "component", type: PhoneInputComponent, selector: "val-phone-input", inputs: ["preset", "props"], outputs: ["phoneChange"] }, { kind: "component", type: ToggleInputComponent, selector: "val-toggle-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckboxRadioInputComponent, selector: "val-checkbox-radio-input", inputs: ["props"] }, { kind: "component", type: UsernameInputComponent, selector: "val-username-input", inputs: ["props"] }] }); }
|
|
319
352
|
}
|
|
320
353
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormComponent, decorators: [{
|
|
321
354
|
type: Component,
|
|
@@ -325,6 +358,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
325
358
|
DisplayComponent,
|
|
326
359
|
TitleComponent,
|
|
327
360
|
TextInputComponent,
|
|
361
|
+
TextareaInputComponent,
|
|
328
362
|
CheckInputComponent,
|
|
329
363
|
ButtonGroupComponent,
|
|
330
364
|
DividerComponent,
|
|
@@ -373,6 +407,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
373
407
|
@case (types.TEXT) {
|
|
374
408
|
<val-text-input [props]="getFieldProp(f)"></val-text-input>
|
|
375
409
|
}
|
|
410
|
+
@case (types.TEXTAREA) {
|
|
411
|
+
<val-textarea-input [props]="getTextareaProp(f)"></val-textarea-input>
|
|
412
|
+
}
|
|
376
413
|
@case (types.CHECK) {
|
|
377
414
|
<val-check-input></val-check-input>
|
|
378
415
|
}
|
|
@@ -451,4 +488,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
451
488
|
}], onSelectChange: [{
|
|
452
489
|
type: Output
|
|
453
490
|
}] } });
|
|
454
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBR1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QyxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxD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QW9CLGdGQUNwQixxQkFBcUIsa0ZBQ3JCLG1CQUFtQiwrRUFDbkIsc0JBQXNCLDRGQUN0QixpQkFBaUIsNkVBQ2pCLHFCQUFxQix1SkFDckIsMEJBQTBCLGlKQUMxQix1QkFBdUIsMEZBQ3ZCLG1CQUFtQixtSEFDbkIsb0JBQW9CLDBGQUNwQiwyQkFBMkIsd0ZBQzNCLHNCQUFzQjs7NEZBb0diLGFBQWE7a0JBakl6QixTQUFTOytCQUNFLFVBQVUsY0FDUixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLDBCQUEwQjt3QkFDMUIsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsMkJBQTJCO3dCQUMzQixzQkFBc0I7cUJBQ3ZCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0ZUO3lHQUtELEtBQUs7c0JBREosS0FBSztnQkFJTixRQUFRO3NCQURQLE1BQU07Z0JBSVAsU0FBUztzQkFEUixNQUFNO2dCQUlQLGNBQWM7c0JBRGIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIERvQ2hlY2ssXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGlzQXRFbmQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvZG9tJztcbmltcG9ydCB7IERpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9kaXNwbGF5L2Rpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IERpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9kaXZpZGVyL2RpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvdGl0bGUvdGl0bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2J1dHRvbi1ncm91cC9idXR0b24tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IENoZWNrSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY2hlY2staW5wdXQvY2hlY2staW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9jb21tZW50LWlucHV0L2NvbW1lbnQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9kYXRlLWlucHV0L2RhdGUtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtYWlsSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZW1haWwtaW5wdXQvZW1haWwtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEhpbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvaGludC9oaW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIb3VySW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvaG91ci1pbnB1dC9ob3VyLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOdW1iZXJJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9udW1iZXItaW5wdXQvbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOdW1iZXJGcm9tVG9Db21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvbnVtYmVyLWZyb20tdG8vbnVtYmVyLWZyb20tdG8uY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFBpbklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3Bpbi1pbnB1dC9waW4taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFJhZGlvSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvcmFkaW8taW5wdXQvcmFkaW8taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3NlbGVjdC1pbnB1dC9zZWxlY3QtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9zZWxlY3Qtc2VhcmNoL3NlbGVjdC1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IE11bHRpU2VsZWN0U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL211bHRpLXNlbGVjdC1zZWFyY2gvbXVsdGktc2VsZWN0LXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3RleHQtaW5wdXQvdGV4dC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGhvbmVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9waG9uZS1pbnB1dC9waG9uZS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9nZ2xlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdG9nZ2xlLWlucHV0L3RvZ2dsZS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hlY2tib3hSYWRpb0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2NoZWNrYm94LXJhZGlvLWlucHV0L2NoZWNrYm94LXJhZGlvLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVc2VybmFtZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3VzZXJuYW1lLWlucHV0L3VzZXJuYW1lLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVc2VybmFtZUlucHV0TWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdXNlcm5hbWUtaW5wdXQvdHlwZXMnO1xuaW1wb3J0IHsgQnV0dG9uTWV0YWRhdGEsIENvbXBvbmVudFN0YXRlcywgRm9ybU1ldGFkYXRhLCBGb3JtU3VibWl0LCBJbnB1dE1ldGFkYXRhLCBJbnB1dFR5cGUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1mb3JtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIERpc3BsYXlDb21wb25lbnQsXG4gICAgVGl0bGVDb21wb25lbnQsXG4gICAgVGV4dElucHV0Q29tcG9uZW50LFxuICAgIENoZWNrSW5wdXRDb21wb25lbnQsXG4gICAgQnV0dG9uR3JvdXBDb21wb25lbnQsXG4gICAgRGl2aWRlckNvbXBvbmVudCxcbiAgICBIaW50Q29tcG9uZW50LFxuICAgIENvbW1lbnRJbnB1dENvbXBvbmVudCxcbiAgICBEYXRlSW5wdXRDb21wb25lbnQsXG4gICAgRmlsZUlucHV0Q29tcG9uZW50LFxuICAgIEhvdXJJbnB1dENvbXBvbmVudCxcbiAgICBFbWFpbElucHV0Q29tcG9uZW50LFxuICAgIE51bWJlcklucHV0Q29tcG9uZW50LFxuICAgIE51bWJlckZyb21Ub0NvbXBvbmVudCxcbiAgICBSYWRpb0lucHV0Q29tcG9uZW50LFxuICAgIFBhc3N3b3JkSW5wdXRDb21wb25lbnQsXG4gICAgUGluSW5wdXRDb21wb25lbnQsXG4gICAgU2VsZWN0U2VhcmNoQ29tcG9uZW50LFxuICAgIE11bHRpU2VsZWN0U2VhcmNoQ29tcG9uZW50LFxuICAgIFNlYXJjaFNlbGVjdG9yQ29tcG9uZW50LFxuICAgIFBob25lSW5wdXRDb21wb25lbnQsXG4gICAgVG9nZ2xlSW5wdXRDb21wb25lbnQsXG4gICAgQ2hlY2tib3hSYWRpb0lucHV0Q29tcG9uZW50LFxuICAgIFVzZXJuYW1lSW5wdXRDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgICAgIEBpZiAocHJvcHMubmFtZSkge1xuICAgICAgICAgIDx2YWwtZGlzcGxheVxuICAgICAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICAgICAgY29udGVudDogcHJvcHMubmFtZSxcbiAgICAgICAgICAgICAgY29sb3I6ICdkYXJrJyxcbiAgICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgID48L3ZhbC1kaXNwbGF5PlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKHMgb2YgcHJvcHMuc2VjdGlvbnM7IHRyYWNrIHMubmFtZSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uXCI+XG4gICAgICAgICAgICA8dmFsLXRpdGxlIFtwcm9wc109XCJ7IGNvbnRlbnQ6IHMubmFtZSwgc2l6ZTogJ2xhcmdlJywgY29sb3I6ICcnLCBib2xkOiBmYWxzZSB9XCI+PC92YWwtdGl0bGU+XG4gICAgICAgICAgICBAZm9yIChmIG9mIHMuZmllbGRzOyB0cmFjayBmLm5hbWUpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0XCI+XG4gICAgICAgICAgICAgICAgQGlmIChmLnR5cGUgIT09IHR5cGVzLlBIT05FICYmIGYudHlwZSAhPT0gdHlwZXMuSEFORExFKSB7XG4gICAgICAgICAgICAgICAgICA8dmFsLXRpdGxlIFtwcm9wc109XCJ7IGNvbnRlbnQ6IGYubGFiZWwsIHNpemU6ICdzbWFsbCcsIGNvbG9yOiAnZGFyaycsIGJvbGQ6IGZhbHNlIH1cIj48L3ZhbC10aXRsZT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChmLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZpZWxkLWRlc2NyaXB0aW9uXCI+e3sgZi5kZXNjcmlwdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQHN3aXRjaCAoZi50eXBlKSB7XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuVEVYVCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXRleHQtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXRleHQtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuQ0hFQ0spIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1jaGVjay1pbnB1dD48L3ZhbC1jaGVjay1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5DT01NRU5UKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtY29tbWVudC1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtY29tbWVudC1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5EQVRFKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtZGF0ZS1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtZGF0ZS1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5FTUFJTCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWVtYWlsLWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1lbWFpbC1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5GSUxFKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtZmlsZS1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtZmlsZS1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5IT1VSKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtaG91ci1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtaG91ci1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5OVU1CRVIpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1udW1iZXItaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLW51bWJlci1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5OVU1CRVJfRlJPTV9UTykge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLW51bWJlci1mcm9tLXRvIFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1udW1iZXItZnJvbS10bz5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5QQVNTV09SRCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXBhc3N3b3JkLWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1wYXNzd29yZC1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5QSU5fQ09ERSkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXBpbi1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtcGluLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlJBRElPKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtcmFkaW8taW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXJhZGlvLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlNFTEVDVCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXNlbGVjdC1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtc2VsZWN0LWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlNFQVJDSF9TRUxFQ1QpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1zZWxlY3Qtc2VhcmNoIFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1zZWxlY3Qtc2VhcmNoPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLk1VTFRJX1NFTEVDVCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLW11bHRpLXNlbGVjdC1zZWFyY2ggW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLW11bHRpLXNlbGVjdC1zZWFyY2g+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuUEhPTkUpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1waG9uZS1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtcGhvbmUtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuSEFORExFKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtdXNlcm5hbWUtaW5wdXQgW3Byb3BzXT1cImdldFVzZXJuYW1lUHJvcChmKVwiPjwvdmFsLXVzZXJuYW1lLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlRPR0dMRSkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXRvZ2dsZS1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtdG9nZ2xlLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLkNIRUNLQk9YX1JBRElPKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtY2hlY2tib3gtcmFkaW8taW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWNoZWNrYm94LXJhZGlvLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8dmFsLWhpbnQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWhpbnQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPHZhbC1kaXZpZGVyIFtwcm9wc109XCJ7IGZpbGw6ICdzb2xpZCcsIHNpemU6ICdtZWRpdW0nLCBjb2xvcjogJ21lZGl1bScgfVwiPjwvdmFsLWRpdmlkZXI+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPHZhbC1idXR0b24tZ3JvdXBcbiAgICAgICAgICBbcHJvcHNdPVwieyBidXR0b25zOiBhY3Rpb25zLCBwb3NpdGlvbjogJ2NlbnRlcicsIGNvbHVtbmVkOiBmYWxzZSB9XCJcbiAgICAgICAgICAob25DbGljayk9XCJzdWJtaXRIYW5kbGVyKCRldmVudClcIlxuICAgICAgICA+PC92YWwtYnV0dG9uLWdyb3VwPlxuICAgICAgPC9mb3JtPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgRG9DaGVjayB7XG4gIEBJbnB1dCgpXG4gIHByb3BzOiBGb3JtTWV0YWRhdGE7XG5cbiAgQE91dHB1dCgpXG4gIG9uU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtU3VibWl0PigpO1xuXG4gIEBPdXRwdXQoKVxuICBvbkludmFsaWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIG9uU2VsZWN0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGZpZWxkOiBzdHJpbmc7IHZhbHVlOiBhbnkgfT4oKTtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG4gIHR5cGVzID0gSW5wdXRUeXBlO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgcHJpdmF0ZSBhY3Rpb25zQ2FjaGU6IEJ1dHRvbk1ldGFkYXRhW10gPSBbXTtcblxuICAvLyBNZW1vIGRlIGdldEZpZWxkUHJvcC9nZXRVc2VybmFtZVByb3AgcG9yIHJlZmVyZW5jaWEgZGUgZmllbGQg4oCUIGV2aXRhXG4gIC8vIGNyZWFyIHVuIG51ZXZvIG9iamV0byBwcm9wcyBwb3Iga2V5c3Ryb2tlIChjYWRhIENEIGN5Y2xlIGludm9jYXLDrWEgZWxcbiAgLy8gdGVtcGxhdGUgYmluZGluZywgbXVsdGlwbGljYW5kbyByZS1yZW5kZXJzIGVuIGNhc2NhZGEgcG9yICMgZmllbGRzKS5cbiAgLy8gV2Vha01hcDogc2kgbGEgcmVmZXJlbmNpYSBkZWwgZmllbGQgY2FtYmlhLCBlbCBjYWNoZSBzZSBsaWJlcmEuXG4gIHByaXZhdGUgZmllbGRQcm9wTWVtbyA9IG5ldyBXZWFrTWFwPElucHV0TWV0YWRhdGEsIElucHV0TWV0YWRhdGE+KCk7XG4gIHByaXZhdGUgdXNlcm5hbWVQcm9wTWVtbyA9IG5ldyBXZWFrTWFwPElucHV0TWV0YWRhdGEsIFVzZXJuYW1lSW5wdXRNZXRhZGF0YT4oKTtcblxuICAvLyBFc3RhZG8gcHJldmlvIHBhcmEgZGV0ZWN0YXIgY2FtYmlvcyBlbiBuZ0RvQ2hlY2tcbiAgcHJpdmF0ZSBwcmV2aW91c1N0YXRlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbHMgPSB7fTtcbiAgICB0aGlzLnByb3BzLnNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XG4gICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgLy8gSG9ucmEgYGZpZWxkLnZhbHVlYCBhbCBjb25zdHJ1aXIgZWwgRm9ybUdyb3VwIHBhcmEgcXVlIGNvbnRyb2xlcyB0aXBvXG4gICAgICAgIC8vIEhBTkRMRSAocXVlIGNvbnN1bWVuIGVsIGNvbnRyb2wgZGlyZWN0byB2aWEgW2Zvcm1Db250cm9sXSkgcmVjaWJhbiBlbFxuICAgICAgICAvLyB2YWxvciBpbmljaWFsIHNpbiBxdWUgZWwgY2FsbGVyIHRlbmdhIHF1ZSBwYXRjaFZhbHVlIHBvc3QtbW91bnQuXG4gICAgICAgIC8vIEVsIGhlbHBlciBhcHBseURlZmF1bHRWYWx1ZVRvQ29udHJvbCAodmFsLXRleHQtaW5wdXQgZXRjLikgc2lndWVcbiAgICAgICAgLy8gZnVuY2lvbmFuZG8g4oCUIGVzY3JpYmUgc29icmUgdW4gY29udHJvbCB5YSBpbmljaWFsaXphZG8sIGlkZW1wb3RlbnRlLlxuICAgICAgICBjb25zdCBpbml0aWFsVmFsdWUgPSBmaWVsZC52YWx1ZSA/PyBudWxsO1xuICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gdGhpcy50eXBlcy5OVU1CRVJfRlJPTV9UTykge1xuICAgICAgICAgIC8vIENyZWFyIGRvcyBjb250cm9sZXMgcGFyYSBjYW1wb3MgTlVNQkVSX0ZST01fVE9cbiAgICAgICAgICBmb3JtQ29udHJvbHNbYCR7ZmllbGQubmFtZX1fZnJvbWBdID0gW2luaXRpYWxWYWx1ZSwgZmllbGQudmFsaWRhdG9ycyB8fCBbXV07XG4gICAgICAgICAgZm9ybUNvbnRyb2xzW2Ake2ZpZWxkLm5hbWV9X3RvYF0gPSBbaW5pdGlhbFZhbHVlLCBmaWVsZC52YWxpZGF0b3JzIHx8IFtdXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmb3JtQ29udHJvbHNbZmllbGQubmFtZV0gPSBbaW5pdGlhbFZhbHVlLCBmaWVsZC52YWxpZGF0b3JzIHx8IFtdXTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChmb3JtQ29udHJvbHMpO1xuICAgIHRoaXMucHJvcHMuc2VjdGlvbnMuZm9yRWFjaChzZWN0aW9uID0+IHtcbiAgICAgIHNlY3Rpb24uZmllbGRzXG4gICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgeCA9PlxuICAgICAgICAgICAgeC50eXBlID09PSB0aGlzLnR5cGVzLlNFTEVDVCB8fFxuICAgICAgICAgICAgeC50eXBlID09PSB0aGlzLnR5cGVzLlRFWFQgfHxcbiAgICAgICAgICAgIHgudHlwZSA9PT0gdGhpcy50eXBlcy5TRUFSQ0hfU0VMRUNUIHx8XG4gICAgICAgICAgICB4LnR5cGUgPT09IHRoaXMudHlwZXMuTVVMVElfU0VMRUNUXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgIHRoaXMudHJhY2tTZWxlY3RDaGFuZ2VzKGZpZWxkLm5hbWUpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuc3luY0ZpZWxkQ29udHJvbFN0YXRlcygpO1xuICAgIHRoaXMudXBkYXRlQWN0aW9uc0NhY2hlKCk7XG4gICAgdGhpcy5wcmV2aW91c1N0YXRlID0gdGhpcy5wcm9wcy5zdGF0ZTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAvLyBDdWFuZG8gcHJvcHMgY2FtYmlhLCByZWNvbnN0cnVpciBlbCBjYWNoZVxuICAgIGlmIChjaGFuZ2VzWydwcm9wcyddICYmIHRoaXMuZm9ybSkge1xuICAgICAgdGhpcy5zeW5jRmllbGRDb250cm9sU3RhdGVzKCk7XG4gICAgICB0aGlzLnVwZGF0ZUFjdGlvbnNDYWNoZSgpO1xuICAgICAgdGhpcy5wcmV2aW91c1N0YXRlID0gdGhpcy5wcm9wcy5zdGF0ZTtcbiAgICB9XG4gIH1cblxuICBuZ0RvQ2hlY2soKSB7XG4gICAgLy8gRGV0ZWN0YXIgY2FtYmlvcyBlbiBlbCBlc3RhZG8gZGVsIGZvcm11bGFyaW8gKG11dGFjacOzbiBzaW4gY2FtYmlhciByZWZlcmVuY2lhKVxuICAgIGlmICh0aGlzLmZvcm0gJiYgdGhpcy5wcm9wcyAmJiB0aGlzLnByb3BzLnN0YXRlICE9PSB0aGlzLnByZXZpb3VzU3RhdGUpIHtcbiAgICAgIHRoaXMucHJldmlvdXNTdGF0ZSA9IHRoaXMucHJvcHMuc3RhdGU7XG4gICAgICB0aGlzLnVwZGF0ZUFjdGlvbnNDYWNoZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jaHJvbml6ZXMgZm9ybSBjb250cm9sIGRpc2FibGVkL2VuYWJsZWQgc3RhdGUgd2l0aCBmaWVsZCBtZXRhZGF0YS5cbiAgICovXG4gIHByaXZhdGUgc3luY0ZpZWxkQ29udHJvbFN0YXRlcygpIHtcbiAgICB0aGlzLnByb3BzLnNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XG4gICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09IHRoaXMudHlwZXMuTlVNQkVSX0ZST01fVE8pIHtcbiAgICAgICAgICBjb25zdCBmcm9tQ29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChgJHtmaWVsZC5uYW1lfV9mcm9tYCk7XG4gICAgICAgICAgY29uc3QgdG9Db250cm9sID0gdGhpcy5nZXRDb250cm9sKGAke2ZpZWxkLm5hbWV9X3RvYCk7XG5cbiAgICAgICAgICBpZiAoZmllbGQuc3RhdGUgPT09IENvbXBvbmVudFN0YXRlcy5ESVNBQkxFRCkge1xuICAgICAgICAgICAgZnJvbUNvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICB0b0NvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZyb21Db250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICB0b0NvbnRyb2wuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChmaWVsZC5uYW1lKTtcbiAgICAgICAgICBpZiAoZmllbGQuc3RhdGUgPT09IENvbXBvbmVudFN0YXRlcy5ESVNBQkxFRCkge1xuICAgICAgICAgICAgY29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udHJvbC5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWN0dWFsaXphIGVsIGNhY2hlIGRlIGFjdGlvbnMgYmFzYWRvIGVuIGVsIGVzdGFkbyBhY3R1YWwgZGVsIGZvcm0uXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUFjdGlvbnNDYWNoZSgpIHtcbiAgICBsZXQgYWN0aW9uU3RhdGUgPSB0aGlzLnByb3BzLmFjdGlvbnMuc3RhdGU7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5zdGF0ZSA9PT0gQ29tcG9uZW50U3RhdGVzLldPUktJTkcpIHtcbiAgICAgIGFjdGlvblN0YXRlID0gQ29tcG9uZW50U3RhdGVzLldPUktJTkc7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByb3BzLnN0YXRlID09PSBDb21wb25lbnRTdGF0ZXMuRElTQUJMRUQpIHtcbiAgICAgIGFjdGlvblN0YXRlID0gQ29tcG9uZW50U3RhdGVzLkRJU0FCTEVEO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcm9wcy5zdGF0ZSA9PT0gQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQgfHwgdGhpcy5mb3JtPy52YWxpZCkge1xuICAgICAgYWN0aW9uU3RhdGUgPSBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRDtcbiAgICB9XG5cbiAgICB0aGlzLmFjdGlvbnNDYWNoZSA9IFt7IC4uLnRoaXMucHJvcHMuYWN0aW9ucywgc3RhdGU6IGFjdGlvblN0YXRlIH1dO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gQ2xlYW51cCBzdWJzY3JpcHRpb25zIHRvIGF2b2lkIG1lbW9yeSBsZWFrc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICB0cmFja1NlbGVjdENoYW5nZXMoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRDb250cm9sKGZpZWxkTmFtZSk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgIHRoaXMub25TZWxlY3RDaGFuZ2UuZW1pdCh7IGZpZWxkOiBmaWVsZE5hbWUsIHZhbHVlIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1YnNjcmlwdGlvbik7XG4gIH1cblxuICBhc3luYyBzdWJtaXRIYW5kbGVyKHRva2VuPzogc3RyaW5nKSB7XG4gICAgdGhpcy5vblN1Ym1pdC5lbWl0KHsgZmllbGRzOiB0aGlzLmZvcm0uZ2V0UmF3VmFsdWUoKSwgdG9rZW4gfSk7XG4gIH1cblxuICBnZXRDb250cm9sKGZpZWxkOiBzdHJpbmcpOiBGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuRm9ybS5nZXQoZmllbGQpIGFzIEZvcm1Db250cm9sO1xuICB9XG5cbiAgZ2V0RmllbGRQcm9wKGZpZWxkOiBJbnB1dE1ldGFkYXRhKTogSW5wdXRNZXRhZGF0YSB7XG4gICAgY29uc3QgY2FjaGVkID0gdGhpcy5maWVsZFByb3BNZW1vLmdldChmaWVsZCk7XG4gICAgaWYgKGNhY2hlZCkgcmV0dXJuIGNhY2hlZDtcblxuICAgIGlmICghZmllbGQudG9rZW4pIHtcbiAgICAgIGZpZWxkLnRva2VuID0gYGlucHV0LSR7ZmllbGQudHlwZX0tJHtmaWVsZC5uYW1lfWA7XG4gICAgfVxuXG4gICAgbGV0IHJlc3VsdDogSW5wdXRNZXRhZGF0YTtcbiAgICBpZiAoZmllbGQudHlwZSA9PT0gdGhpcy50eXBlcy5OVU1CRVJfRlJPTV9UTykge1xuICAgICAgY29uc3QgZnJvbUNvbnRyb2wgPSB0aGlzLmdldENvbnRyb2woYCR7ZmllbGQubmFtZX1fZnJvbWApO1xuICAgICAgY29uc3QgdG9Db250cm9sID0gdGhpcy5nZXRDb250cm9sKGAke2ZpZWxkLm5hbWV9X3RvYCk7XG4gICAgICByZXN1bHQgPSB7IC4uLmZpZWxkLCBmcm9tQ29udHJvbCwgdG9Db250cm9sLCBjb250cm9sOiB1bmRlZmluZWQgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChmaWVsZC5uYW1lKTtcbiAgICAgIHJlc3VsdCA9IHsgLi4uZmllbGQsIGNvbnRyb2wgfTtcbiAgICB9XG4gICAgdGhpcy5maWVsZFByb3BNZW1vLnNldChmaWVsZCwgcmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkYXB0ZXIg4oCUIGNvbnZpZXJ0ZSB1biBgSW5wdXRNZXRhZGF0YWAgKGNvbiB0eXBlPUhBTkRMRSkgYSBgVXNlcm5hbWVJbnB1dE1ldGFkYXRhYC5cbiAgICogRWwgY2hlY2sgZGUgZGlzcG9uaWJpbGlkYWQgc2UgcmVzdWVsdmUgZGVudHJvIGRlbCBjb21wb25lbnQgKEF1dGhTZXJ2aWNlIGlueWVjdGFkbyk7XG4gICAqIGVsIGNhbGxlciBwdWVkZSBzb2JyZXNjcmliaXJsbyBwYXNhbmRvIGBmaWVsZC5lcnJvcnNgIG8gdW4gYFVzZXJuYW1lSW5wdXRNZXRhZGF0YWBcbiAgICogY3VzdG9tIHVzYW5kbyB0eXBlPVRFWFQgc2kgbmVjZXNpdGEgb3RyYSBmdWVudGUgZGUgdHJ1dGguXG4gICAqL1xuICBnZXRVc2VybmFtZVByb3AoZmllbGQ6IElucHV0TWV0YWRhdGEpOiBVc2VybmFtZUlucHV0TWV0YWRhdGEge1xuICAgIGNvbnN0IGNhY2hlZCA9IHRoaXMudXNlcm5hbWVQcm9wTWVtby5nZXQoZmllbGQpO1xuICAgIGlmIChjYWNoZWQpIHJldHVybiBjYWNoZWQ7XG5cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRDb250cm9sKGZpZWxkLm5hbWUpO1xuICAgIGNvbnN0IHJlc3VsdDogVXNlcm5hbWVJbnB1dE1ldGFkYXRhID0ge1xuICAgICAgY29udHJvbDogY29udHJvbCBhcyBGb3JtQ29udHJvbDxzdHJpbmc+LFxuICAgICAgbGFiZWw6IGZpZWxkLmxhYmVsLFxuICAgICAgaGludDogZmllbGQuaGludCxcbiAgICAgIHBsYWNlaG9sZGVyOiBmaWVsZC5wbGFjZWhvbGRlcixcbiAgICAgIG1pbkxlbmd0aDogZmllbGQucmFuZ2U/Lm1pbixcbiAgICAgIG1heExlbmd0aDogZmllbGQucmFuZ2U/Lm1heCxcbiAgICAgIGVycm9yczogZmllbGQuZXJyb3JzLFxuICAgICAgc3RhdGU6IGZpZWxkLnN0YXRlLFxuICAgIH07XG4gICAgdGhpcy51c2VybmFtZVByb3BNZW1vLnNldChmaWVsZCwgcmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgZ2V0IGlzQXRFbmRPZkZvcm0oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzQXRFbmQodGhpcy5lbGVtZW50UmVmKTtcbiAgfVxuXG4gIGdldCBGb3JtKCk6IEZvcm1Hcm91cCB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybTtcbiAgfVxuXG4gIGdldCBGb3JtU3RhdGUoKTogeyBmb3JtOiBGb3JtR3JvdXA7IGRhdGE6IEZvcm1NZXRhZGF0YSB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgZm9ybTogdGhpcy5Gb3JtLFxuICAgICAgZGF0YTogdGhpcy5wcm9wcyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGFjdGlvbnMoKTogQnV0dG9uTWV0YWRhdGFbXSB7XG4gICAgLy8gUmV0b3JuYXIgZGVsIGNhY2hlIHBhcmEgZXZpdGFyIGNyZWFyIG51ZXZvcyBvYmpldG9zIGVuIGNhZGEgY2ljbG8gZGUgY2hhbmdlIGRldGVjdGlvblxuICAgIHJldHVybiB0aGlzLmFjdGlvbnNDYWNoZTtcbiAgfVxufVxuIl19
|
|
491
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Zvcm0vZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBR1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QyxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBRWpHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBRWpHLE9BQU8sRUFBa0IsZUFBZSxFQUEyQyxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQXVJbEgsTUFBTSxPQUFPLGFBQWE7SUE4QnhCLFlBQ1UsRUFBZSxFQUNmLFVBQXNCO1FBRHRCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBM0JoQyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUcxQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUcvQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFpQyxDQUFDO1FBR25FLFVBQUssR0FBRyxTQUFTLENBQUM7UUFDVixrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFFbkMsaUJBQVksR0FBcUIsRUFBRSxDQUFDO1FBRTVDLHVFQUF1RTtRQUN2RSx3RUFBd0U7UUFDeEUsdUVBQXVFO1FBQ3ZFLGtFQUFrRTtRQUMxRCxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFnQyxDQUFDO1FBQzVELHFCQUFnQixHQUFHLElBQUksT0FBTyxFQUF3QyxDQUFDO1FBQ3ZFLHFCQUFnQixHQUFHLElBQUksT0FBTyxFQUF3QyxDQUFDO0lBUTVFLENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDN0Isd0VBQXdFO2dCQUN4RSx3RUFBd0U7Z0JBQ3hFLG1FQUFtRTtnQkFDbkUsbUVBQW1FO2dCQUNuRSx1RUFBdUU7Z0JBQ3ZFLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO2dCQUN6QyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDN0MsaURBQWlEO29CQUNqRCxZQUFZLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUM1RSxZQUFZLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUM1RSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNwRSxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sQ0FBQyxNQUFNO2lCQUNYLE1BQU0sQ0FDTCxDQUFDLENBQUMsRUFBRSxDQUNGLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO2dCQUM1QixDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSTtnQkFDMUIsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWE7Z0JBQ25DLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQ3JDO2lCQUNBLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDZixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsNENBQTRDO1FBQzVDLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLGlGQUFpRjtRQUNqRixJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUN0QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ssc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDN0IsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQzdDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQztvQkFDMUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDO29CQUV0RCxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO3dCQUM3QyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7d0JBQzFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztvQkFDMUMsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQzt3QkFDekMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO29CQUN6QyxDQUFDO2dCQUNILENBQUM7cUJBQU0sQ0FBQztvQkFDTixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDNUMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDN0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO29CQUN4QyxDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO29CQUN2QyxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssa0JBQWtCO1FBQ3hCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUUzQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRCxXQUFXLEdBQUcsZUFBZSxDQUFDLE9BQU8sQ0FBQztRQUN4QyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekQsV0FBVyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUM7UUFDekMsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssZUFBZSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQzVFLFdBQVcsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDO1FBQ3hDLENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxXQUFXO1FBQ1QsOENBQThDO1FBQzlDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELGtCQUFrQixDQUFDLFNBQWlCO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0MsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQWdCLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFvQjtRQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxJQUFJLE1BQU07WUFBRSxPQUFPLE1BQU0sQ0FBQztRQUUxQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxLQUFLLEdBQUcsU0FBUyxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwRCxDQUFDO1FBRUQsSUFBSSxNQUFxQixDQUFDO1FBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzdDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQztZQUMxRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUM7WUFDdEQsTUFBTSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDcEUsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxNQUFNLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNqQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxLQUFvQjtRQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELElBQUksTUFBTTtZQUFFLE9BQU8sTUFBTSxDQUFDO1FBRTFCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLE1BQU0sTUFBTSxHQUEwQjtZQUNwQyxPQUFPLEVBQUUsT0FBOEI7WUFDdkMsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRztZQUMzQixTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHO1lBQzNCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7U0FDbkIsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxlQUFlLENBQUMsS0FBb0I7UUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxJQUFJLE1BQU07WUFBRSxPQUFPLE1BQU0sQ0FBQztRQUUxQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxNQUFNLE1BQU0sR0FBMEI7WUFDcEMsT0FBTyxFQUFFLE9BQThCO1lBQ3ZDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixRQUFRLEVBQUUsSUFBSTtZQUNkLE9BQU8sRUFBRSxDQUFDO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksSUFBSTtZQUNuQyxXQUFXLEVBQUUsSUFBSTtZQUNqQixhQUFhLEVBQUUsU0FBUztZQUN4QixJQUFJLEVBQUUsU0FBUztZQUNmLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7U0FDbkIsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSztTQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksT0FBTztRQUNULHdGQUF3RjtRQUN4RixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQzsrR0EzUFUsYUFBYTttR0FBYixhQUFhLGtOQXJHZDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrR1QsMDhGQTlIQyxZQUFZLDhCQUNaLG1CQUFtQixxYkFDbkIsZ0JBQWdCLDJFQUNoQixjQUFjLHlFQUNkLGtCQUFrQix3RkFDbEIsc0JBQXNCLDRGQUN0QixtQkFBbUIseUZBQ25CLG9CQUFvQixzR0FDcEIsZ0JBQWdCLDJFQUNoQixhQUFhLHdFQUNiLHFCQUFxQixpRkFDckIsa0JBQWtCLHdGQUNsQixrQkFBa0IsOEVBQ2xCLGtCQUFrQiw4RUFDbEIsbUJBQW1CLHlGQUNuQixvQkFBb0IsZ0ZBQ3BCLHFCQUFxQixrRkFDckIsbUJBQW1CLCtFQUNuQixzQkFBc0IsNEZBQ3RCLGlCQUFpQiw2RUFDakIscUJBQXFCLHVKQUNyQiwwQkFBMEIsaUpBQzFCLHVCQUF1QiwwRkFDdkIsbUJBQW1CLG1IQUNuQixvQkFBb0IsMEZBQ3BCLDJCQUEyQix3RkFDM0Isc0JBQXNCOzs0RkF1R2IsYUFBYTtrQkFySXpCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLHVCQUF1Qjt3QkFDdkIsbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLDJCQUEyQjt3QkFDM0Isc0JBQXNCO3FCQUN2QixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtHVDt5R0FLRCxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxNQUFNO2dCQUlQLFNBQVM7c0JBRFIsTUFBTTtnQkFJUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBEb0NoZWNrLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBpc0F0RW5kIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2RvbSc7XG5pbXBvcnQgeyBEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvZGlzcGxheS9kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdXR0b25Hcm91cENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGVja0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2NoZWNrLWlucHV0L2NoZWNrLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50SW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY29tbWVudC1pbnB1dC9jb21tZW50LWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbWFpbElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2VtYWlsLWlucHV0L2VtYWlsLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIaW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2hpbnQvaGludC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSG91cklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2hvdXItaW5wdXQvaG91ci1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtYmVySW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtYmVyRnJvbVRvQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL251bWJlci1mcm9tLXRvL251bWJlci1mcm9tLXRvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYXNzd29yZElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3Bhc3N3b3JkLWlucHV0L3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQaW5JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9waW4taW5wdXQvcGluLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSYWRpb0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3JhZGlvLWlucHV0L3JhZGlvLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWFyY2hTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9zZWxlY3QtaW5wdXQvc2VsZWN0LWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvc2VsZWN0LXNlYXJjaC9zZWxlY3Qtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNdWx0aVNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9tdWx0aS1zZWxlY3Qtc2VhcmNoL211bHRpLXNlbGVjdC1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRhcmVhSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdGV4dGFyZWEtaW5wdXQvdGV4dGFyZWEtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRhcmVhSW5wdXRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90eXBlcyc7XG5pbXBvcnQgeyBQaG9uZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3Bob25lLWlucHV0L3Bob25lLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2dnbGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy90b2dnbGUtaW5wdXQvdG9nZ2xlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGVja2JveFJhZGlvSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY2hlY2tib3gtcmFkaW8taW5wdXQvY2hlY2tib3gtcmFkaW8taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJuYW1lSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdXNlcm5hbWUtaW5wdXQvdXNlcm5hbWUtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFVzZXJuYW1lSW5wdXRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy91c2VybmFtZS1pbnB1dC90eXBlcyc7XG5pbXBvcnQgeyBCdXR0b25NZXRhZGF0YSwgQ29tcG9uZW50U3RhdGVzLCBGb3JtTWV0YWRhdGEsIEZvcm1TdWJtaXQsIElucHV0TWV0YWRhdGEsIElucHV0VHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWZvcm0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRGlzcGxheUNvbXBvbmVudCxcbiAgICBUaXRsZUNvbXBvbmVudCxcbiAgICBUZXh0SW5wdXRDb21wb25lbnQsXG4gICAgVGV4dGFyZWFJbnB1dENvbXBvbmVudCxcbiAgICBDaGVja0lucHV0Q29tcG9uZW50LFxuICAgIEJ1dHRvbkdyb3VwQ29tcG9uZW50LFxuICAgIERpdmlkZXJDb21wb25lbnQsXG4gICAgSGludENvbXBvbmVudCxcbiAgICBDb21tZW50SW5wdXRDb21wb25lbnQsXG4gICAgRGF0ZUlucHV0Q29tcG9uZW50LFxuICAgIEZpbGVJbnB1dENvbXBvbmVudCxcbiAgICBIb3VySW5wdXRDb21wb25lbnQsXG4gICAgRW1haWxJbnB1dENvbXBvbmVudCxcbiAgICBOdW1iZXJJbnB1dENvbXBvbmVudCxcbiAgICBOdW1iZXJGcm9tVG9Db21wb25lbnQsXG4gICAgUmFkaW9JbnB1dENvbXBvbmVudCxcbiAgICBQYXNzd29yZElucHV0Q29tcG9uZW50LFxuICAgIFBpbklucHV0Q29tcG9uZW50LFxuICAgIFNlbGVjdFNlYXJjaENvbXBvbmVudCxcbiAgICBNdWx0aVNlbGVjdFNlYXJjaENvbXBvbmVudCxcbiAgICBTZWFyY2hTZWxlY3RvckNvbXBvbmVudCxcbiAgICBQaG9uZUlucHV0Q29tcG9uZW50LFxuICAgIFRvZ2dsZUlucHV0Q29tcG9uZW50LFxuICAgIENoZWNrYm94UmFkaW9JbnB1dENvbXBvbmVudCxcbiAgICBVc2VybmFtZUlucHV0Q29tcG9uZW50LFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICBAaWYgKHByb3BzLm5hbWUpIHtcbiAgICAgICAgICA8dmFsLWRpc3BsYXlcbiAgICAgICAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IHByb3BzLm5hbWUsXG4gICAgICAgICAgICAgIGNvbG9yOiAnZGFyaycsXG4gICAgICAgICAgICAgIHNpemU6ICdzbWFsbCcsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICA+PC92YWwtZGlzcGxheT5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChzIG9mIHByb3BzLnNlY3Rpb25zOyB0cmFjayBzLm5hbWUpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvblwiPlxuICAgICAgICAgICAgPHZhbC10aXRsZSBbcHJvcHNdPVwieyBjb250ZW50OiBzLm5hbWUsIHNpemU6ICdsYXJnZScsIGNvbG9yOiAnJywgYm9sZDogZmFsc2UgfVwiPjwvdmFsLXRpdGxlPlxuICAgICAgICAgICAgQGZvciAoZiBvZiBzLmZpZWxkczsgdHJhY2sgZi5uYW1lKSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dFwiPlxuICAgICAgICAgICAgICAgIEBpZiAoZi50eXBlICE9PSB0eXBlcy5QSE9ORSAmJiBmLnR5cGUgIT09IHR5cGVzLkhBTkRMRSkge1xuICAgICAgICAgICAgICAgICAgPHZhbC10aXRsZSBbcHJvcHNdPVwieyBjb250ZW50OiBmLmxhYmVsLCBzaXplOiAnc21hbGwnLCBjb2xvcjogJ2RhcmsnLCBib2xkOiBmYWxzZSB9XCI+PC92YWwtdGl0bGU+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoZi5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmaWVsZC1kZXNjcmlwdGlvblwiPnt7IGYuZGVzY3JpcHRpb24gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBzd2l0Y2ggKGYudHlwZSkge1xuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlRFWFQpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC10ZXh0LWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC10ZXh0LWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlRFWFRBUkVBKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtdGV4dGFyZWEtaW5wdXQgW3Byb3BzXT1cImdldFRleHRhcmVhUHJvcChmKVwiPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLkNIRUNLKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtY2hlY2staW5wdXQ+PC92YWwtY2hlY2staW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuQ09NTUVOVCkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWNvbW1lbnQtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWNvbW1lbnQtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuREFURSkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWRhdGUtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWRhdGUtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuRU1BSUwpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1lbWFpbC1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtZW1haWwtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuRklMRSkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWZpbGUtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWZpbGUtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuSE9VUikge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWhvdXItaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLWhvdXItaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuTlVNQkVSKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtbnVtYmVyLWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1udW1iZXItaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuTlVNQkVSX0ZST01fVE8pIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1udW1iZXItZnJvbS10byBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtbnVtYmVyLWZyb20tdG8+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuUEFTU1dPUkQpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1wYXNzd29yZC1pbnB1dCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtcGFzc3dvcmQtaW5wdXQ+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAY2FzZSAodHlwZXMuUElOX0NPREUpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1waW4taW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXBpbi1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5SQURJTykge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXJhZGlvLWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1yYWRpby1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5TRUxFQ1QpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1zZWxlY3QtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXNlbGVjdC1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5TRUFSQ0hfU0VMRUNUKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtc2VsZWN0LXNlYXJjaCBbcHJvcHNdPVwiZ2V0RmllbGRQcm9wKGYpXCI+PC92YWwtc2VsZWN0LXNlYXJjaD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5NVUxUSV9TRUxFQ1QpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC1tdWx0aS1zZWxlY3Qtc2VhcmNoIFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1tdWx0aS1zZWxlY3Qtc2VhcmNoPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLlBIT05FKSB7XG4gICAgICAgICAgICAgICAgICAgIDx2YWwtcGhvbmUtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXBob25lLWlucHV0PlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGNhc2UgKHR5cGVzLkhBTkRMRSkge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLXVzZXJuYW1lLWlucHV0IFtwcm9wc109XCJnZXRVc2VybmFtZVByb3AoZilcIj48L3ZhbC11c2VybmFtZS1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5UT0dHTEUpIHtcbiAgICAgICAgICAgICAgICAgICAgPHZhbC10b2dnbGUtaW5wdXQgW3Byb3BzXT1cImdldEZpZWxkUHJvcChmKVwiPjwvdmFsLXRvZ2dsZS1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBjYXNlICh0eXBlcy5DSEVDS0JPWF9SQURJTykge1xuICAgICAgICAgICAgICAgICAgICA8dmFsLWNoZWNrYm94LXJhZGlvLWlucHV0IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1jaGVja2JveC1yYWRpby1pbnB1dD5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPHZhbC1oaW50IFtwcm9wc109XCJnZXRGaWVsZFByb3AoZilcIj48L3ZhbC1oaW50PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDx2YWwtZGl2aWRlciBbcHJvcHNdPVwieyBmaWxsOiAnc29saWQnLCBzaXplOiAnbWVkaXVtJywgY29sb3I6ICdtZWRpdW0nIH1cIj48L3ZhbC1kaXZpZGVyPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIDx2YWwtYnV0dG9uLWdyb3VwXG4gICAgICAgICAgW3Byb3BzXT1cInsgYnV0dG9uczogYWN0aW9ucywgcG9zaXRpb246ICdjZW50ZXInLCBjb2x1bW5lZDogZmFsc2UgfVwiXG4gICAgICAgICAgKG9uQ2xpY2spPVwic3VibWl0SGFuZGxlcigkZXZlbnQpXCJcbiAgICAgICAgPjwvdmFsLWJ1dHRvbi1ncm91cD5cbiAgICAgIDwvZm9ybT5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIERvQ2hlY2sge1xuICBASW5wdXQoKVxuICBwcm9wczogRm9ybU1ldGFkYXRhO1xuXG4gIEBPdXRwdXQoKVxuICBvblN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybVN1Ym1pdD4oKTtcblxuICBAT3V0cHV0KClcbiAgb25JbnZhbGlkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBvblNlbGVjdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmaWVsZDogc3RyaW5nOyB2YWx1ZTogYW55IH0+KCk7XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuICB0eXBlcyA9IElucHV0VHlwZTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIHByaXZhdGUgYWN0aW9uc0NhY2hlOiBCdXR0b25NZXRhZGF0YVtdID0gW107XG5cbiAgLy8gTWVtbyBkZSBnZXRGaWVsZFByb3AvZ2V0VXNlcm5hbWVQcm9wIHBvciByZWZlcmVuY2lhIGRlIGZpZWxkIOKAlCBldml0YVxuICAvLyBjcmVhciB1biBudWV2byBvYmpldG8gcHJvcHMgcG9yIGtleXN0cm9rZSAoY2FkYSBDRCBjeWNsZSBpbnZvY2Fyw61hIGVsXG4gIC8vIHRlbXBsYXRlIGJpbmRpbmcsIG11bHRpcGxpY2FuZG8gcmUtcmVuZGVycyBlbiBjYXNjYWRhIHBvciAjIGZpZWxkcykuXG4gIC8vIFdlYWtNYXA6IHNpIGxhIHJlZmVyZW5jaWEgZGVsIGZpZWxkIGNhbWJpYSwgZWwgY2FjaGUgc2UgbGliZXJhLlxuICBwcml2YXRlIGZpZWxkUHJvcE1lbW8gPSBuZXcgV2Vha01hcDxJbnB1dE1ldGFkYXRhLCBJbnB1dE1ldGFkYXRhPigpO1xuICBwcml2YXRlIHVzZXJuYW1lUHJvcE1lbW8gPSBuZXcgV2Vha01hcDxJbnB1dE1ldGFkYXRhLCBVc2VybmFtZUlucHV0TWV0YWRhdGE+KCk7XG4gIHByaXZhdGUgdGV4dGFyZWFQcm9wTWVtbyA9IG5ldyBXZWFrTWFwPElucHV0TWV0YWRhdGEsIFRleHRhcmVhSW5wdXRNZXRhZGF0YT4oKTtcblxuICAvLyBFc3RhZG8gcHJldmlvIHBhcmEgZGV0ZWN0YXIgY2FtYmlvcyBlbiBuZ0RvQ2hlY2tcbiAgcHJpdmF0ZSBwcmV2aW91c1N0YXRlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbHMgPSB7fTtcbiAgICB0aGlzLnByb3BzLnNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XG4gICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgLy8gSG9ucmEgYGZpZWxkLnZhbHVlYCBhbCBjb25zdHJ1aXIgZWwgRm9ybUdyb3VwIHBhcmEgcXVlIGNvbnRyb2xlcyB0aXBvXG4gICAgICAgIC8vIEhBTkRMRSAocXVlIGNvbnN1bWVuIGVsIGNvbnRyb2wgZGlyZWN0byB2aWEgW2Zvcm1Db250cm9sXSkgcmVjaWJhbiBlbFxuICAgICAgICAvLyB2YWxvciBpbmljaWFsIHNpbiBxdWUgZWwgY2FsbGVyIHRlbmdhIHF1ZSBwYXRjaFZhbHVlIHBvc3QtbW91bnQuXG4gICAgICAgIC8vIEVsIGhlbHBlciBhcHBseURlZmF1bHRWYWx1ZVRvQ29udHJvbCAodmFsLXRleHQtaW5wdXQgZXRjLikgc2lndWVcbiAgICAgICAgLy8gZnVuY2lvbmFuZG8g4oCUIGVzY3JpYmUgc29icmUgdW4gY29udHJvbCB5YSBpbmljaWFsaXphZG8sIGlkZW1wb3RlbnRlLlxuICAgICAgICBjb25zdCBpbml0aWFsVmFsdWUgPSBmaWVsZC52YWx1ZSA/PyBudWxsO1xuICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gdGhpcy50eXBlcy5OVU1CRVJfRlJPTV9UTykge1xuICAgICAgICAgIC8vIENyZWFyIGRvcyBjb250cm9sZXMgcGFyYSBjYW1wb3MgTlVNQkVSX0ZST01fVE9cbiAgICAgICAgICBmb3JtQ29udHJvbHNbYCR7ZmllbGQubmFtZX1fZnJvbWBdID0gW2luaXRpYWxWYWx1ZSwgZmllbGQudmFsaWRhdG9ycyB8fCBbXV07XG4gICAgICAgICAgZm9ybUNvbnRyb2xzW2Ake2ZpZWxkLm5hbWV9X3RvYF0gPSBbaW5pdGlhbFZhbHVlLCBmaWVsZC52YWxpZGF0b3JzIHx8IFtdXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmb3JtQ29udHJvbHNbZmllbGQubmFtZV0gPSBbaW5pdGlhbFZhbHVlLCBmaWVsZC52YWxpZGF0b3JzIHx8IFtdXTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChmb3JtQ29udHJvbHMpO1xuICAgIHRoaXMucHJvcHMuc2VjdGlvbnMuZm9yRWFjaChzZWN0aW9uID0+IHtcbiAgICAgIHNlY3Rpb24uZmllbGRzXG4gICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgeCA9PlxuICAgICAgICAgICAgeC50eXBlID09PSB0aGlzLnR5cGVzLlNFTEVDVCB8fFxuICAgICAgICAgICAgeC50eXBlID09PSB0aGlzLnR5cGVzLlRFWFQgfHxcbiAgICAgICAgICAgIHgudHlwZSA9PT0gdGhpcy50eXBlcy5TRUFSQ0hfU0VMRUNUIHx8XG4gICAgICAgICAgICB4LnR5cGUgPT09IHRoaXMudHlwZXMuTVVMVElfU0VMRUNUXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgIHRoaXMudHJhY2tTZWxlY3RDaGFuZ2VzKGZpZWxkLm5hbWUpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuc3luY0ZpZWxkQ29udHJvbFN0YXRlcygpO1xuICAgIHRoaXMudXBkYXRlQWN0aW9uc0NhY2hlKCk7XG4gICAgdGhpcy5wcmV2aW91c1N0YXRlID0gdGhpcy5wcm9wcy5zdGF0ZTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAvLyBDdWFuZG8gcHJvcHMgY2FtYmlhLCByZWNvbnN0cnVpciBlbCBjYWNoZVxuICAgIGlmIChjaGFuZ2VzWydwcm9wcyddICYmIHRoaXMuZm9ybSkge1xuICAgICAgdGhpcy5zeW5jRmllbGRDb250cm9sU3RhdGVzKCk7XG4gICAgICB0aGlzLnVwZGF0ZUFjdGlvbnNDYWNoZSgpO1xuICAgICAgdGhpcy5wcmV2aW91c1N0YXRlID0gdGhpcy5wcm9wcy5zdGF0ZTtcbiAgICB9XG4gIH1cblxuICBuZ0RvQ2hlY2soKSB7XG4gICAgLy8gRGV0ZWN0YXIgY2FtYmlvcyBlbiBlbCBlc3RhZG8gZGVsIGZvcm11bGFyaW8gKG11dGFjacOzbiBzaW4gY2FtYmlhciByZWZlcmVuY2lhKVxuICAgIGlmICh0aGlzLmZvcm0gJiYgdGhpcy5wcm9wcyAmJiB0aGlzLnByb3BzLnN0YXRlICE9PSB0aGlzLnByZXZpb3VzU3RhdGUpIHtcbiAgICAgIHRoaXMucHJldmlvdXNTdGF0ZSA9IHRoaXMucHJvcHMuc3RhdGU7XG4gICAgICB0aGlzLnVwZGF0ZUFjdGlvbnNDYWNoZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jaHJvbml6ZXMgZm9ybSBjb250cm9sIGRpc2FibGVkL2VuYWJsZWQgc3RhdGUgd2l0aCBmaWVsZCBtZXRhZGF0YS5cbiAgICovXG4gIHByaXZhdGUgc3luY0ZpZWxkQ29udHJvbFN0YXRlcygpIHtcbiAgICB0aGlzLnByb3BzLnNlY3Rpb25zLmZvckVhY2goc2VjdGlvbiA9PiB7XG4gICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcbiAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09IHRoaXMudHlwZXMuTlVNQkVSX0ZST01fVE8pIHtcbiAgICAgICAgICBjb25zdCBmcm9tQ29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChgJHtmaWVsZC5uYW1lfV9mcm9tYCk7XG4gICAgICAgICAgY29uc3QgdG9Db250cm9sID0gdGhpcy5nZXRDb250cm9sKGAke2ZpZWxkLm5hbWV9X3RvYCk7XG5cbiAgICAgICAgICBpZiAoZmllbGQuc3RhdGUgPT09IENvbXBvbmVudFN0YXRlcy5ESVNBQkxFRCkge1xuICAgICAgICAgICAgZnJvbUNvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICB0b0NvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZyb21Db250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICB0b0NvbnRyb2wuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChmaWVsZC5uYW1lKTtcbiAgICAgICAgICBpZiAoZmllbGQuc3RhdGUgPT09IENvbXBvbmVudFN0YXRlcy5ESVNBQkxFRCkge1xuICAgICAgICAgICAgY29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udHJvbC5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWN0dWFsaXphIGVsIGNhY2hlIGRlIGFjdGlvbnMgYmFzYWRvIGVuIGVsIGVzdGFkbyBhY3R1YWwgZGVsIGZvcm0uXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUFjdGlvbnNDYWNoZSgpIHtcbiAgICBsZXQgYWN0aW9uU3RhdGUgPSB0aGlzLnByb3BzLmFjdGlvbnMuc3RhdGU7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5zdGF0ZSA9PT0gQ29tcG9uZW50U3RhdGVzLldPUktJTkcpIHtcbiAgICAgIGFjdGlvblN0YXRlID0gQ29tcG9uZW50U3RhdGVzLldPUktJTkc7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByb3BzLnN0YXRlID09PSBDb21wb25lbnRTdGF0ZXMuRElTQUJMRUQpIHtcbiAgICAgIGFjdGlvblN0YXRlID0gQ29tcG9uZW50U3RhdGVzLkRJU0FCTEVEO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcm9wcy5zdGF0ZSA9PT0gQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQgfHwgdGhpcy5mb3JtPy52YWxpZCkge1xuICAgICAgYWN0aW9uU3RhdGUgPSBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRDtcbiAgICB9XG5cbiAgICB0aGlzLmFjdGlvbnNDYWNoZSA9IFt7IC4uLnRoaXMucHJvcHMuYWN0aW9ucywgc3RhdGU6IGFjdGlvblN0YXRlIH1dO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gQ2xlYW51cCBzdWJzY3JpcHRpb25zIHRvIGF2b2lkIG1lbW9yeSBsZWFrc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICB0cmFja1NlbGVjdENoYW5nZXMoZmllbGROYW1lOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRDb250cm9sKGZpZWxkTmFtZSk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgIHRoaXMub25TZWxlY3RDaGFuZ2UuZW1pdCh7IGZpZWxkOiBmaWVsZE5hbWUsIHZhbHVlIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1YnNjcmlwdGlvbik7XG4gIH1cblxuICBhc3luYyBzdWJtaXRIYW5kbGVyKHRva2VuPzogc3RyaW5nKSB7XG4gICAgdGhpcy5vblN1Ym1pdC5lbWl0KHsgZmllbGRzOiB0aGlzLmZvcm0uZ2V0UmF3VmFsdWUoKSwgdG9rZW4gfSk7XG4gIH1cblxuICBnZXRDb250cm9sKGZpZWxkOiBzdHJpbmcpOiBGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuRm9ybS5nZXQoZmllbGQpIGFzIEZvcm1Db250cm9sO1xuICB9XG5cbiAgZ2V0RmllbGRQcm9wKGZpZWxkOiBJbnB1dE1ldGFkYXRhKTogSW5wdXRNZXRhZGF0YSB7XG4gICAgY29uc3QgY2FjaGVkID0gdGhpcy5maWVsZFByb3BNZW1vLmdldChmaWVsZCk7XG4gICAgaWYgKGNhY2hlZCkgcmV0dXJuIGNhY2hlZDtcblxuICAgIGlmICghZmllbGQudG9rZW4pIHtcbiAgICAgIGZpZWxkLnRva2VuID0gYGlucHV0LSR7ZmllbGQudHlwZX0tJHtmaWVsZC5uYW1lfWA7XG4gICAgfVxuXG4gICAgbGV0IHJlc3VsdDogSW5wdXRNZXRhZGF0YTtcbiAgICBpZiAoZmllbGQudHlwZSA9PT0gdGhpcy50eXBlcy5OVU1CRVJfRlJPTV9UTykge1xuICAgICAgY29uc3QgZnJvbUNvbnRyb2wgPSB0aGlzLmdldENvbnRyb2woYCR7ZmllbGQubmFtZX1fZnJvbWApO1xuICAgICAgY29uc3QgdG9Db250cm9sID0gdGhpcy5nZXRDb250cm9sKGAke2ZpZWxkLm5hbWV9X3RvYCk7XG4gICAgICByZXN1bHQgPSB7IC4uLmZpZWxkLCBmcm9tQ29udHJvbCwgdG9Db250cm9sLCBjb250cm9sOiB1bmRlZmluZWQgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Q29udHJvbChmaWVsZC5uYW1lKTtcbiAgICAgIHJlc3VsdCA9IHsgLi4uZmllbGQsIGNvbnRyb2wgfTtcbiAgICB9XG4gICAgdGhpcy5maWVsZFByb3BNZW1vLnNldChmaWVsZCwgcmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkYXB0ZXIg4oCUIGNvbnZpZXJ0ZSB1biBgSW5wdXRNZXRhZGF0YWAgKGNvbiB0eXBlPUhBTkRMRSkgYSBgVXNlcm5hbWVJbnB1dE1ldGFkYXRhYC5cbiAgICogRWwgY2hlY2sgZGUgZGlzcG9uaWJpbGlkYWQgc2UgcmVzdWVsdmUgZGVudHJvIGRlbCBjb21wb25lbnQgKEF1dGhTZXJ2aWNlIGlueWVjdGFkbyk7XG4gICAqIGVsIGNhbGxlciBwdWVkZSBzb2JyZXNjcmliaXJsbyBwYXNhbmRvIGBmaWVsZC5lcnJvcnNgIG8gdW4gYFVzZXJuYW1lSW5wdXRNZXRhZGF0YWBcbiAgICogY3VzdG9tIHVzYW5kbyB0eXBlPVRFWFQgc2kgbmVjZXNpdGEgb3RyYSBmdWVudGUgZGUgdHJ1dGguXG4gICAqL1xuICBnZXRVc2VybmFtZVByb3AoZmllbGQ6IElucHV0TWV0YWRhdGEpOiBVc2VybmFtZUlucHV0TWV0YWRhdGEge1xuICAgIGNvbnN0IGNhY2hlZCA9IHRoaXMudXNlcm5hbWVQcm9wTWVtby5nZXQoZmllbGQpO1xuICAgIGlmIChjYWNoZWQpIHJldHVybiBjYWNoZWQ7XG5cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRDb250cm9sKGZpZWxkLm5hbWUpO1xuICAgIGNvbnN0IHJlc3VsdDogVXNlcm5hbWVJbnB1dE1ldGFkYXRhID0ge1xuICAgICAgY29udHJvbDogY29udHJvbCBhcyBGb3JtQ29udHJvbDxzdHJpbmc+LFxuICAgICAgbGFiZWw6IGZpZWxkLmxhYmVsLFxuICAgICAgaGludDogZmllbGQuaGludCxcbiAgICAgIHBsYWNlaG9sZGVyOiBmaWVsZC5wbGFjZWhvbGRlcixcbiAgICAgIG1pbkxlbmd0aDogZmllbGQucmFuZ2U/Lm1pbixcbiAgICAgIG1heExlbmd0aDogZmllbGQucmFuZ2U/Lm1heCxcbiAgICAgIGVycm9yczogZmllbGQuZXJyb3JzLFxuICAgICAgc3RhdGU6IGZpZWxkLnN0YXRlLFxuICAgIH07XG4gICAgdGhpcy51c2VybmFtZVByb3BNZW1vLnNldChmaWVsZCwgcmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkYXB0ZXIg4oCUIGNvbnZpZXJ0ZSB1biBgSW5wdXRNZXRhZGF0YWAgKGNvbiB0eXBlPVRFWFRBUkVBKSBhIGBUZXh0YXJlYUlucHV0TWV0YWRhdGFgLlxuICAgKiBEZWZhdWx0cyBzZW5zYXRvczogYXV0b0dyb3cgKyBjb3VudGVyIGhhYmlsaXRhZG8sIDQtMTIgcm93cy5cbiAgICovXG4gIGdldFRleHRhcmVhUHJvcChmaWVsZDogSW5wdXRNZXRhZGF0YSk6IFRleHRhcmVhSW5wdXRNZXRhZGF0YSB7XG4gICAgY29uc3QgY2FjaGVkID0gdGhpcy50ZXh0YXJlYVByb3BNZW1vLmdldChmaWVsZCk7XG4gICAgaWYgKGNhY2hlZCkgcmV0dXJuIGNhY2hlZDtcblxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmdldENvbnRyb2woZmllbGQubmFtZSk7XG4gICAgY29uc3QgcmVzdWx0OiBUZXh0YXJlYUlucHV0TWV0YWRhdGEgPSB7XG4gICAgICBjb250cm9sOiBjb250cm9sIGFzIEZvcm1Db250cm9sPHN0cmluZz4sXG4gICAgICBuYW1lOiBmaWVsZC5uYW1lLFxuICAgICAgbGFiZWw6IGZpZWxkLmxhYmVsLFxuICAgICAgaGludDogZmllbGQuaGludCxcbiAgICAgIHBsYWNlaG9sZGVyOiBmaWVsZC5wbGFjZWhvbGRlcixcbiAgICAgIGF1dG9Hcm93OiB0cnVlLFxuICAgICAgbWluUm93czogNCxcbiAgICAgIG1heFJvd3M6IDEyLFxuICAgICAgbWF4TGVuZ3RoOiBmaWVsZC5yYW5nZT8ubWF4ID8/IDIwMDAsXG4gICAgICBzaG93Q291bnRlcjogdHJ1ZSxcbiAgICAgIGNvdW50ZXJGb3JtYXQ6ICdjdXJyZW50JyxcbiAgICAgIGZpbGw6ICdvdXRsaW5lJyxcbiAgICAgIGVycm9yczogZmllbGQuZXJyb3JzLFxuICAgICAgc3RhdGU6IGZpZWxkLnN0YXRlLFxuICAgIH07XG4gICAgdGhpcy50ZXh0YXJlYVByb3BNZW1vLnNldChmaWVsZCwgcmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgZ2V0IGlzQXRFbmRPZkZvcm0oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzQXRFbmQodGhpcy5lbGVtZW50UmVmKTtcbiAgfVxuXG4gIGdldCBGb3JtKCk6IEZvcm1Hcm91cCB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybTtcbiAgfVxuXG4gIGdldCBGb3JtU3RhdGUoKTogeyBmb3JtOiBGb3JtR3JvdXA7IGRhdGE6IEZvcm1NZXRhZGF0YSB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgZm9ybTogdGhpcy5Gb3JtLFxuICAgICAgZGF0YTogdGhpcy5wcm9wcyxcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGFjdGlvbnMoKTogQnV0dG9uTWV0YWRhdGFbXSB7XG4gICAgLy8gUmV0b3JuYXIgZGVsIGNhY2hlIHBhcmEgZXZpdGFyIGNyZWFyIG51ZXZvcyBvYmpldG9zIGVuIGNhZGEgY2ljbG8gZGUgY2hhbmdlIGRldGVjdGlvblxuICAgIHJldHVybiB0aGlzLmFjdGlvbnNDYWNoZTtcbiAgfVxufVxuIl19
|
|
@@ -57,4 +57,4 @@ export var ToolbarActionType;
|
|
|
57
57
|
ToolbarActionType["IMAGE"] = "IMAGE";
|
|
58
58
|
ToolbarActionType["BUTTON"] = "BUTTON";
|
|
59
59
|
})(ToolbarActionType || (ToolbarActionType = {}));
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsTUFBTSxPQUFPLEdBQW1CLFNBQVMsQ0FBQztBQUMxQyxNQUFNLFFBQVEsR0FBbUIsVUFBVSxDQUFDO0FBQzVDLE1BQU0sT0FBTyxHQUFtQixTQUFTLENBQUM7QUFDMUMsTUFBTSxLQUFLLEdBQW1CLE9BQU8sQ0FBQztBQUV0Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO0FBRXJFOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksVUFNWDtBQU5ELFdBQVksVUFBVTtJQUNwQixpRUFBZSxDQUFBO0lBQ2YsbUVBQWdCLENBQUE7SUFDaEIsaUVBQWUsQ0FBQTtJQUNmLCtEQUFjLENBQUE7SUFDZCx1RUFBa0IsQ0FBQTtBQUNwQixDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckI7QUFjRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLFNBeUJYO0FBekJELFdBQVksU0FBUztJQUNuQix5Q0FBSSxDQUFBO0lBQ0osaURBQVEsQ0FBQTtJQUNSLDJDQUFLLENBQUE7SUFDTCxpREFBUSxDQUFBO0lBQ1IsK0NBQU8sQ0FBQTtJQUNQLDZDQUFNLENBQUE7SUFDTiw2REFBYyxDQUFBO0lBQ2QsaURBQVEsQ0FBQTtJQUNSLHlDQUFJLENBQUE7SUFDSixxREFBVSxDQUFBO0lBQ1YsMENBQUksQ0FBQTtJQUNKLDRDQUFLLENBQUE7SUFDTCw0Q0FBSyxDQUFBO0lBQ0wsOENBQU0sQ0FBQTtJQUNOLDREQUFhLENBQUE7SUFDYiwwREFBWSxDQUFBO0lBQ1osd0VBQW1CLENBQUE7SUFDbkIsMENBQUksQ0FBQTtJQUNKLDhDQUFNLENBQUE7SUFDTiw0Q0FBSyxDQUFBO0lBQ0wsNENBQUssQ0FBQTtJQUNMLGtEQUFRLENBQUE7SUFDUiw4REFBYyxDQUFBO0lBQ2QsOENBQU0sQ0FBQTtBQUNSLENBQUMsRUF6QlcsU0FBUyxLQUFULFNBQVMsUUF5QnBCO0FBNklEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksaUJBS1g7QUFMRCxXQUFZLGlCQUFpQjtJQUMzQixzQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBYSxDQUFBO0lBQ2Isb0NBQWUsQ0FBQTtJQUNmLHNDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFMVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBSzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5pbXBvcnQgeyBJbWFnZU1ldGFkYXRhIH0gZnJvbSAnLi9hdG9tcy9pbWFnZS90eXBlcyc7XG5cbi8qKlxuICogUG9zc2libGUgc3RhdGVzIGZvciBhbiBpbnRlcmFjdGl2ZSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIENvbXBvbmVudFN0YXRlID0gJ0VOQUJMRUQnIHwgJ0RJU0FCTEVEJyB8ICdXT1JLSU5HJyB8ICdFUlJPUic7XG5jb25zdCBFTkFCTEVEOiBDb21wb25lbnRTdGF0ZSA9ICdFTkFCTEVEJztcbmNvbnN0IERJU0FCTEVEOiBDb21wb25lbnRTdGF0ZSA9ICdESVNBQkxFRCc7XG5jb25zdCBXT1JLSU5HOiBDb21wb25lbnRTdGF0ZSA9ICdXT1JLSU5HJztcbmNvbnN0IEVSUk9SOiBDb21wb25lbnRTdGF0ZSA9ICdFUlJPUic7XG5cbi8qKlxuICogT2JqZWN0IGNvbnRhaW5pbmcgYWxsIHBvc3NpYmxlIGNvbXBvbmVudCBzdGF0ZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBDb21wb25lbnRTdGF0ZXMgPSB7IEVOQUJMRUQsIERJU0FCTEVELCBXT1JLSU5HLCBFUlJPUiB9O1xuXG4vKipcbiAqIFR5cGVzIG9mIGFjdGlvbnMgdGhhdCBhIGJ1dHRvbiBvciBsaW5rIGNhbiBwZXJmb3JtLlxuICovXG5leHBvcnQgZW51bSBBY3Rpb25UeXBlIHtcbiAgQlJPV1NFUl9ORVdfVEFCLCAvLyBPcGVuIGluIGEgbmV3IGJyb3dzZXIgdGFiXG4gIEJST1dTRVJfRE9XTkxPQUQsIC8vIERvd25sb2FkIHZpYSBicm93c2VyXG4gIE5BVElWRV9ET1dOTE9BRCwgLy8gRG93bmxvYWQgdXNpbmcgbmF0aXZlIGNhcGFiaWxpdGllc1xuICBBUFBfTkFWSUdBVElPTiwgLy8gSW50ZXJuYWwgYXBwIG5hdmlnYXRpb25cbiAgQlJPV1NFUl9OQVZJR0FUSU9OLCAvLyBOYXZpZ2F0aW9uIGluIHRoZSBicm93c2VyXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBleGVjdXRhYmxlIGFjdGlvbiBmb3IgYSBidXR0b24gb3IgbGluay5cbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uID0ge1xuICAvKiogQWN0aW9uIGRlc2NyaXB0aW9uICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIC8qKiBBY3Rpb24gdHlwZSAqL1xuICB0eXBlOiBBY3Rpb25UeXBlO1xuICAvKiogQWN0aW9uIHNvdXJjZSBvciBkZXN0aW5hdGlvbiAqL1xuICBzb3VyY2U6IHN0cmluZztcbn07XG5cbi8qKlxuICogU3VwcG9ydGVkIGlucHV0IHR5cGVzIGZvciBmb3Jtcy5cbiAqL1xuZXhwb3J0IGVudW0gSW5wdXRUeXBlIHtcbiAgVEVYVCxcbiAgVEVYVEFSRUEsXG4gIEVNQUlMLFxuICBQQVNTV09SRCxcbiAgQ09NTUVOVCxcbiAgTlVNQkVSLFxuICBOVU1CRVJfRlJPTV9UTyxcbiAgUElOX0NPREUsXG4gIERBVEUsXG4gIERBVEVfUkFOR0UsXG4gIEhPVVIsXG4gIENIRUNLLFxuICBSQURJTyxcbiAgU0VMRUNULFxuICBTRUFSQ0hfU0VMRUNULFxuICBNVUxUSV9TRUxFQ1QsXG4gIE1VTFRJX1NFTEVDVF9TSU1QTEUsXG4gIEZJTEUsXG4gIFRPR0dMRSxcbiAgUkFOR0UsXG4gIFBIT05FLFxuICBDVVJSRU5DWSxcbiAgQ0hFQ0tCT1hfUkFESU8sXG4gIEhBTkRMRSxcbn1cblxuLyoqXG4gKiBPcHRpb24gZm9yIHNlbGVjdCwgcmFkaW8sIGV0Yy4gaW5wdXRzLlxuICovXG5leHBvcnQgdHlwZSBJbnB1dE9wdGlvbiA9IHtcbiAgLyoqIFVuaXF1ZSBvcHRpb24gaWRlbnRpZmllciAqL1xuICBpZDogc3RyaW5nO1xuICAvKiogRGlzcGxheSBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhlIG9wdGlvbiBpcyBzZWxlY3RlZCBieSBkZWZhdWx0ICovXG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgLyoqIERpc3BsYXkgb3JkZXIgKi9cbiAgb3JkZXI6IG51bWJlcjtcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGEgZm9ybSBmaWVsZC5cbiAqL1xuZXhwb3J0IHR5cGUgSW5wdXRNZXRhZGF0YSA9IHtcbiAgLyoqIEFzc29jaWF0ZWQgZm9ybSBjb250cm9sIChvcHRpb25hbCwgY3JlYXRlZCBpbnRlcm5hbGx5IGJ5IHZhbC1mb3JtKSAqL1xuICBjb250cm9sPzogRm9ybUNvbnRyb2w7XG4gIC8qKiBGcm9tIGNvbnRyb2wgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21Db250cm9sPzogRm9ybUNvbnRyb2w7XG4gIC8qKiBUbyBjb250cm9sIChvbmx5IGZvciBOVU1CRVJfRlJPTV9UTyB0eXBlKSAqL1xuICB0b0NvbnRyb2w/OiBGb3JtQ29udHJvbDtcbiAgLyoqIFVuaXF1ZSB0b2tlbiBmb3IgdGhlIGlucHV0ICovXG4gIHRva2VuOiBzdHJpbmc7XG4gIC8qKiBEaXNwbGF5IGxhYmVsICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBGaWVsZCBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIEhlbHAgdGV4dCAoc2hvd24gYmVsb3cgaW5wdXQsIGZvciB2YWxpZGF0aW9uIGhpbnRzKSAqL1xuICBoaW50OiBzdHJpbmc7XG4gIC8qKiBEZXNjcmlwdGlvbiB0ZXh0IChzaG93biBiZWxvdyBsYWJlbCwgZXhwbGFpbnMgdGhlIGZpZWxkIHB1cnBvc2UpICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKiogSW5wdXQgcGxhY2Vob2xkZXIgKi9cbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgLyoqIElucHV0IHR5cGUgKi9cbiAgdHlwZTogSW5wdXRUeXBlO1xuICAvKiogRGlzcGxheSBvcmRlciAqL1xuICBvcmRlcjogbnVtYmVyO1xuICAvKiogQXNzb2NpYXRlZCB2YWxpZGF0b3JzICovXG4gIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW107XG4gIC8qKiBPcHRpb25zIChmb3Igc2VsZWN0LCByYWRpbywgZXRjLikgKi9cbiAgb3B0aW9ucz86IElucHV0T3B0aW9uW107XG4gIC8qKiBBbGxvd2VkIHJhbmdlIChmb3IgbnVtYmVyLCBkYXRlLCBldGMuKSAqL1xuICByYW5nZT86IHtcbiAgICBtaW46IG51bWJlcjtcbiAgICBtYXg6IG51bWJlcjtcbiAgfTtcbiAgLyoqIEN1c3RvbSBlcnJvciBtZXNzYWdlcyAqL1xuICBlcnJvcnM6IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG4gIC8qKiBJbml0aWFsIHZhbHVlIGZvciB0aGUgZmllbGQgKi9cbiAgdmFsdWU/OiBzdHJpbmc7XG4gIC8qKiBEZWZhdWx0IHZhbHVlIGNvbmZpZ3VyYXRpb24gLSBzdHJpbmcgZm9yIGN1c3RvbSBkZWZhdWx0cywgdHJ1ZSBmb3IgYXV0byBkZWZhdWx0cyAqL1xuICB3aXRoRGVmYXVsdD86IHN0cmluZyB8IGJvb2xlYW47XG4gIC8qKiBGaWVsZCBzdGF0ZSAqL1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG4gIC8qKiBMYWJlbCBmb3IgXCJmcm9tXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21MYWJlbD86IHN0cmluZztcbiAgLyoqIExhYmVsIGZvciBcInRvXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIHRvTGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBQbGFjZWhvbGRlciBmb3IgXCJmcm9tXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21QbGFjZWhvbGRlcj86IHN0cmluZztcbiAgLyoqIFBsYWNlaG9sZGVyIGZvciBcInRvXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIHRvUGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLy8gaTE4biBzdXBwb3J0IHByb3BlcnRpZXNcbiAgLyoqIEtleSBmb3IgY29udGVudCBsb29rdXAgKi9cbiAgY29udGVudEtleT86IHN0cmluZztcbiAgLyoqIENvbXBvbmVudCBjbGFzcyBuYW1lIGZvciBjb250ZW50IGxvb2t1cCAqL1xuICBjb250ZW50Q2xhc3M/OiBzdHJpbmc7XG4gIC8qKiBGYWxsYmFjayB0ZXh0IGlmIGNvbnRlbnQga2V5IGlzIG5vdCBmb3VuZCAqL1xuICBjb250ZW50RmFsbGJhY2s/OiBzdHJpbmc7XG5cbiAgLy8gc2VsZWN0LWlucHV0IHNwZWNpZmljIGkxOG4gcHJvcGVydGllc1xuICAvKiogQ3VzdG9tIGhlYWRlciB0ZXh0IGZvciBzZWxlY3QgbW9kYWwgKi9cbiAgbW9kYWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBDdXN0b20gY2FuY2VsIGJ1dHRvbiB0ZXh0IGZvciBzZWxlY3QgbW9kYWwgKi9cbiAgY2FuY2VsVGV4dD86IHN0cmluZztcbiAgLyoqIEN1c3RvbSBPSyBidXR0b24gdGV4dCBmb3Igc2VsZWN0IG1vZGFsICovXG4gIG9rVGV4dD86IHN0cmluZztcblxuICAvLyBjaGVjay1pbnB1dCBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gIC8qKiBQb3NpdGlvbiBvZiBsYWJlbCBmb3IgY2hlY2tib3ggKCdzdGFydCcgfCAnZW5kJykgKi9cbiAgbGFiZWxQbGFjZW1lbnQ/OiAnc3RhcnQnIHwgJ2VuZCc7XG5cbiAgLy8gUElOX0NPREUgc3BlY2lmaWMgcHJvcGVydGllc1xuICAvKiogTnVtYmVyIG9mIGRpZ2l0cyBpbiBQSU4gKGRlZmF1bHQ6IDUsIG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIGxlbmd0aD86IG51bWJlcjtcbiAgLyoqIFNpemUgb2YgdGhlIGlucHV0IGJveGVzOiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnIChkZWZhdWx0OiAnbWVkaXVtJywgb25seSBmb3IgUElOX0NPREUgdHlwZSkgKi9cbiAgc2l6ZT86ICdzbWFsbCcgfCAnbWVkaXVtJyB8ICdsYXJnZSc7XG4gIC8qKiBBbGxvdyBvbmx5IG51bWJlcnMgKGRlZmF1bHQ6IHRydWUsIG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIGFsbG93TnVtYmVyc09ubHk/OiBib29sZWFuO1xuICAvKiogTWFzayBpbnB1dCAtIHNob3cgZG90cyBpbnN0ZWFkIG9mIGNoYXJhY3RlcnMgKG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIG1hc2s/OiBib29sZWFuO1xuICAvKiogQXV0byBmb2N1cyBmaXJzdCBpbnB1dCAob25seSBmb3IgUElOX0NPREUgdHlwZSkgKi9cbiAgYXV0b0ZvY3VzPzogYm9vbGVhbjtcbiAgLyoqIEN1c3RvbSBpbnB1dCBzdHlsZXMgKG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIGlucHV0U3R5bGVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbn07XG5cbi8qKlxuICogQSBzZWN0aW9uIGluIGEgZm9ybSwgZ3JvdXBpbmcgbXVsdGlwbGUgZmllbGRzLlxuICovXG5leHBvcnQgdHlwZSBGb3JtU2VjdGlvbiA9IHtcbiAgLyoqIFNlY3Rpb24gbmFtZSAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBEaXNwbGF5IG9yZGVyICovXG4gIG9yZGVyOiBudW1iZXI7XG4gIC8qKiBGaWVsZHMgaW5jbHVkZWQgaW4gdGhlIHNlY3Rpb24gKi9cbiAgZmllbGRzOiBJbnB1dE1ldGFkYXRhW107XG59O1xuXG4vKipcbiAqIERhdGEgc2VudCB3aGVuIHN1Ym1pdHRpbmcgYSBmb3JtLlxuICovXG5leHBvcnQgdHlwZSBGb3JtU3VibWl0ID0ge1xuICAvKiogRm9ybSBmaWVsZCB2YWx1ZXMgYXMga2V5LXZhbHVlIHBhaXJzICovXG4gIGZpZWxkczogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgLyoqIE9wdGlvbmFsIHRva2VuIGZvciB0aGUgb3BlcmF0aW9uICovXG4gIHRva2VuPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBNZXRhZGF0YSBmb3IgYSBjb21wbGV0ZSBmb3JtLlxuICovXG5leHBvcnQgdHlwZSBGb3JtTWV0YWRhdGEgPSB7XG4gIC8qKiBGb3JtIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogRm9ybSBzZWN0aW9ucyAqL1xuICBzZWN0aW9uczogRm9ybVNlY3Rpb25bXTtcbiAgLyoqIEFjdGlvbiBidXR0b25zIGNvbmZpZ3VyYXRpb24gKi9cbiAgYWN0aW9uczogQnV0dG9uTWV0YWRhdGE7XG4gIC8qKiBHbG9iYWwgZm9ybSBzdGF0ZSAqL1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG59O1xuXG4vKipcbiAqIFBvc3NpYmxlIGFjdGlvbiB0eXBlcyBmb3IgYSB0b29sYmFyLlxuICovXG5leHBvcnQgZW51bSBUb29sYmFyQWN0aW9uVHlwZSB7XG4gIEFWQVRBUiA9ICdBVkFUQVInLFxuICBJQ09OID0gJ0lDT04nLFxuICBJTUFHRSA9ICdJTUFHRScsXG4gIEJVVFRPTiA9ICdCVVRUT04nLFxufVxuXG4vKipcbiAqIFRvb2xiYXIgYWN0aW9uIGRlZmluaXRpb24uXG4gKi9cbmV4cG9ydCB0eXBlIFRvb2xiYXJBY3Rpb24gPSB7XG4gIC8qKiBBY3Rpb24gdHlwZSAqL1xuICB0eXBlOiAnQVZBVEFSJyB8ICdJQ09OJyB8ICdJTUFHRScgfCAnQlVUVE9OJztcbiAgLyoqIE9wdGlvbmFsIHRva2VuIGlkZW50aWZpZXIgKi9cbiAgdG9rZW4/OiBzdHJpbmc7XG4gIC8qKiBUb29sYmFyIHBvc2l0aW9uICovXG4gIHBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnIHwgJ2NlbnRlcic7XG4gIC8qKiBPcHRpb25hbCBkZXNjcmlwdGlvbiAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIEFzc29jaWF0ZWQgaW1hZ2UgKGlmIGFueSkgKi9cbiAgaW1hZ2U/OiBJbWFnZU1ldGFkYXRhO1xuICAvKipcbiAgICogVXNlciBzaGFwZSBwYXJhIGVsIG1vZG8gYEFWQVRBUmAg4oCUIGhhYmlsaXRhIGZhbGxiYWNrIGludGVsaWdlbnRlOlxuICAgKiBmb3RvIOKGkiBpbmljaWFsZXMgKGRlIGBuYW1lYC9gZW1haWxgKSDihpIgaWNvbm8gcGVyc29uYS4gU2kgc2Ugb21pdGUsIGVsXG4gICAqIHRvb2xiYXIgc29sbyBtdWVzdHJhIGxhIGltYWdlbiBwYXNhZGEgZW4gYGRlc2NyaXB0aW9uYC5cbiAgICovXG4gIHVzZXI/OiB7IG5hbWU/OiBzdHJpbmc7IGVtYWlsPzogc3RyaW5nOyBhdmF0YXJVcmw/OiBzdHJpbmc7IGhhbmRsZT86IHN0cmluZyB9IHwgbnVsbDtcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGFuIGljb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWNvbk1ldGFkYSB7XG4gIC8qKiBJY29uIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogSWNvbiBzbG90IHBvc2l0aW9uICovXG4gIHNsb3Q6ICdzdGFydCcgfCAnZW5kJztcbn1cblxuLyoqXG4gKiBCdXR0b24gY29uZmlndXJhdGlvbiBvYmplY3QuXG4gKiBTdXBwb3J0cyBib3RoIHN0YXRpYyBhbmQgcmVhY3RpdmUgY29udGVudC5cbiAqIEB0eXBlIHtCdXR0b25NZXRhZGF0YX1cbiAqIEBwcm9wZXJ0eSB0ZXh0IC0gU3RhdGljIGJ1dHRvbiBsYWJlbCAodGFrZXMgcHJlY2VkZW5jZSBvdmVyIHRleHRDb25maWcpLlxuICogQHByb3BlcnR5IHRleHRDb25maWcgLSBSZWFjdGl2ZSBjb250ZW50IGNvbmZpZ3VyYXRpb24gZm9yIGJ1dHRvbiB0ZXh0LlxuICogQHByb3BlcnR5IGNvbG9yIC0gVGhlIGJ1dHRvbiBjb2xvciAoSW9uaWMgY29sb3Igc3RyaW5nKS5cbiAqIEBwcm9wZXJ0eSBpY29uIC0gSWNvbiB0byBkaXNwbGF5IChvcHRpb25hbCkuXG4gKiBAcHJvcGVydHkgc3RhdGUgLSBCdXR0b24gc3RhdGUgKGVuYWJsZWQsIGRpc2FibGVkLCB3b3JraW5nLCBldGMuKS5cbiAqIEBwcm9wZXJ0eSBleHBhbmQsIGZpbGwsIHNpemUsIHNoYXBlLCBocmVmLCB0YXJnZXQsIGRvd25sb2FkLCBoYW5kbGVyLCBldGMuIC0gU2VlIEJ1dHRvbk1ldGFkYXRhIGZvciBhbGwgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdXR0b25NZXRhZGF0YSB7XG4gIC8qKiBBc3NvY2lhdGVkIGFjdGlvbiB0eXBlICovXG4gIGFjdGlvblR5cGU/OiBBY3Rpb25UeXBlO1xuICAvKiogQnV0dG9uIGV4cGFuc2lvbiAqL1xuICBleHBhbmQ/OiAnZnVsbCcgfCAnYmxvY2snO1xuICAvKiogQXNzb2NpYXRlZCBsaW5rICovXG4gIGxpbms/OiBzdHJpbmc7XG4gIC8qKiBBc3NvY2lhdGVkIGhyZWYgbGluayAqL1xuICBocmVmPzogc3RyaW5nO1xuICAvKiogTGluayB0YXJnZXQgKi9cbiAgdGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xuICAvKiogRG93bmxvYWQgZmlsZSBuYW1lICovXG4gIGRvd25sb2FkPzogc3RyaW5nO1xuICAvKiogQnV0dG9uIGNvbG9yICovXG4gIGNvbG9yOiBDb2xvcjtcbiAgLyoqIEJ1dHRvbiBzdGF0ZSAqL1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG4gIC8qKiBTdGF0aWMgZGlzcGxheSB0ZXh0ICh0YWtlcyBwcmVjZWRlbmNlIG92ZXIgcmVhY3RpdmUgY29udGVudCkgKi9cbiAgdGV4dD86IHN0cmluZztcbiAgLyoqIFJlYWN0aXZlIGNvbnRlbnQgY29uZmlndXJhdGlvbiBmb3IgYnV0dG9uIHRleHQgKi9cbiAgY29udGVudEtleT86IHN0cmluZztcbiAgLyoqIENvbXBvbmVudCBjbGFzcyBuYW1lIGZvciBjb250ZW50IGxvb2t1cCAocmVxdWlyZWQgd2l0aCBjb250ZW50S2V5KSAqL1xuICBjb250ZW50Q2xhc3M/OiBzdHJpbmc7XG4gIC8qKiBGYWxsYmFjayB0ZXh0IGlmIGNvbnRlbnRLZXkgaXMgbm90IGZvdW5kICovXG4gIGNvbnRlbnRGYWxsYmFjaz86IHN0cmluZztcbiAgLyoqIFZhbHVlcyB0byBpbnRlcnBvbGF0ZSBpbnRvIHRoZSBjb250ZW50IHN0cmluZyAqL1xuICBjb250ZW50SW50ZXJwb2xhdGlvbj86IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj47XG4gIC8qKiBBc3NvY2lhdGVkIGljb24gKi9cbiAgaWNvbj86IEljb25NZXRhZGE7XG4gIC8qKiBCdXR0b24gc2hhcGUgKi9cbiAgc2hhcGU/OiAncm91bmQnO1xuICAvKiogQnV0dG9uIHNpemUgKi9cbiAgc2l6ZT86ICdzbWFsbCcgfCAnZGVmYXVsdCcgfCAnbGFyZ2UnO1xuICAvKiogQnV0dG9uIGZpbGwgKi9cbiAgZmlsbD86ICdjbGVhcicgfCAnb3V0bGluZScgfCAnc29saWQnIHwgJ2RlZmF1bHQnO1xuICAvKiogQnV0dG9uIHR5cGUgKi9cbiAgdHlwZTogJ2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCc7XG4gIC8qKiBPcHRpb25hbCB0b2tlbiBpZGVudGlmaWVyICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgcmVmZXJlbmNlICovXG4gIHJlZj86IGFueTtcbiAgLyoqIEFjdGlvbiBoYW5kbGVyICovXG4gIGhhbmRsZXI/OiAodmFsdWU6IGFueSkgPT4gYW55IHwgUHJvbWlzZTxhbnk+O1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHJlYWN0aXZlIGNvbnRlbnQgaW4gdmFsLWJ1dHRvbiBjb21wb25lbnQuXG4gKiBVc2UgdGhpcyBpbnRlcmZhY2Ugd2hlbiB5b3Ugb25seSBuZWVkIHRvIHNwZWNpZnkgY29udGVudC1yZWxhdGVkIHByb3BlcnRpZXMuXG4gKiBUaGlzIGZvbGxvd3MgdGhlIHNhbWUgcGF0dGVybiBhcyBUZXh0Q29udGVudENvbmZpZyBmb3IgY29uc2lzdGVuY3kuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnV0dG9uQ29udGVudENvbmZpZyB7XG4gIGNvbnRlbnRLZXk6IHN0cmluZztcbiAgY29udGVudENsYXNzOiBzdHJpbmc7XG4gIGNvbnRlbnRGYWxsYmFjaz86IHN0cmluZztcbiAgY29udGVudEludGVycG9sYXRpb24/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+O1xufVxuIl19
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsTUFBTSxPQUFPLEdBQW1CLFNBQVMsQ0FBQztBQUMxQyxNQUFNLFFBQVEsR0FBbUIsVUFBVSxDQUFDO0FBQzVDLE1BQU0sT0FBTyxHQUFtQixTQUFTLENBQUM7QUFDMUMsTUFBTSxLQUFLLEdBQW1CLE9BQU8sQ0FBQztBQUV0Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO0FBRXJFOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksVUFNWDtBQU5ELFdBQVksVUFBVTtJQUNwQixpRUFBZSxDQUFBO0lBQ2YsbUVBQWdCLENBQUE7SUFDaEIsaUVBQWUsQ0FBQTtJQUNmLCtEQUFjLENBQUE7SUFDZCx1RUFBa0IsQ0FBQTtBQUNwQixDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckI7QUFjRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLFNBeUJYO0FBekJELFdBQVksU0FBUztJQUNuQix5Q0FBSSxDQUFBO0lBQ0osaURBQVEsQ0FBQTtJQUNSLDJDQUFLLENBQUE7SUFDTCxpREFBUSxDQUFBO0lBQ1IsK0NBQU8sQ0FBQTtJQUNQLDZDQUFNLENBQUE7SUFDTiw2REFBYyxDQUFBO0lBQ2QsaURBQVEsQ0FBQTtJQUNSLHlDQUFJLENBQUE7SUFDSixxREFBVSxDQUFBO0lBQ1YsMENBQUksQ0FBQTtJQUNKLDRDQUFLLENBQUE7SUFDTCw0Q0FBSyxDQUFBO0lBQ0wsOENBQU0sQ0FBQTtJQUNOLDREQUFhLENBQUE7SUFDYiwwREFBWSxDQUFBO0lBQ1osd0VBQW1CLENBQUE7SUFDbkIsMENBQUksQ0FBQTtJQUNKLDhDQUFNLENBQUE7SUFDTiw0Q0FBSyxDQUFBO0lBQ0wsNENBQUssQ0FBQTtJQUNMLGtEQUFRLENBQUE7SUFDUiw4REFBYyxDQUFBO0lBQ2QsOENBQU0sQ0FBQTtBQUNSLENBQUMsRUF6QlcsU0FBUyxLQUFULFNBQVMsUUF5QnBCO0FBK0lEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksaUJBS1g7QUFMRCxXQUFZLGlCQUFpQjtJQUMzQixzQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBYSxDQUFBO0lBQ2Isb0NBQWUsQ0FBQTtJQUNmLHNDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFMVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBSzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5pbXBvcnQgeyBJbWFnZU1ldGFkYXRhIH0gZnJvbSAnLi9hdG9tcy9pbWFnZS90eXBlcyc7XG5cbi8qKlxuICogUG9zc2libGUgc3RhdGVzIGZvciBhbiBpbnRlcmFjdGl2ZSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIENvbXBvbmVudFN0YXRlID0gJ0VOQUJMRUQnIHwgJ0RJU0FCTEVEJyB8ICdXT1JLSU5HJyB8ICdFUlJPUic7XG5jb25zdCBFTkFCTEVEOiBDb21wb25lbnRTdGF0ZSA9ICdFTkFCTEVEJztcbmNvbnN0IERJU0FCTEVEOiBDb21wb25lbnRTdGF0ZSA9ICdESVNBQkxFRCc7XG5jb25zdCBXT1JLSU5HOiBDb21wb25lbnRTdGF0ZSA9ICdXT1JLSU5HJztcbmNvbnN0IEVSUk9SOiBDb21wb25lbnRTdGF0ZSA9ICdFUlJPUic7XG5cbi8qKlxuICogT2JqZWN0IGNvbnRhaW5pbmcgYWxsIHBvc3NpYmxlIGNvbXBvbmVudCBzdGF0ZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBDb21wb25lbnRTdGF0ZXMgPSB7IEVOQUJMRUQsIERJU0FCTEVELCBXT1JLSU5HLCBFUlJPUiB9O1xuXG4vKipcbiAqIFR5cGVzIG9mIGFjdGlvbnMgdGhhdCBhIGJ1dHRvbiBvciBsaW5rIGNhbiBwZXJmb3JtLlxuICovXG5leHBvcnQgZW51bSBBY3Rpb25UeXBlIHtcbiAgQlJPV1NFUl9ORVdfVEFCLCAvLyBPcGVuIGluIGEgbmV3IGJyb3dzZXIgdGFiXG4gIEJST1dTRVJfRE9XTkxPQUQsIC8vIERvd25sb2FkIHZpYSBicm93c2VyXG4gIE5BVElWRV9ET1dOTE9BRCwgLy8gRG93bmxvYWQgdXNpbmcgbmF0aXZlIGNhcGFiaWxpdGllc1xuICBBUFBfTkFWSUdBVElPTiwgLy8gSW50ZXJuYWwgYXBwIG5hdmlnYXRpb25cbiAgQlJPV1NFUl9OQVZJR0FUSU9OLCAvLyBOYXZpZ2F0aW9uIGluIHRoZSBicm93c2VyXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBleGVjdXRhYmxlIGFjdGlvbiBmb3IgYSBidXR0b24gb3IgbGluay5cbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uID0ge1xuICAvKiogQWN0aW9uIGRlc2NyaXB0aW9uICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIC8qKiBBY3Rpb24gdHlwZSAqL1xuICB0eXBlOiBBY3Rpb25UeXBlO1xuICAvKiogQWN0aW9uIHNvdXJjZSBvciBkZXN0aW5hdGlvbiAqL1xuICBzb3VyY2U6IHN0cmluZztcbn07XG5cbi8qKlxuICogU3VwcG9ydGVkIGlucHV0IHR5cGVzIGZvciBmb3Jtcy5cbiAqL1xuZXhwb3J0IGVudW0gSW5wdXRUeXBlIHtcbiAgVEVYVCxcbiAgVEVYVEFSRUEsXG4gIEVNQUlMLFxuICBQQVNTV09SRCxcbiAgQ09NTUVOVCxcbiAgTlVNQkVSLFxuICBOVU1CRVJfRlJPTV9UTyxcbiAgUElOX0NPREUsXG4gIERBVEUsXG4gIERBVEVfUkFOR0UsXG4gIEhPVVIsXG4gIENIRUNLLFxuICBSQURJTyxcbiAgU0VMRUNULFxuICBTRUFSQ0hfU0VMRUNULFxuICBNVUxUSV9TRUxFQ1QsXG4gIE1VTFRJX1NFTEVDVF9TSU1QTEUsXG4gIEZJTEUsXG4gIFRPR0dMRSxcbiAgUkFOR0UsXG4gIFBIT05FLFxuICBDVVJSRU5DWSxcbiAgQ0hFQ0tCT1hfUkFESU8sXG4gIEhBTkRMRSxcbn1cblxuLyoqXG4gKiBPcHRpb24gZm9yIHNlbGVjdCwgcmFkaW8sIGV0Yy4gaW5wdXRzLlxuICovXG5leHBvcnQgdHlwZSBJbnB1dE9wdGlvbiA9IHtcbiAgLyoqIFVuaXF1ZSBvcHRpb24gaWRlbnRpZmllciAqL1xuICBpZDogc3RyaW5nO1xuICAvKiogRGlzcGxheSBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhlIG9wdGlvbiBpcyBzZWxlY3RlZCBieSBkZWZhdWx0ICovXG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgLyoqIERpc3BsYXkgb3JkZXIgKi9cbiAgb3JkZXI6IG51bWJlcjtcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGEgZm9ybSBmaWVsZC5cbiAqL1xuZXhwb3J0IHR5cGUgSW5wdXRNZXRhZGF0YSA9IHtcbiAgLyoqIEFzc29jaWF0ZWQgZm9ybSBjb250cm9sIChvcHRpb25hbCwgY3JlYXRlZCBpbnRlcm5hbGx5IGJ5IHZhbC1mb3JtKSAqL1xuICBjb250cm9sPzogRm9ybUNvbnRyb2w7XG4gIC8qKiBGcm9tIGNvbnRyb2wgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21Db250cm9sPzogRm9ybUNvbnRyb2w7XG4gIC8qKiBUbyBjb250cm9sIChvbmx5IGZvciBOVU1CRVJfRlJPTV9UTyB0eXBlKSAqL1xuICB0b0NvbnRyb2w/OiBGb3JtQ29udHJvbDtcbiAgLyoqIFVuaXF1ZSB0b2tlbiBmb3IgdGhlIGlucHV0ICovXG4gIHRva2VuOiBzdHJpbmc7XG4gIC8qKiBEaXNwbGF5IGxhYmVsICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBGaWVsZCBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIEhlbHAgdGV4dCAoc2hvd24gYmVsb3cgaW5wdXQsIGZvciB2YWxpZGF0aW9uIGhpbnRzKSAqL1xuICBoaW50OiBzdHJpbmc7XG4gIC8qKiBEZXNjcmlwdGlvbiB0ZXh0IChzaG93biBiZWxvdyBsYWJlbCwgZXhwbGFpbnMgdGhlIGZpZWxkIHB1cnBvc2UpICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKiogSW5wdXQgcGxhY2Vob2xkZXIgKi9cbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgLyoqIElucHV0IHR5cGUgKi9cbiAgdHlwZTogSW5wdXRUeXBlO1xuICAvKiogRGlzcGxheSBvcmRlciAqL1xuICBvcmRlcjogbnVtYmVyO1xuICAvKiogQXNzb2NpYXRlZCB2YWxpZGF0b3JzICovXG4gIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW107XG4gIC8qKiBPcHRpb25zIChmb3Igc2VsZWN0LCByYWRpbywgZXRjLikgKi9cbiAgb3B0aW9ucz86IElucHV0T3B0aW9uW107XG4gIC8qKiBBbGxvd2VkIHJhbmdlIChmb3IgbnVtYmVyLCBkYXRlLCBldGMuKSAqL1xuICByYW5nZT86IHtcbiAgICBtaW46IG51bWJlcjtcbiAgICBtYXg6IG51bWJlcjtcbiAgfTtcbiAgLyoqIEN1c3RvbSBlcnJvciBtZXNzYWdlcyAqL1xuICBlcnJvcnM6IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG4gIC8qKiBJbml0aWFsIHZhbHVlIGZvciB0aGUgZmllbGQgKi9cbiAgdmFsdWU/OiBzdHJpbmc7XG4gIC8qKiBEZWZhdWx0IHZhbHVlIGNvbmZpZ3VyYXRpb24gLSBzdHJpbmcgZm9yIGN1c3RvbSBkZWZhdWx0cywgdHJ1ZSBmb3IgYXV0byBkZWZhdWx0cyAqL1xuICB3aXRoRGVmYXVsdD86IHN0cmluZyB8IGJvb2xlYW47XG4gIC8qKiBGaWVsZCBzdGF0ZSAqL1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG4gIC8qKiBMYWJlbCBmb3IgXCJmcm9tXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21MYWJlbD86IHN0cmluZztcbiAgLyoqIExhYmVsIGZvciBcInRvXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIHRvTGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBQbGFjZWhvbGRlciBmb3IgXCJmcm9tXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIGZyb21QbGFjZWhvbGRlcj86IHN0cmluZztcbiAgLyoqIFBsYWNlaG9sZGVyIGZvciBcInRvXCIgZmllbGQgKG9ubHkgZm9yIE5VTUJFUl9GUk9NX1RPIHR5cGUpICovXG4gIHRvUGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLy8gaTE4biBzdXBwb3J0IHByb3BlcnRpZXNcbiAgLyoqIEtleSBmb3IgY29udGVudCBsb29rdXAgKi9cbiAgY29udGVudEtleT86IHN0cmluZztcbiAgLyoqIENvbXBvbmVudCBjbGFzcyBuYW1lIGZvciBjb250ZW50IGxvb2t1cCAqL1xuICBjb250ZW50Q2xhc3M/OiBzdHJpbmc7XG4gIC8qKiBGYWxsYmFjayB0ZXh0IGlmIGNvbnRlbnQga2V5IGlzIG5vdCBmb3VuZCAqL1xuICBjb250ZW50RmFsbGJhY2s/OiBzdHJpbmc7XG5cbiAgLy8gc2VsZWN0LWlucHV0IHNwZWNpZmljIGkxOG4gcHJvcGVydGllc1xuICAvKiogQ3VzdG9tIGhlYWRlciB0ZXh0IGZvciBzZWxlY3QgbW9kYWwgKi9cbiAgbW9kYWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBDdXN0b20gY2FuY2VsIGJ1dHRvbiB0ZXh0IGZvciBzZWxlY3QgbW9kYWwgKi9cbiAgY2FuY2VsVGV4dD86IHN0cmluZztcbiAgLyoqIEN1c3RvbSBPSyBidXR0b24gdGV4dCBmb3Igc2VsZWN0IG1vZGFsICovXG4gIG9rVGV4dD86IHN0cmluZztcbiAgLyoqIEludGVyZmFjZSBkZWwgaW9uLXNlbGVjdCAoZGVmYXVsdDogJ3BvcG92ZXInKS4gJ21vZGFsJyBwYXJhIGxpc3RhcyBsYXJnYXMuICovXG4gIHNlbGVjdEludGVyZmFjZT86ICdwb3BvdmVyJyB8ICdtb2RhbCcgfCAnYWN0aW9uLXNoZWV0JyB8ICdhbGVydCc7XG5cbiAgLy8gY2hlY2staW5wdXQgc3BlY2lmaWMgcHJvcGVydGllc1xuICAvKiogUG9zaXRpb24gb2YgbGFiZWwgZm9yIGNoZWNrYm94ICgnc3RhcnQnIHwgJ2VuZCcpICovXG4gIGxhYmVsUGxhY2VtZW50PzogJ3N0YXJ0JyB8ICdlbmQnO1xuXG4gIC8vIFBJTl9DT0RFIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgLyoqIE51bWJlciBvZiBkaWdpdHMgaW4gUElOIChkZWZhdWx0OiA1LCBvbmx5IGZvciBQSU5fQ09ERSB0eXBlKSAqL1xuICBsZW5ndGg/OiBudW1iZXI7XG4gIC8qKiBTaXplIG9mIHRoZSBpbnB1dCBib3hlczogJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyAoZGVmYXVsdDogJ21lZGl1bScsIG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIHNpemU/OiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnO1xuICAvKiogQWxsb3cgb25seSBudW1iZXJzIChkZWZhdWx0OiB0cnVlLCBvbmx5IGZvciBQSU5fQ09ERSB0eXBlKSAqL1xuICBhbGxvd051bWJlcnNPbmx5PzogYm9vbGVhbjtcbiAgLyoqIE1hc2sgaW5wdXQgLSBzaG93IGRvdHMgaW5zdGVhZCBvZiBjaGFyYWN0ZXJzIChvbmx5IGZvciBQSU5fQ09ERSB0eXBlKSAqL1xuICBtYXNrPzogYm9vbGVhbjtcbiAgLyoqIEF1dG8gZm9jdXMgZmlyc3QgaW5wdXQgKG9ubHkgZm9yIFBJTl9DT0RFIHR5cGUpICovXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW47XG4gIC8qKiBDdXN0b20gaW5wdXQgc3R5bGVzIChvbmx5IGZvciBQSU5fQ09ERSB0eXBlKSAqL1xuICBpbnB1dFN0eWxlcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59O1xuXG4vKipcbiAqIEEgc2VjdGlvbiBpbiBhIGZvcm0sIGdyb3VwaW5nIG11bHRpcGxlIGZpZWxkcy5cbiAqL1xuZXhwb3J0IHR5cGUgRm9ybVNlY3Rpb24gPSB7XG4gIC8qKiBTZWN0aW9uIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogRGlzcGxheSBvcmRlciAqL1xuICBvcmRlcjogbnVtYmVyO1xuICAvKiogRmllbGRzIGluY2x1ZGVkIGluIHRoZSBzZWN0aW9uICovXG4gIGZpZWxkczogSW5wdXRNZXRhZGF0YVtdO1xufTtcblxuLyoqXG4gKiBEYXRhIHNlbnQgd2hlbiBzdWJtaXR0aW5nIGEgZm9ybS5cbiAqL1xuZXhwb3J0IHR5cGUgRm9ybVN1Ym1pdCA9IHtcbiAgLyoqIEZvcm0gZmllbGQgdmFsdWVzIGFzIGtleS12YWx1ZSBwYWlycyAqL1xuICBmaWVsZHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIC8qKiBPcHRpb25hbCB0b2tlbiBmb3IgdGhlIG9wZXJhdGlvbiAqL1xuICB0b2tlbj86IHN0cmluZztcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGEgY29tcGxldGUgZm9ybS5cbiAqL1xuZXhwb3J0IHR5cGUgRm9ybU1ldGFkYXRhID0ge1xuICAvKiogRm9ybSBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIEZvcm0gc2VjdGlvbnMgKi9cbiAgc2VjdGlvbnM6IEZvcm1TZWN0aW9uW107XG4gIC8qKiBBY3Rpb24gYnV0dG9ucyBjb25maWd1cmF0aW9uICovXG4gIGFjdGlvbnM6IEJ1dHRvbk1ldGFkYXRhO1xuICAvKiogR2xvYmFsIGZvcm0gc3RhdGUgKi9cbiAgc3RhdGU6IENvbXBvbmVudFN0YXRlO1xufTtcblxuLyoqXG4gKiBQb3NzaWJsZSBhY3Rpb24gdHlwZXMgZm9yIGEgdG9vbGJhci5cbiAqL1xuZXhwb3J0IGVudW0gVG9vbGJhckFjdGlvblR5cGUge1xuICBBVkFUQVIgPSAnQVZBVEFSJyxcbiAgSUNPTiA9ICdJQ09OJyxcbiAgSU1BR0UgPSAnSU1BR0UnLFxuICBCVVRUT04gPSAnQlVUVE9OJyxcbn1cblxuLyoqXG4gKiBUb29sYmFyIGFjdGlvbiBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgdHlwZSBUb29sYmFyQWN0aW9uID0ge1xuICAvKiogQWN0aW9uIHR5cGUgKi9cbiAgdHlwZTogJ0FWQVRBUicgfCAnSUNPTicgfCAnSU1BR0UnIHwgJ0JVVFRPTic7XG4gIC8qKiBPcHRpb25hbCB0b2tlbiBpZGVudGlmaWVyICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKiogVG9vbGJhciBwb3NpdGlvbiAqL1xuICBwb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdjZW50ZXInO1xuICAvKiogT3B0aW9uYWwgZGVzY3JpcHRpb24gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKiBBc3NvY2lhdGVkIGltYWdlIChpZiBhbnkpICovXG4gIGltYWdlPzogSW1hZ2VNZXRhZGF0YTtcbiAgLyoqXG4gICAqIFVzZXIgc2hhcGUgcGFyYSBlbCBtb2RvIGBBVkFUQVJgIOKAlCBoYWJpbGl0YSBmYWxsYmFjayBpbnRlbGlnZW50ZTpcbiAgICogZm90byDihpIgaW5pY2lhbGVzIChkZSBgbmFtZWAvYGVtYWlsYCkg4oaSIGljb25vIHBlcnNvbmEuIFNpIHNlIG9taXRlLCBlbFxuICAgKiB0b29sYmFyIHNvbG8gbXVlc3RyYSBsYSBpbWFnZW4gcGFzYWRhIGVuIGBkZXNjcmlwdGlvbmAuXG4gICAqL1xuICB1c2VyPzogeyBuYW1lPzogc3RyaW5nOyBlbWFpbD86IHN0cmluZzsgYXZhdGFyVXJsPzogc3RyaW5nOyBoYW5kbGU/OiBzdHJpbmcgfSB8IG51bGw7XG59O1xuXG4vKipcbiAqIE1ldGFkYXRhIGZvciBhbiBpY29uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEljb25NZXRhZGEge1xuICAvKiogSWNvbiBuYW1lICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIEljb24gc2xvdCBwb3NpdGlvbiAqL1xuICBzbG90OiAnc3RhcnQnIHwgJ2VuZCc7XG59XG5cbi8qKlxuICogQnV0dG9uIGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICogU3VwcG9ydHMgYm90aCBzdGF0aWMgYW5kIHJlYWN0aXZlIGNvbnRlbnQuXG4gKiBAdHlwZSB7QnV0dG9uTWV0YWRhdGF9XG4gKiBAcHJvcGVydHkgdGV4dCAtIFN0YXRpYyBidXR0b24gbGFiZWwgKHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0ZXh0Q29uZmlnKS5cbiAqIEBwcm9wZXJ0eSB0ZXh0Q29uZmlnIC0gUmVhY3RpdmUgY29udGVudCBjb25maWd1cmF0aW9uIGZvciBidXR0b24gdGV4dC5cbiAqIEBwcm9wZXJ0eSBjb2xvciAtIFRoZSBidXR0b24gY29sb3IgKElvbmljIGNvbG9yIHN0cmluZykuXG4gKiBAcHJvcGVydHkgaWNvbiAtIEljb24gdG8gZGlzcGxheSAob3B0aW9uYWwpLlxuICogQHByb3BlcnR5IHN0YXRlIC0gQnV0dG9uIHN0YXRlIChlbmFibGVkLCBkaXNhYmxlZCwgd29ya2luZywgZXRjLikuXG4gKiBAcHJvcGVydHkgZXhwYW5kLCBmaWxsLCBzaXplLCBzaGFwZSwgaHJlZiwgdGFyZ2V0LCBkb3dubG9hZCwgaGFuZGxlciwgZXRjLiAtIFNlZSBCdXR0b25NZXRhZGF0YSBmb3IgYWxsIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnV0dG9uTWV0YWRhdGEge1xuICAvKiogQXNzb2NpYXRlZCBhY3Rpb24gdHlwZSAqL1xuICBhY3Rpb25UeXBlPzogQWN0aW9uVHlwZTtcbiAgLyoqIEJ1dHRvbiBleHBhbnNpb24gKi9cbiAgZXhwYW5kPzogJ2Z1bGwnIHwgJ2Jsb2NrJztcbiAgLyoqIEFzc29jaWF0ZWQgbGluayAqL1xuICBsaW5rPzogc3RyaW5nO1xuICAvKiogQXNzb2NpYXRlZCBocmVmIGxpbmsgKi9cbiAgaHJlZj86IHN0cmluZztcbiAgLyoqIExpbmsgdGFyZ2V0ICovXG4gIHRhcmdldD86ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJztcbiAgLyoqIERvd25sb2FkIGZpbGUgbmFtZSAqL1xuICBkb3dubG9hZD86IHN0cmluZztcbiAgLyoqIEJ1dHRvbiBjb2xvciAqL1xuICBjb2xvcjogQ29sb3I7XG4gIC8qKiBCdXR0b24gc3RhdGUgKi9cbiAgc3RhdGU6IENvbXBvbmVudFN0YXRlO1xuICAvKiogU3RhdGljIGRpc3BsYXkgdGV4dCAodGFrZXMgcHJlY2VkZW5jZSBvdmVyIHJlYWN0aXZlIGNvbnRlbnQpICovXG4gIHRleHQ/OiBzdHJpbmc7XG4gIC8qKiBSZWFjdGl2ZSBjb250ZW50IGNvbmZpZ3VyYXRpb24gZm9yIGJ1dHRvbiB0ZXh0ICovXG4gIGNvbnRlbnRLZXk/OiBzdHJpbmc7XG4gIC8qKiBDb21wb25lbnQgY2xhc3MgbmFtZSBmb3IgY29udGVudCBsb29rdXAgKHJlcXVpcmVkIHdpdGggY29udGVudEtleSkgKi9cbiAgY29udGVudENsYXNzPzogc3RyaW5nO1xuICAvKiogRmFsbGJhY2sgdGV4dCBpZiBjb250ZW50S2V5IGlzIG5vdCBmb3VuZCAqL1xuICBjb250ZW50RmFsbGJhY2s/OiBzdHJpbmc7XG4gIC8qKiBWYWx1ZXMgdG8gaW50ZXJwb2xhdGUgaW50byB0aGUgY29udGVudCBzdHJpbmcgKi9cbiAgY29udGVudEludGVycG9sYXRpb24/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+O1xuICAvKiogQXNzb2NpYXRlZCBpY29uICovXG4gIGljb24/OiBJY29uTWV0YWRhO1xuICAvKiogQnV0dG9uIHNoYXBlICovXG4gIHNoYXBlPzogJ3JvdW5kJztcbiAgLyoqIEJ1dHRvbiBzaXplICovXG4gIHNpemU/OiAnc21hbGwnIHwgJ2RlZmF1bHQnIHwgJ2xhcmdlJztcbiAgLyoqIEJ1dHRvbiBmaWxsICovXG4gIGZpbGw/OiAnY2xlYXInIHwgJ291dGxpbmUnIHwgJ3NvbGlkJyB8ICdkZWZhdWx0JztcbiAgLyoqIEJ1dHRvbiB0eXBlICovXG4gIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnO1xuICAvKiogT3B0aW9uYWwgdG9rZW4gaWRlbnRpZmllciAqL1xuICB0b2tlbj86IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIHJlZmVyZW5jZSAqL1xuICByZWY/OiBhbnk7XG4gIC8qKiBBY3Rpb24gaGFuZGxlciAqL1xuICBoYW5kbGVyPzogKHZhbHVlOiBhbnkpID0+IGFueSB8IFByb21pc2U8YW55Pjtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciByZWFjdGl2ZSBjb250ZW50IGluIHZhbC1idXR0b24gY29tcG9uZW50LlxuICogVXNlIHRoaXMgaW50ZXJmYWNlIHdoZW4geW91IG9ubHkgbmVlZCB0byBzcGVjaWZ5IGNvbnRlbnQtcmVsYXRlZCBwcm9wZXJ0aWVzLlxuICogVGhpcyBmb2xsb3dzIHRoZSBzYW1lIHBhdHRlcm4gYXMgVGV4dENvbnRlbnRDb25maWcgZm9yIGNvbnNpc3RlbmN5LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1dHRvbkNvbnRlbnRDb25maWcge1xuICBjb250ZW50S2V5OiBzdHJpbmc7XG4gIGNvbnRlbnRDbGFzczogc3RyaW5nO1xuICBjb250ZW50RmFsbGJhY2s/OiBzdHJpbmc7XG4gIGNvbnRlbnRJbnRlcnBvbGF0aW9uPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPjtcbn1cbiJdfQ==
|
package/esm2022/lib/version.mjs
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Current version of valtech-components.
|
|
3
3
|
* This is automatically updated during the publish process.
|
|
4
4
|
*/
|
|
5
|
-
export const VERSION = '2.0.
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
export const VERSION = '2.0.794';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC43OTQnO1xuIl19
|
|
@@ -52,7 +52,7 @@ import 'prismjs/components/prism-json';
|
|
|
52
52
|
* Current version of valtech-components.
|
|
53
53
|
* This is automatically updated during the publish process.
|
|
54
54
|
*/
|
|
55
|
-
const VERSION = '2.0.
|
|
55
|
+
const VERSION = '2.0.794';
|
|
56
56
|
|
|
57
57
|
/**
|
|
58
58
|
* Servicio para gestionar presets de componentes.
|
|
@@ -9901,17 +9901,35 @@ class SearchSelectorComponent {
|
|
|
9901
9901
|
breakpoints: [0, 0.6],
|
|
9902
9902
|
initialBreakpoint: 0.6,
|
|
9903
9903
|
};
|
|
9904
|
-
|
|
9905
|
-
|
|
9906
|
-
|
|
9904
|
+
this.customPopoverOptions = { cssClass: 'val-select-popover' };
|
|
9905
|
+
// Set button texts from props or use i18n defaults.
|
|
9906
|
+
// Fallback chain: namespace-less i18n → 'Common' namespace → hardcoded.
|
|
9907
|
+
// El namespace-less busca en _global; si no existe (caso typical app),
|
|
9908
|
+
// probamos en 'Common' que la mayoría de apps tienen poblado.
|
|
9909
|
+
this.cancelText = this.resolvedProps.cancelText || this.resolveI18n('cancel', 'Cancelar');
|
|
9910
|
+
this.okText = this.resolvedProps.okText || this.resolveI18n('ok', 'OK');
|
|
9911
|
+
}
|
|
9912
|
+
/**
|
|
9913
|
+
* Busca un key en `_global` primero, luego en `Common`, finalmente cae al
|
|
9914
|
+
* default hardcoded. Útil para textos cross-cutting (cancel/ok/close/etc.)
|
|
9915
|
+
* sin obligar a cada app a duplicarlos en cada namespace.
|
|
9916
|
+
*/
|
|
9917
|
+
resolveI18n(key, fallback) {
|
|
9918
|
+
const tryGlobal = this.i18n.t(key);
|
|
9919
|
+
if (tryGlobal && !tryGlobal.startsWith('['))
|
|
9920
|
+
return tryGlobal;
|
|
9921
|
+
const tryCommon = this.i18n.t(key, 'Common');
|
|
9922
|
+
if (tryCommon && !tryCommon.startsWith('['))
|
|
9923
|
+
return tryCommon;
|
|
9924
|
+
return fallback;
|
|
9907
9925
|
}
|
|
9908
9926
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SearchSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9909
9927
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SearchSelectorComponent, isStandalone: true, selector: "val-select-input", inputs: { preset: "preset", props: "props" }, usesOnChanges: true, ngImport: i0, template: `
|
|
9910
9928
|
<ion-select
|
|
9911
9929
|
[formControl]="resolvedProps.control"
|
|
9912
9930
|
[label]="resolvedProps.label"
|
|
9913
|
-
[interfaceOptions]="
|
|
9914
|
-
interface="
|
|
9931
|
+
[interfaceOptions]="customPopoverOptions"
|
|
9932
|
+
[interface]="resolvedProps.selectInterface || 'popover'"
|
|
9915
9933
|
[placeholder]="[resolvedProps.placeholder]"
|
|
9916
9934
|
[cancelText]="cancelText"
|
|
9917
9935
|
[okText]="okText"
|
|
@@ -9928,8 +9946,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
9928
9946
|
<ion-select
|
|
9929
9947
|
[formControl]="resolvedProps.control"
|
|
9930
9948
|
[label]="resolvedProps.label"
|
|
9931
|
-
[interfaceOptions]="
|
|
9932
|
-
interface="
|
|
9949
|
+
[interfaceOptions]="customPopoverOptions"
|
|
9950
|
+
[interface]="resolvedProps.selectInterface || 'popover'"
|
|
9933
9951
|
[placeholder]="[resolvedProps.placeholder]"
|
|
9934
9952
|
[cancelText]="cancelText"
|
|
9935
9953
|
[okText]="okText"
|
|
@@ -14288,7 +14306,7 @@ class PhoneInputComponent {
|
|
|
14288
14306
|
</ion-note>
|
|
14289
14307
|
}
|
|
14290
14308
|
</div>
|
|
14291
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.phone-input-container.has-error .phone-input-wrapper{border-color:var(--ion-color-danger)}.phone-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.phone-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--ion-color-step-
|
|
14309
|
+
`, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.phone-input-container.has-error .phone-input-wrapper{border-color:var(--ion-color-danger)}.phone-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.phone-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--ion-color-step-300, #aeb0b3);border-radius:28px;background:var(--ion-background-color, #fff);overflow:hidden;transition:border-color .2s;height:56px}.phone-input-wrapper:focus-within{border-color:var(--ion-color-primary)}.phone-input-wrapper.disabled{opacity:.5;pointer-events:none}.country-selector{flex-shrink:0;border-right:1px solid var(--ion-border-color, rgba(0, 0, 0, .08));background:transparent;display:flex;align-items:center;padding:0 4px 0 16px}.country-selector ion-select{--background: transparent;--border-style: none;--border-width: 0;--border-color: transparent;--border-radius: 0;--box-shadow: none;--padding-start: 4px;--padding-end: 4px;--padding-top: 0;--padding-bottom: 0;--highlight-color-focused: transparent;--highlight-color-valid: transparent;--highlight-color-invalid: transparent;min-width:80px;max-width:100px}.country-selector ion-select::part(container){border:none;box-shadow:none}.country-selector ion-select::part(icon){opacity:.6}.country-selector ion-select.select-expanded{border:none!important}.country-selector .flag{margin-right:4px}.dial-code-display{flex-shrink:0;padding:0 12px;font-weight:500;color:var(--ion-color-medium-shade);border-right:1px solid var(--ion-border-color, rgba(0, 0, 0, .08));background:transparent;display:flex;align-items:center}.number-input{flex:1;display:flex;align-items:center;background:transparent;padding:0 16px 0 12px}.number-input .phone-icon{color:var(--ion-color-medium);font-size:18px;margin-right:10px;flex-shrink:0}.number-input .phone-native-input{flex:1;width:100%;height:100%;border:none;outline:none;background:transparent;font-size:16px;font-family:inherit;color:var(--ion-text-color, #000)}.number-input .phone-native-input::placeholder{color:var(--ion-color-medium, #92949c)}.number-input .phone-native-input:focus{outline:none;border:none}.number-input .phone-native-input:disabled{opacity:.5;cursor:not-allowed}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:6px;padding-right:4px;text-align:right}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}::ng-deep .country-select-popover{--width: 200px}::ng-deep .country-select-popover .flag{margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "errorText", "expandedIcon", "fill", "helperText", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
|
|
14292
14310
|
}
|
|
14293
14311
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PhoneInputComponent, decorators: [{
|
|
14294
14312
|
type: Component,
|
|
@@ -14351,7 +14369,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
14351
14369
|
</ion-note>
|
|
14352
14370
|
}
|
|
14353
14371
|
</div>
|
|
14354
|
-
`, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.phone-input-container.has-error .phone-input-wrapper{border-color:var(--ion-color-danger)}.phone-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.phone-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--ion-color-step-
|
|
14372
|
+
`, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.phone-input-container.has-error .phone-input-wrapper{border-color:var(--ion-color-danger)}.phone-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.phone-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--ion-color-step-300, #aeb0b3);border-radius:28px;background:var(--ion-background-color, #fff);overflow:hidden;transition:border-color .2s;height:56px}.phone-input-wrapper:focus-within{border-color:var(--ion-color-primary)}.phone-input-wrapper.disabled{opacity:.5;pointer-events:none}.country-selector{flex-shrink:0;border-right:1px solid var(--ion-border-color, rgba(0, 0, 0, .08));background:transparent;display:flex;align-items:center;padding:0 4px 0 16px}.country-selector ion-select{--background: transparent;--border-style: none;--border-width: 0;--border-color: transparent;--border-radius: 0;--box-shadow: none;--padding-start: 4px;--padding-end: 4px;--padding-top: 0;--padding-bottom: 0;--highlight-color-focused: transparent;--highlight-color-valid: transparent;--highlight-color-invalid: transparent;min-width:80px;max-width:100px}.country-selector ion-select::part(container){border:none;box-shadow:none}.country-selector ion-select::part(icon){opacity:.6}.country-selector ion-select.select-expanded{border:none!important}.country-selector .flag{margin-right:4px}.dial-code-display{flex-shrink:0;padding:0 12px;font-weight:500;color:var(--ion-color-medium-shade);border-right:1px solid var(--ion-border-color, rgba(0, 0, 0, .08));background:transparent;display:flex;align-items:center}.number-input{flex:1;display:flex;align-items:center;background:transparent;padding:0 16px 0 12px}.number-input .phone-icon{color:var(--ion-color-medium);font-size:18px;margin-right:10px;flex-shrink:0}.number-input .phone-native-input{flex:1;width:100%;height:100%;border:none;outline:none;background:transparent;font-size:16px;font-family:inherit;color:var(--ion-text-color, #000)}.number-input .phone-native-input::placeholder{color:var(--ion-color-medium, #92949c)}.number-input .phone-native-input:focus{outline:none;border:none}.number-input .phone-native-input:disabled{opacity:.5;cursor:not-allowed}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:6px;padding-right:4px;text-align:right}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}::ng-deep .country-select-popover{--width: 200px}::ng-deep .country-select-popover .flag{margin-right:8px}\n"] }]
|
|
14355
14373
|
}], propDecorators: { preset: [{
|
|
14356
14374
|
type: Input
|
|
14357
14375
|
}], props: [{
|
|
@@ -25300,7 +25318,7 @@ class UsernameInputComponent {
|
|
|
25300
25318
|
<small class="username-hint">{{ props.hint }}</small>
|
|
25301
25319
|
}
|
|
25302
25320
|
</div>
|
|
25303
|
-
`, isInline: true, styles: [".username-input-container{margin-bottom:1rem}.username-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.username-hint{display:block;font-size:12px;color:var(--ion-color-dark);
|
|
25321
|
+
`, isInline: true, styles: [".username-input-container{margin-bottom:1rem}.username-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.username-hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:6px;padding-right:4px;text-align:right}.username-prefix{font-size:1rem;font-weight:500;color:var(--ion-color-medium);-webkit-user-select:none;user-select:none;margin-inline-end:.25rem;display:inline-flex;align-items:center}.username-field{width:100%}.username-field.has-error{--highlight-color: var(--ion-color-danger)}.availability-indicator{display:inline-flex;align-items:center;justify-content:center;margin-inline-start:.5rem}.checking-spinner{width:18px;height:18px;--color: var(--ion-color-medium)}.status-icon{font-size:1.25rem}.status-icon.available{color:var(--ion-color-success)}.status-icon.taken{color:var(--ion-color-danger)}.status-icon.invalid{color:var(--ion-color-warning)}.status-message,.error-message{display:block;margin-top:.25rem;padding-left:.25rem}:host-context(body.dark) .username-label,:host-context(.dark) .username-label,:host-context(.ion-palette-dark) .username-label,:host-context(html.ion-palette-dark) .username-label,:host-context([data-theme=\"dark\"]) .username-label{color:var(--ion-color-dark)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
|
|
25304
25322
|
}
|
|
25305
25323
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsernameInputComponent, decorators: [{
|
|
25306
25324
|
type: Component,
|
|
@@ -25361,7 +25379,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
25361
25379
|
<small class="username-hint">{{ props.hint }}</small>
|
|
25362
25380
|
}
|
|
25363
25381
|
</div>
|
|
25364
|
-
`, styles: [".username-input-container{margin-bottom:1rem}.username-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.username-hint{display:block;font-size:12px;color:var(--ion-color-dark);
|
|
25382
|
+
`, styles: [".username-input-container{margin-bottom:1rem}.username-label{display:block;font-size:16px;line-height:24px;font-weight:700;color:var(--ion-color-dark);margin-bottom:8px}.username-hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:6px;padding-right:4px;text-align:right}.username-prefix{font-size:1rem;font-weight:500;color:var(--ion-color-medium);-webkit-user-select:none;user-select:none;margin-inline-end:.25rem;display:inline-flex;align-items:center}.username-field{width:100%}.username-field.has-error{--highlight-color: var(--ion-color-danger)}.availability-indicator{display:inline-flex;align-items:center;justify-content:center;margin-inline-start:.5rem}.checking-spinner{width:18px;height:18px;--color: var(--ion-color-medium)}.status-icon{font-size:1.25rem}.status-icon.available{color:var(--ion-color-success)}.status-icon.taken{color:var(--ion-color-danger)}.status-icon.invalid{color:var(--ion-color-warning)}.status-message,.error-message{display:block;margin-top:.25rem;padding-left:.25rem}:host-context(body.dark) .username-label,:host-context(.dark) .username-label,:host-context(.ion-palette-dark) .username-label,:host-context(html.ion-palette-dark) .username-label,:host-context([data-theme=\"dark\"]) .username-label{color:var(--ion-color-dark)}\n"] }]
|
|
25365
25383
|
}], propDecorators: { props: [{
|
|
25366
25384
|
type: Input
|
|
25367
25385
|
}] } });
|
|
@@ -27185,6 +27203,7 @@ class FormComponent {
|
|
|
27185
27203
|
// WeakMap: si la referencia del field cambia, el cache se libera.
|
|
27186
27204
|
this.fieldPropMemo = new WeakMap();
|
|
27187
27205
|
this.usernamePropMemo = new WeakMap();
|
|
27206
|
+
this.textareaPropMemo = new WeakMap();
|
|
27188
27207
|
}
|
|
27189
27208
|
ngOnInit() {
|
|
27190
27209
|
const formControls = {};
|
|
@@ -27343,6 +27362,34 @@ class FormComponent {
|
|
|
27343
27362
|
this.usernamePropMemo.set(field, result);
|
|
27344
27363
|
return result;
|
|
27345
27364
|
}
|
|
27365
|
+
/**
|
|
27366
|
+
* Adapter — convierte un `InputMetadata` (con type=TEXTAREA) a `TextareaInputMetadata`.
|
|
27367
|
+
* Defaults sensatos: autoGrow + counter habilitado, 4-12 rows.
|
|
27368
|
+
*/
|
|
27369
|
+
getTextareaProp(field) {
|
|
27370
|
+
const cached = this.textareaPropMemo.get(field);
|
|
27371
|
+
if (cached)
|
|
27372
|
+
return cached;
|
|
27373
|
+
const control = this.getControl(field.name);
|
|
27374
|
+
const result = {
|
|
27375
|
+
control: control,
|
|
27376
|
+
name: field.name,
|
|
27377
|
+
label: field.label,
|
|
27378
|
+
hint: field.hint,
|
|
27379
|
+
placeholder: field.placeholder,
|
|
27380
|
+
autoGrow: true,
|
|
27381
|
+
minRows: 4,
|
|
27382
|
+
maxRows: 12,
|
|
27383
|
+
maxLength: field.range?.max ?? 2000,
|
|
27384
|
+
showCounter: true,
|
|
27385
|
+
counterFormat: 'current',
|
|
27386
|
+
fill: 'outline',
|
|
27387
|
+
errors: field.errors,
|
|
27388
|
+
state: field.state,
|
|
27389
|
+
};
|
|
27390
|
+
this.textareaPropMemo.set(field, result);
|
|
27391
|
+
return result;
|
|
27392
|
+
}
|
|
27346
27393
|
get isAtEndOfForm() {
|
|
27347
27394
|
return isAtEnd(this.elementRef);
|
|
27348
27395
|
}
|
|
@@ -27387,6 +27434,9 @@ class FormComponent {
|
|
|
27387
27434
|
@case (types.TEXT) {
|
|
27388
27435
|
<val-text-input [props]="getFieldProp(f)"></val-text-input>
|
|
27389
27436
|
}
|
|
27437
|
+
@case (types.TEXTAREA) {
|
|
27438
|
+
<val-textarea-input [props]="getTextareaProp(f)"></val-textarea-input>
|
|
27439
|
+
}
|
|
27390
27440
|
@case (types.CHECK) {
|
|
27391
27441
|
<val-check-input></val-check-input>
|
|
27392
27442
|
}
|
|
@@ -27455,7 +27505,7 @@ class FormComponent {
|
|
|
27455
27505
|
></val-button-group>
|
|
27456
27506
|
</form>
|
|
27457
27507
|
</div>
|
|
27458
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}.field-description{display:block;font-size:.75rem;color:var(--ion-color-medium);margin-bottom:.25rem;line-height:1.4}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input", inputs: ["preset", "props"] }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["preset", "props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["preset", "props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: NumberFromToComponent, selector: "val-number-from-to", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["preset", "props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: MultiSelectSearchComponent, selector: "val-multi-select-search", inputs: ["label", "labelProperty", "valueProperty", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["preset", "props"] }, { kind: "component", type: PhoneInputComponent, selector: "val-phone-input", inputs: ["preset", "props"], outputs: ["phoneChange"] }, { kind: "component", type: ToggleInputComponent, selector: "val-toggle-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckboxRadioInputComponent, selector: "val-checkbox-radio-input", inputs: ["props"] }, { kind: "component", type: UsernameInputComponent, selector: "val-username-input", inputs: ["props"] }] }); }
|
|
27508
|
+
`, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}.field-description{display:block;font-size:.75rem;color:var(--ion-color-medium);margin-bottom:.25rem;line-height:1.4}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["preset", "props"] }, { kind: "component", type: TextareaInputComponent, selector: "val-textarea-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input", inputs: ["preset", "props"] }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["preset", "props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["preset", "props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: NumberFromToComponent, selector: "val-number-from-to", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["preset", "props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: MultiSelectSearchComponent, selector: "val-multi-select-search", inputs: ["label", "labelProperty", "valueProperty", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["preset", "props"] }, { kind: "component", type: PhoneInputComponent, selector: "val-phone-input", inputs: ["preset", "props"], outputs: ["phoneChange"] }, { kind: "component", type: ToggleInputComponent, selector: "val-toggle-input", inputs: ["preset", "props"] }, { kind: "component", type: CheckboxRadioInputComponent, selector: "val-checkbox-radio-input", inputs: ["props"] }, { kind: "component", type: UsernameInputComponent, selector: "val-username-input", inputs: ["props"] }] }); }
|
|
27459
27509
|
}
|
|
27460
27510
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormComponent, decorators: [{
|
|
27461
27511
|
type: Component,
|
|
@@ -27465,6 +27515,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
27465
27515
|
DisplayComponent,
|
|
27466
27516
|
TitleComponent,
|
|
27467
27517
|
TextInputComponent,
|
|
27518
|
+
TextareaInputComponent,
|
|
27468
27519
|
CheckInputComponent,
|
|
27469
27520
|
ButtonGroupComponent,
|
|
27470
27521
|
DividerComponent,
|
|
@@ -27513,6 +27564,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
27513
27564
|
@case (types.TEXT) {
|
|
27514
27565
|
<val-text-input [props]="getFieldProp(f)"></val-text-input>
|
|
27515
27566
|
}
|
|
27567
|
+
@case (types.TEXTAREA) {
|
|
27568
|
+
<val-textarea-input [props]="getTextareaProp(f)"></val-textarea-input>
|
|
27569
|
+
}
|
|
27516
27570
|
@case (types.CHECK) {
|
|
27517
27571
|
<val-check-input></val-check-input>
|
|
27518
27572
|
}
|