@sbb-esta/lyne-elements 0.52.1 → 0.52.2

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 (71) 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-group.js +17 -17
  13. package/checkbox/checkbox.js +34 -34
  14. package/clock.js +83 -83
  15. package/container/sticky-bar.js +16 -16
  16. package/core/a11y.js +91 -91
  17. package/core/base-elements.js +86 -86
  18. package/core/controllers.js +40 -40
  19. package/core/datetime.js +32 -32
  20. package/core/dom.js +26 -26
  21. package/core/eventing.js +33 -33
  22. package/core/mixins.js +122 -122
  23. package/core/testing.js +29 -29
  24. package/datepicker/common.js +55 -55
  25. package/datepicker/datepicker-toggle.js +94 -94
  26. package/datepicker/datepicker.js +144 -144
  27. package/dialog/dialog-title.js +20 -20
  28. package/dialog/dialog.js +66 -66
  29. package/expansion-panel/expansion-panel-header.js +20 -20
  30. package/expansion-panel/expansion-panel.js +60 -60
  31. package/file-selector.js +91 -91
  32. package/form-field/form-field-clear.js +12 -12
  33. package/form-field/form-field.js +111 -111
  34. package/header/header.js +53 -53
  35. package/icon.js +107 -107
  36. package/image.js +87 -87
  37. package/journey-header.js +29 -29
  38. package/map-container.js +23 -23
  39. package/menu/menu.js +91 -91
  40. package/navigation/common.js +16 -16
  41. package/navigation/navigation-marker.js +34 -34
  42. package/navigation/navigation-section.js +83 -83
  43. package/navigation/navigation.js +87 -87
  44. package/notification.js +52 -52
  45. package/option/optgroup.js +45 -45
  46. package/option/option.js +108 -108
  47. package/overlay.js +5 -5
  48. package/package.json +1 -1
  49. package/popover/popover.js +110 -110
  50. package/radio-button/radio-button-group.js +93 -93
  51. package/radio-button/radio-button.js +84 -84
  52. package/select.js +178 -178
  53. package/selection-panel.js +44 -44
  54. package/slider.js +58 -58
  55. package/status.js +6 -6
  56. package/stepper/step-label.js +19 -19
  57. package/stepper/step.js +31 -31
  58. package/stepper/stepper.js +46 -46
  59. package/tabs/tab-group.js +67 -67
  60. package/tag/tag-group.js +8 -8
  61. package/tag/tag.js +27 -27
  62. package/teaser-paid.js +12 -12
  63. package/time-input.js +73 -73
  64. package/timetable-occupancy-icon.js +26 -26
  65. package/timetable-occupancy.js +9 -9
  66. package/toast.js +38 -38
  67. package/toggle/toggle-option.js +33 -33
  68. package/toggle/toggle.js +46 -46
  69. package/train/train-formation.js +36 -36
  70. package/train/train-wagon.js +30 -30
  71. package/train/train.js +13 -13
@@ -2,22 +2,22 @@ import { css as d, LitElement as w, nothing as t } from "lit";
2
2
  import { property as b, customElement as m } from "lit/decorators.js";
3
3
  import { html as s, unsafeStatic as p } from "lit/static-html.js";
4
4
  import { SbbLanguageController as y } from "../core/controllers.js";
5
- import { EventEmitter as f } from "../core/eventing.js";
6
- import { i18nSector as v, i18nWagonLabel as u, i18nClass as h, i18nBlockedPassage as _, i18nClosedCompartmentLabel as x, i18nLocomotiveLabel as $, i18nAdditionalWagonInformationHeading as C, i18nWagonLabelNumber as k } from "../core/i18n.js";
5
+ import { EventEmitter as u } from "../core/eventing.js";
6
+ import { i18nSector as _, i18nWagonLabel as f, i18nClass as h, i18nBlockedPassage as v, i18nClosedCompartmentLabel as x, i18nLocomotiveLabel as $, i18nAdditionalWagonInformationHeading as C, i18nWagonLabelNumber as k } from "../core/i18n.js";
7
7
  import { SbbNamedSlotListMixin as L } from "../core/mixins.js";
8
8
  import "../icon.js";
9
9
  import "../timetable-occupancy-icon.js";
10
10
  const z = d`*,:before,:after{box-sizing:border-box}:host{--sbb-train-wagon-width: var(--sbb-train-formation-wagon-width);--sbb-train-wagon-height: var(--sbb-train-formation-wagon-height);--sbb-train-wagon-inner-padding: var(--sbb-spacing-fixed-3x);--sbb-train-wagon-shape-border-radius: var(--sbb-train-formation-wagon-border-radius);--sbb-train-wagon-shape-color: var(--sbb-color-charcoal);--sbb-train-wagon-shape-color-closed: var(--sbb-color-metal);--sbb-train-wagon-shape-width: var(--sbb-border-width-1x);--sbb-train-wagon-gap: var(--sbb-spacing-fixed-2x);--sbb-train-wagon-icons-gap: var(--sbb-spacing-fixed-1x);--sbb-train-wagon-icons-height: .875rem;display:block}@media (forced-colors: active){:host{--sbb-train-wagon-shape-color-closed: CanvasText}}.sbb-train-wagon{display:flex;flex-direction:column;align-items:center;width:var(--sbb-train-wagon-width);gap:var(--sbb-train-wagon-gap)}.sbb-train-wagon__compartment{list-style:none;margin:0;padding:0;font-size:inherit;display:grid;grid-template:"label label" auto "occupancy class" 1fr/1fr 1fr;position:relative;width:100%}:host([type=closed]) .sbb-train-wagon__compartment:before,:host(:not([data-has-visible-wagon-content])) .sbb-train-wagon__compartment:before{content:"";grid-area:occupancy/span 2;height:var(--sbb-train-wagon-height)}.sbb-train-wagon__compartment:after{content:"";display:block;position:absolute;inset-inline:0;inset-block:auto 0;width:var(--sbb-train-wagon-width);height:var(--sbb-train-wagon-height);border-radius:var(--sbb-train-wagon-shape-border-radius)}:host([type=wagon]) .sbb-train-wagon__compartment:after{border:var(--sbb-train-wagon-shape-width) solid var(--sbb-train-wagon-shape-color)}:host([type=closed]) .sbb-train-wagon__compartment:after{border:var(--sbb-train-wagon-shape-width) solid var(--sbb-train-wagon-shape-color-closed)}.sbb-train-wagon__occupancy,.sbb-train-wagon__class{height:var(--sbb-train-wagon-height);display:flex;align-items:center}.sbb-train-wagon__label{--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);grid-area:label;text-align:center;display:var(--sbb-train-formation-wagon-label-display, inline-block);min-height:calc(1em * var(--sbb-typo-line-height-body-text))}.sbb-train-wagon__occupancy{grid-area:occupancy;padding-inline-start:var(--sbb-train-wagon-inner-padding)}.sbb-train-wagon__class{--sbb-title-line-height: var(--sbb-typo-line-height-titles);--sbb-title-margin-block-start: 0;--sbb-title-margin-block-end: 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;margin-block:var(--sbb-title-margin-block-start) var(--sbb-title-margin-block-end);font-family:var(--sbb-typo-font-family);font-weight:700;line-height:var(--sbb-title-line-height);letter-spacing:var(--sbb-typo-letter-spacing-titles);font-size:var(--sbb-title-font-size);--sbb-title-font-size: var(--sbb-font-size-title-6);--sbb-title-line-height: var(--sbb-typo-line-height-body-text);grid-area:class;padding-inline-end:var(--sbb-train-wagon-inner-padding);margin-inline-start:auto}.sbb-train-wagon__locomotive{grid-area:occupancy/span 2}.sbb-train-wagon__icons{--sbb-icon-svg-height: var(--sbb-train-wagon-icons-height);display:flex}.sbb-train-wagon__icons[hidden]{position:absolute}.sbb-train-wagon__icons-list{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;flex-wrap:wrap;gap:var(--sbb-train-wagon-icons-gap);justify-content:center}.sbb-train-wagon__icons-list>:is(li,span){display:inline-flex}.sbb-screen-reader-only{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}`;
11
- var S = Object.defineProperty, A = Object.getOwnPropertyDescriptor, e = (a, i, l, o) => {
12
- for (var r = o > 1 ? void 0 : o ? A(i, l) : i, c = a.length - 1, g; c >= 0; c--)
13
- (g = a[c]) && (r = (o ? g(i, l, r) : g(r)) || r);
14
- return o && r && S(i, l, r), r;
11
+ var S = Object.defineProperty, A = Object.getOwnPropertyDescriptor, i = (a, e, l, o) => {
12
+ for (var r = o > 1 ? void 0 : o ? A(e, l) : e, c = a.length - 1, g; c >= 0; c--)
13
+ (g = a[c]) && (r = (o ? g(e, l, r) : g(r)) || r);
14
+ return o && r && S(e, l, r), r;
15
15
  };
16
16
  let n = class extends L(
17
17
  w
18
18
  ) {
19
19
  constructor() {
20
- super(...arguments), this.listChildLocalNames = ["sbb-icon"], this.type = "wagon", this.occupancy = "none", this.b = null, this.blockedPassage = "none", this.a = new y(this), this.d = new f(
20
+ super(...arguments), this.listChildLocalNames = ["sbb-icon"], this.type = "wagon", this.occupancy = "none", this._sector = null, this.blockedPassage = "none", this._language = new y(this), this._sectorChange = new u(
21
21
  this,
22
22
  n.events.sectorChange,
23
23
  {
@@ -27,10 +27,10 @@ let n = class extends L(
27
27
  );
28
28
  }
29
29
  set sector(a) {
30
- this.b = a, this.c();
30
+ this._sector = a, this._sectorChanged();
31
31
  }
32
32
  get sector() {
33
- return this.b;
33
+ return this._sector;
34
34
  }
35
35
  willUpdate(a) {
36
36
  super.willUpdate(a), (a.has("type") || a.has("occupancy") || a.has("wagonClass")) && this.toggleAttribute(
@@ -38,8 +38,8 @@ let n = class extends L(
38
38
  !!(this.type === "wagon" && this.occupancy || this.wagonClass)
39
39
  );
40
40
  }
41
- c() {
42
- this.d.emit();
41
+ _sectorChanged() {
42
+ this._sectorChange.emit();
43
43
  }
44
44
  render() {
45
45
  const a = (l) => {
@@ -47,23 +47,23 @@ let n = class extends L(
47
47
  return s`
48
48
  <${p(o)} class="sbb-train-wagon__label" aria-hidden=${(!this.label).toString()}>
49
49
  ${this.label ? s` <span class="sbb-screen-reader-only">
50
- ${`${k[this.a.current]},`}&nbsp;
50
+ ${`${k[this._language.current]},`}&nbsp;
51
51
  </span>
52
52
  ${this.label}` : t}
53
53
  </${p(o)}>
54
54
  `;
55
- }, i = `${v[this.a.current]}, ${this.sector}`;
55
+ }, e = `${_[this._language.current]}, ${this.sector}`;
56
56
  return s`
57
57
  <div class="sbb-train-wagon">
58
58
  ${this.type === "wagon" ? s`<ul
59
- aria-label=${u[this.a.current]}
59
+ aria-label=${f[this._language.current]}
60
60
  class="sbb-train-wagon__compartment"
61
61
  >
62
- ${this.sector ? s`<li class="sbb-screen-reader-only">${i}</li>` : t}
62
+ ${this.sector ? s`<li class="sbb-screen-reader-only">${e}</li>` : t}
63
63
  ${a("li")}
64
64
  ${this.wagonClass ? s`<li class="sbb-train-wagon__class">
65
65
  <span class="sbb-screen-reader-only">
66
- ${this.wagonClass === "1" ? h.first[this.a.current] : h.second[this.a.current]}
66
+ ${this.wagonClass === "1" ? h.first[this._language.current] : h.second[this._language.current]}
67
67
  </span>
68
68
  <span aria-hidden="true">${this.wagonClass}</span>
69
69
  </li>` : t}
@@ -73,20 +73,20 @@ let n = class extends L(
73
73
  .occupancy=${this.occupancy}
74
74
  ></sbb-timetable-occupancy-icon>` : t}
75
75
  ${this.blockedPassage && this.blockedPassage !== "none" ? s`<li class="sbb-screen-reader-only">
76
- ${_[this.blockedPassage][this.a.current]}
76
+ ${v[this.blockedPassage][this._language.current]}
77
77
  </li>` : t}
78
78
  </ul>` : t}
79
79
  ${this.type === "closed" ? s`<span class="sbb-train-wagon__compartment">
80
80
  <span class="sbb-screen-reader-only">
81
- ${x(this.label ? parseInt(this.label) : void 0)[this.a.current]}
82
- ${this.sector ? `, ${i}` : t}
81
+ ${x(this.label ? parseInt(this.label) : void 0)[this._language.current]}
82
+ ${this.sector ? `, ${e}` : t}
83
83
  </span>
84
84
  ${a("span")}
85
85
  </span>` : t}
86
86
  ${this.type === "locomotive" ? s`<span class="sbb-train-wagon__compartment">
87
87
  <span class="sbb-screen-reader-only">
88
- ${$[this.a.current]}
89
- ${this.sector ? `, ${i}` : t}
88
+ ${$[this._language.current]}
89
+ ${this.sector ? `, ${e}` : t}
90
90
  </span>
91
91
  ${a("span")}
92
92
  <svg
@@ -108,7 +108,7 @@ let n = class extends L(
108
108
  ${this.type === "wagon" ? s`<span class="sbb-train-wagon__icons" ?hidden=${this.listChildren.length === 0}>
109
109
  ${this.renderList({
110
110
  class: "sbb-train-wagon__icons-list",
111
- ariaLabel: C[this.a.current]
111
+ ariaLabel: C[this._language.current]
112
112
  })}
113
113
  </span>` : t}
114
114
  </div>
@@ -119,28 +119,28 @@ n.styles = z;
119
119
  n.events = {
120
120
  sectorChange: "sectorChange"
121
121
  };
122
- e([
122
+ i([
123
123
  b({ reflect: !0 })
124
124
  ], n.prototype, "type", 2);
125
- e([
125
+ i([
126
126
  b()
127
127
  ], n.prototype, "occupancy", 2);
128
- e([
128
+ i([
129
129
  b({ reflect: !0 })
130
130
  ], n.prototype, "sector", 1);
131
- e([
131
+ i([
132
132
  b({ attribute: "blocked-passage" })
133
133
  ], n.prototype, "blockedPassage", 2);
134
- e([
134
+ i([
135
135
  b({ attribute: "wagon-class" })
136
136
  ], n.prototype, "wagonClass", 2);
137
- e([
137
+ i([
138
138
  b()
139
139
  ], n.prototype, "label", 2);
140
- e([
140
+ i([
141
141
  b({ attribute: "additional-accessibility-text" })
142
142
  ], n.prototype, "additionalAccessibilityText", 2);
143
- n = e([
143
+ n = i([
144
144
  m("sbb-train-wagon")
145
145
  ], n);
146
146
  export {
package/train/train.js CHANGED
@@ -1,9 +1,9 @@
1
- import { css as p, LitElement as f, nothing as d } from "lit";
2
- import { property as n, customElement as v } from "lit/decorators.js";
1
+ import { css as p, LitElement as g, nothing as d } from "lit";
2
+ import { property as n, customElement as f } from "lit/decorators.js";
3
3
  import { html as c, unsafeStatic as h } from "lit/static-html.js";
4
- import { SbbLanguageController as g } from "../core/controllers.js";
5
- import { EventEmitter as m } from "../core/eventing.js";
6
- import { i18nTrain as _, i18nWagonsLabel as w } from "../core/i18n.js";
4
+ import { SbbLanguageController as v } from "../core/controllers.js";
5
+ import { EventEmitter as _ } from "../core/eventing.js";
6
+ import { i18nTrain as m, i18nWagonsLabel as w } from "../core/i18n.js";
7
7
  import { SbbNamedSlotListMixin as x } from "../core/mixins.js";
8
8
  import "../icon.js";
9
9
  const y = p`*,:before,:after{box-sizing:border-box}:host{--sbb-train-direction-spacing: var(--sbb-spacing-fixed-4x);--sbb-train-direction-label-padding: var(--sbb-spacing-fixed-1x);--sbb-train-direction-station-padding: var(--sbb-spacing-fixed-3x);--sbb-train-direction-line-width: var(--sbb-border-width-1x);--sbb-train-direction-line-color: var(--sbb-color-smoke);--sbb-train-direction-label-color: var(--sbb-color-metal);--sbb-train-direction-label-background: var(--sbb-color-white);--sbb-train-direction-indicator-end-height: .75rem;--sbb-train-direction-indicator-arrow-offset-end: .5625rem;--sbb-train-direction-indicator-arrow-offset-start: calc( var(--sbb-train-direction-indicator-arrow-offset-end) * -1 );display:block}@media (forced-colors: active){:host{--sbb-train-direction-line-color: CanvasText}}.sbb-train{display:flex;flex-direction:column;position:relative;height:100%}.sbb-train__wagons{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;gap:var(--sbb-train-formation-wagon-gap)}.sbb-train__direction{--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);padding-block-start:var(--sbb-train-direction-spacing);margin-block:auto var(--sbb-train-direction-spacing);display:flex;position:relative;width:100%}.sbb-train__direction-heading{z-index:1;display:flex;position:sticky;inset:auto 0;flex-direction:column;width:100%;max-width:var(--sbb-train-direction-width);margin:0;color:var(--sbb-train-direction-label-color);font-size:inherit;font-weight:inherit}.sbb-train__direction-indicator{z-index:0;position:absolute;top:calc(.5em * var(--sbb-typo-line-height-body-text) + var(--sbb-train-direction-spacing));inset-inline:0;height:var(--sbb-train-direction-line-width);background-color:var(--sbb-train-direction-line-color)}.sbb-train__direction-arrow{color:var(--sbb-train-direction-line-color)}:host([direction=right]) .sbb-train__direction-arrow{transform:translate(var(--sbb-train-direction-indicator-arrow-offset-end));order:1}:host([direction=left]) .sbb-train__direction-arrow{transform:translate(var(--sbb-train-direction-indicator-arrow-offset-start))}.sbb-train__sticky-wrapper{position:sticky;inset:auto 0;width:100%;max-width:var(--sbb-train-direction-width);height:var(--sbb-train-direction-line-width);display:flex;align-items:center;justify-content:space-between}.sbb-train__sticky-wrapper:after{content:"";width:var(--sbb-train-direction-line-width);height:var(--sbb-train-direction-indicator-end-height);background-color:var(--sbb-train-direction-line-color);display:block}.sbb-train__direction-label,.sbb-train__direction-station{margin:0 auto}.sbb-train__direction-label{padding:0 var(--sbb-train-direction-label-padding);background-color:var(--sbb-train-direction-label-background)}.sbb-train__direction-station{--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);max-width:100%;text-overflow:ellipsis;overflow:hidden;padding:0 var(--sbb-train-direction-station-padding)}.sbb-train__direction-label-sr{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}`;
@@ -12,12 +12,12 @@ var u = Object.defineProperty, L = Object.getOwnPropertyDescriptor, e = (i, a, s
12
12
  (l = i[b]) && (r = (o ? l(a, s, r) : l(r)) || r);
13
13
  return o && r && u(a, s, r), r;
14
14
  };
15
- let t = class extends x(f) {
15
+ let t = class extends x(g) {
16
16
  constructor() {
17
17
  super(...arguments), this.listChildLocalNames = [
18
18
  "sbb-train-wagon",
19
19
  "sbb-train-blocked-passage"
20
- ], this.directionLabelLevel = "6", this.direction = "left", this.a = new g(this), this.b = new m(
20
+ ], this.directionLabelLevel = "6", this.direction = "left", this._language = new v(this), this._trainSlotChange = new _(
21
21
  this,
22
22
  t.events.trainSlotChange,
23
23
  {
@@ -29,23 +29,23 @@ let t = class extends x(f) {
29
29
  /**
30
30
  * Create the aria-label text out of the direction label, station and the accessibility label.
31
31
  */
32
- c() {
33
- const i = [_[this.a.current]];
32
+ _getDirectionAriaLabel() {
33
+ const i = [m[this._language.current]];
34
34
  return this.directionLabel && this.station && i.push(`${this.directionLabel} ${this.station}`), this.accessibilityLabel && i.push(this.accessibilityLabel), `${i.join(", ")}.`;
35
35
  }
36
36
  willUpdate(i) {
37
- super.willUpdate(i), i.has("listChildren") && this.b.emit();
37
+ super.willUpdate(i), i.has("listChildren") && this._trainSlotChange.emit();
38
38
  }
39
39
  render() {
40
40
  const i = `h${this.directionLabelLevel}`;
41
41
  return c`
42
42
  <div class="sbb-train">
43
43
  <${h(i)} class="sbb-train__direction-label-sr">
44
- ${this.c()}
44
+ ${this._getDirectionAriaLabel()}
45
45
  </${h(i)}>
46
46
  ${this.renderList({
47
47
  class: "sbb-train__wagons",
48
- ariaLabel: w[this.a.current]
48
+ ariaLabel: w[this._language.current]
49
49
  })}
50
50
 
51
51
  ${this.directionLabel ? c`<div class="sbb-train__direction" aria-hidden="true">
@@ -86,7 +86,7 @@ e([
86
86
  n({ reflect: !0 })
87
87
  ], t.prototype, "direction", 2);
88
88
  t = e([
89
- v("sbb-train")
89
+ f("sbb-train")
90
90
  ], t);
91
91
  export {
92
92
  t as SbbTrainElement