igniteui-webcomponents 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +7 -2
  3. package/components/accordion/accordion.js +3 -1
  4. package/components/accordion/accordion.js.map +1 -1
  5. package/components/button/button-base.js +7 -2
  6. package/components/button/button-base.js.map +1 -1
  7. package/components/button/themes/button/light/button.base.css.js +1 -1
  8. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  9. package/components/button/themes/button/light/button.material.css.js +1 -1
  10. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  11. package/components/calendar/common/calendar-base.js +3 -1
  12. package/components/calendar/common/calendar-base.js.map +1 -1
  13. package/components/calendar/days-view/days-view.d.ts +2 -0
  14. package/components/calendar/days-view/days-view.js +17 -5
  15. package/components/calendar/days-view/days-view.js.map +1 -1
  16. package/components/checkbox/checkbox-base.js +7 -2
  17. package/components/checkbox/checkbox-base.js.map +1 -1
  18. package/components/chip/chip.d.ts +1 -0
  19. package/components/chip/chip.js +9 -0
  20. package/components/chip/chip.js.map +1 -1
  21. package/components/common/decorators/blazorDeepImport.d.ts +4 -0
  22. package/components/common/decorators/blazorDeepImport.js +2 -0
  23. package/components/common/decorators/blazorDeepImport.js.map +1 -0
  24. package/components/common/util.d.ts +1 -0
  25. package/components/common/util.js +3 -0
  26. package/components/common/util.js.map +1 -1
  27. package/components/dialog/dialog.d.ts +69 -0
  28. package/components/dialog/dialog.js +168 -0
  29. package/components/dialog/dialog.js.map +1 -0
  30. package/components/dialog/themes/light/dialog.base.css.d.ts +1 -0
  31. package/components/dialog/themes/light/dialog.base.css.js +3 -0
  32. package/components/dialog/themes/light/dialog.base.css.js.map +1 -0
  33. package/components/dialog/themes/light/dialog.bootstrap.css.d.ts +1 -0
  34. package/components/dialog/themes/light/dialog.bootstrap.css.js +3 -0
  35. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -0
  36. package/components/dialog/themes/light/dialog.fluent.css.d.ts +1 -0
  37. package/components/dialog/themes/light/dialog.fluent.css.js +3 -0
  38. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -0
  39. package/components/dialog/themes/light/dialog.indigo.css.d.ts +1 -0
  40. package/components/dialog/themes/light/dialog.indigo.css.js +3 -0
  41. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -0
  42. package/components/dialog/themes/light/dialog.material.css.d.ts +1 -0
  43. package/components/dialog/themes/light/dialog.material.css.js +3 -0
  44. package/components/dialog/themes/light/dialog.material.css.js.map +1 -0
  45. package/components/dropdown/dropdown-group.d.ts +2 -2
  46. package/components/dropdown/dropdown-group.js +1 -1
  47. package/components/dropdown/dropdown-group.js.map +1 -1
  48. package/components/dropdown/dropdown-header.d.ts +1 -1
  49. package/components/dropdown/dropdown-header.js.map +1 -1
  50. package/components/dropdown/dropdown-item.d.ts +1 -1
  51. package/components/dropdown/dropdown-item.js.map +1 -1
  52. package/components/dropdown/dropdown.d.ts +10 -8
  53. package/components/dropdown/dropdown.js +15 -10
  54. package/components/dropdown/dropdown.js.map +1 -1
  55. package/components/dropdown/themes/light/dropdown-group.base.css.js +1 -1
  56. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  57. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +1 -1
  58. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  59. package/components/dropdown/themes/light/dropdown-item.base.css.js +1 -1
  60. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  61. package/components/dropdown/themes/light/dropdown.base.css.js +1 -1
  62. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  63. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
  64. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  65. package/components/form/form.js +4 -3
  66. package/components/form/form.js.map +1 -1
  67. package/components/icon/icon.js +3 -1
  68. package/components/icon/icon.js.map +1 -1
  69. package/components/input/input-base.js +3 -1
  70. package/components/input/input-base.js.map +1 -1
  71. package/components/input/input.d.ts +1 -0
  72. package/components/input/input.js +5 -0
  73. package/components/input/input.js.map +1 -1
  74. package/components/input/themes/light/input.base.css.js +1 -1
  75. package/components/input/themes/light/input.base.css.js.map +1 -1
  76. package/components/input/themes/light/input.bootstrap.css.js +1 -1
  77. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  78. package/components/input/themes/light/input.fluent.css.js +1 -1
  79. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  80. package/components/input/themes/light/input.indigo.css.js +1 -1
  81. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  82. package/components/mask-input/mask-input-base.js +7 -2
  83. package/components/mask-input/mask-input-base.js.map +1 -1
  84. package/components/progress/linear-progress.js +1 -0
  85. package/components/progress/linear-progress.js.map +1 -1
  86. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  87. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  88. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  89. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  90. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +1 -1
  91. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  92. package/components/progress/themes/linear/linear.progress.fluent.css.js +1 -1
  93. package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
  94. package/components/progress/themes/linear/linear.progress.indigo.css.js +1 -1
  95. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  96. package/components/radio-group/radio-group.d.ts +0 -1
  97. package/components/radio-group/radio-group.js +7 -6
  98. package/components/radio-group/radio-group.js.map +1 -1
  99. package/components/rating/rating.d.ts +21 -9
  100. package/components/rating/rating.js +50 -33
  101. package/components/rating/rating.js.map +1 -1
  102. package/components/select/select-group.d.ts +31 -0
  103. package/components/select/select-group.js +69 -0
  104. package/components/select/select-group.js.map +1 -0
  105. package/components/select/select-header.d.ts +15 -0
  106. package/components/select/select-header.js +5 -0
  107. package/components/select/select-header.js.map +1 -0
  108. package/components/select/select-item.d.ts +30 -0
  109. package/components/select/select-item.js +39 -0
  110. package/components/select/select-item.js.map +1 -0
  111. package/components/select/select.d.ts +112 -0
  112. package/components/select/select.js +343 -0
  113. package/components/select/select.js.map +1 -0
  114. package/components/select/themes/dark/select.bootstrap.css.d.ts +1 -0
  115. package/components/select/themes/dark/select.bootstrap.css.js +3 -0
  116. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -0
  117. package/components/select/themes/dark/select.fluent.css.d.ts +1 -0
  118. package/components/select/themes/dark/select.fluent.css.js +3 -0
  119. package/components/select/themes/dark/select.fluent.css.js.map +1 -0
  120. package/components/select/themes/dark/select.indigo.css.d.ts +1 -0
  121. package/components/select/themes/dark/select.indigo.css.js +3 -0
  122. package/components/select/themes/dark/select.indigo.css.js.map +1 -0
  123. package/components/select/themes/dark/select.material.css.d.ts +1 -0
  124. package/components/select/themes/dark/select.material.css.js +3 -0
  125. package/components/select/themes/dark/select.material.css.js.map +1 -0
  126. package/components/select/themes/light/select.base.css.d.ts +1 -0
  127. package/components/select/themes/light/select.base.css.js +3 -0
  128. package/components/select/themes/light/select.base.css.js.map +1 -0
  129. package/components/select/themes/light/select.bootstrap.css.d.ts +1 -0
  130. package/components/select/themes/light/select.bootstrap.css.js +3 -0
  131. package/components/select/themes/light/select.bootstrap.css.js.map +1 -0
  132. package/components/select/themes/light/select.fluent.css.d.ts +1 -0
  133. package/components/select/themes/light/select.fluent.css.js +3 -0
  134. package/components/select/themes/light/select.fluent.css.js.map +1 -0
  135. package/components/select/themes/light/select.indigo.css.d.ts +1 -0
  136. package/components/select/themes/light/select.indigo.css.js +3 -0
  137. package/components/select/themes/light/select.indigo.css.js.map +1 -0
  138. package/components/select/themes/light/select.material.css.d.ts +1 -0
  139. package/components/select/themes/light/select.material.css.js +3 -0
  140. package/components/select/themes/light/select.material.css.js.map +1 -0
  141. package/components/slider/range-slider.d.ts +2 -0
  142. package/components/slider/range-slider.js +61 -0
  143. package/components/slider/range-slider.js.map +1 -1
  144. package/components/slider/slider-base.d.ts +7 -8
  145. package/components/slider/slider-base.js +8 -8
  146. package/components/slider/slider-base.js.map +1 -1
  147. package/components/tabs/tabs.d.ts +0 -1
  148. package/components/tabs/tabs.js +7 -9
  149. package/components/tabs/tabs.js.map +1 -1
  150. package/components/toast/toast.d.ts +1 -0
  151. package/components/toast/toast.js +9 -0
  152. package/components/toast/toast.js.map +1 -1
  153. package/components/toggle/toggle.controller.d.ts +7 -2
  154. package/components/toggle/toggle.controller.js +21 -20
  155. package/components/toggle/toggle.controller.js.map +1 -1
  156. package/components/tree/themes/light/tree.base.css.js +1 -1
  157. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  158. package/custom-elements.json +613 -14
  159. package/index.d.ts +5 -0
  160. package/index.js +5 -0
  161. package/index.js.map +1 -1
  162. package/package.json +3 -3
  163. package/themes/dark/bootstrap.css +1 -1
  164. package/themes/dark/fluent.css +1 -1
  165. package/themes/dark/indigo.css +1 -1
  166. package/themes/dark/material.css +1 -1
  167. package/vscode-html-custom-data.json +282 -14
@@ -0,0 +1,343 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { html } from 'lit';
8
+ import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
9
+ import { ifDefined } from 'lit/directives/if-defined.js';
10
+ import { styleMap } from 'lit/directives/style-map.js';
11
+ import { themes } from '../../theming/index.js';
12
+ import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
13
+ import { watch } from '../common/decorators/watch.js';
14
+ import { defineComponents } from '../common/definitions/defineComponents.js';
15
+ import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
16
+ import IgcDropdownComponent from '../dropdown/dropdown.js';
17
+ import IgcIconComponent from '../icon/icon.js';
18
+ import IgcInputComponent from '../input/input.js';
19
+ import IgcSelectGroupComponent from './select-group.js';
20
+ import IgcSelectHeaderComponent from './select-header.js';
21
+ import IgcSelectItemComponent from './select-item.js';
22
+ import { styles } from './themes/light/select.base.css';
23
+ import { styles as bootstrap } from './themes/light/select.bootstrap.css';
24
+ import { styles as fluent } from './themes/light/select.fluent.css';
25
+ import { styles as indigo } from './themes/light/select.indigo.css';
26
+ import { styles as material } from './themes/light/select.material.css';
27
+ defineComponents(IgcIconComponent, IgcInputComponent, IgcSelectGroupComponent, IgcSelectHeaderComponent, IgcSelectItemComponent);
28
+ let IgcSelectComponent = class IgcSelectComponent extends EventEmitterMixin(IgcDropdownComponent) {
29
+ constructor() {
30
+ super();
31
+ this.searchTerm = '';
32
+ this.lastKeyTime = Date.now();
33
+ this.targetKeyHandlers = new Map(Object.entries({
34
+ ' ': this.onTargetEnterKey,
35
+ Tab: this.onTargetTabKey,
36
+ Escape: this.onEscapeKey,
37
+ Enter: this.onTargetEnterKey,
38
+ ArrowLeft: this.onTargetArrowLeftKeyDown,
39
+ ArrowRight: this.onTargetArrowRightKeyDown,
40
+ ArrowUp: this.onTargetArrowUpKeyDown,
41
+ ArrowDown: this.onTargetArrowDownKeyDown,
42
+ Home: this.onTargetHomeKey,
43
+ End: this.onTargetEndKey,
44
+ }));
45
+ this.disabled = false;
46
+ this.required = false;
47
+ this.invalid = false;
48
+ this.outlined = false;
49
+ this.sameWidth = true;
50
+ this.dir = 'auto';
51
+ this.size = 'medium';
52
+ this.addEventListener('igcClosing', () => this.target.focus());
53
+ }
54
+ handleFocusout() { }
55
+ focus(options) {
56
+ this.target.focus(options);
57
+ }
58
+ blur() {
59
+ this.target.blur();
60
+ }
61
+ reportValidity() {
62
+ this.invalid = this.required && !this.value;
63
+ if (this.invalid)
64
+ this.target.focus();
65
+ return !this.invalid;
66
+ }
67
+ async firstUpdated() {
68
+ super.firstUpdated();
69
+ await this.updateComplete;
70
+ if (!this.selectedItem && this.value) {
71
+ this.updateSelected();
72
+ }
73
+ if (this.autofocus) {
74
+ this.target.focus();
75
+ }
76
+ }
77
+ updateValue() {
78
+ var _a;
79
+ this.value = (_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.value;
80
+ }
81
+ updateSelected() {
82
+ var _a;
83
+ if (this.allItems.length === 0)
84
+ return;
85
+ if (((_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.value) !== this.value) {
86
+ const matches = this.allItems.filter((i) => i.value === this.value);
87
+ const index = this.allItems.indexOf(matches.at(-1));
88
+ if (index === -1) {
89
+ this.value = undefined;
90
+ this.clearSelection();
91
+ return;
92
+ }
93
+ this.select(index);
94
+ }
95
+ }
96
+ validate() {
97
+ this.updateComplete.then(() => this.reportValidity());
98
+ }
99
+ selectNext() {
100
+ var _a;
101
+ const activeItemIndex = [...this.allItems].indexOf((_a = this.selectedItem) !== null && _a !== void 0 ? _a : this.activeItem);
102
+ const next = this.getNearestSiblingFocusableItemIndex(activeItemIndex !== null && activeItemIndex !== void 0 ? activeItemIndex : -1, 1);
103
+ this.selectItem(this.allItems[next], true);
104
+ }
105
+ selectPrev() {
106
+ var _a;
107
+ const activeItemIndex = [...this.allItems].indexOf((_a = this.selectedItem) !== null && _a !== void 0 ? _a : this.activeItem);
108
+ const prev = this.getNearestSiblingFocusableItemIndex(activeItemIndex !== null && activeItemIndex !== void 0 ? activeItemIndex : -1, -1);
109
+ this.selectItem(this.allItems[prev], true);
110
+ }
111
+ selectInteractiveItem(index) {
112
+ const item = this.allItems
113
+ .filter((i) => !i.disabled)
114
+ .at(index);
115
+ if (item.value !== this.value) {
116
+ this.selectItem(item, true);
117
+ }
118
+ }
119
+ searchItem(event) {
120
+ if (!/^.$/u.test(event.key)) {
121
+ return;
122
+ }
123
+ const currentTime = Date.now();
124
+ if (currentTime - this.lastKeyTime > 500) {
125
+ this.searchTerm = '';
126
+ }
127
+ this.searchTerm += event.key;
128
+ this.lastKeyTime = currentTime;
129
+ const item = this.allItems
130
+ .filter((i) => !i.disabled)
131
+ .find((i) => {
132
+ var _a;
133
+ return (_a = i.textContent) === null || _a === void 0 ? void 0 : _a.trim().toLowerCase().startsWith(this.searchTerm.toLowerCase());
134
+ });
135
+ if (item && this.value !== item.value) {
136
+ this.open ? this.activateItem(item) : this.selectItem(item);
137
+ }
138
+ }
139
+ handleFocus() {
140
+ if (this.open)
141
+ return;
142
+ this.emitEvent('igcFocus');
143
+ }
144
+ handleBlur() {
145
+ if (this.open)
146
+ return;
147
+ this.emitEvent('igcBlur');
148
+ }
149
+ onTargetTabKey() {
150
+ this.target.blur();
151
+ if (this.open)
152
+ this.hide();
153
+ }
154
+ onTargetEnterKey() {
155
+ !this.open ? this.target.click() : this.onEnterKey();
156
+ }
157
+ onTargetArrowLeftKeyDown() {
158
+ !this.open ? this.selectPrev() : this.onArrowUpKeyDown();
159
+ }
160
+ onTargetArrowRightKeyDown() {
161
+ !this.open ? this.selectNext() : this.onArrowDownKeyDown();
162
+ }
163
+ onTargetArrowUpKeyDown(event) {
164
+ if (event.altKey) {
165
+ this.toggle();
166
+ }
167
+ else {
168
+ !this.open ? this.selectPrev() : this.onArrowUpKeyDown();
169
+ }
170
+ }
171
+ onTargetArrowDownKeyDown(event) {
172
+ if (event.altKey) {
173
+ this.toggle();
174
+ }
175
+ else {
176
+ !this.open ? this.selectNext() : this.onArrowDownKeyDown();
177
+ }
178
+ }
179
+ onTargetHomeKey() {
180
+ !this.open ? this.selectInteractiveItem(0) : this.onHomeKey();
181
+ }
182
+ onTargetEndKey() {
183
+ !this.open ? this.selectInteractiveItem(-1) : this.onEndKey();
184
+ }
185
+ handleTargetKeyDown(event) {
186
+ var _a;
187
+ event.stopPropagation();
188
+ if (this.targetKeyHandlers.has(event.key)) {
189
+ event.preventDefault();
190
+ (_a = this.targetKeyHandlers.get(event.key)) === null || _a === void 0 ? void 0 : _a.call(this, event);
191
+ }
192
+ else {
193
+ this.searchItem(event);
194
+ }
195
+ }
196
+ get hasPrefixes() {
197
+ return this.inputPrefix.length > 0;
198
+ }
199
+ get hasSuffixes() {
200
+ return this.inputSuffix.length > 0;
201
+ }
202
+ render() {
203
+ var _a, _b;
204
+ return html `
205
+ <div
206
+ role="combobox"
207
+ tabindex=${this.disabled ? -1 : 0}
208
+ aria-owns="dropdown"
209
+ aria-describedby="helper-text"
210
+ aria-disabled=${this.disabled}
211
+ @focusin=${this.handleFocus}
212
+ @focusout=${this.handleBlur}
213
+ @keydown=${this.handleTargetKeyDown}
214
+ @click=${this.handleTargetClick}
215
+ >
216
+ <igc-input
217
+ id="input"
218
+ readonly
219
+ exportparts="container: input, input: native-input, label, prefix, suffix"
220
+ value=${ifDefined((_b = (_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim())}
221
+ placeholder=${ifDefined(this.placeholder)}
222
+ label=${ifDefined(this.label)}
223
+ size=${this.size}
224
+ dir=${this.dir}
225
+ tabindex="-1"
226
+ .disabled="${this.disabled}"
227
+ .required=${this.required}
228
+ .invalid=${this.invalid}
229
+ .outlined=${this.outlined}
230
+ @igcBlur=${(e) => e.stopPropagation()}
231
+ @igcFocus=${(e) => e.stopPropagation()}
232
+ >
233
+ <span slot=${this.hasPrefixes ? 'prefix' : ''}>
234
+ <slot name="prefix"></slot>
235
+ </span>
236
+ <span slot=${this.hasSuffixes ? 'suffix' : ''}>
237
+ <slot name="suffix"></slot>
238
+ </span>
239
+ <span slot="suffix" part="toggle-icon" style="display: flex">
240
+ <slot name="toggle-icon">
241
+ <igc-icon
242
+ size=${this.size}
243
+ name=${this.open ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}
244
+ collection="internal"
245
+ aria-hidden="true"
246
+ ></igc-icon>
247
+ </slot>
248
+ </span>
249
+ </igc-input>
250
+ </div>
251
+ <div
252
+ id="helper-text"
253
+ part="helper-text"
254
+ ?hidden="${this.helperText.length === 0}"
255
+ >
256
+ <slot name="helper-text"></slot>
257
+ </div>
258
+ <div
259
+ part="base"
260
+ style=${styleMap({ position: this.positionStrategy })}
261
+ @click=${this.handleClick}
262
+ ${this.toggleController.toggleDirective}
263
+ >
264
+ <div id="dropdown" role="listbox" part="list" aria-labelledby="input">
265
+ <slot name="header"></slot>
266
+ <slot></slot>
267
+ <slot name="footer"></slot>
268
+ </div>
269
+ </div>
270
+ `;
271
+ }
272
+ };
273
+ IgcSelectComponent.tagName = 'igc-select';
274
+ IgcSelectComponent.styles = styles;
275
+ __decorate([
276
+ queryAssignedElements({ flatten: true, selector: 'igc-select-item' })
277
+ ], IgcSelectComponent.prototype, "items", void 0);
278
+ __decorate([
279
+ queryAssignedElements({ flatten: true, selector: 'igc-select-group' })
280
+ ], IgcSelectComponent.prototype, "groups", void 0);
281
+ __decorate([
282
+ queryAssignedElements({ slot: 'helper-text' })
283
+ ], IgcSelectComponent.prototype, "helperText", void 0);
284
+ __decorate([
285
+ queryAssignedElements({ slot: 'suffix' })
286
+ ], IgcSelectComponent.prototype, "inputSuffix", void 0);
287
+ __decorate([
288
+ queryAssignedElements({ slot: 'prefix' })
289
+ ], IgcSelectComponent.prototype, "inputPrefix", void 0);
290
+ __decorate([
291
+ state()
292
+ ], IgcSelectComponent.prototype, "selectedItem", void 0);
293
+ __decorate([
294
+ query('div[role="combobox"]')
295
+ ], IgcSelectComponent.prototype, "target", void 0);
296
+ __decorate([
297
+ property({ reflect: false, type: String })
298
+ ], IgcSelectComponent.prototype, "value", void 0);
299
+ __decorate([
300
+ property()
301
+ ], IgcSelectComponent.prototype, "name", void 0);
302
+ __decorate([
303
+ property({ reflect: true, type: Boolean })
304
+ ], IgcSelectComponent.prototype, "disabled", void 0);
305
+ __decorate([
306
+ property({ reflect: true, type: Boolean })
307
+ ], IgcSelectComponent.prototype, "required", void 0);
308
+ __decorate([
309
+ property({ reflect: true, type: Boolean })
310
+ ], IgcSelectComponent.prototype, "invalid", void 0);
311
+ __decorate([
312
+ property({ reflect: true, type: Boolean })
313
+ ], IgcSelectComponent.prototype, "outlined", void 0);
314
+ __decorate([
315
+ property({ type: Boolean })
316
+ ], IgcSelectComponent.prototype, "autofocus", void 0);
317
+ __decorate([
318
+ property({ type: String })
319
+ ], IgcSelectComponent.prototype, "label", void 0);
320
+ __decorate([
321
+ property({ type: String })
322
+ ], IgcSelectComponent.prototype, "placeholder", void 0);
323
+ __decorate([
324
+ property({ type: Boolean, attribute: 'same-width' })
325
+ ], IgcSelectComponent.prototype, "sameWidth", void 0);
326
+ __decorate([
327
+ property({ reflect: true })
328
+ ], IgcSelectComponent.prototype, "dir", void 0);
329
+ __decorate([
330
+ watch('selectedItem')
331
+ ], IgcSelectComponent.prototype, "updateValue", null);
332
+ __decorate([
333
+ watch('value')
334
+ ], IgcSelectComponent.prototype, "updateSelected", null);
335
+ __decorate([
336
+ watch('value')
337
+ ], IgcSelectComponent.prototype, "validate", null);
338
+ IgcSelectComponent = __decorate([
339
+ themes({ bootstrap, material, fluent, indigo }),
340
+ blazorAdditionalDependencies('IgcIconComponent, IgcInputComponent, IgcSelectGroupComponent, IgcSelectHeaderComponent, IgcSelectItemComponent')
341
+ ], IgcSelectComponent);
342
+ export default IgcSelectComponent;
343
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/components/select/select.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { themes } from '../../theming/index.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport IgcDropdownItemComponent from '../dropdown/dropdown-item.js';\nimport IgcDropdownComponent, {\n IgcDropdownEventMap,\n} from '../dropdown/dropdown.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcInputComponent from '../input/input.js';\nimport IgcSelectGroupComponent from './select-group.js';\nimport IgcSelectHeaderComponent from './select-header.js';\nimport IgcSelectItemComponent from './select-item.js';\nimport { styles } from './themes/light/select.base.css';\nimport { styles as bootstrap } from './themes/light/select.bootstrap.css';\nimport { styles as fluent } from './themes/light/select.fluent.css';\nimport { styles as indigo } from './themes/light/select.indigo.css';\nimport { styles as material } from './themes/light/select.material.css';\n\ndefineComponents(\n IgcIconComponent,\n IgcInputComponent,\n IgcSelectGroupComponent,\n IgcSelectHeaderComponent,\n IgcSelectItemComponent\n);\n\nexport interface IgcSelectEventMap extends IgcDropdownEventMap {\n igcFocus: CustomEvent<void>;\n igcBlur: CustomEvent<void>;\n}\n\n@themes({ bootstrap, material, fluent, indigo })\n@blazorAdditionalDependencies(\n 'IgcIconComponent, IgcInputComponent, IgcSelectGroupComponent, IgcSelectHeaderComponent, IgcSelectItemComponent'\n)\n/**\n * @element igc-select\n *\n * @slot - Renders the list of select items.\n * @slot prefix - Renders content before the input.\n * @slot suffix - Renders content after input.\n * @slot header - Renders a container before the list of options.\n * @slot footer - Renders a container after the list of options.\n * @slot helper-text - Renders content below the input.\n * @slot toggle-icon - Renders content inside the suffix container.\n *\n * @fires igcFocus - Emitted when the select gains focus.\n * @fires igcBlur - Emitted when the select loses focus.\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcOpening - Emitted just before the list of options is opened.\n * @fires igcOpened - Emitted after the list of options is opened.\n * @fires igcClosing - Emitter just before the list of options is closed.\n * @fires igcClosed - Emitted after the list of options is closed.\n *\n * @csspart list - The list of options wrapper.\n * @csspart input - The encapsulated igc-input.\n * @csspart label - The encapsulated text label.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n * @csspart toggle-icon - The toggle icon wrapper.\n * @csspart helper-text - The helper text wrapper.\n */\nexport default class IgcSelectComponent extends EventEmitterMixin<\n IgcSelectEventMap,\n Constructor<IgcDropdownComponent>\n>(IgcDropdownComponent) {\n /** @private */\n public static readonly tagName = 'igc-select';\n public static styles = styles;\n private searchTerm = '';\n private lastKeyTime = Date.now();\n\n private readonly targetKeyHandlers: Map<string, Function> = new Map(\n Object.entries({\n ' ': this.onTargetEnterKey,\n Tab: this.onTargetTabKey,\n Escape: this.onEscapeKey,\n Enter: this.onTargetEnterKey,\n ArrowLeft: this.onTargetArrowLeftKeyDown,\n ArrowRight: this.onTargetArrowRightKeyDown,\n ArrowUp: this.onTargetArrowUpKeyDown,\n ArrowDown: this.onTargetArrowDownKeyDown,\n Home: this.onTargetHomeKey,\n End: this.onTargetEndKey,\n })\n );\n\n @queryAssignedElements({ flatten: true, selector: 'igc-select-item' })\n protected override items!: Array<IgcSelectItemComponent>;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-select-group' })\n protected override groups!: Array<IgcSelectGroupComponent>;\n\n @queryAssignedElements({ slot: 'helper-text' })\n protected helperText!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'suffix' })\n protected inputSuffix!: Array<HTMLElement>;\n\n @queryAssignedElements({ slot: 'prefix' })\n protected inputPrefix!: Array<HTMLElement>;\n\n @state()\n protected override selectedItem!: IgcSelectItemComponent | null;\n\n @query('div[role=\"combobox\"]')\n protected override target!: IgcInputComponent;\n\n /** The value attribute of the control. */\n @property({ reflect: false, type: String })\n public value?: string | undefined;\n\n /** The name attribute of the control. */\n @property()\n public name!: string;\n\n /** The disabled attribute of the control. */\n @property({ reflect: true, type: Boolean })\n public disabled = false;\n\n /** The required attribute of the control. */\n @property({ reflect: true, type: Boolean })\n public required = false;\n\n /** The invalid attribute of the control. */\n @property({ reflect: true, type: Boolean })\n public invalid = false;\n\n /** The outlined attribute of the control. */\n @property({ reflect: true, type: Boolean })\n public outlined = false;\n\n /** The autofocus attribute of the control. */\n @property({ type: Boolean })\n public override autofocus!: boolean;\n\n /** The label attribute of the control. */\n @property({ type: String })\n public label!: string;\n\n /** The placeholder attribute of the control. */\n @property({ type: String })\n public placeholder!: string;\n\n /** Whether the dropdown's width should be the same as the target's one. */\n @property({ type: Boolean, attribute: 'same-width' })\n public override sameWidth = true;\n\n /** The direction attribute of the control. */\n @property({ reflect: true })\n public override dir: 'ltr' | 'rtl' | 'auto' = 'auto';\n\n constructor() {\n super();\n this.size = 'medium';\n\n /** Return the focus to the target element when closing the list of options. */\n this.addEventListener('igcClosing', () => this.target.focus());\n }\n\n /** Override the dropdown target focusout behavior to prevent the focus from\n * being returned to the target element when the select loses focus. */\n protected override handleFocusout() {}\n\n /** Sets focus on the component. */\n public override focus(options?: FocusOptions) {\n this.target.focus(options);\n }\n\n /** Removes focus from the component. */\n public override blur() {\n this.target.blur();\n }\n\n /** Checks the validity of the control. */\n public reportValidity() {\n this.invalid = this.required && !this.value;\n if (this.invalid) this.target.focus();\n return !this.invalid;\n }\n\n public override async firstUpdated() {\n super.firstUpdated();\n await this.updateComplete;\n\n if (!this.selectedItem && this.value) {\n this.updateSelected();\n }\n\n if (this.autofocus) {\n this.target.focus();\n }\n }\n\n @watch('selectedItem')\n protected updateValue() {\n this.value = this.selectedItem?.value;\n }\n\n @watch('value')\n protected updateSelected() {\n if (this.allItems.length === 0) return;\n\n if (this.selectedItem?.value !== this.value) {\n const matches = this.allItems.filter((i) => i.value === this.value);\n const index = this.allItems.indexOf(\n matches.at(-1) as IgcSelectItemComponent\n );\n\n if (index === -1) {\n this.value = undefined;\n this.clearSelection();\n return;\n }\n\n this.select(index);\n }\n }\n\n @watch('value')\n protected validate() {\n this.updateComplete.then(() => this.reportValidity());\n }\n\n protected selectNext() {\n const activeItemIndex = [...this.allItems].indexOf(\n this.selectedItem ?? this.activeItem\n );\n\n const next = this.getNearestSiblingFocusableItemIndex(\n activeItemIndex ?? -1,\n 1\n );\n this.selectItem(this.allItems[next], true);\n }\n\n protected selectPrev() {\n const activeItemIndex = [...this.allItems].indexOf(\n this.selectedItem ?? this.activeItem\n );\n const prev = this.getNearestSiblingFocusableItemIndex(\n activeItemIndex ?? -1,\n -1\n );\n this.selectItem(this.allItems[prev], true);\n }\n\n protected selectInteractiveItem(index: number) {\n const item = this.allItems\n .filter((i) => !i.disabled)\n .at(index) as IgcDropdownItemComponent;\n\n if (item.value !== this.value) {\n this.selectItem(item, true);\n }\n }\n\n protected searchItem(event: KeyboardEvent): void {\n // ignore longer keys ('Alt', 'ArrowDown', etc)\n if (!/^.$/u.test(event.key)) {\n return;\n }\n\n const currentTime = Date.now();\n\n if (currentTime - this.lastKeyTime > 500) {\n this.searchTerm = '';\n }\n\n this.searchTerm += event.key;\n this.lastKeyTime = currentTime;\n\n const item = this.allItems\n .filter((i) => !i.disabled)\n .find((i) =>\n i.textContent\n ?.trim()\n .toLowerCase()\n .startsWith(this.searchTerm.toLowerCase())\n );\n\n if (item && this.value !== item.value) {\n this.open ? this.activateItem(item) : this.selectItem(item);\n }\n }\n\n protected handleFocus() {\n if (this.open) return;\n this.emitEvent('igcFocus');\n }\n\n protected handleBlur() {\n if (this.open) return;\n this.emitEvent('igcBlur');\n }\n\n protected onTargetTabKey() {\n this.target.blur();\n if (this.open) this.hide();\n }\n\n protected onTargetEnterKey() {\n !this.open ? this.target.click() : this.onEnterKey();\n }\n\n protected onTargetArrowLeftKeyDown() {\n !this.open ? this.selectPrev() : this.onArrowUpKeyDown();\n }\n\n protected onTargetArrowRightKeyDown() {\n !this.open ? this.selectNext() : this.onArrowDownKeyDown();\n }\n\n protected onTargetArrowUpKeyDown(event: KeyboardEvent) {\n if (event.altKey) {\n this.toggle();\n } else {\n !this.open ? this.selectPrev() : this.onArrowUpKeyDown();\n }\n }\n\n protected onTargetArrowDownKeyDown(event: KeyboardEvent) {\n if (event.altKey) {\n this.toggle();\n } else {\n !this.open ? this.selectNext() : this.onArrowDownKeyDown();\n }\n }\n\n protected onTargetHomeKey() {\n !this.open ? this.selectInteractiveItem(0) : this.onHomeKey();\n }\n\n protected onTargetEndKey() {\n !this.open ? this.selectInteractiveItem(-1) : this.onEndKey();\n }\n\n protected handleTargetKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n\n if (this.targetKeyHandlers.has(event.key)) {\n event.preventDefault();\n this.targetKeyHandlers.get(event.key)?.call(this, event);\n } else {\n this.searchItem(event);\n }\n }\n\n protected get hasPrefixes() {\n return this.inputPrefix.length > 0;\n }\n\n protected get hasSuffixes() {\n return this.inputSuffix.length > 0;\n }\n\n protected override render() {\n return html`\n <div\n role=\"combobox\"\n tabindex=${this.disabled ? -1 : 0}\n aria-owns=\"dropdown\"\n aria-describedby=\"helper-text\"\n aria-disabled=${this.disabled}\n @focusin=${this.handleFocus}\n @focusout=${this.handleBlur}\n @keydown=${this.handleTargetKeyDown}\n @click=${this.handleTargetClick}\n >\n <igc-input\n id=\"input\"\n readonly\n exportparts=\"container: input, input: native-input, label, prefix, suffix\"\n value=${ifDefined(this.selectedItem?.textContent?.trim())}\n placeholder=${ifDefined(this.placeholder)}\n label=${ifDefined(this.label)}\n size=${this.size}\n dir=${this.dir}\n tabindex=\"-1\"\n .disabled=\"${this.disabled}\"\n .required=${this.required}\n .invalid=${this.invalid}\n .outlined=${this.outlined}\n @igcBlur=${(e: Event) => e.stopPropagation()}\n @igcFocus=${(e: Event) => e.stopPropagation()}\n >\n <span slot=${this.hasPrefixes ? 'prefix' : ''}>\n <slot name=\"prefix\"></slot>\n </span>\n <span slot=${this.hasSuffixes ? 'suffix' : ''}>\n <slot name=\"suffix\"></slot>\n </span>\n <span slot=\"suffix\" part=\"toggle-icon\" style=\"display: flex\">\n <slot name=\"toggle-icon\">\n <igc-icon\n size=${this.size}\n name=${this.open ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}\n collection=\"internal\"\n aria-hidden=\"true\"\n ></igc-icon>\n </slot>\n </span>\n </igc-input>\n </div>\n <div\n id=\"helper-text\"\n part=\"helper-text\"\n ?hidden=\"${this.helperText.length === 0}\"\n >\n <slot name=\"helper-text\"></slot>\n </div>\n <div\n part=\"base\"\n style=${styleMap({ position: this.positionStrategy })}\n @click=${this.handleClick}\n ${this.toggleController.toggleDirective}\n >\n <div id=\"dropdown\" role=\"listbox\" part=\"list\" aria-labelledby=\"input\">\n <slot name=\"header\"></slot>\n <slot></slot>\n <slot name=\"footer\"></slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-select': IgcSelectComponent;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css ``;
3
+ //# sourceMappingURL=select.bootstrap.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/dark/select.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css ``;
3
+ //# sourceMappingURL=select.fluent.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/dark/select.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css ``;
3
+ //# sourceMappingURL=select.indigo.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/dark/select.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css ``;
3
+ //# sourceMappingURL=select.material.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.material.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/dark/select.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--igc-font-family)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);overflow-y:auto;overflow-x:hidden;background:hsla(var(--igc-surface-500), var(--igc-surface-a));-webkit-box-shadow:var(--igc-elevation-8);box-shadow:var(--igc-elevation-8);min-width:7rem;padding:.5rem 0;z-index:10005}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}:host{display:block}:host ::slotted([slot=helper-text]){font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-600), var(--igc-gray-a))}[role=combobox]{outline-style:none}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [role=combobox]{pointer-events:none}igc-input{cursor:pointer}igc-input::part(input){cursor:pointer}igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}igc-input::part(input)::selection{background:rgba(0,0,0,0)}`;
3
+ //# sourceMappingURL=select.base.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.base.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/light/select.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4xFAA4xF,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--igc-font-family)}[part=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);overflow-y:auto;overflow-x:hidden;background:hsla(var(--igc-surface-500), var(--igc-surface-a));-webkit-box-shadow:var(--igc-elevation-8);box-shadow:var(--igc-elevation-8);min-width:7rem;padding:.5rem 0;z-index:10005}:host([size=small]) ::slotted(igc-dropdown-item),:host([size=small]) ::slotted(igc-select-item){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*3)}:host([size=small]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-small) calc(var(--igc-spacing-small)*2)}:host([size=medium]) ::slotted(igc-dropdown-item),:host([size=medium]) ::slotted(igc-select-item){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*3)}:host([size=medium]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-medium) calc(var(--igc-spacing-medium)*2)}:host([size=large]) ::slotted(igc-dropdown-item),:host([size=large]) ::slotted(igc-select-item){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*3)}:host([size=large]) ::slotted(igc-dropdown-header){padding:var(--igc-spacing-large) calc(var(--igc-spacing-large)*2)}:host{display:block}:host ::slotted([slot=helper-text]){font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-600), var(--igc-gray-a))}[role=combobox]{outline-style:none}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [role=combobox]{pointer-events:none}igc-input{cursor:pointer}igc-input::part(input){cursor:pointer}igc-input::part(input)::-moz-selection{background:rgba(0,0,0,0)}igc-input::part(input)::selection{background:rgba(0,0,0,0)}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host ::slotted([slot=helper-text]){font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a))}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-700), var(--igc-gray-a))}:host(:focus-within) igc-input[readonly]:not([disabled])::part(input){-webkit-box-shadow:0 0 0 .25rem hsla(var(--igc-primary-500), 0.38);box-shadow:0 0 0 .25rem hsla(var(--igc-primary-500), 0.38);border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([invalid]) igc-input[readonly]:not([disabled])::part(input),:host([invalid]:focus-within) igc-input[readonly]:not([disabled])::part(input){-webkit-box-shadow:0 0 0 .25rem hsla(var(--igc-error-500), 0.38);box-shadow:0 0 0 .25rem hsla(var(--igc-error-500), 0.38);border-color:hsla(var(--igc-error-500), var(--igc-error-a))}igc-input[readonly]:not([disabled])::part(prefix),igc-input[readonly]:not([disabled])::part(suffix){color:hsla(var(--igc-gray-800), var(--igc-gray-a));background:hsla(var(--igc-gray-300), var(--igc-gray-a))}igc-input[readonly]:not([disabled])::part(prefix),igc-input[readonly]:not([disabled])::part(suffix),igc-input[readonly]:not([disabled])::part(container){color:hsla(var(--igc-gray-800), var(--igc-gray-a))}igc-input[readonly]:not([disabled])::part(container){background:var(--input-background, #fff)}igc-input[readonly]:not([disabled])::part(input){border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}igc-input[disabled]{pointer-events:none}igc-input[disabled]::part(prefix),igc-input[disabled]::part(suffix),igc-input[disabled]::part(container){background:hsla(var(--igc-gray-100), var(--igc-gray-a));color:hsla(var(--igc-gray-400), var(--igc-gray-a))}igc-input[disabled]::part(prefix),igc-input[disabled]::part(suffix),igc-input[disabled]::part(input){border-color:hsla(var(--igc-gray-300), var(--igc-gray-a))}`;
3
+ //# sourceMappingURL=select.bootstrap.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/light/select.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,woEAAwoE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::slotted([slot=helper-text]){font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a))}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-700), var(--igc-gray-a))}:host(:focus-within) igc-input[readonly]:not([disabled])::part(input){-webkit-box-shadow:0 0 0 .25rem hsla(var(--igc-primary-500), 0.38);box-shadow:0 0 0 .25rem hsla(var(--igc-primary-500), 0.38);border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([invalid]) igc-input[readonly]:not([disabled])::part(input),:host([invalid]:focus-within) igc-input[readonly]:not([disabled])::part(input){-webkit-box-shadow:0 0 0 .25rem hsla(var(--igc-error-500), 0.38);box-shadow:0 0 0 .25rem hsla(var(--igc-error-500), 0.38);border-color:hsla(var(--igc-error-500), var(--igc-error-a))}igc-input[readonly]:not([disabled])::part(prefix),igc-input[readonly]:not([disabled])::part(suffix){color:hsla(var(--igc-gray-800), var(--igc-gray-a));background:hsla(var(--igc-gray-300), var(--igc-gray-a))}igc-input[readonly]:not([disabled])::part(prefix),igc-input[readonly]:not([disabled])::part(suffix),igc-input[readonly]:not([disabled])::part(container){color:hsla(var(--igc-gray-800), var(--igc-gray-a))}igc-input[readonly]:not([disabled])::part(container){background:var(--input-background, #fff)}igc-input[readonly]:not([disabled])::part(input){border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}igc-input[disabled]{pointer-events:none}igc-input[disabled]::part(prefix),igc-input[disabled]::part(suffix),igc-input[disabled]::part(container){background:hsla(var(--igc-gray-100), var(--igc-gray-a));color:hsla(var(--igc-gray-400), var(--igc-gray-a))}igc-input[disabled]::part(prefix),igc-input[disabled]::part(suffix),igc-input[disabled]::part(input){border-color:hsla(var(--igc-gray-300), var(--igc-gray-a))}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host(:focus-within) igc-input[readonly]:not([disabled])::part(container){border-width:0.125rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(container){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-width:0.125rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(prefix){-webkit-margin-start:-0.0625rem;margin-inline-start:-0.0625rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(suffix){-webkit-margin-end:-0.0625rem;margin-inline-end:-0.0625rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=large]:not([disabled])::part(input){height:2.75rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=medium]:not([disabled])::part(input){height:2.25rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=small]:not([disabled])::part(input){height:1.75rem}`;
3
+ //# sourceMappingURL=select.fluent.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/light/select.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,w4BAAw4B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host(:focus-within) igc-input[readonly]:not([disabled])::part(container){border-width:0.125rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(container){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-width:0.125rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(prefix){-webkit-margin-start:-0.0625rem;margin-inline-start:-0.0625rem}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(suffix){-webkit-margin-end:-0.0625rem;margin-inline-end:-0.0625rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=large]:not([disabled])::part(input){height:2.75rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=medium]:not([disabled])::part(input){height:2.25rem}:host(:not([invalid]):focus-within) igc-input[readonly][size=small]:not([disabled])::part(input){height:1.75rem}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-600), var(--igc-gray-a))}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-300), var(--igc-gray-a))}:host(:focus-within) igc-input[readonly]:not([disabled])::part(container)::after{-webkit-transform:scaleY(1);-ms-transform:scaleY(1);transform:scaleY(1)}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(container){background:hsla(var(--igc-gray-100), var(--igc-gray-a))}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(label){color:var(--label-focus-color, hsla(var(--igc-primary-500), var(--igc-primary-a)))}`;
3
+ //# sourceMappingURL=select.indigo.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/light/select.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8oBAA8oB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-600), var(--igc-gray-a))}:host([disabled]) ::slotted([slot=helper-text]){color:hsla(var(--igc-gray-300), var(--igc-gray-a))}:host(:focus-within) igc-input[readonly]:not([disabled])::part(container)::after{-webkit-transform:scaleY(1);-ms-transform:scaleY(1);transform:scaleY(1)}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(container){background:hsla(var(--igc-gray-100), var(--igc-gray-a))}:host(:not([invalid]):focus-within) igc-input[readonly]:not([disabled])::part(label){color:var(--label-focus-color, hsla(var(--igc-primary-500), var(--igc-primary-a)))}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,3 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(start){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(notch){border-width:.125rem;border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(filler){border-width:.125rem;border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(end){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(label){color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(start){border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(notch){border-width:.125rem;border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(filler){border-width:.125rem;border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(end){border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(label){color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([outlined]):focus-within) igc-input[readonly]:not([disabled])::part(container){background:var(--focus-background, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-bottom:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([outlined]):focus-within) igc-input[readonly]:not([disabled])::part(container)::after{-webkit-transform:scaleX(1);-ms-transform:scaleX(1);transform:scaleX(1);opacity:1}`;
3
+ //# sourceMappingURL=select.material.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.material.css.js","sourceRoot":"","sources":["../../../../../src/components/select/themes/light/select.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,k3EAAk3E,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(start){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(notch){border-width:.125rem;border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(filler){border-width:.125rem;border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(end){border-color:hsla(var(--igc-primary-500), var(--igc-primary-a));border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined]:focus-within) igc-input[readonly]:not([disabled])::part(label){color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(start){border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-inline-start-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(notch){border-width:.125rem;border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-top:.0625rem solid rgba(0,0,0,0)}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(filler){border-width:.125rem;border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(end){border-color:hsla(var(--igc-error-500), var(--igc-error-a));border-inline-end-width:.125rem;border-block-start-width:.125rem;border-block-end-width:.125rem}:host([outlined][invalid]:focus-within) igc-input[readonly]:not([disabled])::part(label){color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([outlined]):focus-within) igc-input[readonly]:not([disabled])::part(container){background:var(--focus-background, hsla(var(--igc-gray-300), var(--igc-gray-a)));border-bottom:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([outlined]):focus-within) igc-input[readonly]:not([disabled])::part(container)::after{-webkit-transform:scaleX(1);-ms-transform:scaleX(1);transform:scaleX(1);opacity:1}`;\n"]}
@@ -75,6 +75,8 @@ export default class IgcRangeSliderComponent extends IgcRangeSliderComponent_bas
75
75
  protected emitChangeEvent(): void;
76
76
  private swapValues;
77
77
  private toggleActiveThumb;
78
+ private handleFocus;
79
+ protected renderThumb(value: number, ariaLabel?: string, thumbId?: string): import("lit-html").TemplateResult<1>;
78
80
  protected renderThumbs(): import("lit-html").TemplateResult<1>;
79
81
  }
80
82
  declare global {
@@ -6,6 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html } from 'lit';
8
8
  import { property, query } from 'lit/decorators.js';
9
+ import { ifDefined } from 'lit/directives/if-defined.js';
10
+ import { styleMap } from 'lit/directives/style-map.js';
9
11
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
10
12
  import { IgcSliderBaseComponent } from './slider-base.js';
11
13
  export default class IgcRangeSliderComponent extends EventEmitterMixin(IgcSliderBaseComponent) {
@@ -114,6 +116,65 @@ export default class IgcRangeSliderComponent extends EventEmitterMixin(IgcSlider
114
116
  const thumb = this.activeThumb === this.thumbFrom ? this.thumbTo : this.thumbFrom;
115
117
  thumb.focus();
116
118
  }
119
+ handleFocus(ev) {
120
+ var _a, _b;
121
+ this.activeThumb = ev.target;
122
+ const thumbId = (_a = this.activeThumb) === null || _a === void 0 ? void 0 : _a.id;
123
+ const thumbs = (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelectorAll('div[part="thumb"]');
124
+ thumbs === null || thumbs === void 0 ? void 0 : thumbs.forEach((t) => {
125
+ var _a;
126
+ if (t.id !== thumbId) {
127
+ const activeThumbVal = parseFloat(this.activeThumb.ariaValueNow);
128
+ const thumbVal = parseFloat(t.ariaValueNow);
129
+ const rangeFrom = Math.min(activeThumbVal, thumbVal);
130
+ const rangeTo = Math.max(activeThumbVal, thumbVal);
131
+ (_a = this.activeThumb) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-valuetext', `${this.formatValue(rangeFrom)} - ${this.formatValue(rangeTo)}`);
132
+ }
133
+ });
134
+ }
135
+ renderThumb(value, ariaLabel, thumbId) {
136
+ const percent = `${this.valueToFraction(value) * 100}%`;
137
+ const ariaValueText = thumbId === 'thumbFrom' ? `min ${this.lower}` : `max ${this.upper}`;
138
+ const textValue = this.labels
139
+ ? this.labels[value]
140
+ : this.valueFormat || this.valueFormatOptions
141
+ ? this.formatValue(value)
142
+ : ariaValueText;
143
+ return html `
144
+ <div
145
+ part="thumb"
146
+ id=${ifDefined(thumbId)}
147
+ tabindex=${this.disabled ? -1 : 0}
148
+ style=${styleMap({ insetInlineStart: percent })}
149
+ role="slider"
150
+ aria-valuemin=${this.actualMin}
151
+ aria-valuemax=${this.actualMax}
152
+ aria-valuenow=${value}
153
+ aria-valuetext=${ifDefined(textValue)}
154
+ aria-label=${ifDefined(ariaLabel)}
155
+ aria-disabled=${this.disabled ? 'true' : 'false'}
156
+ @pointerenter=${this.handleThumbPointerEnter}
157
+ @pointerleave=${this.handleThumbPointerLeave}
158
+ @focus=${(ev) => this.handleFocus(ev)}
159
+ @blur=${() => (this.activeThumb = undefined)}
160
+ ></div>
161
+ ${this.hideTooltip
162
+ ? html ``
163
+ : html `
164
+ <div
165
+ part="thumb-label"
166
+ style=${styleMap({
167
+ opacity: this.thumbLabelsVisible ? '1' : '0',
168
+ insetInlineStart: percent,
169
+ })}
170
+ >
171
+ <div part="thumb-label-inner">
172
+ ${this.labels ? this.labels[value] : this.formatValue(value)}
173
+ </div>
174
+ </div>
175
+ `}
176
+ `;
177
+ }
117
178
  renderThumbs() {
118
179
  return html `${this.renderThumb(this.lower, this.ariaLabelLower, 'thumbFrom')}
119
180
  ${this.renderThumb(this.upper, this.ariaLabelUpper, 'thumbTo')}`;