@solid-design-system/components 3.22.17 → 3.23.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/es/combobox.js +11 -0
- package/dist/components/es/map-marker.js +1 -1
- package/dist/components/es/optgroup.js +1 -0
- package/dist/components/es/option-renderer.js +1 -0
- package/dist/components/es/select.js +7 -3
- package/dist/components/es/solid-components2.js +7 -7
- package/dist/components/es/utils.js +1 -0
- package/dist/components/umd/solid-components.js +37 -23
- package/dist/custom-elements.json +1 -1
- package/dist/package/components/combobox/combobox.d.ts +129 -0
- package/dist/package/components/combobox/combobox.js +958 -0
- package/dist/package/components/combobox/option-renderer.d.ts +5 -0
- package/dist/package/components/combobox/option-renderer.js +4 -0
- package/dist/package/components/combobox/utils.d.ts +8 -0
- package/dist/package/components/combobox/utils.js +14 -0
- package/dist/package/components/optgroup/optgroup.d.ts +20 -0
- package/dist/package/components/optgroup/optgroup.js +68 -0
- package/dist/package/components/select/select.d.ts +6 -1
- package/dist/package/components/select/select.js +100 -30
- package/dist/package/solid-components.d.ts +2 -0
- package/dist/package/solid-components.js +74 -70
- package/dist/package/styles/tailwind.css.js +1 -1
- package/dist/package/translations/de.js +8 -4
- package/dist/package/translations/en.js +8 -4
- package/dist/package/utilities/localize.d.ts +4 -0
- package/dist/versioned-components/es/accordion-group.js +1 -1
- package/dist/versioned-components/es/accordion.js +1 -1
- package/dist/versioned-components/es/audio.js +1 -1
- package/dist/versioned-components/es/badge.js +1 -1
- package/dist/versioned-components/es/brandshape.js +1 -1
- package/dist/versioned-components/es/button.js +1 -1
- package/dist/versioned-components/es/carousel-item.js +1 -1
- package/dist/versioned-components/es/carousel.js +3 -3
- package/dist/versioned-components/es/checkbox-group.js +1 -1
- package/dist/versioned-components/es/checkbox.js +1 -1
- package/dist/versioned-components/es/combobox.js +11 -0
- package/dist/versioned-components/es/dialog.js +1 -1
- package/dist/versioned-components/es/divider.js +1 -1
- package/dist/versioned-components/es/drawer.js +1 -1
- package/dist/versioned-components/es/dropdown.js +1 -1
- package/dist/versioned-components/es/expandable.js +1 -1
- package/dist/versioned-components/es/flipcard.js +1 -1
- package/dist/versioned-components/es/form.js +1 -1
- package/dist/versioned-components/es/header.js +1 -1
- package/dist/versioned-components/es/icon.js +1 -1
- package/dist/versioned-components/es/include.js +1 -1
- package/dist/versioned-components/es/input.js +1 -1
- package/dist/versioned-components/es/link.js +1 -1
- package/dist/versioned-components/es/map-marker.js +1 -1
- package/dist/versioned-components/es/navigation-item.js +1 -1
- package/dist/versioned-components/es/notification.js +1 -1
- package/dist/versioned-components/es/optgroup.js +1 -0
- package/dist/versioned-components/es/option-renderer.js +1 -0
- package/dist/versioned-components/es/option.js +1 -1
- package/dist/versioned-components/es/quickfact.js +1 -1
- package/dist/versioned-components/es/radio-button.js +1 -1
- package/dist/versioned-components/es/radio-group.js +1 -1
- package/dist/versioned-components/es/radio.js +1 -1
- package/dist/versioned-components/es/scrollable.js +1 -1
- package/dist/versioned-components/es/select.js +7 -3
- package/dist/versioned-components/es/solid-components2.js +7 -7
- package/dist/versioned-components/es/spinner.js +1 -1
- package/dist/versioned-components/es/step-group.js +1 -1
- package/dist/versioned-components/es/step.js +1 -1
- package/dist/versioned-components/es/switch.js +1 -1
- package/dist/versioned-components/es/tab-group.js +1 -1
- package/dist/versioned-components/es/tab-panel.js +1 -1
- package/dist/versioned-components/es/tab.js +1 -1
- package/dist/versioned-components/es/tag.js +1 -1
- package/dist/versioned-components/es/teaser-media.js +1 -1
- package/dist/versioned-components/es/teaser.js +1 -1
- package/dist/versioned-components/es/textarea.js +1 -1
- package/dist/versioned-components/es/tooltip.js +2 -2
- package/dist/versioned-components/es/utils.js +1 -0
- package/dist/versioned-components/es/video.js +1 -1
- package/dist/versioned-package/_components/button-group/button-group.d.ts +1 -1
- package/dist/versioned-package/_components/button-group/button-group.js +11 -11
- package/dist/versioned-package/components/accordion/accordion.d.ts +1 -1
- package/dist/versioned-package/components/accordion/accordion.js +2 -2
- package/dist/versioned-package/components/accordion-group/accordion-group.d.ts +1 -1
- package/dist/versioned-package/components/accordion-group/accordion-group.js +3 -3
- package/dist/versioned-package/components/audio/audio.d.ts +1 -1
- package/dist/versioned-package/components/audio/audio.js +6 -6
- package/dist/versioned-package/components/badge/badge.d.ts +1 -1
- package/dist/versioned-package/components/badge/badge.js +1 -1
- package/dist/versioned-package/components/brandshape/brandshape.d.ts +1 -1
- package/dist/versioned-package/components/brandshape/brandshape.js +1 -1
- package/dist/versioned-package/components/button/button.d.ts +1 -1
- package/dist/versioned-package/components/button/button.js +4 -4
- package/dist/versioned-package/components/carousel/carousel.d.ts +1 -1
- package/dist/versioned-package/components/carousel/carousel.js +6 -6
- package/dist/versioned-package/components/carousel-item/carousel-item.d.ts +1 -1
- package/dist/versioned-package/components/carousel-item/carousel-item.js +1 -1
- package/dist/versioned-package/components/checkbox/checkbox.d.ts +1 -1
- package/dist/versioned-package/components/checkbox/checkbox.js +3 -3
- package/dist/versioned-package/components/checkbox-group/checkbox-group.d.ts +1 -1
- package/dist/versioned-package/components/checkbox-group/checkbox-group.js +5 -5
- package/dist/versioned-package/components/combobox/combobox.d.ts +129 -0
- package/dist/versioned-package/components/combobox/combobox.js +958 -0
- package/dist/versioned-package/components/combobox/option-renderer.d.ts +5 -0
- package/dist/versioned-package/components/combobox/option-renderer.js +4 -0
- package/dist/versioned-package/components/combobox/utils.d.ts +8 -0
- package/dist/versioned-package/components/combobox/utils.js +14 -0
- package/dist/versioned-package/components/dialog/dialog.d.ts +1 -1
- package/dist/versioned-package/components/dialog/dialog.js +2 -2
- package/dist/versioned-package/components/divider/divider.d.ts +1 -1
- package/dist/versioned-package/components/divider/divider.js +2 -2
- package/dist/versioned-package/components/drawer/drawer.d.ts +1 -1
- package/dist/versioned-package/components/drawer/drawer.js +2 -2
- package/dist/versioned-package/components/dropdown/dropdown.d.ts +1 -1
- package/dist/versioned-package/components/dropdown/dropdown.js +8 -8
- package/dist/versioned-package/components/expandable/expandable.d.ts +1 -1
- package/dist/versioned-package/components/expandable/expandable.js +2 -2
- package/dist/versioned-package/components/flipcard/flipcard.d.ts +1 -1
- package/dist/versioned-package/components/flipcard/flipcard.js +1 -1
- package/dist/versioned-package/components/header/header.d.ts +1 -1
- package/dist/versioned-package/components/header/header.js +4 -4
- package/dist/versioned-package/components/icon/icon.d.ts +1 -1
- package/dist/versioned-package/components/icon/icon.js +1 -1
- package/dist/versioned-package/components/include/include.d.ts +1 -1
- package/dist/versioned-package/components/include/include.js +1 -1
- package/dist/versioned-package/components/input/input.d.ts +1 -1
- package/dist/versioned-package/components/input/input.js +3 -3
- package/dist/versioned-package/components/link/link.d.ts +1 -1
- package/dist/versioned-package/components/link/link.js +2 -2
- package/dist/versioned-package/components/map-marker/map-marker.d.ts +1 -1
- package/dist/versioned-package/components/map-marker/map-marker.js +1 -1
- package/dist/versioned-package/components/navigation-item/navigation-item.d.ts +1 -1
- package/dist/versioned-package/components/navigation-item/navigation-item.js +5 -5
- package/dist/versioned-package/components/notification/notification.d.ts +1 -1
- package/dist/versioned-package/components/notification/notification.js +5 -5
- package/dist/versioned-package/components/optgroup/optgroup.d.ts +20 -0
- package/dist/versioned-package/components/optgroup/optgroup.js +68 -0
- package/dist/versioned-package/components/option/option.d.ts +1 -1
- package/dist/versioned-package/components/option/option.js +2 -2
- package/dist/versioned-package/components/popup/popup.d.ts +1 -1
- package/dist/versioned-package/components/popup/popup.js +1 -1
- package/dist/versioned-package/components/quickfact/quickfact.d.ts +1 -1
- package/dist/versioned-package/components/quickfact/quickfact.js +2 -2
- package/dist/versioned-package/components/radio/radio.d.ts +1 -1
- package/dist/versioned-package/components/radio/radio.js +2 -2
- package/dist/versioned-package/components/radio-button/radio-button.d.ts +1 -1
- package/dist/versioned-package/components/radio-button/radio-button.js +2 -2
- package/dist/versioned-package/components/radio-group/radio-group.d.ts +2 -2
- package/dist/versioned-package/components/radio-group/radio-group.js +13 -13
- package/dist/versioned-package/components/scrollable/scrollable.d.ts +1 -1
- package/dist/versioned-package/components/scrollable/scrollable.js +3 -3
- package/dist/versioned-package/components/select/select.d.ts +10 -5
- package/dist/versioned-package/components/select/select.js +121 -51
- package/dist/versioned-package/components/spinner/spinner.d.ts +1 -1
- package/dist/versioned-package/components/spinner/spinner.js +1 -1
- package/dist/versioned-package/components/step/step.d.ts +1 -1
- package/dist/versioned-package/components/step/step.js +2 -2
- package/dist/versioned-package/components/step-group/step-group.d.ts +1 -1
- package/dist/versioned-package/components/step-group/step-group.js +2 -2
- package/dist/versioned-package/components/switch/switch.d.ts +1 -1
- package/dist/versioned-package/components/switch/switch.js +1 -1
- package/dist/versioned-package/components/tab/tab.d.ts +1 -1
- package/dist/versioned-package/components/tab/tab.js +2 -2
- package/dist/versioned-package/components/tab-group/tab-group.d.ts +1 -1
- package/dist/versioned-package/components/tab-group/tab-group.js +13 -13
- package/dist/versioned-package/components/tab-panel/tab-panel.d.ts +1 -1
- package/dist/versioned-package/components/tab-panel/tab-panel.js +2 -2
- package/dist/versioned-package/components/tag/tag.d.ts +1 -1
- package/dist/versioned-package/components/tag/tag.js +2 -2
- package/dist/versioned-package/components/teaser/teaser.js +1 -1
- package/dist/versioned-package/components/teaser-media/teaser-media.js +1 -1
- package/dist/versioned-package/components/textarea/textarea.d.ts +1 -1
- package/dist/versioned-package/components/textarea/textarea.js +2 -2
- package/dist/versioned-package/components/tooltip/tooltip.d.ts +1 -1
- package/dist/versioned-package/components/tooltip/tooltip.js +5 -5
- package/dist/versioned-package/components/video/video.d.ts +1 -1
- package/dist/versioned-package/components/video/video.js +2 -2
- package/dist/versioned-package/internal/form.js +3 -3
- package/dist/versioned-package/solid-components.d.ts +2 -0
- package/dist/versioned-package/solid-components.js +74 -70
- package/dist/versioned-package/styles/headline/headline.css.js +1 -1
- package/dist/versioned-package/styles/tailwind.css.js +1 -1
- package/dist/versioned-package/translations/de.js +8 -4
- package/dist/versioned-package/translations/en.js +8 -4
- package/dist/versioned-package/utilities/autocomplete-config.js +4 -4
- package/dist/versioned-package/utilities/localize.d.ts +4 -0
- package/dist/versioned-styles/solid-styles.css +1 -1
- package/dist/vscode.html-custom-data.json +371 -45
- package/dist/web-types.json +5471 -3959
- package/package.json +3 -3
@@ -0,0 +1,129 @@
|
|
1
|
+
import { type CSSResultGroup, type TemplateResult } from 'lit';
|
2
|
+
import { type OptionRenderer } from './option-renderer.js';
|
3
|
+
import SdIcon from '../icon/icon';
|
4
|
+
import SdPopup from '../popup/popup';
|
5
|
+
import SdTag from '../tag/tag';
|
6
|
+
import SolidElement from '../../internal/solid-element';
|
7
|
+
import type { SolidFormControl } from '../../internal/solid-element';
|
8
|
+
import type SdOptgroup from '../optgroup/optgroup.js';
|
9
|
+
import type SdOption from '../option/option';
|
10
|
+
export default class SdCombobox extends SolidElement implements SolidFormControl {
|
11
|
+
static dependencies: {
|
12
|
+
'sd-icon': typeof SdIcon;
|
13
|
+
'sd-popup': typeof SdPopup;
|
14
|
+
'sd-tag': typeof SdTag;
|
15
|
+
};
|
16
|
+
private readonly formControlController;
|
17
|
+
private readonly hasSlotController;
|
18
|
+
private readonly localize;
|
19
|
+
popup: SdPopup;
|
20
|
+
combobox: HTMLSlotElement;
|
21
|
+
displayInput: HTMLInputElement;
|
22
|
+
valueInput: HTMLInputElement;
|
23
|
+
listbox: HTMLSlotElement;
|
24
|
+
tagWrapper: HTMLDivElement;
|
25
|
+
filteredWrapper: HTMLSlotElement;
|
26
|
+
private defaultSlot;
|
27
|
+
invalidMessage: HTMLDivElement;
|
28
|
+
hasHover: boolean;
|
29
|
+
private hasFocus;
|
30
|
+
displayInputValue: string;
|
31
|
+
selectedTextLabel: string;
|
32
|
+
selectedOptions: (SdOption | undefined)[];
|
33
|
+
filteredOptions: (SdOption | SdOptgroup | undefined)[];
|
34
|
+
allOptions: (SdOption | SdOptgroup | undefined)[];
|
35
|
+
lastOption: SdOption | undefined;
|
36
|
+
showValidStyle: boolean;
|
37
|
+
showInvalidStyle: boolean;
|
38
|
+
name: string;
|
39
|
+
value: string | string[];
|
40
|
+
defaultValue: string;
|
41
|
+
size: 'lg' | 'md' | 'sm';
|
42
|
+
placeholder: string;
|
43
|
+
disabled: boolean;
|
44
|
+
clearable: boolean;
|
45
|
+
open: boolean;
|
46
|
+
hoist: boolean;
|
47
|
+
label: string;
|
48
|
+
placement: 'top' | 'bottom';
|
49
|
+
helpText: string;
|
50
|
+
form: string;
|
51
|
+
required: boolean;
|
52
|
+
currentPlacement: "top" | "bottom";
|
53
|
+
getOption: OptionRenderer;
|
54
|
+
multiple: boolean;
|
55
|
+
useTags: boolean;
|
56
|
+
maxOptionsVisible: number;
|
57
|
+
styleOnValid: boolean;
|
58
|
+
filter: (option: SdOption, queryString: string) => boolean;
|
59
|
+
getTag: (option: SdOption, index: number) => TemplateResult | string | HTMLElement;
|
60
|
+
connectedCallback(): void;
|
61
|
+
firstUpdated(): void;
|
62
|
+
get validity(): ValidityState;
|
63
|
+
get validationMessage(): string;
|
64
|
+
protected get options(): (SdOption | SdOptgroup | TemplateResult<1>)[];
|
65
|
+
protected get tags(): (TemplateResult<1> | TemplateResult<1>[])[];
|
66
|
+
private addOpenListeners;
|
67
|
+
private removeOpenListeners;
|
68
|
+
private handleFocus;
|
69
|
+
private handleBlur;
|
70
|
+
private handleDocumentFocusIn;
|
71
|
+
private handleDocumentKeyDown;
|
72
|
+
private handleDocumentMouseDown;
|
73
|
+
private handleTagKeyDown;
|
74
|
+
private handleTagMaxOptionsKeyDown;
|
75
|
+
private handleLabelClick;
|
76
|
+
private handleTagRemove;
|
77
|
+
private handleComboboxMouseDown;
|
78
|
+
private handleComboboxKeyDown;
|
79
|
+
private handleClearClick;
|
80
|
+
private handleNoResultsClick;
|
81
|
+
private clearCombobox;
|
82
|
+
private preventLoosingFocus;
|
83
|
+
private handleOptionClick;
|
84
|
+
private selectNextOption;
|
85
|
+
private getAllFilteredOptions;
|
86
|
+
private getCurrentOption;
|
87
|
+
private setCurrentOption;
|
88
|
+
private toggleOptionSelection;
|
89
|
+
private findOptionByValue;
|
90
|
+
private selectedOptionsAndValueSynced;
|
91
|
+
private isOptionSelected;
|
92
|
+
private syncSelectedOptionsAndValue;
|
93
|
+
private compareOptions;
|
94
|
+
private setSelectedOptions;
|
95
|
+
private setOrderedSelectedOptions;
|
96
|
+
private selectionChanged;
|
97
|
+
private createComboboxOptionsFromQuery;
|
98
|
+
private handleInvalid;
|
99
|
+
private handleMouseEnter;
|
100
|
+
private handleMouseLeave;
|
101
|
+
private handleCurrentPlacement;
|
102
|
+
handleFilterChange(): void;
|
103
|
+
handleUseTagsChange(): void;
|
104
|
+
applySizeToOptions(): void;
|
105
|
+
handleDisabledChange(): void;
|
106
|
+
handleValueChange(): void;
|
107
|
+
handleDisplayInputValueChange(): void;
|
108
|
+
handleOpenChange(): Promise<void>;
|
109
|
+
show(): Promise<void>;
|
110
|
+
hide(): Promise<void>;
|
111
|
+
checkValidity(): boolean;
|
112
|
+
getForm(): HTMLFormElement | null;
|
113
|
+
reportValidity(): boolean;
|
114
|
+
setCustomValidity(message: string): void;
|
115
|
+
focus(options?: FocusOptions): void;
|
116
|
+
blur(): void;
|
117
|
+
private handleInput;
|
118
|
+
private handleChange;
|
119
|
+
private getSlottedOptions;
|
120
|
+
private getSlottedOptGroups;
|
121
|
+
private handleDefaultSlotChange;
|
122
|
+
render(): TemplateResult<1>;
|
123
|
+
static styles: CSSResultGroup;
|
124
|
+
}
|
125
|
+
declare global {
|
126
|
+
interface HTMLElementTagNameMap {
|
127
|
+
'sd-combobox': SdCombobox;
|
128
|
+
}
|
129
|
+
}
|