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