@ngstarter-ui/components 21.0.49 → 21.0.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/ai/component-registry.json +53 -12
  2. package/fesm2022/ngstarter-ui-components-country-select.mjs +1 -1
  3. package/fesm2022/ngstarter-ui-components-country-select.mjs.map +1 -1
  4. package/fesm2022/ngstarter-ui-components-currency-select.mjs +1 -1
  5. package/fesm2022/ngstarter-ui-components-currency-select.mjs.map +1 -1
  6. package/fesm2022/ngstarter-ui-components-date-format-select.mjs +1 -1
  7. package/fesm2022/ngstarter-ui-components-date-format-select.mjs.map +1 -1
  8. package/fesm2022/ngstarter-ui-components-filter-builder.mjs +1 -1
  9. package/fesm2022/ngstarter-ui-components-filter-builder.mjs.map +1 -1
  10. package/fesm2022/ngstarter-ui-components-form-builder.mjs +196 -11
  11. package/fesm2022/ngstarter-ui-components-form-builder.mjs.map +1 -1
  12. package/fesm2022/ngstarter-ui-components-image-designer.mjs +1 -1
  13. package/fesm2022/ngstarter-ui-components-image-designer.mjs.map +1 -1
  14. package/fesm2022/ngstarter-ui-components-option.mjs +2 -2
  15. package/fesm2022/ngstarter-ui-components-option.mjs.map +1 -1
  16. package/fesm2022/ngstarter-ui-components-paginator.mjs +1 -1
  17. package/fesm2022/ngstarter-ui-components-paginator.mjs.map +1 -1
  18. package/fesm2022/ngstarter-ui-components-select.mjs +474 -27
  19. package/fesm2022/ngstarter-ui-components-select.mjs.map +1 -1
  20. package/fesm2022/ngstarter-ui-components-timezone-select.mjs +1 -1
  21. package/fesm2022/ngstarter-ui-components-timezone-select.mjs.map +1 -1
  22. package/package.json +1 -1
  23. package/styles/_tokens.scss +1 -1
  24. package/types/ngstarter-ui-components-form-builder.d.ts +42 -2
  25. package/types/ngstarter-ui-components-select.d.ts +112 -3
@@ -2,7 +2,9 @@ import * as _angular_forms from '@angular/forms';
2
2
  import { ValidatorFn, FormControl, FormGroup, FormArray } from '@angular/forms';
3
3
  import * as _angular_core from '@angular/core';
4
4
  import { Type, InjectionToken, EnvironmentProviders, Provider, OnDestroy, TemplateRef } from '@angular/core';
5
+ import { SelectDataSource, SelectOptionContentContext, SelectValueContext } from '@ngstarter-ui/components/select';
5
6
  import { TreeNodeDropPosition, Tree, TreeNodeDrop } from '@ngstarter-ui/components/tree';
7
+ import * as _ngstarter_ui_components_form_builder from '@ngstarter-ui/components/form-builder';
6
8
  import { DateRangeInput } from '@ngstarter-ui/components/datepicker';
7
9
  import { RadioGroupOrientation } from '@ngstarter-ui/components/radio';
8
10
  import { UploadFileSelectedEvent } from '@ngstarter-ui/components/upload';
@@ -10,11 +12,26 @@ import { UploadFileSelectedEvent } from '@ngstarter-ui/components/upload';
10
12
  type FormBuilderFieldWidth = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
11
13
  type FormBuilderItemKind = 'field' | 'layout' | 'static';
12
14
  type FormBuilderSettingsInheritance = 'field' | 'input-field' | 'layout' | 'layout-container' | 'static' | 'none';
15
+ type FormBuilderSelectOptionsSource = 'static' | 'dataSource';
13
16
  interface FormBuilderOption {
14
17
  label: string;
15
18
  value: any;
16
19
  selected?: boolean;
17
20
  }
21
+ interface FormBuilderSelectDataSourceOptions {
22
+ pageSize?: number;
23
+ searchable?: boolean;
24
+ searchDebounce?: number;
25
+ minSearchLength?: number;
26
+ loadOnOpen?: boolean;
27
+ }
28
+ interface FormBuilderSelectDataSourceDefinition {
29
+ id: string;
30
+ name: string;
31
+ dataSource: SelectDataSource;
32
+ optionContentComponent?: Type<any>;
33
+ valueComponent?: Type<any>;
34
+ }
18
35
  interface FormBuilderValidationRule {
19
36
  type: 'required' | 'email' | 'minLength' | 'maxLength' | 'min' | 'max' | string;
20
37
  value?: any;
@@ -36,6 +53,9 @@ interface FormBuilderField {
36
53
  readonly?: boolean;
37
54
  width?: FormBuilderFieldWidth;
38
55
  options?: FormBuilderOption[];
56
+ optionsSource?: FormBuilderSelectOptionsSource;
57
+ dataSource?: string;
58
+ dataSourceOptions?: FormBuilderSelectDataSourceOptions;
39
59
  validation?: FormBuilderValidationRule[];
40
60
  settings?: Record<string, any>;
41
61
  children?: FormBuilderField[];
@@ -130,15 +150,19 @@ declare const FORM_BUILDER_ITEMS: InjectionToken<FormBuilderItemDefinition[]>;
130
150
  declare const FORM_BUILDER_FIELDS: InjectionToken<FormBuilderFieldDefinition[]>;
131
151
  declare const FORM_BUILDER_SETTINGS: InjectionToken<FormBuilderSettingsDefinition[]>;
132
152
  declare const FORM_BUILDER_UPLOAD_CALLBACK: InjectionToken<FormBuilderUploadCallback>;
153
+ declare const FORM_BUILDER_SELECT_DATA_SOURCES: InjectionToken<FormBuilderSelectDataSourceDefinition[]>;
133
154
  declare function formBuilderField(definition: FormBuilderFieldDefinition): FormBuilderFieldDefinition;
134
155
  declare function formBuilderItem(definition: FormBuilderItemDefinition): FormBuilderItemDefinition;
135
156
  declare function formBuilderSettings(definition: FormBuilderSettingsDefinition): FormBuilderSettingsDefinition;
136
157
  declare function provideFormBuilderField(definition: FormBuilderFieldDefinition): Provider;
137
158
  declare function provideFormBuilderFields(definitions: FormBuilderFieldDefinition[]): Provider[];
159
+ declare function provideFormBuilderSelectDataSource(definition: FormBuilderSelectDataSourceDefinition): Provider;
160
+ declare function provideFormBuilderSelectDataSources(definitions: FormBuilderSelectDataSourceDefinition[]): Provider[];
138
161
  declare function provideFormBuilder(config?: {
139
162
  items?: FormBuilderItemDefinition[];
140
163
  fields?: FormBuilderFieldDefinition[];
141
164
  settings?: FormBuilderSettingsDefinition[];
165
+ selectDataSources?: FormBuilderSelectDataSourceDefinition[];
142
166
  uploadCallback?: FormBuilderUploadCallback;
143
167
  }): EnvironmentProviders;
144
168
  declare const FORM_BUILDER_FIELD_BASE_SETTINGS_SCHEMA: FormBuilderSchema;
@@ -369,6 +393,7 @@ declare class FormRenderer {
369
393
 
370
394
  declare class FormBuilderFieldHost {
371
395
  private readonly providedUploadCallback;
396
+ private readonly selectDataSources;
372
397
  readonly field: _angular_core.InputSignal<FormBuilderField>;
373
398
  readonly control: _angular_core.InputSignal<FormControl<any>>;
374
399
  readonly definitions: _angular_core.InputSignal<FormBuilderFieldDefinition[]>;
@@ -386,9 +411,21 @@ declare class FormBuilderFieldHost {
386
411
  protected readonly spacerHeight: _angular_core.Signal<number>;
387
412
  protected readonly dateRangeStartValue: _angular_core.Signal<string>;
388
413
  protected readonly dateRangeEndValue: _angular_core.Signal<string>;
414
+ protected readonly selectUsesDataSource: _angular_core.Signal<boolean>;
415
+ protected readonly selectDataSourceDefinition: _angular_core.Signal<_ngstarter_ui_components_form_builder.FormBuilderSelectDataSourceDefinition | null>;
416
+ protected readonly selectDataSource: _angular_core.Signal<SelectDataSource | null>;
417
+ protected readonly selectOptionContentComponent: _angular_core.Signal<Type<any> | null>;
418
+ protected readonly selectValueComponent: _angular_core.Signal<Type<any> | null>;
419
+ protected readonly selectPageSize: _angular_core.Signal<number>;
420
+ protected readonly selectSearchable: _angular_core.Signal<boolean>;
421
+ protected readonly selectSearchDebounce: _angular_core.Signal<number>;
422
+ protected readonly selectMinSearchLength: _angular_core.Signal<number>;
423
+ protected readonly selectLoadOnOpen: _angular_core.Signal<boolean>;
389
424
  private readonly anchor;
390
425
  constructor();
391
426
  protected onUploadFilesSelected(event: UploadFileSelectedEvent): Promise<void>;
427
+ protected selectOptionContentInputs(data: unknown, option: SelectOptionContentContext['option'], value: unknown, label: string, selected: boolean, disabled: boolean, multiple: boolean): Record<string, unknown>;
428
+ protected selectValueInputs(data: SelectValueContext['data'], option: SelectValueContext['option'], value: SelectValueContext['value'], label: string, labels: string[], count: number, multiple: boolean): Record<string, unknown>;
392
429
  protected onDateRangeChanged(rangeInput: DateRangeInput<any>): void;
393
430
  private formatDateRangePart;
394
431
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormBuilderFieldHost, never>;
@@ -396,6 +433,7 @@ declare class FormBuilderFieldHost {
396
433
  }
397
434
 
398
435
  declare class FormBuilderSettingsHost {
436
+ private readonly selectDataSources;
399
437
  readonly field: _angular_core.InputSignal<FormBuilderField | null>;
400
438
  readonly section: _angular_core.InputSignal<FormBuilderSection | null>;
401
439
  readonly schema: _angular_core.InputSignal<FormBuilderSchema>;
@@ -417,6 +455,8 @@ declare class FormBuilderSettingsHost {
417
455
  private resolveOwnSettingsSchema;
418
456
  private inferSettingsInheritance;
419
457
  private baseSettingsSchema;
458
+ private withRegisteredSelectDataSources;
459
+ private withSelectDataSourceOptions;
420
460
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormBuilderSettingsHost, never>;
421
461
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormBuilderSettingsHost, "ngs-form-builder-settings-host", ["ngsFormBuilderSettingsHost"], { "field": { "alias": "field"; "required": false; "isSignal": true; }; "section": { "alias": "section"; "required": false; "isSignal": true; }; "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "definitions": { "alias": "definitions"; "required": false; "isSignal": true; }; "settingsDefinitions": { "alias": "settingsDefinitions"; "required": false; "isSignal": true; }; "update": { "alias": "update"; "required": false; "isSignal": true; }; "updateSection": { "alias": "updateSection"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
422
462
  }
@@ -476,5 +516,5 @@ declare class BasicFormBuilderSectionSettings {
476
516
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<BasicFormBuilderSectionSettings, "ngs-basic-form-builder-section-settings", ["ngsBasicFormBuilderSectionSettings"], { "section": { "alias": "section"; "required": true; "isSignal": true; }; "update": { "alias": "update"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
477
517
  }
478
518
 
479
- export { BasicFormBuilderFieldSettings, BasicFormBuilderLayoutSettings, BasicFormBuilderSectionSettings, DEFAULT_FORM_BUILDER_FIELDS, DEFAULT_FORM_BUILDER_ITEMS, FORM_BUILDER_FIELDS, FORM_BUILDER_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_INPUT_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_ITEMS, FORM_BUILDER_LAYOUT_BASE_SETTINGS_SCHEMA, FORM_BUILDER_LAYOUT_CONTAINER_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SECTION_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SETTINGS, FORM_BUILDER_STATIC_BASE_SETTINGS_SCHEMA, FORM_BUILDER_UPLOAD_CALLBACK, FormBuilder, FormBuilderFieldHost, FormBuilderSettingsHost, FormRenderer, createDefaultFormBuilderSchema, formBuilderField, formBuilderItem, formBuilderSettings, provideFormBuilder, provideFormBuilderField, provideFormBuilderFields, validatorsFromRules };
480
- export type { FormBuilderComponentImporter, FormBuilderField, FormBuilderFieldChange, FormBuilderFieldDefinition, FormBuilderFieldRenderContext, FormBuilderFieldSettingsContext, FormBuilderFieldWidth, FormBuilderItemDefinition, FormBuilderItemKind, FormBuilderLayoutItem, FormBuilderOption, FormBuilderSchema, FormBuilderSection, FormBuilderSectionSettingsContext, FormBuilderSettingsConfig, FormBuilderSettingsContext, FormBuilderSettingsDefinition, FormBuilderSettingsInheritance, FormBuilderSettingsSchemaFactory, FormBuilderUploadCallback, FormBuilderUploadContext, FormBuilderValidationRule };
519
+ export { BasicFormBuilderFieldSettings, BasicFormBuilderLayoutSettings, BasicFormBuilderSectionSettings, DEFAULT_FORM_BUILDER_FIELDS, DEFAULT_FORM_BUILDER_ITEMS, FORM_BUILDER_FIELDS, FORM_BUILDER_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_INPUT_FIELD_BASE_SETTINGS_SCHEMA, FORM_BUILDER_ITEMS, FORM_BUILDER_LAYOUT_BASE_SETTINGS_SCHEMA, FORM_BUILDER_LAYOUT_CONTAINER_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SECTION_BASE_SETTINGS_SCHEMA, FORM_BUILDER_SELECT_DATA_SOURCES, FORM_BUILDER_SETTINGS, FORM_BUILDER_STATIC_BASE_SETTINGS_SCHEMA, FORM_BUILDER_UPLOAD_CALLBACK, FormBuilder, FormBuilderFieldHost, FormBuilderSettingsHost, FormRenderer, createDefaultFormBuilderSchema, formBuilderField, formBuilderItem, formBuilderSettings, provideFormBuilder, provideFormBuilderField, provideFormBuilderFields, provideFormBuilderSelectDataSource, provideFormBuilderSelectDataSources, validatorsFromRules };
520
+ export type { FormBuilderComponentImporter, FormBuilderField, FormBuilderFieldChange, FormBuilderFieldDefinition, FormBuilderFieldRenderContext, FormBuilderFieldSettingsContext, FormBuilderFieldWidth, FormBuilderItemDefinition, FormBuilderItemKind, FormBuilderLayoutItem, FormBuilderOption, FormBuilderSchema, FormBuilderSection, FormBuilderSectionSettingsContext, FormBuilderSelectDataSourceDefinition, FormBuilderSelectDataSourceOptions, FormBuilderSelectOptionsSource, FormBuilderSettingsConfig, FormBuilderSettingsContext, FormBuilderSettingsDefinition, FormBuilderSettingsInheritance, FormBuilderSettingsSchemaFactory, FormBuilderUploadCallback, FormBuilderUploadContext, FormBuilderValidationRule };
@@ -56,6 +56,63 @@ declare abstract class _Select {
56
56
  }
57
57
  declare const SELECT: InjectionToken<_Select>;
58
58
 
59
+ interface SelectDataSourceRequest {
60
+ search: string;
61
+ page: number;
62
+ pageSize: number;
63
+ cursor?: unknown;
64
+ selectedValues: unknown[];
65
+ reason: 'initial' | 'open' | 'search' | 'page';
66
+ signal?: AbortSignal;
67
+ }
68
+ interface SelectDataSourceOption<T = unknown> {
69
+ label: string;
70
+ value: unknown;
71
+ disabled?: boolean;
72
+ data?: T;
73
+ }
74
+ interface SelectDataSourceResult<T = unknown> {
75
+ items: SelectDataSourceOption<T>[];
76
+ hasMore?: boolean;
77
+ total?: number;
78
+ nextCursor?: unknown;
79
+ }
80
+ type SelectDataSource<T = unknown> = (request: SelectDataSourceRequest) => Promise<SelectDataSourceResult<T> | SelectDataSourceOption<T>[]>;
81
+
82
+ interface SelectOptionContentContext<T = any> {
83
+ $implicit: T;
84
+ data: T;
85
+ option: SelectDataSourceOption<T>;
86
+ value: unknown;
87
+ label: string;
88
+ selected: boolean;
89
+ disabled: boolean;
90
+ multiple: boolean;
91
+ }
92
+ declare class SelectOptionContentDef<T = any> {
93
+ readonly templateRef: TemplateRef<SelectOptionContentContext<T>>;
94
+ static ngTemplateContextGuard<T>(_directive: SelectOptionContentDef<T>, _context: unknown): _context is SelectOptionContentContext<T>;
95
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectOptionContentDef<any>, never>;
96
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SelectOptionContentDef<any>, "ng-template[ngsOptionContentDef]", never, {}, {}, never, never, true, never>;
97
+ }
98
+
99
+ interface SelectValueContext<T = any> {
100
+ $implicit: T | T[] | null;
101
+ data: T | T[] | null;
102
+ option: SelectDataSourceOption<T> | SelectDataSourceOption<T>[] | null;
103
+ value: unknown | unknown[] | null;
104
+ label: string;
105
+ labels: string[];
106
+ count: number;
107
+ multiple: boolean;
108
+ }
109
+ declare class SelectValueDef<T = any> {
110
+ readonly templateRef: TemplateRef<SelectValueContext<T>>;
111
+ static ngTemplateContextGuard<T>(_directive: SelectValueDef<T>, _context: unknown): _context is SelectValueContext<T>;
112
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectValueDef<any>, never>;
113
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SelectValueDef<any>, "ng-template[ngsSelectValueDef]", never, {}, {}, never, never, true, never>;
114
+ }
115
+
59
116
  declare class SelectChange {
60
117
  source: Select;
61
118
  value: any;
@@ -82,6 +139,12 @@ declare class Select implements ControlValueAccessor, OnDestroy, AfterContentIni
82
139
  multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
83
140
  hideCheckIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
84
141
  clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
142
+ dataSource: _angular_core.InputSignal<SelectDataSource | null | undefined>;
143
+ pageSize: _angular_core.InputSignalWithTransform<number, unknown>;
144
+ searchable: _angular_core.InputSignalWithTransform<boolean, unknown>;
145
+ searchDebounce: _angular_core.InputSignalWithTransform<number, unknown>;
146
+ minSearchLength: _angular_core.InputSignalWithTransform<number, unknown>;
147
+ loadOnOpen: _angular_core.InputSignalWithTransform<boolean, unknown>;
85
148
  ariaLabel: _angular_core.InputSignal<string | null>;
86
149
  tabIndex: _angular_core.InputSignalWithTransform<number, any>;
87
150
  ariaDescribedby: _angular_core.InputSignal<string | null>;
@@ -90,10 +153,14 @@ declare class Select implements ControlValueAccessor, OnDestroy, AfterContentIni
90
153
  readonly selectionChange: _angular_core.OutputEmitterRef<any>;
91
154
  readonly opened: _angular_core.OutputEmitterRef<void>;
92
155
  readonly closed: _angular_core.OutputEmitterRef<void>;
93
- options: _angular_core.Signal<readonly _Option[]>;
156
+ private projectedOptions;
157
+ private dataSourceOptions;
158
+ options: _angular_core.Signal<_Option[]>;
94
159
  optionGroups: _angular_core.Signal<readonly Optgroup[]>;
95
160
  customTrigger: _angular_core.Signal<readonly SelectTrigger[]>;
96
161
  filterTrigger: _angular_core.Signal<readonly FilterTrigger[]>;
162
+ optionContentDef: _angular_core.Signal<SelectOptionContentDef<any> | undefined>;
163
+ selectValueDef: _angular_core.Signal<SelectValueDef<any> | undefined>;
97
164
  overlayDir: _angular_core.Signal<CdkConnectedOverlay | undefined>;
98
165
  panel: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
99
166
  origin: _angular_core.Signal<CdkOverlayOrigin | undefined>;
@@ -109,6 +176,22 @@ declare class Select implements ControlValueAccessor, OnDestroy, AfterContentIni
109
176
  _optionsContentChanges: _angular_core.WritableSignal<number>;
110
177
  private _errorState;
111
178
  get errorState(): boolean;
179
+ protected readonly asyncOptions: _angular_core.WritableSignal<SelectDataSourceOption<unknown>[]>;
180
+ protected readonly asyncSearch: _angular_core.WritableSignal<string>;
181
+ protected readonly asyncLoading: _angular_core.WritableSignal<boolean>;
182
+ protected readonly asyncLoadingMore: _angular_core.WritableSignal<boolean>;
183
+ protected readonly asyncError: _angular_core.WritableSignal<unknown>;
184
+ protected readonly asyncHasMore: _angular_core.WritableSignal<boolean>;
185
+ protected readonly asyncEnabled: _angular_core.Signal<boolean>;
186
+ private readonly _asyncSelectedCache;
187
+ private _asyncPage;
188
+ private _asyncCursor;
189
+ private _asyncSearchTimer;
190
+ private _asyncRequestId;
191
+ private _asyncAbortController;
192
+ private _lastDataSource;
193
+ private _lastInitialSelectedKey;
194
+ private _destroyed;
112
195
  private _empty;
113
196
  get empty(): boolean;
114
197
  readonly hasValue: _angular_core.Signal<boolean>;
@@ -122,6 +205,8 @@ declare class Select implements ControlValueAccessor, OnDestroy, AfterContentIni
122
205
  triggerValue: _angular_core.Signal<string>;
123
206
  selectedCount: _angular_core.Signal<number>;
124
207
  selectedData: _angular_core.Signal<any>;
208
+ protected readonly selectValueContext: _angular_core.Signal<SelectValueContext<any>>;
209
+ protected readonly selectValueTemplateReady: _angular_core.Signal<boolean>;
125
210
  ngAfterContentInit(): void;
126
211
  private _resetOptions;
127
212
  ngOnDestroy(): void;
@@ -141,15 +226,38 @@ declare class Select implements ControlValueAccessor, OnDestroy, AfterContentIni
141
226
  focus(): void;
142
227
  _handleKeydown(event: KeyboardEvent): void;
143
228
  _onOptionClick(option: _Option): void;
229
+ protected onAsyncSearchInput(value: string): void;
230
+ protected onAsyncContentScroll(event: Event): void;
231
+ protected retryAsyncLoad(): void;
232
+ protected asyncOptionContext(option: SelectDataSourceOption): SelectOptionContentContext;
144
233
  private _selectOption;
234
+ private _selectAsyncMultipleOption;
145
235
  private _propagateChanges;
146
236
  private _setSelectionByValue;
147
237
  private _scrollToSelectedOption;
238
+ private _scrollToAsyncOptionValue;
239
+ private _scrollOptionElementIntoContainer;
240
+ private _setScrollTop;
148
241
  private _getOptionIndex;
149
242
  private _getOptionData;
150
243
  private _selectValue;
244
+ private _loadFirstPage;
245
+ private _loadNextPage;
246
+ private _loadAsyncPage;
247
+ private _normalizeAsyncResult;
248
+ private _mergeAsyncOptions;
249
+ private _cacheAsyncSelectedOptions;
250
+ private _resetAsyncState;
251
+ private _selectedValues;
252
+ private _selectedValuesKey;
253
+ private _viewValueForValue;
254
+ private _dataForValue;
255
+ private _displayOptionForValue;
256
+ private _optionForValue;
257
+ private _asyncOptionForValue;
258
+ private _compareValues;
151
259
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Select, never>;
152
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<Select, "ngs-select", ["ngsSelect"], { "_id": { "alias": "id"; "required": false; "isSignal": true; }; "_placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "_disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "_required": { "alias": "required"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "hideCheckIcon": { "alias": "hideCheckIcon"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "ariaDescribedby": { "alias": "aria-describedby"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "opened": "opened"; "closed": "closed"; "value": "valueChange"; }, ["selectBody", "options", "optionGroups", "customTrigger", "filterTrigger"], ["ngs-select-trigger", "ngs-filter-trigger", "ngs-select-header", "ngs-select-body", "ngs-optgroup,ngs-option", "*", "ngs-select-footer"], true, never>;
260
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<Select, "ngs-select", ["ngsSelect"], { "_id": { "alias": "id"; "required": false; "isSignal": true; }; "_placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "_disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "_required": { "alias": "required"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "hideCheckIcon": { "alias": "hideCheckIcon"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "searchDebounce": { "alias": "searchDebounce"; "required": false; "isSignal": true; }; "minSearchLength": { "alias": "minSearchLength"; "required": false; "isSignal": true; }; "loadOnOpen": { "alias": "loadOnOpen"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "ariaDescribedby": { "alias": "aria-describedby"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "opened": "opened"; "closed": "closed"; "value": "valueChange"; }, ["selectBody", "projectedOptions", "optionGroups", "customTrigger", "filterTrigger", "optionContentDef", "selectValueDef"], ["ngs-select-trigger", "ngs-filter-trigger", "ngs-select-header", "ngs-select-body", "ngs-optgroup,ngs-option", "*", "ngs-select-footer"], true, never>;
153
261
  }
154
262
 
155
263
  declare class SelectHeader {
@@ -162,4 +270,5 @@ declare class SelectFooter {
162
270
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectFooter, "ngs-select-footer", never, {}, {}, never, ["*"], true, never>;
163
271
  }
164
272
 
165
- export { FilterTrigger, FilterTriggerValueDirective, SELECT, Select, SelectBody, SelectChange, SelectFooter, SelectHeader, SelectTrigger, _Select };
273
+ export { FilterTrigger, FilterTriggerValueDirective, SELECT, Select, SelectBody, SelectChange, SelectFooter, SelectHeader, SelectOptionContentDef, SelectTrigger, SelectValueDef, _Select };
274
+ export type { SelectDataSource, SelectDataSourceOption, SelectDataSourceRequest, SelectDataSourceResult, SelectOptionContentContext, SelectValueContext };