@sbb-esta/lyne-elements 1.3.0 → 1.5.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 (305) hide show
  1. package/autocomplete/autocomplete-base-element.d.ts +93 -0
  2. package/autocomplete/autocomplete-base-element.d.ts.map +1 -0
  3. package/autocomplete/autocomplete.d.ts +13 -86
  4. package/autocomplete/autocomplete.d.ts.map +1 -1
  5. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +45 -0
  6. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  7. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +33 -0
  8. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -0
  9. package/autocomplete-grid/autocomplete-grid-button.d.ts +2 -0
  10. package/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
  11. package/autocomplete-grid/autocomplete-grid-button.js +66 -0
  12. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts +17 -0
  13. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts.map +1 -0
  14. package/autocomplete-grid/autocomplete-grid-cell.d.ts +2 -0
  15. package/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
  16. package/autocomplete-grid/autocomplete-grid-cell.js +28 -0
  17. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +21 -0
  18. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts.map +1 -0
  19. package/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts +2 -0
  20. package/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts.map +1 -0
  21. package/autocomplete-grid/autocomplete-grid-optgroup.d.ts +2 -0
  22. package/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
  23. package/autocomplete-grid/autocomplete-grid-optgroup.js +37 -0
  24. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts +40 -0
  25. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts.map +1 -0
  26. package/autocomplete-grid/autocomplete-grid-option.d.ts +2 -0
  27. package/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
  28. package/autocomplete-grid/autocomplete-grid-option.js +67 -0
  29. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts +18 -0
  30. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts.map +1 -0
  31. package/autocomplete-grid/autocomplete-grid-row.d.ts +2 -0
  32. package/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
  33. package/autocomplete-grid/autocomplete-grid-row.js +31 -0
  34. package/autocomplete-grid/autocomplete-grid.d.ts +2 -0
  35. package/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  36. package/autocomplete-grid/autocomplete-grid.js +139 -0
  37. package/autocomplete-grid.d.ts +7 -0
  38. package/autocomplete-grid.d.ts.map +1 -0
  39. package/autocomplete-grid.js +6 -0
  40. package/autocomplete.d.ts +1 -0
  41. package/autocomplete.d.ts.map +1 -1
  42. package/autocomplete.js +162 -145
  43. package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  44. package/button/mini-button/mini-button-base-element.d.ts +9 -0
  45. package/button/mini-button/mini-button-base-element.d.ts.map +1 -0
  46. package/button/mini-button/mini-button.d.ts +3 -4
  47. package/button/mini-button/mini-button.d.ts.map +1 -1
  48. package/button/mini-button.d.ts +1 -0
  49. package/button/mini-button.d.ts.map +1 -1
  50. package/button/mini-button.js +23 -13
  51. package/checkbox/checkbox/checkbox.d.ts +5 -0
  52. package/checkbox/checkbox/checkbox.d.ts.map +1 -1
  53. package/checkbox/checkbox-panel/checkbox-panel.d.ts +5 -0
  54. package/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  55. package/checkbox/checkbox-panel.js +28 -18
  56. package/checkbox/checkbox.js +30 -19
  57. package/checkbox/common/checkbox-common.d.ts +1 -3
  58. package/checkbox/common/checkbox-common.d.ts.map +1 -1
  59. package/checkbox/common.js +16 -25
  60. package/container/container.js +3 -3
  61. package/core/i18n/i18n.d.ts +2 -0
  62. package/core/i18n/i18n.d.ts.map +1 -1
  63. package/core/i18n.js +61 -49
  64. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  65. package/core/mixins/panel-mixin.d.ts +1 -0
  66. package/core/mixins/panel-mixin.d.ts.map +1 -1
  67. package/core/mixins.js +3 -1
  68. package/core/overlay/overlay-trigger-attributes.d.ts +1 -1
  69. package/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
  70. package/core/overlay.js +2 -2
  71. package/core/styles/core.scss +1 -0
  72. package/core/styles/mixins/buttons.scss +13 -8
  73. package/core/styles/mixins/helpers.scss +1 -0
  74. package/core/styles/mixins/pearl-chain-bullet.scss +1 -1
  75. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +1 -0
  76. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +2 -1
  77. package/core.css +3 -1
  78. package/custom-elements.json +14325 -9229
  79. package/datepicker/datepicker-next-day.js +12 -12
  80. package/datepicker/datepicker-previous-day.js +1 -1
  81. package/development/autocomplete/autocomplete-base-element.d.ts +93 -0
  82. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -0
  83. package/development/autocomplete/autocomplete.d.ts +13 -86
  84. package/development/autocomplete/autocomplete.d.ts.map +1 -1
  85. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +45 -0
  86. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  87. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +33 -0
  88. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -0
  89. package/development/autocomplete-grid/autocomplete-grid-button.d.ts +2 -0
  90. package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
  91. package/development/autocomplete-grid/autocomplete-grid-button.js +224 -0
  92. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts +17 -0
  93. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts.map +1 -0
  94. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +2 -0
  95. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
  96. package/development/autocomplete-grid/autocomplete-grid-cell.js +67 -0
  97. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +21 -0
  98. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts.map +1 -0
  99. package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts +2 -0
  100. package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts.map +1 -0
  101. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +2 -0
  102. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
  103. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +45 -0
  104. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts +40 -0
  105. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts.map +1 -0
  106. package/development/autocomplete-grid/autocomplete-grid-option.d.ts +2 -0
  107. package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
  108. package/development/autocomplete-grid/autocomplete-grid-option.js +174 -0
  109. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts +18 -0
  110. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts.map +1 -0
  111. package/development/autocomplete-grid/autocomplete-grid-row.d.ts +2 -0
  112. package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
  113. package/development/autocomplete-grid/autocomplete-grid-row.js +143 -0
  114. package/development/autocomplete-grid/autocomplete-grid.d.ts +2 -0
  115. package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  116. package/development/autocomplete-grid/autocomplete-grid.js +185 -0
  117. package/development/autocomplete-grid.d.ts +7 -0
  118. package/development/autocomplete-grid.d.ts.map +1 -0
  119. package/development/autocomplete-grid.js +7 -0
  120. package/development/autocomplete.d.ts +1 -0
  121. package/development/autocomplete.d.ts.map +1 -1
  122. package/development/autocomplete.js +168 -143
  123. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  124. package/development/breadcrumb/breadcrumb-group.js +1 -1
  125. package/development/button/mini-button/mini-button-base-element.d.ts +9 -0
  126. package/development/button/mini-button/mini-button-base-element.d.ts.map +1 -0
  127. package/development/button/mini-button/mini-button.d.ts +3 -4
  128. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  129. package/development/button/mini-button.d.ts +1 -0
  130. package/development/button/mini-button.d.ts.map +1 -1
  131. package/development/button/mini-button.js +32 -16
  132. package/development/checkbox/checkbox/checkbox.d.ts +5 -0
  133. package/development/checkbox/checkbox/checkbox.d.ts.map +1 -1
  134. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +5 -0
  135. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  136. package/development/checkbox/checkbox-panel.js +13 -2
  137. package/development/checkbox/checkbox.js +19 -1
  138. package/development/checkbox/common/checkbox-common.d.ts +1 -3
  139. package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
  140. package/development/checkbox/common.js +13 -19
  141. package/development/container/container.js +2 -1
  142. package/development/core/i18n/i18n.d.ts +2 -0
  143. package/development/core/i18n/i18n.d.ts.map +1 -1
  144. package/development/core/i18n.js +15 -1
  145. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  146. package/development/core/mixins/panel-mixin.d.ts +1 -0
  147. package/development/core/mixins/panel-mixin.d.ts.map +1 -1
  148. package/development/core/mixins.js +4 -2
  149. package/development/core/overlay/overlay-trigger-attributes.d.ts +1 -1
  150. package/development/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
  151. package/development/core/overlay.js +3 -3
  152. package/development/datepicker/datepicker-next-day.js +8 -7
  153. package/development/datepicker/datepicker-previous-day.js +8 -7
  154. package/development/flip-card/flip-card/flip-card.d.ts +32 -0
  155. package/development/flip-card/flip-card/flip-card.d.ts.map +1 -0
  156. package/development/flip-card/flip-card/index.d.ts +2 -0
  157. package/development/flip-card/flip-card/index.d.ts.map +1 -0
  158. package/development/flip-card/flip-card-details/flip-card-details.d.ts +22 -0
  159. package/development/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -0
  160. package/development/flip-card/flip-card-details/index.d.ts +2 -0
  161. package/development/flip-card/flip-card-details/index.d.ts.map +1 -0
  162. package/development/flip-card/flip-card-details.d.ts +2 -0
  163. package/development/flip-card/flip-card-details.d.ts.map +1 -0
  164. package/development/flip-card/flip-card-details.js +105 -0
  165. package/development/flip-card/flip-card-summary/flip-card-summary.d.ts +22 -0
  166. package/development/flip-card/flip-card-summary/flip-card-summary.d.ts.map +1 -0
  167. package/development/flip-card/flip-card-summary/index.d.ts +2 -0
  168. package/development/flip-card/flip-card-summary/index.d.ts.map +1 -0
  169. package/development/flip-card/flip-card-summary.d.ts +2 -0
  170. package/development/flip-card/flip-card-summary.d.ts.map +1 -0
  171. package/development/flip-card/flip-card-summary.js +151 -0
  172. package/development/flip-card/flip-card.d.ts +2 -0
  173. package/development/flip-card/flip-card.d.ts.map +1 -0
  174. package/development/flip-card/flip-card.js +187 -0
  175. package/development/flip-card.d.ts +4 -0
  176. package/development/flip-card.d.ts.map +1 -0
  177. package/development/flip-card.js +4 -0
  178. package/development/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  179. package/development/form-field/form-field-clear.js +8 -7
  180. package/development/form-field/form-field.js +3 -3
  181. package/development/icon/icon-base.d.ts.map +1 -1
  182. package/development/icon/icon.d.ts.map +1 -1
  183. package/development/icon.js +1 -1
  184. package/development/image/image.d.ts +1 -0
  185. package/development/image/image.d.ts.map +1 -1
  186. package/development/image.js +10 -4
  187. package/development/map-container.js +12 -14
  188. package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  189. package/development/navigation/navigation-marker.js +1 -1
  190. package/development/option/optgroup/optgroup-base-element.d.ts +28 -0
  191. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -0
  192. package/development/option/optgroup/optgroup.d.ts +7 -20
  193. package/development/option/optgroup/optgroup.d.ts.map +1 -1
  194. package/development/option/optgroup.d.ts +1 -0
  195. package/development/option/optgroup.d.ts.map +1 -1
  196. package/development/option/optgroup.js +74 -49
  197. package/development/option/option/option-base-element.d.ts +69 -0
  198. package/development/option/option/option-base-element.d.ts.map +1 -0
  199. package/development/option/option/option.d.ts +14 -57
  200. package/development/option/option/option.d.ts.map +1 -1
  201. package/development/option/option.d.ts +1 -0
  202. package/development/option/option.d.ts.map +1 -1
  203. package/development/option/option.js +267 -220
  204. package/development/radio-button/common/radio-button-common.d.ts +1 -1
  205. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  206. package/development/radio-button/common.js +13 -12
  207. package/development/radio-button/radio-button/radio-button.d.ts +7 -0
  208. package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
  209. package/development/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  210. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  211. package/development/radio-button/radio-button-group.js +1 -1
  212. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +7 -0
  213. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  214. package/development/radio-button/radio-button-panel.js +16 -2
  215. package/development/radio-button/radio-button.js +16 -2
  216. package/development/skiplink-list/skiplink-list.d.ts +1 -0
  217. package/development/skiplink-list/skiplink-list.d.ts.map +1 -1
  218. package/development/skiplink-list.js +1 -1
  219. package/development/status/status.d.ts +1 -1
  220. package/development/status/status.d.ts.map +1 -1
  221. package/development/status.js +39 -2
  222. package/development/tabs/tab-group.js +2 -9
  223. package/development/tabs/tab.js +10 -2
  224. package/development/tag/tag-group.js +1 -1
  225. package/development/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -1
  226. package/development/timetable-occupancy-icon.js +3 -6
  227. package/development/toggle/toggle.js +1 -1
  228. package/development/visual-checkbox/visual-checkbox.d.ts +3 -0
  229. package/development/visual-checkbox/visual-checkbox.d.ts.map +1 -1
  230. package/development/visual-checkbox.js +11 -3
  231. package/flip-card/flip-card/flip-card.d.ts +32 -0
  232. package/flip-card/flip-card/flip-card.d.ts.map +1 -0
  233. package/flip-card/flip-card/index.d.ts +2 -0
  234. package/flip-card/flip-card/index.d.ts.map +1 -0
  235. package/flip-card/flip-card-details/flip-card-details.d.ts +22 -0
  236. package/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -0
  237. package/flip-card/flip-card-details/index.d.ts +2 -0
  238. package/flip-card/flip-card-details/index.d.ts.map +1 -0
  239. package/flip-card/flip-card-details.d.ts +2 -0
  240. package/flip-card/flip-card-details.d.ts.map +1 -0
  241. package/flip-card/flip-card-details.js +52 -0
  242. package/flip-card/flip-card-summary/flip-card-summary.d.ts +22 -0
  243. package/flip-card/flip-card-summary/flip-card-summary.d.ts.map +1 -0
  244. package/flip-card/flip-card-summary/index.d.ts +2 -0
  245. package/flip-card/flip-card-summary/index.d.ts.map +1 -0
  246. package/flip-card/flip-card-summary.d.ts +2 -0
  247. package/flip-card/flip-card-summary.d.ts.map +1 -0
  248. package/flip-card/flip-card-summary.js +41 -0
  249. package/flip-card/flip-card.d.ts +2 -0
  250. package/flip-card/flip-card.d.ts.map +1 -0
  251. package/flip-card/flip-card.js +58 -0
  252. package/flip-card.d.ts +4 -0
  253. package/flip-card.d.ts.map +1 -0
  254. package/flip-card.js +3 -0
  255. package/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  256. package/form-field/form-field-clear.js +11 -11
  257. package/form-field/form-field.js +2 -2
  258. package/icon/icon-base.d.ts.map +1 -1
  259. package/icon/icon.d.ts.map +1 -1
  260. package/image/image.d.ts +1 -0
  261. package/image/image.d.ts.map +1 -1
  262. package/image.js +24 -24
  263. package/index.d.ts +18 -0
  264. package/index.js +18 -0
  265. package/map-container.js +8 -8
  266. package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  267. package/option/optgroup/optgroup-base-element.d.ts +28 -0
  268. package/option/optgroup/optgroup-base-element.d.ts.map +1 -0
  269. package/option/optgroup/optgroup.d.ts +7 -20
  270. package/option/optgroup/optgroup.d.ts.map +1 -1
  271. package/option/optgroup.d.ts +1 -0
  272. package/option/optgroup.d.ts.map +1 -1
  273. package/option/optgroup.js +80 -60
  274. package/option/option/option-base-element.d.ts +69 -0
  275. package/option/option/option-base-element.d.ts.map +1 -0
  276. package/option/option/option.d.ts +14 -57
  277. package/option/option/option.d.ts.map +1 -1
  278. package/option/option.d.ts +1 -0
  279. package/option/option.d.ts.map +1 -1
  280. package/option/option.js +186 -145
  281. package/package.json +56 -1
  282. package/radio-button/common/radio-button-common.d.ts +1 -1
  283. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  284. package/radio-button/common.js +6 -15
  285. package/radio-button/radio-button/radio-button.d.ts +7 -0
  286. package/radio-button/radio-button/radio-button.d.ts.map +1 -1
  287. package/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  288. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  289. package/radio-button/radio-button-panel/radio-button-panel.d.ts +7 -0
  290. package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  291. package/radio-button/radio-button-panel.js +35 -22
  292. package/radio-button/radio-button.js +32 -19
  293. package/skiplink-list/skiplink-list.d.ts +1 -0
  294. package/skiplink-list/skiplink-list.d.ts.map +1 -1
  295. package/standard-theme.css +3 -1
  296. package/status/status.d.ts +1 -1
  297. package/status/status.d.ts.map +1 -1
  298. package/status.js +17 -13
  299. package/tabs/tab-group.js +19 -19
  300. package/tabs/tab.js +10 -10
  301. package/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -1
  302. package/timetable-occupancy-icon.js +22 -24
  303. package/visual-checkbox/visual-checkbox.d.ts +3 -0
  304. package/visual-checkbox/visual-checkbox.d.ts.map +1 -1
  305. package/visual-checkbox.js +23 -20
@@ -1,35 +1,22 @@
1
- import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
1
+ import { SbbAutocompleteElement } from '../../autocomplete.js';
2
+ import { SbbOptionElement } from '../option.js';
3
+ import { SbbOptgroupBaseElement } from './optgroup-base-element.js';
2
4
 
3
- declare const SbbOptGroupElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
4
5
  /**
5
6
  * It can be used as a container for one or more `sbb-option`.
6
7
  *
7
8
  * @slot - Use the unnamed slot to add `sbb-option` elements to the `sbb-optgroup`.
8
9
  */
9
- export declare class SbbOptGroupElement extends SbbOptGroupElement_base {
10
- static styles: CSSResultGroup;
11
- /** Option group label. */
12
- label: string;
13
- private _negative;
14
- private _inertAriaGroups;
15
- private _negativeObserver;
16
- private get _options();
17
- constructor();
10
+ export declare class SbbOptGroupElement extends SbbOptgroupBaseElement {
11
+ protected get options(): SbbOptionElement[];
12
+ protected getAutocompleteParent(): SbbAutocompleteElement | null;
13
+ protected setAttributeFromParent(): void;
18
14
  connectedCallback(): void;
19
- protected willUpdate(changedProperties: PropertyValues<this>): void;
20
- disconnectedCallback(): void;
21
15
  private _setVariantByContext;
22
- private _handleSlotchange;
23
- private _proxyGroupLabelToOptions;
24
- private _proxyDisabledToOptions;
25
- private _highlightOptions;
26
- private _onNegativeChange;
27
- protected render(): TemplateResult;
28
16
  }
29
17
  declare global {
30
18
  interface HTMLElementTagNameMap {
31
19
  'sbb-optgroup': SbbOptGroupElement;
32
20
  }
33
21
  }
34
- export {};
35
22
  //# sourceMappingURL=optgroup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"optgroup.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/optgroup/optgroup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAWvC,OAAO,kBAAkB,CAAC;;AAS1B;;;;GAIG;AACH,qBAEa,kBAAmB,SAAQ,uBAA+C;IACrF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,0BAA0B;IACP,KAAK,EAAG,MAAM,CAAC;IAEzB,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,iBAAiB,CAAgE;IAEzF,OAAO,KAAK,QAAQ,GAEnB;;IAce,iBAAiB,IAAI,IAAI;cAmBtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAe5D,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,yBAAyB;IAkBjC,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,iBAAiB;cAIN,MAAM,IAAI,cAAc;CAY5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,cAAc,EAAE,kBAAkB,CAAC;KACpC;CACF"}
1
+ {"version":3,"file":"optgroup.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/optgroup/optgroup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE;;;;GAIG;AACH,qBACa,kBAAmB,SAAQ,sBAAsB;IAC5D,SAAS,KAAK,OAAO,IAAI,gBAAgB,EAAE,CAE1C;IAED,SAAS,CAAC,qBAAqB,IAAI,sBAAsB,GAAG,IAAI;IAIhE,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAKxB,iBAAiB,IAAI,IAAI;IAMzC,OAAO,CAAC,oBAAoB;CAO7B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,cAAc,EAAE,kBAAkB,CAAC;KACpC;CACF"}
@@ -1,2 +1,3 @@
1
1
  export * from './optgroup/optgroup.js';
2
+ export * from './optgroup/optgroup-base-element.js';
2
3
  //# sourceMappingURL=optgroup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"optgroup.d.ts","sourceRoot":"","sources":["../../../src/elements/option/optgroup.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"optgroup.d.ts","sourceRoot":"","sources":["../../../src/elements/option/optgroup.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,qCAAqC,CAAC"}
@@ -1,83 +1,74 @@
1
- import { css as d, LitElement as g, html as c } from "lit";
2
- import { property as h, state as n, customElement as u } from "lit/decorators.js";
3
- import { hostAttributes as v } from "../core/decorators.js";
4
- import { setOrRemoveAttribute as f, isSafari as x } from "../core/dom.js";
5
- import { SbbDisabledMixin as _, SbbHydrationMixin as m } from "../core/mixins.js";
6
- import { AgnosticMutationObserver as y } from "../core/observers.js";
1
+ import { property as g, state as d, customElement as c } from "lit/decorators.js";
2
+ import { css as u, LitElement as h, html as v } from "lit";
3
+ import { hostAttributes as f } from "../core/decorators.js";
4
+ import { setOrRemoveAttribute as x, isSafari as m } from "../core/dom.js";
5
+ import { SbbDisabledMixin as _, SbbHydrationMixin as y } from "../core/mixins.js";
6
+ import { AgnosticMutationObserver as A } from "../core/observers.js";
7
7
  import "../divider.js";
8
- const A = d`*,:before,:after{box-sizing:border-box}:host{--sbb-optgroup-divider-display: block;--sbb-optgroup-divider-spacing: 0;--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-padding-inline: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-font-size: var(--sbb-typo-scale-0-75x);--sbb-optgroup-label-color: var(--sbb-color-metal);display:block}:host(:first-child){--sbb-optgroup-divider-display: none;--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-2x)}:host([data-variant=select]){--sbb-optgroup-divider-spacing: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-padding-inline: var(--sbb-spacing-responsive-xxxs);--sbb-optgroup-label-padding-start: 0;--sbb-optgroup-label-font-size: inherit}:host([data-variant=select]:first-child){--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x)}:host([data-negative]){--sbb-optgroup-label-color: var(--sbb-color-smoke)}.sbb-optgroup{margin-block:var(--sbb-spacing-fixed-4x);margin-inline:var(--sbb-spacing-fixed-4x)}.sbb-optgroup__label{--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);display:flex;column-gap:var(--sbb-spacing-responsive-xxxs);color:var(--sbb-optgroup-label-color);-webkit-text-fill-color:var(--sbb-optgroup-label-color);padding-inline:var(--sbb-optgroup-label-padding-inline);padding-block:var(--sbb-optgroup-label-padding-start) var(--sbb-spacing-fixed-2x)}:host([data-variant=select][data-multiple]) .sbb-optgroup__label{--sbb-text-font-size: var(--sbb-font-size-text-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);padding-inline-start:calc(var(--sbb-spacing-responsive-xxxs) + var(--sbb-spacing-fixed-8x))}.sbb-optgroup__divider{display:var(--sbb-optgroup-divider-display);padding-block:var(--sbb-optgroup-divider-spacing)}.sbb-optgroup__icon-space{display:var(--sbb-option-icon-container-display, none);min-width:var(--sbb-size-icon-ui-small)}`;
9
- var O = Object.defineProperty, z = Object.getOwnPropertyDescriptor, b = (t, e, i, o) => {
10
- for (var s = o > 1 ? void 0 : o ? z(e, i) : e, l = t.length - 1, p; l >= 0; l--)
11
- (p = t[l]) && (s = (o ? p(e, i, s) : p(s)) || s);
12
- return o && s && O(e, i, s), s;
8
+ const O = u`*,:before,:after{box-sizing:border-box}:host{--sbb-optgroup-divider-display: block;--sbb-optgroup-divider-spacing: 0;--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-padding-inline: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-font-size: var(--sbb-typo-scale-0-75x);--sbb-optgroup-label-color: var(--sbb-color-metal);display:block}:host(:first-child){--sbb-optgroup-divider-display: none;--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-2x)}:host([data-variant=select]){--sbb-optgroup-divider-spacing: var(--sbb-spacing-fixed-4x);--sbb-optgroup-label-padding-inline: var(--sbb-spacing-responsive-xxxs);--sbb-optgroup-label-padding-start: 0;--sbb-optgroup-label-font-size: inherit}:host([data-variant=select]:first-child){--sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x)}:host([data-negative]){--sbb-optgroup-label-color: var(--sbb-color-smoke)}.sbb-optgroup{margin-block:var(--sbb-spacing-fixed-4x);margin-inline:var(--sbb-spacing-fixed-4x)}.sbb-optgroup__label{--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);display:flex;column-gap:var(--sbb-spacing-responsive-xxxs);color:var(--sbb-optgroup-label-color);-webkit-text-fill-color:var(--sbb-optgroup-label-color);padding-inline:var(--sbb-optgroup-label-padding-inline);padding-block:var(--sbb-optgroup-label-padding-start) var(--sbb-spacing-fixed-2x)}:host([data-variant=select][data-multiple]) .sbb-optgroup__label{--sbb-text-font-size: var(--sbb-font-size-text-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);padding-inline-start:calc(var(--sbb-spacing-responsive-xxxs) + var(--sbb-spacing-fixed-8x))}.sbb-optgroup__divider{display:var(--sbb-optgroup-divider-display);padding-block:var(--sbb-optgroup-divider-spacing)}.sbb-optgroup__icon-space{display:var(--sbb-option-icon-container-display, none);min-width:var(--sbb-size-icon-ui-small)}`;
9
+ var C = Object.defineProperty, z = Object.getOwnPropertyDescriptor, n = (t, i, e, o) => {
10
+ for (var s = o > 1 ? void 0 : o ? z(i, e) : i, a = t.length - 1, r; a >= 0; a--)
11
+ (r = t[a]) && (s = (o ? r(i, e, s) : r(s)) || s);
12
+ return o && s && C(i, e, s), s;
13
13
  };
14
- const r = x;
15
- let a = class extends _(m(g)) {
14
+ const l = m;
15
+ let b = class extends _(
16
+ y(h)
17
+ ) {
16
18
  constructor() {
17
- super(), this._negative = !1, this._inertAriaGroups = !1, this._negativeObserver = new y(() => this._onNegativeChange()), r && (this.hydrationRequired ? this.hydrationComplete.then(() => this._inertAriaGroups = r) : this._inertAriaGroups = r);
18
- }
19
- get _options() {
20
- var t;
21
- return Array.from(((t = this.querySelectorAll) == null ? void 0 : t.call(this, "sbb-option")) ?? []);
19
+ super(), this.negative = !1, this._inertAriaGroups = !1, this._negativeObserver = new A(() => this._onNegativeChange()), l && (this.hydrationRequired ? this.hydrationComplete.then(() => this._inertAriaGroups = l) : this._inertAriaGroups = l);
22
20
  }
23
21
  connectedCallback() {
24
- var t, e;
25
- super.connectedCallback(), (t = this._negativeObserver) == null || t.disconnect(), this._negative = !!((e = this.closest) != null && e.call(
26
- this,
27
- ":is(sbb-autocomplete, sbb-select, sbb-form-field)[negative]"
28
- )), this.toggleAttribute("data-negative", this._negative), this._negativeObserver.observe(this, {
22
+ var t;
23
+ super.connectedCallback(), (t = this._negativeObserver) == null || t.disconnect(), this.setAttributeFromParent(), this._negativeObserver.observe(this, {
29
24
  attributes: !0,
30
25
  attributeFilter: ["data-negative"]
31
- }), this._setVariantByContext(), this._proxyGroupLabelToOptions(), this.toggleAttribute("data-multiple", !!this.closest("sbb-select[multiple]"));
26
+ }), this._proxyGroupLabelToOptions();
32
27
  }
33
28
  willUpdate(t) {
34
- super.willUpdate(t), t.has("disabled") && (this._inertAriaGroups || this.setAttribute("aria-disabled", this.disabled.toString()), this._proxyDisabledToOptions()), t.has("label") && this._proxyGroupLabelToOptions();
29
+ super.willUpdate(t), t.has("disabled") && (this._inertAriaGroups || this.setAttribute("aria-disabled", this.disabled.toString()), this.proxyDisabledToOptions()), t.has("label") && this._proxyGroupLabelToOptions();
35
30
  }
36
31
  disconnectedCallback() {
37
32
  var t;
38
33
  super.disconnectedCallback(), (t = this._negativeObserver) == null || t.disconnect();
39
34
  }
40
- _setVariantByContext() {
41
- var t, e;
42
- (t = this.closest) != null && t.call(this, "sbb-autocomplete") ? this.setAttribute("data-variant", "autocomplete") : (e = this.closest) != null && e.call(this, "sbb-select") && this.setAttribute("data-variant", "select");
43
- }
44
35
  _handleSlotchange() {
45
- this._proxyDisabledToOptions(), this._proxyGroupLabelToOptions(), this._highlightOptions();
36
+ this.proxyDisabledToOptions(), this._proxyGroupLabelToOptions(), this._highlightOptions();
46
37
  }
47
38
  _proxyGroupLabelToOptions() {
48
- var t, e;
39
+ var t, i;
49
40
  if (this._inertAriaGroups)
50
41
  if (this.label) {
51
42
  this.removeAttribute("aria-label");
52
- for (const i of this._options)
53
- i.setAttribute("data-group-label", this.label), (t = i.requestUpdate) == null || t.call(i);
43
+ for (const e of this.options)
44
+ e.setAttribute("data-group-label", this.label), (t = e.requestUpdate) == null || t.call(e);
54
45
  } else
55
- for (const i of this._options)
56
- i.removeAttribute("data-group-label"), (e = i.requestUpdate) == null || e.call(i);
46
+ for (const e of this.options)
47
+ e.removeAttribute("data-group-label"), (i = e.requestUpdate) == null || i.call(e);
57
48
  else {
58
- f(this, "aria-label", this.label);
49
+ x(this, "aria-label", this.label);
59
50
  return;
60
51
  }
61
52
  }
62
- _proxyDisabledToOptions() {
63
- for (const t of this._options)
53
+ proxyDisabledToOptions() {
54
+ for (const t of this.options)
64
55
  t.toggleAttribute("data-group-disabled", this.disabled);
65
56
  }
66
57
  _highlightOptions() {
67
- var i;
68
- const t = this.closest("sbb-autocomplete");
58
+ var e;
59
+ const t = this.getAutocompleteParent();
69
60
  if (!t)
70
61
  return;
71
- const e = (i = t.triggerElement) == null ? void 0 : i.value;
72
- e && this._options.forEach((o) => o.highlight(e));
62
+ const i = (e = t.triggerElement) == null ? void 0 : e.value;
63
+ i && this.options.forEach((o) => o.highlight(i));
73
64
  }
74
65
  _onNegativeChange() {
75
- this._negative = this.hasAttribute("data-negative");
66
+ this.negative = this.hasAttribute("data-negative");
76
67
  }
77
68
  render() {
78
- return c`
69
+ return v`
79
70
  <div class="sbb-optgroup__divider">
80
- <sbb-divider ?negative=${this._negative}></sbb-divider>
71
+ <sbb-divider ?negative=${this.negative}></sbb-divider>
81
72
  </div>
82
73
  <div class="sbb-optgroup__label" aria-hidden="true">
83
74
  <div class="sbb-optgroup__icon-space"></div>
@@ -87,20 +78,49 @@ let a = class extends _(m(g)) {
87
78
  `;
88
79
  }
89
80
  };
90
- a.styles = A;
91
- b([
92
- h()
93
- ], a.prototype, "label", 2);
94
- b([
95
- n()
96
- ], a.prototype, "_negative", 2);
97
- b([
98
- n()
99
- ], a.prototype, "_inertAriaGroups", 2);
100
- a = b([
101
- u("sbb-optgroup"),
102
- v({ role: r ? null : "group" })
103
- ], a);
81
+ b.styles = O;
82
+ n([
83
+ g()
84
+ ], b.prototype, "label", 2);
85
+ n([
86
+ d()
87
+ ], b.prototype, "negative", 2);
88
+ n([
89
+ d()
90
+ ], b.prototype, "_inertAriaGroups", 2);
91
+ b = n([
92
+ f({ role: l ? null : "group" })
93
+ ], b);
94
+ var G = Object.defineProperty, w = Object.getOwnPropertyDescriptor, P = (t, i, e, o) => {
95
+ for (var s = o > 1 ? void 0 : o ? w(i, e) : i, a = t.length - 1, r; a >= 0; a--)
96
+ (r = t[a]) && (s = (o ? r(i, e, s) : r(s)) || s);
97
+ return o && s && G(i, e, s), s;
98
+ };
99
+ let p = class extends b {
100
+ get options() {
101
+ var t;
102
+ return Array.from(((t = this.querySelectorAll) == null ? void 0 : t.call(this, "sbb-option")) ?? []);
103
+ }
104
+ getAutocompleteParent() {
105
+ var t;
106
+ return ((t = this.closest) == null ? void 0 : t.call(this, "sbb-autocomplete")) || null;
107
+ }
108
+ setAttributeFromParent() {
109
+ var t;
110
+ this.negative = !!((t = this.closest) != null && t.call(this, ":is(sbb-autocomplete, sbb-select, sbb-form-field)[negative]")), this.toggleAttribute("data-negative", this.negative);
111
+ }
112
+ connectedCallback() {
113
+ super.connectedCallback(), this.toggleAttribute("data-multiple", !!this.closest("sbb-select[multiple]")), this._setVariantByContext();
114
+ }
115
+ _setVariantByContext() {
116
+ var t, i;
117
+ (t = this.closest) != null && t.call(this, "sbb-autocomplete") ? this.setAttribute("data-variant", "autocomplete") : (i = this.closest) != null && i.call(this, "sbb-select") && this.setAttribute("data-variant", "select");
118
+ }
119
+ };
120
+ p = P([
121
+ c("sbb-optgroup")
122
+ ], p);
104
123
  export {
105
- a as SbbOptGroupElement
124
+ p as SbbOptGroupElement,
125
+ b as SbbOptgroupBaseElement
106
126
  };
@@ -0,0 +1,69 @@
1
+ import { LitElement, nothing, PropertyValues, TemplateResult } from 'lit';
2
+ import { EventEmitter } from '../../core/eventing.js';
3
+
4
+ declare const SbbOptionBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
5
+ export declare abstract class SbbOptionBaseElement extends SbbOptionBaseElement_base {
6
+ protected abstract optionId: string;
7
+ /**
8
+ * Value of the option.
9
+ *
10
+ * @description Developer note: In this case updating the attribute must be synchronous.
11
+ * Due to this, it is implemented as a getter/setter and the attributeChangedCallback() handles the diff check.
12
+ */
13
+ set value(value: string);
14
+ get value(): string;
15
+ /** Whether the option is currently active. */
16
+ active?: boolean;
17
+ /** Whether the option is selected. */
18
+ set selected(value: boolean);
19
+ get selected(): boolean;
20
+ /** Emits when the option selection status changes. */
21
+ protected abstract selectionChange: EventEmitter;
22
+ /** Emits when an option was selected by user. */
23
+ protected abstract optionSelected: EventEmitter;
24
+ /** Whether to apply the negative styling */
25
+ protected negative: boolean;
26
+ /** Whether the component must be set disabled due disabled attribute on sbb-optgroup. */
27
+ protected disabledFromGroup: boolean;
28
+ protected label?: string;
29
+ /** Disable the highlight of the label. */
30
+ protected disableLabelHighlight: boolean;
31
+ /** The portion of the highlighted label. */
32
+ private _highlightString;
33
+ private _inertAriaGroups;
34
+ private _abort;
35
+ protected abstract selectByClick(event: MouseEvent): void;
36
+ protected abstract setAttributeFromParent(): void;
37
+ protected updateDisableHighlight(disabled: boolean): void;
38
+ /** MutationObserver on data attributes. */
39
+ private _optionAttributeObserver;
40
+ constructor();
41
+ attributeChangedCallback(name: string, old: string | null, value: string | null): void;
42
+ /**
43
+ * Highlight the label of the option
44
+ * @param value the highlighted portion of the label
45
+ * @internal
46
+ */
47
+ highlight(value: string): void;
48
+ /**
49
+ * @internal
50
+ */
51
+ setSelectedViaUserInteraction(selected: boolean): void;
52
+ connectedCallback(): void;
53
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
54
+ protected firstUpdated(changedProperties: PropertyValues<this>): void;
55
+ disconnectedCallback(): void;
56
+ protected init(): void;
57
+ protected updateAriaDisabled(): void;
58
+ private _updateAriaSelected;
59
+ /** Observe changes on data attributes and set the appropriate values. */
60
+ protected onOptionAttributesChange(mutationsList: MutationRecord[]): void;
61
+ protected handleHighlightState(): void;
62
+ protected getHighlightedLabel(): TemplateResult;
63
+ protected renderIcon(): TemplateResult;
64
+ protected renderLabel(): TemplateResult | typeof nothing;
65
+ protected renderTick(): TemplateResult | typeof nothing;
66
+ protected render(): TemplateResult;
67
+ }
68
+ export {};
69
+ //# sourceMappingURL=option-base-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-base-element.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/option/option-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAM1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,OAAO,6BAA6B,CAAC;;AAgBrC,8BACsB,oBAAqB,SAAQ,yBAElD;IACC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAEpC;;;;;OAKG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,8CAA8C;IACK,MAAM,CAAC,EAAE,OAAO,CAAC;IAEpE,sCAAsC;IACtC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,sDAAsD;IACtD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC;IAEjD,iDAAiD;IACjD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC;IAEhD,4CAA4C;IACnC,SAAS,CAAC,QAAQ,UAAS;IAEpC,yFAAyF;IAChF,SAAS,CAAC,iBAAiB,UAAS;IAEpC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAElC,0CAA0C;IACjC,SAAS,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAE1D,4CAA4C;IACnC,OAAO,CAAC,gBAAgB,CAAuB;IAE/C,OAAO,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,MAAM,CAAyC;IACvD,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IACzD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,IAAI;IAEjD,SAAS,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAKzD,2CAA2C;IAC3C,OAAO,CAAC,wBAAwB,CAE9B;;IAcc,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,IAAI;IAMP;;;;OAIG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACI,6BAA6B,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAQ7C,iBAAiB,IAAI,IAAI;cAUtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cASzD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO9D,oBAAoB,IAAI,IAAI;IAK5C,SAAS,CAAC,IAAI,IAAI,IAAI;IAUtB,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAQpC,OAAO,CAAC,mBAAmB;IAI3B,yEAAyE;IACzE,SAAS,CAAC,wBAAwB,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,IAAI;IAWzE,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAuBtC,SAAS,CAAC,mBAAmB,IAAI,cAAc;IAwB/C,SAAS,CAAC,UAAU,IAAI,cAAc;IAItC,SAAS,CAAC,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;IAIxD,SAAS,CAAC,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;cAIpC,MAAM,IAAI,cAAc;CAmB5C"}
@@ -1,7 +1,8 @@
1
- import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
1
+ import { CSSResultGroup, TemplateResult, nothing } from 'lit';
2
+ import { EventEmitter } from '../../core/eventing.js';
3
+ import { SbbOptionBaseElement } from './option-base-element.js';
2
4
 
3
5
  export type SbbOptionVariant = 'autocomplete' | 'select' | null;
4
- declare const SbbOptionElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
5
6
  /**
6
7
  * It displays on option item which can be used in `sbb-select` or `sbb-autocomplete`.
7
8
  *
@@ -12,73 +13,30 @@ declare const SbbOptionElement_base: import('../../core/mixins.js').AbstractCons
12
13
  * @cssprop [--sbb-option-icon-container-display=none] - Can be used to reserve space even
13
14
  * when preserve-icon-space on autocomplete is not set or iconName is not set.
14
15
  */
15
- export declare class SbbOptionElement extends SbbOptionElement_base {
16
+ export declare class SbbOptionElement extends SbbOptionBaseElement {
16
17
  static styles: CSSResultGroup;
17
18
  static readonly events: {
18
19
  readonly selectionChange: "optionSelectionChange";
19
20
  readonly optionSelected: "optionSelected";
20
21
  };
21
- /**
22
- * Value of the option.
23
- *
24
- * @description Developer note: In this case updating the attribute must be synchronous.
25
- * Due to this it is implemented as a getter/setter and the attributeChangedCallback() handles the diff check.
26
- */
27
- set value(value: string);
28
- get value(): string;
29
- /** Whether the option is currently active. */
30
- active?: boolean;
31
- /** Whether the option is selected. */
32
- set selected(value: boolean);
33
- get selected(): boolean;
22
+ protected optionId: string;
34
23
  /** Emits when the option selection status changes. */
35
- private _selectionChange;
24
+ protected selectionChange: EventEmitter;
36
25
  /** Emits when an option was selected by user. */
37
- private _optionSelected;
38
- /** Whether to apply the negative styling */
39
- private _negative;
40
- /** Whether the component must be set disabled due disabled attribute on sbb-checkbox-group. */
41
- private _disabledFromGroup;
42
- private _label?;
43
- /** The portion of the highlighted label. */
44
- private _highlightString;
45
- /** Disable the highlight of the label. */
46
- private _disableLabelHighlight;
47
- private _inertAriaGroups;
26
+ protected optionSelected: EventEmitter;
48
27
  private set _variant(value);
49
28
  private get _variant();
50
29
  private set _isMultiple(value);
51
30
  private get _isMultiple();
52
- private _abort;
53
- /** MutationObserver on data attributes. */
54
- private _optionAttributeObserver;
55
- constructor();
56
- attributeChangedCallback(name: string, old: string | null, value: string | null): void;
57
- /**
58
- * Highlight the label of the option
59
- * @param value the highlighted portion of the label
60
- * @internal
61
- */
62
- highlight(value: string): void;
63
- /**
64
- * @internal
65
- */
66
- setSelectedViaUserInteraction(selected: boolean): void;
67
- private _updateDisableHighlight;
68
- private _selectByClick;
31
+ protected setAttributeFromParent(): void;
32
+ protected selectByClick(event: MouseEvent): void;
69
33
  connectedCallback(): void;
70
- protected willUpdate(changedProperties: PropertyValues<this>): void;
71
- protected firstUpdated(changedProperties: PropertyValues<this>): void;
72
- private _init;
73
- private _updateAriaDisabled;
74
- private _updateAriaSelected;
75
- disconnectedCallback(): void;
34
+ protected init(): void;
76
35
  private _setVariantByContext;
77
- /** Observe changes on data attributes and set the appropriate values. */
78
- private _onOptionAttributesChange;
79
- private _handleHighlightState;
80
- private _getHighlightedLabel;
81
- protected render(): TemplateResult;
36
+ protected handleHighlightState(): void;
37
+ protected renderIcon(): TemplateResult;
38
+ protected renderLabel(): TemplateResult | typeof nothing;
39
+ protected renderTick(): TemplateResult | typeof nothing;
82
40
  }
83
41
  declare global {
84
42
  interface HTMLElementTagNameMap {
@@ -88,5 +46,4 @@ declare global {
88
46
  optionSelectionChange: CustomEvent<void>;
89
47
  }
90
48
  }
91
- export {};
92
49
  //# sourceMappingURL=option.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/option/option.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAab,OAAO,6BAA6B,CAAC;AACrC,OAAO,0BAA0B,CAAC;AAgBlC,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;;AAEhE;;;;;;;;;GASG;AACH,qBAKa,gBAAiB,SAAQ,qBAErC;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;MAGlB;IAEX;;;;;OAKG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,8CAA8C;IACK,MAAM,CAAC,EAAE,OAAO,CAAC;IAEpE,sCAAsC;IACtC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,sDAAsD;IACtD,OAAO,CAAC,gBAAgB,CAGtB;IAEF,iDAAiD;IACjD,OAAO,CAAC,eAAe,CAGrB;IAEF,4CAA4C;IACnC,OAAO,CAAC,SAAS,CAAS;IAEnC,+FAA+F;IACtF,OAAO,CAAC,kBAAkB,CAAS;IAEnC,OAAO,CAAC,MAAM,CAAC,CAAS;IAEjC,4CAA4C;IACnC,OAAO,CAAC,gBAAgB,CAAuB;IAExD,0CAA0C;IACjC,OAAO,CAAC,sBAAsB,CAAkB;IAEhD,OAAO,CAAC,gBAAgB,CAAS;IAE1C,OAAO,KAAK,QAAQ,QAInB;IACD,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,WAAW,QAEtB;IACD,OAAO,KAAK,WAAW,GAEtB;IAED,OAAO,CAAC,MAAM,CAAyC;IAEvD,2CAA2C;IAC3C,OAAO,CAAC,wBAAwB,CAE9B;;IAcc,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,IAAI;IAMP;;;;OAIG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACI,6BAA6B,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAQ7D,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,cAAc;IAcN,iBAAiB,IAAI,IAAI;cAYtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cASzD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO9E,OAAO,CAAC,KAAK;IA2Bb,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,mBAAmB;IAIX,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,oBAAoB;IAS5B,yEAAyE;IACzE,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,qBAAqB;IA4B7B,OAAO,CAAC,oBAAoB;cAwBT,MAAM,IAAI,cAAc;CA2C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;IAED,UAAU,2BAA2B;QACnC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC1C;CACF"}
1
+ {"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/option/option.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;AAIpC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,0BAA0B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAIa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;MAGlB;IAEX,SAAS,CAAC,QAAQ,SAAgB;IAElC,sDAAsD;IACtD,SAAS,CAAC,eAAe,EAAE,YAAY,CAGrC;IAEF,iDAAiD;IACjD,SAAS,CAAC,cAAc,EAAE,YAAY,CAGpC;IAEF,OAAO,KAAK,QAAQ,QAInB;IACD,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,WAAW,QAEtB;IACD,OAAO,KAAK,WAAW,GAEtB;IAED,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAgBxC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAchC,iBAAiB,IAAI,IAAI;cAItB,IAAI,IAAI,IAAI;IAS/B,OAAO,CAAC,oBAAoB;cAST,oBAAoB,IAAI,IAAI;cAS5B,UAAU,IAAI,cAAc;cAoB5B,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;cAM9C,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;CAKjE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;IAED,UAAU,2BAA2B;QACnC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC1C;CACF"}
@@ -1,2 +1,3 @@
1
1
  export * from './option/option.js';
2
+ export * from './option/option-base-element.js';
2
3
  //# sourceMappingURL=option.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../../../src/elements/option/option.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"option.d.ts","sourceRoot":"","sources":["../../../src/elements/option/option.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iCAAiC,CAAC"}