@sbb-esta/lyne-elements 0.52.1 → 0.53.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 (242) hide show
  1. package/accordion.js +54 -54
  2. package/action-group.js +3 -3
  3. package/alert/alert-group.js +22 -22
  4. package/alert/alert.js +22 -22
  5. package/autocomplete.js +126 -126
  6. package/breadcrumb/breadcrumb-group.js +60 -60
  7. package/breadcrumb/breadcrumb.js +17 -17
  8. package/calendar.js +423 -423
  9. package/card/card-badge.js +17 -17
  10. package/card/card.js +2 -2
  11. package/card/common.js +30 -30
  12. package/checkbox/checkbox/checkbox.d.ts +3 -46
  13. package/checkbox/checkbox/checkbox.d.ts.map +1 -1
  14. package/checkbox/checkbox-group/checkbox-group.d.ts +4 -2
  15. package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  16. package/checkbox/checkbox-group.js +26 -23
  17. package/checkbox/checkbox-panel/checkbox-panel.d.ts +41 -0
  18. package/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -0
  19. package/checkbox/checkbox-panel.d.ts +2 -0
  20. package/checkbox/checkbox-panel.d.ts.map +1 -0
  21. package/checkbox/checkbox-panel.js +67 -0
  22. package/checkbox/checkbox.js +27 -104
  23. package/checkbox/common/checkbox-common.d.ts +13 -0
  24. package/checkbox/common/checkbox-common.d.ts.map +1 -0
  25. package/checkbox/common.d.ts +2 -0
  26. package/checkbox/common.d.ts.map +1 -0
  27. package/checkbox/common.js +52 -0
  28. package/checkbox.d.ts +2 -0
  29. package/checkbox.d.ts.map +1 -1
  30. package/checkbox.js +2 -0
  31. package/clock.js +83 -83
  32. package/container/sticky-bar.js +16 -16
  33. package/core/a11y.js +91 -91
  34. package/core/base-elements.js +86 -86
  35. package/core/controllers.js +40 -40
  36. package/core/datetime.js +32 -32
  37. package/core/dom.js +26 -26
  38. package/core/eventing.js +33 -33
  39. package/core/mixins/panel-mixin.d.ts +13 -0
  40. package/core/mixins/panel-mixin.d.ts.map +1 -0
  41. package/core/mixins.d.ts +1 -0
  42. package/core/mixins.d.ts.map +1 -1
  43. package/core/mixins.js +170 -139
  44. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +1 -1
  45. package/core/testing.js +29 -29
  46. package/core.css +1 -1
  47. package/custom-elements.json +8862 -6904
  48. package/datepicker/common.js +55 -55
  49. package/datepicker/datepicker-toggle.js +94 -94
  50. package/datepicker/datepicker.js +144 -144
  51. package/development/checkbox/checkbox/checkbox.d.ts +3 -46
  52. package/development/checkbox/checkbox/checkbox.d.ts.map +1 -1
  53. package/development/checkbox/checkbox-group/checkbox-group.d.ts +4 -2
  54. package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  55. package/development/checkbox/checkbox-group.js +43 -13
  56. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +41 -0
  57. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -0
  58. package/development/checkbox/checkbox-panel.d.ts +2 -0
  59. package/development/checkbox/checkbox-panel.d.ts.map +1 -0
  60. package/development/checkbox/checkbox-panel.js +86 -0
  61. package/development/checkbox/checkbox.js +19 -239
  62. package/development/checkbox/common/checkbox-common.d.ts +13 -0
  63. package/development/checkbox/common/checkbox-common.d.ts.map +1 -0
  64. package/development/checkbox/common.d.ts +2 -0
  65. package/development/checkbox/common.d.ts.map +1 -0
  66. package/development/checkbox/common.js +156 -0
  67. package/development/checkbox.d.ts +2 -0
  68. package/development/checkbox.d.ts.map +1 -1
  69. package/development/checkbox.js +3 -1
  70. package/development/core/mixins/panel-mixin.d.ts +13 -0
  71. package/development/core/mixins/panel-mixin.d.ts.map +1 -0
  72. package/development/core/mixins.d.ts +1 -0
  73. package/development/core/mixins.d.ts.map +1 -1
  74. package/development/core/mixins.js +187 -31
  75. package/development/image.js +1 -1
  76. package/development/radio-button/common/radio-button-common.d.ts +22 -0
  77. package/development/radio-button/common/radio-button-common.d.ts.map +1 -0
  78. package/development/radio-button/common.d.ts +2 -0
  79. package/development/radio-button/common.d.ts.map +1 -0
  80. package/development/radio-button/common.js +294 -0
  81. package/development/radio-button/radio-button/radio-button.d.ts +2 -81
  82. package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
  83. package/development/radio-button/radio-button-group/radio-button-group.d.ts +6 -4
  84. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  85. package/development/radio-button/radio-button-group.js +55 -23
  86. package/development/radio-button/radio-button-panel/index.d.ts +2 -0
  87. package/development/radio-button/radio-button-panel/index.d.ts.map +1 -0
  88. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +29 -0
  89. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -0
  90. package/development/radio-button/radio-button-panel.d.ts +2 -0
  91. package/development/radio-button/radio-button-panel.d.ts.map +1 -0
  92. package/development/radio-button/radio-button-panel.js +69 -0
  93. package/development/radio-button/radio-button.js +10 -324
  94. package/development/radio-button.d.ts +2 -0
  95. package/development/radio-button.d.ts.map +1 -1
  96. package/development/radio-button.js +3 -1
  97. package/{selection-panel/selection-panel.d.ts → development/selection-expansion-panel/selection-expansion-panel.d.ts} +9 -7
  98. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -0
  99. package/development/selection-expansion-panel.d.ts +2 -0
  100. package/development/selection-expansion-panel.d.ts.map +1 -0
  101. package/development/selection-expansion-panel.js +340 -0
  102. package/development/tabs/tab/index.d.ts +2 -0
  103. package/development/tabs/tab/index.d.ts.map +1 -0
  104. package/development/tabs/tab/tab.d.ts +24 -0
  105. package/development/tabs/tab/tab.d.ts.map +1 -0
  106. package/development/tabs/tab-group/tab-group.d.ts +20 -15
  107. package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
  108. package/development/tabs/tab-group.js +24 -14
  109. package/development/tabs/{tab-title/tab-title.d.ts → tab-label/tab-label.d.ts} +4 -4
  110. package/development/tabs/{tab-title/tab-title.d.ts.map → tab-label/tab-label.d.ts.map} +1 -1
  111. package/development/tabs/tab-label.d.ts +2 -0
  112. package/development/tabs/tab-label.d.ts.map +1 -0
  113. package/development/tabs/{tab-title.js → tab-label.js} +86 -86
  114. package/development/tabs/tab.d.ts +2 -0
  115. package/development/tabs/tab.d.ts.map +1 -0
  116. package/development/tabs/tab.js +71 -0
  117. package/development/tabs.d.ts +2 -1
  118. package/development/tabs.d.ts.map +1 -1
  119. package/development/tabs.js +3 -2
  120. package/development/train/train-formation/train-formation.d.ts.map +1 -1
  121. package/development/train/train-formation.js +12 -12
  122. package/dialog/dialog-title.js +20 -20
  123. package/dialog/dialog.js +66 -66
  124. package/expansion-panel/expansion-panel-header.js +20 -20
  125. package/expansion-panel/expansion-panel.js +60 -60
  126. package/file-selector.js +91 -91
  127. package/form-field/form-field-clear.js +12 -12
  128. package/form-field/form-field.js +111 -111
  129. package/header/header.js +53 -53
  130. package/icon.js +107 -107
  131. package/image.js +87 -87
  132. package/index.d.ts +10 -8
  133. package/index.js +10 -8
  134. package/journey-header.js +29 -29
  135. package/map-container.js +23 -23
  136. package/menu/menu.js +91 -91
  137. package/navigation/common.js +16 -16
  138. package/navigation/navigation-marker.js +34 -34
  139. package/navigation/navigation-section.js +83 -83
  140. package/navigation/navigation.js +87 -87
  141. package/notification.js +52 -52
  142. package/option/optgroup.js +45 -45
  143. package/option/option.js +108 -108
  144. package/overlay.js +5 -5
  145. package/package.json +34 -19
  146. package/popover/popover.js +110 -110
  147. package/radio-button/common/radio-button-common.d.ts +22 -0
  148. package/radio-button/common/radio-button-common.d.ts.map +1 -0
  149. package/radio-button/common.d.ts +2 -0
  150. package/radio-button/common.d.ts.map +1 -0
  151. package/radio-button/common.js +105 -0
  152. package/radio-button/radio-button/radio-button.d.ts +2 -81
  153. package/radio-button/radio-button/radio-button.d.ts.map +1 -1
  154. package/radio-button/radio-button-group/radio-button-group.d.ts +6 -4
  155. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  156. package/radio-button/radio-button-group.js +86 -80
  157. package/radio-button/radio-button-panel/index.d.ts +2 -0
  158. package/radio-button/radio-button-panel/index.d.ts.map +1 -0
  159. package/radio-button/radio-button-panel/radio-button-panel.d.ts +29 -0
  160. package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -0
  161. package/radio-button/radio-button-panel.d.ts +2 -0
  162. package/radio-button/radio-button-panel.d.ts.map +1 -0
  163. package/radio-button/radio-button-panel.js +59 -0
  164. package/radio-button/radio-button.js +20 -143
  165. package/radio-button.d.ts +2 -0
  166. package/radio-button.d.ts.map +1 -1
  167. package/radio-button.js +2 -0
  168. package/select.js +178 -178
  169. package/{development/selection-panel/selection-panel.d.ts → selection-expansion-panel/selection-expansion-panel.d.ts} +9 -7
  170. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -0
  171. package/selection-expansion-panel.d.ts +2 -0
  172. package/selection-expansion-panel.d.ts.map +1 -0
  173. package/selection-expansion-panel.js +146 -0
  174. package/slider.js +58 -58
  175. package/standard-theme.css +1 -1
  176. package/status.js +6 -6
  177. package/stepper/step-label.js +19 -19
  178. package/stepper/step.js +31 -31
  179. package/stepper/stepper.js +46 -46
  180. package/tabs/tab/index.d.ts +2 -0
  181. package/tabs/tab/index.d.ts.map +1 -0
  182. package/tabs/tab/tab.d.ts +24 -0
  183. package/tabs/tab/tab.d.ts.map +1 -0
  184. package/tabs/tab-group/tab-group.d.ts +20 -15
  185. package/tabs/tab-group/tab-group.d.ts.map +1 -1
  186. package/tabs/tab-group.js +85 -75
  187. package/tabs/{tab-title/tab-title.d.ts → tab-label/tab-label.d.ts} +4 -4
  188. package/tabs/{tab-title/tab-title.d.ts.map → tab-label/tab-label.d.ts.map} +1 -1
  189. package/tabs/tab-label.d.ts +2 -0
  190. package/tabs/tab-label.d.ts.map +1 -0
  191. package/tabs/tab-label.js +51 -0
  192. package/tabs/tab.d.ts +2 -0
  193. package/tabs/tab.d.ts.map +1 -0
  194. package/tabs/tab.js +41 -0
  195. package/tabs.d.ts +2 -1
  196. package/tabs.d.ts.map +1 -1
  197. package/tabs.js +2 -1
  198. package/tag/tag-group.js +8 -8
  199. package/tag/tag.js +27 -27
  200. package/time-input.js +73 -73
  201. package/timetable-occupancy-icon.js +26 -26
  202. package/timetable-occupancy.js +9 -9
  203. package/toast.js +38 -38
  204. package/toggle/toggle-option.js +33 -33
  205. package/toggle/toggle.js +46 -46
  206. package/train/train-formation/train-formation.d.ts.map +1 -1
  207. package/train/train-formation.js +51 -51
  208. package/train/train-wagon.js +30 -30
  209. package/train/train.js +13 -13
  210. package/development/selection-panel/selection-panel.d.ts.map +0 -1
  211. package/development/selection-panel.d.ts +0 -2
  212. package/development/selection-panel.d.ts.map +0 -1
  213. package/development/selection-panel.js +0 -376
  214. package/development/tabs/tab-title.d.ts +0 -2
  215. package/development/tabs/tab-title.d.ts.map +0 -1
  216. package/development/teaser-hero/teaser-hero.d.ts +0 -26
  217. package/development/teaser-hero/teaser-hero.d.ts.map +0 -1
  218. package/development/teaser-hero.d.ts +0 -2
  219. package/development/teaser-hero.d.ts.map +0 -1
  220. package/development/teaser-hero.js +0 -181
  221. package/development/teaser-paid/teaser-paid.d.ts +0 -20
  222. package/development/teaser-paid/teaser-paid.d.ts.map +0 -1
  223. package/development/teaser-paid.d.ts +0 -2
  224. package/development/teaser-paid.d.ts.map +0 -1
  225. package/development/teaser-paid.js +0 -91
  226. package/selection-panel/selection-panel.d.ts.map +0 -1
  227. package/selection-panel.d.ts +0 -2
  228. package/selection-panel.d.ts.map +0 -1
  229. package/selection-panel.js +0 -138
  230. package/tabs/tab-title.d.ts +0 -2
  231. package/tabs/tab-title.d.ts.map +0 -1
  232. package/tabs/tab-title.js +0 -51
  233. package/teaser-hero/teaser-hero.d.ts +0 -26
  234. package/teaser-hero/teaser-hero.d.ts.map +0 -1
  235. package/teaser-hero.d.ts +0 -2
  236. package/teaser-hero.d.ts.map +0 -1
  237. package/teaser-hero.js +0 -51
  238. package/teaser-paid/teaser-paid.d.ts +0 -20
  239. package/teaser-paid/teaser-paid.d.ts.map +0 -1
  240. package/teaser-paid.d.ts +0 -2
  241. package/teaser-paid.d.ts.map +0 -1
  242. package/teaser-paid.js +0 -28
@@ -1,22 +1,22 @@
1
- import { css as i, LitElement as n, html as l } from "lit";
2
- import { property as g, customElement as p } from "lit/decorators.js";
1
+ import { css as n, LitElement as i, html as l } from "lit";
2
+ import { property as p, customElement as g } from "lit/decorators.js";
3
3
  import { hostAttributes as f } from "../core/decorators.js";
4
4
  import { getDocumentWritingMode as h } from "../core/dom.js";
5
- const v = i`*,:before,:after{box-sizing:border-box}:host{--sbb-card-badge-gap: var(--sbb-spacing-fixed-2x);display:block}:host([color=white]){--sbb-card-badge-color: var(--sbb-color-charcoal);--sbb-card-badge-background-color: var(--sbb-color-white);--sbb-card-badge-border-color: var(--sbb-color-aluminium)}:host([color=charcoal]){--sbb-card-badge-color: var(--sbb-color-white);--sbb-card-badge-background-color: var(--sbb-color-charcoal);--sbb-card-badge-border-color: transparent}.sbb-card-badge-wrapper{display:flex;position:relative;height:fit-content;justify-content:end}@media (forced-colors: active){.sbb-card-badge-wrapper:after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-block-end:var(--sbb-border-width-1x) solid CanvasText}}.sbb-card-badge{position:relative;display:flex;inset-block-start:0;inset-inline-end:0;padding-inline:var(--sbb-spacing-fixed-2x) var(--sbb-spacing-fixed-3x)}.sbb-card-badge-content{--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);font-weight:700;position:relative;display:flex;align-items:center;gap:var(--sbb-card-badge-gap);color:var(--sbb-card-badge-color)}.sbb-card-badge-background{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--sbb-card-badge-background-color);border-end-start-radius:var(--sbb-border-radius-4x);margin-inline-end:calc(var(--sbb-spacing-fixed-3x) * -1);transform:skew(16deg)}:host([dir=rtl]) .sbb-card-badge-background{transform:skew(-16deg)}.sbb-card-badge-background:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-block-end:var(--sbb-border-width-1x) solid var(--sbb-card-badge-border-color);border-inline-start:var(--sbb-border-width-1x) solid var(--sbb-card-badge-border-color);border-end-start-radius:var(--sbb-border-radius-4x)}@media (forced-colors: active){.sbb-card-badge-background:before{border:none}}`;
6
- var u = Object.defineProperty, m = Object.getOwnPropertyDescriptor, c = (d, e, b, a) => {
7
- for (var r = a > 1 ? void 0 : a ? m(e, b) : e, t = d.length - 1, s; t >= 0; t--)
8
- (s = d[t]) && (r = (a ? s(e, b, r) : s(r)) || r);
9
- return a && r && u(e, b, r), r;
5
+ const v = n`*,:before,:after{box-sizing:border-box}:host{--sbb-card-badge-gap: var(--sbb-spacing-fixed-2x);display:block}:host([color=white]){--sbb-card-badge-color: var(--sbb-color-charcoal);--sbb-card-badge-background-color: var(--sbb-color-white);--sbb-card-badge-border-color: var(--sbb-color-aluminium)}:host([color=charcoal]){--sbb-card-badge-color: var(--sbb-color-white);--sbb-card-badge-background-color: var(--sbb-color-charcoal);--sbb-card-badge-border-color: transparent}.sbb-card-badge-wrapper{display:flex;position:relative;height:fit-content;justify-content:end}@media (forced-colors: active){.sbb-card-badge-wrapper:after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-block-end:var(--sbb-border-width-1x) solid CanvasText}}.sbb-card-badge{position:relative;display:flex;inset-block-start:0;inset-inline-end:0;padding-inline:var(--sbb-spacing-fixed-2x) var(--sbb-spacing-fixed-3x)}.sbb-card-badge-content{--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);font-weight:700;position:relative;display:flex;align-items:center;gap:var(--sbb-card-badge-gap);color:var(--sbb-card-badge-color)}.sbb-card-badge-background{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--sbb-card-badge-background-color);border-end-start-radius:var(--sbb-border-radius-4x);margin-inline-end:calc(var(--sbb-spacing-fixed-3x) * -1);transform:skew(16deg)}:host([dir=rtl]) .sbb-card-badge-background{transform:skew(-16deg)}.sbb-card-badge-background:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-block-end:var(--sbb-border-width-1x) solid var(--sbb-card-badge-border-color);border-inline-start:var(--sbb-border-width-1x) solid var(--sbb-card-badge-border-color);border-end-start-radius:var(--sbb-border-radius-4x)}@media (forced-colors: active){.sbb-card-badge-background:before{border:none}}`;
6
+ var m = Object.defineProperty, u = Object.getOwnPropertyDescriptor, c = (d, r, o, a) => {
7
+ for (var e = a > 1 ? void 0 : a ? u(r, o) : r, b = d.length - 1, s; b >= 0; b--)
8
+ (s = d[b]) && (e = (a ? s(r, o, e) : s(e)) || e);
9
+ return a && e && m(r, o, e), e;
10
10
  };
11
- let o = class extends n {
11
+ let t = class extends i {
12
12
  constructor() {
13
13
  super(...arguments), this.color = "charcoal";
14
14
  }
15
15
  connectedCallback() {
16
- super.connectedCallback(), this.a = this.parentElement, this.a && this.a.toggleAttribute("data-has-card-badge", !0);
16
+ super.connectedCallback(), this._parentElement = this.parentElement, this._parentElement && this._parentElement.toggleAttribute("data-has-card-badge", !0);
17
17
  }
18
18
  disconnectedCallback() {
19
- super.disconnectedCallback(), this.a && this.a.removeAttribute("data-has-card-badge"), this.a = void 0;
19
+ super.disconnectedCallback(), this._parentElement && this._parentElement.removeAttribute("data-has-card-badge"), this._parentElement = void 0;
20
20
  }
21
21
  render() {
22
22
  return l`
@@ -31,18 +31,18 @@ let o = class extends n {
31
31
  `;
32
32
  }
33
33
  };
34
- o.styles = v;
34
+ t.styles = v;
35
35
  c([
36
- g({ reflect: !0 })
37
- ], o.prototype, "color", 2);
38
- o = c([
39
- p("sbb-card-badge"),
36
+ p({ reflect: !0 })
37
+ ], t.prototype, "color", 2);
38
+ t = c([
39
+ g("sbb-card-badge"),
40
40
  f({
41
41
  slot: "badge",
42
42
  role: "text",
43
43
  dir: h()
44
44
  })
45
- ], o);
45
+ ], t);
46
46
  export {
47
- o as SbbCardBadgeElement
47
+ t as SbbCardBadgeElement
48
48
  };
package/card/card.js CHANGED
@@ -15,7 +15,7 @@ let r = class extends v {
15
15
  *
16
16
  * @returns True whether size is equal to m, l, xl or xxl.
17
17
  */
18
- a() {
18
+ _isBadgeVisible() {
19
19
  return ["m", "l", "xl", "xxl", "xxxl"].includes(this.size);
20
20
  }
21
21
  render() {
@@ -25,7 +25,7 @@ let r = class extends v {
25
25
  <span class="sbb-card__wrapper">
26
26
  <slot></slot>
27
27
  </span>
28
- ${this.a() ? c`<span class="sbb-card__badge-wrapper">
28
+ ${this._isBadgeVisible() ? c`<span class="sbb-card__badge-wrapper">
29
29
  <slot name="badge"></slot>
30
30
  </span>` : p}
31
31
  </span>
package/card/common.js CHANGED
@@ -1,67 +1,67 @@
1
- import { property as b } from "lit/decorators.js";
2
- import { html as n } from "lit/static-html.js";
1
+ import { property as n } from "lit/decorators.js";
2
+ import { html as b } from "lit/static-html.js";
3
3
  import { IS_FOCUSABLE_QUERY as l } from "../core/a11y.js";
4
- import { hostAttributes as u } from "../core/decorators.js";
5
- import { AgnosticMutationObserver as d } from "../core/observers.js";
4
+ import { hostAttributes as d } from "../core/decorators.js";
5
+ import { AgnosticMutationObserver as u } from "../core/observers.js";
6
6
  import { css as h } from "lit";
7
7
  import "../screen-reader-only.js";
8
8
  const f = h`*,:before,:after{box-sizing:border-box}:host{display:block;outline:none!important;position:absolute;top:0;right:0;bottom:0;left:0}:is(.sbb-card-button,.sbb-card-link){display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--sbb-card-border-radius);cursor:pointer;outline:none}:host(:focus-visible:not([data-focus-origin=mouse],[data-focus-origin=touch])) :is(.sbb-card-button,.sbb-card-link),:host(:not([data-focus-origin=mouse],[data-focus-origin=touch])) :is(.sbb-card-button,.sbb-card-link):focus-visible{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}`;
9
- var m = Object.defineProperty, p = Object.getOwnPropertyDescriptor, c = (r, o, t, s) => {
10
- for (var e = s > 1 ? void 0 : s ? p(o, t) : o, a = r.length - 1, i; a >= 0; a--)
11
- (i = r[a]) && (e = (s ? i(o, t, e) : i(e)) || e);
12
- return s && e && m(o, t, e), e;
9
+ var m = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, c = (s, e, t, r) => {
10
+ for (var o = r > 1 ? void 0 : r ? _(e, t) : e, a = s.length - 1, i; a >= 0; a--)
11
+ (i = s[a]) && (o = (r ? i(e, t, o) : i(o)) || o);
12
+ return r && o && m(e, t, o), o;
13
13
  };
14
- const O = (r) => {
15
- let o = class extends r {
14
+ const S = (s) => {
15
+ let e = class extends s {
16
16
  constructor() {
17
- super(...arguments), this.b = !1, this.a = null, this.c = new d(
18
- () => this.d()
17
+ super(...arguments), this._active = !1, this._card = null, this._cardMutationObserver = new u(
18
+ () => this._checkForSlottedActions()
19
19
  );
20
20
  }
21
21
  set active(t) {
22
- this.b = t, this.e();
22
+ this._active = t, this._onActiveChange();
23
23
  }
24
24
  get active() {
25
- return this.b;
25
+ return this._active;
26
26
  }
27
- e() {
28
- this.a && this.a.toggleAttribute("data-has-active-action", this.active);
27
+ _onActiveChange() {
28
+ this._card && this._card.toggleAttribute("data-has-active-action", this.active);
29
29
  }
30
- d() {
31
- var s, e;
30
+ _checkForSlottedActions() {
31
+ var r, o;
32
32
  const t = "data-card-focusable";
33
- Array.from(((e = (s = this.a) == null ? void 0 : s.querySelectorAll) == null ? void 0 : e.call(s, l)) ?? []).filter(
33
+ Array.from(((o = (r = this._card) == null ? void 0 : r.querySelectorAll) == null ? void 0 : o.call(r, l)) ?? []).filter(
34
34
  (a) => a.localName !== "sbb-card-link" && a.localName !== "sbb-card-button" && !a.hasAttribute(t)
35
35
  ).forEach((a) => a.setAttribute(t, ""));
36
36
  }
37
37
  connectedCallback() {
38
38
  var t;
39
- super.connectedCallback(), this.a = (t = this.closest) == null ? void 0 : t.call(this, "sbb-card"), this.a && (this.a.toggleAttribute("data-has-action", !0), this.a.toggleAttribute("data-has-active-action", this.active), this.a.setAttribute("data-action-role", this.actionRole), this.d(), this.c.observe(this.a, {
39
+ super.connectedCallback(), this._card = (t = this.closest) == null ? void 0 : t.call(this, "sbb-card"), this._card && (this._card.toggleAttribute("data-has-action", !0), this._card.toggleAttribute("data-has-active-action", this.active), this._card.setAttribute("data-action-role", this.actionRole), this._checkForSlottedActions(), this._cardMutationObserver.observe(this._card, {
40
40
  childList: !0,
41
41
  subtree: !0
42
42
  }));
43
43
  }
44
44
  disconnectedCallback() {
45
- super.disconnectedCallback(), this.a && (["data-has-action", "data-has-active-action", "data-action-role"].forEach(
46
- (t) => this.a.removeAttribute(t)
47
- ), this.a.querySelectorAll("[data-card-focusable]").forEach((t) => t.removeAttribute("data-card-focusable")), this.a = null), this.c.disconnect();
45
+ super.disconnectedCallback(), this._card && (["data-has-action", "data-has-active-action", "data-action-role"].forEach(
46
+ (t) => this._card.removeAttribute(t)
47
+ ), this._card.querySelectorAll("[data-card-focusable]").forEach((t) => t.removeAttribute("data-card-focusable")), this._card = null), this._cardMutationObserver.disconnect();
48
48
  }
49
49
  renderTemplate() {
50
- return n`
50
+ return b`
51
51
  <sbb-screen-reader-only>
52
52
  <slot></slot>
53
53
  </sbb-screen-reader-only>
54
54
  `;
55
55
  }
56
56
  };
57
- return o.styles = f, c([
58
- b({ reflect: !0, type: Boolean })
59
- ], o.prototype, "active", 1), o = c([
60
- u({
57
+ return e.styles = f, c([
58
+ n({ reflect: !0, type: Boolean })
59
+ ], e.prototype, "active", 1), e = c([
60
+ d({
61
61
  slot: "action"
62
62
  })
63
- ], o), o;
63
+ ], e), e;
64
64
  };
65
65
  export {
66
- O as SbbCardActionCommonElementMixin
66
+ S as SbbCardActionCommonElementMixin
67
67
  };
@@ -1,17 +1,12 @@
1
- import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
2
- import { SbbCheckedStateChange, SbbDisabledStateChange, SbbIconPlacement, SbbStateChange } from '../../core/interfaces.js';
3
- import { SbbCheckboxGroupElement } from '../checkbox-group.js';
1
+ import { LitElement, CSSResultGroup, TemplateResult } from 'lit';
2
+ import { SbbIconPlacement } from '../../core/interfaces.js';
4
3
 
5
- export type SbbCheckboxStateChange = Extract<SbbStateChange, SbbDisabledStateChange | SbbCheckedStateChange>;
6
- export type SbbCheckboxSize = 's' | 'm';
7
- declare const SbbCheckboxElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbUpdateSchedulerMixinType> & import('../../core/mixins.js').Constructor<import('../../core/mixins.js').SbbFormAssociatedCheckboxMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
4
+ declare const SbbCheckboxElement_base: import('../../core/mixins.js').Constructor<import('../common.js').SbbCheckboxCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof LitElement;
8
5
  /**
9
6
  * It displays a checkbox enhanced with the SBB Design.
10
7
  *
11
8
  * @slot - Use the unnamed slot to add content to the `sbb-checkbox`.
12
9
  * @slot icon - Slot used to render the checkbox icon (disabled inside a selection panel).
13
- * @slot subtext - Slot used to render a subtext under the label (only visible within a selection panel).
14
- * @slot suffix - Slot used to render additional content after the label (only visible within a selection panel).
15
10
  * @event {CustomEvent<void>} didChange - Deprecated. used for React. Will probably be removed once React 19 is available.
16
11
  * @event {Event} change - Event fired on change.
17
12
  * @event {InputEvent} input - Event fired on input.
@@ -20,48 +15,10 @@ export declare class SbbCheckboxElement extends SbbCheckboxElement_base {
20
15
  static styles: CSSResultGroup;
21
16
  static readonly events: {
22
17
  readonly didChange: "didChange";
23
- readonly stateChange: "stateChange";
24
- readonly checkboxLoaded: "checkboxLoaded";
25
18
  };
26
- /** Whether the checkbox is indeterminate. */
27
- indeterminate: boolean;
28
19
  /** The label position relative to the labelIcon. Defaults to end */
29
20
  iconPlacement: SbbIconPlacement;
30
- /** Label size variant, either m or s. */
31
- set size(value: SbbCheckboxSize);
32
- get size(): SbbCheckboxSize;
33
- private _size;
34
- /** Reference to the connected checkbox group. */
35
- get group(): SbbCheckboxGroupElement | null;
36
- private _group;
37
- /**
38
- * Whether the input is the main input of a selection panel.
39
- * @internal
40
- */
41
- get isSelectionPanelInput(): boolean;
42
- /** The label describing whether the selection panel is expanded (for screen readers only). */
43
- private _selectionPanelExpandedLabel;
44
- private _language;
45
- private _selectionPanelElement;
46
- /**
47
- * @internal
48
- * Internal event that emits whenever the state of the checkbox
49
- * in relation to the parent selection panel changes.
50
- */
51
- private _stateChange;
52
- /**
53
- * @internal
54
- * Internal event that emits when the checkbox is loaded.
55
- */
56
- private _checkboxLoaded;
57
21
  constructor();
58
- connectedCallback(): void;
59
- protected willUpdate(changedProperties: PropertyValues<this>): Promise<void>;
60
- protected firstUpdated(changedProperties: PropertyValues<this>): void;
61
- protected isDisabledExternally(): boolean;
62
- protected isRequiredExternally(): boolean;
63
- protected withUserInteraction(): void;
64
- private _updateExpandedLabel;
65
22
  protected render(): TemplateResult;
66
23
  }
67
24
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../../src/elements/checkbox/checkbox/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAMb,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAQlC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAIpE,OAAO,6BAA6B,CAAC;AACrC,OAAO,0BAA0B,CAAC;AAElC,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAC1C,cAAc,EACd,sBAAsB,GAAG,qBAAqB,CAC/C,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,GAAG,CAAC;;AAExC;;;;;;;;;;GAUG;AACH,qBACa,kBAAmB,SAAQ,uBAEvC;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;;MAIlB;IAEX,6CAA6C;IACT,aAAa,UAAS;IAE1D,oEAAoE;IAE7D,aAAa,EAAE,gBAAgB,CAAS;IAE/C,yCAAyC;IACzC,IACW,IAAI,CAAC,KAAK,EAAE,eAAe,EAErC;IACD,IAAW,IAAI,IAAI,eAAe,CAEjC;IACD,OAAO,CAAC,KAAK,CAAwB;IAErC,iDAAiD;IACjD,IAAW,KAAK,IAAI,uBAAuB,GAAG,IAAI,CAEjD;IACD,OAAO,CAAC,MAAM,CAAwC;IAEtD;;;OAGG;IACH,IAAW,qBAAqB,IAAI,OAAO,CAE1C;IAED,8FAA8F;IACrF,OAAO,CAAC,4BAA4B,CAAU;IAEvD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,sBAAsB,CAAyC;IAEvE;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAIlB;IAEF;;;OAGG;IACH,OAAO,CAAC,eAAe,CAIrB;;IAOc,iBAAiB,IAAI,IAAI;cAiBhB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAmBxE,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAW3D,oBAAoB,IAAI,OAAO;cAI/B,oBAAoB,IAAI,OAAO;cAI/B,mBAAmB,IAAI,IAAI;YAMhC,oBAAoB;cAcf,MAAM,IAAI,cAAc;CA0B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,cAAc,EAAE,kBAAkB,CAAC;KACpC;CACF"}
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../../src/elements/checkbox/checkbox/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAIjE,OAAO,0BAA0B,CAAC;;AAIlC;;;;;;;;GAQG;AACH,qBACa,kBAAmB,SAAQ,uBAEvC;IACC,OAAuB,MAAM,EAAE,cAAc,CAAwC;IAErF,gBAAuB,MAAM;;MAElB;IAEX,oEAAoE;IAE7D,aAAa,EAAE,gBAAgB,CAAS;;cAO5B,MAAM,IAAI,cAAc;CAuB5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,cAAc,EAAE,kBAAkB,CAAC;KACpC;CACF"}
@@ -1,6 +1,8 @@
1
1
  import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
2
2
  import { SbbHorizontalFrom, SbbOrientation } from '../../core/interfaces.js';
3
- import { SbbCheckboxElement, SbbCheckboxSize } from '../checkbox.js';
3
+ import { SbbCheckboxPanelElement } from '../checkbox-panel.js';
4
+ import { SbbCheckboxElement } from '../checkbox.js';
5
+ import { SbbCheckboxSize } from '../common.js';
4
6
 
5
7
  declare const SbbCheckboxGroupElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof LitElement;
6
8
  /**
@@ -20,7 +22,7 @@ export declare class SbbCheckboxGroupElement extends SbbCheckboxGroupElement_bas
20
22
  /** Indicates the orientation of the checkboxes inside the `<sbb-checkbox-group>`. */
21
23
  orientation: SbbOrientation;
22
24
  /** List of contained checkbox elements. */
23
- get checkboxes(): SbbCheckboxElement[];
25
+ get checkboxes(): (SbbCheckboxElement | SbbCheckboxPanelElement)[];
24
26
  private _abort;
25
27
  constructor();
26
28
  connectedCallback(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/checkbox/checkbox-group/checkbox-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAKvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;;AAI1E;;;;;GAKG;AACH,qBACa,uBAAwB,SAAQ,4BAA4B;IACvE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,8CAA8C;IACK,QAAQ,UAAS;IAEpE,mCAAmC;IAChB,IAAI,EAAE,eAAe,CAAO;IAE/C,yDAAyD;IAElD,cAAc,CAAC,EAAE,iBAAiB,CAAC;IAE1C,qFAAqF;IAE9E,WAAW,EAAE,cAAc,CAAgB;IAElD,2CAA2C;IAC3C,IAAW,UAAU,IAAI,kBAAkB,EAAE,CAI5C;IAED,OAAO,CAAC,MAAM,CAAsE;;IAOpE,iBAAiB,IAAI,IAAI;cAOtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAc5E,OAAO,CAAC,cAAc;cAyBH,MAAM,IAAI,cAAc;CAU5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,oBAAoB,EAAE,uBAAuB,CAAC;KAC/C;CACF"}
1
+ {"version":3,"file":"checkbox-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/checkbox/checkbox-group/checkbox-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAKvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;;AAIpD;;;;;GAKG;AACH,qBACa,uBAAwB,SAAQ,4BAA4B;IACvE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,8CAA8C;IACK,QAAQ,UAAS;IAEpE,mCAAmC;IAChB,IAAI,EAAE,eAAe,CAAO;IAE/C,yDAAyD;IAElD,cAAc,CAAC,EAAE,iBAAiB,CAAC;IAE1C,qFAAqF;IAE9E,WAAW,EAAE,cAAc,CAAgB;IAElD,2CAA2C;IAC3C,IAAW,UAAU,IAAI,CAAC,kBAAkB,GAAG,uBAAuB,CAAC,EAAE,CAMxE;IAED,OAAO,CAAC,MAAM,CAAsE;;IAOpE,iBAAiB,IAAI,IAAI;cAUtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAc5E,OAAO,CAAC,cAAc;cA0BH,MAAM,IAAI,cAAc;CAU5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,oBAAoB,EAAE,uBAAuB,CAAC;KAC/C;CACF"}
@@ -1,30 +1,33 @@
1
- import { css as h, LitElement as l, html as p } from "lit";
2
- import { property as s, customElement as d } from "lit/decorators.js";
3
- import { interactivityChecker as x, isArrowKeyPressed as u, getNextElementIndex as m } from "../core/a11y.js";
4
- import { SbbConnectedAbortController as g, SbbSlotStateController as k } from "../core/controllers.js";
1
+ import { css as h, LitElement as l, html as d } from "lit";
2
+ import { property as s, customElement as p } from "lit/decorators.js";
3
+ import { interactivityChecker as x, isArrowKeyPressed as m, getNextElementIndex as u } from "../core/a11y.js";
4
+ import { SbbConnectedAbortController as k, SbbSlotStateController as g } from "../core/controllers.js";
5
5
  import { SbbDisabledMixin as f } from "../core/mixins.js";
6
- const w = h`*,:before,:after{box-sizing:border-box}:host{--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto;--sbb-checkbox-group-width: max-content;--sbb-checkbox-group-gap: var(--sbb-spacing-fixed-3x) var(--sbb-spacing-fixed-6x);display:block}:host([orientation=vertical]){--sbb-checkbox-group-orientation: column;--sbb-checkbox-group-width: 100%;--sbb-checkbox-group-checkbox-width: 100%}:host([data-has-selection-panel]){--sbb-checkbox-group-width: 100%}:host([data-has-selection-panel][orientation=vertical]){--sbb-checkbox-group-gap: var(--sbb-spacing-fixed-2x) var(--sbb-spacing-fixed-4x)}@media (min-width: 0rem){:host([orientation=vertical][horizontal-from=zero]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=zero]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 22.5rem){:host([orientation=vertical][horizontal-from=micro]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=micro]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 37.5rem){:host([orientation=vertical][horizontal-from=small]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=small]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 52.5rem){:host([orientation=vertical][horizontal-from=medium]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=medium]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 64rem){:host([orientation=vertical][horizontal-from=large]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=large]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 80rem){:host([orientation=vertical][horizontal-from=wide]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=wide]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 90rem){:host([orientation=vertical][horizontal-from=ultra]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=ultra]:not([data-has-selection-panel])){--sbb-checkbox-group-width: max-content}}.sbb-checkbox-group{display:flex;flex-direction:var(--sbb-checkbox-group-orientation);gap:var(--sbb-checkbox-group-gap);align-items:flex-start;width:var(--sbb-checkbox-group-width)}.sbb-checkbox-group__error{display:inline-block;margin-block-start:var(--sbb-spacing-fixed-1x)}:host(:not([data-slot-names~=error])) .sbb-checkbox-group__error{display:none}::slotted(sbb-checkbox){width:var(--sbb-checkbox-group-checkbox-width)}`;
7
- var v = Object.defineProperty, z = Object.getOwnPropertyDescriptor, n = (t, o, e, r) => {
8
- for (var i = r > 1 ? void 0 : r ? z(o, e) : o, b = t.length - 1, c; b >= 0; b--)
9
- (c = t[b]) && (i = (r ? c(o, e, i) : c(i)) || i);
6
+ const w = h`*,:before,:after{box-sizing:border-box}:host{--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto;--sbb-checkbox-group-width: max-content;--sbb-checkbox-group-gap: var(--sbb-spacing-fixed-3x) var(--sbb-spacing-fixed-6x);display:block}:host([orientation=vertical]){--sbb-checkbox-group-orientation: column;--sbb-checkbox-group-width: 100%;--sbb-checkbox-group-checkbox-width: 100%}:host([orientation=vertical]) ::slotted(sbb-checkbox-panel){width:100%}:host([data-has-panel]){--sbb-checkbox-group-width: 100%}:host([data-has-panel]) ::slotted(sbb-checkbox-panel){flex:auto}:host([data-has-panel][orientation=vertical]){--sbb-checkbox-group-gap: var(--sbb-spacing-fixed-2x) var(--sbb-spacing-fixed-4x)}@media (min-width: 0rem){:host([orientation=vertical][horizontal-from=zero]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=zero]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=zero]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 22.5rem){:host([orientation=vertical][horizontal-from=micro]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=micro]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=micro]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 37.5rem){:host([orientation=vertical][horizontal-from=small]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=small]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=small]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 52.5rem){:host([orientation=vertical][horizontal-from=medium]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=medium]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=medium]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 64rem){:host([orientation=vertical][horizontal-from=large]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=large]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=large]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 80rem){:host([orientation=vertical][horizontal-from=wide]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=wide]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=wide]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}@media (min-width: 90rem){:host([orientation=vertical][horizontal-from=ultra]){--sbb-checkbox-group-orientation: row;--sbb-checkbox-group-checkbox-width: auto}:host([orientation=vertical][horizontal-from=ultra]) ::slotted(sbb-checkbox-panel){width:initial}:host([orientation=vertical][horizontal-from=ultra]:not([data-has-panel])){--sbb-checkbox-group-width: max-content}}.sbb-checkbox-group{display:flex;flex-direction:var(--sbb-checkbox-group-orientation);gap:var(--sbb-checkbox-group-gap);align-items:flex-start;width:var(--sbb-checkbox-group-width)}.sbb-checkbox-group__error{display:inline-block;margin-block-start:var(--sbb-spacing-fixed-1x)}:host(:not([data-slot-names~=error])) .sbb-checkbox-group__error{display:none}::slotted(sbb-checkbox){width:var(--sbb-checkbox-group-checkbox-width)}`;
7
+ var v = Object.defineProperty, z = Object.getOwnPropertyDescriptor, b = (t, o, e, r) => {
8
+ for (var i = r > 1 ? void 0 : r ? z(o, e) : o, n = t.length - 1, c; n >= 0; n--)
9
+ (c = t[n]) && (i = (r ? c(o, e, i) : c(i)) || i);
10
10
  return r && i && v(o, e, i), i;
11
11
  };
12
12
  let a = class extends f(l) {
13
13
  constructor() {
14
- super(), this.required = !1, this.size = "m", this.orientation = "horizontal", this.a = new g(this), new k(this);
14
+ super(), this.required = !1, this.size = "m", this.orientation = "horizontal", this._abort = new k(this), new g(this);
15
15
  }
16
16
  /** List of contained checkbox elements. */
17
17
  get checkboxes() {
18
18
  var t;
19
- return Array.from(((t = this.querySelectorAll) == null ? void 0 : t.call(this, "sbb-checkbox")) ?? []).filter(
19
+ return Array.from(((t = this.querySelectorAll) == null ? void 0 : t.call(this, "sbb-checkbox, sbb-checkbox-panel")) ?? []).filter(
20
20
  (o) => o.closest("sbb-checkbox-group") === this
21
21
  );
22
22
  }
23
23
  connectedCallback() {
24
24
  var o;
25
25
  super.connectedCallback();
26
- const t = this.a.signal;
27
- this.addEventListener("keydown", (e) => this.b(e), { signal: t }), this.toggleAttribute("data-has-selection-panel", !!((o = this.querySelector) != null && o.call(this, "sbb-selection-panel")));
26
+ const t = this._abort.signal;
27
+ this.addEventListener("keydown", (e) => this._handleKeyDown(e), { signal: t }), this.toggleAttribute(
28
+ "data-has-panel",
29
+ !!((o = this.querySelector) != null && o.call(this, "sbb-selection-expansion-panel, sbb-checkbox-panel"))
30
+ );
28
31
  }
29
32
  willUpdate(t) {
30
33
  super.willUpdate(t), t.has("disabled") && this.checkboxes.forEach((o) => {
@@ -38,21 +41,21 @@ let a = class extends f(l) {
38
41
  return (e = o.requestUpdate) == null ? void 0 : e.call(o, "size");
39
42
  });
40
43
  }
41
- b(t) {
44
+ _handleKeyDown(t) {
42
45
  var e;
43
46
  const o = this.checkboxes.filter(
44
47
  (r) => !r.disabled && x.isVisible(r)
45
48
  );
46
49
  if (!(!o || // don't trap nested handling
47
- t.target !== this && t.target.parentElement !== this && t.target.parentElement.nodeName !== "SBB-SELECTION-PANEL") && u(t)) {
50
+ t.target !== this && t.target.parentElement !== this && t.target.parentElement.localName !== "sbb-selection-expansion-panel") && m(t)) {
48
51
  const r = o.findIndex(
49
- (b) => b === t.target
50
- ), i = m(t, r, o.length);
52
+ (n) => n === t.target
53
+ ), i = u(t, r, o.length);
51
54
  (e = o[i]) == null || e.focus();
52
55
  }
53
56
  }
54
57
  render() {
55
- return p`
58
+ return d`
56
59
  <div class="sbb-checkbox-group">
57
60
  <slot></slot>
58
61
  </div>
@@ -63,20 +66,20 @@ let a = class extends f(l) {
63
66
  }
64
67
  };
65
68
  a.styles = w;
66
- n([
69
+ b([
67
70
  s({ reflect: !0, type: Boolean })
68
71
  ], a.prototype, "required", 2);
69
- n([
72
+ b([
70
73
  s()
71
74
  ], a.prototype, "size", 2);
72
- n([
75
+ b([
73
76
  s({ attribute: "horizontal-from", reflect: !0 })
74
77
  ], a.prototype, "horizontalFrom", 2);
75
- n([
78
+ b([
76
79
  s({ reflect: !0 })
77
80
  ], a.prototype, "orientation", 2);
78
- a = n([
79
- d("sbb-checkbox-group")
81
+ a = b([
82
+ p("sbb-checkbox-group")
80
83
  ], a);
81
84
  export {
82
85
  a as SbbCheckboxGroupElement
@@ -0,0 +1,41 @@
1
+ import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
2
+ import { EventEmitter } from '../../core/eventing.js';
3
+ import { SbbCheckedStateChange, SbbDisabledStateChange, SbbStateChange } from '../../core/interfaces/types.js';
4
+
5
+ export type SbbCheckboxPanelStateChange = Extract<SbbStateChange, SbbDisabledStateChange | SbbCheckedStateChange>;
6
+ declare const SbbCheckboxPanelElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbPanelMixinType> & import('../../core/mixins.js').Constructor<import('../common.js').SbbCheckboxCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbUpdateSchedulerMixinType> & typeof LitElement;
7
+ /**
8
+ * It displays a checkbox enhanced with selection panel design.
9
+ *
10
+ * @slot - Use the unnamed slot to add content to the `sbb-checkbox`.
11
+ * @slot subtext - Slot used to render a subtext under the label (only visible within a selection panel).
12
+ * @slot suffix - Slot used to render additional content after the label (only visible within a selection panel).
13
+ * @slot badge - Use this slot to provide a `sbb-card-badge` (optional).
14
+ * @event {CustomEvent<void>} didChange - Deprecated. used for React. Will probably be removed once React 19 is available.
15
+ * @event {Event} change - Event fired on change.
16
+ * @event {InputEvent} input - Event fired on input.
17
+ */
18
+ export declare class SbbCheckboxPanelElement extends SbbCheckboxPanelElement_base {
19
+ static styles: CSSResultGroup;
20
+ static readonly events: {
21
+ readonly didChange: "didChange";
22
+ readonly stateChange: "stateChange";
23
+ readonly panelConnected: "panelConnected";
24
+ };
25
+ /**
26
+ * @internal
27
+ * Internal event that emits whenever the state of the checkbox
28
+ * in relation to the parent selection panel changes.
29
+ */
30
+ protected stateChange: EventEmitter<SbbCheckboxPanelStateChange>;
31
+ constructor();
32
+ protected willUpdate(changedProperties: PropertyValues<this>): Promise<void>;
33
+ protected render(): TemplateResult;
34
+ }
35
+ declare global {
36
+ interface HTMLElementTagNameMap {
37
+ 'sbb-checkbox-panel': SbbCheckboxPanelElement;
38
+ }
39
+ }
40
+ export {};
41
+ //# sourceMappingURL=checkbox-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-panel.d.ts","sourceRoot":"","sources":["../../../../src/elements/checkbox/checkbox-panel/checkbox-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAIb,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,EACf,MAAM,gCAAgC,CAAC;AAIxC,OAAO,6BAA6B,CAAC;AACrC,OAAO,0BAA0B,CAAC;AAElC,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAC/C,cAAc,EACd,sBAAsB,GAAG,qBAAqB,CAC/C,CAAC;;AAEF;;;;;;;;;;GAUG;AACH,qBACa,uBAAwB,SAAQ,4BAE5C;IACC,OAAuB,MAAM,EAAE,cAAc,CAA2C;IAGxF,gBAAuB,MAAM;;;;MAIlB;IAEX;;;;OAIG;IACH,SAAS,CAAC,WAAW,EAAE,YAAY,CAAC,2BAA2B,CAAC,CAI9D;;cAOuB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAkBxE,MAAM,IAAI,cAAc;CA8B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,oBAAoB,EAAE,uBAAuB,CAAC;KAC/C;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './checkbox-panel/checkbox-panel.js';
2
+ //# sourceMappingURL=checkbox-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-panel.d.ts","sourceRoot":"","sources":["../../../src/elements/checkbox/checkbox-panel.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { LitElement as o, html as c, nothing as h } from "lit";
2
+ import { customElement as r } from "lit/decorators.js";
3
+ import { SbbSlotStateController as d } from "../core/controllers.js";
4
+ import { EventEmitter as p } from "../core/eventing.js";
5
+ import { SbbPanelMixin as m, SbbUpdateSchedulerMixin as x, panelCommonStyle as f } from "../core/mixins.js";
6
+ import { SbbCheckboxCommonElementMixin as C, checkboxCommonStyle as k } from "./common.js";
7
+ import "../screen-reader-only.js";
8
+ import "../visual-checkbox.js";
9
+ var u = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, v = (e, a, i, n) => {
10
+ for (var s = n > 1 ? void 0 : n ? _(a, i) : a, b = e.length - 1, l; b >= 0; b--)
11
+ (l = e[b]) && (s = (n ? l(a, i, s) : l(s)) || s);
12
+ return n && s && u(a, i, s), s;
13
+ };
14
+ let t = class extends m(
15
+ C(x(o))
16
+ ) {
17
+ constructor() {
18
+ super(), this.stateChange = new p(
19
+ this,
20
+ t.events.stateChange,
21
+ { bubbles: !0 }
22
+ ), new d(this);
23
+ }
24
+ async willUpdate(e) {
25
+ super.willUpdate(e), e.has("checked") && (this.toggleAttribute("data-checked", this.checked), this.checked !== e.get("checked") && this.stateChange.emit({ type: "checked", checked: this.checked })), e.has("disabled") && this.disabled !== e.get("disabled") && this.stateChange.emit({ type: "disabled", disabled: this.disabled });
26
+ }
27
+ render() {
28
+ return c`
29
+ <span class="sbb-selection-panel">
30
+ <div class="sbb-selection-panel__badge">
31
+ <slot name="badge"></slot>
32
+ </div>
33
+ <span class="sbb-checkbox-wrapper">
34
+ <span class="sbb-checkbox">
35
+ <span class="sbb-checkbox__inner">
36
+ <span class="sbb-checkbox__aligner">
37
+ <sbb-visual-checkbox
38
+ ?checked=${this.checked}
39
+ ?indeterminate=${this.indeterminate}
40
+ ?disabled=${this.disabled || this.formDisabled}
41
+ ></sbb-visual-checkbox>
42
+ </span>
43
+ <span class="sbb-checkbox__label">
44
+ <slot></slot>
45
+ <slot name="suffix"></slot>
46
+ </span>
47
+ </span>
48
+ <slot name="subtext"></slot>
49
+ ${this.expansionState ? c`<sbb-screen-reader-only>${this.expansionState}</sbb-screen-reader-only>` : h}
50
+ </span>
51
+ </span>
52
+ </span>
53
+ `;
54
+ }
55
+ };
56
+ t.styles = [k, f];
57
+ t.events = {
58
+ didChange: "didChange",
59
+ stateChange: "stateChange",
60
+ panelConnected: "panelConnected"
61
+ };
62
+ t = v([
63
+ r("sbb-checkbox-panel")
64
+ ], t);
65
+ export {
66
+ t as SbbCheckboxPanelElement
67
+ };