@vsn-ux/ngx-gaia 0.9.14 → 0.9.16
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/vsn-ux-ngx-gaia.mjs +55 -39
- package/fesm2022/vsn-ux-ngx-gaia.mjs.map +1 -1
- package/index.d.ts +5 -1
- package/package.json +1 -1
|
@@ -1734,8 +1734,9 @@ class GaDatepickerInputDirective {
|
|
|
1734
1734
|
this.formatValue();
|
|
1735
1735
|
}
|
|
1736
1736
|
if (emitToNgModel) {
|
|
1737
|
-
this.onNgTouchedFn?.();
|
|
1738
1737
|
this.onNgChangeFn?.(value);
|
|
1738
|
+
// NOTE: ngTouched must be called after ngChange to work with `updateOn: 'blur'` strategy
|
|
1739
|
+
this.onNgTouchedFn?.();
|
|
1739
1740
|
this.dateInput.emit(value);
|
|
1740
1741
|
this.dateChange.emit(value);
|
|
1741
1742
|
}
|
|
@@ -4454,8 +4455,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
4454
4455
|
}, template: "@if (withInput()) {\n @if (selectComponent.multiple()) {\n <ga-checkbox\n [checked]=\"selected()\"\n [disabled]=\"disabled()\"\n aria-hidden=\"true\"\n style=\"pointer-events: none\"\n tabindex=\"-1\"\n />\n } @else {\n <ga-radio-button\n [checked]=\"selected()\"\n [disabled]=\"disabled()\"\n aria-hidden=\"true\"\n style=\"pointer-events: none\"\n tabindex=\"-1\"\n />\n }\n}\n<div class=\"ga-dropdown__item-label\"><ng-content /></div>\n" }]
|
|
4455
4456
|
}], ctorParameters: () => [] });
|
|
4456
4457
|
|
|
4458
|
+
function GA_DATA_SELECT_I18N_FACTORY() {
|
|
4459
|
+
return new GaDataSelectI18nDefault();
|
|
4460
|
+
}
|
|
4461
|
+
class GaDataSelectI18n {
|
|
4462
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4463
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, providedIn: 'root', useFactory: GA_DATA_SELECT_I18N_FACTORY });
|
|
4464
|
+
}
|
|
4465
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, decorators: [{
|
|
4466
|
+
type: Injectable,
|
|
4467
|
+
args: [{
|
|
4468
|
+
providedIn: 'root',
|
|
4469
|
+
useFactory: GA_DATA_SELECT_I18N_FACTORY,
|
|
4470
|
+
}]
|
|
4471
|
+
}] });
|
|
4472
|
+
class GaDataSelectI18nDefault extends GaDataSelectI18n {
|
|
4473
|
+
/** A label for the clear button */
|
|
4474
|
+
clearLabel = 'Clear';
|
|
4475
|
+
/** A label for the search input */
|
|
4476
|
+
searchInputLabel = 'Search';
|
|
4477
|
+
/** A label shown when there are no options to display */
|
|
4478
|
+
noOptionsLabel = 'No options';
|
|
4479
|
+
/** A label shown when the display limit is reached in multi-select mode */
|
|
4480
|
+
displayLimitReachedLabel = (counter) => `+${counter} more`;
|
|
4481
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
4482
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault });
|
|
4483
|
+
}
|
|
4484
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault, decorators: [{
|
|
4485
|
+
type: Injectable
|
|
4486
|
+
}] });
|
|
4487
|
+
function provideGaDataSelectI18n(value) {
|
|
4488
|
+
return makeEnvironmentProviders([
|
|
4489
|
+
typeof value === 'function'
|
|
4490
|
+
? { provide: GaDataSelectI18n, useFactory: value }
|
|
4491
|
+
: { provide: GaDataSelectI18n, useValue: value },
|
|
4492
|
+
]);
|
|
4493
|
+
}
|
|
4494
|
+
|
|
4457
4495
|
class GaDataSelectValueComponent {
|
|
4458
4496
|
selectComponent = inject(GaDataSelectComponent);
|
|
4497
|
+
i18n = inject(GaDataSelectI18n);
|
|
4459
4498
|
icons = { X };
|
|
4460
4499
|
customValueTemplate = input();
|
|
4461
4500
|
customValueTemplateContext = (item) => {
|
|
@@ -4493,53 +4532,29 @@ class GaDataSelectValueComponent {
|
|
|
4493
4532
|
.items()
|
|
4494
4533
|
.filter((item) => value.some((v) => this.selectComponent.compareFn()(this.selectComponent.getItemValue(item), v)));
|
|
4495
4534
|
});
|
|
4535
|
+
visibleSelectedItems = computed(() => {
|
|
4536
|
+
const items = this.selectedItems();
|
|
4537
|
+
const limit = this.selectComponent.valueDisplayLimit();
|
|
4538
|
+
if (limit === null || limit >= items.length) {
|
|
4539
|
+
return items;
|
|
4540
|
+
}
|
|
4541
|
+
return items.slice(0, limit);
|
|
4542
|
+
});
|
|
4543
|
+
hiddenItemsCount = computed(() => {
|
|
4544
|
+
return this.selectedItems().length - this.visibleSelectedItems().length;
|
|
4545
|
+
});
|
|
4496
4546
|
deselectOption(value) {
|
|
4497
4547
|
this.selectComponent.deselectValue(value);
|
|
4498
4548
|
}
|
|
4499
4549
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4500
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: GaDataSelectValueComponent, isStandalone: true, selector: "ga-data-select-value", inputs: { customValueTemplate: { classPropertyName: "customValueTemplate", publicName: "customValueTemplate", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "ga-select__value" }, ngImport: i0, template: "@if (selectComponent.multiple()) {\n @for (\n selectedItem of
|
|
4550
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: GaDataSelectValueComponent, isStandalone: true, selector: "ga-data-select-value", inputs: { customValueTemplate: { classPropertyName: "customValueTemplate", publicName: "customValueTemplate", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "ga-select__value" }, ngImport: i0, template: "@if (selectComponent.multiple()) {\n @for (\n selectedItem of visibleSelectedItems();\n track selectComponent.getItemValue(selectedItem)\n ) {\n <div\n class=\"ga-tag\"\n [class.ga-tag--interactive-selected]=\"!selectComponent.disabled()\"\n [class.ga-tag--interactive-selected-disabled]=\"selectComponent.disabled()\"\n >\n <span class=\"ga-tag__label\">\n @if (customValueTemplate(); as templateRef) {\n <ng-container\n [ngTemplateOutlet]=\"templateRef\"\n [ngTemplateOutletContext]=\"customValueTemplateContext(selectedItem)\"\n />\n } @else {\n {{ selectComponent.getItemLabel(selectedItem) }}\n }\n </span>\n @if (!selectComponent.disabled()) {\n <div class=\"ga-tag__separator\"></div>\n <ga-icon\n [icon]=\"icons.X\"\n size=\"16\"\n class=\"ga-tag__icon\"\n (click)=\"\n deselectOption(selectComponent.getItemValue(selectedItem));\n $event.stopPropagation()\n \"\n />\n }\n </div>\n }\n @if (hiddenItemsCount() > 0) {\n <div\n class=\"ga-tag\"\n [class.ga-tag--interactive-selected]=\"!selectComponent.disabled()\"\n [class.ga-tag--interactive-selected-disabled]=\"selectComponent.disabled()\"\n >\n <span class=\"ga-tag__label\">{{\n i18n.displayLimitReachedLabel(hiddenItemsCount())\n }}</span>\n </div>\n }\n} @else {\n @if (customValueTemplate(); as templateRef) {\n <ng-container\n [ngTemplateOutlet]=\"templateRef\"\n [ngTemplateOutletContext]=\"\n customValueTemplateContext(selectComponent.selectedItem())\n \"\n />\n } @else {\n {{ singleViewValue() }}\n }\n}\n", dependencies: [{ kind: "ngmodule", type: GaIconModule }, { kind: "component", type: GaIconComponent, selector: "ga-icon", inputs: ["icon", "size", "color", "strokeWidth"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
4501
4551
|
}
|
|
4502
4552
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectValueComponent, decorators: [{
|
|
4503
4553
|
type: Component,
|
|
4504
4554
|
args: [{ selector: 'ga-data-select-value', imports: [GaIconModule, NgTemplateOutlet], host: {
|
|
4505
4555
|
class: 'ga-select__value',
|
|
4506
|
-
}, template: "@if (selectComponent.multiple()) {\n @for (\n selectedItem of
|
|
4507
|
-
}] });
|
|
4508
|
-
|
|
4509
|
-
function GA_DATA_SELECT_I18N_FACTORY() {
|
|
4510
|
-
return new GaDataSelectI18nDefault();
|
|
4511
|
-
}
|
|
4512
|
-
class GaDataSelectI18n {
|
|
4513
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4514
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, providedIn: 'root', useFactory: GA_DATA_SELECT_I18N_FACTORY });
|
|
4515
|
-
}
|
|
4516
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18n, decorators: [{
|
|
4517
|
-
type: Injectable,
|
|
4518
|
-
args: [{
|
|
4519
|
-
providedIn: 'root',
|
|
4520
|
-
useFactory: GA_DATA_SELECT_I18N_FACTORY,
|
|
4521
|
-
}]
|
|
4522
|
-
}] });
|
|
4523
|
-
class GaDataSelectI18nDefault extends GaDataSelectI18n {
|
|
4524
|
-
/** A label for the clear button */
|
|
4525
|
-
clearLabel = 'Clear';
|
|
4526
|
-
/** A label for the search input */
|
|
4527
|
-
searchInputLabel = 'Search';
|
|
4528
|
-
/** A label shown when there are no options to display */
|
|
4529
|
-
noOptionsLabel = 'No options';
|
|
4530
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
4531
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault });
|
|
4532
|
-
}
|
|
4533
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectI18nDefault, decorators: [{
|
|
4534
|
-
type: Injectable
|
|
4556
|
+
}, template: "@if (selectComponent.multiple()) {\n @for (\n selectedItem of visibleSelectedItems();\n track selectComponent.getItemValue(selectedItem)\n ) {\n <div\n class=\"ga-tag\"\n [class.ga-tag--interactive-selected]=\"!selectComponent.disabled()\"\n [class.ga-tag--interactive-selected-disabled]=\"selectComponent.disabled()\"\n >\n <span class=\"ga-tag__label\">\n @if (customValueTemplate(); as templateRef) {\n <ng-container\n [ngTemplateOutlet]=\"templateRef\"\n [ngTemplateOutletContext]=\"customValueTemplateContext(selectedItem)\"\n />\n } @else {\n {{ selectComponent.getItemLabel(selectedItem) }}\n }\n </span>\n @if (!selectComponent.disabled()) {\n <div class=\"ga-tag__separator\"></div>\n <ga-icon\n [icon]=\"icons.X\"\n size=\"16\"\n class=\"ga-tag__icon\"\n (click)=\"\n deselectOption(selectComponent.getItemValue(selectedItem));\n $event.stopPropagation()\n \"\n />\n }\n </div>\n }\n @if (hiddenItemsCount() > 0) {\n <div\n class=\"ga-tag\"\n [class.ga-tag--interactive-selected]=\"!selectComponent.disabled()\"\n [class.ga-tag--interactive-selected-disabled]=\"selectComponent.disabled()\"\n >\n <span class=\"ga-tag__label\">{{\n i18n.displayLimitReachedLabel(hiddenItemsCount())\n }}</span>\n </div>\n }\n} @else {\n @if (customValueTemplate(); as templateRef) {\n <ng-container\n [ngTemplateOutlet]=\"templateRef\"\n [ngTemplateOutletContext]=\"\n customValueTemplateContext(selectComponent.selectedItem())\n \"\n />\n } @else {\n {{ singleViewValue() }}\n }\n}\n" }]
|
|
4535
4557
|
}] });
|
|
4536
|
-
function provideGaDataSelectI18n(value) {
|
|
4537
|
-
return makeEnvironmentProviders([
|
|
4538
|
-
typeof value === 'function'
|
|
4539
|
-
? { provide: GaDataSelectI18n, useFactory: value }
|
|
4540
|
-
: { provide: GaDataSelectI18n, useValue: value },
|
|
4541
|
-
]);
|
|
4542
|
-
}
|
|
4543
4558
|
|
|
4544
4559
|
class GaDataSelectDropdownSpinnerComponent {
|
|
4545
4560
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectDropdownSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -4776,6 +4791,7 @@ class GaDataSelectComponent {
|
|
|
4776
4791
|
groupBy = input();
|
|
4777
4792
|
loading = input(false, { transform: booleanAttribute });
|
|
4778
4793
|
withOptionInput = input(null, { transform: booleanAttribute });
|
|
4794
|
+
valueDisplayLimit = input(null, { transform: numberAttribute });
|
|
4779
4795
|
searchValueChange = output();
|
|
4780
4796
|
opened = output();
|
|
4781
4797
|
closed = output();
|
|
@@ -5198,7 +5214,7 @@ class GaDataSelectComponent {
|
|
|
5198
5214
|
}
|
|
5199
5215
|
}
|
|
5200
5216
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: GaDataSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5201
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: GaDataSelectComponent, isStandalone: true, selector: "ga-data-select", inputs: { multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalidInput: { classPropertyName: "invalidInput", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, compareFn: { classPropertyName: "compareFn", publicName: "compareFn", isSignal: true, isRequired: false, transformFunction: null }, searchable: { classPropertyName: "searchable", publicName: "searchable", isSignal: true, isRequired: false, transformFunction: null }, customFilter: { classPropertyName: "customFilter", publicName: "customFilter", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, clearableLabel: { classPropertyName: "clearableLabel", publicName: "clearableLabel", isSignal: true, isRequired: false, transformFunction: null }, noOptionsLabel: { classPropertyName: "noOptionsLabel", publicName: "noOptionsLabel", isSignal: true, isRequired: false, transformFunction: null }, canSelectNullable: { classPropertyName: "canSelectNullable", publicName: "canSelectNullable", isSignal: true, isRequired: false, transformFunction: null }, leftIcon: { classPropertyName: "leftIcon", publicName: "leftIcon", isSignal: true, isRequired: false, transformFunction: null }, idInput: { classPropertyName: "idInput", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, bindValue: { classPropertyName: "bindValue", publicName: "bindValue", isSignal: true, isRequired: false, transformFunction: null }, bindLabel: { classPropertyName: "bindLabel", publicName: "bindLabel", isSignal: true, isRequired: false, transformFunction: null }, groupBy: { classPropertyName: "groupBy", publicName: "groupBy", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, withOptionInput: { classPropertyName: "withOptionInput", publicName: "withOptionInput", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", searchValueChange: "searchValueChange", opened: "opened", closed: "closed", optionsEndReached: "optionsEndReached" }, host: { attributes: { "role": "combobox", "aria-haspopup": "listbox" }, listeners: { "click": "toggle()", "keydown.arrowdown": "open(); $event.preventDefault()", "keydown.space": "open(); $event.preventDefault()", "keydown.enter": "open(); $event.preventDefault()", "keydown.backspace": "clearValue(); $event.preventDefault()" }, properties: { "attr.id": "id()", "class.ga-select--multi": "multiple()", "class.ga-select--expanded": "isOpen()", "class.ga-select--disabled": "disabled()", "class.ga-select--invalid": "invalid()", "class.ga-select--empty": "!hasValue()", "attr.aria-expanded": "isOpen()", "attr.aria-controls": "isOpen() ? cdkListbox()?.id : null", "attr.aria-invalid": "invalid()", "attr.aria-disabled": "disabled()", "attr.aria-owns": "isOpen() && searchable() ? cdkListbox()?.id : null", "attr.aria-activedescendant": "isOpen() && !searchable() ? activeDescendantId() : null", "attr.tabindex": "disabled() ? -1 : 0" }, classAttribute: "ga-select" }, providers: [
|
|
5217
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: GaDataSelectComponent, isStandalone: true, selector: "ga-data-select", inputs: { multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabledInput: { classPropertyName: "disabledInput", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalidInput: { classPropertyName: "invalidInput", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, compareFn: { classPropertyName: "compareFn", publicName: "compareFn", isSignal: true, isRequired: false, transformFunction: null }, searchable: { classPropertyName: "searchable", publicName: "searchable", isSignal: true, isRequired: false, transformFunction: null }, customFilter: { classPropertyName: "customFilter", publicName: "customFilter", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, clearableLabel: { classPropertyName: "clearableLabel", publicName: "clearableLabel", isSignal: true, isRequired: false, transformFunction: null }, noOptionsLabel: { classPropertyName: "noOptionsLabel", publicName: "noOptionsLabel", isSignal: true, isRequired: false, transformFunction: null }, canSelectNullable: { classPropertyName: "canSelectNullable", publicName: "canSelectNullable", isSignal: true, isRequired: false, transformFunction: null }, leftIcon: { classPropertyName: "leftIcon", publicName: "leftIcon", isSignal: true, isRequired: false, transformFunction: null }, idInput: { classPropertyName: "idInput", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, bindValue: { classPropertyName: "bindValue", publicName: "bindValue", isSignal: true, isRequired: false, transformFunction: null }, bindLabel: { classPropertyName: "bindLabel", publicName: "bindLabel", isSignal: true, isRequired: false, transformFunction: null }, groupBy: { classPropertyName: "groupBy", publicName: "groupBy", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, withOptionInput: { classPropertyName: "withOptionInput", publicName: "withOptionInput", isSignal: true, isRequired: false, transformFunction: null }, valueDisplayLimit: { classPropertyName: "valueDisplayLimit", publicName: "valueDisplayLimit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", searchValueChange: "searchValueChange", opened: "opened", closed: "closed", optionsEndReached: "optionsEndReached" }, host: { attributes: { "role": "combobox", "aria-haspopup": "listbox" }, listeners: { "click": "toggle()", "keydown.arrowdown": "open(); $event.preventDefault()", "keydown.space": "open(); $event.preventDefault()", "keydown.enter": "open(); $event.preventDefault()", "keydown.backspace": "clearValue(); $event.preventDefault()" }, properties: { "attr.id": "id()", "class.ga-select--multi": "multiple()", "class.ga-select--expanded": "isOpen()", "class.ga-select--disabled": "disabled()", "class.ga-select--invalid": "invalid()", "class.ga-select--empty": "!hasValue()", "attr.aria-expanded": "isOpen()", "attr.aria-controls": "isOpen() ? cdkListbox()?.id : null", "attr.aria-invalid": "invalid()", "attr.aria-disabled": "disabled()", "attr.aria-owns": "isOpen() && searchable() ? cdkListbox()?.id : null", "attr.aria-activedescendant": "isOpen() && !searchable() ? activeDescendantId() : null", "attr.tabindex": "disabled() ? -1 : 0" }, classAttribute: "ga-select" }, providers: [
|
|
5202
5218
|
{
|
|
5203
5219
|
provide: NG_VALUE_ACCESSOR,
|
|
5204
5220
|
useExisting: forwardRef(() => GaDataSelectComponent),
|