oasys-lib 2.26.0 → 2.27.0-rc.1
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/fesm2022/oasys-lib.mjs +194 -346
- package/fesm2022/oasys-lib.mjs.map +1 -1
- package/index.d.ts +55 -86
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/assets/bloomandwild/variables.css +1 -1
- package/src/assets/bloomon/variables.css +1 -1
- package/src/assets/global/scss-breakpoints.scss +1 -1
package/fesm2022/oasys-lib.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ElementRef, Directive, Injectable, DOCUMENT, Inject, Input, ChangeDetectionStrategy, ViewEncapsulation, Component, InjectionToken, HostListener, EventEmitter, ViewChild, Output, ContentChild, NgModule, HostBinding, signal, forwardRef, computed, input, CUSTOM_ELEMENTS_SCHEMA,
|
|
2
|
+
import { inject, ElementRef, Directive, Injectable, DOCUMENT, Inject, Input, ChangeDetectionStrategy, ViewEncapsulation, Component, InjectionToken, HostListener, EventEmitter, ViewChild, Output, ContentChild, NgModule, HostBinding, signal, forwardRef, computed, input, CUSTOM_ELEMENTS_SCHEMA, output, viewChild, viewChildren, ContentChildren } from '@angular/core';
|
|
3
3
|
import { BehaviorSubject, Subject, Observable } from 'rxjs';
|
|
4
4
|
import { takeUntil, take, map } from 'rxjs/operators';
|
|
5
5
|
import * as i1 from '@angular/cdk/layout';
|
|
@@ -3204,84 +3204,84 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
3204
3204
|
type: Input
|
|
3205
3205
|
}] } });
|
|
3206
3206
|
|
|
3207
|
-
class
|
|
3208
|
-
|
|
3209
|
-
label;
|
|
3210
|
-
|
|
3211
|
-
|
|
3212
|
-
|
|
3213
|
-
|
|
3214
|
-
|
|
3215
|
-
|
|
3216
|
-
|
|
3217
|
-
|
|
3218
|
-
|
|
3207
|
+
class OasysComboboxComponent {
|
|
3208
|
+
// Required inputs
|
|
3209
|
+
label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
3210
|
+
// Optional inputs
|
|
3211
|
+
type = input('options', ...(ngDevMode ? [{ debugName: "type" }] : []));
|
|
3212
|
+
options = input([], ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
3213
|
+
optional = input(true, ...(ngDevMode ? [{ debugName: "optional" }] : []));
|
|
3214
|
+
hint = input(undefined, ...(ngDevMode ? [{ debugName: "hint" }] : []));
|
|
3215
|
+
header = input(undefined, ...(ngDevMode ? [{ debugName: "header" }] : []));
|
|
3216
|
+
footer = input(undefined, ...(ngDevMode ? [{ debugName: "footer" }] : []));
|
|
3217
|
+
autofocus = input(false, ...(ngDevMode ? [{ debugName: "autofocus" }] : []));
|
|
3218
|
+
disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
3219
|
+
selected = input(undefined, ...(ngDevMode ? [{ debugName: "selected" }] : []));
|
|
3219
3220
|
// Key value from options to be displayed as option label
|
|
3220
|
-
displayKey;
|
|
3221
|
+
displayKey = input(undefined, ...(ngDevMode ? [{ debugName: "displayKey" }] : []));
|
|
3221
3222
|
// Key value from options to be used as icon in option label
|
|
3222
|
-
iconNameKey;
|
|
3223
|
+
iconNameKey = input(undefined, ...(ngDevMode ? [{ debugName: "iconNameKey" }] : []));
|
|
3223
3224
|
// Key value from options be be value
|
|
3224
|
-
valueKey;
|
|
3225
|
+
valueKey = input(undefined, ...(ngDevMode ? [{ debugName: "valueKey" }] : []));
|
|
3225
3226
|
// Available for Autocomplete
|
|
3226
|
-
subtextKey;
|
|
3227
|
-
placeholder;
|
|
3227
|
+
subtextKey = input(undefined, ...(ngDevMode ? [{ debugName: "subtextKey" }] : []));
|
|
3228
|
+
placeholder = input(undefined, ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
|
|
3228
3229
|
// Will open the list of options on init
|
|
3229
|
-
showOptions = false;
|
|
3230
|
-
|
|
3231
|
-
|
|
3232
|
-
|
|
3233
|
-
|
|
3234
|
-
|
|
3235
|
-
|
|
3236
|
-
|
|
3237
|
-
|
|
3238
|
-
|
|
3230
|
+
showOptions = input(false, ...(ngDevMode ? [{ debugName: "showOptions" }] : []));
|
|
3231
|
+
// Accessibility labels — pass translated strings here when consuming in a localised app.
|
|
3232
|
+
// Visible (but hidden) text and aria-label of the autocomplete clear button.
|
|
3233
|
+
clearLabel = input('Clear', ...(ngDevMode ? [{ debugName: "clearLabel" }] : []));
|
|
3234
|
+
// Suffix appended to a selected option's aria-label, e.g. "Option 1 is selected".
|
|
3235
|
+
selectedLabel = input('is selected', ...(ngDevMode ? [{ debugName: "selectedLabel" }] : []));
|
|
3236
|
+
// Outputs
|
|
3237
|
+
didChange = output();
|
|
3238
|
+
didSearch = output();
|
|
3239
|
+
didEdit = output();
|
|
3240
|
+
// View queries
|
|
3241
|
+
textInput = viewChild('textinput', ...(ngDevMode ? [{ debugName: "textInput", read: ElementRef }] : [{
|
|
3242
|
+
read: ElementRef,
|
|
3243
|
+
}]));
|
|
3244
|
+
combobox = viewChild('combobox', ...(ngDevMode ? [{ debugName: "combobox", read: ElementRef }] : [{
|
|
3245
|
+
read: ElementRef,
|
|
3246
|
+
}]));
|
|
3247
|
+
optionsList = viewChildren('option', ...(ngDevMode ? [{ debugName: "optionsList", read: ElementRef }] : [{
|
|
3248
|
+
read: ElementRef,
|
|
3249
|
+
}]));
|
|
3250
|
+
// Internal mutable state as signals
|
|
3251
|
+
textValue = signal('', ...(ngDevMode ? [{ debugName: "textValue" }] : []));
|
|
3252
|
+
// only show validation after a change event (ie. blur)
|
|
3253
|
+
inputDidChange = signal(false, ...(ngDevMode ? [{ debugName: "inputDidChange" }] : []));
|
|
3254
|
+
displayOptions = signal([], ...(ngDevMode ? [{ debugName: "displayOptions" }] : []));
|
|
3255
|
+
_selectedOption = signal(undefined, ...(ngDevMode ? [{ debugName: "_selectedOption" }] : []));
|
|
3256
|
+
_focusedOption = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusedOption" }] : []));
|
|
3257
|
+
_focusedOptionId = signal(0, ...(ngDevMode ? [{ debugName: "_focusedOptionId" }] : []));
|
|
3239
3258
|
textInputClicked = false;
|
|
3240
|
-
id;
|
|
3259
|
+
id = signal('', ...(ngDevMode ? [{ debugName: "id" }] : []));
|
|
3241
3260
|
/** Whether or not the overlay panel is open. */
|
|
3242
3261
|
panelOpen = signal(false, ...(ngDevMode ? [{ debugName: "panelOpen" }] : []));
|
|
3243
|
-
openedViaKeyboard = false;
|
|
3244
|
-
/**
|
|
3245
|
-
|
|
3246
|
-
|
|
3247
|
-
|
|
3248
|
-
|
|
3249
|
-
|
|
3250
|
-
|
|
3251
|
-
|
|
3252
|
-
|
|
3253
|
-
|
|
3254
|
-
|
|
3255
|
-
|
|
3262
|
+
openedViaKeyboard = signal(false, ...(ngDevMode ? [{ debugName: "openedViaKeyboard" }] : []));
|
|
3263
|
+
/** Selected option */
|
|
3264
|
+
selectedOption = this._selectedOption.asReadonly();
|
|
3265
|
+
/** Focused option */
|
|
3266
|
+
focusedOption = this._focusedOption.asReadonly();
|
|
3267
|
+
/** Id of the focused option */
|
|
3268
|
+
focusedId = this._focusedOptionId.asReadonly();
|
|
3269
|
+
shouldShowFocus = computed(() => this.openedViaKeyboard() && this.panelOpen(), ...(ngDevMode ? [{ debugName: "shouldShowFocus" }] : []));
|
|
3270
|
+
valueOptionKey = computed(() => this.valueKey() ?? 'value', ...(ngDevMode ? [{ debugName: "valueOptionKey" }] : []));
|
|
3271
|
+
displayOptionKey = computed(() => this.displayKey() ?? 'label', ...(ngDevMode ? [{ debugName: "displayOptionKey" }] : []));
|
|
3272
|
+
subtextOptionKey = computed(() => this.subtextKey() ?? 'subtext', ...(ngDevMode ? [{ debugName: "subtextOptionKey" }] : []));
|
|
3273
|
+
document = inject(DOCUMENT);
|
|
3274
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
|
|
3275
|
+
onChange = (_) => { };
|
|
3276
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
3277
|
+
onTouched = () => { };
|
|
3256
3278
|
/**
|
|
3257
|
-
*
|
|
3279
|
+
* Click outside combobox close the panel
|
|
3258
3280
|
*/
|
|
3259
|
-
get focusedId() {
|
|
3260
|
-
return this._focusedOptionId;
|
|
3261
|
-
}
|
|
3262
|
-
get shouldShowFocus() {
|
|
3263
|
-
return this.openedViaKeyboard && this.panelOpen();
|
|
3264
|
-
}
|
|
3265
|
-
get valueOptionKey() {
|
|
3266
|
-
return this.valueKey ?? 'value';
|
|
3267
|
-
}
|
|
3268
|
-
get displayOptionKey() {
|
|
3269
|
-
return this.displayKey ?? 'label';
|
|
3270
|
-
}
|
|
3271
|
-
get subtextOptionKey() {
|
|
3272
|
-
return this.subtextKey ?? 'subtext';
|
|
3273
|
-
}
|
|
3274
|
-
textInput;
|
|
3275
|
-
combobox;
|
|
3276
|
-
optionsList;
|
|
3277
|
-
constructor(document) {
|
|
3278
|
-
this.document = document;
|
|
3279
|
-
}
|
|
3280
|
-
onChange = (_) => { }; // eslint-disable-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
|
|
3281
|
-
onTouched = () => { }; // eslint-disable-line @typescript-eslint/no-empty-function
|
|
3282
3281
|
onClick(targetElement) {
|
|
3283
|
-
|
|
3284
|
-
|
|
3282
|
+
const comboboxEl = this.combobox()?.nativeElement;
|
|
3283
|
+
if (this.panelOpen() && comboboxEl) {
|
|
3284
|
+
const clickedInside = comboboxEl.contains(targetElement);
|
|
3285
3285
|
if (!clickedInside) {
|
|
3286
3286
|
this.closePanel();
|
|
3287
3287
|
this.textInputClicked = false;
|
|
@@ -3293,79 +3293,73 @@ class ComboboxComponent {
|
|
|
3293
3293
|
* @param changes
|
|
3294
3294
|
*/
|
|
3295
3295
|
ngOnChanges(changes) {
|
|
3296
|
-
// Detects if the autocomplete options list is
|
|
3297
|
-
// Example: Address search can have options assigned to a group of options. One postcode to have x number of
|
|
3298
|
-
// If Options list is Changed as part of group option we let the options panel open to let user select a single option.
|
|
3299
|
-
if (this.type === 'autocomplete') {
|
|
3296
|
+
// Detects if the autocomplete options list is changed after a selection of an option.
|
|
3297
|
+
// Example: Address search can have options assigned to a group of options. One postcode to have x number of addresses.
|
|
3298
|
+
// If Options list is Changed as part of group option we let the options panel open to let user select a single option.
|
|
3299
|
+
if (this.type() === 'autocomplete') {
|
|
3300
3300
|
const optionchanges = changes['options'];
|
|
3301
|
-
if (optionchanges
|
|
3302
|
-
|
|
3301
|
+
if (optionchanges &&
|
|
3302
|
+
optionchanges.currentValue !== optionchanges.previousValue &&
|
|
3303
|
+
this.options().length !== 0 &&
|
|
3303
3304
|
!optionchanges.firstChange) {
|
|
3304
3305
|
this.resetOptionsList();
|
|
3305
3306
|
this.openPanelWithoutSelectingOption();
|
|
3306
3307
|
}
|
|
3307
3308
|
}
|
|
3308
3309
|
}
|
|
3309
|
-
/**
|
|
3310
|
-
* On Init
|
|
3311
|
-
*/
|
|
3312
3310
|
ngOnInit() {
|
|
3313
|
-
this.id
|
|
3311
|
+
this.id.set(`${this.label()}${Math.random()}`);
|
|
3314
3312
|
this.resetSelection();
|
|
3315
3313
|
this.resetOptionsList();
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
const selectedValue =
|
|
3320
|
-
const
|
|
3321
|
-
|
|
3322
|
-
|
|
3314
|
+
const selected = this.selected();
|
|
3315
|
+
const valueKey = this.valueOptionKey();
|
|
3316
|
+
if (selected && typeof selected === 'object' && valueKey in selected) {
|
|
3317
|
+
const selectedValue = selected[valueKey];
|
|
3318
|
+
const opts = this.options();
|
|
3319
|
+
const selectedIndex = opts.findIndex((option) => {
|
|
3320
|
+
if (option && typeof option === 'object' && valueKey in option) {
|
|
3321
|
+
return option[valueKey] === selectedValue;
|
|
3323
3322
|
}
|
|
3324
3323
|
return false;
|
|
3325
3324
|
});
|
|
3326
3325
|
if (selectedIndex >= 0) {
|
|
3327
|
-
this.selectOption(
|
|
3326
|
+
this.selectOption(opts[selectedIndex], selectedIndex);
|
|
3328
3327
|
this.closePanel();
|
|
3329
3328
|
}
|
|
3330
3329
|
}
|
|
3331
|
-
if (this.showOptions) {
|
|
3330
|
+
if (this.showOptions()) {
|
|
3332
3331
|
this.openPanelWithoutSelectingOption();
|
|
3333
3332
|
}
|
|
3334
3333
|
}
|
|
3335
|
-
/**
|
|
3336
|
-
* After View Init
|
|
3337
|
-
*/
|
|
3338
3334
|
ngAfterViewInit() {
|
|
3339
3335
|
this.setupValidationListener();
|
|
3340
3336
|
}
|
|
3341
3337
|
/**
|
|
3342
3338
|
* Select Option
|
|
3343
|
-
* @param option
|
|
3344
3339
|
*/
|
|
3345
3340
|
selectOption(option, index) {
|
|
3346
|
-
this._selectedOption
|
|
3347
|
-
this._focusedOptionId
|
|
3348
|
-
this._focusedOption
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
|
|
3352
|
-
|
|
3353
|
-
this.
|
|
3341
|
+
this._selectedOption.set(option);
|
|
3342
|
+
this._focusedOptionId.set(index ?? 0);
|
|
3343
|
+
this._focusedOption.set(option);
|
|
3344
|
+
const displayKey = this.displayOptionKey();
|
|
3345
|
+
if (option && typeof option === 'object' && displayKey in option) {
|
|
3346
|
+
this.textValue.set(option[displayKey]);
|
|
3347
|
+
}
|
|
3348
|
+
this.onChange(this.textValue());
|
|
3349
|
+
this.didChange.emit(this.selectedOption());
|
|
3354
3350
|
this.onTouched();
|
|
3355
3351
|
}
|
|
3356
3352
|
/**
|
|
3357
3353
|
* On Key Navigation
|
|
3358
|
-
* @param event
|
|
3359
3354
|
*/
|
|
3360
3355
|
onKeyDown(event) {
|
|
3361
3356
|
// For 'options' type, keyboard navigation is handled by the combobox container
|
|
3362
3357
|
// For 'autocomplete' type, keyboard navigation is handled by the input element
|
|
3363
|
-
const isOptionsType = this.type === 'options';
|
|
3364
|
-
const isAutocompleteType = this.type === 'autocomplete';
|
|
3365
|
-
const isFromInput = event.target === this.textInput?.nativeElement;
|
|
3366
|
-
const
|
|
3367
|
-
|
|
3368
|
-
// Only handle keyboard navigation from appropriate elements
|
|
3358
|
+
const isOptionsType = this.type() === 'options';
|
|
3359
|
+
const isAutocompleteType = this.type() === 'autocomplete';
|
|
3360
|
+
const isFromInput = event.target === this.textInput()?.nativeElement;
|
|
3361
|
+
const comboboxEl = this.combobox()?.nativeElement;
|
|
3362
|
+
const isFromCombobox = event.target === comboboxEl || (comboboxEl?.contains(event.target) ?? false);
|
|
3369
3363
|
if (isOptionsType && !isFromCombobox) {
|
|
3370
3364
|
return;
|
|
3371
3365
|
}
|
|
@@ -3373,7 +3367,7 @@ class ComboboxComponent {
|
|
|
3373
3367
|
return;
|
|
3374
3368
|
}
|
|
3375
3369
|
const isPanelOpen = this.panelOpen();
|
|
3376
|
-
const hasOptions = this.displayOptions.length > 0;
|
|
3370
|
+
const hasOptions = this.displayOptions().length > 0;
|
|
3377
3371
|
switch (event.key) {
|
|
3378
3372
|
case 'ArrowDown':
|
|
3379
3373
|
event.preventDefault();
|
|
@@ -3382,7 +3376,7 @@ class ComboboxComponent {
|
|
|
3382
3376
|
this.openPanelAndSelectOption();
|
|
3383
3377
|
}
|
|
3384
3378
|
else if (isPanelOpen && hasOptions) {
|
|
3385
|
-
this.openedViaKeyboard
|
|
3379
|
+
this.openedViaKeyboard.set(true);
|
|
3386
3380
|
this.navigateOptions('down');
|
|
3387
3381
|
}
|
|
3388
3382
|
break;
|
|
@@ -3393,7 +3387,7 @@ class ComboboxComponent {
|
|
|
3393
3387
|
this.openPanelAndSelectOption();
|
|
3394
3388
|
}
|
|
3395
3389
|
else if (isPanelOpen && hasOptions) {
|
|
3396
|
-
this.openedViaKeyboard
|
|
3390
|
+
this.openedViaKeyboard.set(true);
|
|
3397
3391
|
this.navigateOptions('up');
|
|
3398
3392
|
}
|
|
3399
3393
|
break;
|
|
@@ -3401,10 +3395,10 @@ class ComboboxComponent {
|
|
|
3401
3395
|
case ' ':
|
|
3402
3396
|
event.preventDefault();
|
|
3403
3397
|
event.stopPropagation();
|
|
3404
|
-
if (!isPanelOpen && hasOptions &&
|
|
3398
|
+
if (!isPanelOpen && hasOptions && isOptionsType) {
|
|
3405
3399
|
this.openPanelAndSelectOption();
|
|
3406
3400
|
}
|
|
3407
|
-
else if (!isPanelOpen && hasOptions &&
|
|
3401
|
+
else if (!isPanelOpen && hasOptions && isAutocompleteType) {
|
|
3408
3402
|
this.openPanelWithoutSelectingOption();
|
|
3409
3403
|
}
|
|
3410
3404
|
else if (isPanelOpen) {
|
|
@@ -3419,7 +3413,7 @@ class ComboboxComponent {
|
|
|
3419
3413
|
this.closePanel();
|
|
3420
3414
|
}
|
|
3421
3415
|
else {
|
|
3422
|
-
this.textValue
|
|
3416
|
+
this.textValue.set('');
|
|
3423
3417
|
this.resetSelection();
|
|
3424
3418
|
}
|
|
3425
3419
|
break;
|
|
@@ -3435,8 +3429,8 @@ class ComboboxComponent {
|
|
|
3435
3429
|
* Toggle Options Panel
|
|
3436
3430
|
*/
|
|
3437
3431
|
togglePanel() {
|
|
3438
|
-
this.openedViaKeyboard
|
|
3439
|
-
this.panelOpen.
|
|
3432
|
+
this.openedViaKeyboard.set(false);
|
|
3433
|
+
this.panelOpen.update((open) => !open);
|
|
3440
3434
|
if (this.panelOpen()) {
|
|
3441
3435
|
this.initSelectedFocus();
|
|
3442
3436
|
setTimeout(() => {
|
|
@@ -3451,20 +3445,18 @@ class ComboboxComponent {
|
|
|
3451
3445
|
event?.preventDefault();
|
|
3452
3446
|
if (!this.panelOpen()) {
|
|
3453
3447
|
this.panelOpen.set(true);
|
|
3454
|
-
this._focusedOptionId
|
|
3448
|
+
this._focusedOptionId.set(-1);
|
|
3455
3449
|
setTimeout(() => {
|
|
3456
3450
|
this.scrollFocusedOptionIntoView();
|
|
3457
3451
|
}, 0);
|
|
3458
3452
|
}
|
|
3459
3453
|
}
|
|
3460
3454
|
openPanelAndSelectOption() {
|
|
3461
|
-
if (!this.panelOpen() && this.displayOptions.length > 0) {
|
|
3462
|
-
this.openedViaKeyboard
|
|
3455
|
+
if (!this.panelOpen() && this.displayOptions().length > 0) {
|
|
3456
|
+
this.openedViaKeyboard.set(true);
|
|
3463
3457
|
this.panelOpen.set(true);
|
|
3464
3458
|
this.initSelectedFocus();
|
|
3465
|
-
|
|
3466
|
-
this.combobox.nativeElement.focus();
|
|
3467
|
-
}
|
|
3459
|
+
this.combobox()?.nativeElement.focus();
|
|
3468
3460
|
setTimeout(() => {
|
|
3469
3461
|
this.scrollFocusedOptionIntoView();
|
|
3470
3462
|
}, 0);
|
|
@@ -3475,91 +3467,80 @@ class ComboboxComponent {
|
|
|
3475
3467
|
*/
|
|
3476
3468
|
closePanel() {
|
|
3477
3469
|
this.panelOpen.set(false);
|
|
3478
|
-
this.openedViaKeyboard
|
|
3470
|
+
this.openedViaKeyboard.set(false);
|
|
3479
3471
|
this.initSelectedFocus();
|
|
3480
3472
|
}
|
|
3481
3473
|
/**
|
|
3482
3474
|
* Get Input display value
|
|
3483
|
-
* @param textValue
|
|
3484
3475
|
*/
|
|
3485
3476
|
writeValue(textValue) {
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3489
|
-
|
|
3490
|
-
this.textValue
|
|
3477
|
+
const selectedOpt = this._selectedOption();
|
|
3478
|
+
const displayKey = this.displayOptionKey();
|
|
3479
|
+
if ((this.selected() && typeof textValue !== 'string') || textValue === '') {
|
|
3480
|
+
if (selectedOpt && typeof selectedOpt === 'object' && displayKey in selectedOpt) {
|
|
3481
|
+
this.textValue.set(selectedOpt[displayKey]);
|
|
3491
3482
|
}
|
|
3492
3483
|
}
|
|
3493
3484
|
else {
|
|
3494
|
-
this.textValue
|
|
3485
|
+
this.textValue.set(textValue);
|
|
3495
3486
|
}
|
|
3496
3487
|
}
|
|
3497
|
-
/**
|
|
3498
|
-
* Register Form input chnage
|
|
3499
|
-
* @param fn
|
|
3500
|
-
*/
|
|
3501
3488
|
registerOnChange(fn) {
|
|
3502
3489
|
this.onChange = fn;
|
|
3503
3490
|
}
|
|
3504
|
-
/**
|
|
3505
|
-
* Register form input touch
|
|
3506
|
-
* @param fn
|
|
3507
|
-
*/
|
|
3508
3491
|
registerOnTouched(fn) {
|
|
3509
3492
|
this.onTouched = fn;
|
|
3510
3493
|
}
|
|
3511
3494
|
/**
|
|
3512
|
-
* On Model Change
|
|
3513
|
-
* @param textValue
|
|
3495
|
+
* On Model Change (options type)
|
|
3514
3496
|
*/
|
|
3515
3497
|
onModelChange(textValue) {
|
|
3516
|
-
this.textValue
|
|
3517
|
-
this.inputDidChange
|
|
3498
|
+
this.textValue.set(textValue);
|
|
3499
|
+
this.inputDidChange.set(true);
|
|
3518
3500
|
this.onChange(textValue);
|
|
3519
3501
|
this.onTouched();
|
|
3520
|
-
this.didChange.emit(this.selectedOption);
|
|
3502
|
+
this.didChange.emit(this.selectedOption());
|
|
3521
3503
|
}
|
|
3522
3504
|
/**
|
|
3523
|
-
* On Model Change
|
|
3524
|
-
* @param textValue
|
|
3505
|
+
* On Model Change (autocomplete type)
|
|
3525
3506
|
*/
|
|
3526
3507
|
onModelChangeAutocomplete(textValue) {
|
|
3527
|
-
this.textValue
|
|
3528
|
-
this.inputDidChange
|
|
3508
|
+
this.textValue.set(textValue);
|
|
3509
|
+
this.inputDidChange.set(true);
|
|
3529
3510
|
this.onChange(textValue);
|
|
3530
3511
|
this.onTouched();
|
|
3531
|
-
this.didChange.emit(this.selectedOption);
|
|
3512
|
+
this.didChange.emit(this.selectedOption());
|
|
3532
3513
|
this.onAutocompleteListSearch(textValue);
|
|
3533
3514
|
}
|
|
3534
3515
|
/**
|
|
3535
3516
|
* Event handling for Input value
|
|
3536
3517
|
*/
|
|
3537
3518
|
handleEvent() {
|
|
3538
|
-
this.inputDidChange
|
|
3539
|
-
const inputElement = this.document.getElementById(this.id
|
|
3519
|
+
this.inputDidChange.set(true);
|
|
3520
|
+
const inputElement = this.document.getElementById(this.id());
|
|
3540
3521
|
inputElement?.removeEventListener('change', this);
|
|
3541
3522
|
}
|
|
3542
3523
|
/**
|
|
3543
3524
|
* Clean Input
|
|
3544
3525
|
*/
|
|
3545
3526
|
cleanInput() {
|
|
3546
|
-
this.textValue
|
|
3527
|
+
this.textValue.set('');
|
|
3547
3528
|
this.resetSelection();
|
|
3548
3529
|
this.resetOptionsList();
|
|
3549
3530
|
this.closePanel();
|
|
3550
|
-
this.didSearch.emit(this.textValue);
|
|
3531
|
+
this.didSearch.emit(this.textValue());
|
|
3551
3532
|
}
|
|
3552
3533
|
/**
|
|
3553
3534
|
* On footer action
|
|
3554
3535
|
*/
|
|
3555
3536
|
onFooterAction() {
|
|
3556
|
-
this.didEdit.emit();
|
|
3537
|
+
this.didEdit.emit(undefined);
|
|
3557
3538
|
}
|
|
3558
3539
|
/**
|
|
3559
3540
|
* On Focus Input
|
|
3560
3541
|
*/
|
|
3561
3542
|
onFocusInput() {
|
|
3562
|
-
this.textInput?.nativeElement.focus();
|
|
3543
|
+
this.textInput()?.nativeElement.focus();
|
|
3563
3544
|
}
|
|
3564
3545
|
onTextInputClick() {
|
|
3565
3546
|
if (this.textInputClicked) {
|
|
@@ -3571,7 +3552,7 @@ class ComboboxComponent {
|
|
|
3571
3552
|
}
|
|
3572
3553
|
onScreenReaderFocus() {
|
|
3573
3554
|
const isPanelOpen = this.panelOpen();
|
|
3574
|
-
const hasOptions = this.displayOptions.length > 0;
|
|
3555
|
+
const hasOptions = this.displayOptions().length > 0;
|
|
3575
3556
|
if (!isPanelOpen && hasOptions) {
|
|
3576
3557
|
this.openPanelAndSelectOption();
|
|
3577
3558
|
}
|
|
@@ -3582,7 +3563,6 @@ class ComboboxComponent {
|
|
|
3582
3563
|
}
|
|
3583
3564
|
/**
|
|
3584
3565
|
* Search in Autocomplete
|
|
3585
|
-
* @param textValue
|
|
3586
3566
|
*/
|
|
3587
3567
|
onAutocompleteListSearch(textValue) {
|
|
3588
3568
|
if (!textValue) {
|
|
@@ -3591,73 +3571,76 @@ class ComboboxComponent {
|
|
|
3591
3571
|
}
|
|
3592
3572
|
else {
|
|
3593
3573
|
this.openPanelWithoutSelectingOption();
|
|
3594
|
-
|
|
3595
|
-
return (this.checkIncludesSubstring(option, this.displayOptionKey) ??
|
|
3596
|
-
this.checkIncludesSubstring(option, this.subtextOptionKey));
|
|
3574
|
+
const filtered = this.options().filter((option) => {
|
|
3575
|
+
return (this.checkIncludesSubstring(option, this.displayOptionKey()) ??
|
|
3576
|
+
this.checkIncludesSubstring(option, this.subtextOptionKey()));
|
|
3597
3577
|
});
|
|
3598
|
-
|
|
3578
|
+
this.displayOptions.set(filtered);
|
|
3579
|
+
if (filtered.length === 0) {
|
|
3599
3580
|
this.closePanel();
|
|
3600
3581
|
}
|
|
3601
3582
|
}
|
|
3602
|
-
this.textInput?.nativeElement.focus();
|
|
3603
|
-
this.didSearch.emit(this.textValue);
|
|
3583
|
+
this.textInput()?.nativeElement.focus();
|
|
3584
|
+
this.didSearch.emit(this.textValue());
|
|
3604
3585
|
}
|
|
3605
3586
|
/**
|
|
3606
|
-
* Check a
|
|
3607
|
-
* @param option
|
|
3608
|
-
* @returns
|
|
3587
|
+
* Check a substring is included in option value
|
|
3609
3588
|
*/
|
|
3610
3589
|
checkIncludesSubstring(option, key) {
|
|
3611
3590
|
return option[key]
|
|
3612
3591
|
?.toString()
|
|
3613
3592
|
.toLowerCase()
|
|
3614
|
-
.includes(this.textValue.toLowerCase());
|
|
3593
|
+
.includes(this.textValue().toLowerCase());
|
|
3615
3594
|
}
|
|
3616
3595
|
/**
|
|
3617
3596
|
* Set Input Validators
|
|
3618
3597
|
*/
|
|
3619
3598
|
setupValidationListener() {
|
|
3620
|
-
const inputElement = this.document.getElementById(this.id
|
|
3599
|
+
const inputElement = this.document.getElementById(this.id());
|
|
3621
3600
|
inputElement?.addEventListener('change', this);
|
|
3622
3601
|
}
|
|
3623
3602
|
/**
|
|
3624
3603
|
* Init focus mode or set the selected option as focused
|
|
3625
3604
|
*/
|
|
3626
3605
|
initSelectedFocus() {
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3606
|
+
const opts = this.displayOptions();
|
|
3607
|
+
if (this.panelOpen() && opts.length > 0) {
|
|
3608
|
+
const selectedOpt = this._selectedOption();
|
|
3609
|
+
if (selectedOpt) {
|
|
3610
|
+
const selectedIndex = opts.findIndex((option) => option === selectedOpt);
|
|
3630
3611
|
if (selectedIndex >= 0) {
|
|
3631
|
-
this._focusedOptionId
|
|
3632
|
-
this._focusedOption
|
|
3612
|
+
this._focusedOptionId.set(selectedIndex);
|
|
3613
|
+
this._focusedOption.set(selectedOpt);
|
|
3633
3614
|
return;
|
|
3634
3615
|
}
|
|
3635
3616
|
}
|
|
3636
|
-
this._focusedOptionId
|
|
3637
|
-
this._focusedOption
|
|
3617
|
+
this._focusedOptionId.set(0);
|
|
3618
|
+
this._focusedOption.set(opts[0]);
|
|
3638
3619
|
this.autocompleteOptionTextPreview();
|
|
3639
3620
|
}
|
|
3640
3621
|
}
|
|
3641
3622
|
navigateOptions(direction) {
|
|
3642
|
-
|
|
3623
|
+
const opts = this.displayOptions();
|
|
3624
|
+
if (opts.length === 0) {
|
|
3643
3625
|
return;
|
|
3644
3626
|
}
|
|
3645
3627
|
if (direction === 'down') {
|
|
3646
|
-
this._focusedOptionId
|
|
3628
|
+
this._focusedOptionId.update((id) => Math.min(id + 1, opts.length - 1));
|
|
3647
3629
|
}
|
|
3648
3630
|
else {
|
|
3649
|
-
this._focusedOptionId
|
|
3631
|
+
this._focusedOptionId.update((id) => Math.max(id - 1, 0));
|
|
3650
3632
|
}
|
|
3651
|
-
this._focusedOption
|
|
3633
|
+
this._focusedOption.set(opts[this._focusedOptionId()]);
|
|
3652
3634
|
this.pressEnter();
|
|
3653
3635
|
this.autocompleteOptionTextPreview();
|
|
3654
3636
|
this.scrollFocusedOptionIntoView();
|
|
3655
3637
|
}
|
|
3656
3638
|
scrollFocusedOptionIntoView() {
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3639
|
+
const list = this.optionsList();
|
|
3640
|
+
const id = this._focusedOptionId();
|
|
3641
|
+
const opts = this.displayOptions();
|
|
3642
|
+
if (list.length > 0 && id >= 0 && id < opts.length) {
|
|
3643
|
+
const focusedElement = list[id]?.nativeElement;
|
|
3661
3644
|
if (focusedElement) {
|
|
3662
3645
|
focusedElement.scrollIntoView({
|
|
3663
3646
|
behavior: 'smooth',
|
|
@@ -3670,56 +3653,57 @@ class ComboboxComponent {
|
|
|
3670
3653
|
* Change textValue to preview the option in autocomplete
|
|
3671
3654
|
*/
|
|
3672
3655
|
autocompleteOptionTextPreview() {
|
|
3673
|
-
|
|
3674
|
-
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3656
|
+
const focused = this._focusedOption();
|
|
3657
|
+
const displayKey = this.displayOptionKey();
|
|
3658
|
+
if (this.type() === 'autocomplete' &&
|
|
3659
|
+
focused &&
|
|
3660
|
+
typeof focused === 'object' &&
|
|
3661
|
+
displayKey in focused) {
|
|
3662
|
+
this.textValue.set(focused[displayKey]);
|
|
3678
3663
|
}
|
|
3679
3664
|
}
|
|
3680
3665
|
/**
|
|
3681
3666
|
* Press Enter inside Options Panel
|
|
3682
3667
|
*/
|
|
3683
3668
|
pressEnter() {
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
this.
|
|
3688
|
-
this.selectOption(this.displayOptions[this._focusedOptionId], this._focusedOptionId);
|
|
3669
|
+
const opts = this.displayOptions();
|
|
3670
|
+
const id = this._focusedOptionId();
|
|
3671
|
+
if (this.panelOpen() && opts.length > 0 && id >= 0 && id < opts.length) {
|
|
3672
|
+
this.selectOption(opts[id], id);
|
|
3689
3673
|
}
|
|
3690
3674
|
}
|
|
3691
3675
|
/**
|
|
3692
3676
|
* Reset selected option
|
|
3693
3677
|
*/
|
|
3694
3678
|
resetSelection() {
|
|
3695
|
-
this._selectedOption
|
|
3696
|
-
this._focusedOption
|
|
3697
|
-
this._focusedOptionId
|
|
3679
|
+
this._selectedOption.set(undefined);
|
|
3680
|
+
this._focusedOption.set(undefined);
|
|
3681
|
+
this._focusedOptionId.set(0);
|
|
3698
3682
|
}
|
|
3699
3683
|
/**
|
|
3700
3684
|
* Reset to original or unfiltered option list
|
|
3701
3685
|
*/
|
|
3702
3686
|
resetOptionsList() {
|
|
3703
|
-
this.displayOptions
|
|
3687
|
+
this.displayOptions.set(this.options());
|
|
3704
3688
|
}
|
|
3705
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type:
|
|
3706
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type:
|
|
3689
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3690
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: OasysComboboxComponent, isStandalone: true, selector: "ui-combobox", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, optional: { classPropertyName: "optional", publicName: "optional", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, footer: { classPropertyName: "footer", publicName: "footer", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, displayKey: { classPropertyName: "displayKey", publicName: "displayKey", isSignal: true, isRequired: false, transformFunction: null }, iconNameKey: { classPropertyName: "iconNameKey", publicName: "iconNameKey", isSignal: true, isRequired: false, transformFunction: null }, valueKey: { classPropertyName: "valueKey", publicName: "valueKey", isSignal: true, isRequired: false, transformFunction: null }, subtextKey: { classPropertyName: "subtextKey", publicName: "subtextKey", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, showOptions: { classPropertyName: "showOptions", publicName: "showOptions", isSignal: true, isRequired: false, transformFunction: null }, clearLabel: { classPropertyName: "clearLabel", publicName: "clearLabel", isSignal: true, isRequired: false, transformFunction: null }, selectedLabel: { classPropertyName: "selectedLabel", publicName: "selectedLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { didChange: "didChange", didSearch: "didSearch", didEdit: "didEdit" }, host: { listeners: { "document:click": "onClick($event.target)" } }, providers: [
|
|
3707
3691
|
{
|
|
3708
3692
|
provide: NG_VALUE_ACCESSOR,
|
|
3709
|
-
useExisting: forwardRef(() =>
|
|
3693
|
+
useExisting: forwardRef(() => OasysComboboxComponent),
|
|
3710
3694
|
multi: true,
|
|
3711
3695
|
},
|
|
3712
|
-
], viewQueries: [{ propertyName: "textInput", first: true, predicate: ["textinput"], descendants: true, read: ElementRef }, { propertyName: "combobox", first: true, predicate: ["combobox"], descendants: true, read: ElementRef }, { propertyName: "optionsList", predicate: ["option"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ui-stack class=\"ui-combobox-container\" stack_gap=\"tight\">\n <div class=\"ui-combobox text-body--default text-body--regular\">\n <!-- Compbobox Options Input -->\n @if (type === 'options') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (mousedown)=\"togglePanel()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n [attr.disabled]=\"disabled || null\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n [class.keyboard-focus]=\"shouldShowFocus\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id\">{{ label }}</label>\n </div>\n <input\n #textinput\n (focus)=\"onScreenReaderFocus()\"\n [id]=\"id\"\n [name]=\"id\"\n [ngModel]=\"textValue\"\n (ngModelChange)=\"onModelChange($event)\"\n (blur)=\"onModelChange(textValue)\"\n [ngClass]=\"inputDidChange ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled || null\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"'on'\"\n [required]=\"!optional\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"selectedOption\"\n [placeholder]=\"placeholder || ''\"\n readonly=\"readonly\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n <!-- Select Icon Chevron Area -->\n <div class=\"icon-container\" [ngClass]=\"{ expand: panelOpen() }\">\n <ui-icon icon_name=\"chevron-down\"></ui-icon>\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Autocomplete Input -->\n @if (type === 'autocomplete') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocusInput()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n [class.keyboard-focus]=\"shouldShowFocus\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id\">{{ label }}</label>\n </div>\n <input\n #textinput\n [id]=\"id\"\n [name]=\"id\"\n [ngModel]=\"textValue\"\n (click)=\"onTextInputClick()\"\n (ngModelChange)=\"onModelChangeAutocomplete($event)\"\n [ngClass]=\"inputDidChange ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled || null\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"'list'\"\n [required]=\"!optional\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"textValue\"\n [placeholder]=\"placeholder || ''\"\n role=\"combobox\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n\n <!-- Combobox Icon Clear Area -->\n <div class=\"icon-container\" [attr.aria-label]=\"'clean'\" (click)=\"cleanInput()\">\n @if (textValue) {\n <ui-icon icon_name=\"close\"></ui-icon>\n }\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Options Panel -->\n @if (panelOpen()) {\n <div\n class=\"ui-combobox-options\"\n [ngClass]=\"{ expand: panelOpen(), 'keyboard-open': shouldShowFocus }\"\n role=\"listbox\"\n id=\"activedescendent-list\"\n >\n <!-- Autocomplete Options Panel Header -->\n @if (header && type === 'autocomplete') {\n <div class=\"ui-combobox-header text-body--supporting\">\n <span>{{ header }}</span>\n </div>\n }\n\n <!-- Options list -->\n @for (option of displayOptions; track option; let i = $index) {\n <div\n #option\n class=\"ui-combobox-option\"\n [ngClass]=\"{\n selected: selectedOption === option && (!shouldShowFocus || focusedOption === option),\n focus: shouldShowFocus && focusedOption === option,\n }\"\n (click)=\"selectOption(option, i)\"\n (keydown)=\"onKeyDown($event)\"\n [id]=\"'activedescendent-opt-' + i\"\n [attr.aria-selected]=\"selectedOption === option\"\n [attr.aria-label]=\"\n selectedOption === option\n ? option[displayOptionKey] + ' is selected'\n : option[displayOptionKey]\n \"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <!-- Option display -->\n <div\n [attr.value]=\"valueKey ? option[valueKey] : option.value\"\n [attr.ngValue]=\"displayKey ? option[displayKey] : option.label\"\n >\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_gap=\"tight\">\n @if (option.icon_name || (iconNameKey && option[iconNameKey])) {\n <ui-icon\n [icon_name]=\"iconNameKey ? option[iconNameKey] : option.icon_name\"\n ></ui-icon>\n }\n <!-- Display options label -->\n @if (type === 'options') {\n <span>{{ option[displayOptionKey] }}</span>\n }\n\n <!-- Display autocomplete option information and emphasis-->\n @if (type === 'autocomplete') {\n <ui-stack stack_gap=\"tiny\">\n <span\n ui-emphasis\n [searchText]=\"textValue\"\n [displayParagraph]=\"option[displayOptionKey]\"\n >\n </span>\n <p class=\"foreground-secondary-text\">\n {{ option[subtextOptionKey] }}\n </p>\n </ui-stack>\n }\n </ui-stack>\n </div>\n\n <!-- Selected icon -->\n @if (selectedOption === option) {\n <ui-icon icon_name=\"tick\"></ui-icon>\n }\n </ui-stack>\n </div>\n }\n <!-- Autocomplete Options Panel Footer -->\n @if (footer && type === 'autocomplete') {\n <div class=\"ui-combobox-footer\">\n <ui-button button_type=\"tertiary\" (click)=\"onFooterAction()\">\n {{ footer }}\n </ui-button>\n </div>\n }\n </div>\n }\n </div>\n <ui-stack stack_gap=\"none\">\n <div class=\"input-errors\">\n <div class=\"input-errors-content\">\n <ng-content select=\"ui-form-errors\"></ng-content>\n </div>\n </div>\n @if (hint) {\n <ui-box\n class=\"hint-container\"\n box_background=\"transparent\"\n box_space=\"none\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"near\"\n >\n <div class=\"ui-text-input-hint text-body--supporting text-color--supporting\">\n {{ hint }}\n </div>\n </ui-box>\n }\n </ui-stack>\n</ui-stack>\n", styles: ["html{font-size:62.5%}html,html body{font-family:var(--oasys-typography-body-body-font-family);font-weight:var(--oasys-typography-body-body-font-weight);font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);color:var(--oasys-color-brand-foreground-primary)}html b,html bold,html strong,html body b,html body bold,html body strong{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}html i,html body i{font-style:normal}h1,h2,h3,.text-heading,.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-family:var(--oasys-typography-heading-hero-desktop-font-family)}h4,h5,h6,.text-heading--functional,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family)}ui-container h1,ui-container h2,ui-container h3,ui-container h4,ui-container h5,ui-container h6,ui-container p,ui-box h1,ui-box h2,ui-box h3,ui-box h4,ui-box h5,ui-box h6,ui-box p,ui-stack h1,ui-stack h2,ui-stack h3,ui-stack h4,ui-stack h5,ui-stack h6,ui-stack p,ui-grid h1,ui-grid h2,ui-grid h3,ui-grid h4,ui-grid h5,ui-grid h6,ui-grid p{margin:0}h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}h2{font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h2{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}h3{font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}.text-heading--secondary,h1.text-heading--secondary,h2.text-heading--secondary,h3.text-heading--secondary,h4.text-heading--secondary,h5.text-heading--secondary,h6.text-heading--secondary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}h4{font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h4{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}h5{font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){h5{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}label{-webkit-user-select:none;user-select:none;cursor:pointer}label,.text-label--primary{font-size:var(--oasys-typography-heading-label-primary-font-size);line-height:var(--oasys-typography-heading-label-primary-line-height);font-weight:var(--oasys-typography-heading-label-primary-font-weight)}.text-label--secondary{font-size:var(--oasys-typography-heading-label-secondary-font-size);line-height:var(--oasys-typography-heading-label-secondary-line-height);font-weight:var(--oasys-typography-heading-label-secondary-font-weight)}.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-size:var(--oasys-typography-body-expressive-font-size);line-height:var(--oasys-typography-body-expressive-line-height);font-weight:var(--oasys-typography-body-expressive-font-weight)}.text-body--hero,.ui-rce h6,.ui-prose h6,article h6,.ui-combobox input:-webkit-autofill:first-line,.ui-combobox .select:-webkit-autofill:first-line{font-size:var(--oasys-typography-body-hero-font-size);line-height:var(--oasys-typography-body-hero-line-height);font-weight:var(--oasys-typography-body-hero-font-weight)}.text-body--default,.ui-rce p{font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--supporting{font-size:var(--oasys-typography-body-supporting-font-size);line-height:var(--oasys-typography-body-supporting-line-height);font-weight:var(--oasys-typography-body-supporting-font-weight)}.text-body--micro{font-size:var(--oasys-typography-body-micro-font-size);line-height:var(--oasys-typography-body-micro-line-height);font-weight:var(--oasys-typography-body-micro-font-weight)}.text-body--regular,.ui-rce h6,.ui-prose h6,article h6{font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--line-through{text-decoration:var(--oasys-typography-body-line-through-body-text-decoration)}.text-body--emphasis,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2,a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover,.ui-combobox input,.ui-combobox .select{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}.text-color--on-light{color:var(--oasys-color-brand-foreground-primary)}.text-color--on-light.text-color--supporting,.text-color--on-light .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--on-dark{color:var(--oasys-color-brand-foreground-primary-on-dark)}.text-color--on-dark.text-color--supporting,.text-color--on-dark .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary-on-dark)}.text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--error{color:var(--oasys-color-system-foreground-negative)}.text-color--highlight{color:var(--oasys-color-brand-foreground-highlight)}a{color:inherit;text-decoration:none}.text--readable-width,.ui-rce blockquote,.ui-prose blockquote,article blockquote{max-width:70ch}a,.text-link,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:none;cursor:pointer}a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover{text-decoration:underline}a--paragraph,.text-link--paragraph,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:underline;font-weight:inherit}.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-small-bottom)}}.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-small-bottom)}}.ui-rce p,.ui-rce ul,.ui-rce ol,.ui-prose p,.ui-prose ul,.ui-prose ol,article p,article ul,article ol{margin-bottom:var(--oasys-prose-vertical-adjustment-paragraph-bottom)}.ui-rce p:empty,.ui-rce ul:empty,.ui-rce ol:empty,.ui-prose p:empty,.ui-prose ul:empty,.ui-prose ol:empty,article p:empty,article ul:empty,article ol:empty{display:none}.ui-rce blockquote,.ui-prose blockquote,article blockquote{padding-top:var(--oasys-prose-vertical-adjustment-blockquote-top);margin-bottom:var(--oasys-prose-vertical-adjustment-blockquote-bottom);text-align:center;margin:0 auto}.ui-rce hr,.ui-prose hr,article hr{display:block;width:100%;border:0;padding:0;margin:0;height:var(--oasys-size-unit-8);background:var(--oasys-color-brand-background-secondary);margin-top:var(--oasys-spacing-expanded);margin-bottom:var(--oasys-spacing-expanded)}.ui-rce ol,.ui-prose ol,article ol{list-style-type:decimal;list-style-position:inside}.ui-rce ul,.ui-prose ul,article ul{list-style:initial;list-style-position:inside}.ui-rce .ui-rce-embed,.ui-prose .ui-rce-embed,article .ui-rce-embed{padding-top:var(--oasys-prose-vertical-adjustment-component-top-bottom);margin-bottom:var(--oasys-prose-vertical-adjustment-component-top-bottom)}.ui-rce .ui-rce-embed ui-button a,.ui-rce .ui-rce-embed ui-button a:hover,.ui-prose .ui-rce-embed ui-button a,.ui-prose .ui-rce-embed ui-button a:hover,article .ui-rce-embed ui-button a,article .ui-rce-embed ui-button a:hover{text-decoration:none}.ui-rce>ui-box .ui-box-content>*:first-child{padding-top:0}.ui-rce>ui-box .ui-box-content>*:last-child{margin-bottom:0}.ui-rce .ui-rce-instance:last-of-type{padding-bottom:var(--oasys-spacing-expanded)}.ui-rce ui-button,.ui-rce img{display:inline-block;margin:0;margin-top:var(--oasys-spacing-near);margin-right:var(--oasys-spacing-near);vertical-align:top}.ui-rce ui-button:last-child,.ui-rce img:last-child{margin-right:0}.ui-rce img{width:100%}.ui-rce ol p,.ui-rce ul p{display:inline;margin:0}form fieldset legend{margin-bottom:var(--oasys-spacing-near)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container{display:none!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-combobox,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors .input-errors-content,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .hint-container,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .hint-container{display:none!important}.ui-checkbox input,.ui-radio input,.ui-text-input input,.ui-combobox input{appearance:none;margin:0;border:none}.ui-checkbox input,.ui-radio input{cursor:pointer}.ui-checkbox,.ui-radio{--_inset: var(--oasys-spacing-near);--_radius: var(--oasys-radius-soften);--_transition_duration: calc(var(--oasys-animation-duration) * 1ms)}.ui-checkbox input,.ui-radio input{position:absolute;inset:0;border-radius:var(--oasys-radius-soften)}.ui-checkbox input.secondary,.ui-radio input.secondary{inset:unset;top:var(--_inset);--_focusSize: var(--oasys-typography-heading-label-secondary-line-height);width:var(--_focusSize);height:var(--_focusSize)}.ui-checkbox input+label,.ui-radio input+label{width:inherit;display:flex;align-items:center;gap:var(--oasys-spacing-tight)}.ui-checkbox input+label .icon-container,.ui-radio input+label .icon-container{align-self:flex-start;padding:var(--oasys-component-checkbox-icon-inset);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected);border-radius:var(--_radius)}.ui-checkbox input+label .input-hint:empty,.ui-radio input+label .input-hint:empty{display:none}.ui-checkbox input+label.primary,.ui-radio input+label.primary{padding:var(--_inset);border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-checkbox input+label.secondary,.ui-radio input+label.secondary{padding:var(--_inset) 0}.ui-checkbox input+label.secondary .icon-container,.ui-radio input+label.secondary .icon-container{background:transparent;border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)}.ui-checkbox input+label,.ui-checkbox input+label .icon-container,.ui-radio input+label,.ui-radio input+label .icon-container{transition:background-color calc(var(--_transition_duration) * 1ms),border-color calc(var(--_transition_duration) * 1ms)}.ui-checkbox input:hover+label.primary,.ui-checkbox input:checked+label.primary,.ui-radio input:hover+label.primary,.ui-radio input:checked+label.primary{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:hover+label.secondary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:hover+label.secondary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:checked+label.primary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:checked+label.primary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-border-selected);border-color:var(--oasys-color-interaction-border-selected);color:var(--oasys-color-brand-foreground-primary-on-dark)}.ui-checkbox input:checked+label.primary,.ui-radio input:checked+label.primary{border-color:var(--oasys-color-interaction-border-selected)!important}.ui-checkbox input.ng-touched.ng-invalid+label,.ui-radio input.ng-touched.ng-invalid+label{color:var(--oasys-color-system-foreground-negative)}.ui-checkbox input.ng-touched.ng-invalid+label .icon-container,.ui-radio input.ng-touched.ng-invalid+label .icon-container{border-color:var(--oasys-color-system-foreground-negative)}.ui-chip .ui-checkbox input+label .icon-container.icon--hidden,.ui-chip .ui-radio input+label .icon-container.icon--hidden{display:none}.ui-chip .ui-checkbox input+label .label--center,.ui-chip .ui-radio input+label .label--center{margin:0 auto}.ui-chip .ui-checkbox input:checked+label.primary,.ui-chip .ui-radio input:checked+label.primary{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)!important}.oasys-focus-style,.ui-combobox div[name=combobox].keyboard-focus:focus,.ui-combobox div[name=combobox].keyboard-focus:focus-visible,.ui-combobox div[name=combobox].keyboard-focus:focus-within,[tabindex]:focus-visible,[tabindex]:focus,select:focus-visible,select:focus,textarea:focus-visible,textarea:focus,input:focus-visible,input:focus,button:focus-visible,button:focus,a:focus-visible,a:focus{outline:var(--oasys-border-width-focus) solid var(--oasys-color-interaction-border-focus);outline-offset:var(--oasys-border-width-focus-offset)}a:focus:not(:focus-visible){outline:none}button:focus:not(:focus-visible){outline:none}input:focus:not(:focus-visible){outline:none}textarea:focus:not(:focus-visible){outline:none}select:focus:not(:focus-visible){outline:none}[tabindex]:focus:not(:focus-visible){outline:none}:host{display:block;width:100%}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-text-input,:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors .input-errors-content{visibility:visible!important}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .hint-container{display:none!important}.foreground-secondary-text{color:var(--oasys-color-brand-foreground-secondary)}.ui-combobox{--_label-height: var(--oasys-typography-body-supporting-line-height);--_label-input-gap: var(--oasys-spacing-tiny);--_label-top-inset: var(--oasys-spacing-near);--_input-inset-top: calc( var(--_label-height) + var(--_label-input-gap) + var(--_label-top-inset) );--_preface-width: var(--oasys-component-text-input-preface-width);position:relative;border-radius:var(--oasys-radius-soften);width:100%;background-color:var(--oasys-color-white)}.ui-combobox{transition:border calc(var(--oasys-animation-duration-long) * 1ms);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox div[name=combobox]{cursor:pointer;padding-right:var(--oasys-spacing-near)}.ui-combobox-footer,.ui-combobox-header{padding:var(--oasys-spacing-tight) var(--oasys-spacing-near);text-align:center}.ui-combobox-footer{cursor:pointer;border-top:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-header{color:var(--oasys-color-brand-foreground-secondary);border-bottom:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-options{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);background-color:var(--oasys-color-white);box-shadow:0 24px 36px #2626261a;border-radius:var(--oasys-radius-soften);box-sizing:border-box;width:100%;height:auto;margin-top:var(--oasys-spacing-near);position:absolute;pointer-events:auto;outline:0;overflow:auto;transform-origin:top center;grid-template-rows:0fr;opacity:0;transition:opacity var(--_ad) cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:opacity;z-index:1000}.ui-combobox-options.expand{opacity:1}.ui-combobox-option{cursor:pointer;border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) transparent;padding:var(--oasys-spacing-near);outline:none;outline-offset:none}.ui-combobox-option:hover,.ui-combobox-option.selected{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox-option.focus{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften);border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-option:focus-visible{border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-options.keyboard-open .ui-combobox-option:hover:not(.focus){background-color:transparent;border-radius:0}.ui-combobox-options.keyboard-open .ui-combobox-option.focus:hover{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox input,.ui-combobox .select{padding:var(--oasys-spacing-near);padding-top:var(--oasys-spacing-tiny)}.ui-combobox input{border:none;width:100%;background-color:transparent}.ui-combobox input:focus{outline:none}.ui-combobox input{cursor:pointer}.ui-combobox-container .input-errors{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);display:grid;grid-template-rows:0fr;overflow:hidden;opacity:0;transform:translateY(-33%);transition:grid-template-rows var(--_ad),opacity var(--_ad),transform var(--_ad);transition-timing-function:cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:grid-template-rows,transform,opacity}.ui-combobox-container .input-errors .input-errors-content{min-height:0;visibility:hidden;transition:visibility var(--_ad)}.ui-combobox-container .input-errors .hint-container{display:block!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .hint-container{display:none!important}.ui-combobox-container:has(input:disabled) input,.ui-combobox-container:has(input:disabled) .select{background-color:none;color:var(--oasys-component-text-input-color-disabled-foreground)}.ui-combobox-container:has(input:disabled) .ui-combobox-input{background-color:var(--oasys-component-text-input-color-disabled-background)}.ui-combobox .label-container{padding-top:var(--oasys-spacing-near);padding-left:var(--oasys-spacing-near);width:calc(100% - var(--oasys-spacing-near) - var(--oasys-spacing-near))}.ui-combobox .label-container,.ui-combobox .label-container label{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-combobox .icon-container:hover{transform:scale(1.1)}.ui-combobox .icon-container{transition:all calc(var(--oasys-animation-duration-long) * 1ms) ease;transform-origin:center}.ui-combobox .icon-container.expand{transform:rotate(-179.999deg)}.ui-combobox:has(.input-preface:not(:empty)){--_left-inset: calc(var(--oasys-spacing-near) + var(--_preface-width))}.ui-combobox:has(.input-preface:not(:empty)) .label-container{left:var(--_left-inset);width:calc(100% - var(--_left-inset) - var(--oasys-spacing-near))}.ui-combobox:has(.input-preface:not(:empty)) input,.ui-combobox:has(.input-preface:not(:empty)) .select{padding-left:var(--_left-inset)}.ui-combobox .input-preface{width:var(--_preface-width);height:100%;position:absolute;display:flex;justify-content:center;align-items:center;pointer-events:none;flex-direction:column;text-align:center;border-right:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox .input-preface:empty{visibility:hidden}\n"], dependencies: [{ kind: "component", type: LayoutStackComponent, selector: "ui-stack", inputs: ["stack_gap", "stack_align", "stack_direction", "stack_distribute", "stack_wrap", "stack_collapse_below", "stack_as_list"] }, { kind: "component", type: LayoutBoxComponent, selector: "ui-box", inputs: ["box_space", "box_role", "box_space_top", "box_space_right", "box_space_bottom", "box_space_left", "box_align_x", "box_align_y", "box_fill_mode", "box_background", "box_content_fill_width", "box_border_color", "box_border_width", "box_border_style", "box_border_radius"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: OasysAutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["icon_size", "icon_size_override", "icon_name", "icon_context", "alt_text", "icon_class"] }, { kind: "directive", type: EmphasisDirective, selector: "[ui-emphasis]", inputs: ["searchText", "displayParagraph"] }, { kind: "component", type: OasysButtonComponent, selector: "ui-button", inputs: ["button_icon", "button_icon_placement", "button_size", "button_type", "button_full_width", "button_event_type", "button_disabled", "button_selected", "button_text_nowrap", "aria_label", "aria_role", "href"], outputs: ["clicked"] }] });
|
|
3696
|
+
], viewQueries: [{ propertyName: "textInput", first: true, predicate: ["textinput"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "combobox", first: true, predicate: ["combobox"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "optionsList", predicate: ["option"], descendants: true, read: ElementRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<ui-stack class=\"ui-combobox-container\" stack_gap=\"tight\">\n <div class=\"ui-combobox text-body--default text-body--regular\">\n <!-- Compbobox Options Input -->\n @if (type() === 'options') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled() ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (mousedown)=\"togglePanel()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label()\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId() : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n [attr.disabled]=\"disabled() || null\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n [class.keyboard-focus]=\"shouldShowFocus()\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id()\">{{\n label()\n }}</label>\n </div>\n <input\n #textinput\n (focus)=\"onScreenReaderFocus()\"\n [id]=\"id()\"\n [name]=\"id()\"\n [ngModel]=\"textValue()\"\n (ngModelChange)=\"onModelChange($event)\"\n (blur)=\"onModelChange(textValue())\"\n [ngClass]=\"inputDidChange() ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled() || null\"\n [autofocus]=\"autofocus()\"\n [autocomplete]=\"'on'\"\n [required]=\"!optional()\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"selectedOption()\"\n [placeholder]=\"placeholder() || ''\"\n readonly=\"readonly\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n <!-- Select Icon Chevron Area -->\n <div class=\"icon-container\" [ngClass]=\"{ expand: panelOpen() }\">\n <ui-icon icon_name=\"chevron-down\"></ui-icon>\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Autocomplete Input -->\n @if (type() === 'autocomplete') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled() ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocusInput()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label()\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId() : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n [class.keyboard-focus]=\"shouldShowFocus()\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id()\">{{\n label()\n }}</label>\n </div>\n <input\n #textinput\n [id]=\"id()\"\n [name]=\"id()\"\n [ngModel]=\"textValue()\"\n (click)=\"onTextInputClick()\"\n (ngModelChange)=\"onModelChangeAutocomplete($event)\"\n [ngClass]=\"inputDidChange() ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled() || null\"\n [autofocus]=\"autofocus()\"\n [autocomplete]=\"'list'\"\n [required]=\"!optional()\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"textValue()\"\n [placeholder]=\"placeholder() || ''\"\n role=\"combobox\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n\n <!-- Combobox Icon Clear Area -->\n <div class=\"icon-container\">\n @if (textValue()) {\n <ui-button\n button_type=\"tertiary\"\n button_size=\"small\"\n button_icon=\"close\"\n button_icon_placement=\"iconOnly\"\n [aria_label]=\"clearLabel()\"\n (clicked)=\"cleanInput()\"\n (keydown.enter)=\"$event.stopPropagation()\"\n (keydown.space)=\"$event.stopPropagation()\"\n >\n {{ clearLabel() }}\n </ui-button>\n }\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Options Panel -->\n @if (panelOpen()) {\n <div\n class=\"ui-combobox-options\"\n [ngClass]=\"{ expand: panelOpen(), 'keyboard-open': shouldShowFocus() }\"\n role=\"listbox\"\n id=\"activedescendent-list\"\n >\n <!-- Autocomplete Options Panel Header -->\n @if (header() && type() === 'autocomplete') {\n <div class=\"ui-combobox-header text-body--supporting\">\n <span>{{ header() }}</span>\n </div>\n }\n\n <!-- Options list -->\n @for (option of displayOptions(); track option; let i = $index) {\n <div\n #option\n class=\"ui-combobox-option\"\n [ngClass]=\"{\n selected:\n selectedOption() === option && (!shouldShowFocus() || focusedOption() === option),\n focus: shouldShowFocus() && focusedOption() === option,\n }\"\n (click)=\"selectOption(option, i)\"\n (keydown)=\"onKeyDown($event)\"\n [id]=\"'activedescendent-opt-' + i\"\n [attr.aria-selected]=\"selectedOption() === option\"\n [attr.aria-label]=\"\n selectedOption() === option\n ? option[displayOptionKey()] + ' ' + selectedLabel()\n : option[displayOptionKey()]\n \"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <!-- Option display -->\n <div\n [attr.value]=\"valueKey() ? option[valueKey()!] : option.value\"\n [attr.ngValue]=\"displayKey() ? option[displayKey()!] : option.label\"\n >\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_gap=\"tight\">\n @if (option.icon_name || (iconNameKey() && option[iconNameKey()!])) {\n <ui-icon\n [icon_name]=\"iconNameKey() ? option[iconNameKey()!] : option.icon_name\"\n ></ui-icon>\n }\n <!-- Display options label -->\n @if (type() === 'options') {\n <span>{{ option[displayOptionKey()] }}</span>\n }\n\n <!-- Display autocomplete option information and emphasis-->\n @if (type() === 'autocomplete') {\n <ui-stack stack_gap=\"tiny\">\n <span\n ui-emphasis\n [searchText]=\"textValue()\"\n [displayParagraph]=\"option[displayOptionKey()]\"\n >\n </span>\n <p class=\"foreground-secondary-text\">\n {{ option[subtextOptionKey()] }}\n </p>\n </ui-stack>\n }\n </ui-stack>\n </div>\n\n <!-- Selected icon -->\n @if (selectedOption() === option) {\n <ui-icon icon_name=\"tick\"></ui-icon>\n }\n </ui-stack>\n </div>\n }\n <!-- Autocomplete Options Panel Footer -->\n @if (footer() && type() === 'autocomplete') {\n <div class=\"ui-combobox-footer\">\n <ui-button button_type=\"tertiary\" (click)=\"onFooterAction()\">\n {{ footer() }}\n </ui-button>\n </div>\n }\n </div>\n }\n </div>\n <ui-stack stack_gap=\"none\">\n <div class=\"input-errors\">\n <div class=\"input-errors-content\">\n <ng-content select=\"ui-form-errors\"></ng-content>\n </div>\n </div>\n @if (hint()) {\n <ui-box\n class=\"hint-container\"\n box_background=\"transparent\"\n box_space=\"none\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"near\"\n >\n <div class=\"ui-text-input-hint text-body--supporting text-color--supporting\">\n {{ hint() }}\n </div>\n </ui-box>\n }\n </ui-stack>\n</ui-stack>\n", styles: ["html{font-size:62.5%}html,html body{font-family:var(--oasys-typography-body-body-font-family);font-weight:var(--oasys-typography-body-body-font-weight);font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);color:var(--oasys-color-brand-foreground-primary)}html b,html bold,html strong,html body b,html body bold,html body strong{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}html i,html body i{font-style:normal}h1,h2,h3,.text-heading,.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-family:var(--oasys-typography-heading-hero-desktop-font-family)}h4,h5,h6,.text-heading--functional,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family)}ui-container h1,ui-container h2,ui-container h3,ui-container h4,ui-container h5,ui-container h6,ui-container p,ui-box h1,ui-box h2,ui-box h3,ui-box h4,ui-box h5,ui-box h6,ui-box p,ui-stack h1,ui-stack h2,ui-stack h3,ui-stack h4,ui-stack h5,ui-stack h6,ui-stack p,ui-grid h1,ui-grid h2,ui-grid h3,ui-grid h4,ui-grid h5,ui-grid h6,ui-grid p{margin:0}h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}h2{font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h2{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}h3{font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}.text-heading--secondary,h1.text-heading--secondary,h2.text-heading--secondary,h3.text-heading--secondary,h4.text-heading--secondary,h5.text-heading--secondary,h6.text-heading--secondary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}h4{font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h4{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}h5{font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){h5{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}label{-webkit-user-select:none;user-select:none;cursor:pointer}label,.text-label--primary{font-size:var(--oasys-typography-heading-label-primary-font-size);line-height:var(--oasys-typography-heading-label-primary-line-height);font-weight:var(--oasys-typography-heading-label-primary-font-weight)}.text-label--secondary{font-size:var(--oasys-typography-heading-label-secondary-font-size);line-height:var(--oasys-typography-heading-label-secondary-line-height);font-weight:var(--oasys-typography-heading-label-secondary-font-weight)}.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-size:var(--oasys-typography-body-expressive-font-size);line-height:var(--oasys-typography-body-expressive-line-height);font-weight:var(--oasys-typography-body-expressive-font-weight)}.text-body--hero,.ui-rce h6,.ui-prose h6,article h6,.ui-combobox input:-webkit-autofill:first-line,.ui-combobox .select:-webkit-autofill:first-line{font-size:var(--oasys-typography-body-hero-font-size);line-height:var(--oasys-typography-body-hero-line-height);font-weight:var(--oasys-typography-body-hero-font-weight)}.text-body--default,.ui-rce p{font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--supporting{font-size:var(--oasys-typography-body-supporting-font-size);line-height:var(--oasys-typography-body-supporting-line-height);font-weight:var(--oasys-typography-body-supporting-font-weight)}.text-body--micro{font-size:var(--oasys-typography-body-micro-font-size);line-height:var(--oasys-typography-body-micro-line-height);font-weight:var(--oasys-typography-body-micro-font-weight)}.text-body--regular,.ui-rce h6,.ui-prose h6,article h6{font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--line-through{text-decoration:var(--oasys-typography-body-line-through-body-text-decoration)}.text-body--emphasis,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2,a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover,.ui-combobox input,.ui-combobox .select{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}.text-color--on-light{color:var(--oasys-color-brand-foreground-primary)}.text-color--on-light.text-color--supporting,.text-color--on-light .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--on-dark{color:var(--oasys-color-brand-foreground-primary-on-dark)}.text-color--on-dark.text-color--supporting,.text-color--on-dark .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary-on-dark)}.text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--error{color:var(--oasys-color-system-foreground-negative)}.text-color--highlight{color:var(--oasys-color-brand-foreground-highlight)}a{color:inherit;text-decoration:none}.text--readable-width,.ui-rce blockquote,.ui-prose blockquote,article blockquote{max-width:70ch}a,.text-link,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:none;cursor:pointer}a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover{text-decoration:underline}a--paragraph,.text-link--paragraph,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:underline;font-weight:inherit}.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-small-bottom)}}.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-small-bottom)}}.ui-rce p,.ui-rce ul,.ui-rce ol,.ui-prose p,.ui-prose ul,.ui-prose ol,article p,article ul,article ol{margin-bottom:var(--oasys-prose-vertical-adjustment-paragraph-bottom)}.ui-rce p:empty,.ui-rce ul:empty,.ui-rce ol:empty,.ui-prose p:empty,.ui-prose ul:empty,.ui-prose ol:empty,article p:empty,article ul:empty,article ol:empty{display:none}.ui-rce blockquote,.ui-prose blockquote,article blockquote{padding-top:var(--oasys-prose-vertical-adjustment-blockquote-top);margin-bottom:var(--oasys-prose-vertical-adjustment-blockquote-bottom);text-align:center;margin:0 auto}.ui-rce hr,.ui-prose hr,article hr{display:block;width:100%;border:0;padding:0;margin:0;height:var(--oasys-size-unit-8);background:var(--oasys-color-brand-background-secondary);margin-top:var(--oasys-spacing-expanded);margin-bottom:var(--oasys-spacing-expanded)}.ui-rce ol,.ui-prose ol,article ol{list-style-type:decimal;list-style-position:inside}.ui-rce ul,.ui-prose ul,article ul{list-style:initial;list-style-position:inside}.ui-rce .ui-rce-embed,.ui-prose .ui-rce-embed,article .ui-rce-embed{padding-top:var(--oasys-prose-vertical-adjustment-component-top-bottom);margin-bottom:var(--oasys-prose-vertical-adjustment-component-top-bottom)}.ui-rce .ui-rce-embed ui-button a,.ui-rce .ui-rce-embed ui-button a:hover,.ui-prose .ui-rce-embed ui-button a,.ui-prose .ui-rce-embed ui-button a:hover,article .ui-rce-embed ui-button a,article .ui-rce-embed ui-button a:hover{text-decoration:none}.ui-rce>ui-box .ui-box-content>*:first-child{padding-top:0}.ui-rce>ui-box .ui-box-content>*:last-child{margin-bottom:0}.ui-rce .ui-rce-instance:last-of-type{padding-bottom:var(--oasys-spacing-expanded)}.ui-rce ui-button,.ui-rce img{display:inline-block;margin:0;margin-top:var(--oasys-spacing-near);margin-right:var(--oasys-spacing-near);vertical-align:top}.ui-rce ui-button:last-child,.ui-rce img:last-child{margin-right:0}.ui-rce img{width:100%}.ui-rce ol p,.ui-rce ul p{display:inline;margin:0}form fieldset legend{margin-bottom:var(--oasys-spacing-near)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container{display:none!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-combobox,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors .input-errors-content,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .hint-container,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .hint-container{display:none!important}.ui-checkbox input,.ui-radio input,.ui-text-input input,.ui-combobox input{appearance:none;margin:0;border:none}.ui-checkbox input,.ui-radio input{cursor:pointer}.ui-checkbox,.ui-radio{--_inset: var(--oasys-spacing-near);--_radius: var(--oasys-radius-soften);--_transition_duration: calc(var(--oasys-animation-duration) * 1ms)}.ui-checkbox input,.ui-radio input{position:absolute;inset:0;border-radius:var(--oasys-radius-soften)}.ui-checkbox input.secondary,.ui-radio input.secondary{inset:unset;top:var(--_inset);--_focusSize: var(--oasys-typography-heading-label-secondary-line-height);width:var(--_focusSize);height:var(--_focusSize)}.ui-checkbox input+label,.ui-radio input+label{width:inherit;display:flex;align-items:center;gap:var(--oasys-spacing-tight)}.ui-checkbox input+label .icon-container,.ui-radio input+label .icon-container{align-self:flex-start;padding:var(--oasys-component-checkbox-icon-inset);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected);border-radius:var(--_radius)}.ui-checkbox input+label .input-hint:empty,.ui-radio input+label .input-hint:empty{display:none}.ui-checkbox input+label.primary,.ui-radio input+label.primary{padding:var(--_inset);border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-checkbox input+label.secondary,.ui-radio input+label.secondary{padding:var(--_inset) 0}.ui-checkbox input+label.secondary .icon-container,.ui-radio input+label.secondary .icon-container{background:transparent;border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)}.ui-checkbox input+label,.ui-checkbox input+label .icon-container,.ui-radio input+label,.ui-radio input+label .icon-container{transition:background-color calc(var(--_transition_duration) * 1ms),border-color calc(var(--_transition_duration) * 1ms)}.ui-checkbox input:hover+label.primary,.ui-checkbox input:checked+label.primary,.ui-radio input:hover+label.primary,.ui-radio input:checked+label.primary{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:hover+label.secondary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:hover+label.secondary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:checked+label.primary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:checked+label.primary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-border-selected);border-color:var(--oasys-color-interaction-border-selected);color:var(--oasys-color-brand-foreground-primary-on-dark)}.ui-checkbox input:checked+label.primary,.ui-radio input:checked+label.primary{border-color:var(--oasys-color-interaction-border-selected)!important}.ui-checkbox input.ng-touched.ng-invalid+label,.ui-radio input.ng-touched.ng-invalid+label{color:var(--oasys-color-system-foreground-negative)}.ui-checkbox input.ng-touched.ng-invalid+label .icon-container,.ui-radio input.ng-touched.ng-invalid+label .icon-container{border-color:var(--oasys-color-system-foreground-negative)}.ui-chip .ui-checkbox input+label .icon-container.icon--hidden,.ui-chip .ui-radio input+label .icon-container.icon--hidden{display:none}.ui-chip .ui-checkbox input+label .label--center,.ui-chip .ui-radio input+label .label--center{margin:0 auto}.ui-chip .ui-checkbox input:checked+label.primary,.ui-chip .ui-radio input:checked+label.primary{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)!important}.oasys-focus-style,.ui-combobox div[name=combobox].keyboard-focus:focus,.ui-combobox div[name=combobox].keyboard-focus:focus-visible,.ui-combobox div[name=combobox].keyboard-focus:focus-within,[tabindex]:focus-visible,[tabindex]:focus,select:focus-visible,select:focus,textarea:focus-visible,textarea:focus,input:focus-visible,input:focus,button:focus-visible,button:focus,a:focus-visible,a:focus{outline:var(--oasys-border-width-focus) solid var(--oasys-color-interaction-border-focus);outline-offset:var(--oasys-border-width-focus-offset)}a:focus:not(:focus-visible){outline:none}button:focus:not(:focus-visible){outline:none}input:focus:not(:focus-visible){outline:none}textarea:focus:not(:focus-visible){outline:none}select:focus:not(:focus-visible){outline:none}[tabindex]:focus:not(:focus-visible){outline:none}:host{display:block;width:100%}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-text-input,:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors .input-errors-content{visibility:visible!important}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .hint-container{display:none!important}.foreground-secondary-text{color:var(--oasys-color-brand-foreground-secondary)}.ui-combobox{--_label-height: var(--oasys-typography-body-supporting-line-height);--_label-input-gap: var(--oasys-spacing-tiny);--_label-top-inset: var(--oasys-spacing-near);--_input-inset-top: calc( var(--_label-height) + var(--_label-input-gap) + var(--_label-top-inset) );--_preface-width: var(--oasys-component-text-input-preface-width);position:relative;border-radius:var(--oasys-radius-soften);width:100%;background-color:var(--oasys-color-white)}.ui-combobox{transition:border calc(var(--oasys-animation-duration-long) * 1ms);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox div[name=combobox]{cursor:pointer;padding-right:var(--oasys-spacing-near)}.ui-combobox-footer,.ui-combobox-header{padding:var(--oasys-spacing-tight) var(--oasys-spacing-near);text-align:center}.ui-combobox-footer{cursor:pointer;border-top:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-header{color:var(--oasys-color-brand-foreground-secondary);border-bottom:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-options{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);background-color:var(--oasys-color-white);box-shadow:0 24px 36px #2626261a;border-radius:var(--oasys-radius-soften);box-sizing:border-box;width:100%;height:auto;max-height:60vh;margin-top:var(--oasys-spacing-near);position:absolute;pointer-events:auto;outline:0;overflow-y:auto;transform-origin:top center;grid-template-rows:0fr;opacity:0;transition:opacity var(--_ad) cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:opacity;z-index:1000}.ui-combobox-options.expand{opacity:1}.ui-combobox-option{cursor:pointer;border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) transparent;padding:var(--oasys-spacing-near);outline:none;outline-offset:none}.ui-combobox-option:hover,.ui-combobox-option.selected{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox-option.focus{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften);border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-option:focus-visible{border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-options.keyboard-open .ui-combobox-option:hover:not(.focus){background-color:transparent;border-radius:0}.ui-combobox-options.keyboard-open .ui-combobox-option.focus:hover{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox input,.ui-combobox .select{padding:var(--oasys-spacing-near);padding-top:var(--oasys-spacing-tiny)}.ui-combobox input{border:none;width:100%;background-color:transparent}.ui-combobox input:focus{outline:none}.ui-combobox input{cursor:pointer}.ui-combobox-container .input-errors{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);display:grid;grid-template-rows:0fr;overflow:hidden;opacity:0;transform:translateY(-33%);transition:grid-template-rows var(--_ad),opacity var(--_ad),transform var(--_ad);transition-timing-function:cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:grid-template-rows,transform,opacity}.ui-combobox-container .input-errors .input-errors-content{min-height:0;visibility:hidden;transition:visibility var(--_ad)}.ui-combobox-container .input-errors .hint-container{display:block!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .hint-container{display:none!important}.ui-combobox-container:has(input:disabled) input,.ui-combobox-container:has(input:disabled) .select{background-color:none;color:var(--oasys-component-text-input-color-disabled-foreground)}.ui-combobox-container:has(input:disabled) .ui-combobox-input{background-color:var(--oasys-component-text-input-color-disabled-background)}.ui-combobox .label-container{padding-top:var(--oasys-spacing-near);padding-left:var(--oasys-spacing-near);width:calc(100% - var(--oasys-spacing-near) - var(--oasys-spacing-near))}.ui-combobox .label-container,.ui-combobox .label-container label{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-combobox .icon-container:hover{transform:scale(1.1)}.ui-combobox .icon-container{transition:all calc(var(--oasys-animation-duration-long) * 1ms) ease;transform-origin:center}.ui-combobox .icon-container.expand{transform:rotate(-179.999deg)}.ui-combobox:has(.input-preface:not(:empty)){--_left-inset: calc(var(--oasys-spacing-near) + var(--_preface-width))}.ui-combobox:has(.input-preface:not(:empty)) .label-container{left:var(--_left-inset);width:calc(100% - var(--_left-inset) - var(--oasys-spacing-near))}.ui-combobox:has(.input-preface:not(:empty)) input,.ui-combobox:has(.input-preface:not(:empty)) .select{padding-left:var(--_left-inset)}.ui-combobox .input-preface{width:var(--_preface-width);height:100%;position:absolute;display:flex;justify-content:center;align-items:center;pointer-events:none;flex-direction:column;text-align:center;border-right:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox .input-preface:empty{visibility:hidden}\n"], dependencies: [{ kind: "component", type: LayoutStackComponent, selector: "ui-stack", inputs: ["stack_gap", "stack_align", "stack_direction", "stack_distribute", "stack_wrap", "stack_collapse_below", "stack_as_list"] }, { kind: "component", type: LayoutBoxComponent, selector: "ui-box", inputs: ["box_space", "box_role", "box_space_top", "box_space_right", "box_space_bottom", "box_space_left", "box_align_x", "box_align_y", "box_fill_mode", "box_background", "box_content_fill_width", "box_border_color", "box_border_width", "box_border_style", "box_border_radius"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: OasysAutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["icon_size", "icon_size_override", "icon_name", "icon_context", "alt_text", "icon_class"] }, { kind: "directive", type: EmphasisDirective, selector: "[ui-emphasis]", inputs: ["searchText", "displayParagraph"] }, { kind: "component", type: OasysButtonComponent, selector: "ui-button", inputs: ["button_icon", "button_icon_placement", "button_size", "button_type", "button_full_width", "button_event_type", "button_disabled", "button_selected", "button_text_nowrap", "aria_label", "aria_role", "href"], outputs: ["clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3713
3697
|
}
|
|
3714
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type:
|
|
3698
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxComponent, decorators: [{
|
|
3715
3699
|
type: Component,
|
|
3716
3700
|
args: [{ selector: 'ui-combobox', providers: [
|
|
3717
3701
|
{
|
|
3718
3702
|
provide: NG_VALUE_ACCESSOR,
|
|
3719
|
-
useExisting: forwardRef(() =>
|
|
3703
|
+
useExisting: forwardRef(() => OasysComboboxComponent),
|
|
3720
3704
|
multi: true,
|
|
3721
3705
|
},
|
|
3722
|
-
],
|
|
3706
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
3723
3707
|
LayoutStackComponent,
|
|
3724
3708
|
LayoutBoxComponent,
|
|
3725
3709
|
ReactiveFormsModule,
|
|
@@ -3729,154 +3713,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
3729
3713
|
IconComponent,
|
|
3730
3714
|
EmphasisDirective,
|
|
3731
3715
|
OasysButtonComponent,
|
|
3732
|
-
], template: "<ui-stack class=\"ui-combobox-container\" stack_gap=\"tight\">\n <div class=\"ui-combobox text-body--default text-body--regular\">\n <!-- Compbobox Options Input -->\n @if (type === 'options') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (mousedown)=\"togglePanel()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n [attr.disabled]=\"disabled || null\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n [class.keyboard-focus]=\"shouldShowFocus\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id\">{{ label }}</label>\n </div>\n <input\n #textinput\n (focus)=\"onScreenReaderFocus()\"\n [id]=\"id\"\n [name]=\"id\"\n [ngModel]=\"textValue\"\n (ngModelChange)=\"onModelChange($event)\"\n (blur)=\"onModelChange(textValue)\"\n [ngClass]=\"inputDidChange ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled || null\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"'on'\"\n [required]=\"!optional\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"selectedOption\"\n [placeholder]=\"placeholder || ''\"\n readonly=\"readonly\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n <!-- Select Icon Chevron Area -->\n <div class=\"icon-container\" [ngClass]=\"{ expand: panelOpen() }\">\n <ui-icon icon_name=\"chevron-down\"></ui-icon>\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Autocomplete Input -->\n @if (type === 'autocomplete') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocusInput()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n [class.keyboard-focus]=\"shouldShowFocus\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id\">{{ label }}</label>\n </div>\n <input\n #textinput\n [id]=\"id\"\n [name]=\"id\"\n [ngModel]=\"textValue\"\n (click)=\"onTextInputClick()\"\n (ngModelChange)=\"onModelChangeAutocomplete($event)\"\n [ngClass]=\"inputDidChange ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled || null\"\n [autofocus]=\"autofocus\"\n [autocomplete]=\"'list'\"\n [required]=\"!optional\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"textValue\"\n [placeholder]=\"placeholder || ''\"\n role=\"combobox\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n\n <!-- Combobox Icon Clear Area -->\n <div class=\"icon-container\" [attr.aria-label]=\"'clean'\" (click)=\"cleanInput()\">\n @if (textValue) {\n <ui-icon icon_name=\"close\"></ui-icon>\n }\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Options Panel -->\n @if (panelOpen()) {\n <div\n class=\"ui-combobox-options\"\n [ngClass]=\"{ expand: panelOpen(), 'keyboard-open': shouldShowFocus }\"\n role=\"listbox\"\n id=\"activedescendent-list\"\n >\n <!-- Autocomplete Options Panel Header -->\n @if (header && type === 'autocomplete') {\n <div class=\"ui-combobox-header text-body--supporting\">\n <span>{{ header }}</span>\n </div>\n }\n\n <!-- Options list -->\n @for (option of displayOptions; track option; let i = $index) {\n <div\n #option\n class=\"ui-combobox-option\"\n [ngClass]=\"{\n selected: selectedOption === option && (!shouldShowFocus || focusedOption === option),\n focus: shouldShowFocus && focusedOption === option,\n }\"\n (click)=\"selectOption(option, i)\"\n (keydown)=\"onKeyDown($event)\"\n [id]=\"'activedescendent-opt-' + i\"\n [attr.aria-selected]=\"selectedOption === option\"\n [attr.aria-label]=\"\n selectedOption === option\n ? option[displayOptionKey] + ' is selected'\n : option[displayOptionKey]\n \"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <!-- Option display -->\n <div\n [attr.value]=\"valueKey ? option[valueKey] : option.value\"\n [attr.ngValue]=\"displayKey ? option[displayKey] : option.label\"\n >\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_gap=\"tight\">\n @if (option.icon_name || (iconNameKey && option[iconNameKey])) {\n <ui-icon\n [icon_name]=\"iconNameKey ? option[iconNameKey] : option.icon_name\"\n ></ui-icon>\n }\n <!-- Display options label -->\n @if (type === 'options') {\n <span>{{ option[displayOptionKey] }}</span>\n }\n\n <!-- Display autocomplete option information and emphasis-->\n @if (type === 'autocomplete') {\n <ui-stack stack_gap=\"tiny\">\n <span\n ui-emphasis\n [searchText]=\"textValue\"\n [displayParagraph]=\"option[displayOptionKey]\"\n >\n </span>\n <p class=\"foreground-secondary-text\">\n {{ option[subtextOptionKey] }}\n </p>\n </ui-stack>\n }\n </ui-stack>\n </div>\n\n <!-- Selected icon -->\n @if (selectedOption === option) {\n <ui-icon icon_name=\"tick\"></ui-icon>\n }\n </ui-stack>\n </div>\n }\n <!-- Autocomplete Options Panel Footer -->\n @if (footer && type === 'autocomplete') {\n <div class=\"ui-combobox-footer\">\n <ui-button button_type=\"tertiary\" (click)=\"onFooterAction()\">\n {{ footer }}\n </ui-button>\n </div>\n }\n </div>\n }\n </div>\n <ui-stack stack_gap=\"none\">\n <div class=\"input-errors\">\n <div class=\"input-errors-content\">\n <ng-content select=\"ui-form-errors\"></ng-content>\n </div>\n </div>\n @if (hint) {\n <ui-box\n class=\"hint-container\"\n box_background=\"transparent\"\n box_space=\"none\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"near\"\n >\n <div class=\"ui-text-input-hint text-body--supporting text-color--supporting\">\n {{ hint }}\n </div>\n </ui-box>\n }\n </ui-stack>\n</ui-stack>\n", styles: ["html{font-size:62.5%}html,html body{font-family:var(--oasys-typography-body-body-font-family);font-weight:var(--oasys-typography-body-body-font-weight);font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);color:var(--oasys-color-brand-foreground-primary)}html b,html bold,html strong,html body b,html body bold,html body strong{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}html i,html body i{font-style:normal}h1,h2,h3,.text-heading,.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-family:var(--oasys-typography-heading-hero-desktop-font-family)}h4,h5,h6,.text-heading--functional,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family)}ui-container h1,ui-container h2,ui-container h3,ui-container h4,ui-container h5,ui-container h6,ui-container p,ui-box h1,ui-box h2,ui-box h3,ui-box h4,ui-box h5,ui-box h6,ui-box p,ui-stack h1,ui-stack h2,ui-stack h3,ui-stack h4,ui-stack h5,ui-stack h6,ui-stack p,ui-grid h1,ui-grid h2,ui-grid h3,ui-grid h4,ui-grid h5,ui-grid h6,ui-grid p{margin:0}h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}h2{font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h2{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}h3{font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}.text-heading--secondary,h1.text-heading--secondary,h2.text-heading--secondary,h3.text-heading--secondary,h4.text-heading--secondary,h5.text-heading--secondary,h6.text-heading--secondary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}h4{font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h4{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}h5{font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){h5{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}label{-webkit-user-select:none;user-select:none;cursor:pointer}label,.text-label--primary{font-size:var(--oasys-typography-heading-label-primary-font-size);line-height:var(--oasys-typography-heading-label-primary-line-height);font-weight:var(--oasys-typography-heading-label-primary-font-weight)}.text-label--secondary{font-size:var(--oasys-typography-heading-label-secondary-font-size);line-height:var(--oasys-typography-heading-label-secondary-line-height);font-weight:var(--oasys-typography-heading-label-secondary-font-weight)}.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-size:var(--oasys-typography-body-expressive-font-size);line-height:var(--oasys-typography-body-expressive-line-height);font-weight:var(--oasys-typography-body-expressive-font-weight)}.text-body--hero,.ui-rce h6,.ui-prose h6,article h6,.ui-combobox input:-webkit-autofill:first-line,.ui-combobox .select:-webkit-autofill:first-line{font-size:var(--oasys-typography-body-hero-font-size);line-height:var(--oasys-typography-body-hero-line-height);font-weight:var(--oasys-typography-body-hero-font-weight)}.text-body--default,.ui-rce p{font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--supporting{font-size:var(--oasys-typography-body-supporting-font-size);line-height:var(--oasys-typography-body-supporting-line-height);font-weight:var(--oasys-typography-body-supporting-font-weight)}.text-body--micro{font-size:var(--oasys-typography-body-micro-font-size);line-height:var(--oasys-typography-body-micro-line-height);font-weight:var(--oasys-typography-body-micro-font-weight)}.text-body--regular,.ui-rce h6,.ui-prose h6,article h6{font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--line-through{text-decoration:var(--oasys-typography-body-line-through-body-text-decoration)}.text-body--emphasis,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2,a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover,.ui-combobox input,.ui-combobox .select{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}.text-color--on-light{color:var(--oasys-color-brand-foreground-primary)}.text-color--on-light.text-color--supporting,.text-color--on-light .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--on-dark{color:var(--oasys-color-brand-foreground-primary-on-dark)}.text-color--on-dark.text-color--supporting,.text-color--on-dark .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary-on-dark)}.text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--error{color:var(--oasys-color-system-foreground-negative)}.text-color--highlight{color:var(--oasys-color-brand-foreground-highlight)}a{color:inherit;text-decoration:none}.text--readable-width,.ui-rce blockquote,.ui-prose blockquote,article blockquote{max-width:70ch}a,.text-link,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:none;cursor:pointer}a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover{text-decoration:underline}a--paragraph,.text-link--paragraph,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:underline;font-weight:inherit}.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-small-bottom)}}.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-small-bottom)}}.ui-rce p,.ui-rce ul,.ui-rce ol,.ui-prose p,.ui-prose ul,.ui-prose ol,article p,article ul,article ol{margin-bottom:var(--oasys-prose-vertical-adjustment-paragraph-bottom)}.ui-rce p:empty,.ui-rce ul:empty,.ui-rce ol:empty,.ui-prose p:empty,.ui-prose ul:empty,.ui-prose ol:empty,article p:empty,article ul:empty,article ol:empty{display:none}.ui-rce blockquote,.ui-prose blockquote,article blockquote{padding-top:var(--oasys-prose-vertical-adjustment-blockquote-top);margin-bottom:var(--oasys-prose-vertical-adjustment-blockquote-bottom);text-align:center;margin:0 auto}.ui-rce hr,.ui-prose hr,article hr{display:block;width:100%;border:0;padding:0;margin:0;height:var(--oasys-size-unit-8);background:var(--oasys-color-brand-background-secondary);margin-top:var(--oasys-spacing-expanded);margin-bottom:var(--oasys-spacing-expanded)}.ui-rce ol,.ui-prose ol,article ol{list-style-type:decimal;list-style-position:inside}.ui-rce ul,.ui-prose ul,article ul{list-style:initial;list-style-position:inside}.ui-rce .ui-rce-embed,.ui-prose .ui-rce-embed,article .ui-rce-embed{padding-top:var(--oasys-prose-vertical-adjustment-component-top-bottom);margin-bottom:var(--oasys-prose-vertical-adjustment-component-top-bottom)}.ui-rce .ui-rce-embed ui-button a,.ui-rce .ui-rce-embed ui-button a:hover,.ui-prose .ui-rce-embed ui-button a,.ui-prose .ui-rce-embed ui-button a:hover,article .ui-rce-embed ui-button a,article .ui-rce-embed ui-button a:hover{text-decoration:none}.ui-rce>ui-box .ui-box-content>*:first-child{padding-top:0}.ui-rce>ui-box .ui-box-content>*:last-child{margin-bottom:0}.ui-rce .ui-rce-instance:last-of-type{padding-bottom:var(--oasys-spacing-expanded)}.ui-rce ui-button,.ui-rce img{display:inline-block;margin:0;margin-top:var(--oasys-spacing-near);margin-right:var(--oasys-spacing-near);vertical-align:top}.ui-rce ui-button:last-child,.ui-rce img:last-child{margin-right:0}.ui-rce img{width:100%}.ui-rce ol p,.ui-rce ul p{display:inline;margin:0}form fieldset legend{margin-bottom:var(--oasys-spacing-near)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container{display:none!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-combobox,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors .input-errors-content,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .hint-container,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .hint-container{display:none!important}.ui-checkbox input,.ui-radio input,.ui-text-input input,.ui-combobox input{appearance:none;margin:0;border:none}.ui-checkbox input,.ui-radio input{cursor:pointer}.ui-checkbox,.ui-radio{--_inset: var(--oasys-spacing-near);--_radius: var(--oasys-radius-soften);--_transition_duration: calc(var(--oasys-animation-duration) * 1ms)}.ui-checkbox input,.ui-radio input{position:absolute;inset:0;border-radius:var(--oasys-radius-soften)}.ui-checkbox input.secondary,.ui-radio input.secondary{inset:unset;top:var(--_inset);--_focusSize: var(--oasys-typography-heading-label-secondary-line-height);width:var(--_focusSize);height:var(--_focusSize)}.ui-checkbox input+label,.ui-radio input+label{width:inherit;display:flex;align-items:center;gap:var(--oasys-spacing-tight)}.ui-checkbox input+label .icon-container,.ui-radio input+label .icon-container{align-self:flex-start;padding:var(--oasys-component-checkbox-icon-inset);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected);border-radius:var(--_radius)}.ui-checkbox input+label .input-hint:empty,.ui-radio input+label .input-hint:empty{display:none}.ui-checkbox input+label.primary,.ui-radio input+label.primary{padding:var(--_inset);border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-checkbox input+label.secondary,.ui-radio input+label.secondary{padding:var(--_inset) 0}.ui-checkbox input+label.secondary .icon-container,.ui-radio input+label.secondary .icon-container{background:transparent;border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)}.ui-checkbox input+label,.ui-checkbox input+label .icon-container,.ui-radio input+label,.ui-radio input+label .icon-container{transition:background-color calc(var(--_transition_duration) * 1ms),border-color calc(var(--_transition_duration) * 1ms)}.ui-checkbox input:hover+label.primary,.ui-checkbox input:checked+label.primary,.ui-radio input:hover+label.primary,.ui-radio input:checked+label.primary{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:hover+label.secondary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:hover+label.secondary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:checked+label.primary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:checked+label.primary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-border-selected);border-color:var(--oasys-color-interaction-border-selected);color:var(--oasys-color-brand-foreground-primary-on-dark)}.ui-checkbox input:checked+label.primary,.ui-radio input:checked+label.primary{border-color:var(--oasys-color-interaction-border-selected)!important}.ui-checkbox input.ng-touched.ng-invalid+label,.ui-radio input.ng-touched.ng-invalid+label{color:var(--oasys-color-system-foreground-negative)}.ui-checkbox input.ng-touched.ng-invalid+label .icon-container,.ui-radio input.ng-touched.ng-invalid+label .icon-container{border-color:var(--oasys-color-system-foreground-negative)}.ui-chip .ui-checkbox input+label .icon-container.icon--hidden,.ui-chip .ui-radio input+label .icon-container.icon--hidden{display:none}.ui-chip .ui-checkbox input+label .label--center,.ui-chip .ui-radio input+label .label--center{margin:0 auto}.ui-chip .ui-checkbox input:checked+label.primary,.ui-chip .ui-radio input:checked+label.primary{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)!important}.oasys-focus-style,.ui-combobox div[name=combobox].keyboard-focus:focus,.ui-combobox div[name=combobox].keyboard-focus:focus-visible,.ui-combobox div[name=combobox].keyboard-focus:focus-within,[tabindex]:focus-visible,[tabindex]:focus,select:focus-visible,select:focus,textarea:focus-visible,textarea:focus,input:focus-visible,input:focus,button:focus-visible,button:focus,a:focus-visible,a:focus{outline:var(--oasys-border-width-focus) solid var(--oasys-color-interaction-border-focus);outline-offset:var(--oasys-border-width-focus-offset)}a:focus:not(:focus-visible){outline:none}button:focus:not(:focus-visible){outline:none}input:focus:not(:focus-visible){outline:none}textarea:focus:not(:focus-visible){outline:none}select:focus:not(:focus-visible){outline:none}[tabindex]:focus:not(:focus-visible){outline:none}:host{display:block;width:100%}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-text-input,:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors .input-errors-content{visibility:visible!important}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .hint-container{display:none!important}.foreground-secondary-text{color:var(--oasys-color-brand-foreground-secondary)}.ui-combobox{--_label-height: var(--oasys-typography-body-supporting-line-height);--_label-input-gap: var(--oasys-spacing-tiny);--_label-top-inset: var(--oasys-spacing-near);--_input-inset-top: calc( var(--_label-height) + var(--_label-input-gap) + var(--_label-top-inset) );--_preface-width: var(--oasys-component-text-input-preface-width);position:relative;border-radius:var(--oasys-radius-soften);width:100%;background-color:var(--oasys-color-white)}.ui-combobox{transition:border calc(var(--oasys-animation-duration-long) * 1ms);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox div[name=combobox]{cursor:pointer;padding-right:var(--oasys-spacing-near)}.ui-combobox-footer,.ui-combobox-header{padding:var(--oasys-spacing-tight) var(--oasys-spacing-near);text-align:center}.ui-combobox-footer{cursor:pointer;border-top:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-header{color:var(--oasys-color-brand-foreground-secondary);border-bottom:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-options{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);background-color:var(--oasys-color-white);box-shadow:0 24px 36px #2626261a;border-radius:var(--oasys-radius-soften);box-sizing:border-box;width:100%;height:auto;margin-top:var(--oasys-spacing-near);position:absolute;pointer-events:auto;outline:0;overflow:auto;transform-origin:top center;grid-template-rows:0fr;opacity:0;transition:opacity var(--_ad) cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:opacity;z-index:1000}.ui-combobox-options.expand{opacity:1}.ui-combobox-option{cursor:pointer;border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) transparent;padding:var(--oasys-spacing-near);outline:none;outline-offset:none}.ui-combobox-option:hover,.ui-combobox-option.selected{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox-option.focus{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften);border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-option:focus-visible{border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-options.keyboard-open .ui-combobox-option:hover:not(.focus){background-color:transparent;border-radius:0}.ui-combobox-options.keyboard-open .ui-combobox-option.focus:hover{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox input,.ui-combobox .select{padding:var(--oasys-spacing-near);padding-top:var(--oasys-spacing-tiny)}.ui-combobox input{border:none;width:100%;background-color:transparent}.ui-combobox input:focus{outline:none}.ui-combobox input{cursor:pointer}.ui-combobox-container .input-errors{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);display:grid;grid-template-rows:0fr;overflow:hidden;opacity:0;transform:translateY(-33%);transition:grid-template-rows var(--_ad),opacity var(--_ad),transform var(--_ad);transition-timing-function:cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:grid-template-rows,transform,opacity}.ui-combobox-container .input-errors .input-errors-content{min-height:0;visibility:hidden;transition:visibility var(--_ad)}.ui-combobox-container .input-errors .hint-container{display:block!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .hint-container{display:none!important}.ui-combobox-container:has(input:disabled) input,.ui-combobox-container:has(input:disabled) .select{background-color:none;color:var(--oasys-component-text-input-color-disabled-foreground)}.ui-combobox-container:has(input:disabled) .ui-combobox-input{background-color:var(--oasys-component-text-input-color-disabled-background)}.ui-combobox .label-container{padding-top:var(--oasys-spacing-near);padding-left:var(--oasys-spacing-near);width:calc(100% - var(--oasys-spacing-near) - var(--oasys-spacing-near))}.ui-combobox .label-container,.ui-combobox .label-container label{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-combobox .icon-container:hover{transform:scale(1.1)}.ui-combobox .icon-container{transition:all calc(var(--oasys-animation-duration-long) * 1ms) ease;transform-origin:center}.ui-combobox .icon-container.expand{transform:rotate(-179.999deg)}.ui-combobox:has(.input-preface:not(:empty)){--_left-inset: calc(var(--oasys-spacing-near) + var(--_preface-width))}.ui-combobox:has(.input-preface:not(:empty)) .label-container{left:var(--_left-inset);width:calc(100% - var(--_left-inset) - var(--oasys-spacing-near))}.ui-combobox:has(.input-preface:not(:empty)) input,.ui-combobox:has(.input-preface:not(:empty)) .select{padding-left:var(--_left-inset)}.ui-combobox .input-preface{width:var(--_preface-width);height:100%;position:absolute;display:flex;justify-content:center;align-items:center;pointer-events:none;flex-direction:column;text-align:center;border-right:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox .input-preface:empty{visibility:hidden}\n"] }]
|
|
3733
|
-
}],
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
}], options: [{
|
|
3741
|
-
type: Input
|
|
3742
|
-
}], optional: [{
|
|
3743
|
-
type: Input
|
|
3744
|
-
}], hint: [{
|
|
3745
|
-
type: Input,
|
|
3746
|
-
args: [{ required: false }]
|
|
3747
|
-
}], header: [{
|
|
3748
|
-
type: Input,
|
|
3749
|
-
args: [{ required: false }]
|
|
3750
|
-
}], footer: [{
|
|
3751
|
-
type: Input,
|
|
3752
|
-
args: [{ required: false }]
|
|
3753
|
-
}], autofocus: [{
|
|
3754
|
-
type: Input,
|
|
3755
|
-
args: [{ required: false }]
|
|
3756
|
-
}], disabled: [{
|
|
3757
|
-
type: Input,
|
|
3758
|
-
args: [{ required: false }]
|
|
3759
|
-
}], selected: [{
|
|
3760
|
-
type: Input,
|
|
3761
|
-
args: [{ required: false }]
|
|
3762
|
-
}], displayKey: [{
|
|
3763
|
-
type: Input,
|
|
3764
|
-
args: [{ required: false }]
|
|
3765
|
-
}], iconNameKey: [{
|
|
3766
|
-
type: Input,
|
|
3767
|
-
args: [{ required: false }]
|
|
3768
|
-
}], valueKey: [{
|
|
3769
|
-
type: Input,
|
|
3770
|
-
args: [{ required: false }]
|
|
3771
|
-
}], subtextKey: [{
|
|
3772
|
-
type: Input,
|
|
3773
|
-
args: [{ required: false }]
|
|
3774
|
-
}], placeholder: [{
|
|
3775
|
-
type: Input,
|
|
3776
|
-
args: [{ required: false }]
|
|
3777
|
-
}], showOptions: [{
|
|
3778
|
-
type: Input,
|
|
3779
|
-
args: [{ required: false }]
|
|
3780
|
-
}], didChange: [{
|
|
3781
|
-
type: Output
|
|
3782
|
-
}], didSearch: [{
|
|
3783
|
-
type: Output
|
|
3784
|
-
}], didEdit: [{
|
|
3785
|
-
type: Output
|
|
3786
|
-
}], textInput: [{
|
|
3787
|
-
type: ViewChild,
|
|
3788
|
-
args: ['textinput', { read: ElementRef }]
|
|
3789
|
-
}], combobox: [{
|
|
3790
|
-
type: ViewChild,
|
|
3791
|
-
args: ['combobox', { read: ElementRef }]
|
|
3792
|
-
}], optionsList: [{
|
|
3793
|
-
type: ViewChildren,
|
|
3794
|
-
args: ['option']
|
|
3795
|
-
}], onClick: [{
|
|
3716
|
+
], template: "<ui-stack class=\"ui-combobox-container\" stack_gap=\"tight\">\n <div class=\"ui-combobox text-body--default text-body--regular\">\n <!-- Compbobox Options Input -->\n @if (type() === 'options') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled() ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (mousedown)=\"togglePanel()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label()\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId() : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n [attr.disabled]=\"disabled() || null\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n [class.keyboard-focus]=\"shouldShowFocus()\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id()\">{{\n label()\n }}</label>\n </div>\n <input\n #textinput\n (focus)=\"onScreenReaderFocus()\"\n [id]=\"id()\"\n [name]=\"id()\"\n [ngModel]=\"textValue()\"\n (ngModelChange)=\"onModelChange($event)\"\n (blur)=\"onModelChange(textValue())\"\n [ngClass]=\"inputDidChange() ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled() || null\"\n [autofocus]=\"autofocus()\"\n [autocomplete]=\"'on'\"\n [required]=\"!optional()\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"selectedOption()\"\n [placeholder]=\"placeholder() || ''\"\n readonly=\"readonly\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n <!-- Select Icon Chevron Area -->\n <div class=\"icon-container\" [ngClass]=\"{ expand: panelOpen() }\">\n <ui-icon icon_name=\"chevron-down\"></ui-icon>\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Autocomplete Input -->\n @if (type() === 'autocomplete') {\n <div\n #combobox\n name=\"combobox\"\n [tabindex]=\"disabled() ? -1 : 0\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"onFocusInput()\"\n role=\"combobox\"\n id=\"activedescendent-edit\"\n [attr.aria-label]=\"label()\"\n [attr.aria-activedescendant]=\"panelOpen() ? 'activedescendent-opt-' + focusedId() : null\"\n [attr.aria-expanded]=\"panelOpen()\"\n [attr.aria-controls]=\"'activedescendent-list'\"\n aria-readonly=\"true\"\n aria-owns=\"activedescendent-list\"\n aria-autocomplete=\"list\"\n [class.keyboard-focus]=\"shouldShowFocus()\"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <ui-box box_space=\"none\" box_background=\"transparent\">\n <!-- Select Label Area -->\n <div class=\"label-container\" stack_direction=\"x\">\n <label class=\"text-body--supporting text-body--regular\" [for]=\"id()\">{{\n label()\n }}</label>\n </div>\n <input\n #textinput\n [id]=\"id()\"\n [name]=\"id()\"\n [ngModel]=\"textValue()\"\n (click)=\"onTextInputClick()\"\n (ngModelChange)=\"onModelChangeAutocomplete($event)\"\n [ngClass]=\"inputDidChange() ? 'ng-input-did-change' : 'ng-input-did-not-change'\"\n [attr.autocorrect]=\"'on'\"\n [attr.disabled]=\"disabled() || null\"\n [autofocus]=\"autofocus()\"\n [autocomplete]=\"'list'\"\n [required]=\"!optional()\"\n [spellcheck]=\"'on'\"\n [type]=\"'text'\"\n [value]=\"textValue()\"\n [placeholder]=\"placeholder() || ''\"\n role=\"combobox\"\n tabindex=\"-1\"\n class=\"text-body--default text-body--regular\"\n />\n </ui-box>\n\n <!-- Combobox Icon Clear Area -->\n <div class=\"icon-container\">\n @if (textValue()) {\n <ui-button\n button_type=\"tertiary\"\n button_size=\"small\"\n button_icon=\"close\"\n button_icon_placement=\"iconOnly\"\n [aria_label]=\"clearLabel()\"\n (clicked)=\"cleanInput()\"\n (keydown.enter)=\"$event.stopPropagation()\"\n (keydown.space)=\"$event.stopPropagation()\"\n >\n {{ clearLabel() }}\n </ui-button>\n }\n </div>\n </ui-stack>\n </div>\n }\n <!-- Combobox Options Panel -->\n @if (panelOpen()) {\n <div\n class=\"ui-combobox-options\"\n [ngClass]=\"{ expand: panelOpen(), 'keyboard-open': shouldShowFocus() }\"\n role=\"listbox\"\n id=\"activedescendent-list\"\n >\n <!-- Autocomplete Options Panel Header -->\n @if (header() && type() === 'autocomplete') {\n <div class=\"ui-combobox-header text-body--supporting\">\n <span>{{ header() }}</span>\n </div>\n }\n\n <!-- Options list -->\n @for (option of displayOptions(); track option; let i = $index) {\n <div\n #option\n class=\"ui-combobox-option\"\n [ngClass]=\"{\n selected:\n selectedOption() === option && (!shouldShowFocus() || focusedOption() === option),\n focus: shouldShowFocus() && focusedOption() === option,\n }\"\n (click)=\"selectOption(option, i)\"\n (keydown)=\"onKeyDown($event)\"\n [id]=\"'activedescendent-opt-' + i\"\n [attr.aria-selected]=\"selectedOption() === option\"\n [attr.aria-label]=\"\n selectedOption() === option\n ? option[displayOptionKey()] + ' ' + selectedLabel()\n : option[displayOptionKey()]\n \"\n >\n <ui-stack\n stack_direction=\"x\"\n stack_distribute=\"space-between\"\n stack_align=\"center\"\n stack_gap=\"tight\"\n >\n <!-- Option display -->\n <div\n [attr.value]=\"valueKey() ? option[valueKey()!] : option.value\"\n [attr.ngValue]=\"displayKey() ? option[displayKey()!] : option.label\"\n >\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_gap=\"tight\">\n @if (option.icon_name || (iconNameKey() && option[iconNameKey()!])) {\n <ui-icon\n [icon_name]=\"iconNameKey() ? option[iconNameKey()!] : option.icon_name\"\n ></ui-icon>\n }\n <!-- Display options label -->\n @if (type() === 'options') {\n <span>{{ option[displayOptionKey()] }}</span>\n }\n\n <!-- Display autocomplete option information and emphasis-->\n @if (type() === 'autocomplete') {\n <ui-stack stack_gap=\"tiny\">\n <span\n ui-emphasis\n [searchText]=\"textValue()\"\n [displayParagraph]=\"option[displayOptionKey()]\"\n >\n </span>\n <p class=\"foreground-secondary-text\">\n {{ option[subtextOptionKey()] }}\n </p>\n </ui-stack>\n }\n </ui-stack>\n </div>\n\n <!-- Selected icon -->\n @if (selectedOption() === option) {\n <ui-icon icon_name=\"tick\"></ui-icon>\n }\n </ui-stack>\n </div>\n }\n <!-- Autocomplete Options Panel Footer -->\n @if (footer() && type() === 'autocomplete') {\n <div class=\"ui-combobox-footer\">\n <ui-button button_type=\"tertiary\" (click)=\"onFooterAction()\">\n {{ footer() }}\n </ui-button>\n </div>\n }\n </div>\n }\n </div>\n <ui-stack stack_gap=\"none\">\n <div class=\"input-errors\">\n <div class=\"input-errors-content\">\n <ng-content select=\"ui-form-errors\"></ng-content>\n </div>\n </div>\n @if (hint()) {\n <ui-box\n class=\"hint-container\"\n box_background=\"transparent\"\n box_space=\"none\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"near\"\n >\n <div class=\"ui-text-input-hint text-body--supporting text-color--supporting\">\n {{ hint() }}\n </div>\n </ui-box>\n }\n </ui-stack>\n</ui-stack>\n", styles: ["html{font-size:62.5%}html,html body{font-family:var(--oasys-typography-body-body-font-family);font-weight:var(--oasys-typography-body-body-font-weight);font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);color:var(--oasys-color-brand-foreground-primary)}html b,html bold,html strong,html body b,html body bold,html body strong{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}html i,html body i{font-style:normal}h1,h2,h3,.text-heading,.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-family:var(--oasys-typography-heading-hero-desktop-font-family)}h4,h5,h6,.text-heading--functional,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family)}ui-container h1,ui-container h2,ui-container h3,ui-container h4,ui-container h5,ui-container h6,ui-container p,ui-box h1,ui-box h2,ui-box h3,ui-box h4,ui-box h5,ui-box h6,ui-box p,ui-stack h1,ui-stack h2,ui-stack h3,ui-stack h4,ui-stack h5,ui-stack h6,ui-stack p,ui-grid h1,ui-grid h2,ui-grid h3,ui-grid h4,ui-grid h5,ui-grid h6,ui-grid p{margin:0}h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){h1:not(.seo-h1){font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-hero-desktop-font-size);line-height:var(--oasys-typography-heading-hero-desktop-line-height);font-weight:var(--oasys-typography-heading-hero-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--hero,h1.text-heading--hero,h2.text-heading--hero,h3.text-heading--hero,h4.text-heading--hero,h5.text-heading--hero,h6.text-heading--hero{font-size:var(--oasys-typography-heading-hero-mobile-font-size);line-height:var(--oasys-typography-heading-hero-mobile-line-height);font-weight:var(--oasys-typography-heading-hero-mobile-font-weight)}}h2{font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h2{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-primary-desktop-font-size);line-height:var(--oasys-typography-heading-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--primary,h1.text-heading--primary,h2.text-heading--primary,h3.text-heading--primary,h4.text-heading--primary,h5.text-heading--primary,h6.text-heading--primary{font-size:var(--oasys-typography-heading-primary-mobile-font-size);line-height:var(--oasys-typography-heading-primary-mobile-line-height);font-weight:var(--oasys-typography-heading-primary-mobile-font-weight)}}h3{font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}.text-heading--secondary,h1.text-heading--secondary,h2.text-heading--secondary,h3.text-heading--secondary,h4.text-heading--secondary,h5.text-heading--secondary,h6.text-heading--secondary{font-family:var(--oasys-typography-heading-hero-desktop-font-family);font-size:var(--oasys-typography-heading-secondary-font-size);line-height:var(--oasys-typography-heading-secondary-line-height);font-weight:var(--oasys-typography-heading-secondary-font-weight)}h4{font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){h4{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-primary-desktop-font-size);line-height:var(--oasys-typography-heading-func-primary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-primary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--primary,.ui-rce h2,.ui-prose h2,article h2,h1.text-heading--functional--primary,h2.text-heading--functional--primary,h3.text-heading--functional--primary,h4.text-heading--functional--primary,h5.text-heading--functional--primary,h6.text-heading--functional--primary{font-size:var(--oasys-typography-heading-func-primary-mobile-font-size);line-height:var(--oasys-typography-heading-func-primary-mobile-line-height)}}h5{font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){h5{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-family:var(--oasys-typography-heading-func-primary-desktop-font-family);font-size:var(--oasys-typography-heading-func-secondary-desktop-font-size);line-height:var(--oasys-typography-heading-func-secondary-desktop-line-height);font-weight:var(--oasys-typography-heading-func-secondary-desktop-font-weight)}@media only screen and (max-width: 767px){.text-heading--functional--secondary,.ui-rce h3,.ui-prose h3,article h3,h1.text-heading--functional--secondary,h2.text-heading--functional--secondary,h3.text-heading--functional--secondary,h4.text-heading--functional--secondary,h5.text-heading--functional--secondary,h6.text-heading--functional--secondary{font-size:var(--oasys-typography-heading-func-secondary-mobile-font-size);line-height:var(--oasys-typography-heading-func-secondary-mobile-line-height);font-weight:var(--oasys-typography-heading-func-secondary-mobile-font-weight)}}label{-webkit-user-select:none;user-select:none;cursor:pointer}label,.text-label--primary{font-size:var(--oasys-typography-heading-label-primary-font-size);line-height:var(--oasys-typography-heading-label-primary-line-height);font-weight:var(--oasys-typography-heading-label-primary-font-weight)}.text-label--secondary{font-size:var(--oasys-typography-heading-label-secondary-font-size);line-height:var(--oasys-typography-heading-label-secondary-line-height);font-weight:var(--oasys-typography-heading-label-secondary-font-weight)}.text-body--expressive,.ui-rce blockquote,.ui-prose blockquote,article blockquote,.text-heading--body--expressive{font-size:var(--oasys-typography-body-expressive-font-size);line-height:var(--oasys-typography-body-expressive-line-height);font-weight:var(--oasys-typography-body-expressive-font-weight)}.text-body--hero,.ui-rce h6,.ui-prose h6,article h6,.ui-combobox input:-webkit-autofill:first-line,.ui-combobox .select:-webkit-autofill:first-line{font-size:var(--oasys-typography-body-hero-font-size);line-height:var(--oasys-typography-body-hero-line-height);font-weight:var(--oasys-typography-body-hero-font-weight)}.text-body--default,.ui-rce p{font-size:var(--oasys-typography-body-body-font-size);line-height:var(--oasys-typography-body-body-line-height);font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--supporting{font-size:var(--oasys-typography-body-supporting-font-size);line-height:var(--oasys-typography-body-supporting-line-height);font-weight:var(--oasys-typography-body-supporting-font-weight)}.text-body--micro{font-size:var(--oasys-typography-body-micro-font-size);line-height:var(--oasys-typography-body-micro-line-height);font-weight:var(--oasys-typography-body-micro-font-weight)}.text-body--regular,.ui-rce h6,.ui-prose h6,article h6{font-weight:var(--oasys-typography-body-body-font-weight)}.text-body--line-through{text-decoration:var(--oasys-typography-body-line-through-body-text-decoration)}.text-body--emphasis,.ui-rce h3,.ui-prose h3,article h3,.ui-rce h2,.ui-prose h2,article h2,a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover,.ui-combobox input,.ui-combobox .select{font-weight:var(--oasys-typography-body-emphasis-hero-font-weight)}.text-color--on-light{color:var(--oasys-color-brand-foreground-primary)}.text-color--on-light.text-color--supporting,.text-color--on-light .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--on-dark{color:var(--oasys-color-brand-foreground-primary-on-dark)}.text-color--on-dark.text-color--supporting,.text-color--on-dark .text-color--supporting{color:var(--oasys-color-brand-foreground-secondary-on-dark)}.text-color--supporting{color:var(--oasys-color-brand-foreground-secondary)}.text-color--error{color:var(--oasys-color-system-foreground-negative)}.text-color--highlight{color:var(--oasys-color-brand-foreground-highlight)}a{color:inherit;text-decoration:none}.text--readable-width,.ui-rce blockquote,.ui-prose blockquote,article blockquote{max-width:70ch}a,.text-link,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:none;cursor:pointer}a--standalone,.text-link--standalone,.ui-rce .ui-rce-embed a,.ui-rce .ui-rce-embed a:hover,.ui-prose .ui-rce-embed a,.ui-prose .ui-rce-embed a:hover,article .ui-rce-embed a,article .ui-rce-embed a:hover{text-decoration:underline}a--paragraph,.text-link--paragraph,.ui-rce a,.ui-rce a:hover,.ui-prose a,.ui-prose a:hover,article a,article a:hover{text-decoration:underline;font-weight:inherit}.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h2,.ui-prose h2,article h2{padding-top:var(--oasys-prose-vertical-adjustment-heading-primary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-primary-small-bottom)}}.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-large-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-large-bottom)}@media only screen and (max-width: 767px){.ui-rce h3,.ui-prose h3,article h3{padding-top:var(--oasys-prose-vertical-adjustment-heading-secondary-small-top);margin-bottom:var(--oasys-prose-vertical-adjustment-heading-secondary-small-bottom)}}.ui-rce p,.ui-rce ul,.ui-rce ol,.ui-prose p,.ui-prose ul,.ui-prose ol,article p,article ul,article ol{margin-bottom:var(--oasys-prose-vertical-adjustment-paragraph-bottom)}.ui-rce p:empty,.ui-rce ul:empty,.ui-rce ol:empty,.ui-prose p:empty,.ui-prose ul:empty,.ui-prose ol:empty,article p:empty,article ul:empty,article ol:empty{display:none}.ui-rce blockquote,.ui-prose blockquote,article blockquote{padding-top:var(--oasys-prose-vertical-adjustment-blockquote-top);margin-bottom:var(--oasys-prose-vertical-adjustment-blockquote-bottom);text-align:center;margin:0 auto}.ui-rce hr,.ui-prose hr,article hr{display:block;width:100%;border:0;padding:0;margin:0;height:var(--oasys-size-unit-8);background:var(--oasys-color-brand-background-secondary);margin-top:var(--oasys-spacing-expanded);margin-bottom:var(--oasys-spacing-expanded)}.ui-rce ol,.ui-prose ol,article ol{list-style-type:decimal;list-style-position:inside}.ui-rce ul,.ui-prose ul,article ul{list-style:initial;list-style-position:inside}.ui-rce .ui-rce-embed,.ui-prose .ui-rce-embed,article .ui-rce-embed{padding-top:var(--oasys-prose-vertical-adjustment-component-top-bottom);margin-bottom:var(--oasys-prose-vertical-adjustment-component-top-bottom)}.ui-rce .ui-rce-embed ui-button a,.ui-rce .ui-rce-embed ui-button a:hover,.ui-prose .ui-rce-embed ui-button a,.ui-prose .ui-rce-embed ui-button a:hover,article .ui-rce-embed ui-button a,article .ui-rce-embed ui-button a:hover{text-decoration:none}.ui-rce>ui-box .ui-box-content>*:first-child{padding-top:0}.ui-rce>ui-box .ui-box-content>*:last-child{margin-bottom:0}.ui-rce .ui-rce-instance:last-of-type{padding-bottom:var(--oasys-spacing-expanded)}.ui-rce ui-button,.ui-rce img{display:inline-block;margin:0;margin-top:var(--oasys-spacing-near);margin-right:var(--oasys-spacing-near);vertical-align:top}.ui-rce ui-button:last-child,.ui-rce img:last-child{margin-right:0}.ui-rce img{width:100%}.ui-rce ol p,.ui-rce ul p{display:inline;margin:0}form fieldset legend{margin-bottom:var(--oasys-spacing-near)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-text-input,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty .ui-text-input-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container,form.ng-dirty .ui-combobox-container:has(input.ng-invalid.ng-input-did-change:not(:focus-within)) .hint-container{display:none!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .ui-combobox,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-text-input,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .input-errors .input-errors-content,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .input-errors .input-errors-content{visibility:visible!important}form.ng-dirty.ng-submitted .ui-text-input-container:has(input.ng-invalid) .hint-container,form.ng-dirty.ng-submitted .ui-combobox-container:has(input.ng-invalid) .hint-container{display:none!important}.ui-checkbox input,.ui-radio input,.ui-text-input input,.ui-combobox input{appearance:none;margin:0;border:none}.ui-checkbox input,.ui-radio input{cursor:pointer}.ui-checkbox,.ui-radio{--_inset: var(--oasys-spacing-near);--_radius: var(--oasys-radius-soften);--_transition_duration: calc(var(--oasys-animation-duration) * 1ms)}.ui-checkbox input,.ui-radio input{position:absolute;inset:0;border-radius:var(--oasys-radius-soften)}.ui-checkbox input.secondary,.ui-radio input.secondary{inset:unset;top:var(--_inset);--_focusSize: var(--oasys-typography-heading-label-secondary-line-height);width:var(--_focusSize);height:var(--_focusSize)}.ui-checkbox input+label,.ui-radio input+label{width:inherit;display:flex;align-items:center;gap:var(--oasys-spacing-tight)}.ui-checkbox input+label .icon-container,.ui-radio input+label .icon-container{align-self:flex-start;padding:var(--oasys-component-checkbox-icon-inset);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected);border-radius:var(--_radius)}.ui-checkbox input+label .input-hint:empty,.ui-radio input+label .input-hint:empty{display:none}.ui-checkbox input+label.primary,.ui-radio input+label.primary{padding:var(--_inset);border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-checkbox input+label.secondary,.ui-radio input+label.secondary{padding:var(--_inset) 0}.ui-checkbox input+label.secondary .icon-container,.ui-radio input+label.secondary .icon-container{background:transparent;border-radius:var(--_radius);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)}.ui-checkbox input+label,.ui-checkbox input+label .icon-container,.ui-radio input+label,.ui-radio input+label .icon-container{transition:background-color calc(var(--_transition_duration) * 1ms),border-color calc(var(--_transition_duration) * 1ms)}.ui-checkbox input:hover+label.primary,.ui-checkbox input:checked+label.primary,.ui-radio input:hover+label.primary,.ui-radio input:checked+label.primary{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:hover+label.secondary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:hover+label.secondary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-background-selected)}.ui-checkbox input:checked+label.primary .icon-container,.ui-checkbox input:checked+label.secondary .icon-container,.ui-radio input:checked+label.primary .icon-container,.ui-radio input:checked+label.secondary .icon-container{background:var(--oasys-color-interaction-border-selected);border-color:var(--oasys-color-interaction-border-selected);color:var(--oasys-color-brand-foreground-primary-on-dark)}.ui-checkbox input:checked+label.primary,.ui-radio input:checked+label.primary{border-color:var(--oasys-color-interaction-border-selected)!important}.ui-checkbox input.ng-touched.ng-invalid+label,.ui-radio input.ng-touched.ng-invalid+label{color:var(--oasys-color-system-foreground-negative)}.ui-checkbox input.ng-touched.ng-invalid+label .icon-container,.ui-radio input.ng-touched.ng-invalid+label .icon-container{border-color:var(--oasys-color-system-foreground-negative)}.ui-chip .ui-checkbox input+label .icon-container.icon--hidden,.ui-chip .ui-radio input+label .icon-container.icon--hidden{display:none}.ui-chip .ui-checkbox input+label .label--center,.ui-chip .ui-radio input+label .label--center{margin:0 auto}.ui-chip .ui-checkbox input:checked+label.primary,.ui-chip .ui-radio input:checked+label.primary{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selected)!important}.oasys-focus-style,.ui-combobox div[name=combobox].keyboard-focus:focus,.ui-combobox div[name=combobox].keyboard-focus:focus-visible,.ui-combobox div[name=combobox].keyboard-focus:focus-within,[tabindex]:focus-visible,[tabindex]:focus,select:focus-visible,select:focus,textarea:focus-visible,textarea:focus,input:focus-visible,input:focus,button:focus-visible,button:focus,a:focus-visible,a:focus{outline:var(--oasys-border-width-focus) solid var(--oasys-color-interaction-border-focus);outline-offset:var(--oasys-border-width-focus-offset)}a:focus:not(:focus-visible){outline:none}button:focus:not(:focus-visible){outline:none}input:focus:not(:focus-visible){outline:none}textarea:focus:not(:focus-visible){outline:none}select:focus:not(:focus-visible){outline:none}[tabindex]:focus:not(:focus-visible){outline:none}:host{display:block;width:100%}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-text-input,:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .input-errors .input-errors-content{visibility:visible!important}:host.ng-touched.ng-dirty.ng-invalid:not(:focus-within) .ui-combobox-container .hint-container{display:none!important}.foreground-secondary-text{color:var(--oasys-color-brand-foreground-secondary)}.ui-combobox{--_label-height: var(--oasys-typography-body-supporting-line-height);--_label-input-gap: var(--oasys-spacing-tiny);--_label-top-inset: var(--oasys-spacing-near);--_input-inset-top: calc( var(--_label-height) + var(--_label-input-gap) + var(--_label-top-inset) );--_preface-width: var(--oasys-component-text-input-preface-width);position:relative;border-radius:var(--oasys-radius-soften);width:100%;background-color:var(--oasys-color-white)}.ui-combobox{transition:border calc(var(--oasys-animation-duration-long) * 1ms);border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox div[name=combobox]{cursor:pointer;padding-right:var(--oasys-spacing-near)}.ui-combobox-footer,.ui-combobox-header{padding:var(--oasys-spacing-tight) var(--oasys-spacing-near);text-align:center}.ui-combobox-footer{cursor:pointer;border-top:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-header{color:var(--oasys-color-brand-foreground-secondary);border-bottom:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox-options{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);background-color:var(--oasys-color-white);box-shadow:0 24px 36px #2626261a;border-radius:var(--oasys-radius-soften);box-sizing:border-box;width:100%;height:auto;max-height:60vh;margin-top:var(--oasys-spacing-near);position:absolute;pointer-events:auto;outline:0;overflow-y:auto;transform-origin:top center;grid-template-rows:0fr;opacity:0;transition:opacity var(--_ad) cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:opacity;z-index:1000}.ui-combobox-options.expand{opacity:1}.ui-combobox-option{cursor:pointer;border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) transparent;padding:var(--oasys-spacing-near);outline:none;outline-offset:none}.ui-combobox-option:hover,.ui-combobox-option.selected{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox-option.focus{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften);border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-option:focus-visible{border-left:var(--oasys-border-width-focus-offset) var(--oasys-component-box-border-style-solid) var(--oasys-color-interaction-border-focus)}.ui-combobox-options.keyboard-open .ui-combobox-option:hover:not(.focus){background-color:transparent;border-radius:0}.ui-combobox-options.keyboard-open .ui-combobox-option.focus:hover{background-color:var(--oasys-color-interaction-background-selected);border-radius:var(--oasys-radius-soften)}.ui-combobox input,.ui-combobox .select{padding:var(--oasys-spacing-near);padding-top:var(--oasys-spacing-tiny)}.ui-combobox input{border:none;width:100%;background-color:transparent}.ui-combobox input:focus{outline:none}.ui-combobox input{cursor:pointer}.ui-combobox-container .input-errors{--_ad: calc(var(--oasys-animation-duration-long) * 1ms);display:grid;grid-template-rows:0fr;overflow:hidden;opacity:0;transform:translateY(-33%);transition:grid-template-rows var(--_ad),opacity var(--_ad),transform var(--_ad);transition-timing-function:cubic-bezier(var(--oasys-animation-timing-function-soft));will-change:grid-template-rows,transform,opacity}.ui-combobox-container .input-errors .input-errors-content{min-height:0;visibility:hidden;transition:visibility var(--_ad)}.ui-combobox-container .input-errors .hint-container{display:block!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .ui-combobox,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-text-input,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .ui-combobox{border:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-danger)}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors{grid-template-rows:1fr;transform:translateY(0);opacity:1}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .input-errors .input-errors-content,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .input-errors .input-errors-content{visibility:visible!important}.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty.ng-input-did-change:not(:focus-within)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched.ng-dirty:not(:focus)) .hint-container,.ui-combobox-container:has(.ng-invalid.ng-touched:not(:focus-within)) .hint-container{display:none!important}.ui-combobox-container:has(input:disabled) input,.ui-combobox-container:has(input:disabled) .select{background-color:none;color:var(--oasys-component-text-input-color-disabled-foreground)}.ui-combobox-container:has(input:disabled) .ui-combobox-input{background-color:var(--oasys-component-text-input-color-disabled-background)}.ui-combobox .label-container{padding-top:var(--oasys-spacing-near);padding-left:var(--oasys-spacing-near);width:calc(100% - var(--oasys-spacing-near) - var(--oasys-spacing-near))}.ui-combobox .label-container,.ui-combobox .label-container label{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-combobox .icon-container:hover{transform:scale(1.1)}.ui-combobox .icon-container{transition:all calc(var(--oasys-animation-duration-long) * 1ms) ease;transform-origin:center}.ui-combobox .icon-container.expand{transform:rotate(-179.999deg)}.ui-combobox:has(.input-preface:not(:empty)){--_left-inset: calc(var(--oasys-spacing-near) + var(--_preface-width))}.ui-combobox:has(.input-preface:not(:empty)) .label-container{left:var(--_left-inset);width:calc(100% - var(--_left-inset) - var(--oasys-spacing-near))}.ui-combobox:has(.input-preface:not(:empty)) input,.ui-combobox:has(.input-preface:not(:empty)) .select{padding-left:var(--_left-inset)}.ui-combobox .input-preface{width:var(--_preface-width);height:100%;position:absolute;display:flex;justify-content:center;align-items:center;pointer-events:none;flex-direction:column;text-align:center;border-right:var(--oasys-border-width-primary) solid var(--oasys-color-interaction-border-selectable)}.ui-combobox .input-preface:empty{visibility:hidden}\n"] }]
|
|
3717
|
+
}], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], optional: [{ type: i0.Input, args: [{ isSignal: true, alias: "optional", required: false }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: false }] }], header: [{ type: i0.Input, args: [{ isSignal: true, alias: "header", required: false }] }], footer: [{ type: i0.Input, args: [{ isSignal: true, alias: "footer", required: false }] }], autofocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autofocus", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], selected: [{ type: i0.Input, args: [{ isSignal: true, alias: "selected", required: false }] }], displayKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayKey", required: false }] }], iconNameKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconNameKey", required: false }] }], valueKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueKey", required: false }] }], subtextKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "subtextKey", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], showOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "showOptions", required: false }] }], clearLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearLabel", required: false }] }], selectedLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedLabel", required: false }] }], didChange: [{ type: i0.Output, args: ["didChange"] }], didSearch: [{ type: i0.Output, args: ["didSearch"] }], didEdit: [{ type: i0.Output, args: ["didEdit"] }], textInput: [{ type: i0.ViewChild, args: ['textinput', { ...{
|
|
3718
|
+
read: ElementRef,
|
|
3719
|
+
}, isSignal: true }] }], combobox: [{ type: i0.ViewChild, args: ['combobox', { ...{
|
|
3720
|
+
read: ElementRef,
|
|
3721
|
+
}, isSignal: true }] }], optionsList: [{ type: i0.ViewChildren, args: ['option', { ...{
|
|
3722
|
+
read: ElementRef,
|
|
3723
|
+
}, isSignal: true }] }], onClick: [{
|
|
3796
3724
|
type: HostListener,
|
|
3797
3725
|
args: ['document:click', ['$event.target']]
|
|
3798
3726
|
}] } });
|
|
3799
3727
|
|
|
3800
|
-
/** @deprecated Import the standalone ComboboxComponent directly instead. */
|
|
3801
|
-
/**
|
|
3802
|
-
* @ngModule OasysComboboxModule
|
|
3803
|
-
* @description
|
|
3804
|
-
*
|
|
3805
|
-
* A combo box is a text box with a list box attached.
|
|
3806
|
-
* This type of control enables users to select a predefined value in a list or type their own value in the text box portion of the control.
|
|
3807
|
-
*
|
|
3808
|
-
* @usageNotes
|
|
3809
|
-
*
|
|
3810
|
-
* @example of a Combobox Options type
|
|
3811
|
-
* <ui-combobox
|
|
3812
|
-
* formControlName="select"
|
|
3813
|
-
* label="Label"
|
|
3814
|
-
* [options]="[
|
|
3815
|
-
* {value:'option 1', label: '1 week'},
|
|
3816
|
-
* {value:'option 2', label: '2 weeks' },
|
|
3817
|
-
* {value:'option 3', label: '3 weeks'},
|
|
3818
|
-
* {value:'option 4', label: '4 weeks'} ]"
|
|
3819
|
-
* hint="Hint!! Please select frequency"
|
|
3820
|
-
* [selected]="{value:'option 3', label: '3 weeks' }"
|
|
3821
|
-
* ></ui-combobox>
|
|
3822
|
-
*
|
|
3823
|
-
* Pug:
|
|
3824
|
-
* ui-combobox(
|
|
3825
|
-
* formControlName="select"
|
|
3826
|
-
* label="Label"
|
|
3827
|
-
* [options]="[
|
|
3828
|
-
* {value:'option 1', label: '1 week'},
|
|
3829
|
-
* {value:'option 2', label: '2 weeks' },
|
|
3830
|
-
* {value:'option 3', label: '3 weeks'},
|
|
3831
|
-
* {value:'option 4', label: '4 weeks'} ]"
|
|
3832
|
-
* hint="Hint!! Please select frequency"
|
|
3833
|
-
* [selected]="{value:'option 3', label: '3 weeks' }")
|
|
3834
|
-
*
|
|
3835
|
-
*
|
|
3836
|
-
* @example of a Combobox Autocomplete type
|
|
3837
|
-
* <ui-combobox
|
|
3838
|
-
* formControlName="select"
|
|
3839
|
-
* type="autocomplete"
|
|
3840
|
-
* footer="Add manual an option"
|
|
3841
|
-
* label="Label"
|
|
3842
|
-
* [options]="[
|
|
3843
|
-
* {value:'option 1', label: '1 week'},
|
|
3844
|
-
* {value:'option 2', label: '2 weeks' },
|
|
3845
|
-
* {value:'option 3', label: '3 weeks'},
|
|
3846
|
-
* {value:'option 4', label: '4 weeks'} ]"
|
|
3847
|
-
* hint="Hint!! Please select frequency"
|
|
3848
|
-
* [selected]="{value:'option 3', label: '3 weeks' }"
|
|
3849
|
-
* ></ui-combobox>
|
|
3850
|
-
*
|
|
3851
|
-
* Pug:
|
|
3852
|
-
* ui-combobox(
|
|
3853
|
-
* formControlName="select"
|
|
3854
|
-
* type="autocomplete"
|
|
3855
|
-
* footer="Add manual an option"
|
|
3856
|
-
* label="Label"
|
|
3857
|
-
* [options]="[
|
|
3858
|
-
* {value:'option 1', label: '1 week'},
|
|
3859
|
-
* {value:'option 2', label: '2 weeks' },
|
|
3860
|
-
* {value:'option 3', label: '3 weeks'},
|
|
3861
|
-
* {value:'option 4', label: '4 weeks'} ]"
|
|
3862
|
-
* hint="Hint!! Please select frequency"
|
|
3863
|
-
* [selected]="{value:'option 3', label: '3 weeks' }")
|
|
3864
|
-
*
|
|
3865
|
-
* @OasysLib
|
|
3866
|
-
*/
|
|
3867
|
-
class OasysComboboxModule {
|
|
3868
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3869
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxModule, imports: [ComboboxComponent], exports: [ComboboxComponent] });
|
|
3870
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxModule, imports: [ComboboxComponent] });
|
|
3871
|
-
}
|
|
3872
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: OasysComboboxModule, decorators: [{
|
|
3873
|
-
type: NgModule,
|
|
3874
|
-
args: [{
|
|
3875
|
-
imports: [ComboboxComponent],
|
|
3876
|
-
exports: [ComboboxComponent],
|
|
3877
|
-
}]
|
|
3878
|
-
}] });
|
|
3879
|
-
|
|
3880
3728
|
class OasysTabComponent {
|
|
3881
3729
|
tab_label = undefined;
|
|
3882
3730
|
tab_active = false;
|
|
@@ -4182,5 +4030,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
4182
4030
|
* Generated bundle index. Do not edit.
|
|
4183
4031
|
*/
|
|
4184
4032
|
|
|
4185
|
-
export { BannerComponent, BreadcrumbsComponent, CardComponent, CarouselComponent, CheckboxComponent, ChipComponent,
|
|
4033
|
+
export { BannerComponent, BreadcrumbsComponent, CardComponent, CarouselComponent, CheckboxComponent, ChipComponent, DividerComponent, FormErrorsComponent, FormGroupComponent, HeroComponent, IMAGE_BREAKPOINTS, IMAGE_URL_PROVIDER, IconComponent, ImageComponent, LayoutBoxComponent, LayoutContainerComponent, LayoutGridColumnComponent, LayoutGridComponent, LayoutStackComponent, OasysAlertCancelDirective, OasysAlertComponent, OasysAlertConfirmDirective, OasysAlertContentDirective, OasysAlertModule, OasysAlertTitleDirective, BannerComponent as OasysBannerComponent, OasysBannerModule, OasysBreadcrumbModule, BreadcrumbsComponent as OasysBreadcrumbsComponent, OasysButtonComponent, OasysButtonGroupComponent, OasysButtonGroupModule, OasysButtonModule, CardComponent as OasysCardComponent, OasysCardModule, CarouselComponent as OasysCarouselComponent, OasysCarouselModule, CheckboxComponent as OasysCheckboxComponent, OasysCheckboxModule, ChipComponent as OasysChipComponent, OasysChipModule, OasysComboboxComponent, DividerComponent as OasysDividerComponent, OasysDividerModule, FormErrorsComponent as OasysFormErrorsComponent, OasysFormErrorsModule, OasysFormErrorsSummaryComponent, OasysFormErrorsSummaryItemComponent, OasysFormErrorsSummaryTitleComponent, FormGroupComponent as OasysFormGroupComponent, OasysFormGroupModule, OasysHeadingComponent, OasysHeadingModule, HeroComponent as OasysHeroComponent, OasysHeroModule, IconComponent as OasysIconComponent, OasysIconModule, ImageComponent as OasysImageComponent, OasysImageModule, LayoutBoxComponent as OasysLayoutBoxComponent, LayoutContainerComponent as OasysLayoutContainerComponent, LayoutGridColumnComponent as OasysLayoutGridColumnComponent, LayoutGridComponent as OasysLayoutGridComponent, OasysLayoutModule, LayoutStackComponent as OasysLayoutStackComponent, OasysPillComponent, OasysPillGroupComponent, OasysPillGroupModule, OasysPillModule, ProgressBarComponent as OasysProgressBarComponent, PromoCardComponent as OasysPromoCardComponent, OasysPromoCardModule, RadioComponent as OasysRadioComponent, OasysRadioModule, SectionComponent as OasysSectionComponent, SelectCardComponent as OasysSelectCardComponent, OasysSelectCardModule, SeoBlockComponent as OasysSeoBlockComponent, OasysSeoBlockModule, OasysTabComponent, OasysTabGroupComponent, OasysTabsModule, TextComponent as OasysTextComponent, TextInputComponent as OasysTextInputComponent, OasysTextInputModule, OasysTextModule, ProgressBarComponent, PromoCardComponent, ROUTING_HANDLER, RadioComponent, SWIPER_PROVIDER_TOKEN, SectionComponent, SectionModule, SelectCardComponent, SeoBlockComponent, SwiperProvider, TextComponent };
|
|
4186
4034
|
//# sourceMappingURL=oasys-lib.mjs.map
|