@sbb-esta/lyne-elements-experimental-dev 4.7.0-dev.1773333596 → 4.7.0-dev.1773388997

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 (199) hide show
  1. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +65 -76
  2. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +72 -52
  3. package/autocomplete-grid/autocomplete-grid-button.js +3 -6
  4. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -17
  5. package/autocomplete-grid/autocomplete-grid-cell.js +4 -7
  6. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +20 -21
  7. package/autocomplete-grid/autocomplete-grid-optgroup.js +3 -6
  8. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -33
  9. package/autocomplete-grid/autocomplete-grid-option.js +4 -9
  10. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -22
  11. package/autocomplete-grid/autocomplete-grid-row.js +4 -7
  12. package/autocomplete-grid/autocomplete-grid.js +3 -6
  13. package/autocomplete-grid-cell.component-Dak9wlBr.js +24 -0
  14. package/autocomplete-grid-option.component-DNRFHOwc.js +37 -0
  15. package/autocomplete-grid-row.component-DBHZQ0GQ.js +27 -0
  16. package/autocomplete-grid.js +9 -21
  17. package/autocomplete-grid.pure.js +7 -15
  18. package/core/datetime/date-helper.js +2 -191
  19. package/core/datetime.js +2 -5
  20. package/core/timetable/access-leg-helper.js +76 -71
  21. package/core/timetable/timetable-helper.js +9 -11
  22. package/core/timetable/timetable-properties.js +0 -1
  23. package/core/timetable.js +3 -7
  24. package/date-helper-CGproP5d.js +185 -0
  25. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +114 -122
  26. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +92 -70
  27. package/development/autocomplete-grid/autocomplete-grid-button.js +6 -4
  28. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -29
  29. package/development/autocomplete-grid/autocomplete-grid-cell.js +7 -5
  30. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +27 -22
  31. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +6 -4
  32. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -109
  33. package/development/autocomplete-grid/autocomplete-grid-option.js +7 -7
  34. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -91
  35. package/development/autocomplete-grid/autocomplete-grid-row.js +7 -5
  36. package/development/autocomplete-grid/autocomplete-grid.js +6 -4
  37. package/development/autocomplete-grid-cell.component-BBvM4o2H.js +42 -0
  38. package/development/autocomplete-grid-option.component-QzfM5eIE.js +123 -0
  39. package/development/autocomplete-grid-row.component-H8sCTCkT.js +104 -0
  40. package/development/autocomplete-grid.js +10 -14
  41. package/development/autocomplete-grid.pure.js +4 -13
  42. package/development/core/datetime/date-helper.js +2 -285
  43. package/development/core/datetime.js +2 -6
  44. package/development/core/timetable/access-leg-helper.js +104 -82
  45. package/development/core/timetable/timetable-helper.js +16 -17
  46. package/development/core/timetable/timetable-properties.js +0 -2
  47. package/development/core/timetable.js +3 -8
  48. package/development/date-helper-8_Y-PuHh.js +520 -0
  49. package/development/differenceInMinutes-DN_1Rk3O.js +110 -0
  50. package/development/format-Bbrn2bgo.js +1848 -0
  51. package/development/isValid-C-HzKv4v.js +178 -0
  52. package/development/journey-summary/journey-summary.component.js +2 -288
  53. package/development/journey-summary.component-uGhZvA4p.js +385 -0
  54. package/development/journey-summary.js +8 -5
  55. package/development/journey-summary.pure.js +2 -5
  56. package/development/pearl-chain/pearl-chain.component.js +2 -634
  57. package/development/pearl-chain-time/pearl-chain-time.component.js +2 -306
  58. package/development/pearl-chain-time.component-B8mayTWD.js +415 -0
  59. package/development/pearl-chain-time.js +8 -5
  60. package/development/pearl-chain-time.pure.js +2 -5
  61. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -28
  62. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -393
  63. package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +435 -0
  64. package/development/pearl-chain-vertical-item.js +8 -5
  65. package/development/pearl-chain-vertical-item.pure.js +2 -5
  66. package/development/pearl-chain-vertical.component-CswE7b3M.js +39 -0
  67. package/development/pearl-chain-vertical.js +8 -5
  68. package/development/pearl-chain-vertical.pure.js +2 -5
  69. package/development/pearl-chain.component-wpsTvoSe.js +704 -0
  70. package/development/pearl-chain.js +8 -5
  71. package/development/pearl-chain.pure.js +2 -5
  72. package/development/seat-reservation/common/mapper/icon-mapper.js +168 -71
  73. package/development/seat-reservation/common/mapper/mapper.js +153 -122
  74. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +570 -559
  75. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +992 -972
  76. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20334 -20367
  77. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1731 -1738
  78. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9741 -9782
  79. package/development/seat-reservation/common/mapper.js +1 -8
  80. package/development/seat-reservation/common/svgs.js +2 -46
  81. package/development/seat-reservation/common/translations/i18n.js +1118 -900
  82. package/development/seat-reservation/common/translations.js +1 -4
  83. package/development/seat-reservation/common/types.js +0 -2
  84. package/development/seat-reservation/common.js +7 -11
  85. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +1305 -1230
  86. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +2 -859
  87. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -106
  88. package/development/seat-reservation/seat-reservation-area.js +7 -5
  89. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +35 -34
  90. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -162
  91. package/development/seat-reservation/seat-reservation-graphic.js +7 -5
  92. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -713
  93. package/development/seat-reservation/seat-reservation-navigation-coach.js +7 -5
  94. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -131
  95. package/development/seat-reservation/seat-reservation-navigation-services.js +7 -5
  96. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -601
  97. package/development/seat-reservation/seat-reservation-place-control.js +7 -5
  98. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -22
  99. package/development/seat-reservation/seat-reservation-scoped.js +7 -5
  100. package/development/seat-reservation/seat-reservation.js +7 -6
  101. package/development/seat-reservation-area.component-BK92ZtFo.js +138 -0
  102. package/development/seat-reservation-graphic.component-cUnsHh5x.js +193 -0
  103. package/development/seat-reservation-navigation-coach.component-D6Bglus8.js +828 -0
  104. package/development/seat-reservation-navigation-services.component-DYJ6Ddkg.js +179 -0
  105. package/development/seat-reservation-place-control.component-Bg9evKBW.js +726 -0
  106. package/development/seat-reservation-scoped.component-DRQ_I702.js +31 -0
  107. package/development/seat-reservation.component-Cq_aJKR0.js +818 -0
  108. package/development/seat-reservation.js +15 -28
  109. package/development/seat-reservation.pure.js +10 -28
  110. package/development/svgs-C3JMWR26.js +28 -0
  111. package/development/timetable-duration/timetable-duration.component.js +2 -108
  112. package/development/timetable-duration.component-DI0lET17.js +125 -0
  113. package/development/timetable-duration.js +8 -5
  114. package/development/timetable-duration.pure.js +2 -5
  115. package/development/timetable-row/timetable-row.component.js +2 -781
  116. package/development/timetable-row.component-CAED6Zwc.js +932 -0
  117. package/development/timetable-row.js +8 -13
  118. package/development/timetable-row.pure.js +2 -12
  119. package/development/toDate-Biiv3kyf.js +150 -0
  120. package/differenceInMinutes-Dr9gRqtu.js +27 -0
  121. package/format-CM5exOsN.js +1103 -0
  122. package/isValid-B9oVW3lA.js +36 -0
  123. package/journey-summary/journey-summary.component.js +2 -194
  124. package/journey-summary.component-Cq_4kaOp.js +264 -0
  125. package/journey-summary.js +5 -4
  126. package/journey-summary.pure.js +2 -4
  127. package/package.json +2 -2
  128. package/pearl-chain/pearl-chain.component.js +2 -165
  129. package/pearl-chain-time/pearl-chain-time.component.js +2 -157
  130. package/pearl-chain-time.component-DGDW5S1c.js +239 -0
  131. package/pearl-chain-time.js +5 -4
  132. package/pearl-chain-time.pure.js +2 -4
  133. package/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -17
  134. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -77
  135. package/pearl-chain-vertical-item.component-G22bWhLU.js +108 -0
  136. package/pearl-chain-vertical-item.js +5 -4
  137. package/pearl-chain-vertical-item.pure.js +2 -4
  138. package/pearl-chain-vertical.component-CXIDT5RD.js +21 -0
  139. package/pearl-chain-vertical.js +5 -4
  140. package/pearl-chain-vertical.pure.js +2 -4
  141. package/pearl-chain.component-DmjkVIva.js +194 -0
  142. package/pearl-chain.js +5 -4
  143. package/pearl-chain.pure.js +2 -4
  144. package/seat-reservation/common/mapper/icon-mapper.js +71 -71
  145. package/seat-reservation/common/mapper/mapper.js +95 -89
  146. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +568 -558
  147. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +989 -970
  148. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20332 -20366
  149. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1729 -1737
  150. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9739 -9781
  151. package/seat-reservation/common/mapper.js +3 -9
  152. package/seat-reservation/common/svgs.js +2 -243
  153. package/seat-reservation/common/translations/i18n.js +1084 -891
  154. package/seat-reservation/common/translations.js +2 -4
  155. package/seat-reservation/common/types.js +0 -1
  156. package/seat-reservation/common.js +9 -15
  157. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +832 -810
  158. package/seat-reservation/seat-reservation/seat-reservation.component.js +2 -420
  159. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -51
  160. package/seat-reservation/seat-reservation-area.js +4 -7
  161. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +68 -71
  162. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -75
  163. package/seat-reservation/seat-reservation-graphic.js +4 -7
  164. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -234
  165. package/seat-reservation/seat-reservation-navigation-coach.js +4 -7
  166. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -85
  167. package/seat-reservation/seat-reservation-navigation-services.js +4 -7
  168. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -203
  169. package/seat-reservation/seat-reservation-place-control.js +4 -7
  170. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -13
  171. package/seat-reservation/seat-reservation-scoped.js +4 -7
  172. package/seat-reservation/seat-reservation.js +5 -9
  173. package/seat-reservation-area.component-n-9rGn_y.js +75 -0
  174. package/seat-reservation-graphic.component-YTXRmKt0.js +102 -0
  175. package/seat-reservation-navigation-coach.component-YJ0vaYmO.js +333 -0
  176. package/seat-reservation-navigation-services.component-C3xnLJg2.js +127 -0
  177. package/seat-reservation-place-control.component-DmBAfM6K.js +322 -0
  178. package/seat-reservation-scoped.component-DPkz6u17.js +17 -0
  179. package/seat-reservation.component-C_anMkgw.js +364 -0
  180. package/seat-reservation.js +17 -39
  181. package/seat-reservation.pure.js +15 -32
  182. package/svgs-D9arBcqr.js +26 -0
  183. package/timetable-duration/timetable-duration.component.js +2 -57
  184. package/timetable-duration.component-DCu8Phts.js +65 -0
  185. package/timetable-duration.js +5 -4
  186. package/timetable-duration.pure.js +2 -4
  187. package/timetable-row/timetable-row.component.js +2 -427
  188. package/timetable-row.component-BVRCB3xK.js +559 -0
  189. package/timetable-row.js +6 -13
  190. package/timetable-row.pure.js +2 -11
  191. package/toDate-p-Tpkb7t.js +16 -0
  192. package/development/differenceInMinutes-B0dawX-5.js +0 -26
  193. package/development/format-BMkeaqaF.js +0 -1433
  194. package/development/isValid-BYRch7pV.js +0 -53
  195. package/development/toDate-BWb6Z1JD.js +0 -24
  196. package/differenceInMinutes-COvvdYsJ.js +0 -23
  197. package/format-CmKROkbc.js +0 -1186
  198. package/isValid-m3_OsPaB.js +0 -45
  199. package/toDate-Bw2KTWeq.js +0 -15
@@ -1,713 +1,2 @@
1
- var __typeError = (msg) => {
2
- throw TypeError(msg);
3
- };
4
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
- var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
- import { __runInitializers, __esDecorate } from "tslib";
9
- import { SbbElement } from "@sbb-esta/lyne-elements/core/base-elements.js";
10
- import { SbbLanguageController } from "@sbb-esta/lyne-elements/core/controllers.js";
11
- import { forceType } from "@sbb-esta/lyne-elements/core/decorators.js";
12
- import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
13
- import { css, nothing, html } from "lit";
14
- import { property } from "lit/decorators.js";
15
- import { classMap } from "lit/directives/class-map.js";
16
- import { getI18nSeatReservation } from "../common/translations.js";
17
- import { SbbSeatReservationNavigationServicesElement } from "../seat-reservation-navigation-services/seat-reservation-navigation-services.component.js";
18
- import "@sbb-esta/lyne-elements/screen-reader-only.js";
19
- const style = css`:host {
20
- display: inline-block;
21
- min-height: calc(44 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
22
- --sbb-seat-reservation-navigation-travelclass-spacing: 10;
23
- --sbb-seat-reservation-navigation-btn-border-width-default: 1;
24
- --sbb-seat-reservation-navigation-btn-border-width: var(
25
- --sbb-seat-reservation-navigation-btn-border-width-default
26
- );
27
- --sbb-seat-reservation-navigation-btn-border-color: var(--sbb-color-granite);
28
- --sbb-seat-reservation-navigation-btn-border-color: light-dark(
29
- var(--sbb-color-granite),
30
- var(--sbb-color-graphite)
31
- );
32
- --sbb-seat-reservation-navigation-btn-background-color: var(--sbb-color-white);
33
- --sbb-seat-reservation-navigation-btn-background-color: light-dark(
34
- var(--sbb-color-white),
35
- var(--sbb-color-black)
36
- );
37
- --sbb-seat-reservation-navigation-btn-border-width-selected: 2;
38
- --sbb-seat-reservation-navigation-btn-background-color-selected: var(--sbb-color-milk);
39
- --sbb-seat-reservation-navigation-btn-background-color-selected: light-dark(
40
- var(--sbb-color-milk),
41
- var(--sbb-color-iron)
42
- );
43
- --sbb-seat-reservation-navigation-btn-border-color-selected: var(--sbb-color-black);
44
- --sbb-seat-reservation-navigation-btn-border-color-selected: light-dark(
45
- var(--sbb-color-black),
46
- var(--sbb-color-white)
47
- );
48
- --sbb-seat-reservation-navigation-btn-outline-width-focused: 1;
49
- --sbb-seat-reservation-navigation-btn-outline-color-focused: var(--sbb-color-black);
50
- --sbb-seat-reservation-navigation-btn-outline-color-focused: light-dark(
51
- var(--sbb-color-black),
52
- var(--sbb-color-white)
53
- );
54
- --sbb-seat-reservation-navigation-btn-outline-offset-focused: 4;
55
- --sbb-seat-reservation-navigation-btn-background-color-focused: var(--sbb-color-white);
56
- --sbb-seat-reservation-navigation-btn-background-color-focused: light-dark(
57
- var(--sbb-color-white),
58
- var(--sbb-color-black)
59
- );
60
- --sbb-seat-reservation-navigation-btn-border-width-focused: var(
61
- --sbb-seat-reservation-navigation-btn-border-width
62
- );
63
- --sbb-seat-reservation-navigation-btn-border-color-focused: var(--sbb-color-black);
64
- --sbb-seat-reservation-navigation-btn-border-color-focused: light-dark(
65
- var(--sbb-color-black),
66
- var(--sbb-color-white)
67
- );
68
- --sbb-seat-reservation-navigation-btn-border-width-hovered: 2;
69
- --sbb-seat-reservation-navigation-btn-background-color-hovered: var(--sbb-color-cloud);
70
- --sbb-seat-reservation-navigation-btn-background-color-hovered: light-dark(
71
- var(--sbb-color-cloud),
72
- var(--sbb-color-midnight)
73
- );
74
- --sbb-seat-reservation-navigation-btn-border-color-hovered: var(--sbb-color-black);
75
- --sbb-seat-reservation-navigation-btn-border-color-hovered: light-dark(
76
- var(--sbb-color-black),
77
- var(--sbb-color-white)
78
- );
79
- --sbb-seat-reservation-navigation-btn-background-color-disabled: var(--sbb-background-color-2);
80
- --sbb-seat-reservation-navigation-btn-border-color-disabled: var(--sbb-color-platinum);
81
- --sbb-seat-reservation-navigation-btn-border-color-disabled: light-dark(
82
- var(--sbb-color-platinum),
83
- var(--sbb-color-iron)
84
- );
85
- }
86
-
87
- .sbb-sr-navigation__item-coach {
88
- display: flex;
89
- flex-direction: column;
90
- gap: calc(8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
91
- width: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
92
- list-style-type: none;
93
- }
94
- .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation--first-class, .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation--first-class {
95
- width: calc(100% - 18 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
96
- }
97
- .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation__ctrl-button:not(.sbb-seat-reservation-navigation-driver-area) {
98
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-8x);
99
- }
100
- .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation__ctrl-button:not(.sbb-seat-reservation-navigation-driver-area)::before {
101
- content: "";
102
- position: absolute;
103
- width: 100%;
104
- height: 100%;
105
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
106
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-8x);
107
- }
108
- .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation--first-class {
109
- margin-inline-start: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
110
- }
111
- .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
112
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-2x);
113
- }
114
- .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area)::before {
115
- content: "";
116
- position: absolute;
117
- width: 100%;
118
- height: 100%;
119
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
120
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-2x);
121
- }
122
- .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation__additional-information {
123
- padding-inline-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
124
- }
125
- .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation--first-class {
126
- margin-inline-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
127
- }
128
-
129
- .sbb-sr-navigation__ctrl-button {
130
- appearance: none;
131
- box-sizing: border-box;
132
- margin: 0;
133
- outline: none;
134
- border: none;
135
- border-radius: 0;
136
- padding: 0;
137
- background: none;
138
- -webkit-tap-highlight-color: transparent;
139
- color: inherit;
140
- display: flex;
141
- flex-direction: column;
142
- justify-content: center;
143
- height: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
144
- position: relative;
145
- background-color: var(--sbb-seat-reservation-navigation-btn-background-color);
146
- cursor: var(--sbb-cursor-pointer);
147
- }
148
- .sbb-sr-navigation__ctrl-button.sbb-sr-navigation-driver-area {
149
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x);
150
- }
151
- .sbb-sr-navigation__ctrl-button.sbb-sr-navigation-driver-area::before {
152
- content: "";
153
- position: absolute;
154
- width: 100%;
155
- height: 100%;
156
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
157
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x);
158
- }
159
- .sbb-sr-navigation__ctrl-button {
160
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x);
161
- }
162
- .sbb-sr-navigation__ctrl-button::before {
163
- content: "";
164
- position: absolute;
165
- width: 100%;
166
- height: 100%;
167
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
168
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x);
169
- }
170
-
171
- .sbb-sr-navigation__item-coach--focused .sbb-sr-navigation__ctrl-button {
172
- --sbb-seat-reservation-navigation-btn-background-color: var(
173
- --sbb-seat-reservation-navigation-btn-background-color-focused
174
- );
175
- --sbb-seat-reservation-navigation-btn-border-color: var(
176
- --sbb-seat-reservation-navigation-btn-border-color-focused
177
- );
178
- --sbb-seat-reservation-navigation-btn-border-width: var(
179
- --sbb-seat-reservation-navigation-btn-border-width-focused
180
- );
181
- outline: calc(var(--sbb-seat-reservation-navigation-btn-outline-width-focused) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-outline-color-focused);
182
- outline-offset: calc(var(--sbb-seat-reservation-navigation-btn-outline-offset-focused) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
183
- }
184
- .sbb-sr-navigation__item-coach--focused .sbb-sr-navigation__ctrl-button .sbb-sr-navigation__item-coach-travelclass {
185
- background-color: var(--sbb-color-metal);
186
- background-color: light-dark(var(--sbb-color-metal), var(--sbb-color-storm));
187
- }
188
- .sbb-sr-navigation__item-coach--focused .sbb-sr-navigation__ctrl-button .sbb-sr-navigation__item-coach-number {
189
- color: var(--sbb-color-anthracite);
190
- color: light-dark(var(--sbb-color-anthracite), var(--sbb-color-graphite));
191
- }
192
-
193
- .sbb-sr-navigation__item-coach--selected .sbb-sr-navigation__ctrl-button {
194
- --sbb-seat-reservation-navigation-btn-background-color: var(
195
- --sbb-seat-reservation-navigation-btn-background-color-selected
196
- );
197
- --sbb-seat-reservation-navigation-btn-border-color: var(
198
- --sbb-seat-reservation-navigation-btn-border-color-selected
199
- );
200
- --sbb-seat-reservation-navigation-btn-border-width: var(
201
- --sbb-seat-reservation-navigation-btn-border-width-selected
202
- );
203
- }
204
- .sbb-sr-navigation__item-coach--selected .sbb-sr-navigation__ctrl-button .sbb-sr-navigation__item-coach-travelclass {
205
- background-color: var(--sbb-color-black);
206
- background-color: light-dark(var(--sbb-color-black), var(--sbb-color-white));
207
- }
208
- .sbb-sr-navigation__item-coach--selected .sbb-sr-navigation__ctrl-button .sbb-sr-navigation__item-coach-number {
209
- color: var(--sbb-color-black);
210
- color: light-dark(var(--sbb-color-black), var(--sbb-color-white));
211
- }
212
-
213
- .sbb-sr-navigation__item-coach--hovered .sbb-sr-navigation__ctrl-button {
214
- --sbb-seat-reservation-navigation-btn-background-color: var(
215
- --sbb-seat-reservation-navigation-btn-background-color-hovered
216
- );
217
- --sbb-seat-reservation-navigation-btn-border-color: var(
218
- --sbb-seat-reservation-navigation-btn-border-color-hovered
219
- );
220
- --sbb-seat-reservation-navigation-btn-border-width: var(
221
- --sbb-seat-reservation-navigation-btn-border-width-hovered
222
- );
223
- }
224
-
225
- .sbb-sr-navigation__item-coach--selected.sbb-sr-navigation__item-coach--hovered .sbb-sr-navigation__ctrl-button {
226
- --sbb-seat-reservation-navigation-btn-background-color: var(
227
- --sbb-seat-reservation-navigation-btn-background-color-selected
228
- );
229
- --sbb-seat-reservation-navigation-btn-border-color: var(
230
- --sbb-seat-reservation-navigation-btn-border-color-selected
231
- );
232
- --sbb-seat-reservation-navigation-btn-border-width: var(
233
- --sbb-seat-reservation-navigation-btn-border-width-selected
234
- );
235
- background-color: var(--sbb-seat-reservation-navigation-btn-background-color-hovered) !important;
236
- }
237
-
238
- .sbb-sr-navigation__item-coach--selected .sbb-sr-navigation__ctrl-button:focus-visible:not([disabled], :disabled) {
239
- --sbb-seat-reservation-navigation-btn-background-color: var(
240
- --sbb-seat-reservation-navigation-btn-background-color-selected
241
- );
242
- --sbb-seat-reservation-navigation-btn-border-color: var(
243
- --sbb-seat-reservation-navigation-btn-border-color-selected
244
- );
245
- --sbb-seat-reservation-navigation-btn-border-width: var(
246
- --sbb-seat-reservation-navigation-btn-border-width-selected
247
- );
248
- }
249
-
250
- .sbb-sr-navigation__item-coach--hovered .sbb-sr-navigation__ctrl-button {
251
- --sbb-seat-reservation-navigation-btn-background-color: var(
252
- --sbb-seat-reservation-navigation-btn-background-color-hovered
253
- );
254
- --sbb-seat-reservation-navigation-btn-border-color: var(
255
- --sbb-seat-reservation-navigation-btn-border-color-hovered
256
- );
257
- --sbb-seat-reservation-navigation-btn-border-width: var(
258
- --sbb-seat-reservation-navigation-btn-border-width-hovered
259
- );
260
- }
261
-
262
- .sbb-sr-navigation__ctrl-button:hover:not([disabled], :disabled) {
263
- --sbb-seat-reservation-navigation-btn-background-color: var(
264
- --sbb-seat-reservation-navigation-btn-background-color-hovered
265
- );
266
- --sbb-seat-reservation-navigation-btn-border-color: var(
267
- --sbb-seat-reservation-navigation-btn-border-color-hovered
268
- );
269
- --sbb-seat-reservation-navigation-btn-border-width: var(
270
- --sbb-seat-reservation-navigation-btn-border-width-hovered
271
- );
272
- }
273
- .sbb-sr-navigation__ctrl-button:hover:not([disabled], :disabled) .sbb-sr-navigation__item-coach-travelclass {
274
- background-color: var(--sbb-color-smoke);
275
- }
276
- .sbb-sr-navigation__ctrl-button:hover:not([disabled], :disabled) .sbb-sr-navigation__item-coach-number {
277
- color: var(--sbb-color-iron);
278
- color: light-dark(var(--sbb-color-iron), var(--sbb-color-silver));
279
- }
280
-
281
- .sbb-sr-navigation__ctrl-button:is([disabled], :disabled) {
282
- --sbb-seat-reservation-navigation-btn-background-color: var(
283
- --sbb-seat-reservation-navigation-btn-background-color-disabled
284
- );
285
- --sbb-seat-reservation-navigation-btn-border-color: var(
286
- --sbb-seat-reservation-navigation-btn-border-color-disabled
287
- );
288
- cursor: unset;
289
- pointer-events: unset;
290
- }
291
- .sbb-sr-navigation__ctrl-button:is([disabled], :disabled) .sbb-sr-navigation__item-coach-travelclass {
292
- background-color: var(--sbb-color-graphite);
293
- background-color: light-dark(var(--sbb-color-graphite), var(--sbb-color-granite));
294
- }
295
- .sbb-sr-navigation__ctrl-button:is([disabled], :disabled) .sbb-sr-navigation__item-coach-number {
296
- color: var(--sbb-color-graphite);
297
- color: light-dark(var(--sbb-color-graphite), var(--sbb-color-granite));
298
- }
299
-
300
- .sbb-sr-navigation__additional-information {
301
- display: flex;
302
- justify-content: space-between;
303
- align-items: center;
304
- flex: 1;
305
- column-gap: calc(8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
306
- padding-inline: calc(16 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
307
- font-family: var(--sbb-typo-font-family);
308
- font-weight: 700;
309
- color: var(--sbb-color-granite);
310
- color: light-dark(var(--sbb-color-granite), var(--sbb-color-granite));
311
- }
312
- @media (forced-colors: active) {
313
- .sbb-sr-navigation__additional-information {
314
- color: var(--sbb-color-milk);
315
- }
316
- }
317
-
318
- .sbb-sr-navigation__item-coach-number {
319
- color: var(--sbb-color-granite);
320
- color: light-dark(var(--sbb-color-granite), var(--sbb-color-graphite));
321
- }
322
- @media (forced-colors: active) {
323
- .sbb-sr-navigation__item-coach-number {
324
- color: var(--sbb-color-granite);
325
- color: light-dark(var(--sbb-color-granite), var(--sbb-color-graphite));
326
- }
327
- }
328
- .sbb-sr-navigation__item-coach-number .sbb-sr-navigation__item-coach-travelclass {
329
- background-color: var(--sbb-background-color-2-inverted);
330
- }
331
-
332
- .sbb-sr-navigation--first-class {
333
- width: calc(100% - 8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
334
- position: absolute;
335
- inset-block-start: calc(3 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
336
- inset-inline-start: calc(4 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
337
- border: calc(1 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid transparent;
338
- border-radius: var(--sbb-border-radius-1x);
339
- margin: auto;
340
- background-color: var(--sbb-color-lemon);
341
- }
342
-
343
- .sbb-sr-navigation__item-coach-travelclass {
344
- display: flex;
345
- align-items: center;
346
- justify-content: center;
347
- min-height: calc(20 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
348
- min-width: calc(20 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
349
- border-radius: var(--sbb-border-radius-1x);
350
- text-align: center;
351
- background-color: var(--sbb-color-granite);
352
- background-color: light-dark(var(--sbb-color-granite), var(--sbb-color-graphite));
353
- color: var(--sbb-color-white);
354
- color: light-dark(var(--sbb-color-white), var(--sbb-color-black));
355
- }
356
- @media (forced-colors: active) {
357
- .sbb-sr-navigation__item-coach-travelclass {
358
- border: var(--sbb-border-width-1x) solid;
359
- }
360
- }
361
-
362
- :host([vertical]) .sbb-sr-navigation__item-coach {
363
- flex-direction: row;
364
- }
365
- :host([vertical]) .sbb-sr-navigation__item-coach .sbb-sr-navigation__ctrl-button {
366
- flex-direction: row-reverse;
367
- height: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
368
- min-width: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
369
- }
370
- :host([vertical]) .sbb-sr-navigation__item-coach .sbb-sr-navigation__additional-information {
371
- flex-direction: column-reverse;
372
- padding-block: calc(16 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
373
- padding-inline-start: unset;
374
- padding-inline-end: unset;
375
- }
376
- :host([vertical]) .sbb-sr-navigation__item-coach .sbb-sr-navigation--first-class {
377
- height: calc(100% - 8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
378
- width: initial;
379
- inset-inline-end: calc(3 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
380
- inset-block-start: calc(4 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
381
- inset-inline-start: initial;
382
- }
383
- :host([vertical]) .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation--first-class, :host([vertical]) .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation--first-class {
384
- height: calc(100% - 18 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
385
- }
386
- :host([vertical]) .sbb-sr-navigation__item-coach.first-coach:not(.last-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
387
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x);
388
- }
389
- :host([vertical]) .sbb-sr-navigation__item-coach.first-coach:not(.last-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area)::before {
390
- content: "";
391
- position: absolute;
392
- width: 100%;
393
- height: 100%;
394
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
395
- border-radius: var(--sbb-border-radius-8x) var(--sbb-border-radius-8x) var(--sbb-border-radius-2x) var(--sbb-border-radius-2x);
396
- }
397
- :host([vertical]) .sbb-sr-navigation__item-coach.first-coach:not(.last-coach) .sbb-sr-navigation--first-class {
398
- margin-block-start: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
399
- margin-inline-start: initial;
400
- }
401
- :host([vertical]) .sbb-sr-navigation__item-coach.last-coach:not(.first-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
402
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x);
403
- }
404
- :host([vertical]) .sbb-sr-navigation__item-coach.last-coach:not(.first-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area)::before {
405
- content: "";
406
- position: absolute;
407
- width: 100%;
408
- height: 100%;
409
- border: calc(var(--sbb-seat-reservation-navigation-btn-border-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-border-color);
410
- border-radius: var(--sbb-border-radius-2x) var(--sbb-border-radius-2x) var(--sbb-border-radius-8x) var(--sbb-border-radius-8x);
411
- }
412
- :host([vertical]) .sbb-sr-navigation__item-coach.last-coach:not(.first-coach) .sbb-sr-navigation--first-class {
413
- margin-block-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
414
- margin-inline-end: initial;
415
- }
416
- :host([vertical]) .sbb-sr-navigation__item-coach .sbb-sr-navigation-driver-area {
417
- height: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
418
- min-width: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
419
- }`;
420
- SbbSeatReservationNavigationServicesElement.define();
421
- let SbbSeatReservationNavigationCoachElement = (() => {
422
- var _selected_accessor_storage, _focused_accessor_storage, _hovered_accessor_storage, _nativeFocusActive_accessor_storage, _index_accessor_storage, _coachItemDetails_accessor_storage, _disable_accessor_storage, _vertical_accessor_storage, _showTitleInfo_accessor_storage, _a;
423
- let _classSuper = SbbElement;
424
- let _selected_decorators;
425
- let _selected_initializers = [];
426
- let _selected_extraInitializers = [];
427
- let _focused_decorators;
428
- let _focused_initializers = [];
429
- let _focused_extraInitializers = [];
430
- let _hovered_decorators;
431
- let _hovered_initializers = [];
432
- let _hovered_extraInitializers = [];
433
- let _nativeFocusActive_decorators;
434
- let _nativeFocusActive_initializers = [];
435
- let _nativeFocusActive_extraInitializers = [];
436
- let _index_decorators;
437
- let _index_initializers = [];
438
- let _index_extraInitializers = [];
439
- let _coachItemDetails_decorators;
440
- let _coachItemDetails_initializers = [];
441
- let _coachItemDetails_extraInitializers = [];
442
- let _disable_decorators;
443
- let _disable_initializers = [];
444
- let _disable_extraInitializers = [];
445
- let _vertical_decorators;
446
- let _vertical_initializers = [];
447
- let _vertical_extraInitializers = [];
448
- let _showTitleInfo_decorators;
449
- let _showTitleInfo_initializers = [];
450
- let _showTitleInfo_extraInitializers = [];
451
- return _a = class extends _classSuper {
452
- constructor() {
453
- super(...arguments);
454
- __privateAdd(this, _selected_accessor_storage);
455
- __privateAdd(this, _focused_accessor_storage);
456
- __privateAdd(this, _hovered_accessor_storage);
457
- __privateAdd(this, _nativeFocusActive_accessor_storage);
458
- __privateAdd(this, _index_accessor_storage);
459
- __privateAdd(this, _coachItemDetails_accessor_storage);
460
- __privateAdd(this, _disable_accessor_storage);
461
- __privateAdd(this, _vertical_accessor_storage);
462
- __privateAdd(this, _showTitleInfo_accessor_storage);
463
- __privateSet(this, _selected_accessor_storage, __runInitializers(this, _selected_initializers, false));
464
- __privateSet(this, _focused_accessor_storage, (__runInitializers(this, _selected_extraInitializers), __runInitializers(this, _focused_initializers, false)));
465
- __privateSet(this, _hovered_accessor_storage, (__runInitializers(this, _focused_extraInitializers), __runInitializers(this, _hovered_initializers, false)));
466
- __privateSet(this, _nativeFocusActive_accessor_storage, (__runInitializers(this, _hovered_extraInitializers), __runInitializers(this, _nativeFocusActive_initializers, true)));
467
- __privateSet(this, _index_accessor_storage, (__runInitializers(this, _nativeFocusActive_extraInitializers), __runInitializers(this, _index_initializers, 0)));
468
- __privateSet(this, _coachItemDetails_accessor_storage, (__runInitializers(this, _index_extraInitializers), __runInitializers(this, _coachItemDetails_initializers, {})));
469
- __privateSet(this, _disable_accessor_storage, (__runInitializers(this, _coachItemDetails_extraInitializers), __runInitializers(this, _disable_initializers, false)));
470
- __privateSet(this, _vertical_accessor_storage, (__runInitializers(this, _disable_extraInitializers), __runInitializers(this, _vertical_initializers, false)));
471
- __privateSet(this, _showTitleInfo_accessor_storage, (__runInitializers(this, _vertical_extraInitializers), __runInitializers(this, _showTitleInfo_initializers, false)));
472
- this._language = (__runInitializers(this, _showTitleInfo_extraInitializers), new SbbLanguageController(this));
473
- }
474
- /** Select coach property */
475
- get selected() {
476
- return __privateGet(this, _selected_accessor_storage);
477
- }
478
- set selected(value) {
479
- __privateSet(this, _selected_accessor_storage, value);
480
- }
481
- /** Focus coach property */
482
- get focused() {
483
- return __privateGet(this, _focused_accessor_storage);
484
- }
485
- set focused(value) {
486
- __privateSet(this, _focused_accessor_storage, value);
487
- }
488
- /** Hover coach property */
489
- get hovered() {
490
- return __privateGet(this, _hovered_accessor_storage);
491
- }
492
- set hovered(value) {
493
- __privateSet(this, _hovered_accessor_storage, value);
494
- }
495
- /** Native focus for this navigation coach is also set when the focused property is changed */
496
- get nativeFocusActive() {
497
- return __privateGet(this, _nativeFocusActive_accessor_storage);
498
- }
499
- set nativeFocusActive(value) {
500
- __privateSet(this, _nativeFocusActive_accessor_storage, value);
501
- }
502
- get index() {
503
- return __privateGet(this, _index_accessor_storage);
504
- }
505
- set index(value) {
506
- __privateSet(this, _index_accessor_storage, value);
507
- }
508
- get coachItemDetails() {
509
- return __privateGet(this, _coachItemDetails_accessor_storage);
510
- }
511
- set coachItemDetails(value) {
512
- __privateSet(this, _coachItemDetails_accessor_storage, value);
513
- }
514
- /** Disable the coach navigation */
515
- get disable() {
516
- return __privateGet(this, _disable_accessor_storage);
517
- }
518
- set disable(value) {
519
- __privateSet(this, _disable_accessor_storage, value);
520
- }
521
- /** If the coach navigation should be displayed vertically */
522
- get vertical() {
523
- return __privateGet(this, _vertical_accessor_storage);
524
- }
525
- set vertical(value) {
526
- __privateSet(this, _vertical_accessor_storage, value);
527
- }
528
- /** Disable the mouse over title information */
529
- get showTitleInfo() {
530
- return __privateGet(this, _showTitleInfo_accessor_storage);
531
- }
532
- set showTitleInfo(value) {
533
- __privateSet(this, _showTitleInfo_accessor_storage, value);
534
- }
535
- willUpdate(changedProperties) {
536
- super.willUpdate(changedProperties);
537
- if (changedProperties.has("selected")) {
538
- const selectedNavButtonElement = this.shadowRoot?.querySelector(".sbb-sr-navigation__ctrl-button");
539
- if (this.selected && selectedNavButtonElement) {
540
- if (this.nativeFocusActive) {
541
- selectedNavButtonElement.focus();
542
- }
543
- this.dispatchEvent(new Event("focuscoach", { bubbles: true, composed: true }));
544
- }
545
- }
546
- if (changedProperties.has("focused") && this.focused) {
547
- const focusedNavButtonElement = this.shadowRoot?.querySelector(".sbb-sr-navigation__ctrl-button");
548
- if (focusedNavButtonElement && this.nativeFocusActive) {
549
- focusedNavButtonElement.focus();
550
- }
551
- }
552
- }
553
- /**
554
- * Render a list of service icons provided by a caller
555
- *
556
- * @protected
557
- */
558
- render() {
559
- return html`
560
- <div
561
- class="${classMap({
562
- "sbb-sr-navigation__item-coach": true,
563
- "last-coach": this.coachItemDetails.driverAreaSide?.right || false,
564
- "first-coach": this.coachItemDetails.driverAreaSide?.left || false,
565
- "sbb-sr-navigation__item-coach--selected": this.selected,
566
- "sbb-sr-navigation__item-coach--focused": this.focused,
567
- "sbb-sr-navigation__item-coach--hovered": this.hovered
568
- })}"
569
- >
570
- ${this._getNavigationButton()}
571
- ${this.coachItemDetails.propertyIds?.length ? html`<sbb-seat-reservation-navigation-services
572
- ?vertical="${this.vertical}"
573
- .propertyIds="${this.coachItemDetails.propertyIds}"
574
- ?showTitleInfo="${this.showTitleInfo}"
575
- ></sbb-seat-reservation-navigation-services>` : nothing}
576
- </div>
577
- `;
578
- }
579
- _getNavigationButton() {
580
- const currServiceClassNumber = this._getCoachServiceClassNumber();
581
- const titleDescriptionNavCoachButton = this._getTitleDescriptionNavCoachButton(currServiceClassNumber);
582
- const ariaDescriptionCoachServices = this._getAriaDescriptionCoachServices();
583
- return html` <button
584
- @click=${() => this._selectNavCoach(this.index)}
585
- class="${classMap({
586
- "sbb-sr-navigation__ctrl-button": true,
587
- "sbb-sr-navigation-driver-area": this.coachItemDetails.isDriverArea
588
- })}"
589
- ?disabled="${this.disable}"
590
- title="${this.showTitleInfo ? titleDescriptionNavCoachButton : nothing}"
591
- type="button"
592
- aria-describedby="nav-coach-service-descriptions-${this.index}"
593
- >
594
- ${this._getBtnInformation(currServiceClassNumber)}
595
- <sbb-screen-reader-only id="nav-coach-service-descriptions-${this.index}">
596
- ${!this.showTitleInfo ? html`<div>${titleDescriptionNavCoachButton}</div>` : nothing}
597
- ${ariaDescriptionCoachServices ? html`<div>${ariaDescriptionCoachServices}</div>` : nothing}
598
- </sbb-screen-reader-only>
599
- </button>`;
600
- }
601
- _getBtnInformation(serviceClassNumber) {
602
- if (this.coachItemDetails.isDriverArea) {
603
- return null;
604
- }
605
- return html`
606
- ${serviceClassNumber === 1 ? html`<span class="sbb-sr-navigation--first-class"></span>` : nothing}
607
- ${this.coachItemDetails.travelClass?.length > 0 || this.coachItemDetails.id ? html`<div class="sbb-sr-navigation__additional-information">
608
- ${this.coachItemDetails.id ? html`<div class="sbb-sr-navigation__item-coach-number" aria-hidden="true">
609
- ${this.coachItemDetails.id}
610
- </div>` : nothing}
611
- <div
612
- ${serviceClassNumber ?? nothing}
613
- class="sbb-sr-navigation__item-coach-travelclass"
614
- aria-hidden="true"
615
- >
616
- ${serviceClassNumber}
617
- </div>
618
- </div>` : nothing}
619
- `;
620
- }
621
- _getTitleDescriptionNavCoachButton(serviceClassNumber) {
622
- if (this.coachItemDetails.isDriverArea && !this.coachItemDetails.driverAreaElements?.driverAreaNoVerticalWall) {
623
- return getI18nSeatReservation("NAVIGATE_COACH_BLOCKED", this._language.current, [
624
- this.coachItemDetails.id
625
- ]);
626
- }
627
- if (this.coachItemDetails.driverAreaElements?.driverAreaNoVerticalWall) {
628
- return getI18nSeatReservation("COACH_LOCOMOTIVE", this._language.current);
629
- }
630
- let label = getI18nSeatReservation("NAVIGATE_TO_COACH", this._language.current, [
631
- this.coachItemDetails.id
632
- ]);
633
- if (serviceClassNumber) {
634
- const serviceClassTranslationKey = serviceClassNumber === 1 ? "SERVICE_CLASS_FIRST" : "SERVICE_CLASS_SECOND";
635
- const serviceClassTranslation = getI18nSeatReservation(serviceClassTranslationKey, this._language.current);
636
- const serviceClassLabel = getI18nSeatReservation("NAVIGATE_TO_COACH_SERVICE_CLASS_SUB", this._language.current, [serviceClassTranslation]);
637
- label = label.concat(serviceClassLabel);
638
- }
639
- const freePlacesTxt = getI18nSeatReservation("COACH_AVAILABLE_NUMBER_OF_PLACES", this._language.current, [this.coachItemDetails.freePlaces?.seats, this.coachItemDetails.freePlaces?.bicycles]);
640
- label = label.concat(". ").concat(freePlacesTxt);
641
- return label;
642
- }
643
- _getAriaDescriptionCoachServices() {
644
- let ariaDescription = null;
645
- if (this.coachItemDetails.propertyIds?.length) {
646
- ariaDescription = getI18nSeatReservation("COACH_AVAILABLE_SERVICES", this._language.current) + ": ";
647
- ariaDescription += this.coachItemDetails.propertyIds.map((propertyId) => getI18nSeatReservation(propertyId, this._language.current)).join() + ".";
648
- }
649
- return ariaDescription;
650
- }
651
- /**
652
- * emits the index of the coach array for the main navigation.
653
- * @param coachIndex
654
- * @private
655
- */
656
- _selectNavCoach(coachIndex) {
657
- this.dispatchEvent(new CustomEvent("selectcoach", {
658
- bubbles: true,
659
- composed: true,
660
- detail: coachIndex
661
- }));
662
- }
663
- _getCoachServiceClassNumber() {
664
- return this.coachItemDetails.travelClass?.includes("FIRST") ? 1 : this.coachItemDetails.travelClass?.includes("SECOND") ? 2 : null;
665
- }
666
- }, _selected_accessor_storage = new WeakMap(), _focused_accessor_storage = new WeakMap(), _hovered_accessor_storage = new WeakMap(), _nativeFocusActive_accessor_storage = new WeakMap(), _index_accessor_storage = new WeakMap(), _coachItemDetails_accessor_storage = new WeakMap(), _disable_accessor_storage = new WeakMap(), _vertical_accessor_storage = new WeakMap(), _showTitleInfo_accessor_storage = new WeakMap(), (() => {
667
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
668
- _selected_decorators = [forceType(), property({ type: Boolean })];
669
- _focused_decorators = [forceType(), property({ type: Boolean })];
670
- _hovered_decorators = [forceType(), property({ type: Boolean })];
671
- _nativeFocusActive_decorators = [forceType(), property({ type: Boolean })];
672
- _index_decorators = [forceType(), property({ type: Number })];
673
- _coachItemDetails_decorators = [property({ attribute: "coach-item-details", type: Object })];
674
- _disable_decorators = [forceType(), property({ attribute: "disable", type: Boolean })];
675
- _vertical_decorators = [forceType(), property({ type: Boolean, reflect: true, useDefault: true })];
676
- _showTitleInfo_decorators = [forceType(), property({ type: Boolean })];
677
- __esDecorate(_a, null, _selected_decorators, { kind: "accessor", name: "selected", static: false, private: false, access: { has: (obj) => "selected" in obj, get: (obj) => obj.selected, set: (obj, value) => {
678
- obj.selected = value;
679
- } }, metadata: _metadata }, _selected_initializers, _selected_extraInitializers);
680
- __esDecorate(_a, null, _focused_decorators, { kind: "accessor", name: "focused", static: false, private: false, access: { has: (obj) => "focused" in obj, get: (obj) => obj.focused, set: (obj, value) => {
681
- obj.focused = value;
682
- } }, metadata: _metadata }, _focused_initializers, _focused_extraInitializers);
683
- __esDecorate(_a, null, _hovered_decorators, { kind: "accessor", name: "hovered", static: false, private: false, access: { has: (obj) => "hovered" in obj, get: (obj) => obj.hovered, set: (obj, value) => {
684
- obj.hovered = value;
685
- } }, metadata: _metadata }, _hovered_initializers, _hovered_extraInitializers);
686
- __esDecorate(_a, null, _nativeFocusActive_decorators, { kind: "accessor", name: "nativeFocusActive", static: false, private: false, access: { has: (obj) => "nativeFocusActive" in obj, get: (obj) => obj.nativeFocusActive, set: (obj, value) => {
687
- obj.nativeFocusActive = value;
688
- } }, metadata: _metadata }, _nativeFocusActive_initializers, _nativeFocusActive_extraInitializers);
689
- __esDecorate(_a, null, _index_decorators, { kind: "accessor", name: "index", static: false, private: false, access: { has: (obj) => "index" in obj, get: (obj) => obj.index, set: (obj, value) => {
690
- obj.index = value;
691
- } }, metadata: _metadata }, _index_initializers, _index_extraInitializers);
692
- __esDecorate(_a, null, _coachItemDetails_decorators, { kind: "accessor", name: "coachItemDetails", static: false, private: false, access: { has: (obj) => "coachItemDetails" in obj, get: (obj) => obj.coachItemDetails, set: (obj, value) => {
693
- obj.coachItemDetails = value;
694
- } }, metadata: _metadata }, _coachItemDetails_initializers, _coachItemDetails_extraInitializers);
695
- __esDecorate(_a, null, _disable_decorators, { kind: "accessor", name: "disable", static: false, private: false, access: { has: (obj) => "disable" in obj, get: (obj) => obj.disable, set: (obj, value) => {
696
- obj.disable = value;
697
- } }, metadata: _metadata }, _disable_initializers, _disable_extraInitializers);
698
- __esDecorate(_a, null, _vertical_decorators, { kind: "accessor", name: "vertical", static: false, private: false, access: { has: (obj) => "vertical" in obj, get: (obj) => obj.vertical, set: (obj, value) => {
699
- obj.vertical = value;
700
- } }, metadata: _metadata }, _vertical_initializers, _vertical_extraInitializers);
701
- __esDecorate(_a, null, _showTitleInfo_decorators, { kind: "accessor", name: "showTitleInfo", static: false, private: false, access: { has: (obj) => "showTitleInfo" in obj, get: (obj) => obj.showTitleInfo, set: (obj, value) => {
702
- obj.showTitleInfo = value;
703
- } }, metadata: _metadata }, _showTitleInfo_initializers, _showTitleInfo_extraInitializers);
704
- if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
705
- })(), _a.elementName = "sbb-seat-reservation-navigation-coach", _a.styles = [boxSizingStyles, style], _a.events = {
706
- selectcoach: "selectcoach",
707
- focuscoach: "focuscoach"
708
- }, _a;
709
- })();
710
- export {
711
- SbbSeatReservationNavigationCoachElement
712
- };
713
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhdC1yZXNlcnZhdGlvbi1uYXZpZ2F0aW9uLWNvYWNoLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9zZWF0LXJlc2VydmF0aW9uL3NlYXQtcmVzZXJ2YXRpb24tbmF2aWdhdGlvbi1jb2FjaC9zZWF0LXJlc2VydmF0aW9uLW5hdmlnYXRpb24tY29hY2guY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNiYkVsZW1lbnQgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9zdHlsZXMuanMnO1xuaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgbm90aGluZywgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9jbGFzcy1tYXAuanMnO1xuXG5pbXBvcnQgeyBnZXRJMThuU2VhdFJlc2VydmF0aW9uIH0gZnJvbSAnLi4vY29tbW9uL3RyYW5zbGF0aW9ucy50cyc7XG5pbXBvcnQgdHlwZSB7IENvYWNoSXRlbURldGFpbHMgfSBmcm9tICcuLi9jb21tb24vdHlwZXMudHMnO1xuaW1wb3J0IHsgU2JiU2VhdFJlc2VydmF0aW9uTmF2aWdhdGlvblNlcnZpY2VzRWxlbWVudCB9IGZyb20gJy4uL3NlYXQtcmVzZXJ2YXRpb24tbmF2aWdhdGlvbi1zZXJ2aWNlcy9zZWF0LXJlc2VydmF0aW9uLW5hdmlnYXRpb24tc2VydmljZXMuY29tcG9uZW50LnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2VhdC1yZXNlcnZhdGlvbi1uYXZpZ2F0aW9uLWNvYWNoLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcblxuU2JiU2VhdFJlc2VydmF0aW9uTmF2aWdhdGlvblNlcnZpY2VzRWxlbWVudC5kZWZpbmUoKTtcblxuZXhwb3J0IHR5cGUgU2VsZWN0Q29hY2hFdmVudERldGFpbHMgPSBudW1iZXI7XG5cbi8qKlxuICogVGhpcyBjb21wb25lbnQgd2lsbCBkaXNwbGF5IHRoZSBuYXZpZ2F0aW9uIGNvYWNoIGl0ZW0gZm9yIFNlYXQgcmVzZXJ2YXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJTZWF0UmVzZXJ2YXRpb25OYXZpZ2F0aW9uQ29hY2hFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItc2VhdC1yZXNlcnZhdGlvbi1uYXZpZ2F0aW9uLWNvYWNoJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBzZWxlY3Rjb2FjaDogJ3NlbGVjdGNvYWNoJyxcbiAgICBmb2N1c2NvYWNoOiAnZm9jdXNjb2FjaCcsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFNlbGVjdCBjb2FjaCBwcm9wZXJ0eSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3Igc2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogRm9jdXMgY29hY2ggcHJvcGVydHkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogSG92ZXIgY29hY2ggcHJvcGVydHkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGhvdmVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogTmF0aXZlIGZvY3VzIGZvciB0aGlzIG5hdmlnYXRpb24gY29hY2ggaXMgYWxzbyBzZXQgd2hlbiB0aGUgZm9jdXNlZCBwcm9wZXJ0eSBpcyBjaGFuZ2VkICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBuYXRpdmVGb2N1c0FjdGl2ZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IE51bWJlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgaW5kZXg6IG51bWJlciA9IDA7XG5cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnY29hY2gtaXRlbS1kZXRhaWxzJywgdHlwZTogT2JqZWN0IH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBjb2FjaEl0ZW1EZXRhaWxzOiBDb2FjaEl0ZW1EZXRhaWxzID0gPENvYWNoSXRlbURldGFpbHM+e307XG5cbiAgLyoqIERpc2FibGUgdGhlIGNvYWNoIG5hdmlnYXRpb24gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUnLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBkaXNhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIElmIHRoZSBjb2FjaCBuYXZpZ2F0aW9uIHNob3VsZCBiZSBkaXNwbGF5ZWQgdmVydGljYWxseSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSwgdXNlRGVmYXVsdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgdmVydGljYWw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogRGlzYWJsZSB0aGUgbW91c2Ugb3ZlciB0aXRsZSBpbmZvcm1hdGlvbiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3Igc2hvd1RpdGxlSW5mbzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3NlbGVjdGVkJykpIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkTmF2QnV0dG9uRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICAgJy5zYmItc3ItbmF2aWdhdGlvbl9fY3RybC1idXR0b24nLFxuICAgICAgKSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkICYmIHNlbGVjdGVkTmF2QnV0dG9uRWxlbWVudCkge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVGb2N1c0FjdGl2ZSkge1xuICAgICAgICAgIHNlbGVjdGVkTmF2QnV0dG9uRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICAgIC8qKiBFbWl0cyB3aGVuIGEgbmF2IGNvYWNoIGhhcyB0aGUgZm9jdXMgKi9cbiAgICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZm9jdXNjb2FjaCcsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2ZvY3VzZWQnKSAmJiB0aGlzLmZvY3VzZWQpIHtcbiAgICAgIGNvbnN0IGZvY3VzZWROYXZCdXR0b25FbGVtZW50ID0gdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAnLnNiYi1zci1uYXZpZ2F0aW9uX19jdHJsLWJ1dHRvbicsXG4gICAgICApIGFzIEhUTUxCdXR0b25FbGVtZW50O1xuXG4gICAgICBpZiAoZm9jdXNlZE5hdkJ1dHRvbkVsZW1lbnQgJiYgdGhpcy5uYXRpdmVGb2N1c0FjdGl2ZSkge1xuICAgICAgICBmb2N1c2VkTmF2QnV0dG9uRWxlbWVudC5mb2N1cygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgYSBsaXN0IG9mIHNlcnZpY2UgaWNvbnMgcHJvdmlkZWQgYnkgYSBjYWxsZXJcbiAgICpcbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiJHtjbGFzc01hcCh7XG4gICAgICAgICAgJ3NiYi1zci1uYXZpZ2F0aW9uX19pdGVtLWNvYWNoJzogdHJ1ZSxcbiAgICAgICAgICAnbGFzdC1jb2FjaCc6IHRoaXMuY29hY2hJdGVtRGV0YWlscy5kcml2ZXJBcmVhU2lkZT8ucmlnaHQgfHwgZmFsc2UsXG4gICAgICAgICAgJ2ZpcnN0LWNvYWNoJzogdGhpcy5jb2FjaEl0ZW1EZXRhaWxzLmRyaXZlckFyZWFTaWRlPy5sZWZ0IHx8IGZhbHNlLFxuICAgICAgICAgICdzYmItc3ItbmF2aWdhdGlvbl9faXRlbS1jb2FjaC0tc2VsZWN0ZWQnOiB0aGlzLnNlbGVjdGVkLFxuICAgICAgICAgICdzYmItc3ItbmF2aWdhdGlvbl9faXRlbS1jb2FjaC0tZm9jdXNlZCc6IHRoaXMuZm9jdXNlZCxcbiAgICAgICAgICAnc2JiLXNyLW5hdmlnYXRpb25fX2l0ZW0tY29hY2gtLWhvdmVyZWQnOiB0aGlzLmhvdmVyZWQsXG4gICAgICAgIH0pfVwiXG4gICAgICA+XG4gICAgICAgICR7dGhpcy5fZ2V0TmF2aWdhdGlvbkJ1dHRvbigpfVxuICAgICAgICAke3RoaXMuY29hY2hJdGVtRGV0YWlscy5wcm9wZXJ0eUlkcz8ubGVuZ3RoXG4gICAgICAgICAgPyBodG1sYDxzYmItc2VhdC1yZXNlcnZhdGlvbi1uYXZpZ2F0aW9uLXNlcnZpY2VzXG4gICAgICAgICAgICAgID92ZXJ0aWNhbD1cIiR7dGhpcy52ZXJ0aWNhbH1cIlxuICAgICAgICAgICAgICAucHJvcGVydHlJZHM9XCIke3RoaXMuY29hY2hJdGVtRGV0YWlscy5wcm9wZXJ0eUlkc31cIlxuICAgICAgICAgICAgICA/c2hvd1RpdGxlSW5mbz1cIiR7dGhpcy5zaG93VGl0bGVJbmZvfVwiXG4gICAgICAgICAgICA+PC9zYmItc2VhdC1yZXNlcnZhdGlvbi1uYXZpZ2F0aW9uLXNlcnZpY2VzPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TmF2aWdhdGlvbkJ1dHRvbigpOiBUZW1wbGF0ZVJlc3VsdCB8IG51bGwge1xuICAgIGNvbnN0IGN1cnJTZXJ2aWNlQ2xhc3NOdW1iZXIgPSB0aGlzLl9nZXRDb2FjaFNlcnZpY2VDbGFzc051bWJlcigpO1xuICAgIGNvbnN0IHRpdGxlRGVzY3JpcHRpb25OYXZDb2FjaEJ1dHRvbiA9XG4gICAgICB0aGlzLl9nZXRUaXRsZURlc2NyaXB0aW9uTmF2Q29hY2hCdXR0b24oY3VyclNlcnZpY2VDbGFzc051bWJlcik7XG4gICAgY29uc3QgYXJpYURlc2NyaXB0aW9uQ29hY2hTZXJ2aWNlcyA9IHRoaXMuX2dldEFyaWFEZXNjcmlwdGlvbkNvYWNoU2VydmljZXMoKTtcblxuICAgIHJldHVybiBodG1sYCA8YnV0dG9uXG4gICAgICBAY2xpY2s9JHsoKSA9PiB0aGlzLl9zZWxlY3ROYXZDb2FjaCh0aGlzLmluZGV4KX1cbiAgICAgIGNsYXNzPVwiJHtjbGFzc01hcCh7XG4gICAgICAgICdzYmItc3ItbmF2aWdhdGlvbl9fY3RybC1idXR0b24nOiB0cnVlLFxuICAgICAgICAnc2JiLXNyLW5hdmlnYXRpb24tZHJpdmVyLWFyZWEnOiB0aGlzLmNvYWNoSXRlbURldGFpbHMuaXNEcml2ZXJBcmVhLFxuICAgICAgfSl9XCJcbiAgICAgID9kaXNhYmxlZD1cIiR7dGhpcy5kaXNhYmxlfVwiXG4gICAgICB0aXRsZT1cIiR7dGhpcy5zaG93VGl0bGVJbmZvID8gdGl0bGVEZXNjcmlwdGlvbk5hdkNvYWNoQnV0dG9uIDogbm90aGluZ31cIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBhcmlhLWRlc2NyaWJlZGJ5PVwibmF2LWNvYWNoLXNlcnZpY2UtZGVzY3JpcHRpb25zLSR7dGhpcy5pbmRleH1cIlxuICAgID5cbiAgICAgICR7dGhpcy5fZ2V0QnRuSW5mb3JtYXRpb24oY3VyclNlcnZpY2VDbGFzc051bWJlcil9XG4gICAgICA8c2JiLXNjcmVlbi1yZWFkZXItb25seSBpZD1cIm5hdi1jb2FjaC1zZXJ2aWNlLWRlc2NyaXB0aW9ucy0ke3RoaXMuaW5kZXh9XCI+XG4gICAgICAgICR7IXRoaXMuc2hvd1RpdGxlSW5mbyA/IGh0bWxgPGRpdj4ke3RpdGxlRGVzY3JpcHRpb25OYXZDb2FjaEJ1dHRvbn08L2Rpdj5gIDogbm90aGluZ31cbiAgICAgICAgJHthcmlhRGVzY3JpcHRpb25Db2FjaFNlcnZpY2VzID8gaHRtbGA8ZGl2PiR7YXJpYURlc2NyaXB0aW9uQ29hY2hTZXJ2aWNlc308L2Rpdj5gIDogbm90aGluZ31cbiAgICAgIDwvc2JiLXNjcmVlbi1yZWFkZXItb25seT5cbiAgICA8L2J1dHRvbj5gO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QnRuSW5mb3JtYXRpb24oc2VydmljZUNsYXNzTnVtYmVyOiBudW1iZXIgfCBudWxsKTogVGVtcGxhdGVSZXN1bHQgfCBudWxsIHtcbiAgICBpZiAodGhpcy5jb2FjaEl0ZW1EZXRhaWxzLmlzRHJpdmVyQXJlYSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke3NlcnZpY2VDbGFzc051bWJlciA9PT0gMVxuICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItc3ItbmF2aWdhdGlvbi0tZmlyc3QtY2xhc3NcIj48L3NwYW4+YFxuICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAke3RoaXMuY29hY2hJdGVtRGV0YWlscy50cmF2ZWxDbGFzcz8ubGVuZ3RoID4gMCB8fCB0aGlzLmNvYWNoSXRlbURldGFpbHMuaWRcbiAgICAgICAgPyBodG1sYDxkaXYgY2xhc3M9XCJzYmItc3ItbmF2aWdhdGlvbl9fYWRkaXRpb25hbC1pbmZvcm1hdGlvblwiPlxuICAgICAgICAgICAgJHt0aGlzLmNvYWNoSXRlbURldGFpbHMuaWRcbiAgICAgICAgICAgICAgPyBodG1sYDxkaXYgY2xhc3M9XCJzYmItc3ItbmF2aWdhdGlvbl9faXRlbS1jb2FjaC1udW1iZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy5jb2FjaEl0ZW1EZXRhaWxzLmlkfVxuICAgICAgICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAke3NlcnZpY2VDbGFzc051bWJlciA/PyBub3RoaW5nfVxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1zci1uYXZpZ2F0aW9uX19pdGVtLWNvYWNoLXRyYXZlbGNsYXNzXCJcbiAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgJHtzZXJ2aWNlQ2xhc3NOdW1iZXJ9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5gXG4gICAgICAgIDogbm90aGluZ31cbiAgICBgO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VGl0bGVEZXNjcmlwdGlvbk5hdkNvYWNoQnV0dG9uKHNlcnZpY2VDbGFzc051bWJlcjogbnVtYmVyIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5jb2FjaEl0ZW1EZXRhaWxzLmlzRHJpdmVyQXJlYSAmJlxuICAgICAgIXRoaXMuY29hY2hJdGVtRGV0YWlscy5kcml2ZXJBcmVhRWxlbWVudHM/LmRyaXZlckFyZWFOb1ZlcnRpY2FsV2FsbFxuICAgICkge1xuICAgICAgcmV0dXJuIGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oJ05BVklHQVRFX0NPQUNIX0JMT0NLRUQnLCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LCBbXG4gICAgICAgIHRoaXMuY29hY2hJdGVtRGV0YWlscy5pZCxcbiAgICAgIF0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvYWNoSXRlbURldGFpbHMuZHJpdmVyQXJlYUVsZW1lbnRzPy5kcml2ZXJBcmVhTm9WZXJ0aWNhbFdhbGwpIHtcbiAgICAgIHJldHVybiBnZXRJMThuU2VhdFJlc2VydmF0aW9uKCdDT0FDSF9MT0NPTU9USVZFJywgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCk7XG4gICAgfVxuXG4gICAgbGV0IGxhYmVsID0gZ2V0STE4blNlYXRSZXNlcnZhdGlvbignTkFWSUdBVEVfVE9fQ09BQ0gnLCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LCBbXG4gICAgICB0aGlzLmNvYWNoSXRlbURldGFpbHMuaWQsXG4gICAgXSk7XG5cbiAgICAvL0lmIHNlcnZpY2UgY2xhc3MgZXhpc3QsIHRoZW4gZXhwYW5kIGxhYmVsIHdpdGggc2VydmljZSBjbGFzcyB0cmFuc2xhdGlvblxuICAgIGlmIChzZXJ2aWNlQ2xhc3NOdW1iZXIpIHtcbiAgICAgIGNvbnN0IHNlcnZpY2VDbGFzc1RyYW5zbGF0aW9uS2V5ID1cbiAgICAgICAgc2VydmljZUNsYXNzTnVtYmVyID09PSAxID8gJ1NFUlZJQ0VfQ0xBU1NfRklSU1QnIDogJ1NFUlZJQ0VfQ0xBU1NfU0VDT05EJztcbiAgICAgIGNvbnN0IHNlcnZpY2VDbGFzc1RyYW5zbGF0aW9uID0gZ2V0STE4blNlYXRSZXNlcnZhdGlvbihcbiAgICAgICAgc2VydmljZUNsYXNzVHJhbnNsYXRpb25LZXksXG4gICAgICAgIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQsXG4gICAgICApO1xuICAgICAgY29uc3Qgc2VydmljZUNsYXNzTGFiZWwgPSBnZXRJMThuU2VhdFJlc2VydmF0aW9uKFxuICAgICAgICAnTkFWSUdBVEVfVE9fQ09BQ0hfU0VSVklDRV9DTEFTU19TVUInLFxuICAgICAgICB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LFxuICAgICAgICBbc2VydmljZUNsYXNzVHJhbnNsYXRpb25dLFxuICAgICAgKTtcbiAgICAgIGxhYmVsID0gbGFiZWwuY29uY2F0KHNlcnZpY2VDbGFzc0xhYmVsKTtcbiAgICB9XG5cbiAgICAvLyBFeHBhbmRzIHRoZSBudW1iZXIgb2YgYXZhaWxhYmxlIHNlYXRzIGFuZCBiaWN5Y2xlIHNwYWNlcyBhcyBpbmZvXG4gICAgY29uc3QgZnJlZVBsYWNlc1R4dCA9IGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oXG4gICAgICAnQ09BQ0hfQVZBSUxBQkxFX05VTUJFUl9PRl9QTEFDRVMnLFxuICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCxcbiAgICAgIFt0aGlzLmNvYWNoSXRlbURldGFpbHMuZnJlZVBsYWNlcz8uc2VhdHMsIHRoaXMuY29hY2hJdGVtRGV0YWlscy5mcmVlUGxhY2VzPy5iaWN5Y2xlc10sXG4gICAgKTtcbiAgICBsYWJlbCA9IGxhYmVsLmNvbmNhdCgnLiAnKS5jb25jYXQoZnJlZVBsYWNlc1R4dCk7XG4gICAgcmV0dXJuIGxhYmVsO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QXJpYURlc2NyaXB0aW9uQ29hY2hTZXJ2aWNlcygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBsZXQgYXJpYURlc2NyaXB0aW9uID0gbnVsbDtcbiAgICBpZiAodGhpcy5jb2FjaEl0ZW1EZXRhaWxzLnByb3BlcnR5SWRzPy5sZW5ndGgpIHtcbiAgICAgIGFyaWFEZXNjcmlwdGlvbiA9XG4gICAgICAgIGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oJ0NPQUNIX0FWQUlMQUJMRV9TRVJWSUNFUycsIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpICsgJzogJztcbiAgICAgIGFyaWFEZXNjcmlwdGlvbiArPVxuICAgICAgICB0aGlzLmNvYWNoSXRlbURldGFpbHMucHJvcGVydHlJZHNcbiAgICAgICAgICAubWFwKChwcm9wZXJ0eUlkKSA9PiBnZXRJMThuU2VhdFJlc2VydmF0aW9uKHByb3BlcnR5SWQsIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpKVxuICAgICAgICAgIC5qb2luKCkgKyAnLic7XG4gICAgfVxuICAgIHJldHVybiBhcmlhRGVzY3JpcHRpb247XG4gIH1cblxuICAvKipcbiAgICogZW1pdHMgdGhlIGluZGV4IG9mIHRoZSBjb2FjaCBhcnJheSBmb3IgdGhlIG1haW4gbmF2aWdhdGlvbi5cbiAgICogQHBhcmFtIGNvYWNoSW5kZXhcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgX3NlbGVjdE5hdkNvYWNoKGNvYWNoSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIEB0eXBlIHtDdXN0b21FdmVudDxTZWxlY3RDb2FjaEV2ZW50RGV0YWlscz59XG4gICAgICogRW1pdHMgd2hlbiBhIGNvYWNoIHdpdGhpbiB0aGUgbmF2aWdhdGlvbiB3YXMgc2VsZWN0ZWQgYW5kIHJldHVybnMgdGhlIGNsaWNrZWQgY29hY2ggbmF2IGluZGV4LlxuICAgICAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudDxTZWxlY3RDb2FjaEV2ZW50RGV0YWlscz4oJ3NlbGVjdGNvYWNoJywge1xuICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICBjb21wb3NlZDogdHJ1ZSxcbiAgICAgICAgZGV0YWlsOiBjb2FjaEluZGV4LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvYWNoU2VydmljZUNsYXNzTnVtYmVyKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNvYWNoSXRlbURldGFpbHMudHJhdmVsQ2xhc3M/LmluY2x1ZGVzKCdGSVJTVCcpXG4gICAgICA/IDFcbiAgICAgIDogdGhpcy5jb2FjaEl0ZW1EZXRhaWxzLnRyYXZlbENsYXNzPy5pbmNsdWRlcygnU0VDT05EJylcbiAgICAgICAgPyAyXG4gICAgICAgIDogbnVsbDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXNlYXQtcmVzZXJ2YXRpb24tbmF2aWdhdGlvbi1jb2FjaCc6IFNiYlNlYXRSZXNlcnZhdGlvbk5hdmlnYXRpb25Db2FjaEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
1
+ import { t as SbbSeatReservationNavigationCoachElement } from "../../seat-reservation-navigation-coach.component-D6Bglus8.js";
2
+ export { SbbSeatReservationNavigationCoachElement };