valtech-components 4.0.1023 → 4.0.1025
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/select-input/select-input.component.mjs +20 -5
- package/esm2022/lib/components/molecules/select-input-v2/select-input-v2.component.mjs +265 -0
- package/esm2022/lib/components/organisms/change-email-modal/change-email-modal.component.mjs +6 -8
- package/esm2022/lib/components/organisms/change-password-modal/change-password-modal.component.mjs +5 -4
- package/esm2022/lib/components/organisms/delete-account-modal/delete-account-modal.component.mjs +9 -28
- package/esm2022/lib/components/organisms/form/form.component.mjs +14 -4
- package/esm2022/lib/components/organisms/login-attempt-modal/login-attempt-modal.component.mjs +42 -59
- package/esm2022/lib/components/organisms/mfa-modal/mfa-modal.component.mjs +6 -8
- package/esm2022/lib/components/organisms/profile-modal/profile-modal.component.mjs +10 -33
- package/esm2022/lib/components/organisms/session-list-modal/session-list-modal.component.mjs +9 -34
- package/esm2022/lib/components/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/valtech-components.mjs +354 -166
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/select-input/select-input.component.d.ts +1 -0
- package/lib/components/molecules/select-input-v2/select-input-v2.component.d.ts +33 -0
- package/lib/components/organisms/login-attempt-modal/login-attempt-modal.component.d.ts +6 -3
- package/lib/components/organisms/profile-modal/profile-modal.component.d.ts +1 -1
- package/lib/components/types.d.ts +8 -1
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -95,6 +95,9 @@ export class SearchSelectorComponent {
|
|
|
95
95
|
this.cancelText = this.resolvedProps.cancelText || this.resolveI18n('cancel', 'Cancelar');
|
|
96
96
|
this.okText = this.resolvedProps.okText || this.resolveI18n('ok', 'OK');
|
|
97
97
|
}
|
|
98
|
+
iconMask(src) {
|
|
99
|
+
return `url("${src}")`;
|
|
100
|
+
}
|
|
98
101
|
/**
|
|
99
102
|
* Busca un key en `_global` primero, luego en `Common`, finalmente cae al
|
|
100
103
|
* default hardcoded. Útil para textos cross-cutting (cancel/ok/close/etc.)
|
|
@@ -123,7 +126,13 @@ export class SearchSelectorComponent {
|
|
|
123
126
|
@for (o of resolvedProps.options; track o.id) {
|
|
124
127
|
<ion-select-option [value]="o.id">
|
|
125
128
|
<span class="select-option-content">
|
|
126
|
-
@if (o.icon?.
|
|
129
|
+
@if (o.icon?.src) {
|
|
130
|
+
<span
|
|
131
|
+
class="select-option-icon select-option-icon-mask"
|
|
132
|
+
[style.--val-select-option-icon-src]="iconMask(o.icon.src)"
|
|
133
|
+
aria-hidden="true"
|
|
134
|
+
></span>
|
|
135
|
+
} @else if (o.icon?.name) {
|
|
127
136
|
<ion-icon
|
|
128
137
|
class="select-option-icon"
|
|
129
138
|
[name]="o.icon?.name"
|
|
@@ -136,7 +145,7 @@ export class SearchSelectorComponent {
|
|
|
136
145
|
</ion-select-option>
|
|
137
146
|
}
|
|
138
147
|
</ion-select>
|
|
139
|
-
`, 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-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}ion-select{--padding-top: 0;--padding-bottom: 0;--padding-start: 0;--padding-end: 0;min-height:auto;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;margin-top:.375rem;padding-top:.5rem!important;padding-bottom:.5rem!important;padding-inline-start:1rem!important;padding-inline-end:.625rem!important}.select-option-content{display:inline-flex;align-items:center;gap:.625rem}.select-option-icon{flex:0 0 auto;font-size:1.125rem}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { 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"] }] }); }
|
|
148
|
+
`, 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-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}ion-select{--padding-top: 0;--padding-bottom: 0;--padding-start: 0;--padding-end: 0;min-height:auto;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;margin-top:.375rem;padding-top:.5rem!important;padding-bottom:.5rem!important;padding-inline-start:1rem!important;padding-inline-end:.625rem!important}.select-option-content{display:inline-flex;align-items:center;gap:.625rem}.select-option-icon{flex:0 0 auto;font-size:1.125rem}.select-option-icon-mask{width:1.125rem;height:1.125rem;background:currentColor;mask:var(--val-select-option-icon-src) center/contain no-repeat;-webkit-mask:var(--val-select-option-icon-src) center/contain no-repeat}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { 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"] }] }); }
|
|
140
149
|
}
|
|
141
150
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SearchSelectorComponent, decorators: [{
|
|
142
151
|
type: Component,
|
|
@@ -153,7 +162,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
153
162
|
@for (o of resolvedProps.options; track o.id) {
|
|
154
163
|
<ion-select-option [value]="o.id">
|
|
155
164
|
<span class="select-option-content">
|
|
156
|
-
@if (o.icon?.
|
|
165
|
+
@if (o.icon?.src) {
|
|
166
|
+
<span
|
|
167
|
+
class="select-option-icon select-option-icon-mask"
|
|
168
|
+
[style.--val-select-option-icon-src]="iconMask(o.icon.src)"
|
|
169
|
+
aria-hidden="true"
|
|
170
|
+
></span>
|
|
171
|
+
} @else if (o.icon?.name) {
|
|
157
172
|
<ion-icon
|
|
158
173
|
class="select-option-icon"
|
|
159
174
|
[name]="o.icon?.name"
|
|
@@ -166,10 +181,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
166
181
|
</ion-select-option>
|
|
167
182
|
}
|
|
168
183
|
</ion-select>
|
|
169
|
-
`, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}ion-select{--padding-top: 0;--padding-bottom: 0;--padding-start: 0;--padding-end: 0;min-height:auto;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;margin-top:.375rem;padding-top:.5rem!important;padding-bottom:.5rem!important;padding-inline-start:1rem!important;padding-inline-end:.625rem!important}.select-option-content{display:inline-flex;align-items:center;gap:.625rem}.select-option-icon{flex:0 0 auto;font-size:1.125rem}\n"] }]
|
|
184
|
+
`, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}ion-select{--padding-top: 0;--padding-bottom: 0;--padding-start: 0;--padding-end: 0;min-height:auto;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;margin-top:.375rem;padding-top:.5rem!important;padding-bottom:.5rem!important;padding-inline-start:1rem!important;padding-inline-end:.625rem!important}.select-option-content{display:inline-flex;align-items:center;gap:.625rem}.select-option-icon{flex:0 0 auto;font-size:1.125rem}.select-option-icon-mask{width:1.125rem;height:1.125rem;background:currentColor;mask:var(--val-select-option-icon-src) center/contain no-repeat;-webkit-mask:var(--val-select-option-icon-src) center/contain no-repeat}\n"] }]
|
|
170
185
|
}], propDecorators: { preset: [{
|
|
171
186
|
type: Input
|
|
172
187
|
}], props: [{
|
|
173
188
|
type: Input
|
|
174
189
|
}] } });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LWlucHV0L3NlbGVjdC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQWlCLE1BQU0sYUFBYSxDQUFDOzs7QUFtQzdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBMURwQztRQTJEVSxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLFlBQU8sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFXeEM7Ozs7Ozs7Ozs7V0FVRztRQUNNLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBRTVDOztXQUVHO1FBQ0gsa0JBQWEsR0FBa0IsRUFBbUIsQ0FBQztLQXFFcEQ7SUE5REMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxR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O2dCQWFHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBhcHBseURlZmF1bHRWYWx1ZVRvQ29udHJvbCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscy9mb3JtLWRlZmF1bHRzJztcbmltcG9ydCB7IElvbkljb24sIElvblNlbGVjdCwgSW9uU2VsZWN0T3B0aW9uIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgUHJlc2V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3ByZXNldHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RhdGVzLCBJbnB1dE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtc2VsZWN0LWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1JlYWN0aXZlRm9ybXNNb2R1bGUsIElvbkljb24sIElvblNlbGVjdCwgSW9uU2VsZWN0T3B0aW9uXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8aW9uLXNlbGVjdFxuICAgICAgW2Zvcm1Db250cm9sXT1cInJlc29sdmVkUHJvcHMuY29udHJvbFwiXG4gICAgICBbbGFiZWxdPVwicmVzb2x2ZWRQcm9wcy5sYWJlbFwiXG4gICAgICBbaW50ZXJmYWNlT3B0aW9uc109XCJjdXN0b21Qb3BvdmVyT3B0aW9uc1wiXG4gICAgICBbaW50ZXJmYWNlXT1cInJlc29sdmVkUHJvcHMuc2VsZWN0SW50ZXJmYWNlIHx8ICdwb3BvdmVyJ1wiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicmVzb2x2ZWRQcm9wcy5wbGFjZWhvbGRlclwiXG4gICAgICBbY2FuY2VsVGV4dF09XCJjYW5jZWxUZXh0XCJcbiAgICAgIFtva1RleHRdPVwib2tUZXh0XCJcbiAgICA+XG4gICAgICBAZm9yIChvIG9mIHJlc29sdmVkUHJvcHMub3B0aW9uczsgdHJhY2sgby5pZCkge1xuICAgICAgICA8aW9uLXNlbGVjdC1vcHRpb24gW3ZhbHVlXT1cIm8uaWRcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNlbGVjdC1vcHRpb24tY29udGVudFwiPlxuICAgICAgICAgICAgQGlmIChvLmljb24/Lm5hbWUpIHtcbiAgICAgICAgICAgICAgPGlvbi1pY29uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3Qtb3B0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgIFtuYW1lXT1cIm8uaWNvbj8ubmFtZVwiXG4gICAgICAgICAgICAgICAgW2NvbG9yXT1cIm8uaWNvbj8uY29sb3JcIlxuICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8c3Bhbj57eyBvLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2lvbi1zZWxlY3Qtb3B0aW9uPlxuICAgICAgfVxuICAgIDwvaW9uLXNlbGVjdD5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWN0LWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuLyoqXG4gKiB2YWwtc2VsZWN0LWlucHV0XG4gKlxuICogQSBzZWxlY3QvZHJvcGRvd24gaW5wdXQgaW50ZWdyYXRlZCB3aXRoIEFuZ3VsYXIgZm9ybXMsIHVzaW5nIElvbmljJ3Mgc2VsZWN0IGNvbXBvbmVudC5cbiAqIFN1cHBvcnRzIHByZXNldHMgZm9yIHJldXNhYmxlIGNvbmZpZ3VyYXRpb25zLlxuICpcbiAqIEBleGFtcGxlIFdpdGggcHJlc2V0IChyZWNvbW1lbmRlZCk6XG4gKiA8dmFsLXNlbGVjdC1pbnB1dCBwcmVzZXQ9XCJmb3JtLWZpZWxkXCIgW3Byb3BzXT1cIntcbiAqICAgY29udHJvbDogbXlDb250cm9sLFxuICogICBsYWJlbDogJ1NlbGVjY2lvbmFyJyxcbiAqICAgb3B0aW9uczogW3sgaWQ6ICcxJywgbmFtZTogJ09wY2nDs24gMScgfV1cbiAqIH1cIj48L3ZhbC1zZWxlY3QtaW5wdXQ+XG4gKlxuICogQGV4YW1wbGUgU3RhdGljIChiYWNrd2FyZHMgY29tcGF0aWJsZSk6XG4gKiA8dmFsLXNlbGVjdC1pbnB1dCBbcHJvcHNdPVwie1xuICogICBjb250cm9sOiBteUNvbnRyb2wsXG4gKiAgIGxhYmVsOiAnU2VsZWNjaW9uYXInLFxuICogICBvcHRpb25zOiBbeyBpZDogJzEnLCBuYW1lOiAnT3BjacOzbiAxJyB9XSxcbiAqICAgY2FuY2VsVGV4dDogJ0NhbmNlbGFyJyxcbiAqICAgb2tUZXh0OiAnQWNlcHRhcidcbiAqIH1cIj48L3ZhbC1zZWxlY3QtaW5wdXQ+XG4gKlxuICogQGlucHV0IHByZXNldDogc3RyaW5nIC0gTmFtZSBvZiBwcmVzZXQgdG8gYXBwbHkgKGUuZy4sICdmb3JtLWZpZWxkJylcbiAqIEBpbnB1dCBwcm9wczogSW5wdXRNZXRhZGF0YSAtIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBzZWxlY3QgaW5wdXQgKG92ZXJyaWRlcyBwcmVzZXQgdmFsdWVzKVxuICovXG5leHBvcnQgY2xhc3MgU2VhcmNoU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcHJlc2V0cyA9IGluamVjdChQcmVzZXRTZXJ2aWNlKTtcblxuICAvKipcbiAgICogUHJlc2V0IG5hbWUgdG8gYXBwbHkuIFByZXNldHMgZGVmaW5lIHJldXNhYmxlIGlucHV0IGNvbmZpZ3VyYXRpb25zXG4gICAqIHRoYXQgY2FuIGJlIHJlZ2lzdGVyZWQgYXQgYXBwIGxldmVsIHZpYSBwcm92aWRlVmFsdGVjaFByZXNldHMoKS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogPHZhbC1zZWxlY3QtaW5wdXQgcHJlc2V0PVwiZm9ybS1maWVsZFwiIFtwcm9wc109XCJ7IGNvbnRyb2w6IGN0cmwsIG9wdGlvbnM6IG9wdHMgfVwiPjwvdmFsLXNlbGVjdC1pbnB1dD5cbiAgICovXG4gIEBJbnB1dCgpIHByZXNldD86IHN0cmluZztcblxuICAvKipcbiAgICogSW5wdXQgY29uZmlndXJhdGlvbiBvYmplY3QuIFZhbHVlcyBoZXJlIG92ZXJyaWRlIHByZXNldCB2YWx1ZXMuXG4gICAqIEB0eXBlIHtJbnB1dE1ldGFkYXRhfVxuICAgKiBAcHJvcGVydHkgY29udHJvbCAtIFRoZSBBbmd1bGFyIEZvcm1Db250cm9sIGZvciB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcHJvcGVydHkgbGFiZWwgLSBUaGUgbGFiZWwgZm9yIHRoZSBzZWxlY3QuXG4gICAqIEBwcm9wZXJ0eSBvcHRpb25zIC0gVGhlIGF2YWlsYWJsZSBvcHRpb25zIGZvciB0aGUgc2VsZWN0LlxuICAgKiBAcHJvcGVydHkgcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdGV4dC5cbiAgICogQHByb3BlcnR5IG1vZGFsSGVhZGVyIC0gQ3VzdG9tIGhlYWRlciB0ZXh0IGZvciB0aGUgbW9kYWwgKG9wdGlvbmFsLCB1c2VzIGxhYmVsIGlmIG5vdCBwcm92aWRlZCkuXG4gICAqIEBwcm9wZXJ0eSBjYW5jZWxUZXh0IC0gQ3VzdG9tIGNhbmNlbCBidXR0b24gdGV4dCAoZGVmYXVsdDogJ0NhbmNlbGFyJykuXG4gICAqIEBwcm9wZXJ0eSBva1RleHQgLSBDdXN0b20gT0sgYnV0dG9uIHRleHQgKGRlZmF1bHQ6ICdBY2VwdGFyJykuXG4gICAqL1xuICBASW5wdXQoKSBwcm9wczogUGFydGlhbDxJbnB1dE1ldGFkYXRhPiA9IHt9O1xuXG4gIC8qKlxuICAgKiBSZXNvbHZlZCBwcm9wcyBhZnRlciBtZXJnaW5nIHByZXNldCArIGV4cGxpY2l0IHByb3BzLlxuICAgKi9cbiAgcmVzb2x2ZWRQcm9wczogSW5wdXRNZXRhZGF0YSA9IHt9IGFzIElucHV0TWV0YWRhdGE7XG5cbiAgY3VzdG9tTW9kYWxPcHRpb25zOiB7IGhlYWRlcjogc3RyaW5nOyBicmVha3BvaW50czogbnVtYmVyW107IGluaXRpYWxCcmVha3BvaW50OiBudW1iZXIgfTtcbiAgY3VzdG9tUG9wb3Zlck9wdGlvbnM6IHsgY3NzQ2xhc3M6IHN0cmluZyB9O1xuICBjYW5jZWxUZXh0OiBzdHJpbmc7XG4gIG9rVGV4dDogc3RyaW5nO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmVzb2x2ZVByb3BzKCk7XG4gICAgdGhpcy5zZXR1cENvbXBvbmVudCgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydwcmVzZXQnXSB8fCBjaGFuZ2VzWydwcm9wcyddKSB7XG4gICAgICB0aGlzLnJlc29sdmVQcm9wcygpO1xuICAgICAgdGhpcy5zZXR1cENvbXBvbmVudCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNZXJnZSBwcmVzZXQgY29uZmlndXJhdGlvbiB3aXRoIGV4cGxpY2l0IHByb3BzLlxuICAgKiBFeHBsaWNpdCBwcm9wcyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwcmVzZXQgdmFsdWVzLlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlUHJvcHMoKTogdm9pZCB7XG4gICAgY29uc3QgcHJlc2V0UHJvcHMgPSB0aGlzLnByZXNldCA/ICh0aGlzLnByZXNldHMuZ2V0KCdzZWxlY3RJbnB1dCcsIHRoaXMucHJlc2V0KSBhcyBQYXJ0aWFsPElucHV0TWV0YWRhdGE+KSA6IHt9O1xuXG4gICAgdGhpcy5yZXNvbHZlZFByb3BzID0ge1xuICAgICAgbGFiZWw6ICcnLFxuICAgICAgc3RhdGU6IENvbXBvbmVudFN0YXRlcy5FTkFCTEVELFxuICAgICAgLi4ucHJlc2V0UHJvcHMsXG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgIH0gYXMgSW5wdXRNZXRhZGF0YTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBDb21wb25lbnQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVzb2x2ZWRQcm9wcz8ud2l0aERlZmF1bHQgfHwgdGhpcy5yZXNvbHZlZFByb3BzPy52YWx1ZSkge1xuICAgICAgYXBwbHlEZWZhdWx0VmFsdWVUb0NvbnRyb2wodGhpcy5yZXNvbHZlZFByb3BzKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgbW9kYWwgaGVhZGVyIGZyb20gcHJvcHMgb3IgdXNlIGxhYmVsIGFzIGZhbGxiYWNrLCB0aGVuIGkxOG4gZGVmYXVsdFxuICAgIGNvbnN0IGhlYWRlclRleHQgPSB0aGlzLnJlc29sdmVkUHJvcHMubW9kYWxIZWFkZXIgfHwgdGhpcy5yZXNvbHZlZFByb3BzLmxhYmVsIHx8IHRoaXMuaTE4bi50KCdzZWxlY3RPcHRpb24nKTtcblxuICAgIHRoaXMuY3VzdG9tTW9kYWxPcHRpb25zID0ge1xuICAgICAgaGVhZGVyOiBoZWFkZXJUZXh0LFxuICAgICAgYnJlYWtwb2ludHM6IFswLCAwLjZdLFxuICAgICAgaW5pdGlhbEJyZWFrcG9pbnQ6IDAuNixcbiAgICB9O1xuICAgIHRoaXMuY3VzdG9tUG9wb3Zlck9wdGlvbnMgPSB7IGNzc0NsYXNzOiAndmFsLXNlbGVjdC1wb3BvdmVyJyB9O1xuXG4gICAgLy8gU2V0IGJ1dHRvbiB0ZXh0cyBmcm9tIHByb3BzIG9yIHVzZSBpMThuIGRlZmF1bHRzLlxuICAgIC8vIEZhbGxiYWNrIGNoYWluOiBuYW1lc3BhY2UtbGVzcyBpMThuIOKGkiAnQ29tbW9uJyBuYW1lc3BhY2Ug4oaSIGhhcmRjb2RlZC5cbiAgICAvLyBFbCBuYW1lc3BhY2UtbGVzcyBidXNjYSBlbiBfZ2xvYmFsOyBzaSBubyBleGlzdGUgKGNhc28gdHlwaWNhbCBhcHApLFxuICAgIC8vIHByb2JhbW9zIGVuICdDb21tb24nIHF1ZSBsYSBtYXlvcsOtYSBkZSBhcHBzIHRpZW5lbiBwb2JsYWRvLlxuICAgIHRoaXMuY2FuY2VsVGV4dCA9IHRoaXMucmVzb2x2ZWRQcm9wcy5jYW5jZWxUZXh0IHx8IHRoaXMucmVzb2x2ZUkxOG4oJ2NhbmNlbCcsICdDYW5jZWxhcicpO1xuICAgIHRoaXMub2tUZXh0ID0gdGhpcy5yZXNvbHZlZFByb3BzLm9rVGV4dCB8fCB0aGlzLnJlc29sdmVJMThuKCdvaycsICdPSycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1c2NhIHVuIGtleSBlbiBgX2dsb2JhbGAgcHJpbWVybywgbHVlZ28gZW4gYENvbW1vbmAsIGZpbmFsbWVudGUgY2FlIGFsXG4gICAqIGRlZmF1bHQgaGFyZGNvZGVkLiDDmnRpbCBwYXJhIHRleHRvcyBjcm9zcy1jdXR0aW5nIChjYW5jZWwvb2svY2xvc2UvZXRjLilcbiAgICogc2luIG9ibGlnYXIgYSBjYWRhIGFwcCBhIGR1cGxpY2FybG9zIGVuIGNhZGEgbmFtZXNwYWNlLlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlSTE4bihrZXk6IHN0cmluZywgZmFsbGJhY2s6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgdHJ5R2xvYmFsID0gdGhpcy5pMThuLnQoa2V5KTtcbiAgICBpZiAodHJ5R2xvYmFsICYmICF0cnlHbG9iYWwuc3RhcnRzV2l0aCgnWycpKSByZXR1cm4gdHJ5R2xvYmFsO1xuICAgIGNvbnN0IHRyeUNvbW1vbiA9IHRoaXMuaTE4bi50KGtleSwgJ0NvbW1vbicpO1xuICAgIGlmICh0cnlDb21tb24gJiYgIXRyeUNvbW1vbi5zdGFydHNXaXRoKCdbJykpIHJldHVybiB0cnlDb21tb247XG4gICAgcmV0dXJuIGZhbGxiYWNrO1xuICB9XG59XG4iXX0=
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LWlucHV0L3NlbGVjdC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQWlCLE1BQU0sYUFBYSxDQUFDOzs7QUF5QzdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBaEVwQztRQWlFVSxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLFlBQU8sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFXeEM7Ozs7Ozs7Ozs7V0FVRztRQUNNLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBRTVDOztXQUVHO1FBQ0gsa0JBQWEsR0FBa0IsRUFBbUIsQ0FBQztLQXlFcEQ7SUFsRUMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxR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QUFlLENBQUMsWUFDekQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0NUOzhCQXVDUSxNQUFNO3NCQUFkLEtBQUs7Z0JBYUcsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGFwcGx5RGVmYXVsdFZhbHVlVG9Db250cm9sIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2Zvcm0tZGVmYXVsdHMnO1xuaW1wb3J0IHsgSW9uSWNvbiwgSW9uU2VsZWN0LCBJb25TZWxlY3RPcHRpb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJlc2V0cyc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZXMsIElucHV0TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1zZWxlY3QtaW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSwgSW9uSWNvbiwgSW9uU2VsZWN0LCBJb25TZWxlY3RPcHRpb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpb24tc2VsZWN0XG4gICAgICBbZm9ybUNvbnRyb2xdPVwicmVzb2x2ZWRQcm9wcy5jb250cm9sXCJcbiAgICAgIFtsYWJlbF09XCJyZXNvbHZlZFByb3BzLmxhYmVsXCJcbiAgICAgIFtpbnRlcmZhY2VPcHRpb25zXT1cImN1c3RvbVBvcG92ZXJPcHRpb25zXCJcbiAgICAgIFtpbnRlcmZhY2VdPVwicmVzb2x2ZWRQcm9wcy5zZWxlY3RJbnRlcmZhY2UgfHwgJ3BvcG92ZXInXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJyZXNvbHZlZFByb3BzLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtjYW5jZWxUZXh0XT1cImNhbmNlbFRleHRcIlxuICAgICAgW29rVGV4dF09XCJva1RleHRcIlxuICAgID5cbiAgICAgIEBmb3IgKG8gb2YgcmVzb2x2ZWRQcm9wcy5vcHRpb25zOyB0cmFjayBvLmlkKSB7XG4gICAgICAgIDxpb24tc2VsZWN0LW9wdGlvbiBbdmFsdWVdPVwiby5pZFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LW9wdGlvbi1jb250ZW50XCI+XG4gICAgICAgICAgICBAaWYgKG8uaWNvbj8uc3JjKSB7XG4gICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3Qtb3B0aW9uLWljb24gc2VsZWN0LW9wdGlvbi1pY29uLW1hc2tcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS4tLXZhbC1zZWxlY3Qtb3B0aW9uLWljb24tc3JjXT1cImljb25NYXNrKG8uaWNvbi5zcmMpXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoby5pY29uPy5uYW1lKSB7XG4gICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0LW9wdGlvbi1pY29uXCJcbiAgICAgICAgICAgICAgICBbbmFtZV09XCJvLmljb24/Lm5hbWVcIlxuICAgICAgICAgICAgICAgIFtjb2xvcl09XCJvLmljb24/LmNvbG9yXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPHNwYW4+e3sgby5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9pb24tc2VsZWN0LW9wdGlvbj5cbiAgICAgIH1cbiAgICA8L2lvbi1zZWxlY3Q+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3NlbGVjdC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbi8qKlxuICogdmFsLXNlbGVjdC1pbnB1dFxuICpcbiAqIEEgc2VsZWN0L2Ryb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCBBbmd1bGFyIGZvcm1zLCB1c2luZyBJb25pYydzIHNlbGVjdCBjb21wb25lbnQuXG4gKiBTdXBwb3J0cyBwcmVzZXRzIGZvciByZXVzYWJsZSBjb25maWd1cmF0aW9ucy5cbiAqXG4gKiBAZXhhbXBsZSBXaXRoIHByZXNldCAocmVjb21tZW5kZWQpOlxuICogPHZhbC1zZWxlY3QtaW5wdXQgcHJlc2V0PVwiZm9ybS1maWVsZFwiIFtwcm9wc109XCJ7XG4gKiAgIGNvbnRyb2w6IG15Q29udHJvbCxcbiAqICAgbGFiZWw6ICdTZWxlY2Npb25hcicsXG4gKiAgIG9wdGlvbnM6IFt7IGlkOiAnMScsIG5hbWU6ICdPcGNpw7NuIDEnIH1dXG4gKiB9XCI+PC92YWwtc2VsZWN0LWlucHV0PlxuICpcbiAqIEBleGFtcGxlIFN0YXRpYyAoYmFja3dhcmRzIGNvbXBhdGlibGUpOlxuICogPHZhbC1zZWxlY3QtaW5wdXQgW3Byb3BzXT1cIntcbiAqICAgY29udHJvbDogbXlDb250cm9sLFxuICogICBsYWJlbDogJ1NlbGVjY2lvbmFyJyxcbiAqICAgb3B0aW9uczogW3sgaWQ6ICcxJywgbmFtZTogJ09wY2nDs24gMScgfV0sXG4gKiAgIGNhbmNlbFRleHQ6ICdDYW5jZWxhcicsXG4gKiAgIG9rVGV4dDogJ0FjZXB0YXInXG4gKiB9XCI+PC92YWwtc2VsZWN0LWlucHV0PlxuICpcbiAqIEBpbnB1dCBwcmVzZXQ6IHN0cmluZyAtIE5hbWUgb2YgcHJlc2V0IHRvIGFwcGx5IChlLmcuLCAnZm9ybS1maWVsZCcpXG4gKiBAaW5wdXQgcHJvcHM6IElucHV0TWV0YWRhdGEgLSBDb25maWd1cmF0aW9uIGZvciB0aGUgc2VsZWN0IGlucHV0IChvdmVycmlkZXMgcHJlc2V0IHZhbHVlcylcbiAqL1xuZXhwb3J0IGNsYXNzIFNlYXJjaFNlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xuICBwcml2YXRlIHByZXNldHMgPSBpbmplY3QoUHJlc2V0U2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFByZXNldCBuYW1lIHRvIGFwcGx5LiBQcmVzZXRzIGRlZmluZSByZXVzYWJsZSBpbnB1dCBjb25maWd1cmF0aW9uc1xuICAgKiB0aGF0IGNhbiBiZSByZWdpc3RlcmVkIGF0IGFwcCBsZXZlbCB2aWEgcHJvdmlkZVZhbHRlY2hQcmVzZXRzKCkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIDx2YWwtc2VsZWN0LWlucHV0IHByZXNldD1cImZvcm0tZmllbGRcIiBbcHJvcHNdPVwieyBjb250cm9sOiBjdHJsLCBvcHRpb25zOiBvcHRzIH1cIj48L3ZhbC1zZWxlY3QtaW5wdXQ+XG4gICAqL1xuICBASW5wdXQoKSBwcmVzZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElucHV0IGNvbmZpZ3VyYXRpb24gb2JqZWN0LiBWYWx1ZXMgaGVyZSBvdmVycmlkZSBwcmVzZXQgdmFsdWVzLlxuICAgKiBAdHlwZSB7SW5wdXRNZXRhZGF0YX1cbiAgICogQHByb3BlcnR5IGNvbnRyb2wgLSBUaGUgQW5ndWxhciBGb3JtQ29udHJvbCBmb3IgdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHByb3BlcnR5IGxhYmVsIC0gVGhlIGxhYmVsIGZvciB0aGUgc2VsZWN0LlxuICAgKiBAcHJvcGVydHkgb3B0aW9ucyAtIFRoZSBhdmFpbGFibGUgb3B0aW9ucyBmb3IgdGhlIHNlbGVjdC5cbiAgICogQHByb3BlcnR5IHBsYWNlaG9sZGVyIC0gVGhlIHBsYWNlaG9sZGVyIHRleHQuXG4gICAqIEBwcm9wZXJ0eSBtb2RhbEhlYWRlciAtIEN1c3RvbSBoZWFkZXIgdGV4dCBmb3IgdGhlIG1vZGFsIChvcHRpb25hbCwgdXNlcyBsYWJlbCBpZiBub3QgcHJvdmlkZWQpLlxuICAgKiBAcHJvcGVydHkgY2FuY2VsVGV4dCAtIEN1c3RvbSBjYW5jZWwgYnV0dG9uIHRleHQgKGRlZmF1bHQ6ICdDYW5jZWxhcicpLlxuICAgKiBAcHJvcGVydHkgb2tUZXh0IC0gQ3VzdG9tIE9LIGJ1dHRvbiB0ZXh0IChkZWZhdWx0OiAnQWNlcHRhcicpLlxuICAgKi9cbiAgQElucHV0KCkgcHJvcHM6IFBhcnRpYWw8SW5wdXRNZXRhZGF0YT4gPSB7fTtcblxuICAvKipcbiAgICogUmVzb2x2ZWQgcHJvcHMgYWZ0ZXIgbWVyZ2luZyBwcmVzZXQgKyBleHBsaWNpdCBwcm9wcy5cbiAgICovXG4gIHJlc29sdmVkUHJvcHM6IElucHV0TWV0YWRhdGEgPSB7fSBhcyBJbnB1dE1ldGFkYXRhO1xuXG4gIGN1c3RvbU1vZGFsT3B0aW9uczogeyBoZWFkZXI6IHN0cmluZzsgYnJlYWtwb2ludHM6IG51bWJlcltdOyBpbml0aWFsQnJlYWtwb2ludDogbnVtYmVyIH07XG4gIGN1c3RvbVBvcG92ZXJPcHRpb25zOiB7IGNzc0NsYXNzOiBzdHJpbmcgfTtcbiAgY2FuY2VsVGV4dDogc3RyaW5nO1xuICBva1RleHQ6IHN0cmluZztcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJlc29sdmVQcm9wcygpO1xuICAgIHRoaXMuc2V0dXBDb21wb25lbnQoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1sncHJlc2V0J10gfHwgY2hhbmdlc1sncHJvcHMnXSkge1xuICAgICAgdGhpcy5yZXNvbHZlUHJvcHMoKTtcbiAgICAgIHRoaXMuc2V0dXBDb21wb25lbnQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWVyZ2UgcHJlc2V0IGNvbmZpZ3VyYXRpb24gd2l0aCBleHBsaWNpdCBwcm9wcy5cbiAgICogRXhwbGljaXQgcHJvcHMgdGFrZSBwcmVjZWRlbmNlIG92ZXIgcHJlc2V0IHZhbHVlcy5cbiAgICovXG4gIHByaXZhdGUgcmVzb2x2ZVByb3BzKCk6IHZvaWQge1xuICAgIGNvbnN0IHByZXNldFByb3BzID0gdGhpcy5wcmVzZXQgPyAodGhpcy5wcmVzZXRzLmdldCgnc2VsZWN0SW5wdXQnLCB0aGlzLnByZXNldCkgYXMgUGFydGlhbDxJbnB1dE1ldGFkYXRhPikgOiB7fTtcblxuICAgIHRoaXMucmVzb2x2ZWRQcm9wcyA9IHtcbiAgICAgIGxhYmVsOiAnJyxcbiAgICAgIHN0YXRlOiBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCxcbiAgICAgIC4uLnByZXNldFByb3BzLFxuICAgICAgLi4udGhpcy5wcm9wcyxcbiAgICB9IGFzIElucHV0TWV0YWRhdGE7XG4gIH1cblxuICBwcml2YXRlIHNldHVwQ29tcG9uZW50KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlc29sdmVkUHJvcHM/LndpdGhEZWZhdWx0IHx8IHRoaXMucmVzb2x2ZWRQcm9wcz8udmFsdWUpIHtcbiAgICAgIGFwcGx5RGVmYXVsdFZhbHVlVG9Db250cm9sKHRoaXMucmVzb2x2ZWRQcm9wcyk7XG4gICAgfVxuXG4gICAgLy8gU2V0IG1vZGFsIGhlYWRlciBmcm9tIHByb3BzIG9yIHVzZSBsYWJlbCBhcyBmYWxsYmFjaywgdGhlbiBpMThuIGRlZmF1bHRcbiAgICBjb25zdCBoZWFkZXJUZXh0ID0gdGhpcy5yZXNvbHZlZFByb3BzLm1vZGFsSGVhZGVyIHx8IHRoaXMucmVzb2x2ZWRQcm9wcy5sYWJlbCB8fCB0aGlzLmkxOG4udCgnc2VsZWN0T3B0aW9uJyk7XG5cbiAgICB0aGlzLmN1c3RvbU1vZGFsT3B0aW9ucyA9IHtcbiAgICAgIGhlYWRlcjogaGVhZGVyVGV4dCxcbiAgICAgIGJyZWFrcG9pbnRzOiBbMCwgMC42XSxcbiAgICAgIGluaXRpYWxCcmVha3BvaW50OiAwLjYsXG4gICAgfTtcbiAgICB0aGlzLmN1c3RvbVBvcG92ZXJPcHRpb25zID0geyBjc3NDbGFzczogJ3ZhbC1zZWxlY3QtcG9wb3ZlcicgfTtcblxuICAgIC8vIFNldCBidXR0b24gdGV4dHMgZnJvbSBwcm9wcyBvciB1c2UgaTE4biBkZWZhdWx0cy5cbiAgICAvLyBGYWxsYmFjayBjaGFpbjogbmFtZXNwYWNlLWxlc3MgaTE4biDihpIgJ0NvbW1vbicgbmFtZXNwYWNlIOKGkiBoYXJkY29kZWQuXG4gICAgLy8gRWwgbmFtZXNwYWNlLWxlc3MgYnVzY2EgZW4gX2dsb2JhbDsgc2kgbm8gZXhpc3RlIChjYXNvIHR5cGljYWwgYXBwKSxcbiAgICAvLyBwcm9iYW1vcyBlbiAnQ29tbW9uJyBxdWUgbGEgbWF5b3LDrWEgZGUgYXBwcyB0aWVuZW4gcG9ibGFkby5cbiAgICB0aGlzLmNhbmNlbFRleHQgPSB0aGlzLnJlc29sdmVkUHJvcHMuY2FuY2VsVGV4dCB8fCB0aGlzLnJlc29sdmVJMThuKCdjYW5jZWwnLCAnQ2FuY2VsYXInKTtcbiAgICB0aGlzLm9rVGV4dCA9IHRoaXMucmVzb2x2ZWRQcm9wcy5va1RleHQgfHwgdGhpcy5yZXNvbHZlSTE4bignb2snLCAnT0snKTtcbiAgfVxuXG4gIGljb25NYXNrKHNyYzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHVybChcIiR7c3JjfVwiKWA7XG4gIH1cblxuICAvKipcbiAgICogQnVzY2EgdW4ga2V5IGVuIGBfZ2xvYmFsYCBwcmltZXJvLCBsdWVnbyBlbiBgQ29tbW9uYCwgZmluYWxtZW50ZSBjYWUgYWxcbiAgICogZGVmYXVsdCBoYXJkY29kZWQuIMOadGlsIHBhcmEgdGV4dG9zIGNyb3NzLWN1dHRpbmcgKGNhbmNlbC9vay9jbG9zZS9ldGMuKVxuICAgKiBzaW4gb2JsaWdhciBhIGNhZGEgYXBwIGEgZHVwbGljYXJsb3MgZW4gY2FkYSBuYW1lc3BhY2UuXG4gICAqL1xuICBwcml2YXRlIHJlc29sdmVJMThuKGtleTogc3RyaW5nLCBmYWxsYmFjazogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB0cnlHbG9iYWwgPSB0aGlzLmkxOG4udChrZXkpO1xuICAgIGlmICh0cnlHbG9iYWwgJiYgIXRyeUdsb2JhbC5zdGFydHNXaXRoKCdbJykpIHJldHVybiB0cnlHbG9iYWw7XG4gICAgY29uc3QgdHJ5Q29tbW9uID0gdGhpcy5pMThuLnQoa2V5LCAnQ29tbW9uJyk7XG4gICAgaWYgKHRyeUNvbW1vbiAmJiAhdHJ5Q29tbW9uLnN0YXJ0c1dpdGgoJ1snKSkgcmV0dXJuIHRyeUNvbW1vbjtcbiAgICByZXR1cm4gZmFsbGJhY2s7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, ElementRef, HostListener, Input, inject } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { IonIcon } from '@ionic/angular/standalone';
|
|
5
|
+
import { addIcons } from 'ionicons';
|
|
6
|
+
import { checkmarkOutline } from 'ionicons/icons';
|
|
7
|
+
import { applyDefaultValueToControl } from '../../../shared/utils/form-defaults';
|
|
8
|
+
import { I18nService } from '../../../services/i18n';
|
|
9
|
+
import { PresetService } from '../../../services/presets';
|
|
10
|
+
import { ComponentStates } from '../../types';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class SelectInputV2Component {
|
|
13
|
+
static { this.nextId = 0; }
|
|
14
|
+
constructor() {
|
|
15
|
+
this.i18n = inject(I18nService);
|
|
16
|
+
this.presets = inject(PresetService);
|
|
17
|
+
this.host = inject((ElementRef));
|
|
18
|
+
this.props = {};
|
|
19
|
+
this.resolvedProps = {};
|
|
20
|
+
this.isOpen = false;
|
|
21
|
+
this.listboxId = `val-select-v2-${SelectInputV2Component.nextId++}`;
|
|
22
|
+
addIcons({ checkmarkOutline });
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
this.resolveProps();
|
|
26
|
+
this.setupComponent();
|
|
27
|
+
}
|
|
28
|
+
ngOnChanges(changes) {
|
|
29
|
+
if (changes['preset'] || changes['props']) {
|
|
30
|
+
this.resolveProps();
|
|
31
|
+
this.setupComponent();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
handleDocumentClick(event) {
|
|
35
|
+
if (!this.host.nativeElement.contains(event.target)) {
|
|
36
|
+
this.isOpen = false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
toggle() {
|
|
40
|
+
if (this.isDisabled())
|
|
41
|
+
return;
|
|
42
|
+
this.isOpen = !this.isOpen;
|
|
43
|
+
}
|
|
44
|
+
openAndFocus(event, direction) {
|
|
45
|
+
event.preventDefault();
|
|
46
|
+
if (this.isDisabled())
|
|
47
|
+
return;
|
|
48
|
+
this.isOpen = true;
|
|
49
|
+
setTimeout(() => this.focusNextOption(direction));
|
|
50
|
+
}
|
|
51
|
+
focusNext(event, direction) {
|
|
52
|
+
event.preventDefault();
|
|
53
|
+
this.focusNextOption(direction);
|
|
54
|
+
}
|
|
55
|
+
close(event) {
|
|
56
|
+
event?.preventDefault();
|
|
57
|
+
this.isOpen = false;
|
|
58
|
+
setTimeout(() => {
|
|
59
|
+
const trigger = this.host.nativeElement.querySelector('.select-v2__trigger');
|
|
60
|
+
trigger?.focus();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
select(option) {
|
|
64
|
+
if (option.disabled || this.isDisabled())
|
|
65
|
+
return;
|
|
66
|
+
this.resolvedProps.control?.setValue(option.id);
|
|
67
|
+
this.resolvedProps.control?.markAsDirty();
|
|
68
|
+
this.resolvedProps.control?.markAsTouched();
|
|
69
|
+
this.isOpen = false;
|
|
70
|
+
}
|
|
71
|
+
selectedOption() {
|
|
72
|
+
return this.orderedOptions().find(option => option.id === this.resolvedProps.control?.value);
|
|
73
|
+
}
|
|
74
|
+
orderedOptions() {
|
|
75
|
+
return [...(this.resolvedProps.options || [])].sort((a, b) => a.order - b.order);
|
|
76
|
+
}
|
|
77
|
+
isDisabled() {
|
|
78
|
+
return this.resolvedProps.state === ComponentStates.DISABLED || !!this.resolvedProps.control?.disabled;
|
|
79
|
+
}
|
|
80
|
+
ariaLabel() {
|
|
81
|
+
return this.resolvedProps.label || this.resolvedProps.placeholder || this.i18n.t('selectOption');
|
|
82
|
+
}
|
|
83
|
+
iconMask(src) {
|
|
84
|
+
return `url("${src}")`;
|
|
85
|
+
}
|
|
86
|
+
resolveProps() {
|
|
87
|
+
const presetProps = this.preset ? this.presets.get('selectInputV2', this.preset) : {};
|
|
88
|
+
this.resolvedProps = {
|
|
89
|
+
label: '',
|
|
90
|
+
state: ComponentStates.ENABLED,
|
|
91
|
+
options: [],
|
|
92
|
+
...presetProps,
|
|
93
|
+
...this.props,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
setupComponent() {
|
|
97
|
+
if (this.resolvedProps?.withDefault || this.resolvedProps?.value) {
|
|
98
|
+
applyDefaultValueToControl(this.resolvedProps);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
focusNextOption(direction) {
|
|
102
|
+
const options = Array.from(this.host.nativeElement.querySelectorAll('.select-v2__option'));
|
|
103
|
+
if (!options.length)
|
|
104
|
+
return;
|
|
105
|
+
const activeIndex = options.findIndex(option => option === document.activeElement);
|
|
106
|
+
const nextIndex = activeIndex < 0 ? (direction > 0 ? 0 : options.length - 1) : activeIndex + direction;
|
|
107
|
+
options[(nextIndex + options.length) % options.length]?.focus();
|
|
108
|
+
}
|
|
109
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectInputV2Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
110
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SelectInputV2Component, isStandalone: true, selector: "val-select-input-v2", inputs: { preset: "preset", props: "props" }, host: { listeners: { "document:click": "handleDocumentClick($event)" } }, usesOnChanges: true, ngImport: i0, template: `
|
|
111
|
+
<div class="select-v2" [class.select-v2--open]="isOpen" [class.select-v2--disabled]="isDisabled()">
|
|
112
|
+
<button
|
|
113
|
+
type="button"
|
|
114
|
+
class="select-v2__trigger"
|
|
115
|
+
[attr.aria-label]="ariaLabel()"
|
|
116
|
+
[attr.aria-expanded]="isOpen"
|
|
117
|
+
aria-haspopup="listbox"
|
|
118
|
+
[attr.aria-controls]="listboxId"
|
|
119
|
+
[disabled]="isDisabled()"
|
|
120
|
+
(click)="toggle()"
|
|
121
|
+
(keydown.arrowdown)="openAndFocus($event, 1)"
|
|
122
|
+
(keydown.arrowup)="openAndFocus($event, -1)"
|
|
123
|
+
>
|
|
124
|
+
<span class="select-v2__value" [class.select-v2__value--placeholder]="!selectedOption()">
|
|
125
|
+
@if (selectedOption()?.icon?.src) {
|
|
126
|
+
<span
|
|
127
|
+
class="select-v2__icon select-v2__icon--mask"
|
|
128
|
+
[style.--val-select-v2-icon-src]="iconMask(selectedOption()!.icon!.src!)"
|
|
129
|
+
aria-hidden="true"
|
|
130
|
+
></span>
|
|
131
|
+
} @else if (selectedOption()?.icon?.name) {
|
|
132
|
+
<ion-icon
|
|
133
|
+
class="select-v2__icon"
|
|
134
|
+
[name]="selectedOption()!.icon!.name"
|
|
135
|
+
[color]="selectedOption()!.icon!.color"
|
|
136
|
+
aria-hidden="true"
|
|
137
|
+
/>
|
|
138
|
+
}
|
|
139
|
+
<span>{{ selectedOption()?.name || resolvedProps.placeholder || resolvedProps.label }}</span>
|
|
140
|
+
</span>
|
|
141
|
+
<span class="select-v2__chevron" aria-hidden="true"></span>
|
|
142
|
+
</button>
|
|
143
|
+
|
|
144
|
+
@if (isOpen) {
|
|
145
|
+
<div class="select-v2__menu" [id]="listboxId" role="listbox" [attr.aria-label]="ariaLabel()">
|
|
146
|
+
@for (option of orderedOptions(); track option.id) {
|
|
147
|
+
<button
|
|
148
|
+
type="button"
|
|
149
|
+
class="select-v2__option"
|
|
150
|
+
role="option"
|
|
151
|
+
[attr.aria-selected]="option.id === resolvedProps.control?.value"
|
|
152
|
+
[disabled]="option.disabled"
|
|
153
|
+
(click)="select(option)"
|
|
154
|
+
(keydown.arrowdown)="focusNext($event, 1)"
|
|
155
|
+
(keydown.arrowup)="focusNext($event, -1)"
|
|
156
|
+
(keydown.escape)="close($event)"
|
|
157
|
+
>
|
|
158
|
+
@if (option.icon?.src) {
|
|
159
|
+
<span
|
|
160
|
+
class="select-v2__icon select-v2__icon--mask"
|
|
161
|
+
[style.--val-select-v2-icon-src]="iconMask(option.icon.src)"
|
|
162
|
+
aria-hidden="true"
|
|
163
|
+
></span>
|
|
164
|
+
} @else if (option.icon?.name) {
|
|
165
|
+
<ion-icon
|
|
166
|
+
class="select-v2__icon"
|
|
167
|
+
[name]="option.icon.name"
|
|
168
|
+
[color]="option.icon.color"
|
|
169
|
+
aria-hidden="true"
|
|
170
|
+
/>
|
|
171
|
+
}
|
|
172
|
+
<span class="select-v2__option-label">{{ option.name }}</span>
|
|
173
|
+
@if (option.id === resolvedProps.control?.value) {
|
|
174
|
+
<ion-icon class="select-v2__check" name="checkmark-outline" aria-hidden="true" />
|
|
175
|
+
}
|
|
176
|
+
</button>
|
|
177
|
+
}
|
|
178
|
+
</div>
|
|
179
|
+
}
|
|
180
|
+
</div>
|
|
181
|
+
`, 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-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}.select-v2{position:relative;margin-top:.375rem}.select-v2__trigger{width:100%;min-height:2.625rem;display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;padding:.5rem .625rem .5rem 1rem;background:transparent;color:var(--ion-color-darki);font:inherit;text-align:left}.select-v2__trigger:focus{outline:none}.select-v2__trigger:focus-visible{outline:.125rem solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:inherit}.select-v2--open .select-v2__trigger{border-width:.125rem;border-color:var(--ion-color-primary);padding:.4375rem .5625rem .4375rem .9375rem}.select-v2__value,.select-v2__option{display:inline-flex;align-items:center;gap:.625rem;min-width:0}.select-v2__value{flex:1}.select-v2__value--placeholder{color:var(--ion-color-medium)}.select-v2__icon{flex:0 0 auto;width:1.125rem;height:1.125rem;font-size:1.125rem}.select-v2__icon--mask{background:currentColor;mask:var(--val-select-v2-icon-src) center/contain no-repeat;-webkit-mask:var(--val-select-v2-icon-src) center/contain no-repeat}.select-v2__chevron{flex:0 0 auto;width:.625rem;height:.625rem;border-right:.125rem solid currentColor;border-bottom:.125rem solid currentColor;transform:rotate(45deg) translateY(-.125rem)}.select-v2--open .select-v2__chevron{transform:rotate(225deg) translateY(-.125rem)}.select-v2__menu{position:absolute;z-index:20;left:0;right:0;top:calc(100% + .375rem);overflow:hidden;border:.0625rem solid rgba(var(--ion-color-medium-rgb),.28);border-radius:1.5rem;background:var(--ion-background-color);box-shadow:0 .875rem 2.125rem #00000029}.select-v2__option{width:100%;min-height:3rem;justify-content:flex-start;border:0;border-bottom:.0625rem solid rgba(var(--ion-color-medium-rgb),.22);padding:.75rem .875rem;background:var(--ion-background-color);color:var(--ion-color-darki);font:inherit;text-align:left}.select-v2__option:focus{outline:none}.select-v2__option:focus-visible{outline:.125rem solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:inherit}.select-v2__option:last-child{border-bottom:0}.select-v2__option:hover,.select-v2__option:focus-visible{background:rgba(var(--ion-color-medium-rgb),.08)}.select-v2__option[aria-selected=true]{font-weight:700}.select-v2__option-label{flex:1;min-width:0}.select-v2__check{flex:0 0 auto;font-size:1.25rem}.select-v2--disabled{opacity:.55}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
|
|
182
|
+
}
|
|
183
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectInputV2Component, decorators: [{
|
|
184
|
+
type: Component,
|
|
185
|
+
args: [{ selector: 'val-select-input-v2', standalone: true, imports: [CommonModule, ReactiveFormsModule, IonIcon], template: `
|
|
186
|
+
<div class="select-v2" [class.select-v2--open]="isOpen" [class.select-v2--disabled]="isDisabled()">
|
|
187
|
+
<button
|
|
188
|
+
type="button"
|
|
189
|
+
class="select-v2__trigger"
|
|
190
|
+
[attr.aria-label]="ariaLabel()"
|
|
191
|
+
[attr.aria-expanded]="isOpen"
|
|
192
|
+
aria-haspopup="listbox"
|
|
193
|
+
[attr.aria-controls]="listboxId"
|
|
194
|
+
[disabled]="isDisabled()"
|
|
195
|
+
(click)="toggle()"
|
|
196
|
+
(keydown.arrowdown)="openAndFocus($event, 1)"
|
|
197
|
+
(keydown.arrowup)="openAndFocus($event, -1)"
|
|
198
|
+
>
|
|
199
|
+
<span class="select-v2__value" [class.select-v2__value--placeholder]="!selectedOption()">
|
|
200
|
+
@if (selectedOption()?.icon?.src) {
|
|
201
|
+
<span
|
|
202
|
+
class="select-v2__icon select-v2__icon--mask"
|
|
203
|
+
[style.--val-select-v2-icon-src]="iconMask(selectedOption()!.icon!.src!)"
|
|
204
|
+
aria-hidden="true"
|
|
205
|
+
></span>
|
|
206
|
+
} @else if (selectedOption()?.icon?.name) {
|
|
207
|
+
<ion-icon
|
|
208
|
+
class="select-v2__icon"
|
|
209
|
+
[name]="selectedOption()!.icon!.name"
|
|
210
|
+
[color]="selectedOption()!.icon!.color"
|
|
211
|
+
aria-hidden="true"
|
|
212
|
+
/>
|
|
213
|
+
}
|
|
214
|
+
<span>{{ selectedOption()?.name || resolvedProps.placeholder || resolvedProps.label }}</span>
|
|
215
|
+
</span>
|
|
216
|
+
<span class="select-v2__chevron" aria-hidden="true"></span>
|
|
217
|
+
</button>
|
|
218
|
+
|
|
219
|
+
@if (isOpen) {
|
|
220
|
+
<div class="select-v2__menu" [id]="listboxId" role="listbox" [attr.aria-label]="ariaLabel()">
|
|
221
|
+
@for (option of orderedOptions(); track option.id) {
|
|
222
|
+
<button
|
|
223
|
+
type="button"
|
|
224
|
+
class="select-v2__option"
|
|
225
|
+
role="option"
|
|
226
|
+
[attr.aria-selected]="option.id === resolvedProps.control?.value"
|
|
227
|
+
[disabled]="option.disabled"
|
|
228
|
+
(click)="select(option)"
|
|
229
|
+
(keydown.arrowdown)="focusNext($event, 1)"
|
|
230
|
+
(keydown.arrowup)="focusNext($event, -1)"
|
|
231
|
+
(keydown.escape)="close($event)"
|
|
232
|
+
>
|
|
233
|
+
@if (option.icon?.src) {
|
|
234
|
+
<span
|
|
235
|
+
class="select-v2__icon select-v2__icon--mask"
|
|
236
|
+
[style.--val-select-v2-icon-src]="iconMask(option.icon.src)"
|
|
237
|
+
aria-hidden="true"
|
|
238
|
+
></span>
|
|
239
|
+
} @else if (option.icon?.name) {
|
|
240
|
+
<ion-icon
|
|
241
|
+
class="select-v2__icon"
|
|
242
|
+
[name]="option.icon.name"
|
|
243
|
+
[color]="option.icon.color"
|
|
244
|
+
aria-hidden="true"
|
|
245
|
+
/>
|
|
246
|
+
}
|
|
247
|
+
<span class="select-v2__option-label">{{ option.name }}</span>
|
|
248
|
+
@if (option.id === resolvedProps.control?.value) {
|
|
249
|
+
<ion-icon class="select-v2__check" name="checkmark-outline" aria-hidden="true" />
|
|
250
|
+
}
|
|
251
|
+
</button>
|
|
252
|
+
}
|
|
253
|
+
</div>
|
|
254
|
+
}
|
|
255
|
+
</div>
|
|
256
|
+
`, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-xl-wide: 1280px;--val-container-md-wide: 900px;--val-container-aside: 0px;--val-container-padding: 16px;--val-radius-xs: 10px;--val-radius-sm: 16px;--val-radius-md: 20px;--val-radius-lg: 28px;--val-radius-xl: 36px;--val-radius-full: 999px;--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: #737478;--ion-color-medium-rgb: 115,116,120;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255,255,255;--ion-color-medium-shade: #65666a;--ion-color-medium-tint: #818286;--ion-color-warning: #ffde38;--ion-color-warning-rgb: 255, 222, 56;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0c331;--ion-color-warning-tint: #ffe14c;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-dark)}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)}.select-v2{position:relative;margin-top:.375rem}.select-v2__trigger{width:100%;min-height:2.625rem;display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;border:.0625rem solid var(--ion-color-medium);border-radius:1.5rem;padding:.5rem .625rem .5rem 1rem;background:transparent;color:var(--ion-color-darki);font:inherit;text-align:left}.select-v2__trigger:focus{outline:none}.select-v2__trigger:focus-visible{outline:.125rem solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:inherit}.select-v2--open .select-v2__trigger{border-width:.125rem;border-color:var(--ion-color-primary);padding:.4375rem .5625rem .4375rem .9375rem}.select-v2__value,.select-v2__option{display:inline-flex;align-items:center;gap:.625rem;min-width:0}.select-v2__value{flex:1}.select-v2__value--placeholder{color:var(--ion-color-medium)}.select-v2__icon{flex:0 0 auto;width:1.125rem;height:1.125rem;font-size:1.125rem}.select-v2__icon--mask{background:currentColor;mask:var(--val-select-v2-icon-src) center/contain no-repeat;-webkit-mask:var(--val-select-v2-icon-src) center/contain no-repeat}.select-v2__chevron{flex:0 0 auto;width:.625rem;height:.625rem;border-right:.125rem solid currentColor;border-bottom:.125rem solid currentColor;transform:rotate(45deg) translateY(-.125rem)}.select-v2--open .select-v2__chevron{transform:rotate(225deg) translateY(-.125rem)}.select-v2__menu{position:absolute;z-index:20;left:0;right:0;top:calc(100% + .375rem);overflow:hidden;border:.0625rem solid rgba(var(--ion-color-medium-rgb),.28);border-radius:1.5rem;background:var(--ion-background-color);box-shadow:0 .875rem 2.125rem #00000029}.select-v2__option{width:100%;min-height:3rem;justify-content:flex-start;border:0;border-bottom:.0625rem solid rgba(var(--ion-color-medium-rgb),.22);padding:.75rem .875rem;background:var(--ion-background-color);color:var(--ion-color-darki);font:inherit;text-align:left}.select-v2__option:focus{outline:none}.select-v2__option:focus-visible{outline:.125rem solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:inherit}.select-v2__option:last-child{border-bottom:0}.select-v2__option:hover,.select-v2__option:focus-visible{background:rgba(var(--ion-color-medium-rgb),.08)}.select-v2__option[aria-selected=true]{font-weight:700}.select-v2__option-label{flex:1;min-width:0}.select-v2__check{flex:0 0 auto;font-size:1.25rem}.select-v2--disabled{opacity:.55}\n"] }]
|
|
257
|
+
}], ctorParameters: () => [], propDecorators: { preset: [{
|
|
258
|
+
type: Input
|
|
259
|
+
}], props: [{
|
|
260
|
+
type: Input
|
|
261
|
+
}], handleDocumentClick: [{
|
|
262
|
+
type: HostListener,
|
|
263
|
+
args: ['document:click', ['$event']]
|
|
264
|
+
}] } });
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWlucHV0LXYyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvc2VsZWN0LWlucHV0LXYyL3NlbGVjdC1pbnB1dC12Mi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQW9DLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQThCLE1BQU0sYUFBYSxDQUFDOztBQWdGMUUsTUFBTSxPQUFPLHNCQUFzQjthQUNsQixXQUFNLEdBQUcsQ0FBQyxBQUFKLENBQUs7SUFZMUI7UUFYUSxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLFlBQU8sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBR3RDLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBRTVDLGtC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QkFBYixLQUFLO2dCQXVCTixtQkFBbUI7c0JBRGxCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBjaGVja21hcmtPdXRsaW5lIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuaW1wb3J0IHsgYXBwbHlEZWZhdWx0VmFsdWVUb0NvbnRyb2wgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvZm9ybS1kZWZhdWx0cyc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgUHJlc2V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3ByZXNldHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RhdGVzLCBJbnB1dE1ldGFkYXRhLCBJbnB1dE9wdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXNlbGVjdC1pbnB1dC12MicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIElvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QtdjJcIiBbY2xhc3Muc2VsZWN0LXYyLS1vcGVuXT1cImlzT3BlblwiIFtjbGFzcy5zZWxlY3QtdjItLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoKVwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJzZWxlY3QtdjJfX3RyaWdnZXJcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc09wZW5cIlxuICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwibGlzdGJveElkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWQoKVwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGUoKVwiXG4gICAgICAgIChrZXlkb3duLmFycm93ZG93bik9XCJvcGVuQW5kRm9jdXMoJGV2ZW50LCAxKVwiXG4gICAgICAgIChrZXlkb3duLmFycm93dXApPVwib3BlbkFuZEZvY3VzKCRldmVudCwgLTEpXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzZWxlY3QtdjJfX3ZhbHVlXCIgW2NsYXNzLnNlbGVjdC12Ml9fdmFsdWUtLXBsYWNlaG9sZGVyXT1cIiFzZWxlY3RlZE9wdGlvbigpXCI+XG4gICAgICAgICAgQGlmIChzZWxlY3RlZE9wdGlvbigpPy5pY29uPy5zcmMpIHtcbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0LXYyX19pY29uIHNlbGVjdC12Ml9faWNvbi0tbWFza1wiXG4gICAgICAgICAgICAgIFtzdHlsZS4tLXZhbC1zZWxlY3QtdjItaWNvbi1zcmNdPVwiaWNvbk1hc2soc2VsZWN0ZWRPcHRpb24oKSEuaWNvbiEuc3JjISlcIlxuICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICB9IEBlbHNlIGlmIChzZWxlY3RlZE9wdGlvbigpPy5pY29uPy5uYW1lKSB7XG4gICAgICAgICAgICA8aW9uLWljb25cbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3QtdjJfX2ljb25cIlxuICAgICAgICAgICAgICBbbmFtZV09XCJzZWxlY3RlZE9wdGlvbigpIS5pY29uIS5uYW1lXCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cInNlbGVjdGVkT3B0aW9uKCkhLmljb24hLmNvbG9yXCJcbiAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzcGFuPnt7IHNlbGVjdGVkT3B0aW9uKCk/Lm5hbWUgfHwgcmVzb2x2ZWRQcm9wcy5wbGFjZWhvbGRlciB8fCByZXNvbHZlZFByb3BzLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LXYyX19jaGV2cm9uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIEBpZiAoaXNPcGVuKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QtdjJfX21lbnVcIiBbaWRdPVwibGlzdGJveElkXCIgcm9sZT1cImxpc3Rib3hcIiBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCgpXCI+XG4gICAgICAgICAgQGZvciAob3B0aW9uIG9mIG9yZGVyZWRPcHRpb25zKCk7IHRyYWNrIG9wdGlvbi5pZCkge1xuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3QtdjJfX29wdGlvblwiXG4gICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIm9wdGlvbi5pZCA9PT0gcmVzb2x2ZWRQcm9wcy5jb250cm9sPy52YWx1ZVwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJvcHRpb24uZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0KG9wdGlvbilcIlxuICAgICAgICAgICAgICAoa2V5ZG93bi5hcnJvd2Rvd24pPVwiZm9jdXNOZXh0KCRldmVudCwgMSlcIlxuICAgICAgICAgICAgICAoa2V5ZG93bi5hcnJvd3VwKT1cImZvY3VzTmV4dCgkZXZlbnQsIC0xKVwiXG4gICAgICAgICAgICAgIChrZXlkb3duLmVzY2FwZSk9XCJjbG9zZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgQGlmIChvcHRpb24uaWNvbj8uc3JjKSB7XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0LXYyX19pY29uIHNlbGVjdC12Ml9faWNvbi0tbWFza1wiXG4gICAgICAgICAgICAgICAgICBbc3R5bGUuLS12YWwtc2VsZWN0LXYyLWljb24tc3JjXT1cImljb25NYXNrKG9wdGlvbi5pY29uLnNyYylcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChvcHRpb24uaWNvbj8ubmFtZSkge1xuICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3QtdjJfX2ljb25cIlxuICAgICAgICAgICAgICAgICAgW25hbWVdPVwib3B0aW9uLmljb24ubmFtZVwiXG4gICAgICAgICAgICAgICAgICBbY29sb3JdPVwib3B0aW9uLmljb24uY29sb3JcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LXYyX19vcHRpb24tbGFiZWxcIj57eyBvcHRpb24ubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgQGlmIChvcHRpb24uaWQgPT09IHJlc29sdmVkUHJvcHMuY29udHJvbD8udmFsdWUpIHtcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gY2xhc3M9XCJzZWxlY3QtdjJfX2NoZWNrXCIgbmFtZT1cImNoZWNrbWFyay1vdXRsaW5lXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWN0LWlucHV0LXYyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdElucHV0VjJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByaXZhdGUgc3RhdGljIG5leHRJZCA9IDA7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcHJlc2V0cyA9IGluamVjdChQcmVzZXRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBob3N0ID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICBASW5wdXQoKSBwcmVzZXQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHByb3BzOiBQYXJ0aWFsPElucHV0TWV0YWRhdGE+ID0ge307XG5cbiAgcmVzb2x2ZWRQcm9wczogSW5wdXRNZXRhZGF0YSA9IHt9IGFzIElucHV0TWV0YWRhdGE7XG4gIGlzT3BlbiA9IGZhbHNlO1xuICBsaXN0Ym94SWQgPSBgdmFsLXNlbGVjdC12Mi0ke1NlbGVjdElucHV0VjJDb21wb25lbnQubmV4dElkKyt9YDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBhZGRJY29ucyh7IGNoZWNrbWFya091dGxpbmUgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlc29sdmVQcm9wcygpO1xuICAgIHRoaXMuc2V0dXBDb21wb25lbnQoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1sncHJlc2V0J10gfHwgY2hhbmdlc1sncHJvcHMnXSkge1xuICAgICAgdGhpcy5yZXNvbHZlUHJvcHMoKTtcbiAgICAgIHRoaXMuc2V0dXBDb21wb25lbnQoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gIGhhbmRsZURvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNEaXNhYmxlZCgpKSByZXR1cm47XG4gICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW47XG4gIH1cblxuICBvcGVuQW5kRm9jdXMoZXZlbnQ6IEV2ZW50LCBkaXJlY3Rpb246IDEgfCAtMSk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHRoaXMuaXNEaXNhYmxlZCgpKSByZXR1cm47XG4gICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5mb2N1c05leHRPcHRpb24oZGlyZWN0aW9uKSk7XG4gIH1cblxuICBmb2N1c05leHQoZXZlbnQ6IEV2ZW50LCBkaXJlY3Rpb246IDEgfCAtMSk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5mb2N1c05leHRPcHRpb24oZGlyZWN0aW9uKTtcbiAgfVxuXG4gIGNsb3NlKGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgdHJpZ2dlciA9IHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZWxlY3QtdjJfX3RyaWdnZXInKSBhcyBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGw7XG4gICAgICB0cmlnZ2VyPy5mb2N1cygpO1xuICAgIH0pO1xuICB9XG5cbiAgc2VsZWN0KG9wdGlvbjogSW5wdXRPcHRpb24pOiB2b2lkIHtcbiAgICBpZiAob3B0aW9uLmRpc2FibGVkIHx8IHRoaXMuaXNEaXNhYmxlZCgpKSByZXR1cm47XG4gICAgdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/LnNldFZhbHVlKG9wdGlvbi5pZCk7XG4gICAgdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/Lm1hcmtBc0RpcnR5KCk7XG4gICAgdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/Lm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICB9XG5cbiAgc2VsZWN0ZWRPcHRpb24oKTogSW5wdXRPcHRpb24gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLm9yZGVyZWRPcHRpb25zKCkuZmluZChvcHRpb24gPT4gb3B0aW9uLmlkID09PSB0aGlzLnJlc29sdmVkUHJvcHMuY29udHJvbD8udmFsdWUpO1xuICB9XG5cbiAgb3JkZXJlZE9wdGlvbnMoKTogSW5wdXRPcHRpb25bXSB7XG4gICAgcmV0dXJuIFsuLi4odGhpcy5yZXNvbHZlZFByb3BzLm9wdGlvbnMgfHwgW10pXS5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG4gIH1cblxuICBpc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVkUHJvcHMuc3RhdGUgPT09IENvbXBvbmVudFN0YXRlcy5ESVNBQkxFRCB8fCAhIXRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sPy5kaXNhYmxlZDtcbiAgfVxuXG4gIGFyaWFMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVkUHJvcHMubGFiZWwgfHwgdGhpcy5yZXNvbHZlZFByb3BzLnBsYWNlaG9sZGVyIHx8IHRoaXMuaTE4bi50KCdzZWxlY3RPcHRpb24nKTtcbiAgfVxuXG4gIGljb25NYXNrKHNyYzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHVybChcIiR7c3JjfVwiKWA7XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVQcm9wcygpOiB2b2lkIHtcbiAgICBjb25zdCBwcmVzZXRQcm9wcyA9IHRoaXMucHJlc2V0ID8gKHRoaXMucHJlc2V0cy5nZXQoJ3NlbGVjdElucHV0VjInLCB0aGlzLnByZXNldCkgYXMgUGFydGlhbDxJbnB1dE1ldGFkYXRhPikgOiB7fTtcbiAgICB0aGlzLnJlc29sdmVkUHJvcHMgPSB7XG4gICAgICBsYWJlbDogJycsXG4gICAgICBzdGF0ZTogQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQsXG4gICAgICBvcHRpb25zOiBbXSxcbiAgICAgIC4uLnByZXNldFByb3BzLFxuICAgICAgLi4udGhpcy5wcm9wcyxcbiAgICB9IGFzIElucHV0TWV0YWRhdGE7XG4gIH1cblxuICBwcml2YXRlIHNldHVwQ29tcG9uZW50KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlc29sdmVkUHJvcHM/LndpdGhEZWZhdWx0IHx8IHRoaXMucmVzb2x2ZWRQcm9wcz8udmFsdWUpIHtcbiAgICAgIGFwcGx5RGVmYXVsdFZhbHVlVG9Db250cm9sKHRoaXMucmVzb2x2ZWRQcm9wcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05leHRPcHRpb24oZGlyZWN0aW9uOiAxIHwgLTEpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gQXJyYXkuZnJvbShcbiAgICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5zZWxlY3QtdjJfX29wdGlvbicpIGFzIE5vZGVMaXN0T2Y8SFRNTEJ1dHRvbkVsZW1lbnQ+LFxuICAgICk7XG4gICAgaWYgKCFvcHRpb25zLmxlbmd0aCkgcmV0dXJuO1xuICAgIGNvbnN0IGFjdGl2ZUluZGV4ID0gb3B0aW9ucy5maW5kSW5kZXgob3B0aW9uID0+IG9wdGlvbiA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XG4gICAgY29uc3QgbmV4dEluZGV4ID0gYWN0aXZlSW5kZXggPCAwID8gKGRpcmVjdGlvbiA+IDAgPyAwIDogb3B0aW9ucy5sZW5ndGggLSAxKSA6IGFjdGl2ZUluZGV4ICsgZGlyZWN0aW9uO1xuICAgIG9wdGlvbnNbKG5leHRJbmRleCArIG9wdGlvbnMubGVuZ3RoKSAlIG9wdGlvbnMubGVuZ3RoXT8uZm9jdXMoKTtcbiAgfVxufVxuIl19
|