@sbb-esta/lyne-elements 0.52.0 → 0.52.1

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 (220) 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/breadcrumb-group.d.ts.map +1 -1
  7. package/breadcrumb/breadcrumb-group.js +70 -69
  8. package/breadcrumb/breadcrumb.js +17 -17
  9. package/calendar.js +423 -423
  10. package/card/card-badge.js +17 -17
  11. package/card/card.js +2 -2
  12. package/card/common.js +30 -30
  13. package/checkbox/checkbox-group.js +17 -17
  14. package/checkbox/checkbox.js +34 -34
  15. package/clock.js +83 -83
  16. package/container/sticky-bar.js +16 -16
  17. package/core/a11y.js +91 -91
  18. package/core/base-elements.js +87 -88
  19. package/core/controllers.js +40 -40
  20. package/core/datetime.js +34 -36
  21. package/core/dom.js +26 -26
  22. package/core/eventing.js +33 -33
  23. package/core/mixins.js +122 -122
  24. package/core/overlay/overlay.d.ts.map +1 -1
  25. package/core/overlay.js +55 -50
  26. package/core/testing/event-spy.d.ts +1 -1
  27. package/core/testing/wait-for-image-ready.d.ts +4 -0
  28. package/core/testing/wait-for-image-ready.d.ts.map +1 -0
  29. package/core/testing.d.ts +1 -0
  30. package/core/testing.d.ts.map +1 -1
  31. package/core/testing.js +42 -31
  32. package/custom-elements.json +70 -4
  33. package/datepicker/common.js +55 -55
  34. package/datepicker/datepicker-toggle.js +94 -94
  35. package/datepicker/datepicker.js +144 -144
  36. package/development/accordion.js +2 -3
  37. package/development/action-group.js +2 -3
  38. package/development/alert/alert-group.js +2 -3
  39. package/development/alert/alert.js +2 -3
  40. package/development/autocomplete.js +2 -3
  41. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
  42. package/development/breadcrumb/breadcrumb-group.js +5 -5
  43. package/development/breadcrumb/breadcrumb.js +2 -3
  44. package/development/button/button-link.js +2 -3
  45. package/development/button/button-static.js +2 -3
  46. package/development/button/button.js +2 -3
  47. package/development/button/common.js +2 -3
  48. package/development/button/mini-button.js +2 -3
  49. package/development/button/secondary-button-link.js +2 -3
  50. package/development/button/secondary-button-static.js +2 -3
  51. package/development/button/secondary-button.js +2 -3
  52. package/development/button/tertiary-button-link.js +2 -3
  53. package/development/button/tertiary-button-static.js +2 -3
  54. package/development/button/tertiary-button.js +2 -3
  55. package/development/button/transparent-button-link.js +2 -3
  56. package/development/button/transparent-button-static.js +2 -3
  57. package/development/button/transparent-button.js +2 -3
  58. package/development/calendar.js +2 -3
  59. package/development/card/card-badge.js +2 -3
  60. package/development/card/card-button.js +2 -3
  61. package/development/card/card-link.js +2 -3
  62. package/development/card/card.js +2 -3
  63. package/development/card/common.js +2 -3
  64. package/development/checkbox/checkbox-group.js +2 -3
  65. package/development/checkbox/checkbox.js +2 -3
  66. package/development/chip.js +2 -3
  67. package/development/clock.js +2 -3
  68. package/development/container/container.js +2 -3
  69. package/development/container/sticky-bar.js +2 -3
  70. package/development/core/base-elements.js +4 -7
  71. package/development/core/mixins.js +7 -13
  72. package/development/core/overlay/overlay.d.ts.map +1 -1
  73. package/development/core/overlay.js +9 -3
  74. package/development/core/testing/event-spy.d.ts +1 -1
  75. package/development/core/testing/wait-for-image-ready.d.ts +4 -0
  76. package/development/core/testing/wait-for-image-ready.d.ts.map +1 -0
  77. package/development/core/testing.d.ts +1 -0
  78. package/development/core/testing.d.ts.map +1 -1
  79. package/development/core/testing.js +17 -1
  80. package/development/datepicker/common.js +2 -3
  81. package/development/datepicker/datepicker-next-day.js +2 -3
  82. package/development/datepicker/datepicker-previous-day.js +2 -3
  83. package/development/datepicker/datepicker-toggle.js +2 -3
  84. package/development/datepicker/datepicker.js +2 -3
  85. package/development/dialog/dialog-actions.js +2 -3
  86. package/development/dialog/dialog-content.js +2 -3
  87. package/development/dialog/dialog-title.js +2 -3
  88. package/development/dialog/dialog.js +2 -3
  89. package/development/divider.js +2 -3
  90. package/development/expansion-panel/expansion-panel-content.js +2 -3
  91. package/development/expansion-panel/expansion-panel-header.js +2 -3
  92. package/development/expansion-panel/expansion-panel.js +2 -3
  93. package/development/file-selector.js +2 -3
  94. package/development/footer.js +2 -3
  95. package/development/form-error.js +2 -3
  96. package/development/form-field/form-field-clear.js +2 -3
  97. package/development/form-field/form-field.js +2 -3
  98. package/development/header/common.js +2 -3
  99. package/development/header/header-button.js +2 -3
  100. package/development/header/header-link.js +2 -3
  101. package/development/header/header.js +2 -3
  102. package/development/icon.js +4 -7
  103. package/development/image/image.d.ts +12 -3
  104. package/development/image/image.d.ts.map +1 -1
  105. package/development/image.js +41 -24
  106. package/development/journey-header.js +2 -3
  107. package/development/lead-container.js +2 -3
  108. package/development/link/block-link-button.js +2 -3
  109. package/development/link/block-link-static.js +2 -3
  110. package/development/link/block-link.js +2 -3
  111. package/development/link/common.js +3 -5
  112. package/development/link/link-button.js +2 -3
  113. package/development/link/link-static.js +2 -3
  114. package/development/link/link.js +2 -3
  115. package/development/link-list.js +2 -3
  116. package/development/loading-indicator.js +2 -3
  117. package/development/logo.js +2 -3
  118. package/development/map-container.js +2 -3
  119. package/development/menu/common.js +2 -3
  120. package/development/menu/menu-button.js +2 -3
  121. package/development/menu/menu-link.js +2 -3
  122. package/development/menu/menu.js +2 -3
  123. package/development/message.js +2 -3
  124. package/development/navigation/common.js +2 -3
  125. package/development/navigation/navigation-button.js +2 -3
  126. package/development/navigation/navigation-link.js +2 -3
  127. package/development/navigation/navigation-list.js +2 -3
  128. package/development/navigation/navigation-marker.js +2 -3
  129. package/development/navigation/navigation-section.js +2 -3
  130. package/development/navigation/navigation.js +2 -3
  131. package/development/notification.js +2 -3
  132. package/development/option/optgroup.js +2 -3
  133. package/development/option/option.js +2 -3
  134. package/development/overlay.js +3 -5
  135. package/development/popover/popover-trigger.js +2 -3
  136. package/development/popover/popover.js +2 -3
  137. package/development/radio-button/radio-button-group.js +2 -3
  138. package/development/radio-button/radio-button.js +2 -3
  139. package/development/screen-reader-only.js +2 -3
  140. package/development/select.js +2 -3
  141. package/development/selection-panel.js +2 -3
  142. package/development/signet.js +2 -3
  143. package/development/skiplink-list.js +2 -3
  144. package/development/slider.js +2 -3
  145. package/development/status.js +2 -3
  146. package/development/stepper/step-label.js +2 -3
  147. package/development/stepper/step.js +2 -3
  148. package/development/stepper/stepper/stepper.d.ts +1 -1
  149. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  150. package/development/stepper/stepper.js +5 -6
  151. package/development/tabs/tab-group.js +2 -3
  152. package/development/tabs/tab-title.js +2 -3
  153. package/development/tag/tag-group.js +2 -3
  154. package/development/tag/tag.js +2 -3
  155. package/development/teaser-hero.js +2 -3
  156. package/development/teaser-paid.js +2 -3
  157. package/development/teaser.js +2 -3
  158. package/development/time-input.js +2 -3
  159. package/development/timetable-occupancy-icon.js +2 -3
  160. package/development/timetable-occupancy.js +2 -3
  161. package/development/title.js +3 -5
  162. package/development/toast.js +2 -3
  163. package/development/toggle/toggle-option.js +3 -5
  164. package/development/toggle/toggle.js +2 -3
  165. package/development/toggle-check.js +10 -3
  166. package/development/train/train-blocked-passage.js +2 -3
  167. package/development/train/train-formation.js +2 -3
  168. package/development/train/train-wagon.js +2 -3
  169. package/development/train/train.js +2 -3
  170. package/development/visual-checkbox.js +2 -3
  171. package/dialog/dialog-title.js +20 -20
  172. package/dialog/dialog.js +66 -66
  173. package/expansion-panel/expansion-panel-header.js +20 -20
  174. package/expansion-panel/expansion-panel.js +60 -60
  175. package/file-selector.js +91 -91
  176. package/form-field/form-field-clear.js +12 -12
  177. package/form-field/form-field.js +111 -111
  178. package/header/header.js +53 -53
  179. package/icon.js +107 -107
  180. package/image/image.d.ts +12 -3
  181. package/image/image.d.ts.map +1 -1
  182. package/image.js +118 -105
  183. package/journey-header.js +29 -29
  184. package/map-container.js +23 -23
  185. package/menu/menu.js +91 -91
  186. package/navigation/common.js +16 -16
  187. package/navigation/navigation-marker.js +34 -34
  188. package/navigation/navigation-section.js +83 -83
  189. package/navigation/navigation.js +87 -87
  190. package/notification.js +52 -52
  191. package/option/optgroup.js +45 -45
  192. package/option/option.js +108 -108
  193. package/overlay.js +5 -5
  194. package/package.json +1 -1
  195. package/popover/popover.js +110 -110
  196. package/radio-button/radio-button-group.js +93 -93
  197. package/radio-button/radio-button.js +84 -84
  198. package/select.js +178 -178
  199. package/selection-panel.js +44 -44
  200. package/slider.js +58 -58
  201. package/status.js +6 -6
  202. package/stepper/step-label.js +19 -19
  203. package/stepper/step.js +31 -31
  204. package/stepper/stepper/stepper.d.ts +1 -1
  205. package/stepper/stepper/stepper.d.ts.map +1 -1
  206. package/stepper/stepper.js +48 -48
  207. package/tabs/tab-group.js +67 -67
  208. package/tag/tag-group.js +8 -8
  209. package/tag/tag.js +27 -27
  210. package/teaser-paid.js +12 -12
  211. package/time-input.js +73 -73
  212. package/timetable-occupancy-icon.js +26 -26
  213. package/timetable-occupancy.js +9 -9
  214. package/toast.js +38 -38
  215. package/toggle/toggle-option.js +33 -33
  216. package/toggle/toggle.js +46 -46
  217. package/toggle-check.js +14 -14
  218. package/train/train-formation.js +36 -37
  219. package/train/train-wagon.js +30 -30
  220. package/train/train.js +13 -13
package/tag/tag-group.js CHANGED
@@ -1,23 +1,23 @@
1
- import { css as h, LitElement as u, isServer as b, html as f } from "lit";
1
+ import { css as h, LitElement as f, isServer as b, html as u } from "lit";
2
2
  import { property as o, customElement as n } from "lit/decorators.js";
3
3
  import { setOrRemoveAttribute as m } from "../core/dom.js";
4
4
  import { SbbNamedSlotListMixin as y } from "../core/mixins.js";
5
5
  const g = h`*,:before,:after{box-sizing:border-box}:host{display:block}.sbb-tag-group__list{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;flex-wrap:wrap;gap:var(--sbb-spacing-fixed-3x)}.sbb-tag-group__list>:is(li,span){display:flex;max-width:100%}`;
6
- var d = Object.defineProperty, v = Object.getOwnPropertyDescriptor, a = (e, t, s, i) => {
7
- for (var l = i > 1 ? void 0 : i ? v(t, s) : t, c = e.length - 1, p; c >= 0; c--)
6
+ var d = Object.defineProperty, A = Object.getOwnPropertyDescriptor, a = (e, t, s, i) => {
7
+ for (var l = i > 1 ? void 0 : i ? A(t, s) : t, c = e.length - 1, p; c >= 0; c--)
8
8
  (p = e[c]) && (l = (i ? p(t, s, l) : p(l)) || l);
9
9
  return i && l && d(t, s, l), l;
10
10
  };
11
11
  let r = class extends y(
12
- u
12
+ f
13
13
  ) {
14
14
  constructor() {
15
- super(...arguments), this.listChildLocalNames = ["sbb-tag", "div"], this.multiple = !1, this.size = "m", this._value = null;
15
+ super(...arguments), this.listChildLocalNames = ["sbb-tag", "div"], this.multiple = !1, this.size = "m", this.a = null;
16
16
  }
17
17
  set value(e) {
18
18
  const t = this.tags;
19
19
  if (b)
20
- this._value = e;
20
+ this.a = e;
21
21
  else if (e === null)
22
22
  t.forEach((s) => s.checked = !1);
23
23
  else if (this.multiple) {
@@ -33,7 +33,7 @@ let r = class extends y(
33
33
  }
34
34
  get value() {
35
35
  var e;
36
- return b ? this._value : this.multiple ? this.tags.filter((t) => t.checked).map((t) => t.value) : ((e = this.tags.find((t) => t.checked)) == null ? void 0 : e.value) ?? null;
36
+ return b ? this.a : this.multiple ? this.tags.filter((t) => t.checked).map((t) => t.value) : ((e = this.tags.find((t) => t.checked)) == null ? void 0 : e.value) ?? null;
37
37
  }
38
38
  /** The child instances of sbb-tag as an array. */
39
39
  get tags() {
@@ -51,7 +51,7 @@ let r = class extends y(
51
51
  );
52
52
  }
53
53
  render() {
54
- return f`
54
+ return u`
55
55
  <div class="sbb-tag-group">
56
56
  ${this.renderList({
57
57
  class: "sbb-tag-group__list",
package/tag/tag.js CHANGED
@@ -3,49 +3,49 @@ import { property as c, customElement as h } from "lit/decorators.js";
3
3
  import { SbbButtonBaseElement as v } from "../core/base-elements.js";
4
4
  import { SbbConnectedAbortController as u, SbbSlotStateController as m } from "../core/controllers.js";
5
5
  import { EventEmitter as l } from "../core/eventing.js";
6
- import { SbbDisabledTabIndexActionMixin as p } from "../core/mixins.js";
7
- import { SbbIconNameMixin as f } from "../icon.js";
6
+ import { SbbDisabledTabIndexActionMixin as f } from "../core/mixins.js";
7
+ import { SbbIconNameMixin as p } from "../icon.js";
8
8
  const x = d`*,:before,:after{box-sizing:border-box}:host{--sbb-tag-border-radius: var(--sbb-border-radius-infinity);--sbb-tag-background-color: var(--sbb-color-white);--sbb-tag-border-color: var(--sbb-color-cloud);--sbb-tag-border-style: solid;--sbb-tag-border-width: var(--sbb-border-width-1x);--sbb-tag-text-color: var(--sbb-color-charcoal);--sbb-tag-amount-color: var(--sbb-color-metal);--sbb-tag-height: var(--sbb-size-element-xs);--sbb-tag-inset: 0;--sbb-tag-content-shift: translateY(0);--sbb-tag-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-2x) );--sbb-tag-animation-easing: var(--sbb-animation-easing);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);--sbb-tag-gap: var(--sbb-spacing-fixed-2x);display:inline-block;outline:none!important;max-width:100%}@media (forced-colors: active){:host{--sbb-tag-background-color: Canvas !important;--sbb-tag-text-color: ButtonText;--sbb-tag-amount-color: ButtonText;--sbb-tag-border-color: CanvasText;--sbb-tag-border-width: var(--sbb-border-width-2x)}}:host([checked]){--sbb-tag-border-color: var(--sbb-color-charcoal);--sbb-tag-border-width: var(--sbb-border-width-2x)}@media (forced-colors: active){:host([checked]){--sbb-tag-border-color: Highlight !important}}:host([disabled]){--sbb-tag-text-color: var(--sbb-color-granite);--sbb-tag-amount-color: var(--sbb-tag-text-color);--sbb-tag-background-color: var(--sbb-color-milk);--sbb-tag-border-color: var(--sbb-color-cement);--sbb-tag-border-style: dashed}@media (forced-colors: active){:host([disabled]){--sbb-tag-text-color: GrayText;--sbb-tag-amount-color: GrayText;--sbb-tag-border-color: GrayText}}:host([checked][disabled]){--sbb-tag-border-color: var(--sbb-color-metal)}@media (any-hover: hover){:host(:hover:not([disabled],:active,[data-active])){--sbb-tag-background-color: var(--sbb-color-milk);--sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);--sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1))}}@media (any-hover: hover) and (forced-colors: active){:host(:hover:not([disabled],:active,[data-active])){--sbb-tag-border-color: Highlight}}:host(:is(:active,[data-active]):not([disabled])){--sbb-tag-background-color: var(--sbb-color-milk);--sbb-tag-border-color: var(--sbb-color-iron);--sbb-tag-border-width: var(--sbb-border-width-2x);--sbb-tag-text-color: var(--sbb-color-iron)}@media (forced-colors: active){:host(:is(:active,[data-active]):not([disabled])){--sbb-tag-border-color: Highlight;--sbb-tag-text-color: ButtonText}}:host([size=s]){--sbb-tag-height: var(--sbb-size-element-xxxs);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x)}.sbb-tag{--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);font-weight:700;position:relative;display:flex;align-items:center;height:var(--sbb-tag-height);max-width:100%;gap:var(--sbb-tag-gap);padding-inline:var(--sbb-tag-padding-inline);cursor:pointer;border-radius:var(--sbb-tag-border-radius);color:var(--sbb-tag-text-color);transition:color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.sbb-tag:before{content:"";position:absolute;inset:var(--sbb-tag-inset);background-color:var(--sbb-tag-background-color);border:var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);border-radius:var(--sbb-tag-border-radius);transition-duration:var(--sbb-tag-animation-duration);transition-timing-function:var(--sbb-tag-animation-easing);transition-property:inset,background-color,border-color,box-shadow}:host(:focus-visible:not([data-focus-origin=mouse],[data-focus-origin=touch])) .sbb-tag:before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}:host([disabled]) .sbb-tag{cursor:unset;pointer-events:none}.sbb-tag__icon{display:flex;align-items:center;height:calc(var(--sbb-typo-line-height-body-text) * 1em);flex-shrink:0}:host(:not([data-slot-names~=icon],[icon-name])) .sbb-tag__icon{display:none}.sbb-tag__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sbb-tag__amount{--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);color:var(--sbb-tag-amount-color)}:host(:not([data-slot-names~=amount],[amount])) .sbb-tag__amount{display:none}.sbb-tag--shift{transition:transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);transform:var(--sbb-tag-content-shift);will-change:transform}`;
9
- var y = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, r = (t, e, b, a) => {
10
- for (var s = a > 1 ? void 0 : a ? _(e, b) : e, i = t.length - 1, n; i >= 0; i--)
11
- (n = t[i]) && (s = (a ? n(e, b, s) : n(s)) || s);
12
- return a && s && y(e, b, s), s;
9
+ var y = Object.defineProperty, w = Object.getOwnPropertyDescriptor, r = (t, o, b, a) => {
10
+ for (var s = a > 1 ? void 0 : a ? w(o, b) : o, i = t.length - 1, n; i >= 0; i--)
11
+ (n = t[i]) && (s = (a ? n(o, b, s) : n(s)) || s);
12
+ return a && s && y(o, b, s), s;
13
13
  };
14
- let o = class extends f(
15
- p(v)
14
+ let e = class extends p(
15
+ f(v)
16
16
  ) {
17
17
  constructor() {
18
- super(), this.checked = !1, this._size = "m", this._group = null, this._input = new l(this, o.events.input, {
18
+ super(), this.checked = !1, this.a = "m", this.b = null, this.c = new l(this, e.events.input, {
19
19
  bubbles: !0,
20
20
  composed: !0
21
- }), this._didChange = new l(this, o.events.didChange, {
21
+ }), this.d = new l(this, e.events.didChange, {
22
22
  bubbles: !0
23
- }), this._change = new l(this, o.events.change, {
23
+ }), this.e = new l(this, e.events.change, {
24
24
  bubbles: !0
25
- }), this._abort = new u(this), new m(this);
25
+ }), this.f = new u(this), new m(this);
26
26
  }
27
27
  set size(t) {
28
- this._size = t;
28
+ this.a = t;
29
29
  }
30
30
  get size() {
31
31
  var t;
32
- return ((t = this._group) == null ? void 0 : t.size) ?? this._size;
32
+ return ((t = this.b) == null ? void 0 : t.size) ?? this.a;
33
33
  }
34
34
  connectedCallback() {
35
- super.connectedCallback(), this._group = this.closest("sbb-tag-group"), this.addEventListener("click", () => this._handleClick(), { signal: this._abort.signal });
35
+ super.connectedCallback(), this.b = this.closest("sbb-tag-group"), this.addEventListener("click", () => this.g(), { signal: this.f.signal });
36
36
  }
37
37
  /** Method triggered on button click. Inverts the checked value and emits events. */
38
- _handleClick() {
38
+ g() {
39
39
  if (this.disabled)
40
40
  return;
41
41
  const t = this.closest("sbb-tag-group");
42
- t && !t.multiple && this.checked || (this.checked = !this.checked, this._input.emit(), this._change.emit(), this._didChange.emit());
42
+ t && !t.multiple && this.checked || (this.checked = !this.checked, this.c.emit(), this.e.emit(), this.d.emit());
43
43
  }
44
44
  willUpdate(t) {
45
45
  var b;
46
46
  super.willUpdate(t), t.has("checked") && this.setAttribute("aria-pressed", `${this.checked}`);
47
- const e = (b = this.closest) == null ? void 0 : b.call(this, "sbb-tag-group");
48
- e && !e.multiple && t.has("checked") && this.checked && (e == null || e.tags.filter((a) => a !== this).forEach((a) => a.checked = !1));
47
+ const o = (b = this.closest) == null ? void 0 : b.call(this, "sbb-tag-group");
48
+ o && !o.multiple && t.has("checked") && this.checked && (o == null || o.tags.filter((a) => a !== this).forEach((a) => a.checked = !1));
49
49
  }
50
50
  renderTemplate() {
51
51
  return g`
@@ -59,24 +59,24 @@ let o = class extends f(
59
59
  `;
60
60
  }
61
61
  };
62
- o.styles = x;
63
- o.events = {
62
+ e.styles = x;
63
+ e.events = {
64
64
  input: "input",
65
65
  didChange: "didChange",
66
66
  change: "change"
67
67
  };
68
68
  r([
69
69
  c({ reflect: !0 })
70
- ], o.prototype, "amount", 2);
70
+ ], e.prototype, "amount", 2);
71
71
  r([
72
72
  c({ reflect: !0, type: Boolean })
73
- ], o.prototype, "checked", 2);
73
+ ], e.prototype, "checked", 2);
74
74
  r([
75
75
  c({ reflect: !0 })
76
- ], o.prototype, "size", 1);
77
- o = r([
76
+ ], e.prototype, "size", 1);
77
+ e = r([
78
78
  h("sbb-tag")
79
- ], o);
79
+ ], e);
80
80
  export {
81
- o as SbbTagElement
81
+ e as SbbTagElement
82
82
  };
package/teaser-paid.js CHANGED
@@ -1,28 +1,28 @@
1
- import { css as b, html as l } from "lit";
1
+ import { css as n, html as l } from "lit";
2
2
  import { customElement as p } from "lit/decorators.js";
3
3
  import { SbbLinkBaseElement as c } from "./core/base-elements.js";
4
- const d = b`*,:before,:after{box-sizing:border-box}:host{display:block;outline:none!important;--sbb-teaser-paid-chip-inset: var(--sbb-spacing-responsive-xxxs) auto auto var(--sbb-spacing-responsive-xxxs);--sbb-teaser-paid-brightness-hover: 1.075;--sbb-teaser-paid-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );--sbb-teaser-paid-animation-easing: var(--sbb-animation-easing)}@media (any-hover: hover){:host(:hover){--sbb-teaser-paid-brightness: var(--sbb-teaser-paid-brightness-hover)}}.sbb-teaser-paid{position:relative;display:block}:host(:not([data-focus-origin=mouse],[data-focus-origin=touch])) .sbb-teaser-paid:focus-visible{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}::slotted([slot=chip]){position:absolute;inset:var(--sbb-teaser-paid-chip-inset);z-index:1}::slotted([slot=image]){will-change:filter;filter:brightness(var(--sbb-teaser-paid-brightness, 1));transition:filter var(--sbb-teaser-paid-animation-duration) var(--sbb-teaser-paid-animation-easing)}`;
5
- var h = Object.defineProperty, v = Object.getOwnPropertyDescriptor, m = (s, t, a, i) => {
6
- for (var e = i > 1 ? void 0 : i ? v(t, a) : t, o = s.length - 1, r; o >= 0; o--)
4
+ const d = n`*,:before,:after{box-sizing:border-box}:host{display:block;outline:none!important;--sbb-teaser-paid-chip-inset: var(--sbb-spacing-responsive-xxxs) auto auto var(--sbb-spacing-responsive-xxxs);--sbb-teaser-paid-brightness-hover: 1.075;--sbb-teaser-paid-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );--sbb-teaser-paid-animation-easing: var(--sbb-animation-easing)}@media (any-hover: hover){:host(:hover){--sbb-teaser-paid-brightness: var(--sbb-teaser-paid-brightness-hover)}}.sbb-teaser-paid{position:relative;display:block}:host(:not([data-focus-origin=mouse],[data-focus-origin=touch])) .sbb-teaser-paid:focus-visible{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}::slotted([slot=chip]){position:absolute;inset:var(--sbb-teaser-paid-chip-inset);z-index:1}::slotted([slot=image]){will-change:filter;filter:brightness(var(--sbb-teaser-paid-brightness, 1));transition:filter var(--sbb-teaser-paid-animation-duration) var(--sbb-teaser-paid-animation-easing)}`;
5
+ var v = Object.defineProperty, h = Object.getOwnPropertyDescriptor, m = (s, t, a, i) => {
6
+ for (var e = i > 1 ? void 0 : i ? h(t, a) : t, o = s.length - 1, r; o >= 0; o--)
7
7
  (r = s[o]) && (e = (i ? r(t, a, e) : r(e)) || e);
8
- return i && e && h(t, a, e), e;
8
+ return i && e && v(t, a, e), e;
9
9
  };
10
- let n = class extends c {
11
- _chipSlotChanged() {
10
+ let b = class extends c {
11
+ a() {
12
12
  var s;
13
13
  (s = this.querySelector("sbb-chip")) == null || s.setAttribute("color", "charcoal");
14
14
  }
15
15
  renderTemplate() {
16
16
  return l`
17
- <slot name="chip" @slotchange=${() => this._chipSlotChanged()}></slot>
17
+ <slot name="chip" @slotchange=${() => this.a()}></slot>
18
18
  <slot name="image"></slot>
19
19
  `;
20
20
  }
21
21
  };
22
- n.styles = d;
23
- n = m([
22
+ b.styles = d;
23
+ b = m([
24
24
  p("sbb-teaser-paid")
25
- ], n);
25
+ ], b);
26
26
  export {
27
- n as SbbTeaserPaidElement
27
+ b as SbbTeaserPaidElement
28
28
  };
package/time-input.js CHANGED
@@ -1,131 +1,131 @@
1
- import { css as p, LitElement as m, html as _ } from "lit";
2
- import { property as d, state as c, customElement as E } from "lit/decorators.js";
1
+ import { css as c, LitElement as p, html as d } from "lit";
2
+ import { property as m, state as b, customElement as f } from "lit/decorators.js";
3
3
  import { ref as g } from "lit/directives/ref.js";
4
- import { SbbLanguageController as b } from "./core/controllers.js";
5
- import { findInput as f } from "./core/dom.js";
6
- import { EventEmitter as o, forwardEventToHost as h } from "./core/eventing.js";
7
- import { i18nTimeInputChange as C } from "./core/i18n.js";
8
- const w = p`:host{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;display:block}`;
9
- var v = Object.defineProperty, A = Object.getOwnPropertyDescriptor, u = (t, e, i, n) => {
10
- for (var s = n > 1 ? void 0 : n ? A(e, i) : e, a = t.length - 1, l; a >= 0; a--)
11
- (l = t[a]) && (s = (n ? l(e, i, s) : l(s)) || s);
12
- return n && s && v(e, i, s), s;
4
+ import { SbbLanguageController as w } from "./core/controllers.js";
5
+ import { findInput as E } from "./core/dom.js";
6
+ import { EventEmitter as l, forwardEventToHost as u } from "./core/eventing.js";
7
+ import { i18nTimeInputChange as v } from "./core/i18n.js";
8
+ const C = c`:host{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;display:block}`;
9
+ var A = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, o = (t, e, s, i) => {
10
+ for (var n = i > 1 ? void 0 : i ? _(e, s) : e, a = t.length - 1, h; a >= 0; a--)
11
+ (h = t[a]) && (n = (i ? h(e, s, n) : h(n)) || n);
12
+ return i && n && A(e, s, n), n;
13
13
  };
14
- const V = /[0-9.:,\-;_hH]/, y = /^([0-9]{1,2})([0-9]{2})$/, I = /^([0-9]{1,2})?[.:,\-;_hH]?([0-9]{1,2})?$/;
15
- let r = class extends m {
14
+ const y = /[0-9.:,\-;_hH]/, O = /^([0-9]{1,2})([0-9]{2})$/, D = /^([0-9]{1,2})?[.:,\-;_hH]?([0-9]{1,2})?$/;
15
+ let r = class extends p {
16
16
  constructor() {
17
- super(...arguments), this._input = null, this._inputElement = null, this._didChange = new o(this, r.events.didChange, {
17
+ super(...arguments), this.d = null, this.a = null, this.j = new l(this, r.events.didChange, {
18
18
  bubbles: !0,
19
19
  cancelable: !0
20
- }), this._validationChange = new o(
20
+ }), this.k = new l(
21
21
  this,
22
22
  r.events.validationChange,
23
23
  {
24
24
  bubbles: !0,
25
25
  composed: !1
26
26
  }
27
- ), this._abortController = new AbortController(), this._language = new b(this);
27
+ ), this.b = new AbortController(), this.l = new w(this);
28
28
  }
29
29
  set input(t) {
30
- this._input = t, this._findInputElement();
30
+ this.d = t, this.e();
31
31
  }
32
32
  get input() {
33
- return this._input;
33
+ return this.d;
34
34
  }
35
35
  connectedCallback() {
36
- super.connectedCallback(), this._findInputElement(), this._inputElement && this._updateValue(this._inputElement.value);
36
+ super.connectedCallback(), this.e(), this.a && this.f(this.a.value);
37
37
  }
38
38
  disconnectedCallback() {
39
39
  var t;
40
- super.disconnectedCallback(), (t = this._abortController) == null || t.abort();
40
+ super.disconnectedCallback(), (t = this.b) == null || t.abort();
41
41
  }
42
42
  /** Gets the input value with the correct date format. */
43
43
  // TODO: refactor this to be a get/set
44
44
  getValueAsDate() {
45
45
  var t;
46
- return this._formatValueAsDate(this._parseInput((t = this._inputElement) == null ? void 0 : t.value));
46
+ return this.m(this.g((t = this.a) == null ? void 0 : t.value));
47
47
  }
48
48
  /** Set the input value to the correctly formatted value. */
49
49
  setValueAsDate(t) {
50
- if (!t || !this._inputElement)
50
+ if (!t || !this.a)
51
51
  return;
52
52
  const e = t instanceof Date ? t : new Date(t);
53
- this._inputElement.value = this._formatValue({
53
+ this.a.value = this.h({
54
54
  hours: e.getHours(),
55
55
  minutes: e.getMinutes()
56
- }), this._inputElement.dispatchEvent(new FocusEvent("blur", { composed: !0 }));
56
+ }), this.a.dispatchEvent(new FocusEvent("blur", { composed: !0 }));
57
57
  }
58
- _findInputElement() {
59
- const t = this._inputElement;
60
- this._inputElement = f(this, this.input), t !== this._inputElement && this._registerInputElement();
58
+ e() {
59
+ const t = this.a;
60
+ this.a = E(this, this.input), t !== this.a && this.n();
61
61
  }
62
- _registerInputElement() {
62
+ n() {
63
63
  var t;
64
- (t = this._abortController) == null || t.abort(), this._inputElement && (this._abortController = new AbortController(), this._inputElement.toggleAttribute("data-sbb-time-input", !0), this._inputElement.type = "text", this._inputElement.inputMode = "numeric", this._inputElement.maxLength = 5, this._inputElement.placeholder || (this._inputElement.placeholder = "HH:MM"), this._inputElement.addEventListener(
64
+ (t = this.b) == null || t.abort(), this.a && (this.b = new AbortController(), this.a.toggleAttribute("data-sbb-time-input", !0), this.a.type = "text", this.a.inputMode = "numeric", this.a.maxLength = 5, this.a.placeholder || (this.a.placeholder = "HH:MM"), this.a.addEventListener(
65
65
  "input",
66
- (e) => h(e, this),
67
- { signal: this._abortController.signal }
68
- ), this._inputElement.addEventListener(
66
+ (e) => u(e, this),
67
+ { signal: this.b.signal }
68
+ ), this.a.addEventListener(
69
69
  "keydown",
70
- (e) => this._preventCharInsert(e),
71
- { signal: this._abortController.signal }
72
- ), this._inputElement.addEventListener(
70
+ (e) => this.o(e),
71
+ { signal: this.b.signal }
72
+ ), this.a.addEventListener(
73
73
  "change",
74
- (e) => this._updateValueAndEmitChange(e),
74
+ (e) => this.p(e),
75
75
  {
76
- signal: this._abortController.signal
76
+ signal: this.b.signal
77
77
  }
78
78
  ));
79
79
  }
80
80
  /** Applies the correct format to values and triggers event dispatch. */
81
- _updateValueAndEmitChange(t) {
82
- this._updateValue(t.target.value), this._emitChange(t), this._updateAccessibilityMessage();
81
+ p(t) {
82
+ this.f(t.target.value), this.q(t), this.r();
83
83
  }
84
84
  /**
85
85
  * Updates `value` and `valueAsDate`. The direct update on the `_inputElement` is required
86
86
  * to force the input change when the typed value is the same of the current one.
87
87
  */
88
- _updateValue(t) {
89
- if (this._statusContainer && (this._statusContainer.innerText = ""), !this._inputElement)
88
+ f(t) {
89
+ if (this.c && (this.c.innerText = ""), !this.a)
90
90
  return;
91
- const e = this._parseInput(t), i = !!e && this._isTimeValid(e), n = !t || t.trim() === "" || i;
92
- n && e && (this._inputElement.value = this._formatValue(e));
93
- const s = !this._inputElement.hasAttribute("data-sbb-invalid");
94
- this._inputElement.toggleAttribute("data-sbb-invalid", !n), s !== n && this._validationChange.emit({ valid: n });
91
+ const e = this.g(t), s = !!e && this.i(e), i = !t || t.trim() === "" || s;
92
+ i && e && (this.a.value = this.h(e));
93
+ const n = !this.a.hasAttribute("data-sbb-invalid");
94
+ this.a.toggleAttribute("data-sbb-invalid", !i), n !== i && this.k.emit({ valid: i });
95
95
  }
96
96
  /** Emits the change event. */
97
- _emitChange(t) {
98
- h(t, this), this._didChange.emit();
97
+ q(t) {
98
+ u(t, this), this.j.emit();
99
99
  }
100
100
  /** Returns the right format for the `value` property. */
101
- _formatValue(t) {
102
- const e = String(t.hours).padStart(2, "0"), i = String(t.minutes).padStart(2, "0");
103
- return `${e}:${i}`;
101
+ h(t) {
102
+ const e = String(t.hours).padStart(2, "0"), s = String(t.minutes).padStart(2, "0");
103
+ return `${e}:${s}`;
104
104
  }
105
105
  /**
106
106
  * Returns the right format for the `valueAsDate` property:
107
107
  * sets the start date at 01.01.1970, then adds the typed hours/minutes.
108
108
  */
109
- _formatValueAsDate(t) {
110
- return !t || !this._isTimeValid(t) ? null : new Date((/* @__PURE__ */ new Date(0)).setHours(t.hours, t.minutes, 0, 0));
109
+ m(t) {
110
+ return !t || !this.i(t) ? null : new Date((/* @__PURE__ */ new Date(0)).setHours(t.hours, t.minutes, 0, 0));
111
111
  }
112
112
  /** Checks if values of hours and minutes are possible, to avoid non-existent times. */
113
- _isTimeValid(t) {
113
+ i(t) {
114
114
  return t.hours < 24 && t.minutes < 60;
115
115
  }
116
116
  /** Validate input against the defined RegExps. */
117
- _parseInput(t) {
117
+ g(t) {
118
118
  const e = t == null ? void 0 : t.trim();
119
119
  if (!e)
120
120
  return null;
121
- const i = e.match(y);
122
- if (i)
123
- return { hours: +i[1] || 0, minutes: +i[2] || 0 };
124
- const n = e.match(I);
125
- return n ? { hours: +n[1] || 0, minutes: +n[2] || 0 } : null;
121
+ const s = e.match(O);
122
+ if (s)
123
+ return { hours: +s[1] || 0, minutes: +s[2] || 0 };
124
+ const i = e.match(D);
125
+ return i ? { hours: +i[1] || 0, minutes: +i[2] || 0 } : null;
126
126
  }
127
127
  /** Only allow typing numbers and separator keys. */
128
- _preventCharInsert(t) {
128
+ o(t) {
129
129
  const e = [
130
130
  "Backspace",
131
131
  "Tab",
@@ -140,36 +140,36 @@ let r = class extends m {
140
140
  "PageDown",
141
141
  "Delete"
142
142
  ];
143
- !t.ctrlKey && !t.altKey && !t.metaKey && !e.includes(t.key) && !V.test(t.key) && t.preventDefault();
143
+ !t.ctrlKey && !t.altKey && !t.metaKey && !e.includes(t.key) && !y.test(t.key) && t.preventDefault();
144
144
  }
145
145
  // We use a programmatic approach to avoid initial setting the message
146
146
  // and to not immediately change output if language should change (no reason to read out message).
147
- _updateAccessibilityMessage() {
147
+ r() {
148
148
  var e;
149
- this._inputElement.hasAttribute("data-sbb-invalid") || (this._statusContainer.innerText = `${C[this._language.current]} ${(e = this._inputElement) == null ? void 0 : e.value}.`);
149
+ this.a.hasAttribute("data-sbb-invalid") || (this.c.innerText = `${v[this.l.current]} ${(e = this.a) == null ? void 0 : e.value}.`);
150
150
  }
151
151
  render() {
152
- return _`
152
+ return d`
153
153
  <p
154
154
  role="status"
155
- ${g((t) => this._statusContainer = t)}
155
+ ${g((t) => this.c = t)}
156
156
  ></p>
157
157
  `;
158
158
  }
159
159
  };
160
- r.styles = w;
160
+ r.styles = C;
161
161
  r.events = {
162
162
  didChange: "didChange",
163
163
  validationChange: "validationChange"
164
164
  };
165
- u([
166
- d()
165
+ o([
166
+ m()
167
167
  ], r.prototype, "input", 1);
168
- u([
169
- c()
170
- ], r.prototype, "_inputElement", 2);
171
- r = u([
172
- E("sbb-time-input")
168
+ o([
169
+ b()
170
+ ], r.prototype, "a", 2);
171
+ r = o([
172
+ f("sbb-time-input")
173
173
  ], r);
174
174
  export {
175
175
  r as SbbTimeInputElement
@@ -1,21 +1,21 @@
1
- import { property as h, customElement as m } from "lit/decorators.js";
2
- import { SbbConnectedAbortController as b, SbbLanguageController as p } from "./core/controllers.js";
1
+ import { property as h, customElement as p } from "lit/decorators.js";
2
+ import { SbbConnectedAbortController as m, SbbLanguageController as b } from "./core/controllers.js";
3
3
  import { setOrRemoveAttribute as d } from "./core/dom.js";
4
4
  import { i18nOccupancy as f } from "./core/i18n.js";
5
5
  import { SbbNegativeMixin as u } from "./core/mixins.js";
6
6
  import { SbbIconBase as n } from "./icon.js";
7
- import { css as g } from "lit";
8
- const v = g`@media (forced-colors: active) and (prefers-color-scheme: light){:host svg{filter:invert(1)}}`;
9
- var _ = Object.defineProperty, w = Object.getOwnPropertyDescriptor, l = (e, t, i, r) => {
10
- for (var a = r > 1 ? void 0 : r ? w(t, i) : t, c = e.length - 1, o; c >= 0; c--)
11
- (o = e[c]) && (a = (r ? o(t, i, a) : o(a)) || a);
12
- return r && a && _(t, i, a), a;
7
+ import { css as v } from "lit";
8
+ const g = v`@media (forced-colors: active) and (prefers-color-scheme: light){:host svg{filter:invert(1)}}`;
9
+ var w = Object.defineProperty, y = Object.getOwnPropertyDescriptor, l = (e, t, i, a) => {
10
+ for (var c = a > 1 ? void 0 : a ? y(t, i) : t, s = e.length - 1, r; s >= 0; s--)
11
+ (r = e[s]) && (c = (a ? r(t, i, c) : r(c)) || c);
12
+ return a && c && w(t, i, c), c;
13
13
  };
14
- let s = class extends u(n) {
14
+ let o = class extends u(n) {
15
15
  constructor() {
16
- super(...arguments), this._abort = new b(this), this._language = new p(this).withHandler(() => this._setAriaLabel());
16
+ super(...arguments), this.b = new m(this), this.d = new b(this).withHandler(() => this.c());
17
17
  }
18
- async _setNameAndAriaLabel() {
18
+ async a() {
19
19
  var t, i;
20
20
  if (!this.occupancy)
21
21
  return;
@@ -23,31 +23,31 @@ let s = class extends u(n) {
23
23
  (t = globalThis.window) != null && t.matchMedia("(forced-colors: active)").matches ? e += "-high-contrast" : (this.negative || (i = globalThis.window) != null && i.matchMedia("(prefer-color-scheme: dark)").matches) && (e += "-negative"), await this.loadSvgIcon(e);
24
24
  }
25
25
  async fetchSvgIcon(e, t) {
26
- return this._setAriaLabel(), super.fetchSvgIcon(e, t);
26
+ return this.c(), super.fetchSvgIcon(e, t);
27
27
  }
28
- _setAriaLabel() {
28
+ c() {
29
29
  var t;
30
- const e = (t = f[this.occupancy]) == null ? void 0 : t[this._language.current];
30
+ const e = (t = f[this.occupancy]) == null ? void 0 : t[this.d.current];
31
31
  d(this, "aria-label", e);
32
32
  }
33
33
  connectedCallback() {
34
- super.connectedCallback(), window.matchMedia("(forced-colors: active)").addEventListener("change", () => this._setNameAndAriaLabel(), {
35
- signal: this._abort.signal
36
- }), window.matchMedia("(prefer-color-scheme: dark)").addEventListener("change", () => this._setNameAndAriaLabel(), {
37
- signal: this._abort.signal
38
- }), this._setNameAndAriaLabel();
34
+ super.connectedCallback(), window.matchMedia("(forced-colors: active)").addEventListener("change", () => this.a(), {
35
+ signal: this.b.signal
36
+ }), window.matchMedia("(prefer-color-scheme: dark)").addEventListener("change", () => this.a(), {
37
+ signal: this.b.signal
38
+ }), this.a();
39
39
  }
40
40
  willUpdate(e) {
41
- super.willUpdate(e), (e.has("occupancy") || e.has("negative")) && this._setNameAndAriaLabel();
41
+ super.willUpdate(e), (e.has("occupancy") || e.has("negative")) && this.a();
42
42
  }
43
43
  };
44
- s.styles = [n.styles, v];
44
+ o.styles = [n.styles, g];
45
45
  l([
46
46
  h()
47
- ], s.prototype, "occupancy", 2);
48
- s = l([
49
- m("sbb-timetable-occupancy-icon")
50
- ], s);
47
+ ], o.prototype, "occupancy", 2);
48
+ o = l([
49
+ p("sbb-timetable-occupancy-icon")
50
+ ], o);
51
51
  export {
52
- s as SbbTimetableOccupancyIconElement
52
+ o as SbbTimetableOccupancyIconElement
53
53
  };
@@ -1,19 +1,19 @@
1
1
  import { css as p, LitElement as m, html as r, nothing as y } from "lit";
2
- import { property as b, customElement as u } from "lit/decorators.js";
2
+ import { property as l, customElement as u } from "lit/decorators.js";
3
3
  import { SbbLanguageController as f } from "./core/controllers.js";
4
4
  import { i18nClass as h } from "./core/i18n.js";
5
5
  import { SbbNegativeMixin as g } from "./core/mixins.js";
6
6
  import "./screen-reader-only.js";
7
7
  import "./timetable-occupancy-icon.js";
8
8
  const v = p`*,:before,:after{box-sizing:border-box}:host{--sbb-timetable-occupancy-color: var(--sbb-color-charcoal);--sbb-icon-svg-width: .890625rem;--sbb-icon-svg-height: v0.75rem;display:inline-block}@media (min-width: 52.5rem){:host{--sbb-icon-svg-width: 1.1875rem;--sbb-icon-svg-height: v1rem}}:host([negative]){--sbb-timetable-occupancy-color: var(--sbb-color-white)}.sbb-timetable-occupancy__list{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;align-items:center;flex-wrap:nowrap;gap:var(--sbb-spacing-fixed-2x)}.sbb-timetable-occupancy__list-item{display:flex;align-items:center;flex-wrap:nowrap;gap:var(--sbb-spacing-fixed-1x)}.sbb-timetable-occupancy__list-item-class{--sbb-text-font-size: var(--sbb-font-size-text-s);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);line-height:1;color:var(--sbb-timetable-occupancy-color)}.sbb-timetable-occupancy__list-item-icon{display:flex}`;
9
- var d = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, l = (e, t, a, i) => {
9
+ var d = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, b = (e, t, a, i) => {
10
10
  for (var s = i > 1 ? void 0 : i ? _(t, a) : t, n = e.length - 1, o; n >= 0; n--)
11
11
  (o = e[n]) && (s = (i ? o(t, a, s) : o(s)) || s);
12
12
  return i && s && d(t, a, s), s;
13
13
  };
14
14
  let c = class extends g(m) {
15
15
  constructor() {
16
- super(...arguments), this._language = new f(this);
16
+ super(...arguments), this.a = new f(this);
17
17
  }
18
18
  render() {
19
19
  return r` ${(this.firstClassOccupancy || this.secondClassOccupancy) && r`
@@ -28,7 +28,7 @@ let c = class extends g(m) {
28
28
  ${this.firstClassOccupancy && t === 0 ? "1" : "2"}.
29
29
  </span>
30
30
  <sbb-screen-reader-only>
31
- ${`${h[this.firstClassOccupancy && t === 0 ? "first" : "second"][this._language.current]}.`}
31
+ ${`${h[this.firstClassOccupancy && t === 0 ? "first" : "second"][this.a.current]}.`}
32
32
  </sbb-screen-reader-only>
33
33
  <sbb-timetable-occupancy-icon
34
34
  class="sbb-timetable-occupancy__list-item-icon"
@@ -44,13 +44,13 @@ let c = class extends g(m) {
44
44
  }
45
45
  };
46
46
  c.styles = v;
47
- l([
48
- b({ attribute: "first-class-occupancy" })
47
+ b([
48
+ l({ attribute: "first-class-occupancy" })
49
49
  ], c.prototype, "firstClassOccupancy", 2);
50
- l([
51
- b({ attribute: "second-class-occupancy" })
50
+ b([
51
+ l({ attribute: "second-class-occupancy" })
52
52
  ], c.prototype, "secondClassOccupancy", 2);
53
- c = l([
53
+ c = b([
54
54
  u("sbb-timetable-occupancy")
55
55
  ], c);
56
56
  export {