@sbb-esta/lyne-elements-experimental 5.0.2 → 5.1.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 (256) hide show
  1. package/autocomplete-grid.js +1 -10
  2. package/autocomplete-grid.pure.js +12 -7
  3. package/core.js +31 -5
  4. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +0 -1
  5. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +4 -5
  6. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +1 -2
  7. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts +2 -3
  8. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +1 -2
  9. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +1 -2
  10. package/development/autocomplete-grid.d.ts +0 -1
  11. package/development/autocomplete-grid.js +5 -10
  12. package/development/autocomplete-grid.pure.d.ts +0 -1
  13. package/development/autocomplete-grid.pure.js +328 -7
  14. package/development/core/datetime/date-helper.d.ts +0 -1
  15. package/development/core/timetable/access-leg-helper.d.ts +3 -3
  16. package/development/core/timetable/timetable-helper.d.ts +1 -2
  17. package/development/core/timetable/timetable-properties.d.ts +2 -1
  18. package/development/core.d.ts +0 -1
  19. package/development/core.js +1195 -5
  20. package/development/journey-summary/journey-summary.component.d.ts +3 -4
  21. package/development/journey-summary.d.ts +0 -1
  22. package/development/journey-summary.js +5 -5
  23. package/development/journey-summary.pure.d.ts +0 -1
  24. package/development/journey-summary.pure.js +2605 -2
  25. package/development/pearl-chain/pearl-chain.component.d.ts +2 -3
  26. package/development/pearl-chain-time/pearl-chain-time.component.d.ts +3 -4
  27. package/development/pearl-chain-time.d.ts +0 -1
  28. package/development/pearl-chain-time.js +5 -5
  29. package/development/pearl-chain-time.pure.d.ts +0 -1
  30. package/development/pearl-chain-time.pure.js +2582 -2
  31. package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts +1 -2
  32. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts +1 -2
  33. package/development/pearl-chain-vertical-item.d.ts +0 -1
  34. package/development/pearl-chain-vertical-item.js +5 -5
  35. package/development/pearl-chain-vertical-item.pure.d.ts +0 -1
  36. package/development/pearl-chain-vertical-item.pure.js +132 -2
  37. package/development/pearl-chain-vertical.d.ts +0 -1
  38. package/development/pearl-chain-vertical.js +5 -5
  39. package/development/pearl-chain-vertical.pure.d.ts +0 -1
  40. package/development/pearl-chain-vertical.pure.js +31 -2
  41. package/development/pearl-chain.d.ts +0 -1
  42. package/development/pearl-chain.js +5 -5
  43. package/development/pearl-chain.pure.d.ts +0 -1
  44. package/development/pearl-chain.pure.js +619 -2
  45. package/development/seat-reservation/common/mapper/icon-mapper.d.ts +0 -1
  46. package/development/seat-reservation/common/mapper/mapper.d.ts +1 -2
  47. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.private.d.ts +68 -0
  48. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.private.d.ts +122 -0
  49. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.private.d.ts +68 -0
  50. package/development/seat-reservation/common/mapper.d.ts +0 -1
  51. package/development/seat-reservation/common/svgs.d.ts +20 -21
  52. package/development/seat-reservation/common/translations/i18n.d.ts +0 -1
  53. package/development/seat-reservation/common/translations.d.ts +0 -1
  54. package/development/seat-reservation/common/types.d.ts +0 -1
  55. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +2 -3
  56. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +2 -3
  57. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts +1 -2
  58. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts +2 -3
  59. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +3 -4
  60. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts +2 -3
  61. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +3 -4
  62. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts +1 -2
  63. package/development/seat-reservation.d.ts +0 -1
  64. package/development/seat-reservation.js +5 -16
  65. package/development/seat-reservation.pure.d.ts +0 -1
  66. package/development/seat-reservation.pure.js +16019 -14
  67. package/development/timetable-duration/timetable-duration.component.d.ts +1 -2
  68. package/development/timetable-duration.d.ts +0 -1
  69. package/development/timetable-duration.js +5 -5
  70. package/development/timetable-duration.pure.d.ts +0 -1
  71. package/development/timetable-duration.pure.js +97 -2
  72. package/development/timetable-row/timetable-row.component.d.ts +3 -4
  73. package/development/timetable-row.d.ts +0 -1
  74. package/development/timetable-row.js +5 -5
  75. package/development/timetable-row.pure.d.ts +0 -1
  76. package/development/timetable-row.pure.js +3005 -2
  77. package/journey-summary.js +1 -6
  78. package/journey-summary.pure.js +55 -2
  79. package/package.json +2 -2
  80. package/pearl-chain-time.js +1 -6
  81. package/pearl-chain-time.pure.js +28 -2
  82. package/pearl-chain-vertical-item.js +1 -6
  83. package/pearl-chain-vertical-item.pure.js +26 -2
  84. package/pearl-chain-vertical.js +1 -6
  85. package/pearl-chain-vertical.pure.js +6 -2
  86. package/pearl-chain.js +1 -6
  87. package/pearl-chain.pure.js +27 -2
  88. package/seat-reservation.js +1 -16
  89. package/seat-reservation.pure.js +468 -14
  90. package/timetable-duration.js +1 -6
  91. package/timetable-duration.pure.js +9 -2
  92. package/timetable-row.js +1 -6
  93. package/timetable-row.pure.js +113 -2
  94. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +0 -65
  95. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +0 -44
  96. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +0 -2
  97. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +0 -21
  98. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +0 -2
  99. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +0 -2
  100. package/autocomplete-grid-cell.component-79IjA__I.js +0 -23
  101. package/autocomplete-grid-option.component-DUFBhQwI.js +0 -35
  102. package/autocomplete-grid-row.component-B3U15Rwa.js +0 -26
  103. package/core/datetime/date-helper.js +0 -2
  104. package/core/timetable/access-leg-helper.js +0 -96
  105. package/core/timetable/timetable-helper.js +0 -10
  106. package/core/timetable/timetable-properties.js +0 -0
  107. package/date-helper-DNzMLcyb.js +0 -185
  108. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +0 -1
  109. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +0 -118
  110. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +0 -1
  111. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +0 -69
  112. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +0 -1
  113. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +0 -2
  114. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.d.ts.map +0 -1
  115. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +0 -30
  116. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +0 -1
  117. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +0 -2
  118. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +0 -1
  119. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +0 -2
  120. package/development/autocomplete-grid-cell.component-BbdELDro.js +0 -33
  121. package/development/autocomplete-grid-option.component-C7WuqRit.js +0 -57
  122. package/development/autocomplete-grid-row.component-DoXbOsQM.js +0 -38
  123. package/development/autocomplete-grid.d.ts.map +0 -1
  124. package/development/autocomplete-grid.pure.d.ts.map +0 -1
  125. package/development/core/datetime/date-helper.d.ts.map +0 -1
  126. package/development/core/datetime/date-helper.js +0 -2
  127. package/development/core/timetable/access-leg-helper.d.ts.map +0 -1
  128. package/development/core/timetable/access-leg-helper.js +0 -147
  129. package/development/core/timetable/timetable-helper.d.ts.map +0 -1
  130. package/development/core/timetable/timetable-helper.js +0 -19
  131. package/development/core/timetable/timetable-properties.d.ts.map +0 -1
  132. package/development/core/timetable/timetable-properties.js +0 -0
  133. package/development/core.d.ts.map +0 -1
  134. package/development/date-helper-BcTDWVeP.js +0 -539
  135. package/development/differenceInMinutes-CxAbGYQ3.js +0 -110
  136. package/development/format-Cx3zmmaF.js +0 -1848
  137. package/development/isValid-40Olgzo1.js +0 -178
  138. package/development/journey-summary/journey-summary.component.d.ts.map +0 -1
  139. package/development/journey-summary/journey-summary.component.js +0 -2
  140. package/development/journey-summary.component-BsC7wBIn.js +0 -341
  141. package/development/journey-summary.d.ts.map +0 -1
  142. package/development/journey-summary.pure.d.ts.map +0 -1
  143. package/development/mapper-BrZOqqfe.js +0 -11454
  144. package/development/pearl-chain/pearl-chain.component.d.ts.map +0 -1
  145. package/development/pearl-chain/pearl-chain.component.js +0 -2
  146. package/development/pearl-chain-time/pearl-chain-time.component.d.ts.map +0 -1
  147. package/development/pearl-chain-time/pearl-chain-time.component.js +0 -2
  148. package/development/pearl-chain-time.component-C-CuC1ke.js +0 -317
  149. package/development/pearl-chain-time.d.ts.map +0 -1
  150. package/development/pearl-chain-time.pure.d.ts.map +0 -1
  151. package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts.map +0 -1
  152. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +0 -2
  153. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts.map +0 -1
  154. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +0 -2
  155. package/development/pearl-chain-vertical-item.component-CLu9QrqJ.js +0 -131
  156. package/development/pearl-chain-vertical-item.d.ts.map +0 -1
  157. package/development/pearl-chain-vertical-item.pure.d.ts.map +0 -1
  158. package/development/pearl-chain-vertical.component-DbPz5k_R.js +0 -30
  159. package/development/pearl-chain-vertical.d.ts.map +0 -1
  160. package/development/pearl-chain-vertical.pure.d.ts.map +0 -1
  161. package/development/pearl-chain.component-10OsJZIX.js +0 -318
  162. package/development/pearl-chain.d.ts.map +0 -1
  163. package/development/pearl-chain.pure.d.ts.map +0 -1
  164. package/development/seat-reservation/common/mapper/icon-mapper.d.ts.map +0 -1
  165. package/development/seat-reservation/common/mapper/icon-mapper.js +0 -170
  166. package/development/seat-reservation/common/mapper/mapper.d.ts.map +0 -1
  167. package/development/seat-reservation/common/mapper/mapper.js +0 -2
  168. package/development/seat-reservation/common/mapper.d.ts.map +0 -1
  169. package/development/seat-reservation/common/mapper.js +0 -3
  170. package/development/seat-reservation/common/svgs.d.ts.map +0 -1
  171. package/development/seat-reservation/common/svgs.js +0 -2
  172. package/development/seat-reservation/common/translations/i18n.d.ts.map +0 -1
  173. package/development/seat-reservation/common/translations/i18n.js +0 -1120
  174. package/development/seat-reservation/common/translations.d.ts.map +0 -1
  175. package/development/seat-reservation/common/translations.js +0 -2
  176. package/development/seat-reservation/common/types.d.ts.map +0 -1
  177. package/development/seat-reservation/common/types.js +0 -0
  178. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +0 -1
  179. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +0 -1476
  180. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +0 -1
  181. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +0 -2
  182. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +0 -1
  183. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +0 -2
  184. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +0 -1
  185. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +0 -2
  186. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +0 -1
  187. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +0 -2
  188. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +0 -1
  189. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +0 -2
  190. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +0 -1
  191. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +0 -2
  192. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts.map +0 -1
  193. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +0 -2
  194. package/development/seat-reservation-area.component-DPhQJFid.js +0 -94
  195. package/development/seat-reservation-graphic.component-0LYsmerm.js +0 -129
  196. package/development/seat-reservation-navigation-coach.component-B97jKD7Y.js +0 -438
  197. package/development/seat-reservation-navigation-services.component-Cx0Is97w.js +0 -159
  198. package/development/seat-reservation-place-control.component-DaL1g8WH.js +0 -431
  199. package/development/seat-reservation-scoped.component-BHbORVsR.js +0 -24
  200. package/development/seat-reservation.component-DI9pSlzt.js +0 -473
  201. package/development/seat-reservation.d.ts.map +0 -1
  202. package/development/seat-reservation.pure.d.ts.map +0 -1
  203. package/development/svgs-Dj-RKmRs.js +0 -28
  204. package/development/timetable-duration/timetable-duration.component.d.ts.map +0 -1
  205. package/development/timetable-duration/timetable-duration.component.js +0 -2
  206. package/development/timetable-duration.component-Chk5D4Is.js +0 -96
  207. package/development/timetable-duration.d.ts.map +0 -1
  208. package/development/timetable-duration.pure.d.ts.map +0 -1
  209. package/development/timetable-row/timetable-row.component.d.ts.map +0 -1
  210. package/development/timetable-row/timetable-row.component.js +0 -2
  211. package/development/timetable-row.component-nzrQzxL6.js +0 -736
  212. package/development/timetable-row.d.ts.map +0 -1
  213. package/development/timetable-row.pure.d.ts.map +0 -1
  214. package/development/toDate-CDWut5fS.js +0 -150
  215. package/differenceInMinutes-BAZ-Fham.js +0 -27
  216. package/format-DjgG1QPc.js +0 -1103
  217. package/isValid-CXnsFZVu.js +0 -36
  218. package/journey-summary/journey-summary.component.js +0 -2
  219. package/journey-summary.component-DNoO3OCf.js +0 -265
  220. package/mapper-Dcou8VEf.js +0 -11382
  221. package/pearl-chain/pearl-chain.component.js +0 -2
  222. package/pearl-chain-time/pearl-chain-time.component.js +0 -2
  223. package/pearl-chain-time.component-BuvA6IE1.js +0 -237
  224. package/pearl-chain-vertical/pearl-chain-vertical.component.js +0 -2
  225. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +0 -2
  226. package/pearl-chain-vertical-item.component-QZ4s8Jbv.js +0 -106
  227. package/pearl-chain-vertical.component-Dc3vaHsQ.js +0 -20
  228. package/pearl-chain.component-DtGXXkY6.js +0 -190
  229. package/seat-reservation/common/mapper/icon-mapper.js +0 -72
  230. package/seat-reservation/common/mapper/mapper.js +0 -2
  231. package/seat-reservation/common/mapper.js +0 -3
  232. package/seat-reservation/common/svgs.js +0 -2
  233. package/seat-reservation/common/translations/i18n.js +0 -1085
  234. package/seat-reservation/common/translations.js +0 -2
  235. package/seat-reservation/common/types.js +0 -0
  236. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +0 -926
  237. package/seat-reservation/seat-reservation/seat-reservation.component.js +0 -2
  238. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +0 -2
  239. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +0 -2
  240. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +0 -2
  241. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +0 -2
  242. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +0 -2
  243. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +0 -2
  244. package/seat-reservation-area.component-G9lHb7S8.js +0 -73
  245. package/seat-reservation-graphic.component-BXFcQDxY.js +0 -102
  246. package/seat-reservation-navigation-coach.component-BXy8EkJe.js +0 -338
  247. package/seat-reservation-navigation-services.component-49XmV9rv.js +0 -124
  248. package/seat-reservation-place-control.component-DToIW328.js +0 -317
  249. package/seat-reservation-scoped.component-D8dAmrP7.js +0 -16
  250. package/seat-reservation.component--0XnrCkk.js +0 -372
  251. package/svgs-D4fuYTHV.js +0 -26
  252. package/timetable-duration/timetable-duration.component.js +0 -2
  253. package/timetable-duration.component-iMCvh1zr.js +0 -61
  254. package/timetable-row/timetable-row.component.js +0 -2
  255. package/timetable-row.component-mNKmhRmP.js +0 -566
  256. package/toDate-BhNUyM4s.js +0 -16
@@ -1,6 +1 @@
1
- import { t as e } from "./timetable-duration.component-iMCvh1zr.js";
2
- import "./timetable-duration.pure.js";
3
- //#region src/elements-experimental/timetable-duration.ts
4
- e.define();
5
- //#endregion
6
- export { e as SbbTimetableDurationElement };
1
+ import{SbbTimetableDurationElement as e}from"./timetable-duration.pure.js";export*from"./timetable-duration.pure.js";e.define();
@@ -1,2 +1,9 @@
1
- import { t as e } from "./timetable-duration.component-iMCvh1zr.js";
2
- export { e as SbbTimetableDurationElement };
1
+ import{__esDecorate as e,__runInitializers as t}from"tslib";import{SbbElement as n,SbbLanguageController as r,forceType as i,i18nDurationHour as a,i18nDurationMinute as o,screenReaderOnlyStyles as s}from"@sbb-esta/lyne-elements/core.js";import{html as c,unsafeCSS as l}from"lit";import{property as u}from"lit/decorators.js";var d=`:host{display:inline-block}.duration{--sbb-text-font-size:var(--sbb-text-font-size-s);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);white-space:nowrap;margin:0}
2
+ `;let f=(()=>{let f=n,p,m=[],h=[];return class extends f{constructor(){super(...arguments),this.#e=t(this,m,``),this._language=(t(this,h),new r(this))}static{let t=typeof Symbol==`function`&&Symbol.metadata?Object.create(f[Symbol.metadata]??null):void 0;p=[i(),u()],e(this,null,p,{kind:`accessor`,name:`config`,static:!1,private:!1,access:{has:e=>`config`in e,get:e=>e.config,set:(e,t)=>{e.config=t}},metadata:t},m,h),t&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:t})}static{this.elementName=`sbb-timetable-duration`}static{this.styles=[s,l(d)]}#e;get config(){return this.#e}set config(e){this.#e=e}render(){let e=JSON.parse(this.config),t=a.multiple.short[this._language.current],n=o.multiple.short[this._language.current],r=``,i=``,s=a.multiple.long[this._language.current],l=o.multiple.long[this._language.current];return e.hours===1&&(s=a.single.long[this._language.current]),e.minutes===1&&(l=o.single.long[this._language.current]),e.hours!==0&&(r+=`${e.hours} ${t}`,i+=`${e.hours} ${s}`),r+=` ${e.minutes} ${n}`,i+=` ${e.minutes} ${l}.`,c`
3
+ <p aria-label=${i} class="duration" role="text">
4
+ <span aria-hidden="true" class="duration__text--visual" role="presentation">
5
+ ${r}
6
+ </span>
7
+ <span class="sbb-screen-reader-only">${i}</span>
8
+ </p>
9
+ `}}})();export{f as SbbTimetableDurationElement};
package/timetable-row.js CHANGED
@@ -1,6 +1 @@
1
- import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "./timetable-row.component-mNKmhRmP.js";
2
- import "./timetable-row.pure.js";
3
- //#region src/elements-experimental/timetable-row.ts
4
- s.define();
5
- //#endregion
6
- export { s as SbbTimetableRowElement, r as filterNotices, a as getCus, n as getHimIcon, e as handleNotices, i as renderIconProduct, o as renderStringProduct, t as sortSituation };
1
+ import{SbbTimetableRowElement as e}from"./timetable-row.pure.js";export*from"./timetable-row.pure.js";e.define();
@@ -1,2 +1,113 @@
1
- import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "./timetable-row.component-mNKmhRmP.js";
2
- export { s as SbbTimetableRowElement, r as filterNotices, a as getCus, n as getHimIcon, e as handleNotices, i as renderIconProduct, o as renderStringProduct, t as sortSituation };
1
+ import{__esDecorate as e,__runInitializers as t}from"tslib";import{SbbCardBadgeElement as n,SbbCardButtonElement as r,SbbCardElement as i}from"@sbb-esta/lyne-elements/card.pure.js";import{SbbElement as a,SbbLanguageController as o,defaultDateAdapter as s,forceType as c,i18nArrival as l,i18nClass as u,i18nDeparture as ee,i18nDirection as te,i18nFromPlatform as d,i18nMeansOfTransport as f,i18nNew as ne,i18nOccupancy as p,i18nRealTimeInfo as re,i18nSupersaver as ie,i18nTransferProcedure as m,i18nTransferProcedures as ae,i18nTravelhints as oe,i18nTripDuration as se,i18nTripQuayChange as h,listResetStyles as g,screenReaderOnlyStyles as _}from"@sbb-esta/lyne-elements/core.js";import{SbbIconElement as v}from"@sbb-esta/lyne-elements/icon.pure.js";import{SbbTimetableOccupancyElement as y}from"@sbb-esta/lyne-elements/timetable-occupancy.pure.js";import{html as b,nothing as x,unsafeCSS as ce}from"lit";import{property as S}from"lit/decorators.js";import{durationToTime as le,getDepartureArrivalTimeAttribute as ue,isRideLeg as C,removeTimezoneFromISOTimeString as de}from"./core.js";import{SbbPearlChainTimeElement as fe}from"./pearl-chain-time.pure.js";const w=6048e5,T=Symbol.for(`constructDateFrom`);function E(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&T in e?e[T](t):e instanceof Date?new e.constructor(t):new Date(t)}function D(e,t){return E(t||e,e)}function O(e){let t=D(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function k(e,...t){let n=E.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function A(e,t){let n=D(e,t?.in);return n.setHours(0,0,0,0),n}function j(e,t,n){let[r,i]=k(n?.in,e,t),a=A(r),o=A(i),s=+a-O(a),c=+o-O(o);return Math.round((s-c)/864e5)}const M={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},N=(e,t,n)=>{let r,i=M[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function P(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const F={date:P({formats:{full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},defaultWidth:`full`}),time:P({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:P({formats:{full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},I={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},L=(e,t,n,r)=>I[e];function R(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const z={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},era:R({values:{narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},defaultWidth:`wide`}),quarter:R({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:R({values:{narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},defaultWidth:`wide`}),day:R({values:{narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},defaultWidth:`wide`}),dayPeriod:R({values:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},defaultFormattingWidth:`wide`})};function B(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?H(s,e=>e.test(o)):V(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function V(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function H(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function U(e){return(t,n={})=>{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}const pe={code:`en-US`,formatDistance:N,formatLong:F,formatRelative:L,localize:z,match:{ordinalNumber:U({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:B({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:`any`}),quarter:B({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:B({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:B({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:B({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:`any`})},options:{weekStartsOn:0,firstWeekContainsDate:1}};let me={};function W(){return me}function he(e,t){let n=D(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function ge(e,t){let n=D(e,t?.in);return j(n,he(n))+1}function G(e,t){let n=W(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=D(e,t?.in),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function K(e,t){return G(e,{...t,weekStartsOn:1})}function q(e,t){let n=D(e,t?.in),r=n.getFullYear(),i=E(n,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);let a=K(i),o=E(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);let s=K(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function _e(e,t){let n=q(e,t),r=E(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),K(r)}function ve(e,t){let n=D(e,t?.in),r=K(n)-+_e(n);return Math.round(r/w)+1}function J(e,t){let n=D(e,t?.in),r=n.getFullYear(),i=W(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=E(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=G(o,t),c=E(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=G(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function ye(e,t){let n=W(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=J(e,t),a=E(t?.in||e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),G(a,t)}function be(e,t){let n=D(e,t?.in),r=G(n,t)-+ye(n,t);return Math.round(r/w)+1}function Y(e,t){return(e<0?`-`:``)+Math.abs(e).toString().padStart(t,`0`)}const X={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return Y(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):Y(n+1,2)},d(e,t){return Y(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return Y(e.getHours()%12||12,t.length)},H(e,t){return Y(e.getHours(),t.length)},m(e,t){return Y(e.getMinutes(),t.length)},s(e,t){return Y(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds();return Y(Math.trunc(r*10**(n-3)),t.length)}},Z={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},xe={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return X.y(e,t)},Y:function(e,t,n,r){let i=J(e,r),a=i>0?i:1-i;return t===`YY`?Y(a%100,2):t===`Yo`?n.ordinalNumber(a,{unit:`year`}):Y(a,t.length)},R:function(e,t){return Y(q(e),t.length)},u:function(e,t){return Y(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return Y(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return Y(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return X.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return Y(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=be(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):Y(i,t.length)},I:function(e,t,n){let r=ve(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):Y(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):X.d(e,t)},D:function(e,t,n){let r=ge(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):Y(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return Y(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return Y(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return Y(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(r,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(r,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?Z.noon:r===0?Z.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?Z.evening:r>=12?Z.afternoon:r>=4?Z.morning:Z.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return X.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):X.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):Y(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):Y(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):X.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):X.s(e,t)},S:function(e,t){return X.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return Ce(r);case`XXXX`:case`XX`:return Q(r);default:return Q(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return Ce(r);case`xxxx`:case`xx`:return Q(r);default:return Q(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+Se(r,`:`);default:return`GMT`+Q(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+Se(r,`:`);default:return`GMT`+Q(r,`:`)}},t:function(e,t,n){return Y(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return Y(+e,t.length)}};function Se(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+Y(a,2)}function Ce(e,t){return e%60==0?(e>0?`-`:`+`)+Y(Math.abs(e)/60,2):Q(e,t)}function Q(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Y(Math.trunc(r/60),2),a=Y(r%60,2);return n+i+t+a}const we=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});default:return t.date({width:`full`})}},Te=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});default:return t.time({width:`full`})}},Ee={p:Te,P:(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return we(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,we(r,t)).replace(`{{time}}`,Te(i,t))}},De=/^D+$/,Oe=/^Y+$/,ke=[`D`,`DD`,`YY`,`YYYY`];function Ae(e){return De.test(e)}function je(e){return Oe.test(e)}function Me(e,t,n){let r=Ne(e,t,n);if(console.warn(r),ke.includes(e))throw RangeError(r)}function Ne(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}function Pe(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function Fe(e){return!(!Pe(e)&&typeof e!=`number`||isNaN(+D(e)))}const Ie=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Le=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Re=/^'([^]*?)'?$/,ze=/''/g,Be=/[a-zA-Z]/;function Ve(e,t,n){let r=W(),i=n?.locale??r.locale??pe,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=D(e,n?.in);if(!Fe(s))throw RangeError(`Invalid time value`);let c=t.match(Le).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=Ee[t];return n(e,i.formatLong)}return e}).join(``).match(Ie).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:He(e)};if(xe[t])return{isToken:!0,value:e};if(t.match(Be))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&je(a)||!n?.useAdditionalDayOfYearTokens&&Ae(a))&&Me(a,t,String(e));let o=xe[a[0]];return o(s,a,i.localize,l)}).join(``)}function He(e){let t=e.match(Re);return t?t[1].replace(ze,`'`):e}var Ue=`:host{--sbb-timetable-row-gap:var(--sbb-spacing-fixed-2x);--sbb-timetable-row-height:1.5625rem;--sbb-timetable-row-height-header:1.25rem;--sbb-timetable-row-height-footer:1rem;--sbb-timetable-row-skeleton-pulse-duration:1.8s;display:block}:host([disable-animation]){--sbb-timetable-row-skeleton-pulse-duration:0}.sbb-timetable__row-transport-icon{--sbb-icon-svg-width:1.25rem;--sbb-icon-svg-height:1.25rem}.sbb-travel-hints__item{--sbb-icon-svg-height:.875rem}.sbb-timetable__row--quay{margin-inline-end:var(--sbb-spacing-fixed-1x)}.sbb-timetable__row--quay-type{float:left}ul{display:inline-flex}li,.sbb-timetable__row-transport{align-self:center;display:inline-flex}.sbb-timetable__row-transportnumber,.sbb-timetable__row-time{--sbb-text-font-size:var(--sbb-text-font-size-s);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);font-weight:700;line-height:unset;white-space:nowrap;align-self:center}.sbb-timetable__row{--sbb-text-font-size:var(--sbb-text-font-size-s);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);gap:var(--sbb-timetable-row-gap);flex-direction:column;display:flex}.sbb-timetable__row-header,.sbb-timetable__row-footer{animation:none}.sbb-timetable__row-card{--sbb-card-padding-block:var(--sbb-card-with-badge-padding-block)}.sbb-timetable__row-header{gap:var(--sbb-spacing-fixed-2x);line-height:var(--sbb-timetable-row-height-header);align-items:center;display:flex}.sbb-timetable__row-details,.sbb-timetable__row-hints{gap:var(--sbb-spacing-fixed-1x);align-items:center;display:inline-flex}.sbb-timetable__row-header p{white-space:nowrap;text-overflow:ellipsis;align-self:center;margin:0;overflow:hidden}.sbb-timetable__row-footer{justify-content:space-between;align-items:center;gap:var(--sbb-spacing-fixed-2x);line-height:var(--sbb-timetable-row-height-footer);flex-wrap:wrap;display:flex}.sbb-timetable__row-footer>span{align-self:center}.sbb-timetable__row-footer :only-child{margin-inline-start:auto}.sbb-timetable__row-quay--changed{color:var(--sbb-color-primary)}.sbb-timetable__row-transport-wrapper,.sbb-timetable__row-warning{display:inline-flex}.sbb-loading{pointer-events:none}.sbb-loading__wrapper{gap:var(--sbb-spacing-fixed-2x);flex-direction:column;display:flex}.sbb-loading__row{border-radius:var(--sbb-border-radius-1x);width:100%;height:var(--sbb-timetable-row-height)}@media (width>=64rem){.sbb-loading__row{height:1.75rem}}@media (forced-colors:active){.sbb-loading__row{border:var(--sbb-border-width-1x) solid ButtonBorder!important}}.sbb-loading__row,.sbb-loading__badge{background:var(--sbb-background-color-4);animation:skeleton-pulse var(--sbb-timetable-row-skeleton-pulse-duration) ease-out infinite}.sbb-loading__row:first-of-type{height:var(--sbb-timetable-row-height-header);width:50%}.sbb-loading__row:last-of-type{height:var(--sbb-timetable-row-height-footer)}.sbb-loading__badge{margin-inline:auto calc(var(--sbb-spacing-fixed-3x) * -1);transform:var(--sbb-card-badge-skew);border-end-start-radius:var(--sbb-card-badge-border-radius);width:7.1875rem;height:1.25rem;padding-inline-end:var(--sbb-spacing-fixed-6x)}@keyframes skeleton-pulse{0%{background:var(--sbb-background-color-4)}17%{background:var(--sbb-background-color-4)}50%{background:var(--sbb-background-color-3)}67%{background:var(--sbb-background-color-3)}to{background:var(--sbb-background-color-4)}}
2
+ `;const We=(e,t)=>b`<span class="sbb-timetable__row-transport">
3
+ <sbb-icon name=${e}></sbb-icon>
4
+ <span class="sbb-screen-reader-only">${t}</span>
5
+ </span>`,Ge=(e,t)=>{let n=[`M`,`B`,`T`].includes(e)?` `:``;return b`<span class="sbb-timetable__row-transportnumber">
6
+ ${t===null?e:e+n+t}
7
+ </span>`},Ke=e=>e?.find(e=>e.serviceJourney?.serviceAlteration?.reachableText)?.serviceJourney?.serviceAlteration?.reachableText,qe=e=>e?.find(e=>e.serviceJourney?.serviceAlteration?.delayText)?.serviceJourney?.serviceAlteration?.delayText,Je=e=>e?.find(e=>!!e.serviceJourney?.serviceAlteration?.redirectedText)?.serviceJourney?.serviceAlteration?.redirectedText,Ye=e=>e?.find(e=>!!e.serviceJourney?.serviceAlteration?.unplannedStopPointsText)?.serviceJourney?.serviceAlteration?.unplannedStopPointsText,Xe=e=>{let t={DISTURBANCE:0,INFORMATION:1,DELAY:2,TRAIN_REPLACEMENT_BY_BUS:3,CONSTRUCTION_SITE:4,END_MESSAGE:5};return[...e].sort((e,n)=>t[e.cause]-t[n.cause])},Ze=e=>{switch(e?.cause){case`DISTURBANCE`:return{name:`disruption`,text:e?.broadcastMessages?.length?e?.broadcastMessages[0].title:``};case`INFORMATION`:return{name:`info`,text:e?.broadcastMessages.length?e?.broadcastMessages[0].title:``};case`DELAY`:return{name:`delay`,text:e?.broadcastMessages.length?e?.broadcastMessages[0].title:``};case`TRAIN_REPLACEMENT_BY_BUS`:return{name:`replacementbus`,text:e?.broadcastMessages.length?e?.broadcastMessages[0].title:``};case`CONSTRUCTION_SITE`:return{name:`construction`,text:e?.broadcastMessages.length?e?.broadcastMessages[0].title:``};default:return{name:`info`,text:e?.broadcastMessages.length?e?.broadcastMessages[0].title:``}}},Qe=(e,t)=>{let{summary:n,legs:r}=e||{},i=r?.filter(e=>C(e)),{tripStatus:a}=n||{};if(a?.cancelled||a?.partiallyCancelled)return{name:`cancellation`,text:a?.cancelledText};if(i?.some(e=>e.serviceJourney?.serviceAlteration?.cancelledExpected))return{name:`disruption`,text:a?.cancelledText};if(Ke(i))return{name:`missed-connection`,text:Ke(i)};if(a?.alternative)return{name:`alternative`,text:a.alternativeText};if(Je(i))return{name:`reroute`,text:Je(i)};if(Ye(i))return{name:`add-stop`,text:Ye(i)};if(a?.delayed||a?.delayedUnknown)return{name:`delay`,text:qe(i)};if(a?.quayChanged){let e=i[0].departure;return{name:`platform-change`,text:e.quayChanged?e.quayChangedText:h[t]}}return{}},$e=e=>{let t=[`RR`,`RK`,`RC`,`RL`,`RM`,`RS`,`RU`,`XP`,`XR`,`XT`];return e.reduce((e,n)=>{if(e)return e;if(t.includes(n.name))return{...n,name:`RR`}},void 0)},et=e=>{let t=[`Z`,`SB`,`SZ`,`VR`,`TG`];return e.filter((t,n)=>e.findIndex(e=>e.name===t.name)===n).filter(e=>t.includes(e.name)).sort((e,n)=>t.indexOf(e.name)-t.indexOf(n.name))},$=e=>{let t=$e(e),n=et(e);return t===void 0?n:n.length?n[0].name===`Z`&&n[1]?[n[0],t,n[1]].concat(n.slice(2)):[t,...n]:[t]};let tt=(()=>{let h=a,w=[],T,E=[],D=[],O,k=[],A=[],j,M=[],N=[],P,F=[],I=[],L,R=[],z=[],B,V=[],H=[],U,pe=[],me=[],W,he=[],ge=[],G,K=[],q=[],_e,ve=[],J=[],ye;return class extends h{constructor(){super(...arguments),this.#e=(t(this,w),t(this,E,null)),this.#t=(t(this,D),t(this,k,null)),this.#n=(t(this,A),t(this,M,!1)),this.#r=(t(this,N),t(this,F,null)),this.#i=(t(this,I),t(this,R,!1)),this.#a=(t(this,z),t(this,V,!1)),this.#o=(t(this,H),t(this,pe,!1)),this.#s=(t(this,me),t(this,he,``)),this.#c=(t(this,ge),t(this,K,!1)),this.#l=(t(this,q),t(this,ve,!1)),this._now=(t(this,J),null),this._language=new o(this)}static{let t=typeof Symbol==`function`&&Symbol.metadata?Object.create(h[Symbol.metadata]??null):void 0;T=[S({type:Object})],O=[S({type:Object})],j=[c(),S({attribute:`disable-animation`,reflect:!0,type:Boolean})],P=[S({type:Object})],L=[c(),S({attribute:`loading-trip`,type:Boolean})],B=[c(),S({attribute:`a11y-footpath`,type:Boolean})],U=[c(),S({attribute:`loading-price`,type:Boolean})],W=[c(),S({attribute:`card-action-label`})],G=[c(),S({attribute:`accessibility-expanded`,type:Boolean})],_e=[c(),S({type:Boolean})],ye=[S()],e(this,null,T,{kind:`accessor`,name:`trip`,static:!1,private:!1,access:{has:e=>`trip`in e,get:e=>e.trip,set:(e,t)=>{e.trip=t}},metadata:t},E,D),e(this,null,O,{kind:`accessor`,name:`price`,static:!1,private:!1,access:{has:e=>`price`in e,get:e=>e.price,set:(e,t)=>{e.price=t}},metadata:t},k,A),e(this,null,j,{kind:`accessor`,name:`disableAnimation`,static:!1,private:!1,access:{has:e=>`disableAnimation`in e,get:e=>e.disableAnimation,set:(e,t)=>{e.disableAnimation=t}},metadata:t},M,N),e(this,null,P,{kind:`accessor`,name:`boarding`,static:!1,private:!1,access:{has:e=>`boarding`in e,get:e=>e.boarding,set:(e,t)=>{e.boarding=t}},metadata:t},F,I),e(this,null,L,{kind:`accessor`,name:`loadingTrip`,static:!1,private:!1,access:{has:e=>`loadingTrip`in e,get:e=>e.loadingTrip,set:(e,t)=>{e.loadingTrip=t}},metadata:t},R,z),e(this,null,B,{kind:`accessor`,name:`a11yFootpath`,static:!1,private:!1,access:{has:e=>`a11yFootpath`in e,get:e=>e.a11yFootpath,set:(e,t)=>{e.a11yFootpath=t}},metadata:t},V,H),e(this,null,U,{kind:`accessor`,name:`loadingPrice`,static:!1,private:!1,access:{has:e=>`loadingPrice`in e,get:e=>e.loadingPrice,set:(e,t)=>{e.loadingPrice=t}},metadata:t},pe,me),e(this,null,W,{kind:`accessor`,name:`cardActionLabel`,static:!1,private:!1,access:{has:e=>`cardActionLabel`in e,get:e=>e.cardActionLabel,set:(e,t)=>{e.cardActionLabel=t}},metadata:t},he,ge),e(this,null,G,{kind:`accessor`,name:`accessibilityExpanded`,static:!1,private:!1,access:{has:e=>`accessibilityExpanded`in e,get:e=>e.accessibilityExpanded,set:(e,t)=>{e.accessibilityExpanded=t}},metadata:t},K,q),e(this,null,_e,{kind:`accessor`,name:`active`,static:!1,private:!1,access:{has:e=>`active`in e,get:e=>e.active,set:(e,t)=>{e.active=t}},metadata:t},ve,J),e(this,null,ye,{kind:`setter`,name:`now`,static:!1,private:!1,access:{has:e=>`now`in e,set:(e,t)=>{e.now=t}},metadata:t},null,w),t&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:t})}static{this.elementName=`sbb-timetable-row`}static{this.elementDependencies=[i,n,r,v,y,fe]}static{this.styles=[g,_,ce(Ue)]}#e;get trip(){return this.#e}set trip(e){this.#e=e}#t;get price(){return this.#t}set price(e){this.#t=e}#n;get disableAnimation(){return this.#n}set disableAnimation(e){this.#n=e}#r;get boarding(){return this.#r}set boarding(e){this.#r=e}#i;get loadingTrip(){return this.#i}set loadingTrip(e){this.#i=e}#a;get a11yFootpath(){return this.#a}set a11yFootpath(e){this.#a=e}#o;get loadingPrice(){return this.#o}set loadingPrice(e){this.#o=e}#s;get cardActionLabel(){return this.#s}set cardActionLabel(e){this.#s=e}#c;get accessibilityExpanded(){return this.#c}set accessibilityExpanded(e){this.#c=e}#l;get active(){return this.#l}set active(e){this.#l=e}set now(e){this._now=s.getValidDateOrNull(s.deserialize(e))}get now(){return this._now??new Date}willUpdate(e){super.willUpdate(e),e.has(`loadingTrip`)&&(this.internals.role=this.loadingTrip?null:`rowgroup`)}_renderSkeleton(){return b`
8
+ <sbb-card class="sbb-loading sbb-card-spacing-4x-xxs sbb-timetable__row-card">
9
+ ${this.loadingPrice?b`<div class="sbb-loading__badge" slot="badge"></div>`:x}
10
+ <div class="sbb-loading__wrapper">
11
+ <div class="sbb-loading__row"></div>
12
+ <div class="sbb-loading__row"></div>
13
+ <div class="sbb-loading__row"></div>
14
+ </div>
15
+ </sbb-card>
16
+ `}_getRideLegs(){return this.trip?.legs?.filter(e=>C(e))??[]}_getQuayTypeStrings(){if(!this.trip.summary?.product)return null;let e=this._getRideLegs(),t=this.trip.summary.product?.vehicleMode===`TRAIN`?e[0].serviceJourney.quayTypeShortName||``:e[0].serviceJourney.quayTypeName||``;return{long:d[this._language.current]+` `+t,short:t}}_renderQuayType(){if(!this.trip.summary?.product)return;let e=this._getQuayTypeStrings();return b`
17
+ <span class="sbb-timetable__row--quay">
18
+ <span class="sbb-screen-reader-only">${e?.long}&nbsp;</span>
19
+ <span class="sbb-timetable__row--quay-type" aria-hidden="true"
20
+ >${e?.short}</span
21
+ >
22
+ </span>
23
+ `}_handleHimCus(e){let{situations:t}=e||{},n=t&&Xe(t),r=Qe(e,this._language.current);return{cus:Object.keys(r)?.length?r:null,him:t?.length?Ze(n[0]):null}}_getAccessibilityText(e){let{summary:t,legs:n,notices:r}=e||{},{departureWalk:i,arrivalWalk:a,departure:o,arrival:s,product:c,direction:d,occupancy:h,duration:g}=t||{},{departureTimeAttribute:_,arrivalTimeAttribute:v}=ue(n,i||0,a||0,this._language.current,this.a11yFootpath),y=this._getRideLegs(),b=o?.time?de(o.time):void 0,x=s?.time?de(s.time):void 0,ce=_?`${_.text} ${_.duration}, `:``,S=v?`${v.text} ${v.duration}, `:``,C=b?`${ee[this._language.current]}: ${Ve(b,`HH:mm`)}, `:``,fe=()=>o?.quayFormatted?`${o?.quayChanged?`${ne[this._language.current]} `:``}${this._getQuayTypeStrings()?.long} ${o?.quayFormatted}, `:``,w=c&&c.vehicleMode?f[c.vehicleMode.toLowerCase()]&&`${f[c.vehicleMode.toLowerCase()][this._language.current]}, `:``,T=c?.vehicleSubModeShortName?`${c.vehicleSubModeShortName} ${c.line||``}, `:``,E=`${te[this._language.current]} ${d}, `,D=this._handleHimCus(e),O=D?.cus?.text?`${re[this._language.current]}: ${D?.cus?.text}, `:``,k=D?.him?.text?`${re[this._language.current]}: ${D?.him?.text}, `:``,A=this.boarding?`${this.boarding.text}, `:``,j=`${this.price?.isDiscount?ie[this._language.current]:``} ${this.price?.text&&this.price?.price?(this.price?.text||``)+` `+(this.price?.price||``)+`, `:``}`,M=y.length>2?`${y.length-1} ${ae[this._language.current]}, `:y.length>1?`${y.length-1} ${m[this._language.current]}, `:``,N=x?`${l[this._language.current]}: ${Ve(x,`HH:mm`)}, `:``,P=``;h&&(h.firstClass&&h.firstClass!==`UNKNOWN`&&(P+=`${u.first[this._language.current]} ${p[h.firstClass.toLowerCase()]?.[this._language.current]}.`),h.secondClass&&h.secondClass!==`UNKNOWN`&&(P+=` ${u.second[this._language.current]} ${p[h.secondClass.toLowerCase()]?.[this._language.current]}.`));let F=r&&$(r).length&&$(r)?.map((e,t)=>t<4&&e.text?.template).join(`, `)+`, `,I=F?`${oe[this._language.current]}: ${F}`:``,L=g&&g>0?`${se[this._language.current]} ${le(g,this._language.current).long}, `:``;return[ce,C,fe(),w,T,E,O,A,j,O?``:k,N,S,L,M,P,I].map(e=>e?.trim()).filter(e=>e&&e.length>0).join(` `)}render(){if(this.loadingTrip)return this._renderSkeleton();let{legs:e,id:t,notices:n,summary:r}=this.trip||{},{product:i,direction:a,departureWalk:o,departure:s,arrival:c,arrivalWalk:l,occupancy:u,duration:d}=r||{},p=this._handleHimCus(this.trip),re=!!p.cus||!!p.him,m=n&&$(n),ae=d?le(d,this._language.current):null;return b`
24
+ <sbb-card class="sbb-card-spacing-4x-xxs sbb-timetable__row-card" id=${t}>
25
+ <sbb-card-button
26
+ ?active=${this.active}
27
+ aria-expanded=${this.accessibilityExpanded?`true`:x}
28
+ >
29
+ ${this.cardActionLabel?this.cardActionLabel:this._getAccessibilityText(this.trip)}
30
+ </sbb-card-button>
31
+ ${this.loadingPrice?b`<div class="sbb-loading__badge" slot="badge"></div>`:x}
32
+ ${this.price&&!this.loadingPrice?b`<sbb-card-badge color=${this.price.isDiscount?`charcoal`:`white`}>
33
+ ${this.price.isDiscount?b`<span aria-hidden="true">
34
+ %<span class="sbb-screen-reader-only"
35
+ >${ie[this._language.current]}</span
36
+ >
37
+ </span>`:x}
38
+ ${this.price.text?b`<span>${this.price.text}</span>`:x}
39
+ ${this.price.price?b`<span>${this.price.price}</span>`:x}
40
+ </sbb-card-badge>`:x}
41
+ <div class="sbb-timetable__row" role="row">
42
+ <div class="sbb-timetable__row-header" role="gridcell">
43
+ <div class="sbb-timetable__row-details">
44
+ ${i?.corporateIdentityPictogram&&b`<span class="sbb-timetable__row-transport-wrapper">
45
+ <sbb-icon
46
+ class="sbb-timetable__row-transport-icon"
47
+ name="picto:${i.corporateIdentityPictogram}"
48
+ ></sbb-icon>
49
+ <span class="sbb-screen-reader-only">
50
+ ${i&&i.vehicleMode&&f[i.vehicleMode.toLowerCase()]&&f[i.vehicleMode.toLowerCase()][this._language.current]}
51
+ &nbsp;
52
+ </span>
53
+ </span>`}
54
+ ${i&&(i.corporateIdentityIcon?We(i.corporateIdentityIcon,i.name):i.vehicleSubModeShortName&&Ge(i.vehicleSubModeShortName,i?.line))}
55
+ </div>
56
+ ${a?b`<p>${`${te[this._language.current]} ${a}`}</p>`:x}
57
+ </div>
58
+ <sbb-pearl-chain-time
59
+ role="gridcell"
60
+ .legs=${e}
61
+ .departureTime=${s?.time}
62
+ .arrivalTime=${c?.time}
63
+ .departureWalk=${o}
64
+ .arrivalWalk=${l}
65
+ ?disable-animation=${this.disableAnimation}
66
+ ?a11y-footpath=${this.a11yFootpath}
67
+ .now=${this.now}
68
+ ></sbb-pearl-chain-time>
69
+ <div class="sbb-timetable__row-footer" role="gridcell">
70
+ ${i&&s?.quayFormatted?b`<span
71
+ class=${s?.quayChanged?`sbb-timetable__row-quay--changed`:x}
72
+ >
73
+ <span class="sbb-screen-reader-only">
74
+ ${`${ee[this._language.current]} ${s?.quayChanged?ne[this._language.current]:``}`}
75
+ &nbsp;
76
+ </span>
77
+ ${this._renderQuayType()} ${s?.quayFormatted}
78
+ </span>`:x}
79
+ ${u?.firstClass&&u?.firstClass!==`UNKNOWN`||u?.secondClass&&u.secondClass!==`UNKNOWN`?b`<sbb-timetable-occupancy
80
+ .firstClassOccupancy=${u?.firstClass?.toLowerCase()}
81
+ .secondClassOccupancy=${u?.secondClass?.toLowerCase()}
82
+ ></sbb-timetable-occupancy>`:x}
83
+ ${m&&m.length||this.boarding?b`<ul class="sbb-timetable__row-hints" role="list">
84
+ ${m?.map((e,t)=>t<4?b`<li>
85
+ <sbb-icon
86
+ class="sbb-travel-hints__item"
87
+ name=${`sa-`+e.name?.toLowerCase()}
88
+ ></sbb-icon>
89
+ <span class="sbb-screen-reader-only">${e.text?.template}</span>
90
+ </li>`:x)}
91
+ ${this.boarding?b`<li>
92
+ <sbb-icon
93
+ class="sbb-travel-hints__item"
94
+ name=${this.boarding?.name}
95
+ aria-label=${this.boarding?.text}
96
+ aria-hidden="false"
97
+ ></sbb-icon>
98
+ </li>`:x}
99
+ </ul>`:x}
100
+ ${d&&d>0?b`<time>
101
+ <span class="sbb-screen-reader-only">
102
+ ${`${se[this._language.current]} ${ae.long}`}
103
+ </span>
104
+ <span aria-hidden="true">${ae.short}</span>
105
+ </time>`:x}
106
+ ${re&&(p.cus||p.him)?b`<span class="sbb-timetable__row-warning">
107
+ <sbb-icon name=${(p.cus||p.him).name}></sbb-icon>
108
+ <span class="sbb-screen-reader-only">${(p.cus||p.him).text}</span>
109
+ </span>`:x}
110
+ </div>
111
+ </div>
112
+ </sbb-card>
113
+ `}}})();export{tt as SbbTimetableRowElement,et as filterNotices,Qe as getCus,Ze as getHimIcon,$ as handleNotices,We as renderIconProduct,Ge as renderStringProduct,Xe as sortSituation};
@@ -1,65 +0,0 @@
1
- import { getNextElementIndex as e, isSafari as t, setAriaComboBoxAttributes as n, ɵstateController as r } from "@sbb-esta/lyne-elements/core.js";
2
- import { SbbAutocompleteBaseElement as i } from "@sbb-esta/lyne-elements/autocomplete.pure.js";
3
- import { SbbAutocompleteGridOptionElement as a } from "../autocomplete-grid-option/autocomplete-grid-option.component.js";
4
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.ts
5
- var o = 0, s = t, c = class extends i {
6
- constructor() {
7
- super(...arguments), this.overlayId = `sbb-autocomplete-grid-${++o}`, this.panelRole = "grid", this._activeColumnIndex = 0;
8
- }
9
- static {
10
- this.elementName = "sbb-autocomplete-grid";
11
- }
12
- static {
13
- this.role = s ? "grid" : null;
14
- }
15
- get options() {
16
- return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
17
- }
18
- syncNegative() {
19
- this.querySelectorAll?.("sbb-divider, sbb-autocomplete-grid-button, sbb-option-hint").forEach((e) => e.negative = this.negative), this.querySelectorAll?.("sbb-autocomplete-grid-row, sbb-autocomplete-grid-option, sbb-autocomplete-grid-optgroup").forEach((e) => r(e).toggle("negative", this.negative));
20
- }
21
- openedPanelKeyboardInteraction(e) {
22
- if (this.isOpen) switch (e.key) {
23
- case "Enter":
24
- this.selectByKeyboard(e);
25
- break;
26
- case "ArrowDown":
27
- case "ArrowUp":
28
- this.setNextActiveOption(e);
29
- break;
30
- case "ArrowRight":
31
- case "ArrowLeft":
32
- this._setNextHorizontalActiveElement(e);
33
- break;
34
- }
35
- }
36
- selectByKeyboard(e) {
37
- this.activeOption && (e.preventDefault(), this._activeColumnIndex === 0 ? this.activeOption.selectViaUserInteraction(!0) : this.activeOption.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button")[this._activeColumnIndex - 1]?.click());
38
- }
39
- setNextActiveOption(t) {
40
- let n = this.options.filter((e) => !e.matches(":is(:state(disabled),[state--disabled])"));
41
- if (this.activeOption?.setActive(!1), this.triggerElement.ariaActiveDescendantElement = null, Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-row :is(:state(focus-visible),[state--focus-visible])") ?? []).forEach((e) => r(e).delete("focus-visible")), this._activeColumnIndex = 0, !n.length) {
42
- this.activeOption = null;
43
- return;
44
- }
45
- let i = e(t, this.activeOption ? n.indexOf(this.activeOption) : -1, n.length);
46
- this.activeOption = n[i], this.activeOption.setActive(!0), this.triggerElement.ariaActiveDescendantElement = this.activeOption, this.activeOption.scrollIntoView({ block: "nearest" }), t && t.preventDefault(), this.autoSelectActiveOption && t && this.setPendingSelection(this.activeOption);
47
- }
48
- _setNextHorizontalActiveElement(t) {
49
- if (!this.activeOption) return;
50
- let n = Array.from(this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-option, sbb-autocomplete-grid-button") ?? [])?.filter((e) => !e.matches(":is(:state(disabled),[state--disabled])"));
51
- if (!n.length) return;
52
- let i = e(t, this._activeColumnIndex, n.length), o = n[i];
53
- o instanceof a ? o.setActive(!0) : r(o).add("focus-visible");
54
- let s = n[this._activeColumnIndex];
55
- s instanceof a ? s.setActive(!1) : r(s).delete("focus-visible"), this.triggerElement.ariaActiveDescendantElement = o, o.scrollIntoView({ block: "nearest" }), this._activeColumnIndex = i;
56
- }
57
- resetActiveElement() {
58
- this._activeColumnIndex !== 0 && this.activeOption?.closest("sbb-autocomplete-grid-row")?.querySelectorAll("sbb-autocomplete-grid-button").forEach((e) => r(e).delete("focus-visible")), this.activeOption?.setActive(!1), this.activeOption = null, this._activeColumnIndex = 0, this.triggerElement && (this.triggerElement.ariaActiveDescendantElement = null);
59
- }
60
- setTriggerAttributes(e) {
61
- n(e, s ? this.id : this.overlayId, !1, "grid");
62
- }
63
- };
64
- //#endregion
65
- export { c as SbbAutocompleteGridElement };
@@ -1,44 +0,0 @@
1
- import { miniButtonStyle as e } from "@sbb-esta/lyne-elements/button.pure.js";
2
- import { SbbActionBaseElement as t, SbbDisabledMixin as n, SbbNegativeMixin as r, SbbPropertyWatcherController as i, isEventPrevented as a } from "@sbb-esta/lyne-elements/core.js";
3
- import { SbbIconNameMixin as o } from "@sbb-esta/lyne-elements/icon.pure.js";
4
- import { isServer as s } from "lit";
5
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.ts
6
- var c = 0, l = class extends n(r(o(t))) {
7
- static {
8
- this.elementName = "sbb-autocomplete-grid-button";
9
- }
10
- static {
11
- this.role = "button";
12
- }
13
- static {
14
- this.styles = [e];
15
- }
16
- get option() {
17
- return this.closest("sbb-autocomplete-grid-row")?.querySelector("sbb-autocomplete-grid-option") || null;
18
- }
19
- get optgroup() {
20
- return this.closest("sbb-autocomplete-grid-optgroup");
21
- }
22
- constructor() {
23
- super(), this._handleButtonClick = async (e) => {
24
- await a(e) || this.closest("form");
25
- }, this.internals.states.add("button"), s || (this.setupBaseEventHandlers(), this.addEventListener("click", this._handleButtonClick), this.addController(new i(this, () => this.closest("sbb-autocomplete-grid-optgroup"), { disabled: () => this._updateInternals() })));
26
- }
27
- isDisabledExternally() {
28
- return this.optgroup?.disabled ?? !1;
29
- }
30
- renderTemplate() {
31
- return super.renderIconSlot();
32
- }
33
- connectedCallback() {
34
- super.connectedCallback(), this.id ||= `sbb-autocomplete-grid-button-${++c}`, this.removeAttribute("tabindex");
35
- }
36
- willUpdate(e) {
37
- super.willUpdate(e), e.has("disabled") && this._updateInternals();
38
- }
39
- _updateInternals() {
40
- this.disabled || this.optgroup?.disabled ? (this.internals.states.add("disabled"), this.internals.ariaDisabled = "true") : (this.internals.states.delete("disabled"), this.internals.ariaDisabled = null);
41
- }
42
- };
43
- //#endregion
44
- export { l as SbbAutocompleteGridButtonElement };
@@ -1,2 +0,0 @@
1
- import { t as e } from "../../autocomplete-grid-cell.component-79IjA__I.js";
2
- export { e as SbbAutocompleteGridCellElement };
@@ -1,21 +0,0 @@
1
- import { SbbPropertyWatcherController as e } from "@sbb-esta/lyne-elements/core.js";
2
- import { SbbOptgroupBaseElement as t } from "@sbb-esta/lyne-elements/option.pure.js";
3
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.ts
4
- var n = class extends t {
5
- static {
6
- this.elementName = "sbb-autocomplete-grid-optgroup";
7
- }
8
- get options() {
9
- return Array.from(this.querySelectorAll?.("sbb-autocomplete-grid-option") ?? []);
10
- }
11
- constructor() {
12
- super(), this.addController(new e(this, () => this.closest("sbb-autocomplete-grid"), { negative: (e) => {
13
- this.toggleState("negative", e.negative), this.requestUpdate();
14
- } }));
15
- }
16
- getAutocompleteParent() {
17
- return this.closest?.("sbb-autocomplete-grid") || null;
18
- }
19
- };
20
- //#endregion
21
- export { n as SbbAutocompleteGridOptgroupElement };
@@ -1,2 +0,0 @@
1
- import { n as e, t } from "../../autocomplete-grid-option.component-DUFBhQwI.js";
2
- export { t as SbbAutocompleteGridOptionElement, e as autocompleteGridOptionId };
@@ -1,2 +0,0 @@
1
- import { t as e } from "../../autocomplete-grid-row.component-B3U15Rwa.js";
2
- export { e as SbbAutocompleteGridRowElement };
@@ -1,23 +0,0 @@
1
- import { SbbElement as e } from "@sbb-esta/lyne-elements/core.js";
2
- import { html as t, unsafeCSS as n } from "lit";
3
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.scss?inline
4
- var r = ":host{--sbb-autocomplete-grid-cell-gap: var(--sbb-spacing-fixed-6x);display:block}.sbb-autocomplete-grid-cell{display:flex;column-gap:var(--sbb-autocomplete-grid-cell-gap)}", i = class extends e {
5
- static {
6
- this.elementName = "sbb-autocomplete-grid-cell";
7
- }
8
- static {
9
- this.role = "gridcell";
10
- }
11
- static {
12
- this.styles = [n(r)];
13
- }
14
- render() {
15
- return t`
16
- <span class="sbb-autocomplete-grid-cell">
17
- <slot></slot>
18
- </span>
19
- `;
20
- }
21
- };
22
- //#endregion
23
- export { i as t };
@@ -1,35 +0,0 @@
1
- import { SbbPropertyWatcherController as e, ɵstateController as t } from "@sbb-esta/lyne-elements/core.js";
2
- import { unsafeCSS as n } from "lit";
3
- import { SbbOptionBaseElement as r } from "@sbb-esta/lyne-elements/option.pure.js";
4
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.scss?inline
5
- var i = ":host{--sbb-focus-outline-offset: var(--sbb-option-focus-outline-offset);display:block}:host(:is(:state(negative),[state--negative])){--sbb-option-color: var(--sbb-color-3-negative);--sbb-option-icon-color: var(--sbb-color-5)}:host(:is(:state(size-s),[state--size-s])){--sbb-option-min-height: var(--sbb-size-element-xxs);--sbb-option-focus-outline-offset: calc(-1 * var(--sbb-spacing-fixed-1x));--sbb-option-focus-outline-inset: 0 var(--sbb-spacing-fixed-1x)}:host(:is(:state(size-m),[state--size-m])){--sbb-option-min-height: var(--sbb-size-element-s);--sbb-option-focus-outline-offset: inherit;--sbb-option-focus-outline-inset: var(--sbb-spacing-fixed-1x)}:host(:not(:is(:state(disable-highlight),[state--disable-highlight]))) .sbb-option__label slot{display:none}:host(:is(:state(active),[state--active])){--sbb-option-focus-outline-color: var(--sbb-focus-outline-color)}.sbb-option{font-size:var(--sbb-option-font-size);letter-spacing:var(--sbb-typo-letter-spacing-text);position:relative;display:flex;align-items:center;column-gap:var(--sbb-option-column-gap);justify-content:start;min-height:var(--sbb-option-min-height);padding-inline:var(--sbb-option-padding-inline);color:var(--sbb-option-color)}.sbb-option:after{content:\"\";display:block;position:absolute;inset:var(--sbb-option-focus-outline-inset);pointer-events:none;border:var(--sbb-focus-outline-width) solid var(--sbb-option-focus-outline-color);border-radius:var(--sbb-option-border-radius)}:host(:not(:is(:state(disabled),[state--disabled]))) .sbb-option__label--highlight{font-weight:700}@media(forced-colors:active){:host(:not(:is(:state(disabled),[state--disabled]))) .sbb-option__label--highlight{color:Highlight}}.sbb-option__icon{display:flex;min-width:var(--sbb-size-icon-ui-small);min-height:var(--sbb-size-icon-ui-small);color:var(--sbb-option-icon-color)}:host(:not(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name]))) .sbb-option__icon{display:var(--sbb-option-icon-container-display, none)}.sbb-option__label{text-overflow:var(--sbb-option-text-overflow);overflow:var(--sbb-option-overflow);white-space:var(--sbb-option-white-space, initial)}", a = "sbb-autocomplete-grid-option", o = class extends r {
6
- static {
7
- this.elementName = "sbb-autocomplete-grid-option";
8
- }
9
- static {
10
- this.role = "gridcell";
11
- }
12
- static {
13
- this.styles = [n(i)];
14
- }
15
- constructor() {
16
- super(), this.addController(new e(this, () => this.closest("sbb-autocomplete-grid-optgroup"), {
17
- disabled: (e) => {
18
- this.disabledFromGroup = e.disabled, t(this.closest?.("sbb-autocomplete-grid-row"))?.toggle("disabled", this.disabled || this.disabledFromGroup), this.updateAriaDisabled();
19
- },
20
- label: (e) => this.groupLabel = e.label
21
- }));
22
- }
23
- willUpdate(e) {
24
- super.willUpdate(e), e.has("disabled") && (t(this.closest?.("sbb-autocomplete-grid-row"))?.toggle("disabled", this.disabled || this.disabledFromGroup), this.updateAriaDisabled());
25
- }
26
- selectByClick(e) {
27
- if (this.disabled || this.disabledFromGroup) {
28
- e.stopPropagation();
29
- return;
30
- }
31
- this.selectViaUserInteraction(!0);
32
- }
33
- };
34
- //#endregion
35
- export { a as n, o as t };
@@ -1,26 +0,0 @@
1
- import { SbbElement as e } from "@sbb-esta/lyne-elements/core.js";
2
- import { html as t, unsafeCSS as n } from "lit";
3
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.scss?inline
4
- var r = ":host{display:block}:host(:is(:state(negative),[state--negative])){--sbb-autocomplete-grid-row-color: var(--sbb-color-3-negative);--sbb-autocomplete-grid-row-background-color-hover: var(--sbb-background-color-3-negative);--sbb-autocomplete-grid-row-disabled-border-color: var(--sbb-border-color-5);--sbb-autocomplete-grid-row-disabled-background-color: var(--sbb-background-color-3-negative);--sbb-focus-outline-color: var(--sbb-focus-outline-color-dark)}@media(any-hover:hover){:host(:hover:not(:is(:state(disabled),[state--disabled]))){--sbb-autocomplete-grid-row-background-color: var( --sbb-autocomplete-grid-row-background-color-hover )}}:host(:is(:state(disabled),[state--disabled])){--sbb-autocomplete-grid-row-cursor: var(--sbb-cursor-default)}@media(forced-colors:active){:host(:is(:state(disabled),[state--disabled])){--sbb-autocomplete-grid-row-color: GrayText}}::slotted(sbb-autocomplete-grid-option){flex:1 1 auto;margin-right:calc(-1 * var(--sbb-spacing-fixed-2x));overflow-x:hidden}.sbb-autocomplete-grid-row{display:flex;align-items:center;padding-inline-end:var(--sbb-autocomplete-grid-row-padding-inline-end);justify-content:var(--sbb-autocomplete-grid-row-justify-content);gap:var(--sbb-spacing-fixed-6x);color:var(--sbb-autocomplete-grid-row-color);background-color:var(--sbb-autocomplete-grid-row-background-color, inherit);cursor:var(--sbb-autocomplete-grid-row-cursor);-webkit-tap-highlight-color:transparent;-webkit-text-fill-color:var(--sbb-autocomplete-grid-row-color)}:host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row{position:relative;z-index:0}:host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row:before{content:\"\";display:block;position:absolute;inset:.375rem;border:var(--sbb-border-width-1x) dashed var(--sbb-autocomplete-grid-row-disabled-border-color);border-radius:var(--sbb-border-radius-2x);background-color:var(--sbb-autocomplete-grid-row-disabled-background-color);z-index:-1}@media(forced-colors:active){:host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row:before{border-color:GrayText}}", i = 0, a = class extends e {
5
- static {
6
- this.elementName = "sbb-autocomplete-grid-row";
7
- }
8
- static {
9
- this.role = "row";
10
- }
11
- static {
12
- this.styles = [n(r)];
13
- }
14
- connectedCallback() {
15
- super.connectedCallback(), this.id ||= `sbb-autocomplete-grid-row-${++i}`;
16
- }
17
- render() {
18
- return t`
19
- <span class="sbb-autocomplete-grid-row">
20
- <slot></slot>
21
- </span>
22
- `;
23
- }
24
- };
25
- //#endregion
26
- export { a as t };
@@ -1,2 +0,0 @@
1
- import { n as e, t } from "../../date-helper-DNzMLcyb.js";
2
- export { t as durationToTime, e as removeTimezoneFromISOTimeString };
@@ -1,96 +0,0 @@
1
- import { extractTimeAndStringFromNoticeText as e, isConnectionLeg as t, isRideLeg as n } from "./timetable-helper.js";
2
- import { i18nWalkingDistanceArrival as r, i18nWalkingDistanceDeparture as i } from "@sbb-esta/lyne-elements/core.js";
3
- import "@sbb-esta/lyne-elements/icon.pure.js";
4
- import { html as a, nothing as o } from "lit";
5
- //#region src/elements-experimental/core/timetable/access-leg-helper.ts
6
- function s(e, n) {
7
- let r = t(e) ? e : null, i = r ? r?.notices?.filter((e) => n.includes(e.name))[0] : null;
8
- return i ? {
9
- duration: r?.duration || 0,
10
- text: i?.text?.template || "",
11
- icon: "walk-small"
12
- } : null;
13
- }
14
- function c(t, r, a, o) {
15
- let s = n(t) ? t?.serviceJourney?.notices?.filter((e) => ["CI"].includes(e.name))[0] : null, c = s && e(s);
16
- return s ? {
17
- duration: (c?.duration || 0) + (r || 0),
18
- text: a ? i[o] : c?.text || "",
19
- icon: a ? "wheelchair-small" : `sa-${s?.name?.toLowerCase()}`
20
- } : null;
21
- }
22
- function l(t, i, a, o) {
23
- let s = n(t) ? t?.serviceJourney?.notices?.filter((e) => ["CO"].includes(e.name))[0] : null, c = s && e(s);
24
- return s ? {
25
- duration: (c?.duration || 0) + (i || 0),
26
- text: a ? r[o] : c?.text || "",
27
- icon: a ? "wheelchair-small" : `sa-${s?.name?.toLowerCase()}`
28
- } : null;
29
- }
30
- function u(e, t, n, s, c) {
31
- return a`
32
- <span class="sbb-pearl-chain__time-transfer sbb-pearl-chain__time-transfer--${t}-${c}">
33
- <sbb-icon name=${t}></sbb-icon>
34
- <time datetime=${e + "M"}>
35
- <span class="sbb-screen-reader-only">
36
- ${!s && c ? c === "departure" ? i[n] : r[n] : o}
37
- ${s ? a`<span>${s}</span>` : o}&nbsp;
38
- </span>
39
- ${e}
40
- <span class="sbb-pearl-chain__time-walktime-prime-symbol" aria-hidden="true">'</span>
41
- <span class="sbb-screen-reader-only">min</span>
42
- </time>
43
- </span>
44
- `;
45
- }
46
- function d(e, t, n, r) {
47
- return a`
48
- <span class="sbb-pearl-chain__time-walktime sbb-pearl-chain__time-walktime--${r}-${n}">
49
- <sbb-icon name=${r}></sbb-icon>
50
- <time datetime=${e + "M"}>
51
- <span class="sbb-screen-reader-only">${t}</span>
52
- ${e}
53
- <span class="sbb-pearl-chain__time-walktime-prime-symbol" aria-hidden="true">'</span>
54
- </time>
55
- </span>
56
- `;
57
- }
58
- function f(e, f, p, m, h) {
59
- let g = e && e.filter((e) => n(e) || t(e))[0], _ = [
60
- "YM",
61
- "YB",
62
- "Y",
63
- "YT"
64
- ], v = s(g, _), y = c(g, f, h, m), b = f ? {
65
- text: i[m],
66
- duration: f,
67
- icon: h ? "wheelchair-small" : "walk-small"
68
- } : null, x = () => v || (b && !y && !v ? b : y || null);
69
- function S() {
70
- return a`
71
- ${v ? d(v.duration, v.text, "left", v.icon) : o}
72
- ${b && !y && !v ? d(b.duration, b.text, "left", b.icon) : o}
73
- ${y ? h ? d(y.duration, y.text, "left", y.icon) : u(y.duration, y.icon, m, y.text, "departure") : o}
74
- `;
75
- }
76
- let C = e && e[e.length - 1], w = (t(C) || n(C)) && C, T = w && s(w, _), E = w && l(w, p, h, m), D = p ? {
77
- text: r[m],
78
- duration: p,
79
- icon: h ? "wheelchair-small" : "walk-small"
80
- } : null, O = () => T || (D && !E && !T ? D : E || null);
81
- function k() {
82
- return a`
83
- ${T ? d(T.duration, T.text, "right", T.icon) : o}
84
- ${D && !E && !T ? d(D.duration, D.text, "right", D.icon) : o}
85
- ${E ? h ? d(E.duration, E.text, "right", E.icon) : u(E.duration, E.icon, m, E.text, "arrival") : o}
86
- `;
87
- }
88
- return {
89
- renderDepartureTimeAttribute: S,
90
- renderArrivalTimeAttribute: k,
91
- departureTimeAttribute: x(),
92
- arrivalTimeAttribute: O()
93
- };
94
- }
95
- //#endregion
96
- export { f as getDepartureArrivalTimeAttribute };
@@ -1,10 +0,0 @@
1
- //#region src/elements-experimental/core/timetable/timetable-helper.ts
2
- var e = (e) => e?.__typename === "PTRideLeg", t = (e) => e?.__typename === "PTConnectionLeg", n = (e) => {
3
- let t = e?.text?.template && e.text.template.indexOf("(") + 1, n = e?.text?.template?.substring(t || 0, e?.text?.template.indexOf(")"));
4
- return {
5
- duration: n && +n.substring(0, n.length - 1) || 0,
6
- text: e?.text?.template?.split("(")[0] || ""
7
- };
8
- };
9
- //#endregion
10
- export { n as extractTimeAndStringFromNoticeText, t as isConnectionLeg, e as isRideLeg };
File without changes