@sbb-esta/lyne-elements 1.3.0 → 1.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 (221) 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.js +18 -18
  52. package/checkbox/common.js +13 -13
  53. package/container/container.js +3 -3
  54. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  55. package/core/mixins.js +3 -1
  56. package/core/overlay/overlay-trigger-attributes.d.ts +1 -1
  57. package/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
  58. package/core/overlay.js +2 -2
  59. package/core/styles/core.scss +1 -0
  60. package/core/styles/mixins/buttons.scss +13 -8
  61. package/core/styles/mixins/helpers.scss +1 -0
  62. package/core/styles/mixins/pearl-chain-bullet.scss +1 -1
  63. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +1 -0
  64. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +2 -1
  65. package/core.css +3 -1
  66. package/custom-elements.json +13897 -9149
  67. package/datepicker/datepicker-next-day.js +12 -12
  68. package/datepicker/datepicker-previous-day.js +1 -1
  69. package/development/autocomplete/autocomplete-base-element.d.ts +93 -0
  70. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -0
  71. package/development/autocomplete/autocomplete.d.ts +13 -86
  72. package/development/autocomplete/autocomplete.d.ts.map +1 -1
  73. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +45 -0
  74. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  75. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +33 -0
  76. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -0
  77. package/development/autocomplete-grid/autocomplete-grid-button.d.ts +2 -0
  78. package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -0
  79. package/development/autocomplete-grid/autocomplete-grid-button.js +224 -0
  80. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts +17 -0
  81. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts.map +1 -0
  82. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +2 -0
  83. package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -0
  84. package/development/autocomplete-grid/autocomplete-grid-cell.js +67 -0
  85. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +21 -0
  86. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts.map +1 -0
  87. package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts +2 -0
  88. package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts.map +1 -0
  89. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +2 -0
  90. package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -0
  91. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +45 -0
  92. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts +40 -0
  93. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts.map +1 -0
  94. package/development/autocomplete-grid/autocomplete-grid-option.d.ts +2 -0
  95. package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -0
  96. package/development/autocomplete-grid/autocomplete-grid-option.js +174 -0
  97. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts +18 -0
  98. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts.map +1 -0
  99. package/development/autocomplete-grid/autocomplete-grid-row.d.ts +2 -0
  100. package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -0
  101. package/development/autocomplete-grid/autocomplete-grid-row.js +143 -0
  102. package/development/autocomplete-grid/autocomplete-grid.d.ts +2 -0
  103. package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -0
  104. package/development/autocomplete-grid/autocomplete-grid.js +185 -0
  105. package/development/autocomplete-grid.d.ts +7 -0
  106. package/development/autocomplete-grid.d.ts.map +1 -0
  107. package/development/autocomplete-grid.js +7 -0
  108. package/development/autocomplete.d.ts +1 -0
  109. package/development/autocomplete.d.ts.map +1 -1
  110. package/development/autocomplete.js +168 -143
  111. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  112. package/development/breadcrumb/breadcrumb-group.js +1 -1
  113. package/development/button/mini-button/mini-button-base-element.d.ts +9 -0
  114. package/development/button/mini-button/mini-button-base-element.d.ts.map +1 -0
  115. package/development/button/mini-button/mini-button.d.ts +3 -4
  116. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  117. package/development/button/mini-button.d.ts +1 -0
  118. package/development/button/mini-button.d.ts.map +1 -1
  119. package/development/button/mini-button.js +32 -16
  120. package/development/checkbox/checkbox.js +7 -1
  121. package/development/checkbox/common.js +1 -3
  122. package/development/container/container.js +2 -1
  123. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  124. package/development/core/mixins.js +4 -2
  125. package/development/core/overlay/overlay-trigger-attributes.d.ts +1 -1
  126. package/development/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
  127. package/development/core/overlay.js +3 -3
  128. package/development/datepicker/datepicker-next-day.js +8 -7
  129. package/development/datepicker/datepicker-previous-day.js +8 -7
  130. package/development/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  131. package/development/form-field/form-field-clear.js +8 -7
  132. package/development/form-field/form-field.js +3 -3
  133. package/development/icon/icon-base.d.ts.map +1 -1
  134. package/development/icon/icon.d.ts.map +1 -1
  135. package/development/icon.js +1 -1
  136. package/development/image/image.d.ts +1 -0
  137. package/development/image/image.d.ts.map +1 -1
  138. package/development/image.js +10 -4
  139. package/development/map-container.js +12 -14
  140. package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  141. package/development/navigation/navigation-marker.js +1 -1
  142. package/development/option/optgroup/optgroup-base-element.d.ts +28 -0
  143. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -0
  144. package/development/option/optgroup/optgroup.d.ts +7 -20
  145. package/development/option/optgroup/optgroup.d.ts.map +1 -1
  146. package/development/option/optgroup.d.ts +1 -0
  147. package/development/option/optgroup.d.ts.map +1 -1
  148. package/development/option/optgroup.js +74 -49
  149. package/development/option/option/option-base-element.d.ts +69 -0
  150. package/development/option/option/option-base-element.d.ts.map +1 -0
  151. package/development/option/option/option.d.ts +14 -57
  152. package/development/option/option/option.d.ts.map +1 -1
  153. package/development/option/option.d.ts +1 -0
  154. package/development/option/option.d.ts.map +1 -1
  155. package/development/option/option.js +267 -220
  156. package/development/radio-button/common/radio-button-common.d.ts +1 -1
  157. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  158. package/development/radio-button/common.js +13 -12
  159. package/development/radio-button/radio-button/radio-button.d.ts +7 -0
  160. package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
  161. package/development/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  162. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  163. package/development/radio-button/radio-button-group.js +1 -1
  164. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +7 -0
  165. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  166. package/development/radio-button/radio-button-panel.js +16 -2
  167. package/development/radio-button/radio-button.js +16 -2
  168. package/development/skiplink-list/skiplink-list.d.ts +1 -0
  169. package/development/skiplink-list/skiplink-list.d.ts.map +1 -1
  170. package/development/skiplink-list.js +1 -1
  171. package/development/tabs/tab-group.js +2 -9
  172. package/development/tabs/tab.js +10 -2
  173. package/development/tag/tag-group.js +1 -1
  174. package/development/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -1
  175. package/development/timetable-occupancy-icon.js +3 -6
  176. package/development/toggle/toggle.js +1 -1
  177. package/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  178. package/form-field/form-field-clear.js +11 -11
  179. package/form-field/form-field.js +2 -2
  180. package/icon/icon-base.d.ts.map +1 -1
  181. package/icon/icon.d.ts.map +1 -1
  182. package/image/image.d.ts +1 -0
  183. package/image/image.d.ts.map +1 -1
  184. package/image.js +24 -24
  185. package/index.d.ts +12 -0
  186. package/index.js +12 -0
  187. package/map-container.js +8 -8
  188. package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
  189. package/option/optgroup/optgroup-base-element.d.ts +28 -0
  190. package/option/optgroup/optgroup-base-element.d.ts.map +1 -0
  191. package/option/optgroup/optgroup.d.ts +7 -20
  192. package/option/optgroup/optgroup.d.ts.map +1 -1
  193. package/option/optgroup.d.ts +1 -0
  194. package/option/optgroup.d.ts.map +1 -1
  195. package/option/optgroup.js +80 -60
  196. package/option/option/option-base-element.d.ts +69 -0
  197. package/option/option/option-base-element.d.ts.map +1 -0
  198. package/option/option/option.d.ts +14 -57
  199. package/option/option/option.d.ts.map +1 -1
  200. package/option/option.d.ts +1 -0
  201. package/option/option.d.ts.map +1 -1
  202. package/option/option.js +186 -145
  203. package/package.json +36 -1
  204. package/radio-button/common/radio-button-common.d.ts +1 -1
  205. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  206. package/radio-button/common.js +6 -15
  207. package/radio-button/radio-button/radio-button.d.ts +7 -0
  208. package/radio-button/radio-button/radio-button.d.ts.map +1 -1
  209. package/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  210. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  211. package/radio-button/radio-button-panel/radio-button-panel.d.ts +7 -0
  212. package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  213. package/radio-button/radio-button-panel.js +35 -22
  214. package/radio-button/radio-button.js +32 -19
  215. package/skiplink-list/skiplink-list.d.ts +1 -0
  216. package/skiplink-list/skiplink-list.d.ts.map +1 -1
  217. package/standard-theme.css +3 -1
  218. package/tabs/tab-group.js +19 -19
  219. package/tabs/tab.js +10 -10
  220. package/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -1
  221. package/timetable-occupancy-icon.js +22 -24
package/image.js CHANGED
@@ -1,14 +1,14 @@
1
- import { css as y, LitElement as _, html as d, nothing as l } from "lit";
1
+ import { css as y, LitElement as _, html as d, nothing as m } from "lit";
2
2
  import { property as s, eventOptions as k, customElement as v } from "lit/decorators.js";
3
3
  import { ref as $ } from "lit/directives/ref.js";
4
4
  import { hostContext as x } from "./core/dom.js";
5
- const w = 0, S = 359, P = 360, M = 599, z = 600, C = 839, B = 840, L = 1023, O = 1024, Q = 1279, F = 1280, D = 1439, E = 1440, T = 2579, I = 16, R = y`*,:before,:after{box-sizing:border-box}:host{--sbb-image-border-radius: var(--sbb-border-radius-4x);--sbb-image-aspect-ratio: auto;--sbb-image-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );display:block}:host([aspect-ratio="1-1"]){--sbb-image-aspect-ratio: 1 / 1}:host([aspect-ratio="1-2"]){--sbb-image-aspect-ratio: 1 / 2}:host([aspect-ratio="2-1"]){--sbb-image-aspect-ratio: 2 / 1}:host([aspect-ratio="2-3"]){--sbb-image-aspect-ratio: 2 / 3}:host([aspect-ratio="3-2"]){--sbb-image-aspect-ratio: 3 / 2}:host([aspect-ratio="3-4"]){--sbb-image-aspect-ratio: 3 / 4}:host([aspect-ratio="4-3"]){--sbb-image-aspect-ratio: 4 / 3}:host([aspect-ratio="4-5"]){--sbb-image-aspect-ratio: 4 / 5}:host([aspect-ratio="5-4"]){--sbb-image-aspect-ratio: 5 / 4}:host([aspect-ratio="16-9"]){--sbb-image-aspect-ratio: 16 / 9}:host([aspect-ratio="9-16"]){--sbb-image-aspect-ratio: 9 / 16}:host([data-teaser]){--sbb-image-aspect-ratio: 1 / 1}@media (min-width: 37.5rem){:host([data-teaser]){--sbb-image-aspect-ratio: 16 / 9}}:host(:is([border-radius=none],[data-teaser])){--sbb-image-border-radius: 0}:host([border-radius=round]:not([data-teaser])){--sbb-image-border-radius: var(--sbb-border-radius-infinity)}.sbb-image__figure{margin:0}.sbb-image__img{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.000001}:host([data-loaded]) .sbb-image__img{opacity:.999999}:host([data-loaded]) .sbb-image__blurred{opacity:0}:is(.sbb-image__img,.sbb-image__blurred){width:100%;height:100%;object-fit:cover;transition:opacity var(--sbb-image-animation-duration) var(--sbb-animation-easing)}.sbb-image__wrapper{position:relative;overflow:hidden;max-width:100%;border-radius:var(--sbb-image-border-radius);aspect-ratio:var(--sbb-image-aspect-ratio)}.sbb-image__caption{--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);margin-block-start:var(--sbb-spacing-fixed-4x)}`;
6
- var h = Object.freeze, u = Object.defineProperty, A = Object.getOwnPropertyDescriptor, o = (e, t, r, i) => {
7
- for (var n = i > 1 ? void 0 : i ? A(t, r) : t, p = e.length - 1, b; p >= 0; p--)
5
+ const w = 0, S = 359, P = 360, M = 599, z = 600, C = 839, B = 840, L = 1023, O = 1024, Q = 1279, F = 1280, D = 1439, E = 1440, T = 2579, I = 16, R = y`*,:before,:after{box-sizing:border-box}:host{--sbb-image-border-radius: var(--sbb-border-radius-4x);--sbb-image-aspect-ratio: auto;--sbb-image-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );display:block}:host([aspect-ratio="1-1"]){--sbb-image-aspect-ratio: 1 / 1}:host([aspect-ratio="1-2"]){--sbb-image-aspect-ratio: 1 / 2}:host([aspect-ratio="2-1"]){--sbb-image-aspect-ratio: 2 / 1}:host([aspect-ratio="2-3"]){--sbb-image-aspect-ratio: 2 / 3}:host([aspect-ratio="3-2"]){--sbb-image-aspect-ratio: 3 / 2}:host([aspect-ratio="3-4"]){--sbb-image-aspect-ratio: 3 / 4}:host([aspect-ratio="4-3"]){--sbb-image-aspect-ratio: 4 / 3}:host([aspect-ratio="4-5"]){--sbb-image-aspect-ratio: 4 / 5}:host([aspect-ratio="5-4"]){--sbb-image-aspect-ratio: 5 / 4}:host([aspect-ratio="16-9"]){--sbb-image-aspect-ratio: 16 / 9}:host([aspect-ratio="9-16"]){--sbb-image-aspect-ratio: 9 / 16}:host([data-teaser]){--sbb-image-aspect-ratio: 1 / 1}@media (min-width: 37.5rem){:host([data-teaser]){--sbb-image-aspect-ratio: 16 / 9}}:host(:is([border-radius=none],[data-teaser])){--sbb-image-border-radius: 0}:host([border-radius=round]:not([data-teaser])){--sbb-image-border-radius: var(--sbb-border-radius-infinity)}.sbb-image__figure{display:flex;flex-direction:column;gap:var(--sbb-spacing-fixed-4x);margin:0;height:100%}.sbb-image__img{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.000001}:host([data-loaded]) .sbb-image__img{opacity:.999999}:host([data-loaded]) .sbb-image__blurred{opacity:0}:is(.sbb-image__img,.sbb-image__blurred){width:100%;height:100%;object-fit:cover;object-position:var(--sbb-image-object-position);transition:opacity var(--sbb-image-animation-duration) var(--sbb-animation-easing)}.sbb-image__wrapper{display:flex;position:relative;overflow:hidden;width:100%;height:100%;aspect-ratio:var(--sbb-image-aspect-ratio);border-radius:var(--sbb-image-border-radius)}.sbb-image__caption{--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)}`;
6
+ var h = Object.freeze, u = Object.defineProperty, j = Object.getOwnPropertyDescriptor, o = (e, t, r, i) => {
7
+ for (var n = i > 1 ? void 0 : i ? j(t, r) : t, p = e.length - 1, b; p >= 0; p--)
8
8
  (b = e[p]) && (n = (i ? b(t, r, n) : b(n)) || n);
9
9
  return i && n && u(t, r, n), n;
10
- }, U = (e, t) => h(u(e, "raw", { value: h(e.slice()) })), g;
11
- const H = (e) => {
10
+ }, A = (e, t) => h(u(e, "raw", { value: h(e.slice()) })), g;
11
+ const U = (e) => {
12
12
  if (!e || e.length === 0)
13
13
  return [];
14
14
  let t;
@@ -25,13 +25,13 @@ const H = (e) => {
25
25
  const n = ["image", "mediaQueries"];
26
26
  return t.breakpoints.forEach((p) => {
27
27
  const b = Object.keys(p);
28
- b.forEach((m) => {
29
- n.includes(m) || (r = !0);
30
- }), n.forEach((m) => {
31
- b.includes(m) || (i = !0);
28
+ b.forEach((l) => {
29
+ n.includes(l) || (r = !0);
30
+ }), n.forEach((l) => {
31
+ b.includes(l) || (i = !0);
32
32
  });
33
33
  }), r || i ? [] : t.breakpoints;
34
- }, j = {
34
+ }, H = {
35
35
  once: !0,
36
36
  passive: !0
37
37
  }, c = (e) => e / I, V = {
@@ -146,7 +146,7 @@ let a = class extends _ {
146
146
  ]
147
147
  }
148
148
  ]
149
- }`, H(e);
149
+ }`, U(e);
150
150
  }
151
151
  _createMediaQueryString(e) {
152
152
  let t = "";
@@ -177,25 +177,25 @@ let a = class extends _ {
177
177
  return d`
178
178
  <figure class="sbb-image__figure">
179
179
  <div class="sbb-image__wrapper">
180
- ${this.skipLqip ? l : d`<img
180
+ ${this.skipLqip ? m : d`<img
181
181
  alt=""
182
182
  class="sbb-image__blurred"
183
183
  src=${r}
184
184
  width="1000"
185
185
  height="562"
186
- loading=${this.loading ?? l}
187
- decoding=${this.decoding ?? l}
186
+ loading=${this.loading ?? m}
187
+ decoding=${this.decoding ?? m}
188
188
  />`}
189
189
 
190
190
  <picture>
191
191
  <!-- render picture element sources -->
192
192
  ${n.map((p) => {
193
- const b = p.image.height, m = p.image.width, f = this._createMediaQueryString(p.mediaQueries);
193
+ const b = p.image.height, l = p.image.width, f = this._createMediaQueryString(p.mediaQueries);
194
194
  return [
195
195
  d` <source
196
196
  media=${`${f}`}
197
- sizes=${`${m}px`}
198
- srcset=${`${i}&w=${m}&h=${b}&q=${this._config.nonRetinaQuality} ${m}w, ${i}&w=${m * 2}&h=${b * 2}&q=${this._config.retinaQuality} ${m * 2}w`}
197
+ sizes=${`${l}px`}
198
+ srcset=${`${i}&w=${l}&h=${b}&q=${this._config.nonRetinaQuality} ${l}w, ${i}&w=${l * 2}&h=${b * 2}&q=${this._config.retinaQuality} ${l * 2}w`}
199
199
  ></source>`
200
200
  ];
201
201
  })}
@@ -207,9 +207,9 @@ let a = class extends _ {
207
207
  src=${this.imageSrc}
208
208
  width="1000"
209
209
  height="562"
210
- loading=${this.loading ?? l}
211
- decoding=${this.decoding ?? l}
212
- .fetchPriority=${this.importance ?? l}
210
+ loading=${this.loading ?? m}
211
+ decoding=${this.decoding ?? m}
212
+ .fetchPriority=${this.importance ?? m}
213
213
  />
214
214
  </picture>
215
215
  </div>
@@ -219,8 +219,8 @@ let a = class extends _ {
219
219
  ${$((p) => {
220
220
  this._captionElement = p;
221
221
  })}
222
- ></figcaption>` : l}
223
- ${t ? d(g || (g = U(['<script type="application/ld+json" .innerHTML=', "><\/script>"])), t) : l}
222
+ ></figcaption>` : m}
223
+ ${t ? d(g || (g = A(['<script type="application/ld+json" .innerHTML=', "><\/script>"])), t) : m}
224
224
  </figure>
225
225
  `;
226
226
  }
@@ -282,7 +282,7 @@ o([
282
282
  s({ attribute: "aspect-ratio", reflect: !0 })
283
283
  ], a.prototype, "aspectRatio", 2);
284
284
  o([
285
- k(j)
285
+ k(H)
286
286
  ], a.prototype, "_imageLoaded", 1);
287
287
  a = o([
288
288
  v("sbb-image")
package/index.d.ts CHANGED
@@ -3,6 +3,12 @@ import { SbbActionGroupElement } from "./action-group.js";
3
3
  import { SbbAlertElement } from "./alert/alert.js";
4
4
  import { SbbAlertGroupElement } from "./alert/alert-group.js";
5
5
  import { SbbAutocompleteElement } from "./autocomplete.js";
6
+ import { SbbAutocompleteGridElement } from "./autocomplete-grid/autocomplete-grid.js";
7
+ import { SbbAutocompleteGridButtonElement } from "./autocomplete-grid/autocomplete-grid-button.js";
8
+ import { SbbAutocompleteGridCellElement } from "./autocomplete-grid/autocomplete-grid-cell.js";
9
+ import { SbbAutocompleteGridOptgroupElement } from "./autocomplete-grid/autocomplete-grid-optgroup.js";
10
+ import { SbbAutocompleteGridOptionElement } from "./autocomplete-grid/autocomplete-grid-option.js";
11
+ import { SbbAutocompleteGridRowElement } from "./autocomplete-grid/autocomplete-grid-row.js";
6
12
  import { SbbBreadcrumbElement } from "./breadcrumb/breadcrumb.js";
7
13
  import { SbbBreadcrumbGroupElement } from "./breadcrumb/breadcrumb-group.js";
8
14
  import { SbbButtonElement } from "./button/button.js";
@@ -120,6 +126,12 @@ declare global {
120
126
  var SbbAlertElement: SbbAlertElement;
121
127
  var SbbAlertGroupElement: SbbAlertGroupElement;
122
128
  var SbbAutocompleteElement: SbbAutocompleteElement;
129
+ var SbbAutocompleteGridElement: SbbAutocompleteGridElement;
130
+ var SbbAutocompleteGridButtonElement: SbbAutocompleteGridButtonElement;
131
+ var SbbAutocompleteGridCellElement: SbbAutocompleteGridCellElement;
132
+ var SbbAutocompleteGridOptgroupElement: SbbAutocompleteGridOptgroupElement;
133
+ var SbbAutocompleteGridOptionElement: SbbAutocompleteGridOptionElement;
134
+ var SbbAutocompleteGridRowElement: SbbAutocompleteGridRowElement;
123
135
  var SbbBreadcrumbElement: SbbBreadcrumbElement;
124
136
  var SbbBreadcrumbGroupElement: SbbBreadcrumbGroupElement;
125
137
  var SbbButtonElement: SbbButtonElement;
package/index.js CHANGED
@@ -3,6 +3,12 @@ import { SbbActionGroupElement } from "./action-group.js";
3
3
  import { SbbAlertElement } from "./alert/alert.js";
4
4
  import { SbbAlertGroupElement } from "./alert/alert-group.js";
5
5
  import { SbbAutocompleteElement } from "./autocomplete.js";
6
+ import { SbbAutocompleteGridElement } from "./autocomplete-grid/autocomplete-grid.js";
7
+ import { SbbAutocompleteGridButtonElement } from "./autocomplete-grid/autocomplete-grid-button.js";
8
+ import { SbbAutocompleteGridCellElement } from "./autocomplete-grid/autocomplete-grid-cell.js";
9
+ import { SbbAutocompleteGridOptgroupElement } from "./autocomplete-grid/autocomplete-grid-optgroup.js";
10
+ import { SbbAutocompleteGridOptionElement } from "./autocomplete-grid/autocomplete-grid-option.js";
11
+ import { SbbAutocompleteGridRowElement } from "./autocomplete-grid/autocomplete-grid-row.js";
6
12
  import { SbbBreadcrumbElement } from "./breadcrumb/breadcrumb.js";
7
13
  import { SbbBreadcrumbGroupElement } from "./breadcrumb/breadcrumb-group.js";
8
14
  import { SbbButtonElement } from "./button/button.js";
@@ -119,6 +125,12 @@ globalThis.SbbActionGroupElement = SbbActionGroupElement;
119
125
  globalThis.SbbAlertElement = SbbAlertElement;
120
126
  globalThis.SbbAlertGroupElement = SbbAlertGroupElement;
121
127
  globalThis.SbbAutocompleteElement = SbbAutocompleteElement;
128
+ globalThis.SbbAutocompleteGridElement = SbbAutocompleteGridElement;
129
+ globalThis.SbbAutocompleteGridButtonElement = SbbAutocompleteGridButtonElement;
130
+ globalThis.SbbAutocompleteGridCellElement = SbbAutocompleteGridCellElement;
131
+ globalThis.SbbAutocompleteGridOptgroupElement = SbbAutocompleteGridOptgroupElement;
132
+ globalThis.SbbAutocompleteGridOptionElement = SbbAutocompleteGridOptionElement;
133
+ globalThis.SbbAutocompleteGridRowElement = SbbAutocompleteGridRowElement;
122
134
  globalThis.SbbBreadcrumbElement = SbbBreadcrumbElement;
123
135
  globalThis.SbbBreadcrumbGroupElement = SbbBreadcrumbGroupElement;
124
136
  globalThis.SbbButtonElement = SbbButtonElement;
package/map-container.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { css as m, LitElement as p, html as n, nothing as l } from "lit";
2
2
  import { property as h, state as u, customElement as v } from "lit/decorators.js";
3
3
  import { ref as d } from "lit/directives/ref.js";
4
- import { SbbLanguageController as g } from "./core/controllers.js";
5
- import { i18nMapContainerButtonLabel as _ } from "./core/i18n.js";
4
+ import { SbbLanguageController as _ } from "./core/controllers.js";
5
+ import { i18nMapContainerButtonLabel as g } from "./core/i18n.js";
6
6
  import { AgnosticIntersectionObserver as w } from "./core/observers.js";
7
7
  import "./button/tertiary-button.js";
8
- const f = m`*,:before,:after{box-sizing:border-box}:host{--sbb-map-container-map-height-zero: 18.4375rem;--sbb-map-container-map-height-small: 20rem;--sbb-map-container-sidebar-width: 25rem;--sbb-map-container-sidebar-background-color: var(--sbb-color-white);--sbb-map-container-map-height: calc( var(--sbb-map-container-map-height-zero) + var(--sbb-border-radius-4x) );--sbb-map-container-border-radius: var(--sbb-border-radius-4x);--sbb-map-container-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );display:block}@media (min-width: 37.5rem){:host{--sbb-map-container-map-height: calc( var(--sbb-map-container-map-height-small) + var(--sbb-map-container-border-radius) )}}@media (min-width: 80rem){:host{--sbb-map-container-sidebar-width: 30rem}}.sbb-map-container{display:grid;grid-template-rows:auto auto;height:100%}@media (min-width: 52.5rem){.sbb-map-container{grid-template-columns:max(var(--sbb-map-container-sidebar-width)) calc(100% - var(--sbb-map-container-sidebar-width));height:calc(100vh - var(--sbb-map-container-margin-start, var(--sbb-header-height)));overflow:hidden}}.sbb-map-container__sidebar-button{position:fixed;left:50%;inset-block-end:var(--sbb-spacing-fixed-5x);visibility:hidden;opacity:0;transform:translate(-50%) translateY(calc(100% + var(--sbb-spacing-fixed-5x)));transition:opacity var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),visibility var(--sbb-map-container-animation-duration) var(--sbb-animation-easing) var(--sbb-map-container-animation-duration),transform var(--sbb-map-container-animation-duration) var(--sbb-animation-easing)}:host([data-scroll-up-button-visible]) .sbb-map-container__sidebar-button{transition:visibility var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),opacity var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),transform var(--sbb-map-container-animation-duration) ease-out;visibility:visible;opacity:1;transform:translate(-50%) translateY(0)}@media (min-width: 52.5rem){.sbb-map-container__sidebar-button{display:none}}.sbb-map-container__sidebar{--sbb-scrollbar-thumb-width: .5rem;--sbb-scrollbar-thumb-width-hover: var(--sbb-scrollbar-thumb-width);--sbb-scrollbar-width-firefox: auto;--sbb-scrollbar-color: var(--sbb-color-black-alpha-30);--sbb-scrollbar-color-hover: var(--sbb-color-black-alpha-60);--sbb-scrollbar-track-color: var(--sbb-color-cloud);--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);grid-column:1/3;grid-row:2/3;width:100%;height:calc(100% + var(--sbb-map-container-border-radius));overflow:hidden auto;position:relative;z-index:2;border-start-end-radius:var(--sbb-map-container-border-radius);border-start-start-radius:var(--sbb-map-container-border-radius);margin-block-start:calc(var(--sbb-map-container-border-radius) * -1);background-color:var(--sbb-map-container-sidebar-background-color)}.sbb-map-container__sidebar::-webkit-scrollbar{width:var(--sbb-scrollbar-width);height:var(--sbb-scrollbar-width);background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-map-container__sidebar::-webkit-scrollbar-corner{background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-map-container__sidebar::-webkit-scrollbar-thumb{background-color:var(--sbb-scrollbar-color, currentcolor);border:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;border-radius:var(--sbb-border-radius-4x);background-clip:padding-box}.sbb-map-container__sidebar::-webkit-scrollbar-thumb:hover{background-color:var(--sbb-scrollbar-color-hover, currentcolor);border-width:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)))}.sbb-map-container__sidebar::-webkit-scrollbar-button,.sbb-map-container__sidebar::-webkit-scrollbar-corner{display:none}@supports not selector(::-webkit-scrollbar){.sbb-map-container__sidebar{scrollbar-width:var(--sbb-scrollbar-width-firefox);scrollbar-color:var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent)}}@media (min-width: 52.5rem){.sbb-map-container__sidebar{grid-column:1/2;grid-row:1/3;border-radius:0;margin-block-start:0;border-block-start:var(--sbb-border-width-1x) solid var(--sbb-color-cloud)}}.sbb-map-container__map{position:sticky;inset-block-start:0;inset-inline:0;z-index:1;grid-row:1/2;grid-column:1/3;height:var(--sbb-map-container-map-height)}@media (min-width: 52.5rem){.sbb-map-container__map{grid-row:1/3;grid-column:2/3;height:100%;position:relative}}`;
8
+ const f = m`*,:before,:after{box-sizing:border-box}:host{--sbb-map-container-map-height-zero: 18.4375rem;--sbb-map-container-map-height-small: 20rem;--sbb-map-container-sidebar-width: 25rem;--sbb-map-container-sidebar-background-color: var(--sbb-color-white);--sbb-map-container-border-radius: var(--sbb-border-radius-4x);--sbb-map-container-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );--sbb-map-container-map-height: calc( var(--sbb-map-container-map-height-zero) + var(--sbb-map-container-border-radius) );display:block}@media (min-width: 37.5rem){:host{--sbb-map-container-map-height: calc( var(--sbb-map-container-map-height-small) + var(--sbb-map-container-border-radius) )}}@media (min-width: 80rem){:host{--sbb-map-container-sidebar-width: 30rem}}.sbb-map-container{display:grid;grid-template-rows:auto auto}@media (min-width: 52.5rem){.sbb-map-container{grid-template-columns:max(var(--sbb-map-container-sidebar-width)) calc(100% - var(--sbb-map-container-sidebar-width));height:calc(100vh - var(--sbb-map-container-margin-start, var(--sbb-header-height)))}}.sbb-map-container__sidebar-button{position:fixed;left:50%;inset-block-end:var(--sbb-spacing-fixed-5x);visibility:hidden;opacity:0;transform:translate(-50%) translateY(calc(100% + var(--sbb-spacing-fixed-5x)));transition:opacity var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),visibility var(--sbb-map-container-animation-duration) var(--sbb-animation-easing) var(--sbb-map-container-animation-duration),transform var(--sbb-map-container-animation-duration) var(--sbb-animation-easing)}:host([data-scroll-up-button-visible]) .sbb-map-container__sidebar-button{transition:visibility var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),opacity var(--sbb-map-container-animation-duration) var(--sbb-animation-easing),transform var(--sbb-map-container-animation-duration) ease-out;visibility:visible;opacity:1;transform:translate(-50%) translateY(0)}@media (min-width: 52.5rem){.sbb-map-container__sidebar-button{display:none}}.sbb-map-container__sidebar{--sbb-scrollbar-thumb-width: .5rem;--sbb-scrollbar-thumb-width-hover: var(--sbb-scrollbar-thumb-width);--sbb-scrollbar-width-firefox: auto;--sbb-scrollbar-color: var(--sbb-color-black-alpha-30);--sbb-scrollbar-color-hover: var(--sbb-color-black-alpha-60);--sbb-scrollbar-track-color: var(--sbb-color-cloud);--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);grid-column:1/3;grid-row:2/3;width:100%;overflow:hidden auto;position:relative;border-start-end-radius:var(--sbb-map-container-border-radius);border-start-start-radius:var(--sbb-map-container-border-radius);margin-block-start:calc(var(--sbb-map-container-border-radius) * -1);background-color:var(--sbb-map-container-sidebar-background-color)}.sbb-map-container__sidebar::-webkit-scrollbar{width:var(--sbb-scrollbar-width);height:var(--sbb-scrollbar-width);background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-map-container__sidebar::-webkit-scrollbar-corner{background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-map-container__sidebar::-webkit-scrollbar-thumb{background-color:var(--sbb-scrollbar-color, currentcolor);border:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;border-radius:var(--sbb-border-radius-4x);background-clip:padding-box}.sbb-map-container__sidebar::-webkit-scrollbar-thumb:hover{background-color:var(--sbb-scrollbar-color-hover, currentcolor);border-width:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)))}.sbb-map-container__sidebar::-webkit-scrollbar-button,.sbb-map-container__sidebar::-webkit-scrollbar-corner{display:none}@supports not selector(::-webkit-scrollbar){.sbb-map-container__sidebar{scrollbar-width:var(--sbb-scrollbar-width-firefox);scrollbar-color:var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent)}}@media (min-width: 52.5rem){.sbb-map-container__sidebar{grid-column:1/2;grid-row:1/3;border-radius:0;margin-block-start:0;border-block-start:var(--sbb-border-width-1x) solid var(--sbb-color-cloud)}}.sbb-map-container__map{position:sticky;inset-block-start:0;inset-inline:0;grid-row:1/2;grid-column:1/3}@media (max-width: 52.4375rem){.sbb-map-container__map{height:var(--sbb-map-container-map-height)}}@media (min-width: 52.5rem){.sbb-map-container__map{grid-row:1/3;grid-column:2/3;position:relative}}`;
9
9
  var k = Object.defineProperty, y = Object.getOwnPropertyDescriptor, c = (r, t, i, b) => {
10
10
  for (var a = b > 1 ? void 0 : b ? y(t, i) : t, s = r.length - 1, e; s >= 0; s--)
11
11
  (e = r[s]) && (a = (b ? e(t, i, a) : e(a)) || a);
@@ -13,7 +13,7 @@ var k = Object.defineProperty, y = Object.getOwnPropertyDescriptor, c = (r, t, i
13
13
  };
14
14
  let o = class extends p {
15
15
  constructor() {
16
- super(...arguments), this.hideScrollUpButton = !1, this._scrollUpButtonVisible = !1, this._language = new g(this), this._observer = new w(
16
+ super(...arguments), this.hideScrollUpButton = !1, this._scrollUpButtonVisible = !1, this._language = new _(this), this._observer = new w(
17
17
  (r) => this._toggleButtonVisibilityOnIntersect(r)
18
18
  );
19
19
  }
@@ -47,6 +47,9 @@ let o = class extends p {
47
47
  render() {
48
48
  return n`
49
49
  <div class="sbb-map-container">
50
+ <div class="sbb-map-container__map">
51
+ <slot name="map"></slot>
52
+ </div>
50
53
  <div class="sbb-map-container__sidebar">
51
54
  ${this.hideScrollUpButton ? l : n`<span
52
55
  ${d((r) => {
@@ -66,12 +69,9 @@ let o = class extends p {
66
69
  r && (r.inert = !this._scrollUpButtonVisible);
67
70
  })}
68
71
  >
69
- ${_[this._language.current]}
72
+ ${g[this._language.current]}
70
73
  </sbb-tertiary-button>`}
71
74
  </div>
72
- <div class="sbb-map-container__map">
73
- <slot name="map"></slot>
74
- </div>
75
75
  </div>
76
76
  `;
77
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-marker.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-marker/navigation-marker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGhG,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;;AAItE;;;;GAIG;AACH,qBACa,0BAA2B,SAAQ,+BAGnC;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAG7C;IAEF;;OAEG;IACiC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAO;IAElD,OAAO,CAAC,oBAAoB,CAAC,CAAwD;IAE9F,OAAO,CAAC,+BAA+B,CAErC;cAEiB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAS9F,OAAO,CAAC,oBAAoB;IAWZ,iBAAiB,IAAI,IAAI;IAMzC,OAAO,CAAC,kBAAkB;IASV,oBAAoB,IAAI,IAAI;IAKrC,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,wBAAwB,GAAG,IAAI;cAU/D,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAKzF,KAAK,IAAI,IAAI;IAQpB,OAAO,CAAC,kBAAkB;cAcP,MAAM,IAAI,cAAc;CAG5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
1
+ {"version":3,"file":"navigation-marker.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-marker/navigation-marker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGhG,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;;AAItE;;;;GAIG;AACH,qBACa,0BAA2B,SAAQ,+BAGnC;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAG7C;IAEF;;OAEG;IACiC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAO;IAElD,OAAO,CAAC,oBAAoB,CAAC,CAAwD;IAE9F,OAAO,CAAC,+BAA+B,CAErC;cAEiB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAS9F,OAAO,CAAC,oBAAoB;IAWZ,iBAAiB,IAAI,IAAI;IAMzC,OAAO,CAAC,kBAAkB;IASV,oBAAoB,IAAI,IAAI;IAKrC,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,wBAAwB,GAAG,IAAI;cAU/D,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAMzF,KAAK,IAAI,IAAI;IAQpB,OAAO,CAAC,kBAAkB;cAcP,MAAM,IAAI,cAAc;CAG5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
@@ -0,0 +1,28 @@
1
+ import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
2
+ import { SbbAutocompleteBaseElement } from '../../autocomplete.js';
3
+ import { SbbOptionBaseElement } from '../option.js';
4
+
5
+ declare const SbbOptgroupBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
6
+ export declare abstract class SbbOptgroupBaseElement extends SbbOptgroupBaseElement_base {
7
+ static styles: CSSResultGroup;
8
+ /** Option group label. */
9
+ label: string;
10
+ protected negative: boolean;
11
+ private _inertAriaGroups;
12
+ private _negativeObserver;
13
+ protected abstract get options(): SbbOptionBaseElement[];
14
+ protected abstract setAttributeFromParent(): void;
15
+ protected abstract getAutocompleteParent(): SbbAutocompleteBaseElement | null;
16
+ constructor();
17
+ connectedCallback(): void;
18
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
19
+ disconnectedCallback(): void;
20
+ private _handleSlotchange;
21
+ private _proxyGroupLabelToOptions;
22
+ protected proxyDisabledToOptions(): void;
23
+ private _highlightOptions;
24
+ private _onNegativeChange;
25
+ protected render(): TemplateResult;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=optgroup-base-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optgroup-base-element.d.ts","sourceRoot":"","sources":["../../../../src/elements/option/optgroup/optgroup-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAGb,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAKxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIzD,OAAO,kBAAkB,CAAC;;AAS1B,8BACsB,sBAAuB,SAAQ,2BAEpD;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,0BAA0B;IACP,KAAK,EAAG,MAAM,CAAC;IAEzB,SAAS,CAAC,QAAQ,UAAS;IAE3B,OAAO,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,iBAAiB,CAAgE;IAEzF,SAAS,CAAC,QAAQ,KAAK,OAAO,IAAI,oBAAoB,EAAE,CAAC;IACzD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,IAAI;IACjD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,IAAI,0BAA0B,GAAG,IAAI;;IAc7D,iBAAiB,IAAI,IAAI;cAYtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAe5D,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,yBAAyB;IAkBjC,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAMxC,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,iBAAiB;cAIN,MAAM,IAAI,cAAc;CAY5C"}
@@ -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"}