@aquera/nile-elements 0.1.49-beta-1.4 → 0.1.50-beta-1.0
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/README.md +3 -0
- package/demo/index.html +106 -29
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +2 -2
- package/dist/nile-select/virtual-scroll-helper.cjs.js +1 -1
- package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -1
- package/dist/nile-select/virtual-scroll-helper.esm.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +2 -2
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +12 -12
- package/dist/nile-virtual-select/renderer.cjs.js +1 -1
- package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
- package/dist/nile-virtual-select/renderer.esm.js +8 -7
- package/dist/nile-virtual-select/search-manager.cjs.js +1 -1
- package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -1
- package/dist/nile-virtual-select/search-manager.esm.js +1 -1
- package/dist/nile-virtual-select/selection-manager.cjs.js +1 -1
- package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -1
- package/dist/nile-virtual-select/selection-manager.esm.js +1 -1
- package/dist/src/nile-select/nile-select.d.ts +3 -1
- package/dist/src/nile-select/nile-select.js +1 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-select/virtual-scroll-helper.js +1 -1
- package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +16 -4
- package/dist/src/nile-virtual-select/nile-virtual-select.js +35 -10
- package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.test.js +36 -12
- package/dist/src/nile-virtual-select/nile-virtual-select.test.js.map +1 -1
- package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
- package/dist/src/nile-virtual-select/renderer.js +8 -5
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/src/nile-virtual-select/search-manager.d.ts +1 -1
- package/dist/src/nile-virtual-select/search-manager.js +3 -2
- package/dist/src/nile-virtual-select/search-manager.js.map +1 -1
- package/dist/src/nile-virtual-select/selection-manager.d.ts +1 -1
- package/dist/src/nile-virtual-select/selection-manager.js +10 -3
- package/dist/src/nile-virtual-select/selection-manager.js.map +1 -1
- package/dist/src/nile-virtual-select/types.d.ts +6 -1
- package/dist/src/nile-virtual-select/types.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-select/nile-select.ts +3 -1
- package/src/nile-select/virtual-scroll-helper.ts +1 -1
- package/src/nile-virtual-select/nile-virtual-select.test.ts +36 -12
- package/src/nile-virtual-select/nile-virtual-select.ts +44 -10
- package/src/nile-virtual-select/renderer.ts +13 -5
- package/src/nile-virtual-select/search-manager.ts +4 -2
- package/src/nile-virtual-select/selection-manager.ts +16 -5
- package/src/nile-virtual-select/types.ts +7 -1
- package/vscode-html-custom-data.json +2 -2
package/package.json
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
"description": "Webcomponent nile-elements following open-wc recommendations",
|
4
4
|
"license": "MIT",
|
5
5
|
"author": "nile-elements",
|
6
|
-
"version": "0.1.
|
6
|
+
"version": "0.1.50-beta-1.0",
|
7
7
|
"main": "dist/src/index.js",
|
8
8
|
"type": "module",
|
9
9
|
"module": "dist/src/index.js",
|
@@ -33,6 +33,7 @@ import type { CSSResultGroup, PropertyValues } from 'lit';
|
|
33
33
|
import type { NileFormControl } from '../internal/nile-element';
|
34
34
|
import type NileOption from '../nile-option/nile-option';
|
35
35
|
import type NilePopup from '../nile-popup/nile-popup';
|
36
|
+
import type { RenderItemConfig } from '../nile-virtual-select/types.js';
|
36
37
|
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
|
37
38
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
38
39
|
import '../nile-virtual-select/nile-virtual-select';
|
@@ -236,7 +237,8 @@ export class NileSelect extends NileElement implements NileFormControl{
|
|
236
237
|
|
237
238
|
@property({ type: String }) noResultsMessage: string = 'No results found';
|
238
239
|
|
239
|
-
|
240
|
+
/** Enhanced configuration for rendering items with support for display text, value, and search text */
|
241
|
+
@property({ attribute: false }) renderItemConfig?: RenderItemConfig;
|
240
242
|
|
241
243
|
@property({ type: Array }) data: any = [];
|
242
244
|
|
@@ -42,7 +42,7 @@ export class VirtualScrollHelper {
|
|
42
42
|
.required=${component.required}
|
43
43
|
.showNoResults=${component.showNoResults}
|
44
44
|
.noResultsMessage=${component.noResultsMessage}
|
45
|
-
.
|
45
|
+
.renderItemConfig=${component.renderItemConfig}
|
46
46
|
.blockValueChange=${component.blockValueChange}
|
47
47
|
.noWidthSync=${component.noWidthSync}
|
48
48
|
.maxOptionsVisible=${component.maxOptionsVisible}
|
@@ -24,7 +24,9 @@ describe('<nile-virtual-select>', () => {
|
|
24
24
|
{ value: 'option-3', label: 'Option 3' },
|
25
25
|
{ value: 'option-4', label: 'Option 4' }
|
26
26
|
];
|
27
|
-
el.
|
27
|
+
el.renderItemConfig = {
|
28
|
+
getDisplayText: (item: any) => item.label
|
29
|
+
};
|
28
30
|
|
29
31
|
// Set multiple values
|
30
32
|
el.value = ['option-1', 'option-2', 'option-3'];
|
@@ -50,7 +52,9 @@ describe('<nile-virtual-select>', () => {
|
|
50
52
|
{ value: 'option-2', label: 'Option 2' },
|
51
53
|
{ value: 'option-3', label: 'Option 3' }
|
52
54
|
];
|
53
|
-
el.
|
55
|
+
el.renderItemConfig = {
|
56
|
+
getDisplayText: (item: any) => item.label
|
57
|
+
};
|
54
58
|
|
55
59
|
// Set values within limit
|
56
60
|
el.value = ['option-1', 'option-2'];
|
@@ -76,7 +80,9 @@ describe('<nile-virtual-select>', () => {
|
|
76
80
|
{ value: 'option-3', label: 'Option 3' },
|
77
81
|
{ value: 'option-4', label: 'Option 4' }
|
78
82
|
];
|
79
|
-
el.
|
83
|
+
el.renderItemConfig = {
|
84
|
+
getDisplayText: (item: any) => item.label
|
85
|
+
};
|
80
86
|
|
81
87
|
// Set multiple values
|
82
88
|
el.value = ['option-1', 'option-2', 'option-3', 'option-4'];
|
@@ -107,7 +113,9 @@ describe('<nile-virtual-select>', () => {
|
|
107
113
|
{ value: 'option-2', label: 'Option 2' },
|
108
114
|
{ value: 'option-3', label: 'Option 3' }
|
109
115
|
];
|
110
|
-
el.
|
116
|
+
el.renderItemConfig = {
|
117
|
+
getDisplayText: (item: any) => item.label
|
118
|
+
};
|
111
119
|
|
112
120
|
// Open the select to render options
|
113
121
|
el.open = true;
|
@@ -139,7 +147,9 @@ describe('<nile-virtual-select>', () => {
|
|
139
147
|
{ value: 'option-1', label: 'Option 1' },
|
140
148
|
{ value: 'option-2', label: 'Option 2' }
|
141
149
|
];
|
142
|
-
el.
|
150
|
+
el.renderItemConfig = {
|
151
|
+
getDisplayText: (item: any) => item.label
|
152
|
+
};
|
143
153
|
|
144
154
|
// Open the select to render options
|
145
155
|
el.open = true;
|
@@ -171,7 +181,9 @@ describe('<nile-virtual-select>', () => {
|
|
171
181
|
{ value: 'option-2', label: 'Option 2' },
|
172
182
|
{ value: 'option-3', label: 'Option 3' }
|
173
183
|
];
|
174
|
-
el.
|
184
|
+
el.renderItemConfig = {
|
185
|
+
getDisplayText: (item: any) => item.label
|
186
|
+
};
|
175
187
|
|
176
188
|
// Open the select to render options
|
177
189
|
el.open = true;
|
@@ -207,7 +219,9 @@ describe('<nile-virtual-select>', () => {
|
|
207
219
|
{ value: 'option-2', label: 'Option 2' },
|
208
220
|
{ value: 'option-3', label: 'Option 3' }
|
209
221
|
];
|
210
|
-
el.
|
222
|
+
el.renderItemConfig = {
|
223
|
+
getDisplayText: (item: any) => item.label
|
224
|
+
};
|
211
225
|
|
212
226
|
// Set a selected value
|
213
227
|
el.value = 'option-2';
|
@@ -235,7 +249,9 @@ describe('<nile-virtual-select>', () => {
|
|
235
249
|
{ value: 'option-2', label: 'Option 2' },
|
236
250
|
{ value: 'option-3', label: 'Option 3' }
|
237
251
|
];
|
238
|
-
el.
|
252
|
+
el.renderItemConfig = {
|
253
|
+
getDisplayText: (item: any) => item.label
|
254
|
+
};
|
239
255
|
|
240
256
|
// Set multiple selected values
|
241
257
|
el.value = ['option-1', 'option-3'];
|
@@ -266,7 +282,9 @@ describe('<nile-virtual-select>', () => {
|
|
266
282
|
{ value: 'option-2', label: 'Option 2' },
|
267
283
|
{ value: 'option-3', label: 'Option 3' }
|
268
284
|
];
|
269
|
-
el.
|
285
|
+
el.renderItemConfig = {
|
286
|
+
getDisplayText: (item: any) => item.label
|
287
|
+
};
|
270
288
|
|
271
289
|
// Set a selected value
|
272
290
|
el.value = 'option-2';
|
@@ -289,7 +307,9 @@ describe('<nile-virtual-select>', () => {
|
|
289
307
|
`);
|
290
308
|
|
291
309
|
// Set renderItemFunction first
|
292
|
-
el.
|
310
|
+
el.renderItemConfig = {
|
311
|
+
getDisplayText: (item: any) => item.label
|
312
|
+
};
|
293
313
|
|
294
314
|
// Set value before data
|
295
315
|
el.value = ['option-1', 'option-3'];
|
@@ -326,7 +346,9 @@ describe('<nile-virtual-select>', () => {
|
|
326
346
|
`);
|
327
347
|
|
328
348
|
// Set up test data
|
329
|
-
el.
|
349
|
+
el.renderItemConfig = {
|
350
|
+
getDisplayText: (item: any) => item.label
|
351
|
+
};
|
330
352
|
el.data = [
|
331
353
|
{ value: 'option-1', label: 'Option 1' },
|
332
354
|
{ value: 'option-2', label: 'Option 2' },
|
@@ -357,7 +379,9 @@ describe('<nile-virtual-select>', () => {
|
|
357
379
|
`);
|
358
380
|
|
359
381
|
// Set up test data
|
360
|
-
el.
|
382
|
+
el.renderItemConfig = {
|
383
|
+
getDisplayText: (item: any) => item.label
|
384
|
+
};
|
361
385
|
el.data = [
|
362
386
|
{ value: 'option-1', label: 'Option 1' },
|
363
387
|
{ value: 'option-2', label: 'Option 2' },
|
@@ -35,7 +35,7 @@ import type NileOption from '../nile-option/nile-option';
|
|
35
35
|
import type NilePopup from '../nile-popup/nile-popup';
|
36
36
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
37
37
|
|
38
|
-
import type { VirtualOption, NileRemoveEvent } from './types.js';
|
38
|
+
import type { VirtualOption, NileRemoveEvent, RenderItemConfig } from './types.js';
|
39
39
|
import { VirtualSelectSelectionManager } from './selection-manager.js';
|
40
40
|
import { VirtualSelectSearchManager } from './search-manager.js';
|
41
41
|
import { VirtualSelectRenderer } from './renderer.js';
|
@@ -222,8 +222,8 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
222
222
|
/** Show selected options only */
|
223
223
|
@property({ type: Boolean }) showSelected = false;
|
224
224
|
|
225
|
-
/**
|
226
|
-
@property({ attribute:false})
|
225
|
+
/** Enhanced configuration for rendering items with support for display text, value, and search text */
|
226
|
+
@property({ attribute:false}) renderItemConfig?: RenderItemConfig;
|
227
227
|
|
228
228
|
/** Block value change events */
|
229
229
|
@property({ type: Boolean, reflect: true }) blockValueChange = false;
|
@@ -267,11 +267,41 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
267
267
|
}
|
268
268
|
|
269
269
|
private initializeComponent(): void {
|
270
|
-
this.renderItemFunction = (item:any) => item?.label || item?.name || item;
|
271
270
|
this.open = false;
|
272
271
|
this.emit('nile-init');
|
273
272
|
}
|
274
273
|
|
274
|
+
/**
|
275
|
+
* Get display text for an item using renderItemConfig
|
276
|
+
*/
|
277
|
+
private getDisplayText(item: any): string {
|
278
|
+
if (this.renderItemConfig?.getDisplayText) {
|
279
|
+
return this.renderItemConfig.getDisplayText(item);
|
280
|
+
}
|
281
|
+
// Fallback to basic display
|
282
|
+
return item?.label || item?.name || item?.toString() || '';
|
283
|
+
}
|
284
|
+
|
285
|
+
/**
|
286
|
+
* Get value for an item using renderItemConfig or fallback to item.value
|
287
|
+
*/
|
288
|
+
private getItemValue(item: any): string {
|
289
|
+
if (this.renderItemConfig?.getValue) {
|
290
|
+
return this.renderItemConfig.getValue(item);
|
291
|
+
}
|
292
|
+
return item?.value || item;
|
293
|
+
}
|
294
|
+
|
295
|
+
/**
|
296
|
+
* Get search text for an item using renderItemConfig or fallback to display text
|
297
|
+
*/
|
298
|
+
private getSearchText(item: any): string {
|
299
|
+
if (this.renderItemConfig?.getSearchText) {
|
300
|
+
return this.renderItemConfig.getSearchText(item);
|
301
|
+
}
|
302
|
+
return this.getDisplayText(item);
|
303
|
+
}
|
304
|
+
|
275
305
|
private setupEventListeners(): void {
|
276
306
|
this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);
|
277
307
|
this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);
|
@@ -560,7 +590,8 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
560
590
|
this.selectedOptions = VirtualSelectSelectionManager.createVirtualOptionsFromValues(
|
561
591
|
this.value,
|
562
592
|
itemsToSearch,
|
563
|
-
this.
|
593
|
+
this.getDisplayText.bind(this),
|
594
|
+
this.renderItemConfig?.getValue
|
564
595
|
);
|
565
596
|
|
566
597
|
if (this.multiple) {
|
@@ -604,7 +635,8 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
604
635
|
searchValue,
|
605
636
|
this.originalOptionItems,
|
606
637
|
this.data,
|
607
|
-
this.
|
638
|
+
this.getDisplayText.bind(this),
|
639
|
+
this.renderItemConfig?.getSearchText
|
608
640
|
);
|
609
641
|
|
610
642
|
this.data = result.filteredItems;
|
@@ -637,8 +669,8 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
637
669
|
this.requestUpdate();
|
638
670
|
}
|
639
671
|
|
640
|
-
@watch('
|
641
|
-
|
672
|
+
@watch('renderItemConfig', { waitUntilFirstUpdate: true })
|
673
|
+
handleRenderItemConfigChange(): void {
|
642
674
|
if (this.value && this.data.length > 0) {
|
643
675
|
this.selectionChanged();
|
644
676
|
this.requestUpdate();
|
@@ -1133,9 +1165,11 @@ export class NileVirtualSelect extends NileElement implements NileFormControl {
|
|
1133
1165
|
return VirtualSelectRenderer.getVirtualizedContent(
|
1134
1166
|
this.data,
|
1135
1167
|
this.searchEnabled,
|
1136
|
-
this.
|
1168
|
+
this.getDisplayText.bind(this),
|
1137
1169
|
this.value,
|
1138
|
-
this.multiple
|
1170
|
+
this.multiple,
|
1171
|
+
this.renderItemConfig?.getDisplayText,
|
1172
|
+
this.renderItemConfig?.getValue
|
1139
1173
|
);
|
1140
1174
|
}
|
1141
1175
|
|
@@ -15,7 +15,9 @@ export class VirtualSelectRenderer {
|
|
15
15
|
searchEnabled: boolean,
|
16
16
|
renderItemFunction: (item: any) => string,
|
17
17
|
value: string | string[],
|
18
|
-
multiple: boolean
|
18
|
+
multiple: boolean,
|
19
|
+
getDisplayText?: (item: any) => string,
|
20
|
+
getItemValue?: (item: any) => string
|
19
21
|
): TemplateResult {
|
20
22
|
return html`
|
21
23
|
<div class="select__options ${
|
@@ -27,7 +29,7 @@ export class VirtualSelectRenderer {
|
|
27
29
|
${virtualize({
|
28
30
|
items: data,
|
29
31
|
renderItem: (item: any): TemplateResult =>
|
30
|
-
VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple),
|
32
|
+
VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple, getDisplayText, getItemValue),
|
31
33
|
scroller: true,
|
32
34
|
})}
|
33
35
|
</div>
|
@@ -38,10 +40,15 @@ export class VirtualSelectRenderer {
|
|
38
40
|
item: any,
|
39
41
|
renderItemFunction: (item: any) => string,
|
40
42
|
value: string | string[],
|
41
|
-
multiple: boolean
|
43
|
+
multiple: boolean,
|
44
|
+
getDisplayText?: (item: any) => string,
|
45
|
+
getItemValue?: (item: any) => string
|
42
46
|
): TemplateResult {
|
43
|
-
const
|
44
|
-
const
|
47
|
+
const displayTextFn = getDisplayText || renderItemFunction;
|
48
|
+
const valueFn = getItemValue || ((item: any) => item?.value || item);
|
49
|
+
|
50
|
+
const optionValue = valueFn(item);
|
51
|
+
const displayText = displayTextFn(item);
|
45
52
|
const isDisabled = item.disabled || false;
|
46
53
|
|
47
54
|
let isSelected = false;
|
@@ -57,6 +64,7 @@ export class VirtualSelectRenderer {
|
|
57
64
|
.selected=${isSelected}
|
58
65
|
.multiple=${multiple}
|
59
66
|
.disabled=${isDisabled}
|
67
|
+
.showCheckbox=${multiple}
|
60
68
|
>
|
61
69
|
${unsafeHTML(displayText)}
|
62
70
|
</nile-option>
|
@@ -10,7 +10,8 @@ export class VirtualSelectSearchManager {
|
|
10
10
|
searchValue: string,
|
11
11
|
originalOptionItems: any[],
|
12
12
|
data: any[],
|
13
|
-
renderItemFunction: (item: any) => string
|
13
|
+
renderItemFunction: (item: any) => string,
|
14
|
+
getSearchText?: (item: any) => string
|
14
15
|
): { filteredItems: any[], showNoResults: boolean } {
|
15
16
|
if (originalOptionItems.length === 0 && data.length > 0) {
|
16
17
|
return {
|
@@ -34,8 +35,9 @@ export class VirtualSelectSearchManager {
|
|
34
35
|
}
|
35
36
|
|
36
37
|
const lowerCaseSearchValue = searchValue.toLowerCase();
|
38
|
+
const searchTextFn = getSearchText || renderItemFunction;
|
37
39
|
const filteredItems = originalOptionItems.filter((item: any) => {
|
38
|
-
const itemValue =
|
40
|
+
const itemValue = searchTextFn(item);
|
39
41
|
const lowerCaseItemValue = itemValue.toLowerCase();
|
40
42
|
return lowerCaseItemValue.includes(lowerCaseSearchValue);
|
41
43
|
});
|
@@ -8,7 +8,12 @@
|
|
8
8
|
import type { VirtualOption } from './types.js';
|
9
9
|
|
10
10
|
export class VirtualSelectSelectionManager {
|
11
|
-
static createVirtualOptionsFromValues(
|
11
|
+
static createVirtualOptionsFromValues(
|
12
|
+
value: string | string[],
|
13
|
+
data: any[],
|
14
|
+
getDisplayText: (item: any) => string,
|
15
|
+
getItemValue?: (item: any) => string
|
16
|
+
): VirtualOption[] {
|
12
17
|
if (!value || (Array.isArray(value) && value.length === 0)) {
|
13
18
|
return [];
|
14
19
|
}
|
@@ -16,11 +21,17 @@ export class VirtualSelectSelectionManager {
|
|
16
21
|
const values = Array.isArray(value) ? value : [value];
|
17
22
|
|
18
23
|
return values.map(valueItem => {
|
19
|
-
|
20
|
-
|
21
|
-
);
|
24
|
+
// Use enhanced functions if available, otherwise fallback to basic logic
|
25
|
+
const displayTextFn = getDisplayText;
|
26
|
+
const valueFn = getItemValue || ((item: any) => item?.value || item);
|
22
27
|
|
23
|
-
const
|
28
|
+
const item = data.find((item: any) => {
|
29
|
+
const itemValue = valueFn(item);
|
30
|
+
const itemDisplayText = displayTextFn(item);
|
31
|
+
return itemValue === valueItem || itemDisplayText === valueItem;
|
32
|
+
});
|
33
|
+
|
34
|
+
const displayText = item ? displayTextFn(item) : valueItem;
|
24
35
|
|
25
36
|
return {
|
26
37
|
value: valueItem,
|
@@ -14,6 +14,12 @@ export interface VirtualOption {
|
|
14
14
|
getOptionPrefix: () => string;
|
15
15
|
}
|
16
16
|
|
17
|
+
export interface RenderItemConfig {
|
18
|
+
getDisplayText: (item: any) => string;
|
19
|
+
getValue?: (item: any) => string;
|
20
|
+
getSearchText?: (item: any) => string;
|
21
|
+
}
|
22
|
+
|
17
23
|
export interface VirtualSelectProperties {
|
18
24
|
name: string;
|
19
25
|
data: any[];
|
@@ -42,7 +48,7 @@ export interface VirtualSelectProperties {
|
|
42
48
|
required: boolean;
|
43
49
|
showNoResults: boolean;
|
44
50
|
noResultsMessage: string;
|
45
|
-
|
51
|
+
renderItemConfig?: RenderItemConfig;
|
46
52
|
blockValueChange: boolean;
|
47
53
|
noWidthSync: boolean;
|
48
54
|
}
|
@@ -2843,7 +2843,7 @@
|
|
2843
2843
|
},
|
2844
2844
|
{
|
2845
2845
|
"name": "nile-select",
|
2846
|
-
"description": "Events:\n\n * `nile-change` {} - Emitted when the control's value changes.\n\n * `nile-clear` {} - Emitted when the control's value is cleared.\n\n * `nile-input` {} - Emitted when the control receives input.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-show` {} - Emitted when the select's menu opens.\n\n * `nile-after-show` {} - Emitted after the select's menu opens and all animations are complete.\n\n * `nile-hide` {} - Emitted when the select's menu closes.\n\n * `nile-after-hide` {} - Emitted after the select's menu closes and all animations are complete.\n\n * `nile-invalid` {} - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\nSlots:\n\n * ` ` {} - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.\n\n * `label` {} - The input's label. Alternatively, you can use the `label` attribute.\n\n * `prefix` {} - Used to prepend a presentational icon or similar element to the combobox.\n\n * `clear-icon` {} - An icon to use in lieu of the default clear icon.\n\n * `expand-icon` {} - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - \n\n * `internal-search-placeholder` {`string`} - \n\n * `blockValueChange` {`boolean`} - \n\n * `disableLocalSearch` {`boolean`} - \n\n * `optionsLoading` {`boolean`} - \n\n * `noWidthSync` {`boolean`} - \n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `max-options-visible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\nuse the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showSelected` {`boolean`} - \n\n * `showNoResults` {`boolean`} - \n\n * `noResultsMessage` {`string`} - \n\n * `data` - \n\n * `enableVirtualScroll` {`boolean`} - \n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the\nvalue will be a space-delimited list of values based on the options selected.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - The select's required attribute.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `virtualScrollHelper` - \n\n * `hasSlotController` - \n\n * `typeToSelectString` {`string`} - \n\n * `typeToSelectTimeout` {`number`} - \n\n * `popup` - \n\n * `combobox` {`HTMLSlotElement`} - \n\n * `displayInput` {`HTMLInputElement`} - \n\n * `valueInput` {`HTMLInputElement`} - \n\n * `listbox` {`HTMLSlotElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `displayLabel` {`string`} - \n\n * `currentOption` - \n\n * `selectedOptions` {`NileOption[]`} - \n\n * `oldValue` {`string | string[]`} - \n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchValue` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - \n\n * `internalSearchPlaceHolder` {`string`} - \n\n * `blockValueChange` {`boolean`} - \n\n * `disableLocalSearch` {`boolean`} - \n\n * `optionsLoading` {`boolean`} - \n\n * `noWidthSync` {`boolean`} - \n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `maxOptionsVisible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\nuse the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showSelected` {`boolean`} - \n\n * `oldMaxOptionsVisible` {`number`} - \n\n * `showNoResults` {`boolean`} - \n\n * `noResultsMessage` {`string`} - \n\n * `
|
2846
|
+
"description": "Events:\n\n * `nile-change` {} - Emitted when the control's value changes.\n\n * `nile-clear` {} - Emitted when the control's value is cleared.\n\n * `nile-input` {} - Emitted when the control receives input.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-show` {} - Emitted when the select's menu opens.\n\n * `nile-after-show` {} - Emitted after the select's menu opens and all animations are complete.\n\n * `nile-hide` {} - Emitted when the select's menu closes.\n\n * `nile-after-hide` {} - Emitted after the select's menu closes and all animations are complete.\n\n * `nile-invalid` {} - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\nSlots:\n\n * ` ` {} - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.\n\n * `label` {} - The input's label. Alternatively, you can use the `label` attribute.\n\n * `prefix` {} - Used to prepend a presentational icon or similar element to the combobox.\n\n * `clear-icon` {} - An icon to use in lieu of the default clear icon.\n\n * `expand-icon` {} - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - \n\n * `internal-search-placeholder` {`string`} - \n\n * `blockValueChange` {`boolean`} - \n\n * `disableLocalSearch` {`boolean`} - \n\n * `optionsLoading` {`boolean`} - \n\n * `noWidthSync` {`boolean`} - \n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `max-options-visible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\nuse the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showSelected` {`boolean`} - \n\n * `showNoResults` {`boolean`} - \n\n * `noResultsMessage` {`string`} - \n\n * `data` - \n\n * `enableVirtualScroll` {`boolean`} - \n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the\nvalue will be a space-delimited list of values based on the options selected.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - The select's required attribute.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `virtualScrollHelper` - \n\n * `hasSlotController` - \n\n * `typeToSelectString` {`string`} - \n\n * `typeToSelectTimeout` {`number`} - \n\n * `popup` - \n\n * `combobox` {`HTMLSlotElement`} - \n\n * `displayInput` {`HTMLInputElement`} - \n\n * `valueInput` {`HTMLInputElement`} - \n\n * `listbox` {`HTMLSlotElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `displayLabel` {`string`} - \n\n * `currentOption` - \n\n * `selectedOptions` {`NileOption[]`} - \n\n * `oldValue` {`string | string[]`} - \n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchValue` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - \n\n * `internalSearchPlaceHolder` {`string`} - \n\n * `blockValueChange` {`boolean`} - \n\n * `disableLocalSearch` {`boolean`} - \n\n * `optionsLoading` {`boolean`} - \n\n * `noWidthSync` {`boolean`} - \n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `maxOptionsVisible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\nuse the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showSelected` {`boolean`} - \n\n * `oldMaxOptionsVisible` {`number`} - \n\n * `showNoResults` {`boolean`} - \n\n * `noResultsMessage` {`string`} - \n\n * `renderItemConfig` {`RenderItemConfig | undefined`} - Enhanced configuration for rendering items with support for display text, value, and search text\n\n * `data` - \n\n * `enableVirtualScroll` {`boolean`} - \n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the\nvalue will be a space-delimited list of values based on the options selected.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `defaultValue` {`string | string[]`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `defaultChecked` {`boolean | undefined`} - \n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string | undefined`} - \n\n * `min` {`string | number | Date | undefined`} - \n\n * `max` {`string | number | Date | undefined`} - \n\n * `step` {`number | \"any\" | undefined`} - \n\n * `required` {`boolean`} - The select's required attribute.\n\n * `minlength` {`number | undefined`} - \n\n * `maxlength` {`number | undefined`} - \n\n * `validity` {`ValidityState`} - Gets the validity state object\n\n * `validationMessage` {`string`} - Gets the validation message\n\n * `checkValidity` - \n\n * `getForm` - \n\n * `reportValidity` - \n\n * `setCustomValidity` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
|
2847
2847
|
"attributes": [
|
2848
2848
|
{
|
2849
2849
|
"name": "size",
|
@@ -4060,7 +4060,7 @@
|
|
4060
4060
|
},
|
4061
4061
|
{
|
4062
4062
|
"name": "nile-virtual-select",
|
4063
|
-
"description": "Events:\n\n * `nile-change` {} - Emitted when the control's value changes.\n\n * `nile-clear` {} - Emitted when the control's value is cleared.\n\n * `nile-input` {} - Emitted when the control receives input.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-show` {} - Emitted when the select's menu opens.\n\n * `nile-after-show` {} - Emitted after the select's menu opens and all animations are complete.\n\n * `nile-hide` {} - Emitted when the select's menu closes.\n\n * `nile-after-hide` {} - Emitted after the select's menu closes and all animations are complete.\n\n * `nile-invalid` {} - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\nSlots:\n\n * `label` {} - The input's label. Alternatively, you can use the `label` attribute.\n\n * `prefix` {} - Used to prepend a presentational icon or similar element to the combobox.\n\n * `clear-icon` {} - An icon to use in lieu of the default clear icon.\n\n * `expand-icon` {} - The icon to show when the control is expanded and collapsed.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `data` - Array of all option items for virtual scrolling\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - Enable search functionality\n\n * `internal-search-placeholder` {`string`} - Search input placeholder\n\n * `disableLocalSearch` {`boolean`} - Disable local search filtering\n\n * `optionsLoading` {`boolean`} - Show loading state\n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `help-text` {`string`} - Help text\n\n * `error-message` {`string`} - Error message\n\n * `warning` {`boolean`} - Sets the input to a warning state\n\n * `error` {`boolean`} - Sets the input to an error state\n\n * `success` {`boolean`} - Sets the input to a success state\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - The select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showNoResults` {`boolean`} - Show no results message\n\n * `noResultsMessage` {`string`} - No results message\n\n * `showSelected` {`boolean`} - Show selected options only\n\n * `blockValueChange` {`boolean`} - Block value change events\n\n * `noWidthSync` {`boolean`} - Disable width synchronization\n\n * `max-options-visible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select. When `multiple` is enabled, the value will be an array of selected values.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - The select's required attribute.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `hasSlotController` - \n\n * `popup` - \n\n * `displayInput` {`HTMLInputElement`} - \n\n * `valueInput` {`HTMLInputElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `displayLabel` {`string`} - \n\n * `selectedOptions` {`VirtualOption[]`} - \n\n * `oldValue` {`string | string[]`} - \n\n * `data` - Array of all option items for virtual scrolling\n\n * `originalOptionItems` - Original unfiltered option items for search functionality\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchValue` {`string`} - Current search value\n\n * `searchEnabled` {`boolean`} - Enable search functionality\n\n * `internalSearchPlaceHolder` {`string`} - Search input placeholder\n\n * `disableLocalSearch` {`boolean`} - Disable local search filtering\n\n * `optionsLoading` {`boolean`} - Show loading state\n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `helpText` {`string`} - Help text\n\n * `errorMessage` {`string`} - Error message\n\n * `warning` {`boolean`} - Sets the input to a warning state\n\n * `error` {`boolean`} - Sets the input to an error state\n\n * `success` {`boolean`} - Sets the input to a success state\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - The select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showNoResults` {`boolean`} - Show no results message\n\n * `noResultsMessage` {`string`} - No results message\n\n * `showSelected` {`boolean`} - Show selected options only\n\n * `
|
4063
|
+
"description": "Events:\n\n * `nile-change` {} - Emitted when the control's value changes.\n\n * `nile-clear` {} - Emitted when the control's value is cleared.\n\n * `nile-input` {} - Emitted when the control receives input.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-show` {} - Emitted when the select's menu opens.\n\n * `nile-after-show` {} - Emitted after the select's menu opens and all animations are complete.\n\n * `nile-hide` {} - Emitted when the select's menu closes.\n\n * `nile-after-hide` {} - Emitted after the select's menu closes and all animations are complete.\n\n * `nile-invalid` {} - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\nSlots:\n\n * `label` {} - The input's label. Alternatively, you can use the `label` attribute.\n\n * `prefix` {} - Used to prepend a presentational icon or similar element to the combobox.\n\n * `clear-icon` {} - An icon to use in lieu of the default clear icon.\n\n * `expand-icon` {} - The icon to show when the control is expanded and collapsed.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `data` - Array of all option items for virtual scrolling\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchEnabled` {`boolean`} - Enable search functionality\n\n * `internal-search-placeholder` {`string`} - Search input placeholder\n\n * `disableLocalSearch` {`boolean`} - Disable local search filtering\n\n * `optionsLoading` {`boolean`} - Show loading state\n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `help-text` {`string`} - Help text\n\n * `error-message` {`string`} - Error message\n\n * `warning` {`boolean`} - Sets the input to a warning state\n\n * `error` {`boolean`} - Sets the input to an error state\n\n * `success` {`boolean`} - Sets the input to a success state\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - The select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showNoResults` {`boolean`} - Show no results message\n\n * `noResultsMessage` {`string`} - No results message\n\n * `showSelected` {`boolean`} - Show selected options only\n\n * `blockValueChange` {`boolean`} - Block value change events\n\n * `noWidthSync` {`boolean`} - Disable width synchronization\n\n * `max-options-visible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select. When `multiple` is enabled, the value will be an array of selected values.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - The select's required attribute.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `hasSlotController` - \n\n * `popup` - \n\n * `displayInput` {`HTMLInputElement`} - \n\n * `valueInput` {`HTMLInputElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `displayLabel` {`string`} - \n\n * `selectedOptions` {`VirtualOption[]`} - \n\n * `oldValue` {`string | string[]`} - \n\n * `data` - Array of all option items for virtual scrolling\n\n * `originalOptionItems` - Original unfiltered option items for search functionality\n\n * `size` {`\"medium\" | \"small\" | \"large\"`} - The select's size.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the select is empty.\n\n * `searchValue` {`string`} - Current search value\n\n * `searchEnabled` {`boolean`} - Enable search functionality\n\n * `internalSearchPlaceHolder` {`string`} - Search input placeholder\n\n * `disableLocalSearch` {`boolean`} - Disable local search filtering\n\n * `optionsLoading` {`boolean`} - Show loading state\n\n * `multiple` {`boolean`} - Allows more than one option to be selected.\n\n * `helpText` {`string`} - Help text\n\n * `errorMessage` {`string`} - Error message\n\n * `warning` {`boolean`} - Sets the input to a warning state\n\n * `error` {`boolean`} - Sets the input to an error state\n\n * `success` {`boolean`} - Sets the input to a success state\n\n * `clearable` {`boolean`} - Adds a clear button when the select is not empty.\n\n * `open` {`boolean`} - The select's open state.\n\n * `hoist` {`boolean`} - Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n\n * `filled` {`boolean`} - Draws a filled select.\n\n * `pill` {`boolean`} - Draws a pill-style select with rounded edges.\n\n * `label` {`string`} - The select's label. If you need to display HTML, use the `label` slot instead.\n\n * `placement` {`\"top\" | \"bottom\"`} - The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\ninside of the viewport.\n\n * `showNoResults` {`boolean`} - Show no results message\n\n * `noResultsMessage` {`string`} - No results message\n\n * `showSelected` {`boolean`} - Show selected options only\n\n * `renderItemConfig` {`RenderItemConfig | undefined`} - Enhanced configuration for rendering items with support for display text, value, and search text\n\n * `blockValueChange` {`boolean`} - Block value change events\n\n * `noWidthSync` {`boolean`} - Disable width synchronization\n\n * `maxOptionsVisible` {`number`} - The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\nindicate the number of additional items that are selected. Set to 0 to remove the limit.\n\n * `oldMaxOptionsVisible` {`number`} - \n\n * `handleDocumentMouseDown` - \n\n * `name` {`string`} - The name of the select, submitted as a name/value pair with form data.\n\n * `value` {`string | string[]`} - The current value of the select. When `multiple` is enabled, the value will be an array of selected values.\n\n * `disabled` {`boolean`} - Disables the select control.\n\n * `defaultValue` {`string | string[]`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `defaultChecked` {`boolean | undefined`} - \n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string | undefined`} - \n\n * `min` {`string | number | Date | undefined`} - \n\n * `max` {`string | number | Date | undefined`} - \n\n * `step` {`number | \"any\" | undefined`} - \n\n * `required` {`boolean`} - The select's required attribute.\n\n * `minlength` {`number | undefined`} - \n\n * `maxlength` {`number | undefined`} - \n\n * `validity` {`ValidityState`} - Gets the validity state object\n\n * `validationMessage` {`string`} - Gets the validation message\n\n * `checkValidity` - \n\n * `getForm` - \n\n * `reportValidity` - \n\n * `setCustomValidity` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
|
4064
4064
|
"attributes": [
|
4065
4065
|
{
|
4066
4066
|
"name": "data",
|