imm-element-ui 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/esm2022/lib/form/form/form.component.mjs +9 -6
  2. package/esm2022/lib/form/form-field/field-control.mjs +5 -5
  3. package/esm2022/lib/form/form-field/field-utils.mjs +4 -5
  4. package/esm2022/lib/form/form-field/form-field.mjs +107 -107
  5. package/esm2022/lib/form/form-type/autocomplete.type.mjs +160 -151
  6. package/esm2022/lib/form/form-type/codemirror.type.mjs +5 -4
  7. package/esm2022/lib/form/form-type/datepicker.type.mjs +10 -1
  8. package/esm2022/lib/form/form-type/image.type.mjs +147 -146
  9. package/esm2022/lib/form/form-type/inputnumber.type.mjs +100 -91
  10. package/esm2022/lib/form/form-type/inputtext.type.mjs +28 -19
  11. package/esm2022/lib/form/form-type/multiselect.type.mjs +172 -163
  12. package/esm2022/lib/form/form-type/radio.type.mjs +81 -80
  13. package/esm2022/lib/form/form-type/rowselector.type.mjs +29 -28
  14. package/esm2022/lib/form/form-type/select.type.mjs +136 -136
  15. package/esm2022/lib/form/form-type/textarea.type.mjs +10 -1
  16. package/esm2022/lib/form/form-type/treeselect.type.mjs +4 -4
  17. package/esm2022/lib/form/form-type/upload.type.mjs +135 -134
  18. package/esm2022/lib/grid/actions/actions.component.mjs +3 -3
  19. package/esm2022/lib/page-form/page-form.component.mjs +12 -3
  20. package/esm2022/lib/share/utils.mjs +10 -1
  21. package/fesm2022/imm-element-ui.mjs +1147 -1068
  22. package/fesm2022/imm-element-ui.mjs.map +1 -1
  23. package/lib/crumb-action/crumb-action.component.d.ts +1 -1
  24. package/lib/form/form/form.component.d.ts +3 -1
  25. package/lib/form/form-field/field-control.d.ts +2 -2
  26. package/lib/form/form-field/field-utils.d.ts +1 -1
  27. package/lib/form/form-field/form-field.d.ts +2 -0
  28. package/lib/form/form-type/autocomplete.type.d.ts +1 -0
  29. package/lib/form/form-type/codemirror.type.d.ts +1 -1
  30. package/lib/form/form-type/datepicker.type.d.ts +2 -0
  31. package/lib/form/form-type/image.type.d.ts +1 -1
  32. package/lib/form/form-type/inputnumber.type.d.ts +1 -0
  33. package/lib/form/form-type/inputtext.type.d.ts +1 -0
  34. package/lib/form/form-type/multiselect.type.d.ts +1 -0
  35. package/lib/form/form-type/radio.type.d.ts +1 -1
  36. package/lib/form/form-type/rowselector.type.d.ts +1 -1
  37. package/lib/form/form-type/select.type.d.ts +1 -2
  38. package/lib/form/form-type/textarea.type.d.ts +1 -0
  39. package/lib/form/form-type/treeselect.type.d.ts +1 -1
  40. package/lib/form/form-type/upload.type.d.ts +1 -1
  41. package/lib/grid/grid/grid.component.d.ts +1 -1
  42. package/package.json +1 -1
@@ -13,6 +13,7 @@ export class MultiSelectComponent {
13
13
  effect(() => {
14
14
  if (this.field()) {
15
15
  this.props = this.field().multiSelectProps;
16
+ this.handleHookChange();
16
17
  this.handleDisabled();
17
18
  }
18
19
  });
@@ -34,6 +35,14 @@ export class MultiSelectComponent {
34
35
  }
35
36
  }, { allowSignalWrites: true });
36
37
  }
38
+ handleHookChange() {
39
+ this.field()?.fieldControl?.hookChange.subscribe((value) => {
40
+ if (!value) {
41
+ return;
42
+ }
43
+ this.props.onHookChange?.(this.field(), { value });
44
+ });
45
+ }
37
46
  handleDisabled() {
38
47
  setTimeout(() => {
39
48
  if (this.props?.disabled) {
@@ -42,172 +51,172 @@ export class MultiSelectComponent {
42
51
  });
43
52
  }
44
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i1.ActionService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: MultiSelectComponent, isStandalone: true, selector: "form-multiselect", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "multiselect", first: true, predicate: MultiSelect, descendants: true }, { propertyName: "multiselectRef", first: true, predicate: MultiSelect, descendants: true, read: ElementRef }], ngImport: i0, template: `<p-multiselect
46
- [id]="field()?.uuid"
47
- [inputId]="field()?.uuid"
48
- [optionLabel]="props.optionLabel"
49
- [optionValue]="props.optionValue"
50
- [ariaLabel]="props.ariaLabel"
51
- [style]="props.style"
52
- [styleClass]="props.styleClass"
53
- [panelStyle]="props.panelStyle"
54
- [panelStyleClass]="props.panelStyleClass"
55
- [fluid]="props.fluid ?? true"
56
- [readonly]="props.readonly"
57
- [appendTo]="props.appendTo ?? 'body'"
58
- [options]="props.options"
59
- [dataKey]="props.dataKey"
60
- [group]="props.group"
61
- [filter]="props.filter"
62
- [filterPlaceHolder]="props.filterPlaceHolder"
63
- [filterLocale]="props.filterLocale"
64
- [overlayVisible]="props.overlayVisible"
65
- [variant]="props.variant"
66
- [name]="props.name"
67
- [tabindex]="props.tabindex"
68
- [ariaLabelledBy]="props.ariaLabelledBy"
69
- [displaySelectedLabel]="props.displaySelectedLabel ?? true"
70
- [maxSelectedLabels]="props.maxSelectedLabels"
71
- [selectionLimit]="props.selectionLimit"
72
- [selectedItemsLabel]="props.selectedItemsLabel"
73
- [showToggleAll]="props.showToggleAll ?? true"
74
- [emptyFilterMessage]="props.emptyFilterMessage"
75
- [emptyMessage]="props.emptyMessage"
76
- [resetFilterOnHide]="props.resetFilterOnHide"
77
- [dropdownIcon]="props.dropdownIcon"
78
- [chipIcon]="props.chipIcon"
79
- [optionDisabled]="props.optionDisabled"
80
- [optionGroupLabel]="props.optionGroupLabel"
81
- [optionGroupChildren]="props.optionGroupChildren ?? 'items'"
82
- [showHeader]="props.showHeader ?? true"
83
- [filterBy]="props.filterBy"
84
- [scrollHeight]="props.scrollHeight ?? '200px'"
85
- [lazy]="props.lazy"
86
- [virtualScroll]="props.virtualScroll"
87
- [loading]="props.loading"
88
- [virtualScrollItemSize]="props.virtualScrollItemSize"
89
- [loadingIcon]="props.loadingIcon"
90
- [virtualScrollOptions]="props.virtualScrollOptions"
91
- [overlayOptions]="props.overlayOptions"
92
- [ariaFilterLabel]="props.ariaFilterLabel"
93
- [filterMatchMode]="props.filterMatchMode"
94
- [tooltip]="props.tooltip"
95
- [tooltipPosition]="props.tooltipPosition ?? 'right'"
96
- [tooltipPositionStyle]="props.tooltipPositionStyle ?? 'absolute'"
97
- [tooltipStyleClass]="props.tooltipStyleClass"
98
- [autofocusFilter]="props.autofocusFilter"
99
- [display]="props.display ?? 'comma'"
100
- [autocomplete]="props.autocomplete ?? 'off'"
101
- [size]="props.size"
102
- [showClear]="props.showClear"
103
- [autofocus]="props.autofocus"
104
- [placeholder]="props.placeholder"
105
- [filterValue]="props.filterValue"
106
- [selectAll]="props.selectAll ?? null"
107
- [focusOnHover]="props.focusOnHover ?? true"
108
- [filterFields]="props.filterFields"
109
- [selectOnFocus]="props.selectOnFocus"
110
- [autoOptionFocus]="props.autoOptionFocus"
111
- [class]="props.class"
112
- [placeholder]="props.placeholder"
113
- [maxlength]="props.maxlength"
114
- (onChange)="props.onChange?.(field()!, $event)"
115
- (onFilter)="props.onFilter?.(field()!, $event)"
116
- (onFocus)="props.onFocus?.(field()!, $event)"
117
- (onBlur)="props.onBlur?.(field()!, $event)"
118
- (onClick)="props.onClick?.(field()!, $event)"
119
- (onClear)="props.onClear?.(field()!, $event)"
120
- (onPanelShow)="props.onPanelShow?.(field()!, $event)"
121
- (onPanelHide)="props.onPanelHide?.(field()!, $event)"
122
- (onLazyLoad)="props.onLazyLoad?.(field()!, $event)"
123
- (onRemove)="props.onRemove?.(field()!, $event)"
124
- (onSelectAllChange)="props.onSelectAllChange?.(field()!, $event)"
125
- [class]="props.class"
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: MultiSelectComponent, isStandalone: true, selector: "form-multiselect", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "multiselect", first: true, predicate: MultiSelect, descendants: true }, { propertyName: "multiselectRef", first: true, predicate: MultiSelect, descendants: true, read: ElementRef }], ngImport: i0, template: `<p-multiselect
55
+ [id]="field()?.uuid"
56
+ [inputId]="field()?.uuid"
57
+ [optionLabel]="props.optionLabel"
58
+ [optionValue]="props.optionValue"
59
+ [ariaLabel]="props.ariaLabel"
60
+ [style]="props.style"
61
+ [styleClass]="props.styleClass"
62
+ [panelStyle]="props.panelStyle"
63
+ [panelStyleClass]="props.panelStyleClass"
64
+ [fluid]="props.fluid ?? true"
65
+ [readonly]="props.readonly"
66
+ [appendTo]="props.appendTo ?? 'body'"
67
+ [options]="props.options"
68
+ [dataKey]="props.dataKey"
69
+ [group]="props.group"
70
+ [filter]="props.filter"
71
+ [filterPlaceHolder]="props.filterPlaceHolder"
72
+ [filterLocale]="props.filterLocale"
73
+ [overlayVisible]="props.overlayVisible"
74
+ [variant]="props.variant"
75
+ [name]="props.name"
76
+ [tabindex]="props.tabindex"
77
+ [ariaLabelledBy]="props.ariaLabelledBy"
78
+ [displaySelectedLabel]="props.displaySelectedLabel ?? true"
79
+ [maxSelectedLabels]="props.maxSelectedLabels"
80
+ [selectionLimit]="props.selectionLimit"
81
+ [selectedItemsLabel]="props.selectedItemsLabel"
82
+ [showToggleAll]="props.showToggleAll ?? true"
83
+ [emptyFilterMessage]="props.emptyFilterMessage"
84
+ [emptyMessage]="props.emptyMessage"
85
+ [resetFilterOnHide]="props.resetFilterOnHide"
86
+ [dropdownIcon]="props.dropdownIcon"
87
+ [chipIcon]="props.chipIcon"
88
+ [optionDisabled]="props.optionDisabled"
89
+ [optionGroupLabel]="props.optionGroupLabel"
90
+ [optionGroupChildren]="props.optionGroupChildren ?? 'items'"
91
+ [showHeader]="props.showHeader ?? true"
92
+ [filterBy]="props.filterBy"
93
+ [scrollHeight]="props.scrollHeight ?? '200px'"
94
+ [lazy]="props.lazy"
95
+ [virtualScroll]="props.virtualScroll"
96
+ [loading]="props.loading"
97
+ [virtualScrollItemSize]="props.virtualScrollItemSize"
98
+ [loadingIcon]="props.loadingIcon"
99
+ [virtualScrollOptions]="props.virtualScrollOptions"
100
+ [overlayOptions]="props.overlayOptions"
101
+ [ariaFilterLabel]="props.ariaFilterLabel"
102
+ [filterMatchMode]="props.filterMatchMode"
103
+ [tooltip]="props.tooltip"
104
+ [tooltipPosition]="props.tooltipPosition ?? 'right'"
105
+ [tooltipPositionStyle]="props.tooltipPositionStyle ?? 'absolute'"
106
+ [tooltipStyleClass]="props.tooltipStyleClass"
107
+ [autofocusFilter]="props.autofocusFilter"
108
+ [display]="props.display ?? 'comma'"
109
+ [autocomplete]="props.autocomplete ?? 'off'"
110
+ [size]="props.size"
111
+ [showClear]="props.showClear"
112
+ [autofocus]="props.autofocus"
113
+ [placeholder]="props.placeholder"
114
+ [filterValue]="props.filterValue"
115
+ [selectAll]="props.selectAll ?? null"
116
+ [focusOnHover]="props.focusOnHover ?? true"
117
+ [filterFields]="props.filterFields"
118
+ [selectOnFocus]="props.selectOnFocus"
119
+ [autoOptionFocus]="props.autoOptionFocus"
120
+ [class]="props.class"
121
+ [placeholder]="props.placeholder"
122
+ [maxlength]="props.maxlength"
123
+ (onChange)="props.onChange?.(field()!, $event)"
124
+ (onFilter)="props.onFilter?.(field()!, $event)"
125
+ (onFocus)="props.onFocus?.(field()!, $event)"
126
+ (onBlur)="props.onBlur?.(field()!, $event)"
127
+ (onClick)="props.onClick?.(field()!, $event)"
128
+ (onClear)="props.onClear?.(field()!, $event)"
129
+ (onPanelShow)="props.onPanelShow?.(field()!, $event)"
130
+ (onPanelHide)="props.onPanelHide?.(field()!, $event)"
131
+ (onLazyLoad)="props.onLazyLoad?.(field()!, $event)"
132
+ (onRemove)="props.onRemove?.(field()!, $event)"
133
+ (onSelectAllChange)="props.onSelectAllChange?.(field()!, $event)"
134
+ [class]="props.class"
126
135
  [formControl]="field()!.fieldControl!" />`, isInline: true, styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-invalid.ng-dirty>.p-datepicker .p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}\n"], dependencies: [{ kind: "component", type: MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
127
136
  }
128
137
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiSelectComponent, decorators: [{
129
138
  type: Component,
130
- args: [{ selector: 'form-multiselect', standalone: true, imports: [MultiSelect, ReactiveFormsModule], template: `<p-multiselect
131
- [id]="field()?.uuid"
132
- [inputId]="field()?.uuid"
133
- [optionLabel]="props.optionLabel"
134
- [optionValue]="props.optionValue"
135
- [ariaLabel]="props.ariaLabel"
136
- [style]="props.style"
137
- [styleClass]="props.styleClass"
138
- [panelStyle]="props.panelStyle"
139
- [panelStyleClass]="props.panelStyleClass"
140
- [fluid]="props.fluid ?? true"
141
- [readonly]="props.readonly"
142
- [appendTo]="props.appendTo ?? 'body'"
143
- [options]="props.options"
144
- [dataKey]="props.dataKey"
145
- [group]="props.group"
146
- [filter]="props.filter"
147
- [filterPlaceHolder]="props.filterPlaceHolder"
148
- [filterLocale]="props.filterLocale"
149
- [overlayVisible]="props.overlayVisible"
150
- [variant]="props.variant"
151
- [name]="props.name"
152
- [tabindex]="props.tabindex"
153
- [ariaLabelledBy]="props.ariaLabelledBy"
154
- [displaySelectedLabel]="props.displaySelectedLabel ?? true"
155
- [maxSelectedLabels]="props.maxSelectedLabels"
156
- [selectionLimit]="props.selectionLimit"
157
- [selectedItemsLabel]="props.selectedItemsLabel"
158
- [showToggleAll]="props.showToggleAll ?? true"
159
- [emptyFilterMessage]="props.emptyFilterMessage"
160
- [emptyMessage]="props.emptyMessage"
161
- [resetFilterOnHide]="props.resetFilterOnHide"
162
- [dropdownIcon]="props.dropdownIcon"
163
- [chipIcon]="props.chipIcon"
164
- [optionDisabled]="props.optionDisabled"
165
- [optionGroupLabel]="props.optionGroupLabel"
166
- [optionGroupChildren]="props.optionGroupChildren ?? 'items'"
167
- [showHeader]="props.showHeader ?? true"
168
- [filterBy]="props.filterBy"
169
- [scrollHeight]="props.scrollHeight ?? '200px'"
170
- [lazy]="props.lazy"
171
- [virtualScroll]="props.virtualScroll"
172
- [loading]="props.loading"
173
- [virtualScrollItemSize]="props.virtualScrollItemSize"
174
- [loadingIcon]="props.loadingIcon"
175
- [virtualScrollOptions]="props.virtualScrollOptions"
176
- [overlayOptions]="props.overlayOptions"
177
- [ariaFilterLabel]="props.ariaFilterLabel"
178
- [filterMatchMode]="props.filterMatchMode"
179
- [tooltip]="props.tooltip"
180
- [tooltipPosition]="props.tooltipPosition ?? 'right'"
181
- [tooltipPositionStyle]="props.tooltipPositionStyle ?? 'absolute'"
182
- [tooltipStyleClass]="props.tooltipStyleClass"
183
- [autofocusFilter]="props.autofocusFilter"
184
- [display]="props.display ?? 'comma'"
185
- [autocomplete]="props.autocomplete ?? 'off'"
186
- [size]="props.size"
187
- [showClear]="props.showClear"
188
- [autofocus]="props.autofocus"
189
- [placeholder]="props.placeholder"
190
- [filterValue]="props.filterValue"
191
- [selectAll]="props.selectAll ?? null"
192
- [focusOnHover]="props.focusOnHover ?? true"
193
- [filterFields]="props.filterFields"
194
- [selectOnFocus]="props.selectOnFocus"
195
- [autoOptionFocus]="props.autoOptionFocus"
196
- [class]="props.class"
197
- [placeholder]="props.placeholder"
198
- [maxlength]="props.maxlength"
199
- (onChange)="props.onChange?.(field()!, $event)"
200
- (onFilter)="props.onFilter?.(field()!, $event)"
201
- (onFocus)="props.onFocus?.(field()!, $event)"
202
- (onBlur)="props.onBlur?.(field()!, $event)"
203
- (onClick)="props.onClick?.(field()!, $event)"
204
- (onClear)="props.onClear?.(field()!, $event)"
205
- (onPanelShow)="props.onPanelShow?.(field()!, $event)"
206
- (onPanelHide)="props.onPanelHide?.(field()!, $event)"
207
- (onLazyLoad)="props.onLazyLoad?.(field()!, $event)"
208
- (onRemove)="props.onRemove?.(field()!, $event)"
209
- (onSelectAllChange)="props.onSelectAllChange?.(field()!, $event)"
210
- [class]="props.class"
139
+ args: [{ selector: 'form-multiselect', standalone: true, imports: [MultiSelect, ReactiveFormsModule], template: `<p-multiselect
140
+ [id]="field()?.uuid"
141
+ [inputId]="field()?.uuid"
142
+ [optionLabel]="props.optionLabel"
143
+ [optionValue]="props.optionValue"
144
+ [ariaLabel]="props.ariaLabel"
145
+ [style]="props.style"
146
+ [styleClass]="props.styleClass"
147
+ [panelStyle]="props.panelStyle"
148
+ [panelStyleClass]="props.panelStyleClass"
149
+ [fluid]="props.fluid ?? true"
150
+ [readonly]="props.readonly"
151
+ [appendTo]="props.appendTo ?? 'body'"
152
+ [options]="props.options"
153
+ [dataKey]="props.dataKey"
154
+ [group]="props.group"
155
+ [filter]="props.filter"
156
+ [filterPlaceHolder]="props.filterPlaceHolder"
157
+ [filterLocale]="props.filterLocale"
158
+ [overlayVisible]="props.overlayVisible"
159
+ [variant]="props.variant"
160
+ [name]="props.name"
161
+ [tabindex]="props.tabindex"
162
+ [ariaLabelledBy]="props.ariaLabelledBy"
163
+ [displaySelectedLabel]="props.displaySelectedLabel ?? true"
164
+ [maxSelectedLabels]="props.maxSelectedLabels"
165
+ [selectionLimit]="props.selectionLimit"
166
+ [selectedItemsLabel]="props.selectedItemsLabel"
167
+ [showToggleAll]="props.showToggleAll ?? true"
168
+ [emptyFilterMessage]="props.emptyFilterMessage"
169
+ [emptyMessage]="props.emptyMessage"
170
+ [resetFilterOnHide]="props.resetFilterOnHide"
171
+ [dropdownIcon]="props.dropdownIcon"
172
+ [chipIcon]="props.chipIcon"
173
+ [optionDisabled]="props.optionDisabled"
174
+ [optionGroupLabel]="props.optionGroupLabel"
175
+ [optionGroupChildren]="props.optionGroupChildren ?? 'items'"
176
+ [showHeader]="props.showHeader ?? true"
177
+ [filterBy]="props.filterBy"
178
+ [scrollHeight]="props.scrollHeight ?? '200px'"
179
+ [lazy]="props.lazy"
180
+ [virtualScroll]="props.virtualScroll"
181
+ [loading]="props.loading"
182
+ [virtualScrollItemSize]="props.virtualScrollItemSize"
183
+ [loadingIcon]="props.loadingIcon"
184
+ [virtualScrollOptions]="props.virtualScrollOptions"
185
+ [overlayOptions]="props.overlayOptions"
186
+ [ariaFilterLabel]="props.ariaFilterLabel"
187
+ [filterMatchMode]="props.filterMatchMode"
188
+ [tooltip]="props.tooltip"
189
+ [tooltipPosition]="props.tooltipPosition ?? 'right'"
190
+ [tooltipPositionStyle]="props.tooltipPositionStyle ?? 'absolute'"
191
+ [tooltipStyleClass]="props.tooltipStyleClass"
192
+ [autofocusFilter]="props.autofocusFilter"
193
+ [display]="props.display ?? 'comma'"
194
+ [autocomplete]="props.autocomplete ?? 'off'"
195
+ [size]="props.size"
196
+ [showClear]="props.showClear"
197
+ [autofocus]="props.autofocus"
198
+ [placeholder]="props.placeholder"
199
+ [filterValue]="props.filterValue"
200
+ [selectAll]="props.selectAll ?? null"
201
+ [focusOnHover]="props.focusOnHover ?? true"
202
+ [filterFields]="props.filterFields"
203
+ [selectOnFocus]="props.selectOnFocus"
204
+ [autoOptionFocus]="props.autoOptionFocus"
205
+ [class]="props.class"
206
+ [placeholder]="props.placeholder"
207
+ [maxlength]="props.maxlength"
208
+ (onChange)="props.onChange?.(field()!, $event)"
209
+ (onFilter)="props.onFilter?.(field()!, $event)"
210
+ (onFocus)="props.onFocus?.(field()!, $event)"
211
+ (onBlur)="props.onBlur?.(field()!, $event)"
212
+ (onClick)="props.onClick?.(field()!, $event)"
213
+ (onClear)="props.onClear?.(field()!, $event)"
214
+ (onPanelShow)="props.onPanelShow?.(field()!, $event)"
215
+ (onPanelHide)="props.onPanelHide?.(field()!, $event)"
216
+ (onLazyLoad)="props.onLazyLoad?.(field()!, $event)"
217
+ (onRemove)="props.onRemove?.(field()!, $event)"
218
+ (onSelectAllChange)="props.onSelectAllChange?.(field()!, $event)"
219
+ [class]="props.class"
211
220
  [formControl]="field()!.fieldControl!" />`, styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-invalid.ng-dirty>.p-datepicker .p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}\n"] }]
212
221
  }], ctorParameters: () => [{ type: i1.ActionService }, { type: i0.Renderer2 }], propDecorators: { multiselect: [{
213
222
  type: ViewChild,
@@ -216,4 +225,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
216
225
  type: ViewChild,
217
226
  args: [MultiSelect, { read: ElementRef, static: false }]
218
227
  }] } });
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlzZWxlY3QudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvZm9ybS9mb3JtLXR5cGUvbXVsdGlzZWxlY3QudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFrS2xELE1BQU0sT0FBTyxvQkFBb0I7SUFNaEMsWUFDUyxNQUFxQixFQUNyQixRQUFtQjtRQURuQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFMNUIsVUFBSyxHQUFHLEtBQUssRUFBYSxDQUFDO1FBQzNCLFVBQUssR0FBcUIsRUFBRSxDQUFDO1FBTTVCLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDWCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUcsQ0FBQyxnQkFBaUIsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLENBQUM7UUFDRixDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FDTCxHQUFHLEVBQUU7WUFDSixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDdEQsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDNUQsT0FBTztZQUNSLENBQUM7WUFDRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLElBQUksWUFBWSxFQUFFLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ3pFLENBQUM7aUJBQU0sSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLFlBQVksRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUM1RSxDQUFDO2lCQUFNLElBQUksV0FBVyxDQUFDLElBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3pCLENBQUM7WUFDRixDQUFDO1FBQ0YsQ0FBQyxFQUNELEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxLQUFLLEVBQUcsQ0FBQyxZQUFhLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDM0QsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzsrR0ExQ1csb0JBQW9CO21HQUFwQixvQkFBb0IsNlBBQ3JCLFdBQVcsaUZBQ1gsV0FBVywyQkFBVSxVQUFVLDZCQXRGaEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs0Q0FpRmlDLGlzTEFsRmpDLFdBQVcsbTJDQUFFLG1CQUFtQjs7NEZBcUY5QixvQkFBb0I7a0JBeEZoQyxTQUFTOytCQUNDLGtCQUFrQixjQUNoQixJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsWUFDakM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs0Q0FpRmlDOzBHQUlBLFdBQVc7c0JBQXJELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDb0IsY0FBYztzQkFBMUUsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0LCBlZmZlY3QsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZCwgRmllbGRQcm9wcywgQXR0cmlidXRlRXZlbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNdWx0aVNlbGVjdCB9IGZyb20gJ3ByaW1lbmcvbXVsdGlzZWxlY3QnO1xyXG5pbXBvcnQgeyBTY3JvbGxlck9wdGlvbnMsIE92ZXJsYXlPcHRpb25zIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hY3Rpb24uc2VydmljZSc7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNdWx0aVNlbGVjdFByb3BzIGV4dGVuZHMgRmllbGRQcm9wcyB7XHJcblx0ZmlsdGVyUGxhY2VIb2xkZXI/OiBzdHJpbmc7XHJcblx0b3ZlcmxheVZpc2libGU/OiBib29sZWFuO1xyXG5cdGRpc3BsYXlTZWxlY3RlZExhYmVsPzogYm9vbGVhbjtcclxuXHRtYXhTZWxlY3RlZExhYmVscz86IG51bWJlcjtcclxuXHRzZWxlY3Rpb25MaW1pdD86IG51bWJlcjtcclxuXHRzZWxlY3RlZEl0ZW1zTGFiZWw/OiBzdHJpbmc7XHJcblx0c2hvd1RvZ2dsZUFsbD86IGJvb2xlYW47XHJcblx0Y2hpcEljb24/OiBzdHJpbmc7XHJcblx0c2hvd0hlYWRlcj86IGJvb2xlYW47XHJcblx0YXV0b2ZvY3VzRmlsdGVyPzogYm9vbGVhbjtcclxuXHRkaXNwbGF5Pzogc3RyaW5nO1xyXG5cdGF1dG9jb21wbGV0ZT86IHN0cmluZztcclxuXHRzZWxlY3RBbGw/OiBib29sZWFuO1xyXG5cdHNlbGVjdE9uRm9jdXM/OiBib29sZWFuO1xyXG5cdGF1dG9PcHRpb25Gb2N1cz86IGJvb2xlYW47XHJcblx0c2Nyb2xsSGVpZ2h0Pzogc3RyaW5nO1xyXG5cdGZpbHRlcj86IGJvb2xlYW47XHJcblx0cGFuZWxTdHlsZT86IGFueTtcclxuXHRwYW5lbFN0eWxlQ2xhc3M/OiBzdHJpbmc7XHJcblx0cmVhZG9ubHk/OiBib29sZWFuO1xyXG5cdGFwcGVuZFRvPzogYW55O1xyXG5cdHRhYmluZGV4PzogbnVtYmVyO1xyXG5cdGxvYWRpbmdJY29uPzogc3RyaW5nO1xyXG5cdGZpbHRlckxvY2FsZT86IHN0cmluZztcclxuXHRkYXRhS2V5Pzogc3RyaW5nO1xyXG5cdGZpbHRlckJ5Pzogc3RyaW5nO1xyXG5cdGZpbHRlckZpZWxkcz86IGFueVtdO1xyXG5cdHJlc2V0RmlsdGVyT25IaWRlPzogYm9vbGVhbjtcclxuXHRkcm9wZG93bkljb24/OiBzdHJpbmc7XHJcblx0bG9hZGluZz86IHN0cmluZztcclxuXHRvcHRpb25MYWJlbD86IHN0cmluZztcclxuXHRvcHRpb25WYWx1ZT86IHN0cmluZztcclxuXHRvcHRpb25EaXNhYmxlZD86IHN0cmluZztcclxuXHRvcHRpb25Hcm91cExhYmVsPzogc3RyaW5nO1xyXG5cdG9wdGlvbkdyb3VwQ2hpbGRyZW4/OiBzdHJpbmc7XHJcblx0Z3JvdXA/OiBib29sZWFuO1xyXG5cdHNob3dDbGVhcj86IGJvb2xlYW47XHJcblx0ZW1wdHlGaWx0ZXJNZXNzYWdlPzogYW55O1xyXG5cdGVtcHR5TWVzc2FnZT86IGFueTtcclxuXHRsYXp5PzogYm9vbGVhbjtcclxuXHR2aXJ0dWFsU2Nyb2xsPzogYm9vbGVhbjtcclxuXHR2aXJ0dWFsU2Nyb2xsSXRlbVNpemU/OiBudW1iZXI7XHJcblx0dmlydHVhbFNjcm9sbE9wdGlvbnM/OiBTY3JvbGxlck9wdGlvbnM7XHJcblx0b3ZlcmxheU9wdGlvbnM/OiBPdmVybGF5T3B0aW9ucztcclxuXHRhcmlhRmlsdGVyTGFiZWw/OiBzdHJpbmc7XHJcblx0ZmlsdGVyTWF0Y2hNb2RlPzogYW55O1xyXG5cdG1heGxlbmd0aD86IGFueTtcclxuXHR0b29sdGlwPzogYW55O1xyXG5cdHRvb2x0aXBQb3NpdGlvbj86ICdyaWdodCcgfCAnbGVmdCcgfCAndG9wJyB8ICdib3R0b20nO1xyXG5cdHRvb2x0aXBQb3NpdGlvblN0eWxlPzogc3RyaW5nO1xyXG5cdHRvb2x0aXBTdHlsZUNsYXNzPzogc3RyaW5nO1xyXG5cdGZvY3VzT25Ib3Zlcj86IGJvb2xlYW47XHJcblx0ZmlsdGVyVmFsdWU/OiBzdHJpbmc7XHJcblx0b3B0aW9ucz86IGFueVtdO1xyXG5cclxuXHRvbkNoYW5nZT86IEF0dHJpYnV0ZUV2ZW50O1xyXG5cdG9uRmlsdGVyPzogQXR0cmlidXRlRXZlbnQ7XHJcblx0b25Gb2N1cz86IEF0dHJpYnV0ZUV2ZW50O1xyXG5cdG9uQmx1cj86IEF0dHJpYnV0ZUV2ZW50O1xyXG5cdG9uQ2xpY2s/OiBBdHRyaWJ1dGVFdmVudDtcclxuXHRvbkNsZWFyPzogQXR0cmlidXRlRXZlbnQ7XHJcblx0b25QYW5lbFNob3c/OiBBdHRyaWJ1dGVFdmVudDtcclxuXHRvblBhbmVsSGlkZT86IEF0dHJpYnV0ZUV2ZW50O1xyXG5cdG9uTGF6eUxvYWQ/OiBBdHRyaWJ1dGVFdmVudDtcclxuXHRvblJlbW92ZT86IEF0dHJpYnV0ZUV2ZW50O1xyXG5cdG9uU2VsZWN0QWxsQ2hhbmdlPzogQXR0cmlidXRlRXZlbnQ7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnZm9ybS1tdWx0aXNlbGVjdCcsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbTXVsdGlTZWxlY3QsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxyXG5cdHRlbXBsYXRlOiBgPHAtbXVsdGlzZWxlY3RcclxuXHRcdFtpZF09XCJmaWVsZCgpPy51dWlkXCJcclxuXHRcdFtpbnB1dElkXT1cImZpZWxkKCk/LnV1aWRcIlxyXG5cdFx0W29wdGlvbkxhYmVsXT1cInByb3BzLm9wdGlvbkxhYmVsXCJcclxuXHRcdFtvcHRpb25WYWx1ZV09XCJwcm9wcy5vcHRpb25WYWx1ZVwiXHJcblx0XHRbYXJpYUxhYmVsXT1cInByb3BzLmFyaWFMYWJlbFwiXHJcblx0XHRbc3R5bGVdPVwicHJvcHMuc3R5bGVcIlxyXG5cdFx0W3N0eWxlQ2xhc3NdPVwicHJvcHMuc3R5bGVDbGFzc1wiXHJcblx0XHRbcGFuZWxTdHlsZV09XCJwcm9wcy5wYW5lbFN0eWxlXCJcclxuXHRcdFtwYW5lbFN0eWxlQ2xhc3NdPVwicHJvcHMucGFuZWxTdHlsZUNsYXNzXCJcclxuXHRcdFtmbHVpZF09XCJwcm9wcy5mbHVpZCA/PyB0cnVlXCJcclxuXHRcdFtyZWFkb25seV09XCJwcm9wcy5yZWFkb25seVwiXHJcblx0XHRbYXBwZW5kVG9dPVwicHJvcHMuYXBwZW5kVG8gPz8gJ2JvZHknXCJcclxuXHRcdFtvcHRpb25zXT1cInByb3BzLm9wdGlvbnNcIlxyXG5cdFx0W2RhdGFLZXldPVwicHJvcHMuZGF0YUtleVwiXHJcblx0XHRbZ3JvdXBdPVwicHJvcHMuZ3JvdXBcIlxyXG5cdFx0W2ZpbHRlcl09XCJwcm9wcy5maWx0ZXJcIlxyXG5cdFx0W2ZpbHRlclBsYWNlSG9sZGVyXT1cInByb3BzLmZpbHRlclBsYWNlSG9sZGVyXCJcclxuXHRcdFtmaWx0ZXJMb2NhbGVdPVwicHJvcHMuZmlsdGVyTG9jYWxlXCJcclxuXHRcdFtvdmVybGF5VmlzaWJsZV09XCJwcm9wcy5vdmVybGF5VmlzaWJsZVwiXHJcblx0XHRbdmFyaWFudF09XCJwcm9wcy52YXJpYW50XCJcclxuXHRcdFtuYW1lXT1cInByb3BzLm5hbWVcIlxyXG5cdFx0W3RhYmluZGV4XT1cInByb3BzLnRhYmluZGV4XCJcclxuXHRcdFthcmlhTGFiZWxsZWRCeV09XCJwcm9wcy5hcmlhTGFiZWxsZWRCeVwiXHJcblx0XHRbZGlzcGxheVNlbGVjdGVkTGFiZWxdPVwicHJvcHMuZGlzcGxheVNlbGVjdGVkTGFiZWwgPz8gdHJ1ZVwiXHJcblx0XHRbbWF4U2VsZWN0ZWRMYWJlbHNdPVwicHJvcHMubWF4U2VsZWN0ZWRMYWJlbHNcIlxyXG5cdFx0W3NlbGVjdGlvbkxpbWl0XT1cInByb3BzLnNlbGVjdGlvbkxpbWl0XCJcclxuXHRcdFtzZWxlY3RlZEl0ZW1zTGFiZWxdPVwicHJvcHMuc2VsZWN0ZWRJdGVtc0xhYmVsXCJcclxuXHRcdFtzaG93VG9nZ2xlQWxsXT1cInByb3BzLnNob3dUb2dnbGVBbGwgPz8gdHJ1ZVwiXHJcblx0XHRbZW1wdHlGaWx0ZXJNZXNzYWdlXT1cInByb3BzLmVtcHR5RmlsdGVyTWVzc2FnZVwiXHJcblx0XHRbZW1wdHlNZXNzYWdlXT1cInByb3BzLmVtcHR5TWVzc2FnZVwiXHJcblx0XHRbcmVzZXRGaWx0ZXJPbkhpZGVdPVwicHJvcHMucmVzZXRGaWx0ZXJPbkhpZGVcIlxyXG5cdFx0W2Ryb3Bkb3duSWNvbl09XCJwcm9wcy5kcm9wZG93bkljb25cIlxyXG5cdFx0W2NoaXBJY29uXT1cInByb3BzLmNoaXBJY29uXCJcclxuXHRcdFtvcHRpb25EaXNhYmxlZF09XCJwcm9wcy5vcHRpb25EaXNhYmxlZFwiXHJcblx0XHRbb3B0aW9uR3JvdXBMYWJlbF09XCJwcm9wcy5vcHRpb25Hcm91cExhYmVsXCJcclxuXHRcdFtvcHRpb25Hcm91cENoaWxkcmVuXT1cInByb3BzLm9wdGlvbkdyb3VwQ2hpbGRyZW4gPz8gJ2l0ZW1zJ1wiXHJcblx0XHRbc2hvd0hlYWRlcl09XCJwcm9wcy5zaG93SGVhZGVyID8/IHRydWVcIlxyXG5cdFx0W2ZpbHRlckJ5XT1cInByb3BzLmZpbHRlckJ5XCJcclxuXHRcdFtzY3JvbGxIZWlnaHRdPVwicHJvcHMuc2Nyb2xsSGVpZ2h0ID8/ICcyMDBweCdcIlxyXG5cdFx0W2xhenldPVwicHJvcHMubGF6eVwiXHJcblx0XHRbdmlydHVhbFNjcm9sbF09XCJwcm9wcy52aXJ0dWFsU2Nyb2xsXCJcclxuXHRcdFtsb2FkaW5nXT1cInByb3BzLmxvYWRpbmdcIlxyXG5cdFx0W3ZpcnR1YWxTY3JvbGxJdGVtU2l6ZV09XCJwcm9wcy52aXJ0dWFsU2Nyb2xsSXRlbVNpemVcIlxyXG5cdFx0W2xvYWRpbmdJY29uXT1cInByb3BzLmxvYWRpbmdJY29uXCJcclxuXHRcdFt2aXJ0dWFsU2Nyb2xsT3B0aW9uc109XCJwcm9wcy52aXJ0dWFsU2Nyb2xsT3B0aW9uc1wiXHJcblx0XHRbb3ZlcmxheU9wdGlvbnNdPVwicHJvcHMub3ZlcmxheU9wdGlvbnNcIlxyXG5cdFx0W2FyaWFGaWx0ZXJMYWJlbF09XCJwcm9wcy5hcmlhRmlsdGVyTGFiZWxcIlxyXG5cdFx0W2ZpbHRlck1hdGNoTW9kZV09XCJwcm9wcy5maWx0ZXJNYXRjaE1vZGVcIlxyXG5cdFx0W3Rvb2x0aXBdPVwicHJvcHMudG9vbHRpcFwiXHJcblx0XHRbdG9vbHRpcFBvc2l0aW9uXT1cInByb3BzLnRvb2x0aXBQb3NpdGlvbiA/PyAncmlnaHQnXCJcclxuXHRcdFt0b29sdGlwUG9zaXRpb25TdHlsZV09XCJwcm9wcy50b29sdGlwUG9zaXRpb25TdHlsZSA/PyAnYWJzb2x1dGUnXCJcclxuXHRcdFt0b29sdGlwU3R5bGVDbGFzc109XCJwcm9wcy50b29sdGlwU3R5bGVDbGFzc1wiXHJcblx0XHRbYXV0b2ZvY3VzRmlsdGVyXT1cInByb3BzLmF1dG9mb2N1c0ZpbHRlclwiXHJcblx0XHRbZGlzcGxheV09XCJwcm9wcy5kaXNwbGF5ID8/ICdjb21tYSdcIlxyXG5cdFx0W2F1dG9jb21wbGV0ZV09XCJwcm9wcy5hdXRvY29tcGxldGUgPz8gJ29mZidcIlxyXG5cdFx0W3NpemVdPVwicHJvcHMuc2l6ZVwiXHJcblx0XHRbc2hvd0NsZWFyXT1cInByb3BzLnNob3dDbGVhclwiXHJcblx0XHRbYXV0b2ZvY3VzXT1cInByb3BzLmF1dG9mb2N1c1wiXHJcblx0XHRbcGxhY2Vob2xkZXJdPVwicHJvcHMucGxhY2Vob2xkZXJcIlxyXG5cdFx0W2ZpbHRlclZhbHVlXT1cInByb3BzLmZpbHRlclZhbHVlXCJcclxuXHRcdFtzZWxlY3RBbGxdPVwicHJvcHMuc2VsZWN0QWxsID8/IG51bGxcIlxyXG5cdFx0W2ZvY3VzT25Ib3Zlcl09XCJwcm9wcy5mb2N1c09uSG92ZXIgPz8gdHJ1ZVwiXHJcblx0XHRbZmlsdGVyRmllbGRzXT1cInByb3BzLmZpbHRlckZpZWxkc1wiXHJcblx0XHRbc2VsZWN0T25Gb2N1c109XCJwcm9wcy5zZWxlY3RPbkZvY3VzXCJcclxuXHRcdFthdXRvT3B0aW9uRm9jdXNdPVwicHJvcHMuYXV0b09wdGlvbkZvY3VzXCJcclxuXHRcdFtjbGFzc109XCJwcm9wcy5jbGFzc1wiXHJcblx0XHRbcGxhY2Vob2xkZXJdPVwicHJvcHMucGxhY2Vob2xkZXJcIlxyXG5cdFx0W21heGxlbmd0aF09XCJwcm9wcy5tYXhsZW5ndGhcIlxyXG5cdFx0KG9uQ2hhbmdlKT1cInByb3BzLm9uQ2hhbmdlPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0KG9uRmlsdGVyKT1cInByb3BzLm9uRmlsdGVyPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0KG9uRm9jdXMpPVwicHJvcHMub25Gb2N1cz8uKGZpZWxkKCkhLCAkZXZlbnQpXCJcclxuXHRcdChvbkJsdXIpPVwicHJvcHMub25CbHVyPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0KG9uQ2xpY2spPVwicHJvcHMub25DbGljaz8uKGZpZWxkKCkhLCAkZXZlbnQpXCJcclxuXHRcdChvbkNsZWFyKT1cInByb3BzLm9uQ2xlYXI/LihmaWVsZCgpISwgJGV2ZW50KVwiXHJcblx0XHQob25QYW5lbFNob3cpPVwicHJvcHMub25QYW5lbFNob3c/LihmaWVsZCgpISwgJGV2ZW50KVwiXHJcblx0XHQob25QYW5lbEhpZGUpPVwicHJvcHMub25QYW5lbEhpZGU/LihmaWVsZCgpISwgJGV2ZW50KVwiXHJcblx0XHQob25MYXp5TG9hZCk9XCJwcm9wcy5vbkxhenlMb2FkPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0KG9uUmVtb3ZlKT1cInByb3BzLm9uUmVtb3ZlPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0KG9uU2VsZWN0QWxsQ2hhbmdlKT1cInByb3BzLm9uU2VsZWN0QWxsQ2hhbmdlPy4oZmllbGQoKSEsICRldmVudClcIlxyXG5cdFx0W2NsYXNzXT1cInByb3BzLmNsYXNzXCJcclxuXHRcdFtmb3JtQ29udHJvbF09XCJmaWVsZCgpIS5maWVsZENvbnRyb2whXCIgLz5gLFxyXG5cdHN0eWxlVXJsOiAnLi4vLi4vc3R5bGVzL3N0eWxlcy5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0Q29tcG9uZW50IHtcclxuXHRAVmlld0NoaWxkKE11bHRpU2VsZWN0LCB7IHN0YXRpYzogZmFsc2UgfSkgbXVsdGlzZWxlY3QhOiBNdWx0aVNlbGVjdDtcclxuXHRAVmlld0NoaWxkKE11bHRpU2VsZWN0LCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgbXVsdGlzZWxlY3RSZWYhOiBFbGVtZW50UmVmO1xyXG5cdGZpZWxkID0gaW5wdXQ8Rm9ybUZpZWxkPigpO1xyXG5cdHByb3BzOiBNdWx0aVNlbGVjdFByb3BzID0ge307XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBhY3Rpb246IEFjdGlvblNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcblx0KSB7XHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5maWVsZCgpKSB7XHJcblx0XHRcdFx0dGhpcy5wcm9wcyA9IHRoaXMuZmllbGQoKSEubXVsdGlTZWxlY3RQcm9wcyE7XHJcblx0XHRcdFx0dGhpcy5oYW5kbGVEaXNhYmxlZCgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IGxhYmVsQWN0aW9uID0gdGhpcy5hY3Rpb24uZ2V0RmllbGRMYWJlbEFjdGlvbigpO1xyXG5cdFx0XHRcdGlmICghbGFiZWxBY3Rpb24gfHwgbGFiZWxBY3Rpb24/LmtleSAhPSB0aGlzLmZpZWxkKCk/LnV1aWQpIHtcclxuXHRcdFx0XHRcdHJldHVybjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKGxhYmVsQWN0aW9uLnR5cGUgPT0gJ21vdXNlZW50ZXInKSB7XHJcblx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubXVsdGlzZWxlY3RSZWYubmF0aXZlRWxlbWVudCwgJ25nLWhvdmVyZWQnKTtcclxuXHRcdFx0XHR9IGVsc2UgaWYgKGxhYmVsQWN0aW9uLnR5cGUgPT0gJ21vdXNlbGVhdmUnKSB7XHJcblx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMubXVsdGlzZWxlY3RSZWYubmF0aXZlRWxlbWVudCwgJ25nLWhvdmVyZWQnKTtcclxuXHRcdFx0XHR9IGVsc2UgaWYgKGxhYmVsQWN0aW9uLnR5cGUgPT0gJ2NsaWNrJykge1xyXG5cdFx0XHRcdFx0aWYgKCF0aGlzLm11bHRpc2VsZWN0Lm92ZXJsYXlWaXNpYmxlKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubXVsdGlzZWxlY3Quc2hvdygpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGhhbmRsZURpc2FibGVkKCkge1xyXG5cdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLnByb3BzPy5kaXNhYmxlZCkge1xyXG5cdFx0XHRcdHRoaXMuZmllbGQoKSEuZmllbGRDb250cm9sIS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0fVxyXG59XHJcbiJdfQ==
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlzZWxlY3QudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvZm9ybS9mb3JtLXR5cGUvbXVsdGlzZWxlY3QudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFpS2xELE1BQU0sT0FBTyxvQkFBb0I7SUFNaEMsWUFDUyxNQUFxQixFQUNyQixRQUFtQjtRQURuQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFMNUIsVUFBSyxHQUFHLEtBQUssRUFBYSxDQUFDO1FBQzNCLFVBQUssR0FBcUIsRUFBRSxDQUFDO1FBTTVCLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDWCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUcsQ0FBQyxnQkFBaUIsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQ0wsR0FBRyxFQUFFO1lBQ0osTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3RELElBQUksQ0FBQyxXQUFXLElBQUksV0FBVyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQzVELE9BQU87WUFDUixDQUFDO1lBQ0QsSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLFlBQVksRUFBRSxDQUFDO2dCQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUN6RSxDQUFDO2lCQUFNLElBQUksV0FBVyxDQUFDLElBQUksSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDNUUsQ0FBQztpQkFBTSxJQUFJLFdBQVcsQ0FBQyxJQUFJLElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO29CQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN6QixDQUFDO1lBQ0YsQ0FBQztRQUNGLENBQUMsRUFDRCxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQjtRQUNmLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzFELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDWixPQUFPO1lBQ1IsQ0FBQztZQUNELElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxjQUFjO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNmLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLEtBQUssRUFBRyxDQUFDLFlBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMzRCxDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOytHQXBEVyxvQkFBb0I7bUdBQXBCLG9CQUFvQiw2UEFDckIsV0FBVyxpRkFDWCxXQUFXLDJCQUFVLFVBQVUsNkJBdEZoQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzRDQWlGaUMsaXNMQWxGakMsV0FBVyxtMkNBQUUsbUJBQW1COzs0RkFxRjlCLG9CQUFvQjtrQkF4RmhDLFNBQVM7K0JBQ0Msa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQyxZQUNqQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzRDQWlGaUM7MEdBSUEsV0FBVztzQkFBckQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNvQixjQUFjO3NCQUExRSxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIGVmZmVjdCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtRmllbGQsIEZpZWxkUHJvcHMsIEF0dHJpYnV0ZUV2ZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE11bHRpU2VsZWN0IH0gZnJvbSAncHJpbWVuZy9tdWx0aXNlbGVjdCc7XG5pbXBvcnQgeyBTY3JvbGxlck9wdGlvbnMsIE92ZXJsYXlPcHRpb25zIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgQWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvYWN0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE11bHRpU2VsZWN0UHJvcHMgZXh0ZW5kcyBGaWVsZFByb3BzIHtcblx0ZmlsdGVyUGxhY2VIb2xkZXI/OiBzdHJpbmc7XG5cdG92ZXJsYXlWaXNpYmxlPzogYm9vbGVhbjtcblx0ZGlzcGxheVNlbGVjdGVkTGFiZWw/OiBib29sZWFuO1xuXHRtYXhTZWxlY3RlZExhYmVscz86IG51bWJlcjtcblx0c2VsZWN0aW9uTGltaXQ/OiBudW1iZXI7XG5cdHNlbGVjdGVkSXRlbXNMYWJlbD86IHN0cmluZztcblx0c2hvd1RvZ2dsZUFsbD86IGJvb2xlYW47XG5cdGNoaXBJY29uPzogc3RyaW5nO1xuXHRzaG93SGVhZGVyPzogYm9vbGVhbjtcblx0YXV0b2ZvY3VzRmlsdGVyPzogYm9vbGVhbjtcblx0ZGlzcGxheT86IHN0cmluZztcblx0YXV0b2NvbXBsZXRlPzogc3RyaW5nO1xuXHRzZWxlY3RBbGw/OiBib29sZWFuO1xuXHRzZWxlY3RPbkZvY3VzPzogYm9vbGVhbjtcblx0YXV0b09wdGlvbkZvY3VzPzogYm9vbGVhbjtcblx0c2Nyb2xsSGVpZ2h0Pzogc3RyaW5nO1xuXHRmaWx0ZXI/OiBib29sZWFuO1xuXHRwYW5lbFN0eWxlPzogYW55O1xuXHRwYW5lbFN0eWxlQ2xhc3M/OiBzdHJpbmc7XG5cdHJlYWRvbmx5PzogYm9vbGVhbjtcblx0YXBwZW5kVG8/OiBhbnk7XG5cdHRhYmluZGV4PzogbnVtYmVyO1xuXHRsb2FkaW5nSWNvbj86IHN0cmluZztcblx0ZmlsdGVyTG9jYWxlPzogc3RyaW5nO1xuXHRkYXRhS2V5Pzogc3RyaW5nO1xuXHRmaWx0ZXJCeT86IHN0cmluZztcblx0ZmlsdGVyRmllbGRzPzogYW55W107XG5cdHJlc2V0RmlsdGVyT25IaWRlPzogYm9vbGVhbjtcblx0ZHJvcGRvd25JY29uPzogc3RyaW5nO1xuXHRsb2FkaW5nPzogc3RyaW5nO1xuXHRvcHRpb25MYWJlbD86IHN0cmluZztcblx0b3B0aW9uVmFsdWU/OiBzdHJpbmc7XG5cdG9wdGlvbkRpc2FibGVkPzogc3RyaW5nO1xuXHRvcHRpb25Hcm91cExhYmVsPzogc3RyaW5nO1xuXHRvcHRpb25Hcm91cENoaWxkcmVuPzogc3RyaW5nO1xuXHRncm91cD86IGJvb2xlYW47XG5cdHNob3dDbGVhcj86IGJvb2xlYW47XG5cdGVtcHR5RmlsdGVyTWVzc2FnZT86IGFueTtcblx0ZW1wdHlNZXNzYWdlPzogYW55O1xuXHRsYXp5PzogYm9vbGVhbjtcblx0dmlydHVhbFNjcm9sbD86IGJvb2xlYW47XG5cdHZpcnR1YWxTY3JvbGxJdGVtU2l6ZT86IG51bWJlcjtcblx0dmlydHVhbFNjcm9sbE9wdGlvbnM/OiBTY3JvbGxlck9wdGlvbnM7XG5cdG92ZXJsYXlPcHRpb25zPzogT3ZlcmxheU9wdGlvbnM7XG5cdGFyaWFGaWx0ZXJMYWJlbD86IHN0cmluZztcblx0ZmlsdGVyTWF0Y2hNb2RlPzogYW55O1xuXHRtYXhsZW5ndGg/OiBhbnk7XG5cdHRvb2x0aXA/OiBhbnk7XG5cdHRvb2x0aXBQb3NpdGlvbj86ICdyaWdodCcgfCAnbGVmdCcgfCAndG9wJyB8ICdib3R0b20nO1xuXHR0b29sdGlwUG9zaXRpb25TdHlsZT86IHN0cmluZztcblx0dG9vbHRpcFN0eWxlQ2xhc3M/OiBzdHJpbmc7XG5cdGZvY3VzT25Ib3Zlcj86IGJvb2xlYW47XG5cdGZpbHRlclZhbHVlPzogc3RyaW5nO1xuXHRvcHRpb25zPzogYW55W107XG5cblx0b25DaGFuZ2U/OiBBdHRyaWJ1dGVFdmVudDtcblx0b25GaWx0ZXI/OiBBdHRyaWJ1dGVFdmVudDtcblx0b25Gb2N1cz86IEF0dHJpYnV0ZUV2ZW50O1xuXHRvbkJsdXI/OiBBdHRyaWJ1dGVFdmVudDtcblx0b25DbGljaz86IEF0dHJpYnV0ZUV2ZW50O1xuXHRvbkNsZWFyPzogQXR0cmlidXRlRXZlbnQ7XG5cdG9uUGFuZWxTaG93PzogQXR0cmlidXRlRXZlbnQ7XG5cdG9uUGFuZWxIaWRlPzogQXR0cmlidXRlRXZlbnQ7XG5cdG9uTGF6eUxvYWQ/OiBBdHRyaWJ1dGVFdmVudDtcblx0b25SZW1vdmU/OiBBdHRyaWJ1dGVFdmVudDtcblx0b25TZWxlY3RBbGxDaGFuZ2U/OiBBdHRyaWJ1dGVFdmVudDtcbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnZm9ybS1tdWx0aXNlbGVjdCcsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtNdWx0aVNlbGVjdCwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG5cdHRlbXBsYXRlOiBgPHAtbXVsdGlzZWxlY3Rcblx0XHRbaWRdPVwiZmllbGQoKT8udXVpZFwiXG5cdFx0W2lucHV0SWRdPVwiZmllbGQoKT8udXVpZFwiXG5cdFx0W29wdGlvbkxhYmVsXT1cInByb3BzLm9wdGlvbkxhYmVsXCJcblx0XHRbb3B0aW9uVmFsdWVdPVwicHJvcHMub3B0aW9uVmFsdWVcIlxuXHRcdFthcmlhTGFiZWxdPVwicHJvcHMuYXJpYUxhYmVsXCJcblx0XHRbc3R5bGVdPVwicHJvcHMuc3R5bGVcIlxuXHRcdFtzdHlsZUNsYXNzXT1cInByb3BzLnN0eWxlQ2xhc3NcIlxuXHRcdFtwYW5lbFN0eWxlXT1cInByb3BzLnBhbmVsU3R5bGVcIlxuXHRcdFtwYW5lbFN0eWxlQ2xhc3NdPVwicHJvcHMucGFuZWxTdHlsZUNsYXNzXCJcblx0XHRbZmx1aWRdPVwicHJvcHMuZmx1aWQgPz8gdHJ1ZVwiXG5cdFx0W3JlYWRvbmx5XT1cInByb3BzLnJlYWRvbmx5XCJcblx0XHRbYXBwZW5kVG9dPVwicHJvcHMuYXBwZW5kVG8gPz8gJ2JvZHknXCJcblx0XHRbb3B0aW9uc109XCJwcm9wcy5vcHRpb25zXCJcblx0XHRbZGF0YUtleV09XCJwcm9wcy5kYXRhS2V5XCJcblx0XHRbZ3JvdXBdPVwicHJvcHMuZ3JvdXBcIlxuXHRcdFtmaWx0ZXJdPVwicHJvcHMuZmlsdGVyXCJcblx0XHRbZmlsdGVyUGxhY2VIb2xkZXJdPVwicHJvcHMuZmlsdGVyUGxhY2VIb2xkZXJcIlxuXHRcdFtmaWx0ZXJMb2NhbGVdPVwicHJvcHMuZmlsdGVyTG9jYWxlXCJcblx0XHRbb3ZlcmxheVZpc2libGVdPVwicHJvcHMub3ZlcmxheVZpc2libGVcIlxuXHRcdFt2YXJpYW50XT1cInByb3BzLnZhcmlhbnRcIlxuXHRcdFtuYW1lXT1cInByb3BzLm5hbWVcIlxuXHRcdFt0YWJpbmRleF09XCJwcm9wcy50YWJpbmRleFwiXG5cdFx0W2FyaWFMYWJlbGxlZEJ5XT1cInByb3BzLmFyaWFMYWJlbGxlZEJ5XCJcblx0XHRbZGlzcGxheVNlbGVjdGVkTGFiZWxdPVwicHJvcHMuZGlzcGxheVNlbGVjdGVkTGFiZWwgPz8gdHJ1ZVwiXG5cdFx0W21heFNlbGVjdGVkTGFiZWxzXT1cInByb3BzLm1heFNlbGVjdGVkTGFiZWxzXCJcblx0XHRbc2VsZWN0aW9uTGltaXRdPVwicHJvcHMuc2VsZWN0aW9uTGltaXRcIlxuXHRcdFtzZWxlY3RlZEl0ZW1zTGFiZWxdPVwicHJvcHMuc2VsZWN0ZWRJdGVtc0xhYmVsXCJcblx0XHRbc2hvd1RvZ2dsZUFsbF09XCJwcm9wcy5zaG93VG9nZ2xlQWxsID8/IHRydWVcIlxuXHRcdFtlbXB0eUZpbHRlck1lc3NhZ2VdPVwicHJvcHMuZW1wdHlGaWx0ZXJNZXNzYWdlXCJcblx0XHRbZW1wdHlNZXNzYWdlXT1cInByb3BzLmVtcHR5TWVzc2FnZVwiXG5cdFx0W3Jlc2V0RmlsdGVyT25IaWRlXT1cInByb3BzLnJlc2V0RmlsdGVyT25IaWRlXCJcblx0XHRbZHJvcGRvd25JY29uXT1cInByb3BzLmRyb3Bkb3duSWNvblwiXG5cdFx0W2NoaXBJY29uXT1cInByb3BzLmNoaXBJY29uXCJcblx0XHRbb3B0aW9uRGlzYWJsZWRdPVwicHJvcHMub3B0aW9uRGlzYWJsZWRcIlxuXHRcdFtvcHRpb25Hcm91cExhYmVsXT1cInByb3BzLm9wdGlvbkdyb3VwTGFiZWxcIlxuXHRcdFtvcHRpb25Hcm91cENoaWxkcmVuXT1cInByb3BzLm9wdGlvbkdyb3VwQ2hpbGRyZW4gPz8gJ2l0ZW1zJ1wiXG5cdFx0W3Nob3dIZWFkZXJdPVwicHJvcHMuc2hvd0hlYWRlciA/PyB0cnVlXCJcblx0XHRbZmlsdGVyQnldPVwicHJvcHMuZmlsdGVyQnlcIlxuXHRcdFtzY3JvbGxIZWlnaHRdPVwicHJvcHMuc2Nyb2xsSGVpZ2h0ID8/ICcyMDBweCdcIlxuXHRcdFtsYXp5XT1cInByb3BzLmxhenlcIlxuXHRcdFt2aXJ0dWFsU2Nyb2xsXT1cInByb3BzLnZpcnR1YWxTY3JvbGxcIlxuXHRcdFtsb2FkaW5nXT1cInByb3BzLmxvYWRpbmdcIlxuXHRcdFt2aXJ0dWFsU2Nyb2xsSXRlbVNpemVdPVwicHJvcHMudmlydHVhbFNjcm9sbEl0ZW1TaXplXCJcblx0XHRbbG9hZGluZ0ljb25dPVwicHJvcHMubG9hZGluZ0ljb25cIlxuXHRcdFt2aXJ0dWFsU2Nyb2xsT3B0aW9uc109XCJwcm9wcy52aXJ0dWFsU2Nyb2xsT3B0aW9uc1wiXG5cdFx0W292ZXJsYXlPcHRpb25zXT1cInByb3BzLm92ZXJsYXlPcHRpb25zXCJcblx0XHRbYXJpYUZpbHRlckxhYmVsXT1cInByb3BzLmFyaWFGaWx0ZXJMYWJlbFwiXG5cdFx0W2ZpbHRlck1hdGNoTW9kZV09XCJwcm9wcy5maWx0ZXJNYXRjaE1vZGVcIlxuXHRcdFt0b29sdGlwXT1cInByb3BzLnRvb2x0aXBcIlxuXHRcdFt0b29sdGlwUG9zaXRpb25dPVwicHJvcHMudG9vbHRpcFBvc2l0aW9uID8/ICdyaWdodCdcIlxuXHRcdFt0b29sdGlwUG9zaXRpb25TdHlsZV09XCJwcm9wcy50b29sdGlwUG9zaXRpb25TdHlsZSA/PyAnYWJzb2x1dGUnXCJcblx0XHRbdG9vbHRpcFN0eWxlQ2xhc3NdPVwicHJvcHMudG9vbHRpcFN0eWxlQ2xhc3NcIlxuXHRcdFthdXRvZm9jdXNGaWx0ZXJdPVwicHJvcHMuYXV0b2ZvY3VzRmlsdGVyXCJcblx0XHRbZGlzcGxheV09XCJwcm9wcy5kaXNwbGF5ID8/ICdjb21tYSdcIlxuXHRcdFthdXRvY29tcGxldGVdPVwicHJvcHMuYXV0b2NvbXBsZXRlID8/ICdvZmYnXCJcblx0XHRbc2l6ZV09XCJwcm9wcy5zaXplXCJcblx0XHRbc2hvd0NsZWFyXT1cInByb3BzLnNob3dDbGVhclwiXG5cdFx0W2F1dG9mb2N1c109XCJwcm9wcy5hdXRvZm9jdXNcIlxuXHRcdFtwbGFjZWhvbGRlcl09XCJwcm9wcy5wbGFjZWhvbGRlclwiXG5cdFx0W2ZpbHRlclZhbHVlXT1cInByb3BzLmZpbHRlclZhbHVlXCJcblx0XHRbc2VsZWN0QWxsXT1cInByb3BzLnNlbGVjdEFsbCA/PyBudWxsXCJcblx0XHRbZm9jdXNPbkhvdmVyXT1cInByb3BzLmZvY3VzT25Ib3ZlciA/PyB0cnVlXCJcblx0XHRbZmlsdGVyRmllbGRzXT1cInByb3BzLmZpbHRlckZpZWxkc1wiXG5cdFx0W3NlbGVjdE9uRm9jdXNdPVwicHJvcHMuc2VsZWN0T25Gb2N1c1wiXG5cdFx0W2F1dG9PcHRpb25Gb2N1c109XCJwcm9wcy5hdXRvT3B0aW9uRm9jdXNcIlxuXHRcdFtjbGFzc109XCJwcm9wcy5jbGFzc1wiXG5cdFx0W3BsYWNlaG9sZGVyXT1cInByb3BzLnBsYWNlaG9sZGVyXCJcblx0XHRbbWF4bGVuZ3RoXT1cInByb3BzLm1heGxlbmd0aFwiXG5cdFx0KG9uQ2hhbmdlKT1cInByb3BzLm9uQ2hhbmdlPy4oZmllbGQoKSEsICRldmVudClcIlxuXHRcdChvbkZpbHRlcik9XCJwcm9wcy5vbkZpbHRlcj8uKGZpZWxkKCkhLCAkZXZlbnQpXCJcblx0XHQob25Gb2N1cyk9XCJwcm9wcy5vbkZvY3VzPy4oZmllbGQoKSEsICRldmVudClcIlxuXHRcdChvbkJsdXIpPVwicHJvcHMub25CbHVyPy4oZmllbGQoKSEsICRldmVudClcIlxuXHRcdChvbkNsaWNrKT1cInByb3BzLm9uQ2xpY2s/LihmaWVsZCgpISwgJGV2ZW50KVwiXG5cdFx0KG9uQ2xlYXIpPVwicHJvcHMub25DbGVhcj8uKGZpZWxkKCkhLCAkZXZlbnQpXCJcblx0XHQob25QYW5lbFNob3cpPVwicHJvcHMub25QYW5lbFNob3c/LihmaWVsZCgpISwgJGV2ZW50KVwiXG5cdFx0KG9uUGFuZWxIaWRlKT1cInByb3BzLm9uUGFuZWxIaWRlPy4oZmllbGQoKSEsICRldmVudClcIlxuXHRcdChvbkxhenlMb2FkKT1cInByb3BzLm9uTGF6eUxvYWQ/LihmaWVsZCgpISwgJGV2ZW50KVwiXG5cdFx0KG9uUmVtb3ZlKT1cInByb3BzLm9uUmVtb3ZlPy4oZmllbGQoKSEsICRldmVudClcIlxuXHRcdChvblNlbGVjdEFsbENoYW5nZSk9XCJwcm9wcy5vblNlbGVjdEFsbENoYW5nZT8uKGZpZWxkKCkhLCAkZXZlbnQpXCJcblx0XHRbY2xhc3NdPVwicHJvcHMuY2xhc3NcIlxuXHRcdFtmb3JtQ29udHJvbF09XCJmaWVsZCgpIS5maWVsZENvbnRyb2whXCIgLz5gLFxuXHRzdHlsZVVybDogJy4uLy4uL3N0eWxlcy9zdHlsZXMuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0Q29tcG9uZW50IHtcblx0QFZpZXdDaGlsZChNdWx0aVNlbGVjdCwgeyBzdGF0aWM6IGZhbHNlIH0pIG11bHRpc2VsZWN0ITogTXVsdGlTZWxlY3Q7XG5cdEBWaWV3Q2hpbGQoTXVsdGlTZWxlY3QsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiBmYWxzZSB9KSBtdWx0aXNlbGVjdFJlZiE6IEVsZW1lbnRSZWY7XG5cdGZpZWxkID0gaW5wdXQ8Rm9ybUZpZWxkPigpO1xuXHRwcm9wczogTXVsdGlTZWxlY3RQcm9wcyA9IHt9O1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgYWN0aW9uOiBBY3Rpb25TZXJ2aWNlLFxuXHRcdHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcblx0KSB7XG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGlmICh0aGlzLmZpZWxkKCkpIHtcblx0XHRcdFx0dGhpcy5wcm9wcyA9IHRoaXMuZmllbGQoKSEubXVsdGlTZWxlY3RQcm9wcyE7XG5cdFx0XHRcdHRoaXMuaGFuZGxlSG9va0NoYW5nZSgpO1xuXHRcdFx0XHR0aGlzLmhhbmRsZURpc2FibGVkKCk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBsYWJlbEFjdGlvbiA9IHRoaXMuYWN0aW9uLmdldEZpZWxkTGFiZWxBY3Rpb24oKTtcblx0XHRcdFx0aWYgKCFsYWJlbEFjdGlvbiB8fCBsYWJlbEFjdGlvbj8ua2V5ICE9IHRoaXMuZmllbGQoKT8udXVpZCkge1xuXHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAobGFiZWxBY3Rpb24udHlwZSA9PSAnbW91c2VlbnRlcicpIHtcblx0XHRcdFx0XHR0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubXVsdGlzZWxlY3RSZWYubmF0aXZlRWxlbWVudCwgJ25nLWhvdmVyZWQnKTtcblx0XHRcdFx0fSBlbHNlIGlmIChsYWJlbEFjdGlvbi50eXBlID09ICdtb3VzZWxlYXZlJykge1xuXHRcdFx0XHRcdHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5tdWx0aXNlbGVjdFJlZi5uYXRpdmVFbGVtZW50LCAnbmctaG92ZXJlZCcpO1xuXHRcdFx0XHR9IGVsc2UgaWYgKGxhYmVsQWN0aW9uLnR5cGUgPT0gJ2NsaWNrJykge1xuXHRcdFx0XHRcdGlmICghdGhpcy5tdWx0aXNlbGVjdC5vdmVybGF5VmlzaWJsZSkge1xuXHRcdFx0XHRcdFx0dGhpcy5tdWx0aXNlbGVjdC5zaG93KCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdH1cblxuXHRoYW5kbGVIb29rQ2hhbmdlKCkge1xuXHRcdHRoaXMuZmllbGQoKT8uZmllbGRDb250cm9sPy5ob29rQ2hhbmdlLnN1YnNjcmliZSgodmFsdWUpID0+IHtcblx0XHRcdGlmICghdmFsdWUpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXHRcdFx0dGhpcy5wcm9wcy5vbkhvb2tDaGFuZ2U/Lih0aGlzLmZpZWxkKCkhLCB7IHZhbHVlIH0pO1xuXHRcdH0pO1xuXHR9XG5cblx0aGFuZGxlRGlzYWJsZWQoKSB7XG5cdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRpZiAodGhpcy5wcm9wcz8uZGlzYWJsZWQpIHtcblx0XHRcdFx0dGhpcy5maWVsZCgpIS5maWVsZENvbnRyb2whLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG59XG4iXX0=