@sbb-esta/lyne-elements-experimental 2.10.0 → 2.11.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 (154) hide show
  1. package/custom-elements.json +4286 -0
  2. package/development/seat-reservation/common/mapper/icon-mapper.d.ts +112 -0
  3. package/development/seat-reservation/common/mapper/icon-mapper.d.ts.map +1 -0
  4. package/development/seat-reservation/common/mapper/icon-mapper.js +72 -0
  5. package/development/seat-reservation/common/mapper/mapper.d.ts +29 -0
  6. package/development/seat-reservation/common/mapper/mapper.d.ts.map +1 -0
  7. package/development/seat-reservation/common/mapper/mapper.js +117 -0
  8. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +225 -0
  9. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -0
  10. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.js +6152 -0
  11. package/development/seat-reservation/common/mapper.d.ts +3 -0
  12. package/development/seat-reservation/common/mapper.d.ts.map +1 -0
  13. package/development/seat-reservation/common/mapper.js +10 -0
  14. package/development/seat-reservation/common/svgs.d.ts +25 -0
  15. package/development/seat-reservation/common/svgs.d.ts.map +1 -0
  16. package/development/seat-reservation/common/svgs.js +48 -0
  17. package/development/seat-reservation/common/translations/i18n.d.ts +19 -0
  18. package/development/seat-reservation/common/translations/i18n.d.ts.map +1 -0
  19. package/development/seat-reservation/common/translations/i18n.js +462 -0
  20. package/development/seat-reservation/common/translations.d.ts +2 -0
  21. package/development/seat-reservation/common/translations.d.ts.map +1 -0
  22. package/development/seat-reservation/common/translations.js +5 -0
  23. package/development/seat-reservation/common.d.ts +5 -0
  24. package/development/seat-reservation/common.d.ts.map +1 -0
  25. package/development/seat-reservation/common.js +18 -0
  26. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +156 -0
  27. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -0
  28. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +706 -0
  29. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.d.ts +29 -0
  30. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.d.ts.map +1 -0
  31. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.js +196 -0
  32. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component.d.ts +2 -0
  33. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component.d.ts.map +1 -0
  34. package/development/seat-reservation/seat-reservation/seat-reservation-scoped-component.js +5 -0
  35. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +62 -0
  36. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -0
  37. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +615 -0
  38. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts +18 -0
  39. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +1 -0
  40. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +108 -0
  41. package/development/seat-reservation/seat-reservation-area.d.ts +2 -0
  42. package/development/seat-reservation/seat-reservation-area.d.ts.map +1 -0
  43. package/development/seat-reservation/seat-reservation-area.js +5 -0
  44. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts +9 -0
  45. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts.map +1 -0
  46. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +326 -0
  47. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts +29 -0
  48. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +1 -0
  49. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +224 -0
  50. package/development/seat-reservation/seat-reservation-graphic.d.ts +2 -0
  51. package/development/seat-reservation/seat-reservation-graphic.d.ts.map +1 -0
  52. package/development/seat-reservation/seat-reservation-graphic.js +5 -0
  53. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +65 -0
  54. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -0
  55. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +576 -0
  56. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.d.ts +2 -0
  57. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.d.ts.map +1 -0
  58. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.js +5 -0
  59. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts +21 -0
  60. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +1 -0
  61. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +123 -0
  62. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.d.ts +2 -0
  63. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.d.ts.map +1 -0
  64. package/development/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.js +5 -0
  65. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +53 -0
  66. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -0
  67. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +446 -0
  68. package/development/seat-reservation/seat-reservation-place-control.d.ts +2 -0
  69. package/development/seat-reservation/seat-reservation-place-control.d.ts.map +1 -0
  70. package/development/seat-reservation/seat-reservation-place-control.js +5 -0
  71. package/development/seat-reservation/seat-reservation.d.ts +73 -0
  72. package/development/seat-reservation/seat-reservation.d.ts.map +1 -0
  73. package/development/seat-reservation/seat-reservation.js +7 -0
  74. package/development/seat-reservation.d.ts +5 -0
  75. package/development/seat-reservation.d.ts.map +1 -0
  76. package/development/seat-reservation.js +7 -0
  77. package/index.d.ts +14 -0
  78. package/index.js +14 -0
  79. package/package.json +7 -2
  80. package/seat-reservation/common/mapper/icon-mapper.d.ts +112 -0
  81. package/seat-reservation/common/mapper/icon-mapper.d.ts.map +1 -0
  82. package/seat-reservation/common/mapper/icon-mapper.js +71 -0
  83. package/seat-reservation/common/mapper/mapper.d.ts +29 -0
  84. package/seat-reservation/common/mapper/mapper.d.ts.map +1 -0
  85. package/seat-reservation/common/mapper/mapper.js +87 -0
  86. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +225 -0
  87. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -0
  88. package/seat-reservation/common/mapper/seat-reservation-sample-data.js +6149 -0
  89. package/seat-reservation/common/mapper.d.ts +3 -0
  90. package/seat-reservation/common/mapper.d.ts.map +1 -0
  91. package/seat-reservation/common/mapper.js +9 -0
  92. package/seat-reservation/common/svgs.d.ts +25 -0
  93. package/seat-reservation/common/svgs.d.ts.map +1 -0
  94. package/seat-reservation/common/svgs.js +250 -0
  95. package/seat-reservation/common/translations/i18n.d.ts +19 -0
  96. package/seat-reservation/common/translations/i18n.d.ts.map +1 -0
  97. package/seat-reservation/common/translations/i18n.js +460 -0
  98. package/seat-reservation/common/translations.d.ts +2 -0
  99. package/seat-reservation/common/translations.d.ts.map +1 -0
  100. package/seat-reservation/common/translations.js +4 -0
  101. package/seat-reservation/common.d.ts +5 -0
  102. package/seat-reservation/common.d.ts.map +1 -0
  103. package/seat-reservation/common.js +17 -0
  104. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +156 -0
  105. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -0
  106. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +435 -0
  107. package/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.d.ts +29 -0
  108. package/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.d.ts.map +1 -0
  109. package/seat-reservation/seat-reservation/seat-reservation-scoped-component/seat-reservation-scoped.component.js +107 -0
  110. package/seat-reservation/seat-reservation/seat-reservation-scoped-component.d.ts +2 -0
  111. package/seat-reservation/seat-reservation/seat-reservation-scoped-component.d.ts.map +1 -0
  112. package/seat-reservation/seat-reservation/seat-reservation-scoped-component.js +4 -0
  113. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts +62 -0
  114. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -0
  115. package/seat-reservation/seat-reservation/seat-reservation.component.js +404 -0
  116. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts +18 -0
  117. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +1 -0
  118. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +49 -0
  119. package/seat-reservation/seat-reservation-area.d.ts +2 -0
  120. package/seat-reservation/seat-reservation-area.d.ts.map +1 -0
  121. package/seat-reservation/seat-reservation-area.js +4 -0
  122. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts +9 -0
  123. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.d.ts.map +1 -0
  124. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +317 -0
  125. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts +29 -0
  126. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +1 -0
  127. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +113 -0
  128. package/seat-reservation/seat-reservation-graphic.d.ts +2 -0
  129. package/seat-reservation/seat-reservation-graphic.d.ts.map +1 -0
  130. package/seat-reservation/seat-reservation-graphic.js +4 -0
  131. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +65 -0
  132. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -0
  133. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +248 -0
  134. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.d.ts +2 -0
  135. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.d.ts.map +1 -0
  136. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-coach.js +4 -0
  137. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts +21 -0
  138. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +1 -0
  139. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +80 -0
  140. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.d.ts +2 -0
  141. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.d.ts.map +1 -0
  142. package/seat-reservation/seat-reservation-navigation/seat-reservation-navigation-services.js +4 -0
  143. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +53 -0
  144. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -0
  145. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +190 -0
  146. package/seat-reservation/seat-reservation-place-control.d.ts +2 -0
  147. package/seat-reservation/seat-reservation-place-control.d.ts.map +1 -0
  148. package/seat-reservation/seat-reservation-place-control.js +4 -0
  149. package/seat-reservation/seat-reservation.d.ts +73 -0
  150. package/seat-reservation/seat-reservation.d.ts.map +1 -0
  151. package/seat-reservation/seat-reservation.js +6 -0
  152. package/seat-reservation.d.ts +5 -0
  153. package/seat-reservation.d.ts.map +1 -0
  154. package/seat-reservation.js +6 -0
@@ -0,0 +1,190 @@
1
+ var nt = (o) => {
2
+ throw TypeError(o);
3
+ };
4
+ var bt = (o, l, i) => l.has(o) || nt("Cannot " + i);
5
+ var n = (o, l, i) => (bt(o, l, "read from private field"), i ? i.call(o) : l.get(o)), b = (o, l, i) => l.has(o) ? nt("Cannot add the same private member more than once") : l instanceof WeakSet ? l.add(o) : l.set(o, i), r = (o, l, i, h) => (bt(o, l, "write to private field"), h ? h.call(o, i) : l.set(o, i), i);
6
+ import { __esDecorate as p, __runInitializers as a } from "tslib";
7
+ import { SbbButtonBaseElement as ut } from "@sbb-esta/lyne-elements/core/base-elements.js";
8
+ import { SbbLanguageController as _t } from "@sbb-esta/lyne-elements/core/controllers.js";
9
+ import { forceType as v } from "@sbb-esta/lyne-elements/core/decorators.js";
10
+ import { EventEmitter as ft } from "@sbb-esta/lyne-elements/core/eventing.js";
11
+ import { css as gt, nothing as kt, html as xt } from "lit";
12
+ import { customElement as yt, property as d } from "lit/decorators.js";
13
+ import { getI18nSeatReservation as R } from "../common.js";
14
+ import "../seat-reservation-graphic.js";
15
+ const mt = gt`*,:before,:after{box-sizing:border-box}:host{--sbb-reservation-place-control-rotation: 0;--sbb-reservation-place-control-text-rotation: 0;--sbb-reservation-place-control-text-size: calc( var(--sbb-place-control-text-scale-value, 1) * .5 );--sbb-reservation-place-control-default-text: var(--sbb-color-black);--sbb-reservation-place-control-hover-text: var(--sbb-color-iron);--sbb-reservation-place-control-focus-text: var(--sbb-color-anthracite);--sbb-reservation-place-control-allocated-text: var(--sbb-color-smoke);--sbb-reservation-place-control-free-background-default: var(--sbb-color-white);--sbb-reservation-place-control-free-background-hover: var(--sbb-color-cloud);--sbb-reservation-place-control-free-background-focus: var(--sbb-color-silver);--sbb-reservation-place-control-free-backrest-background-default: var(--sbb-color-black);--sbb-reservation-place-control-free-backrest-background-hover: var(--sbb-color-black);--sbb-reservation-place-control-free-backrest-background-focus: var(--sbb-color-black);--sbb-reservation-place-control-selected-background-default: var(--sbb-color-red);--sbb-reservation-place-control-selected-background-hover: var(--sbb-color-red125);--sbb-reservation-place-control-selected-background-focus: var(--sbb-color-red150);--sbb-reservation-place-control-selected-backrest-background-default: var(--sbb-color-red150);--sbb-reservation-place-control-selected-backrest-background-hover: #7d000f;--sbb-reservation-place-control-selected-backrest-background-focus: #5a000b;--sbb-reservation-place-control-allocated-background-default: var(--sbb-color-milk);cursor:pointer}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-reservation-place-control-free-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-reservation-place-control-free-backrest-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-free-background-hover);color:var(--sbb-reservation-place-control-free-text)}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-reservation-place-control-selected-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-reservation-place-control-selected-backrest-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-selected-background-hover);color:var(--sbb-reservation-place-control-selected-text)}:host(:focus){border-radius:var(--sbb-border-width-1x);outline:var(--sbb-border-width-2x) solid var(--sbb-color-black)}:host(:focus) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-reservation-place-control-free-background-focus)}:host(:focus) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-reservation-place-control-free-backrest-background-focus)}:host(:focus) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-free-background-focus);color:var(--sbb-reservation-place-control-free-text)}:host(:focus) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-reservation-place-control-selected-background-focus)}:host(:focus) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-reservation-place-control-selected-backrest-background-focus)}:host(:focus) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-selected-background-focus);color:var(--sbb-reservation-place-control-selected-text)}.sbb-sr-place-ctrl{width:max-content;position:relative;font-size:calc(var(--sbb-reservation-place-control-text-size) * .0625rem)}.sbb-sr-place-ctrl--state-free ::part(svg-place){fill:var(--sbb-reservation-place-control-free-background-default)}.sbb-sr-place-ctrl--state-free ::part(svg-backrest){fill:var(--sbb-reservation-place-control-free-backrest-background-default)}.sbb-sr-place-ctrl--state-free .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-free-background-default);color:var(--sbb-reservation-place-control-free-text)}.sbb-sr-place-ctrl--state-selected ::part(svg-place){fill:var(--sbb-reservation-place-control-selected-background-default)}.sbb-sr-place-ctrl--state-selected ::part(svg-backrest){fill:var(--sbb-reservation-place-control-selected-backrest-background-default)}.sbb-sr-place-ctrl--state-selected .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-selected-background-default);color:var(--sbb-reservation-place-control-selected-text)}.sbb-sr-place-ctrl--state-allocated,.sbb-sr-place-ctrl--state-restricted{cursor:not-allowed}.sbb-sr-place-ctrl--state-allocated ::part(svg-place),.sbb-sr-place-ctrl--state-restricted ::part(svg-place){fill:var(--sbb-reservation-place-control-allocated-background-default)}.sbb-sr-place-ctrl--state-allocated ::part(svg-backrest),.sbb-sr-place-ctrl--state-restricted ::part(svg-backrest){fill:var(--sbb-reservation-place-control-allocated-backrest-background-default)}.sbb-sr-place-ctrl--state-allocated .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-restricted .sbb-sr-place-ctrl__text{background-color:var(--sbb-reservation-place-control-allocated-background-default);color:var(--sbb-reservation-place-control-allocated-text)}.sbb-sr-place-ctrl__text{overflow:hidden;display:none;position:absolute;inset-block-start:50%;translate:-50% -50%;rotate:calc(var(--sbb-reservation-place-control-text-rotation) * 1deg);font-family:var(--sbb-typo-font-family);font-size:.75em;line-height:initial}.sbb-sr-place-ctrl--state-free .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-allocated .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-restricted.sbb-sr-place-ctrl--type-bicycle .sbb-sr-place-ctrl__text{display:block}.sbb-sr-place-ctrl--type-bicycle .sbb-sr-place-ctrl__text{inset-block-start:65%;inset-inline-start:50%;transform-origin:center 16%;font-size:.6875em}.sbb-sr-place-ctrl--orientation-0.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-inline-start:45%}.sbb-sr-place-ctrl--orientation-90.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-block-start:46%;inset-inline-start:50%}.sbb-sr-place-ctrl--orientation-180.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-inline-start:55%}.sbb-sr-place-ctrl--orientation-270.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-block-start:52%;inset-inline-start:52%}`;
16
+ let Dt = (() => {
17
+ var u, _, f, g, k, x, y, m, I, z, w, c;
18
+ let o = [yt("sbb-seat-reservation-place-control")], l, i = [], h, S = ut, T, P = [], $ = [], L, D = [], A = [], N, O = [], F = [], j, B = [], U = [], K, M = [], Y = [], q, G = [], H = [], J, Q = [], V = [], W, X = [], Z = [], tt, et = [], st = [], rt, at = [], ct = [], ot, lt = [], it = [];
19
+ var C = (c = class extends S {
20
+ constructor() {
21
+ super();
22
+ b(this, u);
23
+ b(this, _);
24
+ b(this, f);
25
+ b(this, g);
26
+ b(this, k);
27
+ b(this, x);
28
+ b(this, y);
29
+ b(this, m);
30
+ b(this, I);
31
+ b(this, z);
32
+ b(this, w);
33
+ r(this, u, a(this, P, "SEAT")), r(this, _, (a(this, $), a(this, D, "FREE"))), r(this, f, (a(this, A), a(this, O, []))), r(this, g, (a(this, F), a(this, B, 0))), r(this, k, (a(this, U), a(this, M, 32))), r(this, x, (a(this, Y), a(this, G, 32))), r(this, y, (a(this, H), a(this, Q, ""))), r(this, m, (a(this, V), a(this, X, 0))), r(this, I, (a(this, Z), a(this, et, null))), r(this, z, (a(this, st), a(this, at, !1))), r(this, w, (a(this, ct), a(this, lt, "unfocus"))), this.placeSelected = (a(this, it), new ft(this, C.events.selectPlace)), this._language = new _t(this), this.addEventListener("click", () => this._selectPlace());
34
+ }
35
+ /** placeType of the place, e.g. 'SEAT', 'BICYCLE' */
36
+ get placeType() {
37
+ return n(this, u);
38
+ }
39
+ set placeType(e) {
40
+ r(this, u, e);
41
+ }
42
+ /** state of the place, e.g. 'FREE', 'SELECTED', 'BLOCKED' */
43
+ get state() {
44
+ return n(this, _);
45
+ }
46
+ set state(e) {
47
+ r(this, _, e);
48
+ }
49
+ /** property ids of the place, to display more info about the place */
50
+ get propertyIds() {
51
+ return n(this, f);
52
+ }
53
+ set propertyIds(e) {
54
+ r(this, f, e);
55
+ }
56
+ /** rotation in degrees (without unit) */
57
+ get rotation() {
58
+ return n(this, g);
59
+ }
60
+ set rotation(e) {
61
+ r(this, g, e);
62
+ }
63
+ /** width of the place in pixels (without unit) */
64
+ get width() {
65
+ return n(this, k);
66
+ }
67
+ set width(e) {
68
+ r(this, k, e);
69
+ }
70
+ /** height of the place in pixels (without unit) */
71
+ get height() {
72
+ return n(this, x);
73
+ }
74
+ set height(e) {
75
+ r(this, x, e);
76
+ }
77
+ /** label of the place, e.g. '1A', '2B' */
78
+ get text() {
79
+ return n(this, y);
80
+ }
81
+ set text(e) {
82
+ r(this, y, e);
83
+ }
84
+ /** Rotation of the text in degrees (without unit) */
85
+ get textRotation() {
86
+ return n(this, m);
87
+ }
88
+ set textRotation(e) {
89
+ r(this, m, e);
90
+ }
91
+ /** Coach Index Prop to identifer the right place to coach */
92
+ get coachIndex() {
93
+ return n(this, I);
94
+ }
95
+ set coachIndex(e) {
96
+ r(this, I, e);
97
+ }
98
+ /** Prevent click prop prevent any place action */
99
+ get preventClick() {
100
+ return n(this, z);
101
+ }
102
+ set preventClick(e) {
103
+ r(this, z, e);
104
+ }
105
+ /** Set the place focus outline style */
106
+ get keyfocus() {
107
+ return n(this, w);
108
+ }
109
+ set keyfocus(e) {
110
+ r(this, w, e);
111
+ }
112
+ willUpdate(e) {
113
+ var t, s, E;
114
+ super.willUpdate(e), (e.has("width") || e.has("height")) && ((t = this.style) == null || t.setProperty("--sbb-place-control-text-scale-value", `${Math.min(this.width, this.height)}`)), e.has("textRotation") && ((s = this.style) == null || s.setProperty("--sbb-reservation-place-control-text-rotation", `${this.textRotation}`)), e.has("rotation") && ((E = this.style) == null || E.setProperty("--sbb-reservation-place-control-rotation", `${this.rotation}`)), e.has("keyfocus") && this.keyfocus === "focus" && this.focus();
115
+ }
116
+ render() {
117
+ const e = this._getPlaceSvg(this.placeType, this.state), t = this.type.toLowerCase(), s = this.state.toLowerCase(), E = this.text, pt = this.width, dt = this.height, ht = this.textRotation - this.rotation, vt = this.preventClick ? "sbb-reservation-place-control--disabled" : null;
118
+ return this.title = this._getTitleDescriptionPlace(), this.tabIndex = -1, xt`
119
+ <div
120
+ part="sbb-sr-place-part"
121
+ class="sbb-sr-place-ctrl sbb-sr-place-ctrl--orientation-${this.rotation} sbb-sr-place-ctrl--state-${s} sbb-sr-place-ctrl--type-${t} ${vt}"
122
+ >
123
+ <sbb-seat-reservation-graphic
124
+ .name=${e}
125
+ .width=${pt}
126
+ .height=${dt}
127
+ .rotation=${this.rotation}
128
+ .inverseRotation=${ht}
129
+ aria-hidden="true"
130
+ ></sbb-seat-reservation-graphic>
131
+ <span ${this.text ?? kt} class="sbb-sr-place-ctrl__text" aria-hidden="true"
132
+ >${E}</span
133
+ >
134
+ </div>
135
+ `;
136
+ }
137
+ _getPlaceSvg(e, t) {
138
+ return `PLACE_${e}_${t}`;
139
+ }
140
+ _getTitleDescriptionPlace() {
141
+ const e = "PLACE_CONTROL_" + this.type + "_" + this.state;
142
+ let t = R(e, this._language.current, [this.text]);
143
+ return this.propertyIds.length && (t += ". " + R("PLACE_PROPERTY", this._language.current).concat(": "), t += this.propertyIds.map((s) => R(s, this._language.current)).join(", ")), t;
144
+ }
145
+ /** If the place selectable, we emit the placeSelection object which contains infos to the place state */
146
+ _selectPlace() {
147
+ if ((this.state === "FREE" || this.state === "SELECTED") && !this.preventClick) {
148
+ this.state = this.state === "FREE" ? "SELECTED" : "FREE";
149
+ const t = {
150
+ id: this.id,
151
+ coachIndex: this.coachIndex,
152
+ number: this.text,
153
+ state: this.state
154
+ };
155
+ this.placeSelected.emit(t);
156
+ }
157
+ }
158
+ }, u = new WeakMap(), _ = new WeakMap(), f = new WeakMap(), g = new WeakMap(), k = new WeakMap(), x = new WeakMap(), y = new WeakMap(), m = new WeakMap(), I = new WeakMap(), z = new WeakMap(), w = new WeakMap(), h = c, (() => {
159
+ const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(S[Symbol.metadata] ?? null) : void 0;
160
+ T = [v(), d({ attribute: "type" })], L = [v(), d({ attribute: "state" })], N = [d({ attribute: "propertyIds", type: Array })], j = [v(), d({ attribute: "rotation", type: Number })], K = [v(), d({ attribute: "width", type: Number })], q = [v(), d({ attribute: "height", type: Number })], J = [v(), d({ attribute: "text" })], W = [v(), d({ attribute: "text-rotation" })], tt = [v(), d({ attribute: "coach-index", type: Number })], rt = [v(), d({ attribute: "prevent-click", type: Boolean })], ot = [v(), d({ attribute: "keyfocus" })], p(c, null, T, { kind: "accessor", name: "placeType", static: !1, private: !1, access: { has: (t) => "placeType" in t, get: (t) => t.placeType, set: (t, s) => {
161
+ t.placeType = s;
162
+ } }, metadata: e }, P, $), p(c, null, L, { kind: "accessor", name: "state", static: !1, private: !1, access: { has: (t) => "state" in t, get: (t) => t.state, set: (t, s) => {
163
+ t.state = s;
164
+ } }, metadata: e }, D, A), p(c, null, N, { kind: "accessor", name: "propertyIds", static: !1, private: !1, access: { has: (t) => "propertyIds" in t, get: (t) => t.propertyIds, set: (t, s) => {
165
+ t.propertyIds = s;
166
+ } }, metadata: e }, O, F), p(c, null, j, { kind: "accessor", name: "rotation", static: !1, private: !1, access: { has: (t) => "rotation" in t, get: (t) => t.rotation, set: (t, s) => {
167
+ t.rotation = s;
168
+ } }, metadata: e }, B, U), p(c, null, K, { kind: "accessor", name: "width", static: !1, private: !1, access: { has: (t) => "width" in t, get: (t) => t.width, set: (t, s) => {
169
+ t.width = s;
170
+ } }, metadata: e }, M, Y), p(c, null, q, { kind: "accessor", name: "height", static: !1, private: !1, access: { has: (t) => "height" in t, get: (t) => t.height, set: (t, s) => {
171
+ t.height = s;
172
+ } }, metadata: e }, G, H), p(c, null, J, { kind: "accessor", name: "text", static: !1, private: !1, access: { has: (t) => "text" in t, get: (t) => t.text, set: (t, s) => {
173
+ t.text = s;
174
+ } }, metadata: e }, Q, V), p(c, null, W, { kind: "accessor", name: "textRotation", static: !1, private: !1, access: { has: (t) => "textRotation" in t, get: (t) => t.textRotation, set: (t, s) => {
175
+ t.textRotation = s;
176
+ } }, metadata: e }, X, Z), p(c, null, tt, { kind: "accessor", name: "coachIndex", static: !1, private: !1, access: { has: (t) => "coachIndex" in t, get: (t) => t.coachIndex, set: (t, s) => {
177
+ t.coachIndex = s;
178
+ } }, metadata: e }, et, st), p(c, null, rt, { kind: "accessor", name: "preventClick", static: !1, private: !1, access: { has: (t) => "preventClick" in t, get: (t) => t.preventClick, set: (t, s) => {
179
+ t.preventClick = s;
180
+ } }, metadata: e }, at, ct), p(c, null, ot, { kind: "accessor", name: "keyfocus", static: !1, private: !1, access: { has: (t) => "keyfocus" in t, get: (t) => t.keyfocus, set: (t, s) => {
181
+ t.keyfocus = s;
182
+ } }, metadata: e }, lt, it), p(null, l = { value: h }, o, { kind: "class", name: h.name, metadata: e }, null, i), C = h = l.value, e && Object.defineProperty(h, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
183
+ })(), c.styles = mt, c.events = {
184
+ selectPlace: "selectPlace"
185
+ }, a(h, i), c);
186
+ return C = h;
187
+ })();
188
+ export {
189
+ Dt as SbbSeatReservationPlaceControlElement
190
+ };
@@ -0,0 +1,2 @@
1
+ export * from './seat-reservation-place-control/seat-reservation-place-control.component.js';
2
+ //# sourceMappingURL=seat-reservation-place-control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-reservation-place-control.d.ts","sourceRoot":"","sources":["../../../src/elements-experimental/seat-reservation/seat-reservation-place-control.ts"],"names":[],"mappings":"AAAA,cAAc,8EAA8E,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { SbbSeatReservationPlaceControlElement as t } from "./seat-reservation-place-control/seat-reservation-place-control.component.js";
2
+ export {
3
+ t as SbbSeatReservationPlaceControlElement
4
+ };
@@ -0,0 +1,73 @@
1
+ /** SeatReservation defines all information about a vehicle and the wagons it contains */
2
+ export type SeatReservation = {
3
+ vehicleType: VehicleType;
4
+ deckCoachIndex: number;
5
+ coachItems: CoachItem[];
6
+ };
7
+ export type CoachItem = {
8
+ id: string;
9
+ number: string;
10
+ dimension: ElementDimension;
11
+ type?: CoachType;
12
+ places?: Place[];
13
+ graphicElements?: BaseElement[];
14
+ serviceElements?: BaseElement[];
15
+ travelClass: PlaceTravelClass[];
16
+ propertyIds?: string[];
17
+ };
18
+ export interface Place extends BaseElement {
19
+ number: string;
20
+ state: PlaceState;
21
+ type: PlaceType;
22
+ travelClass?: PlaceTravelClass;
23
+ remarkId?: string;
24
+ propertyIds?: string[];
25
+ selected?: boolean;
26
+ }
27
+ export type BaseElement = {
28
+ icon?: string | null;
29
+ rotation?: number;
30
+ position: ElementPosition;
31
+ dimension: ElementDimension;
32
+ };
33
+ export type ElementDimension = {
34
+ w: number;
35
+ h: number;
36
+ };
37
+ export type ElementPosition = {
38
+ x: number;
39
+ y: number;
40
+ z: number;
41
+ };
42
+ export type PlaceSelection = {
43
+ id: string;
44
+ number: string;
45
+ coachIndex: number;
46
+ state: PlaceState;
47
+ };
48
+ export type SeatReservationPlaceSelection = {
49
+ id: string;
50
+ coachId: string;
51
+ coachNumber: string;
52
+ coachIndex: number;
53
+ placeNumber: string;
54
+ placeType: PlaceType;
55
+ placeTravelClass: PlaceTravelClass;
56
+ propertyIds: string[];
57
+ };
58
+ export type SeatReservationCoachSelection = {
59
+ coachId: string;
60
+ coachNumber: string;
61
+ coachIndex: number;
62
+ coachType?: CoachType;
63
+ coachTravelClass: PlaceTravelClass[];
64
+ coachPropertyIds?: string[];
65
+ };
66
+ export type PlaceType = 'SEAT' | 'BICYCLE';
67
+ export type CoachType = 'RESTAURANT_COACH' | 'BICYCLE_COACH' | 'LUGGAGE_COACH' | 'TRAIN_HEAD';
68
+ export type PlaceState = 'FREE' | 'ALLOCATED' | 'RESTRICTED' | 'SELECTED';
69
+ export type PlaceTravelClass = 'FIRST' | 'SECOND' | 'ANY_CLASS';
70
+ export type VehicleType = 'TRAIN' | 'BUS';
71
+ export * from './seat-reservation/seat-reservation-base-element.js';
72
+ export * from './seat-reservation/seat-reservation.component.js';
73
+ //# sourceMappingURL=seat-reservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-reservation.d.ts","sourceRoot":"","sources":["../../../src/elements-experimental/seat-reservation/seat-reservation.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IAEtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,KAAM,SAAQ,WAAW;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;IAC1B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAC3C,MAAM,MAAM,SAAS,GAAG,kBAAkB,GAAG,eAAe,GAAG,eAAe,GAAG,YAAY,CAAC;AAC9F,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;AAChE,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,KAAK,CAAC;AAE1C,cAAc,qDAAqD,CAAC;AACpE,cAAc,kDAAkD,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { SeatReservationBaseElement as o } from "./seat-reservation/seat-reservation-base-element.js";
2
+ import { SbbSeatReservationElement as a } from "./seat-reservation/seat-reservation.component.js";
3
+ export {
4
+ a as SbbSeatReservationElement,
5
+ o as SeatReservationBaseElement
6
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './seat-reservation/seat-reservation.js';
5
+ //# sourceMappingURL=seat-reservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-reservation.d.ts","sourceRoot":"","sources":["../../src/elements-experimental/seat-reservation.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,wCAAwC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { SeatReservationBaseElement as o } from "./seat-reservation/seat-reservation/seat-reservation-base-element.js";
2
+ import { SbbSeatReservationElement as a } from "./seat-reservation/seat-reservation/seat-reservation.component.js";
3
+ export {
4
+ a as SbbSeatReservationElement,
5
+ o as SeatReservationBaseElement
6
+ };