@keenmate/web-multiselect 1.8.1 → 1.8.2
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 +10 -0
- package/component-variables.manifest.json +390 -0
- package/dist/multiselect.js +3 -3
- package/dist/multiselect.umd.js +2 -2
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -1618,6 +1618,16 @@ All KeenMate components follow a consistent naming convention for **Tier 1 varia
|
|
|
1618
1618
|
|
|
1619
1619
|
Learn the pattern once, apply it across all components.
|
|
1620
1620
|
|
|
1621
|
+
#### Component Variables Manifest
|
|
1622
|
+
|
|
1623
|
+
This package exports a `component-variables.manifest.json` file that documents all supported CSS variables for tooling integration (e.g., Theme Designer, IDE autocomplete):
|
|
1624
|
+
|
|
1625
|
+
```javascript
|
|
1626
|
+
import manifest from '@keenmate/web-multiselect/component-variables.manifest.json';
|
|
1627
|
+
// manifest.baseVariables - list of --base-* variables the component responds to
|
|
1628
|
+
// manifest.componentVariables - list of --ms-* component-specific variables
|
|
1629
|
+
```
|
|
1630
|
+
|
|
1621
1631
|
### CSS Variables (No Build System Required)
|
|
1622
1632
|
|
|
1623
1633
|
You can customize the component using CSS variables even with just a `<script>` tag:
|
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://raw.githubusercontent.com/keenmate/schemas/main/component-variables.schema.json",
|
|
3
|
+
"component": "@keenmate/web-multiselect",
|
|
4
|
+
"prefix": "ms",
|
|
5
|
+
"baseVariables": [
|
|
6
|
+
{ "name": "base-accent-color", "required": true, "usage": "Primary accent for selections, badges, focus states" },
|
|
7
|
+
{ "name": "base-accent-color-hover", "required": false, "usage": "Accent hover state" },
|
|
8
|
+
{ "name": "base-accent-color-active", "required": false, "usage": "Accent active/pressed state" },
|
|
9
|
+
{ "name": "base-accent-color-light", "required": false, "usage": "Light accent for badge backgrounds" },
|
|
10
|
+
{ "name": "base-accent-color-light-hover", "required": false, "usage": "Light accent hover state" },
|
|
11
|
+
{ "name": "base-text-color-1", "required": true, "usage": "Primary text (input, options, badges)" },
|
|
12
|
+
{ "name": "base-text-color-2", "required": false, "usage": "Secondary text" },
|
|
13
|
+
{ "name": "base-text-color-3", "required": false, "usage": "Tertiary text (placeholders, hints, group labels)" },
|
|
14
|
+
{ "name": "base-text-color-4", "required": false, "usage": "Quaternary text (placeholders)" },
|
|
15
|
+
{ "name": "base-text-color-on-accent", "required": false, "usage": "Text on accent backgrounds (badges, checkboxes)" },
|
|
16
|
+
{ "name": "base-main-bg", "required": true, "usage": "Primary background, hint background, actions background" },
|
|
17
|
+
{ "name": "base-hover-bg", "required": false, "usage": "Hover states for options, badges, buttons" },
|
|
18
|
+
{ "name": "base-disabled-bg", "required": false, "usage": "Disabled/readonly surface backgrounds" },
|
|
19
|
+
{ "name": "base-border-color", "required": true, "usage": "Input, dropdown, action button borders" },
|
|
20
|
+
{ "name": "base-border", "required": false, "usage": "Full border shorthand" },
|
|
21
|
+
{ "name": "base-input-bg", "required": false, "usage": "Input field background" },
|
|
22
|
+
{ "name": "base-input-color", "required": false, "usage": "Input text color" },
|
|
23
|
+
{ "name": "base-input-border", "required": false, "usage": "Input border" },
|
|
24
|
+
{ "name": "base-input-border-hover", "required": false, "usage": "Input border on hover" },
|
|
25
|
+
{ "name": "base-input-border-focus", "required": false, "usage": "Input border when focused" },
|
|
26
|
+
{ "name": "base-input-placeholder-color", "required": false, "usage": "Placeholder text color" },
|
|
27
|
+
{ "name": "base-input-bg-disabled", "required": false, "usage": "Disabled input background" },
|
|
28
|
+
{ "name": "base-dropdown-bg", "required": false, "usage": "Dropdown and popover backgrounds" },
|
|
29
|
+
{ "name": "base-dropdown-border", "required": false, "usage": "Dropdown border" },
|
|
30
|
+
{ "name": "base-dropdown-box-shadow", "required": false, "usage": "Dropdown shadow" },
|
|
31
|
+
{ "name": "base-tooltip-bg", "required": false, "usage": "Tooltip background" },
|
|
32
|
+
{ "name": "base-tooltip-text-color", "required": false, "usage": "Tooltip text color" },
|
|
33
|
+
{ "name": "base-font-family", "required": false, "usage": "All text in component" },
|
|
34
|
+
{ "name": "base-font-size-2xs", "required": false, "usage": "Smallest text (multiplier)" },
|
|
35
|
+
{ "name": "base-font-size-xs", "required": false, "usage": "Extra small text, badges (multiplier)" },
|
|
36
|
+
{ "name": "base-font-size-sm", "required": false, "usage": "Small text, options (multiplier)" },
|
|
37
|
+
{ "name": "base-font-size-base", "required": false, "usage": "Base text size (multiplier)" },
|
|
38
|
+
{ "name": "base-font-size-lg", "required": false, "usage": "Large text (multiplier)" },
|
|
39
|
+
{ "name": "base-font-size-xl", "required": false, "usage": "Extra large text (multiplier)" },
|
|
40
|
+
{ "name": "base-font-weight-normal", "required": false, "usage": "Normal text weight" },
|
|
41
|
+
{ "name": "base-font-weight-medium", "required": false, "usage": "Medium text weight" },
|
|
42
|
+
{ "name": "base-font-weight-semibold", "required": false, "usage": "Semibold text (badges, labels)" },
|
|
43
|
+
{ "name": "base-line-height-tight", "required": false, "usage": "Tight line height" },
|
|
44
|
+
{ "name": "base-line-height-normal", "required": false, "usage": "Normal line height" },
|
|
45
|
+
{ "name": "base-line-height-relaxed", "required": false, "usage": "Relaxed line height" },
|
|
46
|
+
{ "name": "base-border-radius-sm", "required": false, "usage": "Small radius (badges, buttons)" },
|
|
47
|
+
{ "name": "base-border-radius-md", "required": false, "usage": "Medium radius (input)" },
|
|
48
|
+
{ "name": "base-border-radius-lg", "required": false, "usage": "Large radius (dropdown)" },
|
|
49
|
+
{ "name": "base-input-size-xs-height", "required": false, "usage": "Extra small input height (multiplier)" },
|
|
50
|
+
{ "name": "base-input-size-sm-height", "required": false, "usage": "Small input height (multiplier)" },
|
|
51
|
+
{ "name": "base-input-size-md-height", "required": false, "usage": "Medium input height (multiplier)" },
|
|
52
|
+
{ "name": "base-input-size-lg-height", "required": false, "usage": "Large input height (multiplier)" },
|
|
53
|
+
{ "name": "base-input-size-xl-height", "required": false, "usage": "Extra large input height (multiplier)" }
|
|
54
|
+
],
|
|
55
|
+
"componentVariables": [
|
|
56
|
+
{ "name": "ms-rem", "category": "sizing", "usage": "Base sizing unit for proportional scaling (default: 10px)" },
|
|
57
|
+
|
|
58
|
+
{ "name": "ms-accent-color", "category": "accent", "usage": "Primary accent color" },
|
|
59
|
+
{ "name": "ms-accent-color-hover", "category": "accent", "usage": "Accent color on hover" },
|
|
60
|
+
{ "name": "ms-accent-color-active", "category": "accent", "usage": "Accent color when pressed" },
|
|
61
|
+
{ "name": "ms-accent-color-light", "category": "accent", "usage": "Light accent background" },
|
|
62
|
+
{ "name": "ms-accent-color-light-hover", "category": "accent", "usage": "Light accent hover" },
|
|
63
|
+
|
|
64
|
+
{ "name": "ms-text-color-1", "category": "text", "usage": "Primary text color" },
|
|
65
|
+
{ "name": "ms-text-color-2", "category": "text", "usage": "Secondary text color" },
|
|
66
|
+
{ "name": "ms-text-color-3", "category": "text", "usage": "Tertiary text color" },
|
|
67
|
+
{ "name": "ms-text-color-4", "category": "text", "usage": "Quaternary text color" },
|
|
68
|
+
{ "name": "ms-text-color-on-accent", "category": "text", "usage": "Text on accent backgrounds" },
|
|
69
|
+
{ "name": "ms-text-primary", "category": "text", "usage": "Legacy alias for text-color-1" },
|
|
70
|
+
{ "name": "ms-text-secondary", "category": "text", "usage": "Legacy alias for text-color-3" },
|
|
71
|
+
|
|
72
|
+
{ "name": "ms-primary-bg", "category": "surface", "usage": "Primary background color" },
|
|
73
|
+
{ "name": "ms-primary-bg-hover", "category": "surface", "usage": "Primary background hover" },
|
|
74
|
+
|
|
75
|
+
{ "name": "ms-border-color", "category": "border", "usage": "Default border color" },
|
|
76
|
+
{ "name": "ms-border", "category": "border", "usage": "Full border shorthand" },
|
|
77
|
+
|
|
78
|
+
{ "name": "ms-input-bg", "category": "input", "usage": "Input field background" },
|
|
79
|
+
{ "name": "ms-input-color", "category": "input", "usage": "Input text color" },
|
|
80
|
+
{ "name": "ms-input-border", "category": "input", "usage": "Input border" },
|
|
81
|
+
{ "name": "ms-input-border-hover", "category": "input", "usage": "Input border on hover" },
|
|
82
|
+
{ "name": "ms-input-border-focus", "category": "input", "usage": "Input border when focused" },
|
|
83
|
+
{ "name": "ms-input-placeholder-color", "category": "input", "usage": "Placeholder text color" },
|
|
84
|
+
{ "name": "ms-input-bg-disabled", "category": "input", "usage": "Disabled input background" },
|
|
85
|
+
{ "name": "ms-input-padding", "category": "input", "usage": "Input padding" },
|
|
86
|
+
{ "name": "ms-input-padding-right", "category": "input", "usage": "Input right padding (for toggle)" },
|
|
87
|
+
{ "name": "ms-input-height", "category": "input", "usage": "Input height" },
|
|
88
|
+
{ "name": "ms-input-font-size", "category": "input", "usage": "Input font size" },
|
|
89
|
+
{ "name": "ms-input-border-width", "category": "input", "usage": "Input border width" },
|
|
90
|
+
{ "name": "ms-input-border-radius", "category": "input", "usage": "Input border radius" },
|
|
91
|
+
{ "name": "ms-input-text", "category": "input", "usage": "Input text color" },
|
|
92
|
+
|
|
93
|
+
{ "name": "ms-input-size-xs-font", "category": "input-size", "usage": "XS size font" },
|
|
94
|
+
{ "name": "ms-input-size-xs-padding-v", "category": "input-size", "usage": "XS vertical padding" },
|
|
95
|
+
{ "name": "ms-input-size-xs-padding-h", "category": "input-size", "usage": "XS horizontal padding" },
|
|
96
|
+
{ "name": "ms-input-size-xs-height", "category": "input-size", "usage": "XS input height" },
|
|
97
|
+
{ "name": "ms-input-size-sm-font", "category": "input-size", "usage": "SM size font" },
|
|
98
|
+
{ "name": "ms-input-size-sm-padding-v", "category": "input-size", "usage": "SM vertical padding" },
|
|
99
|
+
{ "name": "ms-input-size-sm-padding-h", "category": "input-size", "usage": "SM horizontal padding" },
|
|
100
|
+
{ "name": "ms-input-size-sm-height", "category": "input-size", "usage": "SM input height" },
|
|
101
|
+
{ "name": "ms-input-size-md-font", "category": "input-size", "usage": "MD size font" },
|
|
102
|
+
{ "name": "ms-input-size-md-padding-v", "category": "input-size", "usage": "MD vertical padding" },
|
|
103
|
+
{ "name": "ms-input-size-md-padding-h", "category": "input-size", "usage": "MD horizontal padding" },
|
|
104
|
+
{ "name": "ms-input-size-md-height", "category": "input-size", "usage": "MD input height" },
|
|
105
|
+
{ "name": "ms-input-size-lg-font", "category": "input-size", "usage": "LG size font" },
|
|
106
|
+
{ "name": "ms-input-size-lg-padding-v", "category": "input-size", "usage": "LG vertical padding" },
|
|
107
|
+
{ "name": "ms-input-size-lg-padding-h", "category": "input-size", "usage": "LG horizontal padding" },
|
|
108
|
+
{ "name": "ms-input-size-lg-height", "category": "input-size", "usage": "LG input height" },
|
|
109
|
+
{ "name": "ms-input-size-xl-font", "category": "input-size", "usage": "XL size font" },
|
|
110
|
+
{ "name": "ms-input-size-xl-padding-v", "category": "input-size", "usage": "XL vertical padding" },
|
|
111
|
+
{ "name": "ms-input-size-xl-padding-h", "category": "input-size", "usage": "XL horizontal padding" },
|
|
112
|
+
{ "name": "ms-input-size-xl-height", "category": "input-size", "usage": "XL input height" },
|
|
113
|
+
|
|
114
|
+
{ "name": "ms-toggle-right", "category": "toggle", "usage": "Toggle icon right position" },
|
|
115
|
+
{ "name": "ms-toggle-color", "category": "toggle", "usage": "Toggle icon color" },
|
|
116
|
+
{ "name": "ms-toggle-icon-color", "category": "toggle", "usage": "Toggle icon color (semantic)" },
|
|
117
|
+
{ "name": "ms-toggle-icon-color-open", "category": "toggle", "usage": "Toggle icon color when open" },
|
|
118
|
+
|
|
119
|
+
{ "name": "ms-counter-offset", "category": "counter", "usage": "Counter badge offset" },
|
|
120
|
+
{ "name": "ms-counter-padding", "category": "counter", "usage": "Counter badge padding" },
|
|
121
|
+
{ "name": "ms-counter-bg", "category": "counter", "usage": "Counter badge background" },
|
|
122
|
+
{ "name": "ms-counter-color", "category": "counter", "usage": "Counter badge text color" },
|
|
123
|
+
{ "name": "ms-counter-font-size", "category": "counter", "usage": "Counter badge font size" },
|
|
124
|
+
{ "name": "ms-counter-font-weight", "category": "counter", "usage": "Counter badge font weight" },
|
|
125
|
+
{ "name": "ms-counter-border-radius", "category": "counter", "usage": "Counter badge border radius" },
|
|
126
|
+
{ "name": "ms-counter-bg-hover", "category": "counter", "usage": "Counter badge hover background" },
|
|
127
|
+
{ "name": "ms-counter-badge-bg", "category": "counter", "usage": "Counter badge semantic background" },
|
|
128
|
+
{ "name": "ms-counter-badge-bg-hover", "category": "counter", "usage": "Counter badge semantic hover" },
|
|
129
|
+
{ "name": "ms-counter-badge-color", "category": "counter", "usage": "Counter badge semantic color" },
|
|
130
|
+
|
|
131
|
+
{ "name": "ms-hint-padding", "category": "hint", "usage": "Floating hint padding" },
|
|
132
|
+
{ "name": "ms-hint-border", "category": "hint", "usage": "Floating hint border" },
|
|
133
|
+
{ "name": "ms-hint-border-radius", "category": "hint", "usage": "Floating hint border radius" },
|
|
134
|
+
{ "name": "ms-hint-box-shadow", "category": "hint", "usage": "Floating hint shadow" },
|
|
135
|
+
{ "name": "ms-hint-font-size", "category": "hint", "usage": "Floating hint font size" },
|
|
136
|
+
{ "name": "ms-hint-bg", "category": "hint", "usage": "Floating hint background" },
|
|
137
|
+
{ "name": "ms-hint-color", "category": "hint", "usage": "Floating hint text color" },
|
|
138
|
+
{ "name": "ms-hint-border-color", "category": "hint", "usage": "Floating hint border color" },
|
|
139
|
+
|
|
140
|
+
{ "name": "ms-dropdown-bg", "category": "dropdown", "usage": "Dropdown background" },
|
|
141
|
+
{ "name": "ms-dropdown-text-color", "category": "dropdown", "usage": "Dropdown text color" },
|
|
142
|
+
{ "name": "ms-dropdown-border", "category": "dropdown", "usage": "Dropdown border" },
|
|
143
|
+
{ "name": "ms-dropdown-border-color", "category": "dropdown", "usage": "Dropdown border color" },
|
|
144
|
+
{ "name": "ms-dropdown-border-radius", "category": "dropdown", "usage": "Dropdown border radius" },
|
|
145
|
+
{ "name": "ms-dropdown-box-shadow", "category": "dropdown", "usage": "Dropdown shadow" },
|
|
146
|
+
{ "name": "ms-dropdown-box-shadow-semantic", "category": "dropdown", "usage": "Dropdown semantic shadow" },
|
|
147
|
+
{ "name": "ms-options-max-height", "category": "dropdown", "usage": "Options list max height" },
|
|
148
|
+
{ "name": "ms-z-index-dropdown", "category": "dropdown", "usage": "Dropdown z-index" },
|
|
149
|
+
{ "name": "ms-z-index-sticky", "category": "dropdown", "usage": "Sticky elements z-index" },
|
|
150
|
+
|
|
151
|
+
{ "name": "ms-actions-gap", "category": "actions", "usage": "Actions row gap" },
|
|
152
|
+
{ "name": "ms-actions-padding", "category": "actions", "usage": "Actions row padding" },
|
|
153
|
+
{ "name": "ms-actions-border-bottom", "category": "actions", "usage": "Actions row border" },
|
|
154
|
+
{ "name": "ms-actions-bg", "category": "actions", "usage": "Actions row background" },
|
|
155
|
+
{ "name": "ms-actions-border-color", "category": "actions", "usage": "Actions row border color" },
|
|
156
|
+
|
|
157
|
+
{ "name": "ms-action-btn-padding", "category": "action-button", "usage": "Action button padding" },
|
|
158
|
+
{ "name": "ms-action-btn-font-size", "category": "action-button", "usage": "Action button font size" },
|
|
159
|
+
{ "name": "ms-action-btn-border", "category": "action-button", "usage": "Action button border" },
|
|
160
|
+
{ "name": "ms-action-btn-border-radius", "category": "action-button", "usage": "Action button border radius" },
|
|
161
|
+
{ "name": "ms-action-btn-bg", "category": "action-button", "usage": "Action button background" },
|
|
162
|
+
{ "name": "ms-action-btn-color", "category": "action-button", "usage": "Action button color" },
|
|
163
|
+
{ "name": "ms-action-btn-bg-hover", "category": "action-button", "usage": "Action button hover background" },
|
|
164
|
+
{ "name": "ms-action-btn-border-color-hover", "category": "action-button", "usage": "Action button hover border" },
|
|
165
|
+
{ "name": "ms-action-button-bg", "category": "action-button", "usage": "Semantic action button background" },
|
|
166
|
+
{ "name": "ms-action-button-bg-hover", "category": "action-button", "usage": "Semantic action button hover" },
|
|
167
|
+
{ "name": "ms-action-button-border-color", "category": "action-button", "usage": "Semantic action button border" },
|
|
168
|
+
{ "name": "ms-action-button-border-color-hover", "category": "action-button", "usage": "Semantic action button hover border" },
|
|
169
|
+
{ "name": "ms-action-button-color", "category": "action-button", "usage": "Semantic action button color" },
|
|
170
|
+
|
|
171
|
+
{ "name": "ms-options-padding", "category": "options", "usage": "Options container padding" },
|
|
172
|
+
{ "name": "ms-group-border-top", "category": "group", "usage": "Group border top" },
|
|
173
|
+
{ "name": "ms-group-margin-top", "category": "group", "usage": "Group margin top" },
|
|
174
|
+
{ "name": "ms-group-padding-top", "category": "group", "usage": "Group padding top" },
|
|
175
|
+
{ "name": "ms-group-border-color", "category": "group", "usage": "Group border color" },
|
|
176
|
+
{ "name": "ms-group-label-padding", "category": "group", "usage": "Group label padding" },
|
|
177
|
+
{ "name": "ms-group-label-font-size", "category": "group", "usage": "Group label font size" },
|
|
178
|
+
{ "name": "ms-group-label-font-weight", "category": "group", "usage": "Group label font weight" },
|
|
179
|
+
{ "name": "ms-group-label-color", "category": "group", "usage": "Group label color" },
|
|
180
|
+
{ "name": "ms-group-label-transform", "category": "group", "usage": "Group label text transform" },
|
|
181
|
+
{ "name": "ms-group-label-letter-spacing", "category": "group", "usage": "Group label letter spacing" },
|
|
182
|
+
|
|
183
|
+
{ "name": "ms-option-gap", "category": "option", "usage": "Option content gap" },
|
|
184
|
+
{ "name": "ms-option-padding", "category": "option", "usage": "Option padding" },
|
|
185
|
+
{ "name": "ms-option-padding-h", "category": "option", "usage": "Option horizontal padding" },
|
|
186
|
+
{ "name": "ms-option-color", "category": "option", "usage": "Option text color" },
|
|
187
|
+
{ "name": "ms-option-bg", "category": "option", "usage": "Option background" },
|
|
188
|
+
{ "name": "ms-option-bg-hover", "category": "option", "usage": "Option hover background" },
|
|
189
|
+
{ "name": "ms-option-bg-focused", "category": "option", "usage": "Option focused background" },
|
|
190
|
+
{ "name": "ms-option-outline-focused", "category": "option", "usage": "Option focus outline" },
|
|
191
|
+
{ "name": "ms-option-focus-outline-offset", "category": "option", "usage": "Option focus outline offset" },
|
|
192
|
+
{ "name": "ms-option-bg-matched", "category": "option", "usage": "Matched option background" },
|
|
193
|
+
{ "name": "ms-option-border-matched", "category": "option", "usage": "Matched option border" },
|
|
194
|
+
{ "name": "ms-option-bg-selected", "category": "option", "usage": "Selected option background" },
|
|
195
|
+
{ "name": "ms-option-text-color", "category": "option", "usage": "Option text color (semantic)" },
|
|
196
|
+
{ "name": "ms-option-color-hover", "category": "option", "usage": "Option hover color" },
|
|
197
|
+
{ "name": "ms-option-color-focused", "category": "option", "usage": "Option focused color" },
|
|
198
|
+
{ "name": "ms-option-outline-color-focused", "category": "option", "usage": "Option focus outline color" },
|
|
199
|
+
{ "name": "ms-option-color-matched", "category": "option", "usage": "Matched option color" },
|
|
200
|
+
{ "name": "ms-option-border-matched-color", "category": "option", "usage": "Matched option border color" },
|
|
201
|
+
{ "name": "ms-option-bg-focused-hover", "category": "option", "usage": "Focused option hover background" },
|
|
202
|
+
{ "name": "ms-option-bg-matched-hover", "category": "option", "usage": "Matched option hover background" },
|
|
203
|
+
{ "name": "ms-option-bg-selected-focused", "category": "option", "usage": "Selected focused background" },
|
|
204
|
+
{ "name": "ms-option-bg-selected-matched", "category": "option", "usage": "Selected matched background" },
|
|
205
|
+
{ "name": "ms-option-bg-disabled-selected", "category": "option", "usage": "Disabled selected background" },
|
|
206
|
+
{ "name": "ms-disabled-opacity", "category": "option", "usage": "Disabled option opacity" },
|
|
207
|
+
|
|
208
|
+
{ "name": "ms-option-content-gap", "category": "option-content", "usage": "Option content gap" },
|
|
209
|
+
{ "name": "ms-option-icon-size", "category": "option-content", "usage": "Option icon size" },
|
|
210
|
+
{ "name": "ms-option-icon-font-size", "category": "option-content", "usage": "Option icon font size" },
|
|
211
|
+
{ "name": "ms-option-title-font-size", "category": "option-content", "usage": "Option title font size" },
|
|
212
|
+
{ "name": "ms-option-title-color", "category": "option-content", "usage": "Option title color" },
|
|
213
|
+
{ "name": "ms-option-subtitle-margin-top", "category": "option-content", "usage": "Option subtitle margin" },
|
|
214
|
+
{ "name": "ms-option-subtitle-font-size", "category": "option-content", "usage": "Option subtitle font size" },
|
|
215
|
+
{ "name": "ms-option-subtitle-line-height", "category": "option-content", "usage": "Option subtitle line height" },
|
|
216
|
+
{ "name": "ms-option-subtitle-color", "category": "option-content", "usage": "Option subtitle color" },
|
|
217
|
+
{ "name": "ms-option-mark-bg", "category": "option-content", "usage": "Search match highlight background" },
|
|
218
|
+
{ "name": "ms-option-mark-color", "category": "option-content", "usage": "Search match highlight color" },
|
|
219
|
+
{ "name": "ms-option-mark-font-weight", "category": "option-content", "usage": "Search match highlight weight" },
|
|
220
|
+
|
|
221
|
+
{ "name": "ms-checkbox-margin-top", "category": "checkbox", "usage": "Checkbox margin top" },
|
|
222
|
+
{ "name": "ms-checkbox-margin-right", "category": "checkbox", "usage": "Checkbox margin right" },
|
|
223
|
+
{ "name": "ms-checkbox-margin-bottom", "category": "checkbox", "usage": "Checkbox margin bottom" },
|
|
224
|
+
{ "name": "ms-checkbox-margin-left", "category": "checkbox", "usage": "Checkbox margin left" },
|
|
225
|
+
{ "name": "ms-checkbox-size", "category": "checkbox", "usage": "Checkbox size" },
|
|
226
|
+
{ "name": "ms-checkbox-scale", "category": "checkbox", "usage": "Checkbox scale" },
|
|
227
|
+
{ "name": "ms-checkbox-align", "category": "checkbox", "usage": "Checkbox alignment" },
|
|
228
|
+
{ "name": "ms-checkbox-bg", "category": "checkbox", "usage": "Checkbox background" },
|
|
229
|
+
{ "name": "ms-checkbox-border", "category": "checkbox", "usage": "Checkbox border" },
|
|
230
|
+
{ "name": "ms-checkbox-border-radius", "category": "checkbox", "usage": "Checkbox border radius" },
|
|
231
|
+
{ "name": "ms-checkbox-checked-bg", "category": "checkbox", "usage": "Checked checkbox background" },
|
|
232
|
+
{ "name": "ms-checkbox-checked-border", "category": "checkbox", "usage": "Checked checkbox border" },
|
|
233
|
+
{ "name": "ms-checkbox-checkmark-color", "category": "checkbox", "usage": "Checkmark color" },
|
|
234
|
+
{ "name": "ms-checkbox-hover-border-color", "category": "checkbox", "usage": "Checkbox hover border" },
|
|
235
|
+
{ "name": "ms-checkbox-disabled-bg", "category": "checkbox", "usage": "Disabled checkbox background" },
|
|
236
|
+
{ "name": "ms-checkbox-disabled-border", "category": "checkbox", "usage": "Disabled checkbox border" },
|
|
237
|
+
{ "name": "ms-checkbox-checked-bg-hover", "category": "checkbox", "usage": "Checked checkbox hover background" },
|
|
238
|
+
{ "name": "ms-checkbox-checked-border-color-hover", "category": "checkbox", "usage": "Checked checkbox hover border" },
|
|
239
|
+
|
|
240
|
+
{ "name": "ms-empty-padding", "category": "empty", "usage": "Empty state padding" },
|
|
241
|
+
{ "name": "ms-empty-font-size", "category": "empty", "usage": "Empty state font size" },
|
|
242
|
+
{ "name": "ms-empty-color", "category": "empty", "usage": "Empty state text color" },
|
|
243
|
+
{ "name": "ms-loader-padding", "category": "loading", "usage": "Loader padding" },
|
|
244
|
+
{ "name": "ms-loader-gap", "category": "loading", "usage": "Loader gap" },
|
|
245
|
+
{ "name": "ms-loading-text-font-size", "category": "loading", "usage": "Loading text font size" },
|
|
246
|
+
{ "name": "ms-loading-text-color", "category": "loading", "usage": "Loading text color" },
|
|
247
|
+
{ "name": "ms-loading-color", "category": "loading", "usage": "Loading color (semantic)" },
|
|
248
|
+
|
|
249
|
+
{ "name": "ms-badges-gap", "category": "badges", "usage": "Badges container gap" },
|
|
250
|
+
{ "name": "ms-badges-margin-bottom", "category": "badges", "usage": "Badges margin bottom" },
|
|
251
|
+
{ "name": "ms-badges-margin-top", "category": "badges", "usage": "Badges margin top" },
|
|
252
|
+
{ "name": "ms-badges-margin-left", "category": "badges", "usage": "Badges margin left" },
|
|
253
|
+
{ "name": "ms-badges-margin-right", "category": "badges", "usage": "Badges margin right" },
|
|
254
|
+
{ "name": "ms-badge-gap", "category": "badge", "usage": "Badge internal gap" },
|
|
255
|
+
{ "name": "ms-badge-height", "category": "badge", "usage": "Badge height" },
|
|
256
|
+
{ "name": "ms-badge-font-size", "category": "badge", "usage": "Badge font size" },
|
|
257
|
+
{ "name": "ms-badge-font-weight", "category": "badge", "usage": "Badge font weight" },
|
|
258
|
+
{ "name": "ms-badge-border-radius", "category": "badge", "usage": "Badge border radius" },
|
|
259
|
+
{ "name": "ms-badge-bg", "category": "badge", "usage": "Badge background" },
|
|
260
|
+
{ "name": "ms-badge-bg-hover", "category": "badge", "usage": "Badge hover background" },
|
|
261
|
+
{ "name": "ms-badge-bg-active", "category": "badge", "usage": "Badge active background" },
|
|
262
|
+
{ "name": "ms-badge-text-padding", "category": "badge", "usage": "Badge text padding" },
|
|
263
|
+
{ "name": "ms-badge-text-bg", "category": "badge", "usage": "Badge text background" },
|
|
264
|
+
{ "name": "ms-badge-text-color", "category": "badge", "usage": "Badge text color" },
|
|
265
|
+
{ "name": "ms-badge-text-border", "category": "badge", "usage": "Badge text border" },
|
|
266
|
+
{ "name": "ms-badge-text-bg-hover", "category": "badge", "usage": "Badge text hover background" },
|
|
267
|
+
{ "name": "ms-badge-text-color-hover", "category": "badge", "usage": "Badge text hover color" },
|
|
268
|
+
{ "name": "ms-badge-remove-width", "category": "badge", "usage": "Badge remove button width" },
|
|
269
|
+
{ "name": "ms-badge-remove-bg", "category": "badge", "usage": "Badge remove button background" },
|
|
270
|
+
{ "name": "ms-badge-remove-color", "category": "badge", "usage": "Badge remove button color" },
|
|
271
|
+
{ "name": "ms-badge-remove-border", "category": "badge", "usage": "Badge remove button border" },
|
|
272
|
+
{ "name": "ms-badge-remove-font-size", "category": "badge", "usage": "Badge remove button font size" },
|
|
273
|
+
{ "name": "ms-badge-remove-bg-hover", "category": "badge", "usage": "Badge remove button hover background" },
|
|
274
|
+
{ "name": "ms-badge-remove-box-shadow-focus", "category": "badge", "usage": "Badge remove button focus shadow" },
|
|
275
|
+
{ "name": "ms-icon-remove", "category": "badge", "usage": "Remove icon character" },
|
|
276
|
+
{ "name": "ms-badge-counter-bg", "category": "badge", "usage": "Counter badge background" },
|
|
277
|
+
{ "name": "ms-badge-counter-border", "category": "badge", "usage": "Counter badge border" },
|
|
278
|
+
{ "name": "ms-badge-counter-border-radius", "category": "badge", "usage": "Counter badge border radius" },
|
|
279
|
+
{ "name": "ms-badge-counter-text-color", "category": "badge", "usage": "Counter badge text color" },
|
|
280
|
+
{ "name": "ms-badge-counter-text-bg", "category": "badge", "usage": "Counter badge text background" },
|
|
281
|
+
{ "name": "ms-badge-counter-remove-bg", "category": "badge", "usage": "Counter badge remove background" },
|
|
282
|
+
{ "name": "ms-badge-counter-remove-color", "category": "badge", "usage": "Counter badge remove color" },
|
|
283
|
+
{ "name": "ms-badge-counter-remove-bg-hover", "category": "badge", "usage": "Counter badge remove hover background" },
|
|
284
|
+
{ "name": "ms-more-badge-bg", "category": "badge", "usage": "More badge background" },
|
|
285
|
+
{ "name": "ms-more-badge-hover-bg", "category": "badge", "usage": "More badge hover background" },
|
|
286
|
+
{ "name": "ms-more-badge-active-bg", "category": "badge", "usage": "More badge active background" },
|
|
287
|
+
|
|
288
|
+
{ "name": "ms-count-display-margin-bottom", "category": "count", "usage": "Count display margin bottom" },
|
|
289
|
+
{ "name": "ms-count-display-margin-top", "category": "count", "usage": "Count display margin top" },
|
|
290
|
+
{ "name": "ms-count-display-margin-left", "category": "count", "usage": "Count display margin left" },
|
|
291
|
+
{ "name": "ms-count-display-margin-right", "category": "count", "usage": "Count display margin right" },
|
|
292
|
+
{ "name": "ms-counter-wrapper-bg", "category": "count", "usage": "Counter wrapper background" },
|
|
293
|
+
{ "name": "ms-counter-wrapper-border", "category": "count", "usage": "Counter wrapper border" },
|
|
294
|
+
{ "name": "ms-counter-wrapper-border-radius", "category": "count", "usage": "Counter wrapper border radius" },
|
|
295
|
+
{ "name": "ms-counter-wrapper-padding", "category": "count", "usage": "Counter wrapper padding" },
|
|
296
|
+
{ "name": "ms-counter-wrapper-gap", "category": "count", "usage": "Counter wrapper gap" },
|
|
297
|
+
{ "name": "ms-counter-wrapper-bg-hover", "category": "count", "usage": "Counter wrapper hover background" },
|
|
298
|
+
{ "name": "ms-counter-wrapper-border-color-hover", "category": "count", "usage": "Counter wrapper hover border" },
|
|
299
|
+
{ "name": "ms-count-text-bg", "category": "count", "usage": "Count text background" },
|
|
300
|
+
{ "name": "ms-count-text-border", "category": "count", "usage": "Count text border" },
|
|
301
|
+
{ "name": "ms-count-text-font-size", "category": "count", "usage": "Count text font size" },
|
|
302
|
+
{ "name": "ms-count-text-color", "category": "count", "usage": "Count text color" },
|
|
303
|
+
{ "name": "ms-count-clear-size", "category": "count", "usage": "Count clear button size" },
|
|
304
|
+
{ "name": "ms-count-clear-bg", "category": "count", "usage": "Count clear button background" },
|
|
305
|
+
{ "name": "ms-count-clear-color", "category": "count", "usage": "Count clear button color" },
|
|
306
|
+
{ "name": "ms-count-clear-font-size", "category": "count", "usage": "Count clear button font size" },
|
|
307
|
+
{ "name": "ms-count-clear-border-radius", "category": "count", "usage": "Count clear button border radius" },
|
|
308
|
+
{ "name": "ms-count-clear-bg-hover", "category": "count", "usage": "Count clear button hover background" },
|
|
309
|
+
{ "name": "ms-count-clear-color-hover", "category": "count", "usage": "Count clear button hover color" },
|
|
310
|
+
{ "name": "ms-icon-clear", "category": "count", "usage": "Clear icon character" },
|
|
311
|
+
|
|
312
|
+
{ "name": "ms-tooltip-bg", "category": "tooltip", "usage": "Tooltip background" },
|
|
313
|
+
{ "name": "ms-tooltip-text-color", "category": "tooltip", "usage": "Tooltip text color" },
|
|
314
|
+
{ "name": "ms-tooltip-color", "category": "tooltip", "usage": "Tooltip color" },
|
|
315
|
+
{ "name": "ms-tooltip-padding", "category": "tooltip", "usage": "Tooltip padding" },
|
|
316
|
+
{ "name": "ms-tooltip-border-radius", "category": "tooltip", "usage": "Tooltip border radius" },
|
|
317
|
+
{ "name": "ms-tooltip-font-size", "category": "tooltip", "usage": "Tooltip font size" },
|
|
318
|
+
{ "name": "ms-tooltip-max-width", "category": "tooltip", "usage": "Tooltip max width" },
|
|
319
|
+
{ "name": "ms-tooltip-shadow", "category": "tooltip", "usage": "Tooltip shadow" },
|
|
320
|
+
{ "name": "ms-tooltip-z-index", "category": "tooltip", "usage": "Tooltip z-index" },
|
|
321
|
+
|
|
322
|
+
{ "name": "ms-z-index-popover", "category": "popover", "usage": "Popover z-index" },
|
|
323
|
+
{ "name": "ms-selected-popover-width", "category": "popover", "usage": "Selected popover width" },
|
|
324
|
+
{ "name": "ms-selected-popover-max-height", "category": "popover", "usage": "Selected popover max height" },
|
|
325
|
+
{ "name": "ms-selected-popover-border", "category": "popover", "usage": "Selected popover border" },
|
|
326
|
+
{ "name": "ms-selected-popover-border-radius", "category": "popover", "usage": "Selected popover border radius" },
|
|
327
|
+
{ "name": "ms-selected-popover-box-shadow", "category": "popover", "usage": "Selected popover shadow" },
|
|
328
|
+
{ "name": "ms-selected-popover-bg", "category": "popover", "usage": "Selected popover background" },
|
|
329
|
+
{ "name": "ms-selected-popover-border-color", "category": "popover", "usage": "Selected popover border color" },
|
|
330
|
+
{ "name": "ms-selected-popover-header-padding", "category": "popover", "usage": "Popover header padding" },
|
|
331
|
+
{ "name": "ms-selected-popover-header-bg", "category": "popover", "usage": "Popover header background" },
|
|
332
|
+
{ "name": "ms-selected-popover-header-border-bottom", "category": "popover", "usage": "Popover header border" },
|
|
333
|
+
{ "name": "ms-selected-popover-header-font-size", "category": "popover", "usage": "Popover header font size" },
|
|
334
|
+
{ "name": "ms-selected-popover-header-font-weight", "category": "popover", "usage": "Popover header font weight" },
|
|
335
|
+
{ "name": "ms-selected-popover-header-color", "category": "popover", "usage": "Popover header color" },
|
|
336
|
+
{ "name": "ms-selected-popover-header-border-color", "category": "popover", "usage": "Popover header border color" },
|
|
337
|
+
{ "name": "ms-popover-close-size", "category": "popover", "usage": "Popover close button size" },
|
|
338
|
+
{ "name": "ms-selected-popover-close-bg", "category": "popover", "usage": "Popover close button background" },
|
|
339
|
+
{ "name": "ms-selected-popover-close-color", "category": "popover", "usage": "Popover close button color" },
|
|
340
|
+
{ "name": "ms-selected-popover-close-font-size", "category": "popover", "usage": "Popover close button font size" },
|
|
341
|
+
{ "name": "ms-selected-popover-close-border-radius", "category": "popover", "usage": "Popover close button border radius" },
|
|
342
|
+
{ "name": "ms-selected-popover-close-bg-hover", "category": "popover", "usage": "Popover close button hover background" },
|
|
343
|
+
{ "name": "ms-selected-popover-close-color-hover", "category": "popover", "usage": "Popover close button hover color" },
|
|
344
|
+
{ "name": "ms-selected-popover-body-gap", "category": "popover", "usage": "Popover body gap" },
|
|
345
|
+
{ "name": "ms-selected-popover-body-padding", "category": "popover", "usage": "Popover body padding" },
|
|
346
|
+
{ "name": "ms-selected-popover-body-max-height", "category": "popover", "usage": "Popover body max height" },
|
|
347
|
+
|
|
348
|
+
{ "name": "ms-font-size-2xs", "category": "typography", "usage": "Extra extra small font size" },
|
|
349
|
+
{ "name": "ms-font-size-xs", "category": "typography", "usage": "Extra small font size" },
|
|
350
|
+
{ "name": "ms-font-size-sm", "category": "typography", "usage": "Small font size" },
|
|
351
|
+
{ "name": "ms-font-size-base", "category": "typography", "usage": "Base font size" },
|
|
352
|
+
{ "name": "ms-font-size-lg", "category": "typography", "usage": "Large font size" },
|
|
353
|
+
{ "name": "ms-font-weight-normal", "category": "typography", "usage": "Normal font weight" },
|
|
354
|
+
{ "name": "ms-font-weight-medium", "category": "typography", "usage": "Medium font weight" },
|
|
355
|
+
{ "name": "ms-font-weight-semibold", "category": "typography", "usage": "Semibold font weight" },
|
|
356
|
+
{ "name": "ms-line-height-none", "category": "typography", "usage": "No line height (1)" },
|
|
357
|
+
{ "name": "ms-line-height-tight", "category": "typography", "usage": "Tight line height" },
|
|
358
|
+
{ "name": "ms-line-height-normal", "category": "typography", "usage": "Normal line height" },
|
|
359
|
+
{ "name": "ms-line-height-relaxed", "category": "typography", "usage": "Relaxed line height" },
|
|
360
|
+
|
|
361
|
+
{ "name": "ms-border-radius-sm", "category": "radius", "usage": "Small border radius" },
|
|
362
|
+
{ "name": "ms-border-radius-md", "category": "radius", "usage": "Medium border radius" },
|
|
363
|
+
{ "name": "ms-border-radius-lg", "category": "radius", "usage": "Large border radius" },
|
|
364
|
+
{ "name": "ms-border-radius", "category": "radius", "usage": "Default border radius" },
|
|
365
|
+
|
|
366
|
+
{ "name": "ms-spacing-xs", "category": "spacing", "usage": "Extra small spacing" },
|
|
367
|
+
{ "name": "ms-spacing-sm", "category": "spacing", "usage": "Small spacing" },
|
|
368
|
+
{ "name": "ms-spacing-md", "category": "spacing", "usage": "Medium spacing" },
|
|
369
|
+
{ "name": "ms-spacing-lg", "category": "spacing", "usage": "Large spacing" },
|
|
370
|
+
|
|
371
|
+
{ "name": "ms-transition-fast", "category": "transition", "usage": "Fast transition duration" },
|
|
372
|
+
{ "name": "ms-transition-normal", "category": "transition", "usage": "Normal transition duration" },
|
|
373
|
+
{ "name": "ms-easing-snappy", "category": "transition", "usage": "Snappy easing function" },
|
|
374
|
+
|
|
375
|
+
{ "name": "ms-placeholder-opacity", "category": "opacity", "usage": "Placeholder opacity" },
|
|
376
|
+
{ "name": "ms-disabled-input-opacity", "category": "opacity", "usage": "Disabled input opacity" },
|
|
377
|
+
|
|
378
|
+
{ "name": "ms-scrollbar-width", "category": "scrollbar", "usage": "Scrollbar width" },
|
|
379
|
+
{ "name": "ms-scrollbar-track-bg", "category": "scrollbar", "usage": "Scrollbar track background" },
|
|
380
|
+
{ "name": "ms-scrollbar-thumb-bg", "category": "scrollbar", "usage": "Scrollbar thumb background" },
|
|
381
|
+
{ "name": "ms-scrollbar-thumb-bg-hover", "category": "scrollbar", "usage": "Scrollbar thumb hover background" },
|
|
382
|
+
{ "name": "ms-scrollbar-thumb-border-radius", "category": "scrollbar", "usage": "Scrollbar thumb border radius" },
|
|
383
|
+
|
|
384
|
+
{ "name": "ms-transform-center-y", "category": "transform", "usage": "Center Y transform" },
|
|
385
|
+
{ "name": "ms-transform-rotate-180", "category": "transform", "usage": "180 degree rotation" },
|
|
386
|
+
{ "name": "ms-transform-scale-hover", "category": "transform", "usage": "Hover scale transform" },
|
|
387
|
+
{ "name": "ms-transform-scale-active", "category": "transform", "usage": "Active scale transform" },
|
|
388
|
+
{ "name": "ms-order-first", "category": "layout", "usage": "Order first (-1)" }
|
|
389
|
+
]
|
|
390
|
+
}
|
package/dist/multiselect.js
CHANGED
|
@@ -2611,7 +2611,7 @@ class nt extends bs {
|
|
|
2611
2611
|
var h, g;
|
|
2612
2612
|
const t = this.shadow.querySelector(".ms-debug-stats");
|
|
2613
2613
|
if (!t || !this.picker) return;
|
|
2614
|
-
const s = "1.8.
|
|
2614
|
+
const s = "1.8.2", i = rt().length, n = this.picker.getSelected().length, a = ((h = this._options) == null ? void 0 : h.length) || 0, l = this.picker, c = l.isOpen || !1, d = l.searchTerm || "", p = l.isLoading || !1, u = ((g = l.filteredOptions) == null ? void 0 : g.length) || 0;
|
|
2615
2615
|
t.innerHTML = `
|
|
2616
2616
|
<span>Version: ${s}</span>
|
|
2617
2617
|
<span>Total Instances: ${i}</span>
|
|
@@ -3120,10 +3120,10 @@ class nt extends bs {
|
|
|
3120
3120
|
}
|
|
3121
3121
|
typeof window < "u" && typeof customElements < "u" && (customElements.get("web-multiselect") || customElements.define("web-multiselect", nt));
|
|
3122
3122
|
typeof window < "u" && (window.components = window.components || {}, window.components["web-multiselect"] = {
|
|
3123
|
-
version: () => "1.8.
|
|
3123
|
+
version: () => "1.8.2",
|
|
3124
3124
|
config: {
|
|
3125
3125
|
name: "@keenmate/web-multiselect",
|
|
3126
|
-
version: "1.8.
|
|
3126
|
+
version: "1.8.2",
|
|
3127
3127
|
author: "Keenmate",
|
|
3128
3128
|
license: "MIT",
|
|
3129
3129
|
repository: "git+https://github.com/keenmate/web-multiselect.git",
|
package/dist/multiselect.umd.js
CHANGED
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
<button type="button" class="ms__badge-remove" data-value="${t}" aria-label="Remove ${this.getItemBadgeDisplayValue(e)}"></button>
|
|
44
44
|
</div>
|
|
45
45
|
`}handleSelectedPopoverClick(e){if(e.stopPropagation(),e.target.closest(".ms__selected-popover-close")){e.preventDefault(),this.hideSelectedPopover();return}const s=e.target.closest(".ms__badge-remove");if(s){e.preventDefault();const i=s.dataset.value,r=this.selectedOptions.get(i);r&&(this.deselectOption(r),this.renderSelectedPopover(),this.selectedValues.size===0&&this.hideSelectedPopover())}}positionSelectedPopover(){this.selectedPopoverCleanup=q(this.input,this.selectedPopover,()=>{const e=this.selectedPopoverPlacement||"bottom-start";se(this.input,this.selectedPopover,{placement:e,middleware:[ee(4),...this.selectedPopoverPlacement?[]:[fe()],te({padding:8})]}).then(({x:t,y:s,placement:i})=>{this.selectedPopoverPlacement||(this.selectedPopoverPlacement=i,v.debug(`[${this.instanceId}] Locked popover placement:`,i));const r={left:`${t}px`,top:`${s}px`,width:`${this.input.offsetWidth}px`};this.options.dropdownMinWidth&&(r.minWidth=this.options.dropdownMinWidth),Object.assign(this.selectedPopover.style,r)})})}updateHiddenInput(){if(!this.options.formFieldId)return;this.hiddenInputs.forEach(i=>i.remove()),this.hiddenInputs=[];const e=this.options.valueFormat||"json",t=Array.from(this.selectedOptions.values()).map(i=>this.getItemValue(i)),s=this.options.hostElement||this.element;if(e==="array")t.forEach(i=>{const r=document.createElement("input");r.type="hidden",r.name=`${this.options.formFieldId}[]`,r.value=String(i),s.appendChild(r),this.hiddenInputs.push(r)});else{const i=document.createElement("input");i.type="hidden",i.name=this.options.formFieldId,i.id=this.options.formFieldId,i.value=this.getFormValue(),s.appendChild(i),this.hiddenInputs.push(i)}}getFormValue(){const e=Array.from(this.selectedOptions.values()).map(s=>this.getItemValue(s));return this.options.getValueFormatCallback?this.options.getValueFormatCallback(e):(this.options.valueFormat||"json")==="csv"?e.join(","):JSON.stringify(e)}getSelected(){return Array.from(this.selectedOptions.values())}setSelected(e){this.selectedValues=new Set(e.map(t=>String(t))),this.selectedOptions.clear(),e.forEach(t=>{const s=String(t),i=this.allOptions.find(r=>String(this.getItemValue(r))===s);i&&this.selectedOptions.set(s,i)}),this.renderDropdown(),this.renderBadges(),this.updateHiddenInput()}get selectedItem(){return this.selectedOptions.size===0?null:Array.from(this.selectedOptions.values())[0]}get selectedValue(){if(!this.options.valueMember&&!this.options.getValueCallback)return null;if(this.selectedOptions.size===0)return this.options.isMultipleEnabled?[]:null;const e=Array.from(this.selectedOptions.values()).map(t=>this.getItemValue(t));return this.options.isMultipleEnabled?e:e[0]??null}getValue(){if(this.selectedOptions.size===0)return this.options.isMultipleEnabled?[]:null;const e=Array.from(this.selectedOptions.values()).map(t=>this.getItemValue(t));return this.options.isMultipleEnabled?e:e[0]??null}attachBadgeTooltips(e){if(!this.options.isBadgeTooltipsEnabled){v.debug(`[${this.instanceId}] Tooltips disabled - isBadgeTooltipsEnabled is false`);return}const s=(e||this.badgesContainer).querySelectorAll(".ms__badge:not(.ms__badge--more)");if(v.debug(`[${this.instanceId}] Found ${s.length} badges to attach tooltips to`),s.forEach(i=>{const r=i,n=r.querySelector(".ms__badge-remove");if(!n)return;const a=n.dataset.value,l=this.selectedOptions.get(a);if(!l)return;const c=r.querySelector(".ms__badge-text");c&&this.createTooltipForElement(c,l,a);const d=this.getItemBadgeDisplayValue(l);this.createRemoveButtonTooltip(n,d,a,l)}),!e){const i=this.badgesContainer.querySelector(".ms__badge--more");if(i){const r=i.querySelector(".ms__badge-remove");if(r&&r.dataset.action==="remove-hidden"){const n=this.options.badgesMaxVisible||3,l=Array.from(this.selectedOptions.values()).length-n;this.createRemoveButtonTooltip(r,`${l} hidden items`,"more-badge-remove")}}}}createTooltipForElement(e,t,s){const i=document.createElement("div");i.className="ms__badge-tooltip";let r;if(this.options.getBadgeTooltipCallback)r=this.options.getBadgeTooltipCallback(t),v.debug(`[${this.instanceId}] Using custom callback for tooltip content`);else{const c=this.getItemBadgeDisplayValue(t),d=this.getItemSubtitle(t);r=d?`${c}
|
|
46
|
-
${d}`:c,v.debug(`[${this.instanceId}] Using default content: "${r}"`)}typeof r=="string"?i.textContent=r:i.appendChild(r),(this.options.container||document.body).appendChild(i),v.debug(`[${this.instanceId}] Tooltip element created and appended for "${s}"`),this.badgeTooltips.set(s,i);const a=()=>{const c=this.badgeTooltipHideTimeouts.get(s);c&&(clearTimeout(c),this.badgeTooltipHideTimeouts.delete(s)),v.debug(`[${this.instanceId}] Mouse entered badge "${s}", will show tooltip in ${this.options.badgeTooltipDelay??100}ms`);const d=window.setTimeout(()=>{v.debug(`[${this.instanceId}] Showing tooltip for "${s}"`),i.classList.add("ms__badge-tooltip--visible"),this.positionBadgeTooltip(e,i,s),this.badgeTooltipShowTimeouts.delete(s)},this.options.badgeTooltipDelay??100);this.badgeTooltipShowTimeouts.set(s,d)},l=()=>{const c=this.badgeTooltipShowTimeouts.get(s);c&&(clearTimeout(c),this.badgeTooltipShowTimeouts.delete(s));const d=window.setTimeout(()=>{i.classList.remove("ms__badge-tooltip--visible"),this.cleanupBadgeTooltip(s),this.badgeTooltipHideTimeouts.delete(s)},100);this.badgeTooltipHideTimeouts.set(s,d)};e.addEventListener("mouseenter",a),e.addEventListener("mouseleave",l)}createRemoveButtonTooltip(e,t,s,i){const r=document.createElement("div");r.className="ms__badge-tooltip";let n;i&&this.options.getRemoveButtonTooltipCallback?n=this.options.getRemoveButtonTooltipCallback(i):this.options.removeButtonTooltipText?n=this.options.removeButtonTooltipText.replace("{0}",t):n=`Remove ${t}`,r.textContent=n,(this.options.container||document.body).appendChild(r);const l=`${s}-remove`;this.badgeTooltips.set(l,r);const c=()=>{const p=this.badgeTooltipHideTimeouts.get(l);p&&(clearTimeout(p),this.badgeTooltipHideTimeouts.delete(l));const u=this.badgeTooltips.get(s);u&&u.classList.remove("ms__badge-tooltip--visible");const h=window.setTimeout(()=>{r.classList.add("ms__badge-tooltip--visible"),this.positionBadgeTooltip(e,r,l),this.badgeTooltipShowTimeouts.delete(l)},this.options.badgeTooltipDelay??100);this.badgeTooltipShowTimeouts.set(l,h)},d=()=>{const p=this.badgeTooltipShowTimeouts.get(l);p&&(clearTimeout(p),this.badgeTooltipShowTimeouts.delete(l));const u=window.setTimeout(()=>{r.classList.remove("ms__badge-tooltip--visible"),this.cleanupBadgeTooltip(l),this.badgeTooltipHideTimeouts.delete(l)},100);this.badgeTooltipHideTimeouts.set(l,u)};e.addEventListener("mouseenter",c),e.addEventListener("mouseleave",d)}positionBadgeTooltip(e,t,s){const i=q(e,t,()=>{se(e,t,{placement:this.options.badgeTooltipPlacement||"top",strategy:"fixed",middleware:[ee(this.options.badgeTooltipOffset||8),fe(),te({padding:8})]}).then(({x:r,y:n})=>{Object.assign(t.style,{left:`${r}px`,top:`${n}px`}),v.debug(`[${this.instanceId}] Positioned tooltip "${s}" at x:${r}, y:${n}`,{placement:this.options.badgeTooltipPlacement||"top",tooltipClasses:t.className,tooltipDisplay:window.getComputedStyle(t).display,tooltipOpacity:window.getComputedStyle(t).opacity,tooltipVisibility:window.getComputedStyle(t).visibility,tooltipZIndex:window.getComputedStyle(t).zIndex,tooltipPosition:window.getComputedStyle(t).position})})});this.badgeTooltipCleanups.set(s,i)}cleanupBadgeTooltip(e){const t=this.badgeTooltipShowTimeouts.get(e);t&&(clearTimeout(t),this.badgeTooltipShowTimeouts.delete(e));const s=this.badgeTooltipHideTimeouts.get(e);s&&(clearTimeout(s),this.badgeTooltipHideTimeouts.delete(e));const i=this.badgeTooltipCleanups.get(e);i&&(i(),this.badgeTooltipCleanups.delete(e))}destroyAllBadgeTooltips(){this.badgeTooltipShowTimeouts.forEach(e=>clearTimeout(e)),this.badgeTooltipShowTimeouts.clear(),this.badgeTooltipHideTimeouts.forEach(e=>clearTimeout(e)),this.badgeTooltipHideTimeouts.clear(),this.badgeTooltipCleanups.forEach(e=>e()),this.badgeTooltipCleanups.clear(),this.badgeTooltips.forEach(e=>e.remove()),this.badgeTooltips.clear()}attachActionButtonTooltips(){const e=this.dropdown.querySelectorAll(".ms__action-btn");v.debug(`[${this.instanceId}] Found ${e.length} action buttons to attach tooltips to`),e.forEach(t=>{var l;const s=t,i=s.dataset.action;if(!i)return;const r=(l=this.options.actionButtons)==null?void 0:l.find(c=>c.action==="custom"?s.dataset.customAction===s.dataset.action:c.action===i);if(!r)return;let n;if(r.getTooltipCallback?(n=r.getTooltipCallback(this),v.debug(`[${this.instanceId}] Using getTooltipCallback for action button "${i}": "${n}"`)):(n=r.tooltip,v.debug(`[${this.instanceId}] Using static tooltip for action button "${i}": "${n}"`)),!n){v.debug(`[${this.instanceId}] No tooltip for action button "${i}"`);return}const a=`action-${i}-${Date.now()}`;this.createActionButtonTooltip(s,n,a)})}createActionButtonTooltip(e,t,s){const i=document.createElement("div");i.className="ms__badge-tooltip",i.textContent=t,(this.options.container||document.body).appendChild(i),v.debug(`[${this.instanceId}] Tooltip element created for action button "${s}"`),this.actionButtonTooltips.set(s,i);let n,a;const l=()=>{clearTimeout(a),v.debug(`[${this.instanceId}] Mouse entered action button "${s}", will show tooltip in ${this.options.badgeTooltipDelay??100}ms`),n=window.setTimeout(()=>{v.debug(`[${this.instanceId}] Showing tooltip for action button "${s}"`),i.classList.add("ms__badge-tooltip--visible"),this.positionActionButtonTooltip(e,i,s)},this.options.badgeTooltipDelay??100)},c=()=>{clearTimeout(n),a=window.setTimeout(()=>{i.classList.remove("ms__badge-tooltip--visible"),this.cleanupActionButtonTooltip(s)},100)};e.addEventListener("mouseenter",l),e.addEventListener("mouseleave",c)}positionActionButtonTooltip(e,t,s){const i=q(e,t,()=>{se(e,t,{placement:this.options.badgeTooltipPlacement||"top",strategy:"fixed",middleware:[ee(this.options.badgeTooltipOffset||8),fe(),te({padding:8})]}).then(({x:r,y:n})=>{Object.assign(t.style,{left:`${r}px`,top:`${n}px`}),v.debug(`[${this.instanceId}] Positioned action button tooltip "${s}" at x:${r}, y:${n}`)})});this.actionButtonTooltipCleanups.set(s,i)}cleanupActionButtonTooltip(e){const t=this.actionButtonTooltipCleanups.get(e);t&&(t(),this.actionButtonTooltipCleanups.delete(e))}destroyAllActionButtonTooltips(){this.actionButtonTooltipCleanups.forEach(e=>e()),this.actionButtonTooltipCleanups.clear(),this.actionButtonTooltips.forEach(e=>e.remove()),this.actionButtonTooltips.clear()}destroy(){this.destroyAllBadgeTooltips(),this.destroyAllActionButtonTooltips(),this.dropdownCleanup&&this.dropdownCleanup(),this.hintCleanup&&this.hintCleanup(),this.selectedPopoverCleanup&&this.selectedPopoverCleanup(),this.virtualScroll&&(this.virtualScroll.destroy(),this.virtualScroll=null),this.dropdown&&this.dropdown.remove(),this.hint&&this.hint.remove(),this.selectedPopover&&this.selectedPopover.remove(),this.element.innerHTML="",this.element.classList.remove("ms","ms--open","ms--no-checkboxes"),re.info(`[${this.instanceId}] Component destroyed`)}}const ps=':host{--ms-rem: 10px;font-family:var(--ms-font-family, var(--base-font-family, inherit));display:block;--ms-accent-color: var(--base-accent-color, #3b82f6);--ms-accent-color-hover: var(--base-accent-color-hover, #2563eb);--ms-accent-color-active: var(--base-accent-color-active, #1d4ed8);--ms-accent-color-light: var(--base-accent-color-light, #eff6ff);--ms-accent-color-light-hover: var(--base-accent-color-light-hover, #e0f2fe);--ms-text-color-1: var(--base-text-color-1, #111827);--ms-text-color-2: var(--base-text-color-2, #353b47);--ms-text-color-3: var(--base-text-color-3, #6b7280);--ms-text-color-4: var(--base-text-color-4, #a0a3a9);--ms-text-color-on-accent: var(--base-text-color-on-accent, #ffffff);--ms-text-primary: var(--ms-text-color-1);--ms-text-secondary: var(--ms-text-color-3);--ms-primary-bg: var(--base-main-bg, #f3f4f6);--ms-primary-bg-hover: var(--base-hover-bg, #e5e7eb);--ms-border-color: var(--base-border-color, #e5e7eb);--ms-border: var(--base-border, 1px solid var(--ms-border-color));--ms-input-bg: var(--base-input-bg, #ffffff);--ms-input-color: var(--base-input-color, var(--ms-text-color-1));--ms-input-border: var(--base-input-border, 1px solid var(--ms-border-color));--ms-input-border-hover: var(--base-input-border-hover, 1px solid var(--ms-accent-color));--ms-input-border-focus: var(--base-input-border-focus, 1px solid var(--ms-accent-color));--ms-input-placeholder-color: var(--base-input-placeholder-color, var(--ms-text-color-4));--ms-input-bg-disabled: var(--base-input-bg-disabled, rgba(107, 114, 128, .05));--ms-toggle-icon-color: var(--ms-text-color-3);--ms-toggle-icon-color-open: var(--ms-text-color-3);--ms-counter-badge-bg: var(--ms-accent-color);--ms-counter-badge-bg-hover: var(--ms-accent-color-hover);--ms-counter-badge-color: var(--ms-text-color-on-accent);--ms-hint-bg: var(--base-main-bg, #ffffff);--ms-hint-color: var(--ms-text-color-4);--ms-hint-border-color: var(--ms-border-color);--ms-dropdown-bg: var(--base-dropdown-bg, #ffffff);--ms-dropdown-text-color: var(--ms-text-color-1);--ms-dropdown-border-color: var(--ms-border-color);--ms-dropdown-box-shadow-semantic: var(--base-dropdown-box-shadow, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1));--ms-actions-bg: var(--base-main-bg, #ffffff);--ms-actions-border-color: var(--ms-border-color);--ms-action-button-bg: transparent;--ms-action-button-bg-hover: var(--ms-primary-bg);--ms-action-button-border-color: var(--ms-border-color);--ms-action-button-border-color-hover: var(--ms-accent-color);--ms-action-button-color: var(--ms-text-color-1);--ms-group-border-color: var(--ms-border-color);--ms-option-text-color: var(--ms-text-color-1);--ms-option-color-hover: inherit;--ms-option-color-focused: inherit;--ms-option-outline-color-focused: var(--ms-accent-color);--ms-option-color-matched: inherit;--ms-option-border-matched-color: color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-title-color: var(--ms-text-color-1);--ms-option-subtitle-color: var(--ms-text-color-3);--ms-loading-color: var(--ms-text-color-3);--ms-badge-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-color-hover: var(--ms-badge-text-color);--ms-badge-counter-border-color: var(--ms-border-color);--ms-badge-counter-text-bg: var(--ms-primary-bg);--ms-badge-counter-remove-bg-hover: var(--ms-text-color-1);--ms-counter-wrapper-border-color: var(--ms-border-color);--ms-count-clear-bg-hover: var(--ms-accent-color);--ms-tooltip-bg: var(--base-tooltip-bg, #333333);--ms-tooltip-text-color: var(--base-tooltip-text-color, #ffffff);--ms-selected-popover-bg: var(--base-dropdown-bg, #ffffff);--ms-selected-popover-border-color: var(--ms-border-color);--ms-selected-popover-header-border-color: var(--ms-border-color);--ms-selected-popover-close-bg-hover: var(--ms-accent-color);--ms-input-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-input-padding-right: calc(4 * var(--ms-rem));--ms-input-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-border-width: 1px;--ms-input-border-radius: var(--ms-border-radius-md);--ms-input-text: var(--ms-text-color-1);--ms-input-bg-disabled: rgba(107, 114, 128, .05);--ms-input-size-xs-font: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-input-size-xs-padding-v: calc(.4 * var(--ms-rem));--ms-input-size-xs-padding-h: calc(.8 * var(--ms-rem));--ms-input-size-xs-height: calc(var(--base-input-size-xs-height, 3.1) * var(--ms-rem));--ms-input-size-sm-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-sm-padding-v: calc(.5 * var(--ms-rem));--ms-input-size-sm-padding-h: calc(1 * var(--ms-rem));--ms-input-size-sm-height: calc(var(--base-input-size-sm-height, 3.3) * var(--ms-rem));--ms-input-size-md-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-md-padding-v: calc(.8 * var(--ms-rem));--ms-input-size-md-padding-h: calc(1.2 * var(--ms-rem));--ms-input-size-md-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-size-lg-font: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-input-size-lg-padding-v: calc(1 * var(--ms-rem));--ms-input-size-lg-padding-h: calc(1.4 * var(--ms-rem));--ms-input-size-lg-height: calc(var(--base-input-size-lg-height, 3.8) * var(--ms-rem));--ms-input-size-xl-font: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-input-size-xl-padding-v: calc(1.2 * var(--ms-rem));--ms-input-size-xl-padding-h: calc(1.6 * var(--ms-rem));--ms-input-size-xl-height: calc(var(--base-input-size-xl-height, 4.1) * var(--ms-rem));--ms-toggle-right: calc(1.2 * var(--ms-rem));--ms-toggle-color: var(--ms-text-color-3);--ms-transform-center-y: translateY(-50%);--ms-transform-rotate-180: 180deg;--ms-counter-offset: calc(3.2 * var(--ms-rem));--ms-counter-padding: calc(.2 * var(--ms-rem)) calc(.4 * var(--ms-rem));--ms-counter-bg: var(--ms-accent-color);--ms-counter-color: var(--ms-text-color-on-accent);--ms-counter-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-counter-font-weight: var(--base-font-weight-semibold, 600);--ms-counter-border-radius: var(--ms-border-radius-sm);--ms-counter-bg-hover: var(--ms-accent-color-hover);--ms-transform-scale-hover: 1.1;--ms-hint-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-hint-border: var(--ms-border);--ms-hint-border-radius: var(--ms-border-radius-lg);--ms-hint-box-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ms-hint-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-dropdown-border: var(--base-dropdown-border, 1px solid var(--ms-border-color));--ms-dropdown-border-radius: var(--ms-border-radius-lg);--ms-dropdown-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-options-max-height: calc(32 * var(--ms-rem));--ms-option-color: var(--ms-text-color-1);--ms-z-index-dropdown: 9999;--ms-z-index-sticky: 1;--ms-actions-gap: calc(.4 * var(--ms-rem));--ms-actions-padding: calc(.8 * var(--ms-rem));--ms-actions-border-bottom: var(--ms-border);--ms-action-btn-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-action-btn-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-action-btn-border: var(--ms-border);--ms-action-btn-border-radius: var(--ms-border-radius-sm);--ms-action-btn-bg: transparent;--ms-action-btn-color: inherit;--ms-action-btn-bg-hover: var(--ms-primary-bg);--ms-action-btn-border-color-hover: var(--ms-accent-color);--ms-transform-scale-active: .98;--ms-options-padding: 0;--ms-group-border-top: var(--ms-border);--ms-group-margin-top: calc(.4 * var(--ms-rem));--ms-group-padding-top: calc(.4 * var(--ms-rem));--ms-group-label-padding: calc(.4 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-group-label-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-group-label-font-weight: var(--base-font-weight-semibold, 600);--ms-group-label-color: var(--ms-text-color-3);--ms-group-label-transform: uppercase;--ms-group-label-letter-spacing: .05em;--ms-option-gap: calc(.8 * var(--ms-rem));--ms-option-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-option-padding-h: calc(1.2 * var(--ms-rem));--ms-option-bg: transparent;--ms-option-bg-hover: var(--ms-primary-bg);--ms-option-bg-focused: var(--ms-primary-bg);--ms-option-outline-focused: 2px solid var(--ms-accent-color);--ms-option-focus-outline-offset: -2px;--ms-option-bg-matched: color-mix(in srgb, var(--ms-accent-color) 8%, transparent);--ms-option-border-matched: 3px solid color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-bg-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-option-bg-focused-hover: var(--ms-primary-bg);--ms-option-bg-matched-hover: color-mix(in srgb, var(--ms-accent-color) 12%, transparent);--ms-option-bg-selected-focused: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-bg-selected-matched: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-disabled-bg: var(--base-disabled-bg, transparent);--ms-option-bg-disabled-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-disabled-opacity: .5;--ms-option-content-gap: calc(.8 * var(--ms-rem));--ms-option-icon-size: calc(2 * var(--ms-rem));--ms-option-icon-font-size: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-option-title-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-option-mark-bg: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-option-mark-color: inherit;--ms-option-mark-font-weight: var(--base-font-weight-semibold, 600);--ms-option-subtitle-margin-top: calc(.4 * var(--ms-rem));--ms-option-subtitle-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-option-subtitle-line-height: var(--base-line-height-tight, 1.25);--ms-checkbox-margin-top: calc(.2 * var(--ms-rem));--ms-checkbox-margin-right: 0;--ms-checkbox-margin-bottom: 0;--ms-checkbox-margin-left: 0;--ms-checkbox-size: calc(1.6 * var(--ms-rem));--ms-checkbox-scale: 1;--ms-checkbox-align: center;--ms-checkbox-bg: var(--ms-input-bg);--ms-checkbox-border: var(--ms-border);--ms-checkbox-border-radius: calc(.3 * var(--ms-rem));--ms-checkbox-checked-bg: var(--ms-accent-color);--ms-checkbox-checked-border: 1px solid var(--ms-accent-color);--ms-checkbox-checkmark-color: var(--ms-text-color-on-accent);--ms-checkbox-hover-border-color: var(--ms-accent-color);--ms-checkbox-disabled-bg: var(--ms-primary-bg);--ms-checkbox-disabled-border: var(--ms-border);--ms-checkbox-checked-bg-hover: var(--ms-accent-color-hover);--ms-checkbox-checked-border-color-hover: var(--ms-accent-color-hover);--ms-empty-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-empty-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-empty-color: var(--ms-text-color-3);--ms-loader-padding: calc(1.6 * var(--ms-rem));--ms-loader-gap: calc(.8 * var(--ms-rem));--ms-loading-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-loading-text-color: var(--ms-text-color-3);--ms-badges-gap: calc(.8 * var(--ms-rem));--ms-badges-margin-bottom: calc(.8 * var(--ms-rem));--ms-badges-margin-top: calc(.8 * var(--ms-rem));--ms-badges-margin-left: calc(.4 * var(--ms-rem));--ms-badges-margin-right: calc(.4 * var(--ms-rem));--ms-badge-gap: calc(.8 * var(--ms-rem));--ms-badge-height: calc(2.7 * var(--ms-rem));--ms-badge-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-font-weight: var(--base-font-weight-semibold, 600);--ms-badge-border-radius: var(--ms-border-radius-sm);--ms-badge-bg: var(--ms-accent-color-light);--ms-badge-bg-hover: var(--ms-badge-bg-hover);--ms-badge-bg-active: var(--ms-accent-color-light-hover);--ms-order-first: -1;--ms-badge-text-padding: 0 calc(.8 * var(--ms-rem));--ms-badge-text-bg: var(--ms-accent-color-light);--ms-badge-text-color: var(--ms-accent-color);--ms-badge-text-border: none;--ms-badge-remove-width: calc(2.7 * var(--ms-rem));--ms-badge-remove-bg: var(--ms-accent-color);--ms-badge-remove-color: var(--ms-text-color-on-accent);--ms-badge-remove-border: none;--ms-badge-remove-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-remove-bg-hover: var(--ms-accent-color-hover);--ms-badge-remove-box-shadow-focus: 0 0 0 2px color-mix(in srgb, var(--ms-accent-color) 50%, transparent);--ms-icon-remove: "×";--ms-badge-counter-bg: transparent;--ms-badge-counter-border: var(--ms-border);--ms-badge-counter-border-radius: var(--ms-border-radius-sm);--ms-badge-counter-text-color: var(--ms-text-color-3);--ms-badge-counter-text-bg: var(--ms-badge-counter-text-bg);--ms-badge-counter-remove-bg: var(--ms-text-color-3);--ms-badge-counter-remove-color: var(--ms-text-color-on-accent);--ms-badge-counter-remove-bg-hover: var(--ms-badge-counter-remove-bg-hover);--ms-more-badge-bg: var(--ms-accent-color-light);--ms-more-badge-hover-bg: var(--ms-badge-bg-hover);--ms-more-badge-active-bg: var(--ms-accent-color-light-hover);--ms-count-display-margin-bottom: calc(.8 * var(--ms-rem));--ms-count-display-margin-top: calc(.8 * var(--ms-rem));--ms-count-display-margin-left: calc(.8 * var(--ms-rem));--ms-count-display-margin-right: calc(.8 * var(--ms-rem));--ms-counter-wrapper-bg: transparent;--ms-counter-wrapper-border: var(--ms-border);--ms-counter-wrapper-border-radius: var(--ms-border-radius-sm);--ms-counter-wrapper-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-counter-wrapper-gap: calc(.4 * var(--ms-rem));--ms-counter-wrapper-bg-hover: var(--ms-primary-bg);--ms-counter-wrapper-border-color-hover: var(--ms-accent-color);--ms-count-text-bg: transparent;--ms-count-text-border: none;--ms-count-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-count-text-color: var(--ms-text-color-1);--ms-count-clear-size: calc(1.6 * var(--ms-rem));--ms-count-clear-bg: transparent;--ms-count-clear-color: var(--ms-text-color-3);--ms-count-clear-font-size: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-count-clear-border-radius: 50%;--ms-count-clear-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-count-clear-color-hover: var(--ms-accent-color);--ms-icon-clear: "×";--ms-tooltip-color: var(--ms-tooltip-text-color);--ms-tooltip-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-tooltip-border-radius: var(--ms-border-radius-lg);--ms-tooltip-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-tooltip-max-width: calc(32 * var(--ms-rem));--ms-tooltip-shadow: 0 2px 8px rgba(0, 0, 0, .15);--ms-tooltip-z-index: 10000;--ms-z-index-popover: 10000;--ms-selected-popover-width: calc(32 * var(--ms-rem));--ms-selected-popover-max-height: calc(32 * var(--ms-rem));--ms-selected-popover-border: var(--ms-border);--ms-selected-popover-border-radius: var(--ms-border-radius-lg);--ms-selected-popover-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-selected-popover-header-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-selected-popover-header-bg: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-selected-popover-header-border-bottom: var(--ms-border);--ms-selected-popover-header-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-selected-popover-header-font-weight: var(--base-font-weight-semibold, 600);--ms-selected-popover-header-color: var(--ms-text-color-1);--ms-popover-close-size: calc(2.4 * var(--ms-rem));--ms-selected-popover-close-bg: transparent;--ms-selected-popover-close-color: var(--ms-text-color-3);--ms-selected-popover-close-font-size: calc(var(--base-font-size-xl, 2) * var(--ms-rem));--ms-selected-popover-close-border-radius: 50%;--ms-selected-popover-close-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-selected-popover-close-color-hover: var(--ms-accent-color);--ms-selected-popover-body-gap: calc(.4 * var(--ms-rem));--ms-selected-popover-body-padding: calc(.8 * var(--ms-rem));--ms-selected-popover-body-max-height: calc(28.8 * var(--ms-rem));--ms-font-size-2xs: calc(var(--base-font-size-2xs, 1) * var(--ms-rem));--ms-font-size-xs: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-font-size-sm: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-font-size-base: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-font-size-lg: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-font-weight-normal: var(--base-font-weight-normal, 400);--ms-font-weight-medium: var(--base-font-weight-medium, 500);--ms-font-weight-semibold: var(--base-font-weight-semibold, 600);--ms-line-height-none: 1;--ms-line-height-tight: var(--base-line-height-tight, 1.25);--ms-line-height-normal: var(--base-line-height-normal, 1.5);--ms-line-height-relaxed: var(--base-line-height-relaxed, 1.75);--ms-border-radius-sm: calc(var(--base-border-radius-sm, .4) * var(--ms-rem));--ms-border-radius-md: calc(var(--base-border-radius-md, .6) * var(--ms-rem));--ms-border-radius-lg: calc(var(--base-border-radius-lg, .8) * var(--ms-rem));--ms-border-radius: var(--ms-border-radius-md);--ms-spacing-xs: calc(.4 * var(--ms-rem));--ms-spacing-sm: calc(.8 * var(--ms-rem));--ms-spacing-md: calc(1.2 * var(--ms-rem));--ms-spacing-lg: calc(1.6 * var(--ms-rem));--ms-transition-fast: .15s;--ms-transition-normal: .2s;--ms-easing-snappy: cubic-bezier(.4, 0, .2, 1);--ms-placeholder-opacity: .6;--ms-disabled-input-opacity: .6;--ms-scrollbar-width: 8px;--ms-scrollbar-track-bg: transparent;--ms-scrollbar-thumb-bg: var(--ms-border-color);--ms-scrollbar-thumb-bg-hover: var(--ms-text-color-3);--ms-scrollbar-thumb-border-radius: 4px}multi-select:not(:defined){display:block;min-height:calc(3.5 * var(--ms-rem));color:transparent!important;background:transparent}.ms-wrapper{display:flex;flex-direction:column;align-items:stretch}.ms-wrapper--inline{flex-direction:row;align-items:flex-start}.ms{position:relative;width:100%}.ms__input-wrapper{position:relative;display:flex;align-items:center}.ms__input{box-sizing:border-box;width:100%;font-family:inherit;height:var(--ms-input-height);padding:var(--ms-input-padding);padding-right:var(--ms-input-padding-right);font-size:var(--ms-input-font-size);border:var(--ms-input-border);border-radius:var(--ms-input-border-radius);background:var(--ms-input-bg);color:var(--ms-input-color);cursor:pointer;transition:border var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__input:hover:not(:focus):not(:disabled){border:var(--ms-input-border-hover)}.ms__input:focus{outline:none;border:var(--ms-input-border-focus)}.ms__input::placeholder{color:var(--ms-input-placeholder-color);opacity:0;transition:opacity var(--ms-transition-fast) var(--ms-easing-snappy)}:host([data-ready]) .ms__input::placeholder{opacity:var(--ms-placeholder-opacity)}.ms__input.ms__input--xs{font-size:var(--ms-input-size-xs-font);padding:var(--ms-input-size-xs-padding-v) var(--ms-input-size-xs-padding-h);padding-right:calc(var(--ms-input-size-xs-padding-h) * 2.5);height:var(--ms-input-size-xs-height)}.ms__input.ms__input--sm{font-size:var(--ms-input-size-sm-font);padding:var(--ms-input-size-sm-padding-v) var(--ms-input-size-sm-padding-h);padding-right:calc(var(--ms-input-size-sm-padding-h) * 2.5);height:var(--ms-input-size-sm-height)}.ms__input.ms__input--lg{font-size:var(--ms-input-size-lg-font);padding:var(--ms-input-size-lg-padding-v) var(--ms-input-size-lg-padding-h);padding-right:calc(var(--ms-input-size-lg-padding-h) * 2.5);height:var(--ms-input-size-lg-height)}.ms__input.ms__input--xl{font-size:var(--ms-input-size-xl-font);padding:var(--ms-input-size-xl-padding-v) var(--ms-input-size-xl-padding-h);padding-right:calc(var(--ms-input-size-xl-padding-h) * 2.5);height:var(--ms-input-size-xl-height)}.ms__toggle{position:absolute;right:var(--ms-toggle-right);top:50%;transform:var(--ms-transform-center-y);pointer-events:none;color:var(--ms-toggle-icon-color);transition:transform var(--ms-transition-fast) var(--ms-easing-snappy)}.ms--open .ms__toggle{transform:var(--ms-transform-center-y) rotate(var(--ms-transform-rotate-180));color:var(--ms-toggle-icon-color-open)}.ms__counter{position:absolute;right:var(--ms-counter-offset);top:50%;transform:var(--ms-transform-center-y);padding:var(--ms-counter-padding);background:var(--ms-counter-badge-bg);color:var(--ms-counter-badge-color);font-size:var(--ms-counter-font-size);font-weight:var(--ms-counter-font-weight);border-radius:var(--ms-counter-border-radius);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter:hover{background:var(--ms-counter-badge-bg-hover);transform:var(--ms-transform-center-y) scale(var(--ms-transform-scale-hover))}.ms__hint{display:none;position:absolute;z-index:var(--ms-z-index-popover);padding:var(--ms-hint-padding);background:var(--ms-hint-bg);border:var(--ms-hint-border);border-radius:var(--ms-hint-border-radius);box-shadow:var(--ms-hint-box-shadow);font-size:var(--ms-hint-font-size);color:var(--ms-hint-color);line-height:var(--ms-line-height-relaxed);max-width:100%}.ms__hint--visible{display:block}.ms__dropdown{display:none;position:absolute;font-family:inherit;z-index:var(--ms-z-index-dropdown);background:var(--ms-dropdown-bg);border:var(--ms-dropdown-border);border-radius:var(--ms-dropdown-border-radius);box-shadow:var(--ms-dropdown-box-shadow);max-height:var(--ms-options-max-height);overflow:hidden;color:var(--ms-dropdown-text-color)}.ms__dropdown--visible{display:flex;flex-direction:column}.ms__dropdown-inner{flex:1;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__dropdown-inner::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__dropdown-inner::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__dropdown--virtual{max-height:none}.ms__dropdown--virtual .ms__dropdown-inner{overflow-y:visible}.ms__actions{display:flex;flex-wrap:nowrap;gap:var(--ms-actions-gap);padding:var(--ms-actions-padding);border-bottom:var(--ms-actions-border-bottom)}.ms__actions--wrap{flex-wrap:wrap}.ms__actions--sticky{position:sticky;top:0;z-index:var(--ms-z-index-sticky);background:var(--ms-actions-bg)}.ms__action-btn{flex:1;font-family:inherit;padding:var(--ms-action-btn-padding);font-size:var(--ms-action-btn-font-size);border:var(--ms-action-btn-border);border-radius:var(--ms-action-btn-border-radius);background:var(--ms-action-button-bg);color:var(--ms-action-button-color);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__action-btn:hover{background:var(--ms-action-button-bg-hover);border-color:var(--ms-action-button-border-color-hover)}.ms__action-btn:active{transform:scale(var(--ms-transform-scale-active))}.ms__action-btn:disabled,.ms__action-btn[disabled]{opacity:var(--ms-disabled-opacity);cursor:not-allowed;pointer-events:none}.ms__options{padding:var(--ms-options-padding);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__options::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__options::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__options--virtual .ms__option{height:var(--ms-option-height, 50px);min-height:var(--ms-option-height, 50px);max-height:var(--ms-option-height, 50px);overflow:hidden;box-sizing:border-box}.ms__group+.ms__group{border-top:var(--ms-group-border-top);margin-top:var(--ms-group-margin-top);padding-top:var(--ms-group-padding-top)}.ms__group-label{padding:var(--ms-group-label-padding);font-size:var(--ms-group-label-font-size);font-weight:var(--ms-group-label-font-weight);color:var(--ms-group-label-color);text-transform:var(--ms-group-label-transform);letter-spacing:var(--ms-group-label-letter-spacing)}.ms__option{display:flex;align-items:var(--ms-checkbox-align, center);gap:var(--ms-option-gap);padding:var(--ms-option-padding);color:var(--ms-option-text-color);background:var(--ms-option-bg);cursor:pointer}.ms__option:hover{background:var(--ms-option-bg-hover);color:var(--ms-option-color-hover, inherit)}.ms__option--focused{background:var(--ms-option-bg-focused);color:var(--ms-option-color-focused, inherit);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--matched{background:var(--ms-option-bg-matched);color:var(--ms-option-color-matched, inherit);border-left:var(--ms-option-border-matched)}.ms__option--selected{background:var(--ms-option-bg-selected)}.ms__option--selected:hover{background:var(--ms-option-bg-selected-hover, var(--ms-option-bg-selected))}.ms__option--disabled{opacity:var(--ms-disabled-opacity);cursor:not-allowed;background:var(--ms-option-disabled-bg)}.ms__option--disabled:hover{background:var(--ms-option-disabled-bg)}.ms__option--focused:hover{background:var(--ms-option-bg-focused-hover);color:var(--ms-option-color-focused-hover, var(--ms-option-color-focused, var(--ms-option-text-color)))}.ms__option--matched:hover{background:var(--ms-option-bg-matched-hover);color:var(--ms-option-color-matched-hover, var(--ms-option-color-matched, var(--ms-option-text-color)))}.ms__option--selected.ms__option--focused{background:var(--ms-option-bg-selected-focused);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--selected.ms__option--matched{background:var(--ms-option-bg-selected-matched);border-left:var(--ms-option-border-matched)}.ms__option--disabled.ms__option--selected{background:var(--ms-option-bg-disabled-selected)}.ms__option--disabled.ms__option--focused{outline:none}.ms__option[data-checkbox-align=top]{--ms-checkbox-align: flex-start}.ms__option[data-checkbox-align=bottom]{--ms-checkbox-align: flex-end}.ms__checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;position:relative;margin-top:var(--ms-checkbox-margin-top);margin-right:var(--ms-checkbox-margin-right);margin-bottom:var(--ms-checkbox-margin-bottom);margin-left:var(--ms-checkbox-margin-left);width:var(--ms-checkbox-size);height:var(--ms-checkbox-size);transform:scale(var(--ms-checkbox-scale));transform-origin:top left;cursor:pointer;background:var(--ms-checkbox-bg);border:var(--ms-checkbox-border);border-radius:var(--ms-checkbox-border-radius);transition:background-color .15s ease,border-color .15s ease}.ms__checkbox:after{content:"";position:absolute;display:none;left:50%;top:40%;width:30%;height:55%;transform:translate(-50%,-50%) rotate(45deg);border:solid var(--ms-checkbox-checkmark-color);border-width:0 2px 2px 0}.ms__checkbox:hover:not(:disabled){border-color:var(--ms-checkbox-hover-border-color)}.ms__checkbox:checked{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox:checked:after{display:block}.ms__checkbox:checked:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:focus-visible{outline:2px solid var(--ms-checkbox-checked-bg);outline-offset:2px}.ms__checkbox:disabled{cursor:not-allowed;background:var(--ms-checkbox-disabled-bg);border:var(--ms-checkbox-disabled-border);opacity:.6}.ms__checkbox:disabled:checked{background:var(--ms-checkbox-disabled-bg)}.ms__option--disabled .ms__checkbox{cursor:not-allowed}.ms__option-content{flex:1;display:flex;align-items:center;gap:var(--ms-option-content-gap);min-width:0}.ms__option-icon{flex-shrink:0;width:var(--ms-option-icon-size);height:var(--ms-option-icon-size);display:flex;align-items:center;justify-content:center;font-size:var(--ms-option-icon-font-size)}.ms__option-icon svg{width:100%;height:100%;fill:currentColor}.ms__option-text{flex:1;min-width:0}.ms__option-title{font-size:var(--ms-option-title-font-size);color:var(--ms-option-title-color);line-height:var(--ms-line-height-relaxed)}.ms__option:hover .ms__option-title{color:var(--ms-option-title-color-hover, var(--ms-option-title-color))}.ms__option--selected .ms__option-title{color:var(--ms-option-title-color-selected, var(--ms-option-title-color))}.ms__option--selected:hover .ms__option-title{color:var(--ms-option-title-color-selected-hover, var(--ms-option-title-color-selected, var(--ms-option-title-color)))}.ms__option-title mark{background:var(--ms-option-mark-bg);color:var(--ms-option-mark-color);font-weight:var(--ms-option-mark-font-weight)}.ms__option-subtitle{margin-top:var(--ms-option-subtitle-margin-top);font-size:var(--ms-option-subtitle-font-size);color:var(--ms-option-subtitle-color);line-height:var(--ms-option-subtitle-line-height)}.ms__option:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-hover, var(--ms-option-subtitle-color))}.ms__option--selected .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color))}.ms__option--selected:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected-hover, var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color)))}.ms__empty{padding:var(--ms-empty-padding);text-align:center;font-size:var(--ms-empty-font-size);color:var(--ms-empty-color)}.ms__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ms-loader-padding);gap:var(--ms-loader-gap)}.ms__loading-text{font-size:var(--ms-loading-text-font-size);color:var(--ms-loading-color)}.ms__badges{display:flex;flex-wrap:wrap;gap:var(--ms-badges-gap);padding:0}.ms__badges:empty{display:none}.ms__badges--bottom{margin-top:var(--ms-badges-margin-bottom)}.ms__badges--top{margin-bottom:var(--ms-badges-margin-top);order:var(--ms-order-first)}.ms__badges--left{order:var(--ms-order-first);margin-right:var(--ms-badges-margin-left);justify-content:flex-end}.ms__badges--right{margin-left:var(--ms-badges-margin-right);justify-content:flex-start}.ms__count-display{display:flex;align-items:center}.ms__count-display:empty{display:none}.ms__count-display--bottom{margin-top:var(--ms-count-display-margin-bottom)}.ms__count-display--top{margin-bottom:var(--ms-count-display-margin-top);order:var(--ms-order-first)}.ms__count-display--left{order:var(--ms-order-first);margin-right:var(--ms-count-display-margin-left);justify-content:flex-start}.ms__count-display--right{margin-left:var(--ms-count-display-margin-right);justify-content:flex-end}.ms__counter-wrapper{display:inline-flex;align-items:center;gap:var(--ms-counter-wrapper-gap);background:var(--ms-counter-wrapper-bg);border:var(--ms-counter-wrapper-border);border-radius:var(--ms-counter-wrapper-border-radius);padding:var(--ms-counter-wrapper-padding);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter-wrapper:hover{background:var(--ms-counter-wrapper-bg-hover);border-color:var(--ms-counter-wrapper-border-color-hover)}.ms__count-text{display:inline-flex;align-items:center;background:var(--ms-count-text-bg);border:var(--ms-count-text-border);padding:0;font-size:var(--ms-count-text-font-size);color:var(--ms-count-text-color);cursor:pointer;transition:color var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--ms-count-clear-size);height:var(--ms-count-clear-size);padding:0;border:none;background:var(--ms-count-clear-bg);color:var(--ms-count-clear-color);font-size:var(--ms-count-clear-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-count-clear-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear:hover{background:var(--ms-count-clear-bg-hover);color:var(--ms-count-clear-color-hover)}.ms__count-clear:before{content:var(--ms-icon-clear)}.ms__badge{display:inline-flex;align-items:center;height:var(--ms-badge-height);font-size:var(--ms-badge-font-size);font-weight:var(--ms-badge-font-weight);line-height:var(--ms-line-height-none);border-radius:var(--ms-badge-border-radius);overflow:hidden;max-width:100%}.ms__badge-text{display:flex;align-items:center;box-sizing:border-box;height:100%;padding:var(--ms-badge-text-padding);background:var(--ms-badge-text-bg);color:var(--ms-badge-text-color);border:var(--ms-badge-text-border);border-right:none;border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--ms-transition-normal) ease,color var(--ms-transition-normal) ease}.ms__badge:hover .ms__badge-text{background:var(--ms-badge-text-bg-hover, var(--ms-badge-text-bg));color:var(--ms-badge-text-color-hover, var(--ms-badge-text-color))}.ms__badge-remove{display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit;width:var(--ms-badge-remove-width);height:100%;flex-shrink:0;background:var(--ms-badge-remove-bg);color:var(--ms-badge-remove-color);border:var(--ms-badge-remove-border);border-left:none;border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;cursor:pointer;transition:background-color var(--ms-transition-normal) ease;font-size:var(--ms-badge-remove-font-size)}.ms__badge-remove:hover{background:var(--ms-badge-remove-bg-hover)}.ms__badge-remove:focus{outline:none;box-shadow:var(--ms-badge-remove-box-shadow-focus)}.ms__badge-remove:before{content:var(--ms-icon-remove);font-size:var(--ms-font-size-base);line-height:var(--ms-line-height-none)}.ms__badge--counter{cursor:pointer}.ms__badge--counter .ms__badge-text{background:var(--ms-badge-counter-text-bg);color:var(--ms-badge-counter-text-color);border:var(--ms-badge-counter-border);border-right:none}.ms__badge--counter .ms__badge-remove{background:var(--ms-badge-counter-remove-bg);color:var(--ms-badge-counter-remove-color);border:var(--ms-badge-counter-border);border-left:none}.ms__badge--counter .ms__badge-remove:hover{background:var(--ms-badge-counter-remove-bg-hover)}.ms__badge--more{cursor:pointer}.ms__badge-tooltip{position:fixed;z-index:var(--ms-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-tooltip-bg);color:var(--ms-tooltip-text-color);padding:var(--ms-tooltip-padding);border-radius:var(--ms-tooltip-border-radius);font-size:var(--ms-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-tooltip-shadow);pointer-events:none}.ms__badge-tooltip--visible{opacity:1;visibility:visible}.ms__selected-popover{display:none;position:absolute;z-index:var(--ms-z-index-popover);background:var(--ms-selected-popover-bg);border:var(--ms-selected-popover-border);border-radius:var(--ms-selected-popover-border-radius);box-shadow:var(--ms-selected-popover-box-shadow);width:var(--ms-selected-popover-width);max-height:var(--ms-selected-popover-max-height);overflow:hidden}.ms__selected-popover--visible{display:flex;flex-direction:column}.ms__selected-popover--virtual{display:block;overflow:visible;max-height:none}.ms__selected-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ms-selected-popover-header-padding);background:var(--ms-selected-popover-header-bg);border-bottom:var(--ms-selected-popover-header-border-bottom);font-size:var(--ms-selected-popover-header-font-size);font-weight:var(--ms-selected-popover-header-font-weight);color:var(--ms-selected-popover-header-color)}.ms__selected-popover-close{display:flex;align-items:center;justify-content:center;width:var(--ms-popover-close-size);height:var(--ms-popover-close-size);padding:0;border:none;background:var(--ms-selected-popover-close-bg);color:var(--ms-selected-popover-close-color);font-size:var(--ms-selected-popover-close-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-selected-popover-close-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__selected-popover-close:hover{background:var(--ms-selected-popover-close-bg-hover);color:var(--ms-selected-popover-close-color-hover)}.ms__selected-popover-body{display:flex;flex-direction:column;gap:var(--ms-selected-popover-body-gap);padding:var(--ms-selected-popover-body-padding);overflow-y:auto;max-height:var(--ms-selected-popover-body-max-height);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__selected-popover-body::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__selected-popover-body::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__selected-popover-body .ms__badge{width:100%;min-height:fit-content;line-height:var(--ms-line-height-relaxed)}.ms__selected-popover-body .ms__badge-text{flex:1;min-width:0;white-space:normal;word-wrap:break-word}.ms__selected-popover-body--virtual{display:block;max-height:none;padding:0}.ms__selected-popover-body--virtual .ms__badge{height:var(--ms-badge-height-virtual, 36px);min-height:var(--ms-badge-height-virtual, 36px);max-height:var(--ms-badge-height-virtual, 36px);margin-bottom:var(--ms-selected-popover-body-gap);overflow:hidden;box-sizing:border-box}.ms__selected-popover-body--virtual .ms__badge-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms--rtl .ms__input-wrapper{direction:rtl}.ms--rtl .ms__input{text-align:right;padding-left:var(--ms-input-padding-right);padding-right:var(--ms-input-padding-h)}.ms--rtl .ms__toggle{left:var(--ms-toggle-right)!important;right:auto!important}.ms--rtl .ms__counter{left:var(--ms-counter-offset)!important;right:auto!important}.ms--rtl .ms__dropdown{direction:rtl;text-align:right}.ms--rtl .ms__option{flex-direction:row-reverse}.ms--rtl .ms__checkbox{margin-left:var(--ms-spacing-sm);margin-right:0}.ms--rtl .ms__option-content{text-align:right}.ms--rtl .ms__option-icon{margin-left:var(--ms-spacing-xs);margin-right:0}.ms--rtl .ms__badges{direction:rtl}.ms--rtl .ms__badge{flex-direction:row-reverse}.ms--rtl .ms__badge-remove{border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);border-left:var(--ms-badge-remove-border);border-right:none}.ms--rtl .ms__badge-text{border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;border-right:var(--ms-badge-text-border);border-left:none}.ms--rtl .ms__count-display{direction:rtl}.ms--rtl .ms__counter-wrapper{flex-direction:row-reverse}.ms--rtl .ms__selected-popover{direction:rtl;text-align:right}.ms--rtl .ms__actions{direction:rtl}.ms--rtl .ms__group-label,.ms--rtl .ms__empty{text-align:right}.ms--rtl .ms__hint{direction:rtl;text-align:right}.ms--disabled .ms__input{opacity:var(--ms-disabled-input-opacity);cursor:not-allowed;background:var(--ms-input-bg-disabled)}.ms--disabled .ms__toggle{opacity:var(--ms-disabled-input-opacity)}.ms--no-checkboxes .ms__option{gap:0;padding-left:var(--ms-option-padding-h)}.ms--no-checkboxes .ms__option-content{padding-left:0}.ms-debug-info{margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:calc(var(--base-border-radius-md, .6) * var(--ms-rem));font-size:calc(1.2 * var(--ms-rem));color:#111827}.ms-debug-info details summary{cursor:pointer;font-weight:600;color:#2563eb;-webkit-user-select:none;user-select:none;padding:calc(.4 * var(--ms-rem));border-radius:calc(var(--base-border-radius-sm, .4) * var(--ms-rem))}.ms-debug-info details summary:hover{background-color:#f3f4f6}.ms-debug-info details summary:focus{outline:2px solid #3b82f6;outline-offset:2px}.ms-debug-info .ms-debug-stats{display:flex;flex-direction:column;gap:calc(.4 * var(--ms-rem));margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:#fff;border-radius:calc(var(--base-border-radius-sm, .4) * var(--ms-rem))}.ms-debug-info .ms-debug-stats span{display:flex;justify-content:space-between;padding:2px 4px;font-family:monospace;font-size:calc(1 * var(--ms-rem))}.ms-debug-info .ms-debug-stats span:before{content:"•";margin-right:calc(.4 * var(--ms-rem));color:#3b82f6}',us=typeof HTMLElement<"u"?HTMLElement:class{},Ae=new Set;function dt(){return Array.from(Ae)}class Ie extends us{constructor(){super();m(this,"picker");m(this,"containerElement");m(this,"shadow");m(this,"_options");m(this,"_valueMember");m(this,"_getValueCallback");m(this,"_displayValueMember");m(this,"_getDisplayValueCallback");m(this,"_getBadgeDisplayCallback");m(this,"_getBadgeClassCallback");m(this,"_customStylesCallback");m(this,"_searchValueMember");m(this,"_getSearchValueCallback");m(this,"_iconMember");m(this,"_getIconCallback");m(this,"_subtitleMember");m(this,"_getSubtitleCallback");m(this,"_groupMember");m(this,"_getGroupCallback");m(this,"_renderGroupLabelContentCallback");m(this,"_disabledMember");m(this,"_getDisabledCallback");m(this,"_getValueFormatCallback");m(this,"_getBadgeTooltipCallback");m(this,"_getRemoveButtonTooltipCallback");m(this,"_renderOptionContentCallback");m(this,"_renderBadgeContentCallback");m(this,"_renderSelectedItemContentCallback");m(this,"_getSelectedItemClassCallback");m(this,"_renderSelectedContentCallback");m(this,"_getCounterCallback");m(this,"_actionButtons");m(this,"_beforeSearchCallback");m(this,"_searchCallback");m(this,"_addNewCallback");m(this,"_selectCallback");m(this,"_deselectCallback");m(this,"_changeCallback");m(this,"_declarativeSelectedValues");this.shadow=this.attachShadow({mode:"open"});const t=document.createElement("style");t.textContent=ps,this.shadow.appendChild(t),requestAnimationFrame(()=>{this.setAttribute("data-ready","")})}static get observedAttributes(){return["search-hint","search-placeholder","multiple","allow-groups","show-checkboxes","sticky-actions","close-on-select","lock-placement","dropdown-min-width","dropdown-max-width","badges-display-mode","badges-threshold","badges-max-visible","badges-threshold-mode","badges-position","show-counter","keep-options-on-search","should-keep-search-on-close","max-height","empty-message","loading-message","min-search-length","enable-search","search-input-mode","search-mode","actions-layout","allow-add-new","initial-values","enable-virtual-scroll","virtual-scroll-threshold","option-height","badge-height","virtual-scroll-buffer","value-member","display-value-member","search-value-member","icon-member","subtitle-member","group-member","disabled-member","name","value-format","enable-badge-tooltips","badge-tooltip-placement","remove-button-tooltip-text","show-debug-info"]}connectedCallback(){Ae.add(this),this.render();const t=this.parseDeclarativeOptions();t&&(this._options&&this._options.length>0&&k.warn("[MultiSelectElement] Both declarative <option> elements and programmatic .options detected. Using declarative options."),this._options=t),this.initializePicker()}disconnectedCallback(){Ae.delete(this),this.picker&&this.picker.destroy()}attributeChangedCallback(t,s,i){s!==i&&this.picker&&t!=="initial-values"&&(this.picker.destroy(),this.initializePicker())}render(){this.containerElement=document.createElement("div"),this.containerElement.setAttribute("data-multiselect",""),this.className&&(this.containerElement.className=this.className),this.shadow.appendChild(this.containerElement),this.getAttribute("show-debug-info")==="true"&&this.renderDebugInfo()}renderDebugInfo(){const t=this.shadow.querySelector(".ms-debug-info");t&&t.remove();const s=document.createElement("div");s.className="ms-debug-info";const i=document.createElement("details"),r=document.createElement("summary");r.textContent="Debug Info";const n=document.createElement("div");n.className="ms-debug-stats",i.appendChild(r),i.appendChild(n),s.appendChild(i),this.shadow.appendChild(s),this.updateDebugInfo()}updateDebugInfo(){var h,g;const t=this.shadow.querySelector(".ms-debug-stats");if(!t||!this.picker)return;const s="1.8.1",i=dt().length,n=this.picker.getSelected().length,a=((h=this._options)==null?void 0:h.length)||0,l=this.picker,c=l.isOpen||!1,d=l.searchTerm||"",p=l.isLoading||!1,u=((g=l.filteredOptions)==null?void 0:g.length)||0;t.innerHTML=`
|
|
46
|
+
${d}`:c,v.debug(`[${this.instanceId}] Using default content: "${r}"`)}typeof r=="string"?i.textContent=r:i.appendChild(r),(this.options.container||document.body).appendChild(i),v.debug(`[${this.instanceId}] Tooltip element created and appended for "${s}"`),this.badgeTooltips.set(s,i);const a=()=>{const c=this.badgeTooltipHideTimeouts.get(s);c&&(clearTimeout(c),this.badgeTooltipHideTimeouts.delete(s)),v.debug(`[${this.instanceId}] Mouse entered badge "${s}", will show tooltip in ${this.options.badgeTooltipDelay??100}ms`);const d=window.setTimeout(()=>{v.debug(`[${this.instanceId}] Showing tooltip for "${s}"`),i.classList.add("ms__badge-tooltip--visible"),this.positionBadgeTooltip(e,i,s),this.badgeTooltipShowTimeouts.delete(s)},this.options.badgeTooltipDelay??100);this.badgeTooltipShowTimeouts.set(s,d)},l=()=>{const c=this.badgeTooltipShowTimeouts.get(s);c&&(clearTimeout(c),this.badgeTooltipShowTimeouts.delete(s));const d=window.setTimeout(()=>{i.classList.remove("ms__badge-tooltip--visible"),this.cleanupBadgeTooltip(s),this.badgeTooltipHideTimeouts.delete(s)},100);this.badgeTooltipHideTimeouts.set(s,d)};e.addEventListener("mouseenter",a),e.addEventListener("mouseleave",l)}createRemoveButtonTooltip(e,t,s,i){const r=document.createElement("div");r.className="ms__badge-tooltip";let n;i&&this.options.getRemoveButtonTooltipCallback?n=this.options.getRemoveButtonTooltipCallback(i):this.options.removeButtonTooltipText?n=this.options.removeButtonTooltipText.replace("{0}",t):n=`Remove ${t}`,r.textContent=n,(this.options.container||document.body).appendChild(r);const l=`${s}-remove`;this.badgeTooltips.set(l,r);const c=()=>{const p=this.badgeTooltipHideTimeouts.get(l);p&&(clearTimeout(p),this.badgeTooltipHideTimeouts.delete(l));const u=this.badgeTooltips.get(s);u&&u.classList.remove("ms__badge-tooltip--visible");const h=window.setTimeout(()=>{r.classList.add("ms__badge-tooltip--visible"),this.positionBadgeTooltip(e,r,l),this.badgeTooltipShowTimeouts.delete(l)},this.options.badgeTooltipDelay??100);this.badgeTooltipShowTimeouts.set(l,h)},d=()=>{const p=this.badgeTooltipShowTimeouts.get(l);p&&(clearTimeout(p),this.badgeTooltipShowTimeouts.delete(l));const u=window.setTimeout(()=>{r.classList.remove("ms__badge-tooltip--visible"),this.cleanupBadgeTooltip(l),this.badgeTooltipHideTimeouts.delete(l)},100);this.badgeTooltipHideTimeouts.set(l,u)};e.addEventListener("mouseenter",c),e.addEventListener("mouseleave",d)}positionBadgeTooltip(e,t,s){const i=q(e,t,()=>{se(e,t,{placement:this.options.badgeTooltipPlacement||"top",strategy:"fixed",middleware:[ee(this.options.badgeTooltipOffset||8),fe(),te({padding:8})]}).then(({x:r,y:n})=>{Object.assign(t.style,{left:`${r}px`,top:`${n}px`}),v.debug(`[${this.instanceId}] Positioned tooltip "${s}" at x:${r}, y:${n}`,{placement:this.options.badgeTooltipPlacement||"top",tooltipClasses:t.className,tooltipDisplay:window.getComputedStyle(t).display,tooltipOpacity:window.getComputedStyle(t).opacity,tooltipVisibility:window.getComputedStyle(t).visibility,tooltipZIndex:window.getComputedStyle(t).zIndex,tooltipPosition:window.getComputedStyle(t).position})})});this.badgeTooltipCleanups.set(s,i)}cleanupBadgeTooltip(e){const t=this.badgeTooltipShowTimeouts.get(e);t&&(clearTimeout(t),this.badgeTooltipShowTimeouts.delete(e));const s=this.badgeTooltipHideTimeouts.get(e);s&&(clearTimeout(s),this.badgeTooltipHideTimeouts.delete(e));const i=this.badgeTooltipCleanups.get(e);i&&(i(),this.badgeTooltipCleanups.delete(e))}destroyAllBadgeTooltips(){this.badgeTooltipShowTimeouts.forEach(e=>clearTimeout(e)),this.badgeTooltipShowTimeouts.clear(),this.badgeTooltipHideTimeouts.forEach(e=>clearTimeout(e)),this.badgeTooltipHideTimeouts.clear(),this.badgeTooltipCleanups.forEach(e=>e()),this.badgeTooltipCleanups.clear(),this.badgeTooltips.forEach(e=>e.remove()),this.badgeTooltips.clear()}attachActionButtonTooltips(){const e=this.dropdown.querySelectorAll(".ms__action-btn");v.debug(`[${this.instanceId}] Found ${e.length} action buttons to attach tooltips to`),e.forEach(t=>{var l;const s=t,i=s.dataset.action;if(!i)return;const r=(l=this.options.actionButtons)==null?void 0:l.find(c=>c.action==="custom"?s.dataset.customAction===s.dataset.action:c.action===i);if(!r)return;let n;if(r.getTooltipCallback?(n=r.getTooltipCallback(this),v.debug(`[${this.instanceId}] Using getTooltipCallback for action button "${i}": "${n}"`)):(n=r.tooltip,v.debug(`[${this.instanceId}] Using static tooltip for action button "${i}": "${n}"`)),!n){v.debug(`[${this.instanceId}] No tooltip for action button "${i}"`);return}const a=`action-${i}-${Date.now()}`;this.createActionButtonTooltip(s,n,a)})}createActionButtonTooltip(e,t,s){const i=document.createElement("div");i.className="ms__badge-tooltip",i.textContent=t,(this.options.container||document.body).appendChild(i),v.debug(`[${this.instanceId}] Tooltip element created for action button "${s}"`),this.actionButtonTooltips.set(s,i);let n,a;const l=()=>{clearTimeout(a),v.debug(`[${this.instanceId}] Mouse entered action button "${s}", will show tooltip in ${this.options.badgeTooltipDelay??100}ms`),n=window.setTimeout(()=>{v.debug(`[${this.instanceId}] Showing tooltip for action button "${s}"`),i.classList.add("ms__badge-tooltip--visible"),this.positionActionButtonTooltip(e,i,s)},this.options.badgeTooltipDelay??100)},c=()=>{clearTimeout(n),a=window.setTimeout(()=>{i.classList.remove("ms__badge-tooltip--visible"),this.cleanupActionButtonTooltip(s)},100)};e.addEventListener("mouseenter",l),e.addEventListener("mouseleave",c)}positionActionButtonTooltip(e,t,s){const i=q(e,t,()=>{se(e,t,{placement:this.options.badgeTooltipPlacement||"top",strategy:"fixed",middleware:[ee(this.options.badgeTooltipOffset||8),fe(),te({padding:8})]}).then(({x:r,y:n})=>{Object.assign(t.style,{left:`${r}px`,top:`${n}px`}),v.debug(`[${this.instanceId}] Positioned action button tooltip "${s}" at x:${r}, y:${n}`)})});this.actionButtonTooltipCleanups.set(s,i)}cleanupActionButtonTooltip(e){const t=this.actionButtonTooltipCleanups.get(e);t&&(t(),this.actionButtonTooltipCleanups.delete(e))}destroyAllActionButtonTooltips(){this.actionButtonTooltipCleanups.forEach(e=>e()),this.actionButtonTooltipCleanups.clear(),this.actionButtonTooltips.forEach(e=>e.remove()),this.actionButtonTooltips.clear()}destroy(){this.destroyAllBadgeTooltips(),this.destroyAllActionButtonTooltips(),this.dropdownCleanup&&this.dropdownCleanup(),this.hintCleanup&&this.hintCleanup(),this.selectedPopoverCleanup&&this.selectedPopoverCleanup(),this.virtualScroll&&(this.virtualScroll.destroy(),this.virtualScroll=null),this.dropdown&&this.dropdown.remove(),this.hint&&this.hint.remove(),this.selectedPopover&&this.selectedPopover.remove(),this.element.innerHTML="",this.element.classList.remove("ms","ms--open","ms--no-checkboxes"),re.info(`[${this.instanceId}] Component destroyed`)}}const ps=':host{--ms-rem: 10px;font-family:var(--ms-font-family, var(--base-font-family, inherit));display:block;--ms-accent-color: var(--base-accent-color, #3b82f6);--ms-accent-color-hover: var(--base-accent-color-hover, #2563eb);--ms-accent-color-active: var(--base-accent-color-active, #1d4ed8);--ms-accent-color-light: var(--base-accent-color-light, #eff6ff);--ms-accent-color-light-hover: var(--base-accent-color-light-hover, #e0f2fe);--ms-text-color-1: var(--base-text-color-1, #111827);--ms-text-color-2: var(--base-text-color-2, #353b47);--ms-text-color-3: var(--base-text-color-3, #6b7280);--ms-text-color-4: var(--base-text-color-4, #a0a3a9);--ms-text-color-on-accent: var(--base-text-color-on-accent, #ffffff);--ms-text-primary: var(--ms-text-color-1);--ms-text-secondary: var(--ms-text-color-3);--ms-primary-bg: var(--base-main-bg, #f3f4f6);--ms-primary-bg-hover: var(--base-hover-bg, #e5e7eb);--ms-border-color: var(--base-border-color, #e5e7eb);--ms-border: var(--base-border, 1px solid var(--ms-border-color));--ms-input-bg: var(--base-input-bg, #ffffff);--ms-input-color: var(--base-input-color, var(--ms-text-color-1));--ms-input-border: var(--base-input-border, 1px solid var(--ms-border-color));--ms-input-border-hover: var(--base-input-border-hover, 1px solid var(--ms-accent-color));--ms-input-border-focus: var(--base-input-border-focus, 1px solid var(--ms-accent-color));--ms-input-placeholder-color: var(--base-input-placeholder-color, var(--ms-text-color-4));--ms-input-bg-disabled: var(--base-input-bg-disabled, rgba(107, 114, 128, .05));--ms-toggle-icon-color: var(--ms-text-color-3);--ms-toggle-icon-color-open: var(--ms-text-color-3);--ms-counter-badge-bg: var(--ms-accent-color);--ms-counter-badge-bg-hover: var(--ms-accent-color-hover);--ms-counter-badge-color: var(--ms-text-color-on-accent);--ms-hint-bg: var(--base-main-bg, #ffffff);--ms-hint-color: var(--ms-text-color-4);--ms-hint-border-color: var(--ms-border-color);--ms-dropdown-bg: var(--base-dropdown-bg, #ffffff);--ms-dropdown-text-color: var(--ms-text-color-1);--ms-dropdown-border-color: var(--ms-border-color);--ms-dropdown-box-shadow-semantic: var(--base-dropdown-box-shadow, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1));--ms-actions-bg: var(--base-main-bg, #ffffff);--ms-actions-border-color: var(--ms-border-color);--ms-action-button-bg: transparent;--ms-action-button-bg-hover: var(--ms-primary-bg);--ms-action-button-border-color: var(--ms-border-color);--ms-action-button-border-color-hover: var(--ms-accent-color);--ms-action-button-color: var(--ms-text-color-1);--ms-group-border-color: var(--ms-border-color);--ms-option-text-color: var(--ms-text-color-1);--ms-option-color-hover: inherit;--ms-option-color-focused: inherit;--ms-option-outline-color-focused: var(--ms-accent-color);--ms-option-color-matched: inherit;--ms-option-border-matched-color: color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-title-color: var(--ms-text-color-1);--ms-option-subtitle-color: var(--ms-text-color-3);--ms-loading-color: var(--ms-text-color-3);--ms-badge-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-bg-hover: var(--base-hover-bg, var(--ms-input-bg));--ms-badge-text-color-hover: var(--ms-badge-text-color);--ms-badge-counter-border-color: var(--ms-border-color);--ms-badge-counter-text-bg: var(--ms-primary-bg);--ms-badge-counter-remove-bg-hover: var(--ms-text-color-1);--ms-counter-wrapper-border-color: var(--ms-border-color);--ms-count-clear-bg-hover: var(--ms-accent-color);--ms-tooltip-bg: var(--base-tooltip-bg, #333333);--ms-tooltip-text-color: var(--base-tooltip-text-color, #ffffff);--ms-selected-popover-bg: var(--base-dropdown-bg, #ffffff);--ms-selected-popover-border-color: var(--ms-border-color);--ms-selected-popover-header-border-color: var(--ms-border-color);--ms-selected-popover-close-bg-hover: var(--ms-accent-color);--ms-input-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-input-padding-right: calc(4 * var(--ms-rem));--ms-input-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-border-width: 1px;--ms-input-border-radius: var(--ms-border-radius-md);--ms-input-text: var(--ms-text-color-1);--ms-input-bg-disabled: rgba(107, 114, 128, .05);--ms-input-size-xs-font: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-input-size-xs-padding-v: calc(.4 * var(--ms-rem));--ms-input-size-xs-padding-h: calc(.8 * var(--ms-rem));--ms-input-size-xs-height: calc(var(--base-input-size-xs-height, 3.1) * var(--ms-rem));--ms-input-size-sm-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-sm-padding-v: calc(.5 * var(--ms-rem));--ms-input-size-sm-padding-h: calc(1 * var(--ms-rem));--ms-input-size-sm-height: calc(var(--base-input-size-sm-height, 3.3) * var(--ms-rem));--ms-input-size-md-font: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-input-size-md-padding-v: calc(.8 * var(--ms-rem));--ms-input-size-md-padding-h: calc(1.2 * var(--ms-rem));--ms-input-size-md-height: calc(var(--base-input-size-md-height, 3.5) * var(--ms-rem));--ms-input-size-lg-font: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-input-size-lg-padding-v: calc(1 * var(--ms-rem));--ms-input-size-lg-padding-h: calc(1.4 * var(--ms-rem));--ms-input-size-lg-height: calc(var(--base-input-size-lg-height, 3.8) * var(--ms-rem));--ms-input-size-xl-font: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-input-size-xl-padding-v: calc(1.2 * var(--ms-rem));--ms-input-size-xl-padding-h: calc(1.6 * var(--ms-rem));--ms-input-size-xl-height: calc(var(--base-input-size-xl-height, 4.1) * var(--ms-rem));--ms-toggle-right: calc(1.2 * var(--ms-rem));--ms-toggle-color: var(--ms-text-color-3);--ms-transform-center-y: translateY(-50%);--ms-transform-rotate-180: 180deg;--ms-counter-offset: calc(3.2 * var(--ms-rem));--ms-counter-padding: calc(.2 * var(--ms-rem)) calc(.4 * var(--ms-rem));--ms-counter-bg: var(--ms-accent-color);--ms-counter-color: var(--ms-text-color-on-accent);--ms-counter-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-counter-font-weight: var(--base-font-weight-semibold, 600);--ms-counter-border-radius: var(--ms-border-radius-sm);--ms-counter-bg-hover: var(--ms-accent-color-hover);--ms-transform-scale-hover: 1.1;--ms-hint-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-hint-border: var(--ms-border);--ms-hint-border-radius: var(--ms-border-radius-lg);--ms-hint-box-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ms-hint-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-dropdown-border: var(--base-dropdown-border, 1px solid var(--ms-border-color));--ms-dropdown-border-radius: var(--ms-border-radius-lg);--ms-dropdown-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-options-max-height: calc(32 * var(--ms-rem));--ms-option-color: var(--ms-text-color-1);--ms-z-index-dropdown: 9999;--ms-z-index-sticky: 1;--ms-actions-gap: calc(.4 * var(--ms-rem));--ms-actions-padding: calc(.8 * var(--ms-rem));--ms-actions-border-bottom: var(--ms-border);--ms-action-btn-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-action-btn-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-action-btn-border: var(--ms-border);--ms-action-btn-border-radius: var(--ms-border-radius-sm);--ms-action-btn-bg: transparent;--ms-action-btn-color: inherit;--ms-action-btn-bg-hover: var(--ms-primary-bg);--ms-action-btn-border-color-hover: var(--ms-accent-color);--ms-transform-scale-active: .98;--ms-options-padding: 0;--ms-group-border-top: var(--ms-border);--ms-group-margin-top: calc(.4 * var(--ms-rem));--ms-group-padding-top: calc(.4 * var(--ms-rem));--ms-group-label-padding: calc(.4 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-group-label-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-group-label-font-weight: var(--base-font-weight-semibold, 600);--ms-group-label-color: var(--ms-text-color-3);--ms-group-label-transform: uppercase;--ms-group-label-letter-spacing: .05em;--ms-option-gap: calc(.8 * var(--ms-rem));--ms-option-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-option-padding-h: calc(1.2 * var(--ms-rem));--ms-option-bg: transparent;--ms-option-bg-hover: var(--ms-primary-bg);--ms-option-bg-focused: var(--ms-primary-bg);--ms-option-outline-focused: 2px solid var(--ms-accent-color);--ms-option-focus-outline-offset: -2px;--ms-option-bg-matched: color-mix(in srgb, var(--ms-accent-color) 8%, transparent);--ms-option-border-matched: 3px solid color-mix(in srgb, var(--ms-accent-color) 40%, transparent);--ms-option-bg-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-option-bg-focused-hover: var(--ms-primary-bg);--ms-option-bg-matched-hover: color-mix(in srgb, var(--ms-accent-color) 12%, transparent);--ms-option-bg-selected-focused: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-bg-selected-matched: color-mix(in srgb, var(--ms-accent-color) 15%, transparent);--ms-option-disabled-bg: var(--base-disabled-bg, transparent);--ms-option-bg-disabled-selected: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-disabled-opacity: .5;--ms-option-content-gap: calc(.8 * var(--ms-rem));--ms-option-icon-size: calc(2 * var(--ms-rem));--ms-option-icon-font-size: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-option-title-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-option-mark-bg: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-option-mark-color: inherit;--ms-option-mark-font-weight: var(--base-font-weight-semibold, 600);--ms-option-subtitle-margin-top: calc(.4 * var(--ms-rem));--ms-option-subtitle-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-option-subtitle-line-height: var(--base-line-height-tight, 1.25);--ms-checkbox-margin-top: calc(.2 * var(--ms-rem));--ms-checkbox-margin-right: 0;--ms-checkbox-margin-bottom: 0;--ms-checkbox-margin-left: 0;--ms-checkbox-size: calc(1.6 * var(--ms-rem));--ms-checkbox-scale: 1;--ms-checkbox-align: center;--ms-checkbox-bg: var(--ms-input-bg);--ms-checkbox-border: var(--ms-border);--ms-checkbox-border-radius: calc(.3 * var(--ms-rem));--ms-checkbox-checked-bg: var(--ms-accent-color);--ms-checkbox-checked-border: 1px solid var(--ms-accent-color);--ms-checkbox-checkmark-color: var(--ms-text-color-on-accent);--ms-checkbox-hover-border-color: var(--ms-accent-color);--ms-checkbox-disabled-bg: var(--ms-primary-bg);--ms-checkbox-disabled-border: var(--ms-border);--ms-checkbox-checked-bg-hover: var(--ms-accent-color-hover);--ms-checkbox-checked-border-color-hover: var(--ms-accent-color-hover);--ms-empty-padding: calc(1.6 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-empty-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-empty-color: var(--ms-text-color-3);--ms-loader-padding: calc(1.6 * var(--ms-rem));--ms-loader-gap: calc(.8 * var(--ms-rem));--ms-loading-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-loading-text-color: var(--ms-text-color-3);--ms-badges-gap: calc(.8 * var(--ms-rem));--ms-badges-margin-bottom: calc(.8 * var(--ms-rem));--ms-badges-margin-top: calc(.8 * var(--ms-rem));--ms-badges-margin-left: calc(.4 * var(--ms-rem));--ms-badges-margin-right: calc(.4 * var(--ms-rem));--ms-badge-gap: calc(.8 * var(--ms-rem));--ms-badge-height: calc(2.7 * var(--ms-rem));--ms-badge-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-font-weight: var(--base-font-weight-semibold, 600);--ms-badge-border-radius: var(--ms-border-radius-sm);--ms-badge-bg: var(--ms-accent-color-light);--ms-badge-bg-hover: var(--ms-badge-bg-hover);--ms-badge-bg-active: var(--ms-accent-color-light-hover);--ms-order-first: -1;--ms-badge-text-padding: 0 calc(.8 * var(--ms-rem));--ms-badge-text-bg: var(--ms-accent-color-light);--ms-badge-text-color: var(--ms-accent-color);--ms-badge-text-border: none;--ms-badge-remove-width: calc(2.7 * var(--ms-rem));--ms-badge-remove-bg: var(--ms-accent-color);--ms-badge-remove-color: var(--ms-text-color-on-accent);--ms-badge-remove-border: none;--ms-badge-remove-font-size: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-badge-remove-bg-hover: var(--ms-accent-color-hover);--ms-badge-remove-box-shadow-focus: 0 0 0 2px color-mix(in srgb, var(--ms-accent-color) 50%, transparent);--ms-icon-remove: "×";--ms-badge-counter-bg: transparent;--ms-badge-counter-border: var(--ms-border);--ms-badge-counter-border-radius: var(--ms-border-radius-sm);--ms-badge-counter-text-color: var(--ms-text-color-3);--ms-badge-counter-text-bg: var(--ms-badge-counter-text-bg);--ms-badge-counter-remove-bg: var(--ms-text-color-3);--ms-badge-counter-remove-color: var(--ms-text-color-on-accent);--ms-badge-counter-remove-bg-hover: var(--ms-badge-counter-remove-bg-hover);--ms-more-badge-bg: var(--ms-accent-color-light);--ms-more-badge-hover-bg: var(--ms-badge-bg-hover);--ms-more-badge-active-bg: var(--ms-accent-color-light-hover);--ms-count-display-margin-bottom: calc(.8 * var(--ms-rem));--ms-count-display-margin-top: calc(.8 * var(--ms-rem));--ms-count-display-margin-left: calc(.8 * var(--ms-rem));--ms-count-display-margin-right: calc(.8 * var(--ms-rem));--ms-counter-wrapper-bg: transparent;--ms-counter-wrapper-border: var(--ms-border);--ms-counter-wrapper-border-radius: var(--ms-border-radius-sm);--ms-counter-wrapper-padding: calc(.4 * var(--ms-rem)) calc(.8 * var(--ms-rem));--ms-counter-wrapper-gap: calc(.4 * var(--ms-rem));--ms-counter-wrapper-bg-hover: var(--ms-primary-bg);--ms-counter-wrapper-border-color-hover: var(--ms-accent-color);--ms-count-text-bg: transparent;--ms-count-text-border: none;--ms-count-text-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-count-text-color: var(--ms-text-color-1);--ms-count-clear-size: calc(1.6 * var(--ms-rem));--ms-count-clear-bg: transparent;--ms-count-clear-color: var(--ms-text-color-3);--ms-count-clear-font-size: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-count-clear-border-radius: 50%;--ms-count-clear-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-count-clear-color-hover: var(--ms-accent-color);--ms-icon-clear: "×";--ms-tooltip-color: var(--ms-tooltip-text-color);--ms-tooltip-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-tooltip-border-radius: var(--ms-border-radius-lg);--ms-tooltip-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-tooltip-max-width: calc(32 * var(--ms-rem));--ms-tooltip-shadow: 0 2px 8px rgba(0, 0, 0, .15);--ms-tooltip-z-index: 10000;--ms-z-index-popover: 10000;--ms-selected-popover-width: calc(32 * var(--ms-rem));--ms-selected-popover-max-height: calc(32 * var(--ms-rem));--ms-selected-popover-border: var(--ms-border);--ms-selected-popover-border-radius: var(--ms-border-radius-lg);--ms-selected-popover-box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ms-selected-popover-header-padding: calc(.8 * var(--ms-rem)) calc(1.2 * var(--ms-rem));--ms-selected-popover-header-bg: color-mix(in srgb, var(--ms-accent-color) 10%, transparent);--ms-selected-popover-header-border-bottom: var(--ms-border);--ms-selected-popover-header-font-size: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-selected-popover-header-font-weight: var(--base-font-weight-semibold, 600);--ms-selected-popover-header-color: var(--ms-text-color-1);--ms-popover-close-size: calc(2.4 * var(--ms-rem));--ms-selected-popover-close-bg: transparent;--ms-selected-popover-close-color: var(--ms-text-color-3);--ms-selected-popover-close-font-size: calc(var(--base-font-size-xl, 2) * var(--ms-rem));--ms-selected-popover-close-border-radius: 50%;--ms-selected-popover-close-bg-hover: color-mix(in srgb, var(--ms-accent-color) 20%, transparent);--ms-selected-popover-close-color-hover: var(--ms-accent-color);--ms-selected-popover-body-gap: calc(.4 * var(--ms-rem));--ms-selected-popover-body-padding: calc(.8 * var(--ms-rem));--ms-selected-popover-body-max-height: calc(28.8 * var(--ms-rem));--ms-font-size-2xs: calc(var(--base-font-size-2xs, 1) * var(--ms-rem));--ms-font-size-xs: calc(var(--base-font-size-xs, 1.2) * var(--ms-rem));--ms-font-size-sm: calc(var(--base-font-size-sm, 1.4) * var(--ms-rem));--ms-font-size-base: calc(var(--base-font-size-base, 1.6) * var(--ms-rem));--ms-font-size-lg: calc(var(--base-font-size-lg, 1.8) * var(--ms-rem));--ms-font-weight-normal: var(--base-font-weight-normal, 400);--ms-font-weight-medium: var(--base-font-weight-medium, 500);--ms-font-weight-semibold: var(--base-font-weight-semibold, 600);--ms-line-height-none: 1;--ms-line-height-tight: var(--base-line-height-tight, 1.25);--ms-line-height-normal: var(--base-line-height-normal, 1.5);--ms-line-height-relaxed: var(--base-line-height-relaxed, 1.75);--ms-border-radius-sm: calc(var(--base-border-radius-sm, .4) * var(--ms-rem));--ms-border-radius-md: calc(var(--base-border-radius-md, .6) * var(--ms-rem));--ms-border-radius-lg: calc(var(--base-border-radius-lg, .8) * var(--ms-rem));--ms-border-radius: var(--ms-border-radius-md);--ms-spacing-xs: calc(.4 * var(--ms-rem));--ms-spacing-sm: calc(.8 * var(--ms-rem));--ms-spacing-md: calc(1.2 * var(--ms-rem));--ms-spacing-lg: calc(1.6 * var(--ms-rem));--ms-transition-fast: .15s;--ms-transition-normal: .2s;--ms-easing-snappy: cubic-bezier(.4, 0, .2, 1);--ms-placeholder-opacity: .6;--ms-disabled-input-opacity: .6;--ms-scrollbar-width: 8px;--ms-scrollbar-track-bg: transparent;--ms-scrollbar-thumb-bg: var(--ms-border-color);--ms-scrollbar-thumb-bg-hover: var(--ms-text-color-3);--ms-scrollbar-thumb-border-radius: 4px}multi-select:not(:defined){display:block;min-height:calc(3.5 * var(--ms-rem));color:transparent!important;background:transparent}.ms-wrapper{display:flex;flex-direction:column;align-items:stretch}.ms-wrapper--inline{flex-direction:row;align-items:flex-start}.ms{position:relative;width:100%}.ms__input-wrapper{position:relative;display:flex;align-items:center}.ms__input{box-sizing:border-box;width:100%;font-family:inherit;height:var(--ms-input-height);padding:var(--ms-input-padding);padding-right:var(--ms-input-padding-right);font-size:var(--ms-input-font-size);border:var(--ms-input-border);border-radius:var(--ms-input-border-radius);background:var(--ms-input-bg);color:var(--ms-input-color);cursor:pointer;transition:border var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__input:hover:not(:focus):not(:disabled){border:var(--ms-input-border-hover)}.ms__input:focus{outline:none;border:var(--ms-input-border-focus)}.ms__input::placeholder{color:var(--ms-input-placeholder-color);opacity:0;transition:opacity var(--ms-transition-fast) var(--ms-easing-snappy)}:host([data-ready]) .ms__input::placeholder{opacity:var(--ms-placeholder-opacity)}.ms__input.ms__input--xs{font-size:var(--ms-input-size-xs-font);padding:var(--ms-input-size-xs-padding-v) var(--ms-input-size-xs-padding-h);padding-right:calc(var(--ms-input-size-xs-padding-h) * 2.5);height:var(--ms-input-size-xs-height)}.ms__input.ms__input--sm{font-size:var(--ms-input-size-sm-font);padding:var(--ms-input-size-sm-padding-v) var(--ms-input-size-sm-padding-h);padding-right:calc(var(--ms-input-size-sm-padding-h) * 2.5);height:var(--ms-input-size-sm-height)}.ms__input.ms__input--lg{font-size:var(--ms-input-size-lg-font);padding:var(--ms-input-size-lg-padding-v) var(--ms-input-size-lg-padding-h);padding-right:calc(var(--ms-input-size-lg-padding-h) * 2.5);height:var(--ms-input-size-lg-height)}.ms__input.ms__input--xl{font-size:var(--ms-input-size-xl-font);padding:var(--ms-input-size-xl-padding-v) var(--ms-input-size-xl-padding-h);padding-right:calc(var(--ms-input-size-xl-padding-h) * 2.5);height:var(--ms-input-size-xl-height)}.ms__toggle{position:absolute;right:var(--ms-toggle-right);top:50%;transform:var(--ms-transform-center-y);pointer-events:none;color:var(--ms-toggle-icon-color);transition:transform var(--ms-transition-fast) var(--ms-easing-snappy)}.ms--open .ms__toggle{transform:var(--ms-transform-center-y) rotate(var(--ms-transform-rotate-180));color:var(--ms-toggle-icon-color-open)}.ms__counter{position:absolute;right:var(--ms-counter-offset);top:50%;transform:var(--ms-transform-center-y);padding:var(--ms-counter-padding);background:var(--ms-counter-badge-bg);color:var(--ms-counter-badge-color);font-size:var(--ms-counter-font-size);font-weight:var(--ms-counter-font-weight);border-radius:var(--ms-counter-border-radius);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter:hover{background:var(--ms-counter-badge-bg-hover);transform:var(--ms-transform-center-y) scale(var(--ms-transform-scale-hover))}.ms__hint{display:none;position:absolute;z-index:var(--ms-z-index-popover);padding:var(--ms-hint-padding);background:var(--ms-hint-bg);border:var(--ms-hint-border);border-radius:var(--ms-hint-border-radius);box-shadow:var(--ms-hint-box-shadow);font-size:var(--ms-hint-font-size);color:var(--ms-hint-color);line-height:var(--ms-line-height-relaxed);max-width:100%}.ms__hint--visible{display:block}.ms__dropdown{display:none;position:absolute;font-family:inherit;z-index:var(--ms-z-index-dropdown);background:var(--ms-dropdown-bg);border:var(--ms-dropdown-border);border-radius:var(--ms-dropdown-border-radius);box-shadow:var(--ms-dropdown-box-shadow);max-height:var(--ms-options-max-height);overflow:hidden;color:var(--ms-dropdown-text-color)}.ms__dropdown--visible{display:flex;flex-direction:column}.ms__dropdown-inner{flex:1;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__dropdown-inner::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__dropdown-inner::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__dropdown-inner::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__dropdown--virtual{max-height:none}.ms__dropdown--virtual .ms__dropdown-inner{overflow-y:visible}.ms__actions{display:flex;flex-wrap:nowrap;gap:var(--ms-actions-gap);padding:var(--ms-actions-padding);border-bottom:var(--ms-actions-border-bottom)}.ms__actions--wrap{flex-wrap:wrap}.ms__actions--sticky{position:sticky;top:0;z-index:var(--ms-z-index-sticky);background:var(--ms-actions-bg)}.ms__action-btn{flex:1;font-family:inherit;padding:var(--ms-action-btn-padding);font-size:var(--ms-action-btn-font-size);border:var(--ms-action-btn-border);border-radius:var(--ms-action-btn-border-radius);background:var(--ms-action-button-bg);color:var(--ms-action-button-color);cursor:pointer;transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__action-btn:hover{background:var(--ms-action-button-bg-hover);border-color:var(--ms-action-button-border-color-hover)}.ms__action-btn:active{transform:scale(var(--ms-transform-scale-active))}.ms__action-btn:disabled,.ms__action-btn[disabled]{opacity:var(--ms-disabled-opacity);cursor:not-allowed;pointer-events:none}.ms__options{padding:var(--ms-options-padding);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__options::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__options::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__options::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__options--virtual .ms__option{height:var(--ms-option-height, 50px);min-height:var(--ms-option-height, 50px);max-height:var(--ms-option-height, 50px);overflow:hidden;box-sizing:border-box}.ms__group+.ms__group{border-top:var(--ms-group-border-top);margin-top:var(--ms-group-margin-top);padding-top:var(--ms-group-padding-top)}.ms__group-label{padding:var(--ms-group-label-padding);font-size:var(--ms-group-label-font-size);font-weight:var(--ms-group-label-font-weight);color:var(--ms-group-label-color);text-transform:var(--ms-group-label-transform);letter-spacing:var(--ms-group-label-letter-spacing)}.ms__option{display:flex;align-items:var(--ms-checkbox-align, center);gap:var(--ms-option-gap);padding:var(--ms-option-padding);color:var(--ms-option-text-color);background:var(--ms-option-bg);cursor:pointer}.ms__option:hover{background:var(--ms-option-bg-hover);color:var(--ms-option-color-hover, inherit)}.ms__option--focused{background:var(--ms-option-bg-focused);color:var(--ms-option-color-focused, inherit);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--matched{background:var(--ms-option-bg-matched);color:var(--ms-option-color-matched, inherit);border-left:var(--ms-option-border-matched)}.ms__option--selected{background:var(--ms-option-bg-selected)}.ms__option--selected:hover{background:var(--ms-option-bg-selected-hover, var(--ms-option-bg-selected))}.ms__option--disabled{opacity:var(--ms-disabled-opacity);cursor:not-allowed;background:var(--ms-option-disabled-bg)}.ms__option--disabled:hover{background:var(--ms-option-disabled-bg)}.ms__option--focused:hover{background:var(--ms-option-bg-focused-hover);color:var(--ms-option-color-focused-hover, var(--ms-option-color-focused, var(--ms-option-text-color)))}.ms__option--matched:hover{background:var(--ms-option-bg-matched-hover);color:var(--ms-option-color-matched-hover, var(--ms-option-color-matched, var(--ms-option-text-color)))}.ms__option--selected.ms__option--focused{background:var(--ms-option-bg-selected-focused);outline:var(--ms-option-outline-focused);outline-offset:var(--ms-option-focus-outline-offset)}.ms__option--selected.ms__option--matched{background:var(--ms-option-bg-selected-matched);border-left:var(--ms-option-border-matched)}.ms__option--disabled.ms__option--selected{background:var(--ms-option-bg-disabled-selected)}.ms__option--disabled.ms__option--focused{outline:none}.ms__option[data-checkbox-align=top]{--ms-checkbox-align: flex-start}.ms__option[data-checkbox-align=bottom]{--ms-checkbox-align: flex-end}.ms__checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;position:relative;margin-top:var(--ms-checkbox-margin-top);margin-right:var(--ms-checkbox-margin-right);margin-bottom:var(--ms-checkbox-margin-bottom);margin-left:var(--ms-checkbox-margin-left);width:var(--ms-checkbox-size);height:var(--ms-checkbox-size);transform:scale(var(--ms-checkbox-scale));transform-origin:top left;cursor:pointer;background:var(--ms-checkbox-bg);border:var(--ms-checkbox-border);border-radius:var(--ms-checkbox-border-radius);transition:background-color .15s ease,border-color .15s ease}.ms__checkbox:after{content:"";position:absolute;display:none;left:50%;top:40%;width:30%;height:55%;transform:translate(-50%,-50%) rotate(45deg);border:solid var(--ms-checkbox-checkmark-color);border-width:0 2px 2px 0}.ms__checkbox:hover:not(:disabled){border-color:var(--ms-checkbox-hover-border-color)}.ms__checkbox:checked{background:var(--ms-checkbox-checked-bg);border:var(--ms-checkbox-checked-border)}.ms__checkbox:checked:after{display:block}.ms__checkbox:checked:hover:not(:disabled){background:var(--ms-checkbox-checked-bg-hover);border-color:var(--ms-checkbox-checked-border-color-hover)}.ms__checkbox:focus-visible{outline:2px solid var(--ms-checkbox-checked-bg);outline-offset:2px}.ms__checkbox:disabled{cursor:not-allowed;background:var(--ms-checkbox-disabled-bg);border:var(--ms-checkbox-disabled-border);opacity:.6}.ms__checkbox:disabled:checked{background:var(--ms-checkbox-disabled-bg)}.ms__option--disabled .ms__checkbox{cursor:not-allowed}.ms__option-content{flex:1;display:flex;align-items:center;gap:var(--ms-option-content-gap);min-width:0}.ms__option-icon{flex-shrink:0;width:var(--ms-option-icon-size);height:var(--ms-option-icon-size);display:flex;align-items:center;justify-content:center;font-size:var(--ms-option-icon-font-size)}.ms__option-icon svg{width:100%;height:100%;fill:currentColor}.ms__option-text{flex:1;min-width:0}.ms__option-title{font-size:var(--ms-option-title-font-size);color:var(--ms-option-title-color);line-height:var(--ms-line-height-relaxed)}.ms__option:hover .ms__option-title{color:var(--ms-option-title-color-hover, var(--ms-option-title-color))}.ms__option--selected .ms__option-title{color:var(--ms-option-title-color-selected, var(--ms-option-title-color))}.ms__option--selected:hover .ms__option-title{color:var(--ms-option-title-color-selected-hover, var(--ms-option-title-color-selected, var(--ms-option-title-color)))}.ms__option-title mark{background:var(--ms-option-mark-bg);color:var(--ms-option-mark-color);font-weight:var(--ms-option-mark-font-weight)}.ms__option-subtitle{margin-top:var(--ms-option-subtitle-margin-top);font-size:var(--ms-option-subtitle-font-size);color:var(--ms-option-subtitle-color);line-height:var(--ms-option-subtitle-line-height)}.ms__option:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-hover, var(--ms-option-subtitle-color))}.ms__option--selected .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color))}.ms__option--selected:hover .ms__option-subtitle{color:var(--ms-option-subtitle-color-selected-hover, var(--ms-option-subtitle-color-selected, var(--ms-option-subtitle-color)))}.ms__empty{padding:var(--ms-empty-padding);text-align:center;font-size:var(--ms-empty-font-size);color:var(--ms-empty-color)}.ms__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ms-loader-padding);gap:var(--ms-loader-gap)}.ms__loading-text{font-size:var(--ms-loading-text-font-size);color:var(--ms-loading-color)}.ms__badges{display:flex;flex-wrap:wrap;gap:var(--ms-badges-gap);padding:0}.ms__badges:empty{display:none}.ms__badges--bottom{margin-top:var(--ms-badges-margin-bottom)}.ms__badges--top{margin-bottom:var(--ms-badges-margin-top);order:var(--ms-order-first)}.ms__badges--left{order:var(--ms-order-first);margin-right:var(--ms-badges-margin-left);justify-content:flex-end}.ms__badges--right{margin-left:var(--ms-badges-margin-right);justify-content:flex-start}.ms__count-display{display:flex;align-items:center}.ms__count-display:empty{display:none}.ms__count-display--bottom{margin-top:var(--ms-count-display-margin-bottom)}.ms__count-display--top{margin-bottom:var(--ms-count-display-margin-top);order:var(--ms-order-first)}.ms__count-display--left{order:var(--ms-order-first);margin-right:var(--ms-count-display-margin-left);justify-content:flex-start}.ms__count-display--right{margin-left:var(--ms-count-display-margin-right);justify-content:flex-end}.ms__counter-wrapper{display:inline-flex;align-items:center;gap:var(--ms-counter-wrapper-gap);background:var(--ms-counter-wrapper-bg);border:var(--ms-counter-wrapper-border);border-radius:var(--ms-counter-wrapper-border-radius);padding:var(--ms-counter-wrapper-padding);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__counter-wrapper:hover{background:var(--ms-counter-wrapper-bg-hover);border-color:var(--ms-counter-wrapper-border-color-hover)}.ms__count-text{display:inline-flex;align-items:center;background:var(--ms-count-text-bg);border:var(--ms-count-text-border);padding:0;font-size:var(--ms-count-text-font-size);color:var(--ms-count-text-color);cursor:pointer;transition:color var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--ms-count-clear-size);height:var(--ms-count-clear-size);padding:0;border:none;background:var(--ms-count-clear-bg);color:var(--ms-count-clear-color);font-size:var(--ms-count-clear-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-count-clear-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__count-clear:hover{background:var(--ms-count-clear-bg-hover);color:var(--ms-count-clear-color-hover)}.ms__count-clear:before{content:var(--ms-icon-clear)}.ms__badge{display:inline-flex;align-items:center;height:var(--ms-badge-height);font-size:var(--ms-badge-font-size);font-weight:var(--ms-badge-font-weight);line-height:var(--ms-line-height-none);border-radius:var(--ms-badge-border-radius);overflow:hidden;max-width:100%}.ms__badge-text{display:flex;align-items:center;box-sizing:border-box;height:100%;padding:var(--ms-badge-text-padding);background:var(--ms-badge-text-bg);color:var(--ms-badge-text-color);border:var(--ms-badge-text-border);border-right:none;border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--ms-transition-normal) ease,color var(--ms-transition-normal) ease}.ms__badge:hover .ms__badge-text{background:var(--ms-badge-text-bg-hover, var(--ms-badge-text-bg));color:var(--ms-badge-text-color-hover, var(--ms-badge-text-color))}.ms__badge-remove{display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit;width:var(--ms-badge-remove-width);height:100%;flex-shrink:0;background:var(--ms-badge-remove-bg);color:var(--ms-badge-remove-color);border:var(--ms-badge-remove-border);border-left:none;border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;cursor:pointer;transition:background-color var(--ms-transition-normal) ease;font-size:var(--ms-badge-remove-font-size)}.ms__badge-remove:hover{background:var(--ms-badge-remove-bg-hover)}.ms__badge-remove:focus{outline:none;box-shadow:var(--ms-badge-remove-box-shadow-focus)}.ms__badge-remove:before{content:var(--ms-icon-remove);font-size:var(--ms-font-size-base);line-height:var(--ms-line-height-none)}.ms__badge--counter{cursor:pointer}.ms__badge--counter .ms__badge-text{background:var(--ms-badge-counter-text-bg);color:var(--ms-badge-counter-text-color);border:var(--ms-badge-counter-border);border-right:none}.ms__badge--counter .ms__badge-remove{background:var(--ms-badge-counter-remove-bg);color:var(--ms-badge-counter-remove-color);border:var(--ms-badge-counter-border);border-left:none}.ms__badge--counter .ms__badge-remove:hover{background:var(--ms-badge-counter-remove-bg-hover)}.ms__badge--more{cursor:pointer}.ms__badge-tooltip{position:fixed;z-index:var(--ms-tooltip-z-index);opacity:0;visibility:hidden;transition:opacity var(--ms-transition-normal) ease,visibility var(--ms-transition-normal) ease;background:var(--ms-tooltip-bg);color:var(--ms-tooltip-text-color);padding:var(--ms-tooltip-padding);border-radius:var(--ms-tooltip-border-radius);font-size:var(--ms-tooltip-font-size);line-height:var(--ms-line-height-relaxed);max-width:var(--ms-tooltip-max-width);word-wrap:break-word;white-space:pre-wrap;box-shadow:var(--ms-tooltip-shadow);pointer-events:none}.ms__badge-tooltip--visible{opacity:1;visibility:visible}.ms__selected-popover{display:none;position:absolute;z-index:var(--ms-z-index-popover);background:var(--ms-selected-popover-bg);border:var(--ms-selected-popover-border);border-radius:var(--ms-selected-popover-border-radius);box-shadow:var(--ms-selected-popover-box-shadow);width:var(--ms-selected-popover-width);max-height:var(--ms-selected-popover-max-height);overflow:hidden}.ms__selected-popover--visible{display:flex;flex-direction:column}.ms__selected-popover--virtual{display:block;overflow:visible;max-height:none}.ms__selected-popover-header{display:flex;align-items:center;justify-content:space-between;padding:var(--ms-selected-popover-header-padding);background:var(--ms-selected-popover-header-bg);border-bottom:var(--ms-selected-popover-header-border-bottom);font-size:var(--ms-selected-popover-header-font-size);font-weight:var(--ms-selected-popover-header-font-weight);color:var(--ms-selected-popover-header-color)}.ms__selected-popover-close{display:flex;align-items:center;justify-content:center;width:var(--ms-popover-close-size);height:var(--ms-popover-close-size);padding:0;border:none;background:var(--ms-selected-popover-close-bg);color:var(--ms-selected-popover-close-color);font-size:var(--ms-selected-popover-close-font-size);line-height:var(--ms-line-height-none);cursor:pointer;border-radius:var(--ms-selected-popover-close-border-radius);transition:all var(--ms-transition-fast) var(--ms-easing-snappy)}.ms__selected-popover-close:hover{background:var(--ms-selected-popover-close-bg-hover);color:var(--ms-selected-popover-close-color-hover)}.ms__selected-popover-body{display:flex;flex-direction:column;gap:var(--ms-selected-popover-body-gap);padding:var(--ms-selected-popover-body-padding);overflow-y:auto;max-height:var(--ms-selected-popover-body-max-height);scrollbar-width:thin;scrollbar-color:var(--ms-scrollbar-thumb-bg) var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar{width:var(--ms-scrollbar-width)}.ms__selected-popover-body::-webkit-scrollbar-track{background:var(--ms-scrollbar-track-bg)}.ms__selected-popover-body::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb-bg);border-radius:var(--ms-scrollbar-thumb-border-radius)}.ms__selected-popover-body::-webkit-scrollbar-thumb:hover{background:var(--ms-scrollbar-thumb-bg-hover)}.ms__selected-popover-body .ms__badge{width:100%;min-height:fit-content;line-height:var(--ms-line-height-relaxed)}.ms__selected-popover-body .ms__badge-text{flex:1;min-width:0;white-space:normal;word-wrap:break-word}.ms__selected-popover-body--virtual{display:block;max-height:none;padding:0}.ms__selected-popover-body--virtual .ms__badge{height:var(--ms-badge-height-virtual, 36px);min-height:var(--ms-badge-height-virtual, 36px);max-height:var(--ms-badge-height-virtual, 36px);margin-bottom:var(--ms-selected-popover-body-gap);overflow:hidden;box-sizing:border-box}.ms__selected-popover-body--virtual .ms__badge-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms--rtl .ms__input-wrapper{direction:rtl}.ms--rtl .ms__input{text-align:right;padding-left:var(--ms-input-padding-right);padding-right:var(--ms-input-padding-h)}.ms--rtl .ms__toggle{left:var(--ms-toggle-right)!important;right:auto!important}.ms--rtl .ms__counter{left:var(--ms-counter-offset)!important;right:auto!important}.ms--rtl .ms__dropdown{direction:rtl;text-align:right}.ms--rtl .ms__option{flex-direction:row-reverse}.ms--rtl .ms__checkbox{margin-left:var(--ms-spacing-sm);margin-right:0}.ms--rtl .ms__option-content{text-align:right}.ms--rtl .ms__option-icon{margin-left:var(--ms-spacing-xs);margin-right:0}.ms--rtl .ms__badges{direction:rtl}.ms--rtl .ms__badge{flex-direction:row-reverse}.ms--rtl .ms__badge-remove{border-radius:var(--ms-badge-border-radius) 0 0 var(--ms-badge-border-radius);border-left:var(--ms-badge-remove-border);border-right:none}.ms--rtl .ms__badge-text{border-radius:0 var(--ms-badge-border-radius) var(--ms-badge-border-radius) 0;border-right:var(--ms-badge-text-border);border-left:none}.ms--rtl .ms__count-display{direction:rtl}.ms--rtl .ms__counter-wrapper{flex-direction:row-reverse}.ms--rtl .ms__selected-popover{direction:rtl;text-align:right}.ms--rtl .ms__actions{direction:rtl}.ms--rtl .ms__group-label,.ms--rtl .ms__empty{text-align:right}.ms--rtl .ms__hint{direction:rtl;text-align:right}.ms--disabled .ms__input{opacity:var(--ms-disabled-input-opacity);cursor:not-allowed;background:var(--ms-input-bg-disabled)}.ms--disabled .ms__toggle{opacity:var(--ms-disabled-input-opacity)}.ms--no-checkboxes .ms__option{gap:0;padding-left:var(--ms-option-padding-h)}.ms--no-checkboxes .ms__option-content{padding-left:0}.ms-debug-info{margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:calc(var(--base-border-radius-md, .6) * var(--ms-rem));font-size:calc(1.2 * var(--ms-rem));color:#111827}.ms-debug-info details summary{cursor:pointer;font-weight:600;color:#2563eb;-webkit-user-select:none;user-select:none;padding:calc(.4 * var(--ms-rem));border-radius:calc(var(--base-border-radius-sm, .4) * var(--ms-rem))}.ms-debug-info details summary:hover{background-color:#f3f4f6}.ms-debug-info details summary:focus{outline:2px solid #3b82f6;outline-offset:2px}.ms-debug-info .ms-debug-stats{display:flex;flex-direction:column;gap:calc(.4 * var(--ms-rem));margin-top:calc(.4 * var(--ms-rem));padding:calc(.4 * var(--ms-rem));background-color:#fff;border-radius:calc(var(--base-border-radius-sm, .4) * var(--ms-rem))}.ms-debug-info .ms-debug-stats span{display:flex;justify-content:space-between;padding:2px 4px;font-family:monospace;font-size:calc(1 * var(--ms-rem))}.ms-debug-info .ms-debug-stats span:before{content:"•";margin-right:calc(.4 * var(--ms-rem));color:#3b82f6}',us=typeof HTMLElement<"u"?HTMLElement:class{},Ae=new Set;function dt(){return Array.from(Ae)}class Ie extends us{constructor(){super();m(this,"picker");m(this,"containerElement");m(this,"shadow");m(this,"_options");m(this,"_valueMember");m(this,"_getValueCallback");m(this,"_displayValueMember");m(this,"_getDisplayValueCallback");m(this,"_getBadgeDisplayCallback");m(this,"_getBadgeClassCallback");m(this,"_customStylesCallback");m(this,"_searchValueMember");m(this,"_getSearchValueCallback");m(this,"_iconMember");m(this,"_getIconCallback");m(this,"_subtitleMember");m(this,"_getSubtitleCallback");m(this,"_groupMember");m(this,"_getGroupCallback");m(this,"_renderGroupLabelContentCallback");m(this,"_disabledMember");m(this,"_getDisabledCallback");m(this,"_getValueFormatCallback");m(this,"_getBadgeTooltipCallback");m(this,"_getRemoveButtonTooltipCallback");m(this,"_renderOptionContentCallback");m(this,"_renderBadgeContentCallback");m(this,"_renderSelectedItemContentCallback");m(this,"_getSelectedItemClassCallback");m(this,"_renderSelectedContentCallback");m(this,"_getCounterCallback");m(this,"_actionButtons");m(this,"_beforeSearchCallback");m(this,"_searchCallback");m(this,"_addNewCallback");m(this,"_selectCallback");m(this,"_deselectCallback");m(this,"_changeCallback");m(this,"_declarativeSelectedValues");this.shadow=this.attachShadow({mode:"open"});const t=document.createElement("style");t.textContent=ps,this.shadow.appendChild(t),requestAnimationFrame(()=>{this.setAttribute("data-ready","")})}static get observedAttributes(){return["search-hint","search-placeholder","multiple","allow-groups","show-checkboxes","sticky-actions","close-on-select","lock-placement","dropdown-min-width","dropdown-max-width","badges-display-mode","badges-threshold","badges-max-visible","badges-threshold-mode","badges-position","show-counter","keep-options-on-search","should-keep-search-on-close","max-height","empty-message","loading-message","min-search-length","enable-search","search-input-mode","search-mode","actions-layout","allow-add-new","initial-values","enable-virtual-scroll","virtual-scroll-threshold","option-height","badge-height","virtual-scroll-buffer","value-member","display-value-member","search-value-member","icon-member","subtitle-member","group-member","disabled-member","name","value-format","enable-badge-tooltips","badge-tooltip-placement","remove-button-tooltip-text","show-debug-info"]}connectedCallback(){Ae.add(this),this.render();const t=this.parseDeclarativeOptions();t&&(this._options&&this._options.length>0&&k.warn("[MultiSelectElement] Both declarative <option> elements and programmatic .options detected. Using declarative options."),this._options=t),this.initializePicker()}disconnectedCallback(){Ae.delete(this),this.picker&&this.picker.destroy()}attributeChangedCallback(t,s,i){s!==i&&this.picker&&t!=="initial-values"&&(this.picker.destroy(),this.initializePicker())}render(){this.containerElement=document.createElement("div"),this.containerElement.setAttribute("data-multiselect",""),this.className&&(this.containerElement.className=this.className),this.shadow.appendChild(this.containerElement),this.getAttribute("show-debug-info")==="true"&&this.renderDebugInfo()}renderDebugInfo(){const t=this.shadow.querySelector(".ms-debug-info");t&&t.remove();const s=document.createElement("div");s.className="ms-debug-info";const i=document.createElement("details"),r=document.createElement("summary");r.textContent="Debug Info";const n=document.createElement("div");n.className="ms-debug-stats",i.appendChild(r),i.appendChild(n),s.appendChild(i),this.shadow.appendChild(s),this.updateDebugInfo()}updateDebugInfo(){var h,g;const t=this.shadow.querySelector(".ms-debug-stats");if(!t||!this.picker)return;const s="1.8.2",i=dt().length,n=this.picker.getSelected().length,a=((h=this._options)==null?void 0:h.length)||0,l=this.picker,c=l.isOpen||!1,d=l.searchTerm||"",p=l.isLoading||!1,u=((g=l.filteredOptions)==null?void 0:g.length)||0;t.innerHTML=`
|
|
47
47
|
<span>Version: ${s}</span>
|
|
48
48
|
<span>Total Instances: ${i}</span>
|
|
49
49
|
<span>Options: ${a}</span>
|
|
@@ -52,4 +52,4 @@ ${d}`:c,v.debug(`[${this.instanceId}] Using default content: "${r}"`)}typeof r==
|
|
|
52
52
|
<span>Dropdown: ${c?"Open":"Closed"}</span>
|
|
53
53
|
<span>Search: ${d||"none"}</span>
|
|
54
54
|
<span>Loading: ${p?"Yes":"No"}</span>
|
|
55
|
-
`,setTimeout(()=>{this.getAttribute("show-debug-info")==="true"&&this.updateDebugInfo()},500)}parseDeclarativeOptions(){var r,n,a,l;const t=[],s=Array.from(this.children);if(s.length===0)return null;let i=!1;for(const c of s)if(c.tagName==="OPTION"){const d=c,p={value:d.value||((r=d.textContent)==null?void 0:r.trim())||"",label:((n=d.textContent)==null?void 0:n.trim())||d.value||""};d.hasAttribute("selected")&&(this._declarativeSelectedValues||(this._declarativeSelectedValues=[]),this._declarativeSelectedValues.push(p.value)),d.hasAttribute("disabled")&&(p.disabled=!0),d.hasAttribute("data-icon")&&(p.icon=d.getAttribute("data-icon")),d.hasAttribute("data-subtitle")&&(p.subtitle=d.getAttribute("data-subtitle")),t.push(p),i=!0}else if(c.tagName==="OPTGROUP"){const d=c,p=d.label||d.getAttribute("label")||"Group",u=Array.from(d.querySelectorAll("option"));for(const h of u){const g={value:h.value||((a=h.textContent)==null?void 0:a.trim())||"",label:((l=h.textContent)==null?void 0:l.trim())||h.value||"",group:p};h.hasAttribute("selected")&&(this._declarativeSelectedValues||(this._declarativeSelectedValues=[]),this._declarativeSelectedValues.push(g.value)),h.hasAttribute("disabled")&&(g.disabled=!0),h.hasAttribute("data-icon")&&(g.icon=h.getAttribute("data-icon")),h.hasAttribute("data-subtitle")&&(g.subtitle=h.getAttribute("data-subtitle")),t.push(g),i=!0}}return i?(k.debug(`[MultiSelectElement] Parsed ${t.length} declarative options from Light DOM`),s.forEach(c=>{(c.tagName==="OPTION"||c.tagName==="OPTGROUP")&&c.remove()}),t):null}initializePicker(){if(!this.containerElement)return;let t;if(this._declarativeSelectedValues&&this._declarativeSelectedValues.length>0)t=this._declarativeSelectedValues,k.debug(`[MultiSelectElement] Using ${t.length} declaratively selected values`);else{const i=this.getAttribute("initial-values");if(i)try{t=JSON.parse(i)}catch(r){k.error("[MultiSelectElement] Failed to parse initial-values:",r)}}const s={searchHint:this.getAttribute("search-hint")||void 0,searchPlaceholder:this.getAttribute("search-placeholder")||"Search...",dropdownMinWidth:this.getAttribute("dropdown-min-width")||void 0,dropdownMaxWidth:this.getAttribute("dropdown-max-width")||void 0,badgesDisplayMode:this.getAttribute("badges-display-mode")||"badges",badgesPosition:this.getAttribute("badges-position")||"bottom",badgesThresholdMode:this.getAttribute("badges-threshold-mode")||"count",maxHeight:this.getAttribute("max-height")||"20rem",emptyMessage:this.getAttribute("empty-message")||"No results found",loadingMessage:this.getAttribute("loading-message")||"Loading...",searchInputMode:this.getAttribute("search-input-mode")||"normal",searchMode:this.getAttribute("search-mode")||"filter",actionsLayout:this.getAttribute("actions-layout")||"nowrap",badgesThreshold:this.getAttribute("badges-threshold")?parseInt(this.getAttribute("badges-threshold")):void 0,badgesMaxVisible:this.getAttribute("badges-max-visible")?parseInt(this.getAttribute("badges-max-visible")):void 0,minSearchLength:this.getAttribute("min-search-length")?parseInt(this.getAttribute("min-search-length")):0,isMultipleEnabled:this.getAttribute("multiple")!=="false",isGroupsAllowed:this.getAttribute("allow-groups")!=="false",isCheckboxesShown:this.getAttribute("show-checkboxes")!=="false",isActionsSticky:this.getAttribute("sticky-actions")!=="false",isCloseOnSelect:this.getAttribute("close-on-select")==="true",isPlacementLocked:this.getAttribute("lock-placement")!=="false",isSearchEnabled:this.getAttribute("enable-search")!=="false",isAddNewAllowed:this.getAttribute("allow-add-new")==="true",isCounterShown:this.getAttribute("show-counter")==="true",isKeepOptionsOnSearch:this.getAttribute("keep-options-on-search")!=="false",shouldKeepSearchOnClose:this.getAttribute("should-keep-search-on-close")!=="false",isVirtualScrollEnabled:this.getAttribute("enable-virtual-scroll")==="true",actionButtons:this._actionButtons,checkboxAlign:this.getAttribute("checkbox-align")||"center",virtualScrollThreshold:this.getAttribute("virtual-scroll-threshold")?parseInt(this.getAttribute("virtual-scroll-threshold")):100,optionHeight:this.getAttribute("option-height")?parseInt(this.getAttribute("option-height")):50,badgeHeight:this.getAttribute("badge-height")?parseInt(this.getAttribute("badge-height")):36,virtualScrollBuffer:this.getAttribute("virtual-scroll-buffer")?parseInt(this.getAttribute("virtual-scroll-buffer")):10,valueMember:this.getAttribute("value-member")||this._valueMember,displayValueMember:this.getAttribute("display-value-member")||this._displayValueMember,searchValueMember:this.getAttribute("search-value-member")||this._searchValueMember,iconMember:this.getAttribute("icon-member")||this._iconMember,subtitleMember:this.getAttribute("subtitle-member")||this._subtitleMember,groupMember:this.getAttribute("group-member")||this._groupMember,disabledMember:this.getAttribute("disabled-member")||this._disabledMember,getValueCallback:this._getValueCallback,getDisplayValueCallback:this._getDisplayValueCallback,getBadgeDisplayCallback:this._getBadgeDisplayCallback,getBadgeClassCallback:this._getBadgeClassCallback,customStylesCallback:this._customStylesCallback,getSearchValueCallback:this._getSearchValueCallback,getIconCallback:this._getIconCallback,getSubtitleCallback:this._getSubtitleCallback,getGroupCallback:this._getGroupCallback,renderGroupLabelContentCallback:this._renderGroupLabelContentCallback,getDisabledCallback:this._getDisabledCallback,renderOptionContentCallback:this._renderOptionContentCallback,renderBadgeContentCallback:this._renderBadgeContentCallback,renderSelectedItemContentCallback:this._renderSelectedItemContentCallback,getSelectedItemClassCallback:this._getSelectedItemClassCallback,renderSelectedContentCallback:this._renderSelectedContentCallback,formFieldId:this.getAttribute("name")||void 0,valueFormat:this.getAttribute("value-format")||"json",getValueFormatCallback:this._getValueFormatCallback,isBadgeTooltipsEnabled:this.getAttribute("enable-badge-tooltips")==="true",getBadgeTooltipCallback:this._getBadgeTooltipCallback,getRemoveButtonTooltipCallback:this._getRemoveButtonTooltipCallback,removeButtonTooltipText:this.getAttribute("remove-button-tooltip-text")||void 0,badgeTooltipPlacement:this.getAttribute("badge-tooltip-placement")||"top",badgeTooltipDelay:parseInt(this.getAttribute("badge-tooltip-delay")||"100"),badgeTooltipOffset:parseInt(this.getAttribute("badge-tooltip-offset")||"8"),getCounterCallback:this._getCounterCallback||((i,r)=>r!==void 0?`+${r} more`:`${i} selected`),options:this._options,beforeSearchCallback:this._beforeSearchCallback,searchCallback:this._searchCallback,addNewCallback:this._addNewCallback,selectCallback:i=>{var r;this._selectCallback&&this._selectCallback(i),this.dispatchEvent(new CustomEvent("select",{detail:{option:i,selectedOptions:(r=this.picker)==null?void 0:r.getSelected(),selectedValues:(()=>{var a;const n=(a=this.picker)==null?void 0:a.getValue();return n==null?[]:Array.isArray(n)?n:[n]})()}}))},deselectCallback:i=>{var r;this._deselectCallback&&this._deselectCallback(i),this.dispatchEvent(new CustomEvent("deselect",{detail:{option:i,selectedOptions:(r=this.picker)==null?void 0:r.getSelected(),selectedValues:(()=>{var a;const n=(a=this.picker)==null?void 0:a.getValue();return n==null?[]:Array.isArray(n)?n:[n]})()}}))},changeCallback:i=>{this._changeCallback&&this._changeCallback(i),this.dispatchEvent(new CustomEvent("change",{detail:{selectedOptions:i,selectedValues:(()=>{var n;const r=(n=this.picker)==null?void 0:n.getValue();return r==null?[]:Array.isArray(r)?r:[r]})()}}))},container:this.shadow,hostElement:this};if(t&&(this.containerElement.dataset.initialValues=JSON.stringify(t)),this.picker=new ct(this.containerElement,s),this._customStylesCallback){const i=this._customStylesCallback();if(i){const r=document.createElement("style");r.className="ms-custom-styles",r.textContent=i,this.shadow.insertBefore(r,this.shadow.firstChild)}}}reinitialize(){this.picker&&(this.picker.destroy(),this.initializePicker())}get options(){return this._options}set options(t){this._options=t,this.reinitialize()}set valueMember(t){this._valueMember=t||void 0,t?this.setAttribute("value-member",t):this.removeAttribute("value-member")}get valueMember(){return this.getAttribute("value-member")}set displayValueMember(t){this._displayValueMember=t||void 0,t?this.setAttribute("display-value-member",t):this.removeAttribute("display-value-member")}get displayValueMember(){return this.getAttribute("display-value-member")}set searchValueMember(t){this._searchValueMember=t||void 0,t?this.setAttribute("search-value-member",t):this.removeAttribute("search-value-member")}get searchValueMember(){return this.getAttribute("search-value-member")}set iconMember(t){this._iconMember=t||void 0,t?this.setAttribute("icon-member",t):this.removeAttribute("icon-member")}get iconMember(){return this.getAttribute("icon-member")}set subtitleMember(t){this._subtitleMember=t||void 0,t?this.setAttribute("subtitle-member",t):this.removeAttribute("subtitle-member")}get subtitleMember(){return this.getAttribute("subtitle-member")}set groupMember(t){this._groupMember=t||void 0,t?this.setAttribute("group-member",t):this.removeAttribute("group-member")}get groupMember(){return this.getAttribute("group-member")}set disabledMember(t){this._disabledMember=t||void 0,t?this.setAttribute("disabled-member",t):this.removeAttribute("disabled-member")}get disabledMember(){return this.getAttribute("disabled-member")}set getValueCallback(t){this._getValueCallback=t,this.reinitialize()}get getValueCallback(){return this._getValueCallback}set getDisplayValueCallback(t){this._getDisplayValueCallback=t,this.reinitialize()}get getDisplayValueCallback(){return this._getDisplayValueCallback}set getBadgeDisplayCallback(t){this._getBadgeDisplayCallback=t,this.reinitialize()}get getBadgeDisplayCallback(){return this._getBadgeDisplayCallback}set getBadgeClassCallback(t){this._getBadgeClassCallback=t,this.reinitialize()}get getBadgeClassCallback(){return this._getBadgeClassCallback}set customStylesCallback(t){if(this._customStylesCallback=t,this.picker&&t){const s=t();if(s){const i=this.shadow.querySelector("style.ms-custom-styles");i&&i.remove();const r=document.createElement("style");r.className="ms-custom-styles",r.textContent=s,this.shadow.appendChild(r),this.picker.renderBadges()}}}get customStylesCallback(){return this._customStylesCallback}set getSearchValueCallback(t){this._getSearchValueCallback=t,this.reinitialize()}get getSearchValueCallback(){return this._getSearchValueCallback}set getIconCallback(t){this._getIconCallback=t,this.reinitialize()}get getIconCallback(){return this._getIconCallback}set getSubtitleCallback(t){this._getSubtitleCallback=t,this.reinitialize()}get getSubtitleCallback(){return this._getSubtitleCallback}set getGroupCallback(t){this._getGroupCallback=t,this.reinitialize()}get getGroupCallback(){return this._getGroupCallback}set renderGroupLabelContentCallback(t){this._renderGroupLabelContentCallback=t,this.reinitialize()}get renderGroupLabelContentCallback(){return this._renderGroupLabelContentCallback}set getDisabledCallback(t){this._getDisabledCallback=t,this.reinitialize()}get getDisabledCallback(){return this._getDisabledCallback}set renderOptionContentCallback(t){this._renderOptionContentCallback=t,this.reinitialize()}get renderOptionContentCallback(){return this._renderOptionContentCallback}set renderBadgeContentCallback(t){this._renderBadgeContentCallback=t,this.reinitialize()}get renderBadgeContentCallback(){return this._renderBadgeContentCallback}set renderSelectedItemContentCallback(t){this._renderSelectedItemContentCallback=t,this.reinitialize()}get renderSelectedItemContentCallback(){return this._renderSelectedItemContentCallback}set getSelectedItemClassCallback(t){this._getSelectedItemClassCallback=t,this.reinitialize()}get getSelectedItemClassCallback(){return this._getSelectedItemClassCallback}set renderSelectedContentCallback(t){this._renderSelectedContentCallback=t,this.reinitialize()}get renderSelectedContentCallback(){return this._renderSelectedContentCallback}set name(t){t?this.setAttribute("name",t):this.removeAttribute("name")}get name(){return this.getAttribute("name")}set valueFormat(t){t?this.setAttribute("value-format",t):this.removeAttribute("value-format")}get valueFormat(){return this.getAttribute("value-format")}set getValueFormatCallback(t){this._getValueFormatCallback=t,this.reinitialize()}get getValueFormatCallback(){return this._getValueFormatCallback}set thresholdMode(t){t?this.setAttribute("threshold-mode",t):this.removeAttribute("threshold-mode")}get thresholdMode(){return this.getAttribute("threshold-mode")}set badgesMaxVisible(t){t!==null?this.setAttribute("badges-max-visible",String(t)):this.removeAttribute("badges-max-visible")}get badgesMaxVisible(){const t=this.getAttribute("badges-max-visible");return t?parseInt(t):null}set checkboxAlign(t){t?this.setAttribute("checkbox-align",t):this.removeAttribute("checkbox-align")}get checkboxAlign(){return this.getAttribute("checkbox-align")}set enableBadgeTooltips(t){t?this.setAttribute("enable-badge-tooltips","true"):this.removeAttribute("enable-badge-tooltips")}get enableBadgeTooltips(){return this.getAttribute("enable-badge-tooltips")==="true"}set badgeTooltipPlacement(t){t?this.setAttribute("badge-tooltip-placement",t):this.removeAttribute("badge-tooltip-placement")}get badgeTooltipPlacement(){return this.getAttribute("badge-tooltip-placement")}set getBadgeTooltipCallback(t){this._getBadgeTooltipCallback=t,this.reinitialize()}get getBadgeTooltipCallback(){return this._getBadgeTooltipCallback}set getRemoveButtonTooltipCallback(t){this._getRemoveButtonTooltipCallback=t,this.reinitialize()}get getRemoveButtonTooltipCallback(){return this._getRemoveButtonTooltipCallback}set removeButtonTooltipText(t){t?this.setAttribute("remove-button-tooltip-text",t):this.removeAttribute("remove-button-tooltip-text")}get removeButtonTooltipText(){return this.getAttribute("remove-button-tooltip-text")}set getCounterCallback(t){this._getCounterCallback=t,this.reinitialize()}get getCounterCallback(){return this._getCounterCallback}get beforeSearchCallback(){return this._beforeSearchCallback}set beforeSearchCallback(t){this._beforeSearchCallback=t,this.reinitialize()}get searchCallback(){return this._searchCallback}set searchCallback(t){this._searchCallback=t,this.reinitialize()}get addNewCallback(){return this._addNewCallback}set addNewCallback(t){this._addNewCallback=t,this.reinitialize()}get selectCallback(){return this._selectCallback}set selectCallback(t){this._selectCallback=t}get deselectCallback(){return this._deselectCallback}set deselectCallback(t){this._deselectCallback=t}get changeCallback(){return this._changeCallback}set changeCallback(t){this._changeCallback=t}get actionButtons(){return this._actionButtons}set actionButtons(t){this._actionButtons=t,this.reinitialize()}get selectedValue(){var t;return((t=this.picker)==null?void 0:t.selectedValue)??null}get selectedItem(){var t;return((t=this.picker)==null?void 0:t.selectedItem)??null}getSelected(){return this.picker?this.picker.getSelected():[]}setSelected(t){this.picker&&this.picker.setSelected(t)}getValue(){return this.picker?this.picker.getValue():null}destroy(){this.picker&&this.picker.destroy()}}typeof window<"u"&&typeof customElements<"u"&&(customElements.get("web-multiselect")||customElements.define("web-multiselect",Ie)),typeof window<"u"&&(window.components=window.components||{},window.components["web-multiselect"]={version:()=>"1.8.1",config:{name:"@keenmate/web-multiselect",version:"1.8.1",author:"Keenmate",license:"MIT",repository:"git+https://github.com/keenmate/web-multiselect.git",homepage:"https://github.com/keenmate/web-multiselect#readme"},logging:{enableLogging:it,disableLogging:rt,setLogLevel:nt,setCategoryLevel:at,getCategories:()=>[...ot]},register:()=>{typeof customElements<"u"&&!customElements.get("web-multiselect")&&customElements.define("web-multiselect",Ie)},getInstances:()=>dt()}),y.LOGGING_CATEGORIES=ot,y.MultiSelectElement=Ie,y.WebMultiSelect=ct,y.dataLogger=k,y.disableLogging=rt,y.enableLogging=it,y.initLogger=re,y.interactionLogger=T,y.setCategoryLevel=at,y.setLogLevel=nt,y.uiLogger=v,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
|
55
|
+
`,setTimeout(()=>{this.getAttribute("show-debug-info")==="true"&&this.updateDebugInfo()},500)}parseDeclarativeOptions(){var r,n,a,l;const t=[],s=Array.from(this.children);if(s.length===0)return null;let i=!1;for(const c of s)if(c.tagName==="OPTION"){const d=c,p={value:d.value||((r=d.textContent)==null?void 0:r.trim())||"",label:((n=d.textContent)==null?void 0:n.trim())||d.value||""};d.hasAttribute("selected")&&(this._declarativeSelectedValues||(this._declarativeSelectedValues=[]),this._declarativeSelectedValues.push(p.value)),d.hasAttribute("disabled")&&(p.disabled=!0),d.hasAttribute("data-icon")&&(p.icon=d.getAttribute("data-icon")),d.hasAttribute("data-subtitle")&&(p.subtitle=d.getAttribute("data-subtitle")),t.push(p),i=!0}else if(c.tagName==="OPTGROUP"){const d=c,p=d.label||d.getAttribute("label")||"Group",u=Array.from(d.querySelectorAll("option"));for(const h of u){const g={value:h.value||((a=h.textContent)==null?void 0:a.trim())||"",label:((l=h.textContent)==null?void 0:l.trim())||h.value||"",group:p};h.hasAttribute("selected")&&(this._declarativeSelectedValues||(this._declarativeSelectedValues=[]),this._declarativeSelectedValues.push(g.value)),h.hasAttribute("disabled")&&(g.disabled=!0),h.hasAttribute("data-icon")&&(g.icon=h.getAttribute("data-icon")),h.hasAttribute("data-subtitle")&&(g.subtitle=h.getAttribute("data-subtitle")),t.push(g),i=!0}}return i?(k.debug(`[MultiSelectElement] Parsed ${t.length} declarative options from Light DOM`),s.forEach(c=>{(c.tagName==="OPTION"||c.tagName==="OPTGROUP")&&c.remove()}),t):null}initializePicker(){if(!this.containerElement)return;let t;if(this._declarativeSelectedValues&&this._declarativeSelectedValues.length>0)t=this._declarativeSelectedValues,k.debug(`[MultiSelectElement] Using ${t.length} declaratively selected values`);else{const i=this.getAttribute("initial-values");if(i)try{t=JSON.parse(i)}catch(r){k.error("[MultiSelectElement] Failed to parse initial-values:",r)}}const s={searchHint:this.getAttribute("search-hint")||void 0,searchPlaceholder:this.getAttribute("search-placeholder")||"Search...",dropdownMinWidth:this.getAttribute("dropdown-min-width")||void 0,dropdownMaxWidth:this.getAttribute("dropdown-max-width")||void 0,badgesDisplayMode:this.getAttribute("badges-display-mode")||"badges",badgesPosition:this.getAttribute("badges-position")||"bottom",badgesThresholdMode:this.getAttribute("badges-threshold-mode")||"count",maxHeight:this.getAttribute("max-height")||"20rem",emptyMessage:this.getAttribute("empty-message")||"No results found",loadingMessage:this.getAttribute("loading-message")||"Loading...",searchInputMode:this.getAttribute("search-input-mode")||"normal",searchMode:this.getAttribute("search-mode")||"filter",actionsLayout:this.getAttribute("actions-layout")||"nowrap",badgesThreshold:this.getAttribute("badges-threshold")?parseInt(this.getAttribute("badges-threshold")):void 0,badgesMaxVisible:this.getAttribute("badges-max-visible")?parseInt(this.getAttribute("badges-max-visible")):void 0,minSearchLength:this.getAttribute("min-search-length")?parseInt(this.getAttribute("min-search-length")):0,isMultipleEnabled:this.getAttribute("multiple")!=="false",isGroupsAllowed:this.getAttribute("allow-groups")!=="false",isCheckboxesShown:this.getAttribute("show-checkboxes")!=="false",isActionsSticky:this.getAttribute("sticky-actions")!=="false",isCloseOnSelect:this.getAttribute("close-on-select")==="true",isPlacementLocked:this.getAttribute("lock-placement")!=="false",isSearchEnabled:this.getAttribute("enable-search")!=="false",isAddNewAllowed:this.getAttribute("allow-add-new")==="true",isCounterShown:this.getAttribute("show-counter")==="true",isKeepOptionsOnSearch:this.getAttribute("keep-options-on-search")!=="false",shouldKeepSearchOnClose:this.getAttribute("should-keep-search-on-close")!=="false",isVirtualScrollEnabled:this.getAttribute("enable-virtual-scroll")==="true",actionButtons:this._actionButtons,checkboxAlign:this.getAttribute("checkbox-align")||"center",virtualScrollThreshold:this.getAttribute("virtual-scroll-threshold")?parseInt(this.getAttribute("virtual-scroll-threshold")):100,optionHeight:this.getAttribute("option-height")?parseInt(this.getAttribute("option-height")):50,badgeHeight:this.getAttribute("badge-height")?parseInt(this.getAttribute("badge-height")):36,virtualScrollBuffer:this.getAttribute("virtual-scroll-buffer")?parseInt(this.getAttribute("virtual-scroll-buffer")):10,valueMember:this.getAttribute("value-member")||this._valueMember,displayValueMember:this.getAttribute("display-value-member")||this._displayValueMember,searchValueMember:this.getAttribute("search-value-member")||this._searchValueMember,iconMember:this.getAttribute("icon-member")||this._iconMember,subtitleMember:this.getAttribute("subtitle-member")||this._subtitleMember,groupMember:this.getAttribute("group-member")||this._groupMember,disabledMember:this.getAttribute("disabled-member")||this._disabledMember,getValueCallback:this._getValueCallback,getDisplayValueCallback:this._getDisplayValueCallback,getBadgeDisplayCallback:this._getBadgeDisplayCallback,getBadgeClassCallback:this._getBadgeClassCallback,customStylesCallback:this._customStylesCallback,getSearchValueCallback:this._getSearchValueCallback,getIconCallback:this._getIconCallback,getSubtitleCallback:this._getSubtitleCallback,getGroupCallback:this._getGroupCallback,renderGroupLabelContentCallback:this._renderGroupLabelContentCallback,getDisabledCallback:this._getDisabledCallback,renderOptionContentCallback:this._renderOptionContentCallback,renderBadgeContentCallback:this._renderBadgeContentCallback,renderSelectedItemContentCallback:this._renderSelectedItemContentCallback,getSelectedItemClassCallback:this._getSelectedItemClassCallback,renderSelectedContentCallback:this._renderSelectedContentCallback,formFieldId:this.getAttribute("name")||void 0,valueFormat:this.getAttribute("value-format")||"json",getValueFormatCallback:this._getValueFormatCallback,isBadgeTooltipsEnabled:this.getAttribute("enable-badge-tooltips")==="true",getBadgeTooltipCallback:this._getBadgeTooltipCallback,getRemoveButtonTooltipCallback:this._getRemoveButtonTooltipCallback,removeButtonTooltipText:this.getAttribute("remove-button-tooltip-text")||void 0,badgeTooltipPlacement:this.getAttribute("badge-tooltip-placement")||"top",badgeTooltipDelay:parseInt(this.getAttribute("badge-tooltip-delay")||"100"),badgeTooltipOffset:parseInt(this.getAttribute("badge-tooltip-offset")||"8"),getCounterCallback:this._getCounterCallback||((i,r)=>r!==void 0?`+${r} more`:`${i} selected`),options:this._options,beforeSearchCallback:this._beforeSearchCallback,searchCallback:this._searchCallback,addNewCallback:this._addNewCallback,selectCallback:i=>{var r;this._selectCallback&&this._selectCallback(i),this.dispatchEvent(new CustomEvent("select",{detail:{option:i,selectedOptions:(r=this.picker)==null?void 0:r.getSelected(),selectedValues:(()=>{var a;const n=(a=this.picker)==null?void 0:a.getValue();return n==null?[]:Array.isArray(n)?n:[n]})()}}))},deselectCallback:i=>{var r;this._deselectCallback&&this._deselectCallback(i),this.dispatchEvent(new CustomEvent("deselect",{detail:{option:i,selectedOptions:(r=this.picker)==null?void 0:r.getSelected(),selectedValues:(()=>{var a;const n=(a=this.picker)==null?void 0:a.getValue();return n==null?[]:Array.isArray(n)?n:[n]})()}}))},changeCallback:i=>{this._changeCallback&&this._changeCallback(i),this.dispatchEvent(new CustomEvent("change",{detail:{selectedOptions:i,selectedValues:(()=>{var n;const r=(n=this.picker)==null?void 0:n.getValue();return r==null?[]:Array.isArray(r)?r:[r]})()}}))},container:this.shadow,hostElement:this};if(t&&(this.containerElement.dataset.initialValues=JSON.stringify(t)),this.picker=new ct(this.containerElement,s),this._customStylesCallback){const i=this._customStylesCallback();if(i){const r=document.createElement("style");r.className="ms-custom-styles",r.textContent=i,this.shadow.insertBefore(r,this.shadow.firstChild)}}}reinitialize(){this.picker&&(this.picker.destroy(),this.initializePicker())}get options(){return this._options}set options(t){this._options=t,this.reinitialize()}set valueMember(t){this._valueMember=t||void 0,t?this.setAttribute("value-member",t):this.removeAttribute("value-member")}get valueMember(){return this.getAttribute("value-member")}set displayValueMember(t){this._displayValueMember=t||void 0,t?this.setAttribute("display-value-member",t):this.removeAttribute("display-value-member")}get displayValueMember(){return this.getAttribute("display-value-member")}set searchValueMember(t){this._searchValueMember=t||void 0,t?this.setAttribute("search-value-member",t):this.removeAttribute("search-value-member")}get searchValueMember(){return this.getAttribute("search-value-member")}set iconMember(t){this._iconMember=t||void 0,t?this.setAttribute("icon-member",t):this.removeAttribute("icon-member")}get iconMember(){return this.getAttribute("icon-member")}set subtitleMember(t){this._subtitleMember=t||void 0,t?this.setAttribute("subtitle-member",t):this.removeAttribute("subtitle-member")}get subtitleMember(){return this.getAttribute("subtitle-member")}set groupMember(t){this._groupMember=t||void 0,t?this.setAttribute("group-member",t):this.removeAttribute("group-member")}get groupMember(){return this.getAttribute("group-member")}set disabledMember(t){this._disabledMember=t||void 0,t?this.setAttribute("disabled-member",t):this.removeAttribute("disabled-member")}get disabledMember(){return this.getAttribute("disabled-member")}set getValueCallback(t){this._getValueCallback=t,this.reinitialize()}get getValueCallback(){return this._getValueCallback}set getDisplayValueCallback(t){this._getDisplayValueCallback=t,this.reinitialize()}get getDisplayValueCallback(){return this._getDisplayValueCallback}set getBadgeDisplayCallback(t){this._getBadgeDisplayCallback=t,this.reinitialize()}get getBadgeDisplayCallback(){return this._getBadgeDisplayCallback}set getBadgeClassCallback(t){this._getBadgeClassCallback=t,this.reinitialize()}get getBadgeClassCallback(){return this._getBadgeClassCallback}set customStylesCallback(t){if(this._customStylesCallback=t,this.picker&&t){const s=t();if(s){const i=this.shadow.querySelector("style.ms-custom-styles");i&&i.remove();const r=document.createElement("style");r.className="ms-custom-styles",r.textContent=s,this.shadow.appendChild(r),this.picker.renderBadges()}}}get customStylesCallback(){return this._customStylesCallback}set getSearchValueCallback(t){this._getSearchValueCallback=t,this.reinitialize()}get getSearchValueCallback(){return this._getSearchValueCallback}set getIconCallback(t){this._getIconCallback=t,this.reinitialize()}get getIconCallback(){return this._getIconCallback}set getSubtitleCallback(t){this._getSubtitleCallback=t,this.reinitialize()}get getSubtitleCallback(){return this._getSubtitleCallback}set getGroupCallback(t){this._getGroupCallback=t,this.reinitialize()}get getGroupCallback(){return this._getGroupCallback}set renderGroupLabelContentCallback(t){this._renderGroupLabelContentCallback=t,this.reinitialize()}get renderGroupLabelContentCallback(){return this._renderGroupLabelContentCallback}set getDisabledCallback(t){this._getDisabledCallback=t,this.reinitialize()}get getDisabledCallback(){return this._getDisabledCallback}set renderOptionContentCallback(t){this._renderOptionContentCallback=t,this.reinitialize()}get renderOptionContentCallback(){return this._renderOptionContentCallback}set renderBadgeContentCallback(t){this._renderBadgeContentCallback=t,this.reinitialize()}get renderBadgeContentCallback(){return this._renderBadgeContentCallback}set renderSelectedItemContentCallback(t){this._renderSelectedItemContentCallback=t,this.reinitialize()}get renderSelectedItemContentCallback(){return this._renderSelectedItemContentCallback}set getSelectedItemClassCallback(t){this._getSelectedItemClassCallback=t,this.reinitialize()}get getSelectedItemClassCallback(){return this._getSelectedItemClassCallback}set renderSelectedContentCallback(t){this._renderSelectedContentCallback=t,this.reinitialize()}get renderSelectedContentCallback(){return this._renderSelectedContentCallback}set name(t){t?this.setAttribute("name",t):this.removeAttribute("name")}get name(){return this.getAttribute("name")}set valueFormat(t){t?this.setAttribute("value-format",t):this.removeAttribute("value-format")}get valueFormat(){return this.getAttribute("value-format")}set getValueFormatCallback(t){this._getValueFormatCallback=t,this.reinitialize()}get getValueFormatCallback(){return this._getValueFormatCallback}set thresholdMode(t){t?this.setAttribute("threshold-mode",t):this.removeAttribute("threshold-mode")}get thresholdMode(){return this.getAttribute("threshold-mode")}set badgesMaxVisible(t){t!==null?this.setAttribute("badges-max-visible",String(t)):this.removeAttribute("badges-max-visible")}get badgesMaxVisible(){const t=this.getAttribute("badges-max-visible");return t?parseInt(t):null}set checkboxAlign(t){t?this.setAttribute("checkbox-align",t):this.removeAttribute("checkbox-align")}get checkboxAlign(){return this.getAttribute("checkbox-align")}set enableBadgeTooltips(t){t?this.setAttribute("enable-badge-tooltips","true"):this.removeAttribute("enable-badge-tooltips")}get enableBadgeTooltips(){return this.getAttribute("enable-badge-tooltips")==="true"}set badgeTooltipPlacement(t){t?this.setAttribute("badge-tooltip-placement",t):this.removeAttribute("badge-tooltip-placement")}get badgeTooltipPlacement(){return this.getAttribute("badge-tooltip-placement")}set getBadgeTooltipCallback(t){this._getBadgeTooltipCallback=t,this.reinitialize()}get getBadgeTooltipCallback(){return this._getBadgeTooltipCallback}set getRemoveButtonTooltipCallback(t){this._getRemoveButtonTooltipCallback=t,this.reinitialize()}get getRemoveButtonTooltipCallback(){return this._getRemoveButtonTooltipCallback}set removeButtonTooltipText(t){t?this.setAttribute("remove-button-tooltip-text",t):this.removeAttribute("remove-button-tooltip-text")}get removeButtonTooltipText(){return this.getAttribute("remove-button-tooltip-text")}set getCounterCallback(t){this._getCounterCallback=t,this.reinitialize()}get getCounterCallback(){return this._getCounterCallback}get beforeSearchCallback(){return this._beforeSearchCallback}set beforeSearchCallback(t){this._beforeSearchCallback=t,this.reinitialize()}get searchCallback(){return this._searchCallback}set searchCallback(t){this._searchCallback=t,this.reinitialize()}get addNewCallback(){return this._addNewCallback}set addNewCallback(t){this._addNewCallback=t,this.reinitialize()}get selectCallback(){return this._selectCallback}set selectCallback(t){this._selectCallback=t}get deselectCallback(){return this._deselectCallback}set deselectCallback(t){this._deselectCallback=t}get changeCallback(){return this._changeCallback}set changeCallback(t){this._changeCallback=t}get actionButtons(){return this._actionButtons}set actionButtons(t){this._actionButtons=t,this.reinitialize()}get selectedValue(){var t;return((t=this.picker)==null?void 0:t.selectedValue)??null}get selectedItem(){var t;return((t=this.picker)==null?void 0:t.selectedItem)??null}getSelected(){return this.picker?this.picker.getSelected():[]}setSelected(t){this.picker&&this.picker.setSelected(t)}getValue(){return this.picker?this.picker.getValue():null}destroy(){this.picker&&this.picker.destroy()}}typeof window<"u"&&typeof customElements<"u"&&(customElements.get("web-multiselect")||customElements.define("web-multiselect",Ie)),typeof window<"u"&&(window.components=window.components||{},window.components["web-multiselect"]={version:()=>"1.8.2",config:{name:"@keenmate/web-multiselect",version:"1.8.2",author:"Keenmate",license:"MIT",repository:"git+https://github.com/keenmate/web-multiselect.git",homepage:"https://github.com/keenmate/web-multiselect#readme"},logging:{enableLogging:it,disableLogging:rt,setLogLevel:nt,setCategoryLevel:at,getCategories:()=>[...ot]},register:()=>{typeof customElements<"u"&&!customElements.get("web-multiselect")&&customElements.define("web-multiselect",Ie)},getInstances:()=>dt()}),y.LOGGING_CATEGORIES=ot,y.MultiSelectElement=Ie,y.WebMultiSelect=ct,y.dataLogger=k,y.disableLogging=rt,y.enableLogging=it,y.initLogger=re,y.interactionLogger=T,y.setCategoryLevel=at,y.setLogLevel=nt,y.uiLogger=v,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keenmate/web-multiselect",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.2",
|
|
4
4
|
"description": "Lightweight multiselect web component with typeahead search, rich content support, and excellent keyboard navigation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/multiselect.umd.js",
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
"./css": "./src/css/main.css",
|
|
19
19
|
"./dist/*": "./dist/*",
|
|
20
20
|
"./src/css/*": "./src/css/*",
|
|
21
|
-
"./package.json": "./package.json"
|
|
21
|
+
"./package.json": "./package.json",
|
|
22
|
+
"./component-variables.manifest.json": "./component-variables.manifest.json"
|
|
22
23
|
},
|
|
23
24
|
"sideEffects": [
|
|
24
25
|
"./dist/multiselect.js",
|
|
@@ -27,7 +28,8 @@
|
|
|
27
28
|
],
|
|
28
29
|
"files": [
|
|
29
30
|
"dist",
|
|
30
|
-
"src/css"
|
|
31
|
+
"src/css",
|
|
32
|
+
"component-variables.manifest.json"
|
|
31
33
|
],
|
|
32
34
|
"scripts": {
|
|
33
35
|
"dev": "vite --port 12200",
|