@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.
- package/ai/component-registry.json +53 -12
- package/fesm2022/ngstarter-ui-components-country-select.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-country-select.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-currency-select.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-currency-select.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-date-format-select.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-date-format-select.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-filter-builder.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-filter-builder.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-form-builder.mjs +196 -11
- package/fesm2022/ngstarter-ui-components-form-builder.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-image-designer.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-image-designer.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-option.mjs +2 -2
- package/fesm2022/ngstarter-ui-components-option.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-paginator.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-paginator.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-select.mjs +474 -27
- package/fesm2022/ngstarter-ui-components-select.mjs.map +1 -1
- package/fesm2022/ngstarter-ui-components-timezone-select.mjs +1 -1
- package/fesm2022/ngstarter-ui-components-timezone-select.mjs.map +1 -1
- package/package.json +1 -1
- package/styles/_tokens.scss +1 -1
- package/types/ngstarter-ui-components-form-builder.d.ts +42 -2
- 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
|
-
|
|
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", "
|
|
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 };
|