@sbb-esta/lyne-elements-experimental 4.8.1 → 4.10.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 (184) hide show
  1. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +1 -1
  2. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  3. package/autocomplete-grid/autocomplete-grid-cell.js +1 -1
  4. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  5. package/autocomplete-grid/autocomplete-grid-option.js +1 -1
  6. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  7. package/autocomplete-grid/autocomplete-grid-row.js +1 -1
  8. package/{autocomplete-grid-cell.component-Dak9wlBr.js → autocomplete-grid-cell.component-DkD9aFKc.js} +5 -5
  9. package/autocomplete-grid-option.component-CtATJy7n.js +37 -0
  10. package/autocomplete-grid-row.component-6nJv5PMj.js +27 -0
  11. package/autocomplete-grid.js +3 -3
  12. package/autocomplete-grid.pure.js +3 -3
  13. package/custom-elements.json +70 -2
  14. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +2 -2
  15. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  16. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  17. package/development/autocomplete-grid/autocomplete-grid-cell.js +1 -1
  18. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  19. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  20. package/development/autocomplete-grid/autocomplete-grid-option.js +1 -1
  21. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  22. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  23. package/development/autocomplete-grid/autocomplete-grid-row.js +1 -1
  24. package/development/autocomplete-grid-cell.component-BxkWGaX0.js +34 -0
  25. package/development/autocomplete-grid-option.component-5mPGswUO.js +61 -0
  26. package/development/autocomplete-grid-row.component-DEm6zyHZ.js +39 -0
  27. package/development/autocomplete-grid.js +3 -3
  28. package/development/autocomplete-grid.pure.js +3 -3
  29. package/development/core/datetime/date-helper.js +1 -1
  30. package/development/core/datetime.js +1 -1
  31. package/development/{date-helper-8_Y-PuHh.js → date-helper-qNdwgC9O.js} +4 -4
  32. package/development/{differenceInMinutes-DN_1Rk3O.js → differenceInMinutes-B7_GTDq7.js} +2 -2
  33. package/development/{format-Bbrn2bgo.js → format-DFx4997p.js} +3 -3
  34. package/development/{isValid-C-HzKv4v.js → isValid-JpZ7FphI.js} +2 -2
  35. package/development/journey-summary/journey-summary.component.d.ts.map +1 -1
  36. package/development/journey-summary/journey-summary.component.js +1 -1
  37. package/development/journey-summary.component-BZwgD4im.js +340 -0
  38. package/development/journey-summary.js +1 -1
  39. package/development/journey-summary.pure.js +1 -1
  40. package/development/pearl-chain/pearl-chain.component.d.ts.map +1 -1
  41. package/development/pearl-chain/pearl-chain.component.js +1 -1
  42. package/development/pearl-chain-time/pearl-chain-time.component.d.ts.map +1 -1
  43. package/development/pearl-chain-time/pearl-chain-time.component.js +1 -1
  44. package/development/pearl-chain-time.component-B2_BI6E_.js +319 -0
  45. package/development/pearl-chain-time.js +1 -1
  46. package/development/pearl-chain-time.pure.js +1 -1
  47. package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts.map +1 -1
  48. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  49. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts.map +1 -1
  50. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  51. package/development/pearl-chain-vertical-item.component-DcmH13Vb.js +133 -0
  52. package/development/pearl-chain-vertical-item.js +1 -1
  53. package/development/pearl-chain-vertical-item.pure.js +1 -1
  54. package/development/pearl-chain-vertical.component-CpcNFl-x.js +31 -0
  55. package/development/pearl-chain-vertical.js +1 -1
  56. package/development/pearl-chain-vertical.pure.js +1 -1
  57. package/development/pearl-chain.component-oQZUzsyW.js +316 -0
  58. package/development/pearl-chain.js +1 -1
  59. package/development/pearl-chain.pure.js +1 -1
  60. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +3 -0
  61. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  62. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +37 -2
  63. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  64. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  65. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +1 -1
  66. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  67. package/development/seat-reservation/seat-reservation-area.js +1 -1
  68. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  69. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +1 -1
  70. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  71. package/development/seat-reservation/seat-reservation-graphic.js +1 -1
  72. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  73. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  74. package/development/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  75. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +1 -1
  76. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  77. package/development/seat-reservation/seat-reservation-navigation-services.js +1 -1
  78. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -1
  79. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
  80. package/development/seat-reservation/seat-reservation-place-control.js +1 -1
  81. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts.map +1 -1
  82. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  83. package/development/seat-reservation/seat-reservation-scoped.js +1 -1
  84. package/development/seat-reservation/seat-reservation.js +1 -1
  85. package/development/seat-reservation-area.component-DbeuTnXT.js +96 -0
  86. package/development/seat-reservation-graphic.component-DlrHtlia.js +129 -0
  87. package/development/seat-reservation-navigation-coach.component-CjoDkcVU.js +428 -0
  88. package/development/seat-reservation-navigation-services.component-CGel7__P.js +159 -0
  89. package/development/seat-reservation-place-control.component-CM9efId7.js +429 -0
  90. package/development/seat-reservation-scoped.component-CFA_bJ3o.js +25 -0
  91. package/development/seat-reservation.component-DFJVFmrI.js +510 -0
  92. package/development/seat-reservation.js +7 -7
  93. package/development/seat-reservation.pure.js +7 -7
  94. package/development/timetable-duration/timetable-duration.component.d.ts.map +1 -1
  95. package/development/timetable-duration/timetable-duration.component.js +1 -1
  96. package/development/timetable-duration.component-BhFlqYbV.js +100 -0
  97. package/development/timetable-duration.js +1 -1
  98. package/development/timetable-duration.pure.js +1 -1
  99. package/development/timetable-row/timetable-row.component.d.ts.map +1 -1
  100. package/development/timetable-row/timetable-row.component.js +1 -1
  101. package/development/timetable-row.component-Dko8laRT.js +729 -0
  102. package/development/timetable-row.js +1 -1
  103. package/development/timetable-row.pure.js +1 -1
  104. package/development/{toDate-Biiv3kyf.js → toDate-DOFAOjP-.js} +2 -2
  105. package/journey-summary/journey-summary.component.js +1 -1
  106. package/{journey-summary.component-Cq_4kaOp.js → journey-summary.component-DC7-qPHY.js} +38 -38
  107. package/journey-summary.js +1 -1
  108. package/journey-summary.pure.js +1 -1
  109. package/package.json +2 -2
  110. package/pearl-chain/pearl-chain.component.js +1 -1
  111. package/pearl-chain-time/pearl-chain-time.component.js +1 -1
  112. package/{pearl-chain-time.component-DGDW5S1c.js → pearl-chain-time.component-CkKsrbgQ.js} +28 -28
  113. package/pearl-chain-time.js +1 -1
  114. package/pearl-chain-time.pure.js +1 -1
  115. package/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  116. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  117. package/pearl-chain-vertical-item.component-BUqZ-3Ay.js +108 -0
  118. package/pearl-chain-vertical-item.js +1 -1
  119. package/pearl-chain-vertical-item.pure.js +1 -1
  120. package/{pearl-chain-vertical.component-CXIDT5RD.js → pearl-chain-vertical.component-Df9CvRxo.js} +5 -5
  121. package/pearl-chain-vertical.js +1 -1
  122. package/pearl-chain-vertical.pure.js +1 -1
  123. package/pearl-chain.component-CpISVoAu.js +194 -0
  124. package/pearl-chain.js +1 -1
  125. package/pearl-chain.pure.js +1 -1
  126. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +30 -4
  127. package/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  128. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  129. package/seat-reservation/seat-reservation-area.js +1 -1
  130. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  131. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  132. package/seat-reservation/seat-reservation-graphic.js +1 -1
  133. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  134. package/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  135. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  136. package/seat-reservation/seat-reservation-navigation-services.js +1 -1
  137. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
  138. package/seat-reservation/seat-reservation-place-control.js +1 -1
  139. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  140. package/seat-reservation/seat-reservation-scoped.js +1 -1
  141. package/seat-reservation/seat-reservation.js +1 -1
  142. package/seat-reservation-area.component-CtYawDjE.js +75 -0
  143. package/seat-reservation-graphic.component-Cm_pVxaB.js +102 -0
  144. package/seat-reservation-navigation-coach.component-sug9IBTH.js +333 -0
  145. package/{seat-reservation-navigation-services.component-QL0UnilZ.js → seat-reservation-navigation-services.component-C9dDYD_M.js} +19 -19
  146. package/seat-reservation-place-control.component-CE7d9M2b.js +322 -0
  147. package/seat-reservation-scoped.component-DVyP2JGE.js +17 -0
  148. package/{seat-reservation.component-zrQHTRl3.js → seat-reservation.component-DajC6fqU.js} +58 -55
  149. package/seat-reservation.js +7 -7
  150. package/seat-reservation.pure.js +7 -7
  151. package/timetable-duration/timetable-duration.component.js +1 -1
  152. package/{timetable-duration.component-DaYoJUGS.js → timetable-duration.component-BnJA8wSb.js} +12 -12
  153. package/timetable-duration.js +1 -1
  154. package/timetable-duration.pure.js +1 -1
  155. package/timetable-row/timetable-row.component.js +1 -1
  156. package/{timetable-row.component-BDMAEsbR.js → timetable-row.component-DbzBCpKR.js} +59 -59
  157. package/timetable-row.js +1 -1
  158. package/timetable-row.pure.js +1 -1
  159. package/autocomplete-grid-option.component-DNRFHOwc.js +0 -37
  160. package/autocomplete-grid-row.component-DBHZQ0GQ.js +0 -27
  161. package/development/autocomplete-grid-cell.component-BBvM4o2H.js +0 -42
  162. package/development/autocomplete-grid-option.component-QzfM5eIE.js +0 -123
  163. package/development/autocomplete-grid-row.component-H8sCTCkT.js +0 -104
  164. package/development/journey-summary.component-uGhZvA4p.js +0 -385
  165. package/development/pearl-chain-time.component-B8mayTWD.js +0 -415
  166. package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +0 -435
  167. package/development/pearl-chain-vertical.component-CswE7b3M.js +0 -39
  168. package/development/pearl-chain.component-wpsTvoSe.js +0 -704
  169. package/development/seat-reservation-area.component-ORuli_DC.js +0 -138
  170. package/development/seat-reservation-graphic.component-lZXqHWIz.js +0 -193
  171. package/development/seat-reservation-navigation-coach.component-D2QXTMJJ.js +0 -828
  172. package/development/seat-reservation-navigation-services.component-Bg1adRlU.js +0 -179
  173. package/development/seat-reservation-place-control.component-CwUX-QYO.js +0 -726
  174. package/development/seat-reservation-scoped.component-uLT33P9y.js +0 -31
  175. package/development/seat-reservation.component-MOv5kHDC.js +0 -821
  176. package/development/timetable-duration.component-D21SXsQq.js +0 -125
  177. package/development/timetable-row.component-Y5w8vEwP.js +0 -932
  178. package/pearl-chain-vertical-item.component-G22bWhLU.js +0 -108
  179. package/pearl-chain.component-DmjkVIva.js +0 -194
  180. package/seat-reservation-area.component-COD6CXhP.js +0 -75
  181. package/seat-reservation-graphic.component-BNfU5tQM.js +0 -102
  182. package/seat-reservation-navigation-coach.component-Bh9ILq60.js +0 -333
  183. package/seat-reservation-place-control.component-BfnZUyHv.js +0 -322
  184. package/seat-reservation-scoped.component-CY04BT_4.js +0 -17
@@ -0,0 +1,322 @@
1
+ import { __esDecorate as e, __runInitializers as t } from "tslib";
2
+ import { SbbButtonBaseElement as n } from "@sbb-esta/lyne-elements/core/base-elements.js";
3
+ import { SbbLanguageController as r } from "@sbb-esta/lyne-elements/core/controllers.js";
4
+ import { forceType as i } from "@sbb-esta/lyne-elements/core/decorators.js";
5
+ import { boxSizingStyles as a } from "@sbb-esta/lyne-elements/core/styles.js";
6
+ import { html as o, nothing as s, unsafeCSS as c } from "lit";
7
+ import { property as l } from "lit/decorators.js";
8
+ import { styleMap as u } from "lit/directives/style-map.js";
9
+ import { getI18nSeatReservation as d } from "./seat-reservation/common/translations.js";
10
+ import { SbbSeatReservationGraphicElement as f } from "./seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js";
11
+ //#region src/elements-experimental/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.scss?inline
12
+ var p = ":host{--sbb-seat-reservation-place-control-text-scale-value: 1;--sbb-seat-reservation-place-control-width: 16;--sbb-seat-reservation-place-control-height: 16;--sbb-seat-reservation-place-control-top: 0;--sbb-seat-reservation-place-control-left: 0;--sbb-seat-reservation-place-control-rotation: 0;--sbb-seat-reservation-place-control-text-rotation: 0;--sbb-seat-reservation-place-control-text-size: calc( var(--sbb-seat-reservation-place-control-text-scale-value, 1) * .5 );--sbb-seat-reservation-place-control-default-text: var(--sbb-color-black);--sbb-seat-reservation-place-control-default-text: light-dark( var(--sbb-color-black), var(--sbb-color-white) );--sbb-seat-reservation-place-control-hover-text: var(--sbb-color-iron);--sbb-seat-reservation-place-control-hover-text: light-dark( var(--sbb-color-iron), var(--sbb-color-silver) );--sbb-seat-reservation-place-control-focus-text: var(--sbb-color-anthracite);--sbb-seat-reservation-place-control-focus-text: light-dark( var(--sbb-color-anthracite), var(--sbb-color-graphite) );--sbb-seat-reservation-place-control-allocated-text: var(--sbb-color-smoke);--sbb-seat-reservation-place-control-allocated-text: light-dark( var(--sbb-color-smoke), var(--sbb-color-metal) );--sbb-seat-reservation-place-control-free-background-default: var(--sbb-background-color-2);--sbb-seat-reservation-place-control-free-background-hover: var(--sbb-color-cloud);--sbb-seat-reservation-place-control-free-background-hover: light-dark( var(--sbb-color-cloud), var(--sbb-color-midnight) );--sbb-seat-reservation-place-control-free-background-focus: var(--sbb-color-silver);--sbb-seat-reservation-place-control-free-background-focus: light-dark( var(--sbb-color-silver), var(--sbb-color-black) );--sbb-seat-reservation-place-control-free-backrest-background-default: var(--sbb-color-black);--sbb-seat-reservation-place-control-free-backrest-background-default: light-dark( var(--sbb-color-black), var(--sbb-color-white) );--sbb-seat-reservation-place-control-free-backrest-background-hover: var(--sbb-color-black);--sbb-seat-reservation-place-control-free-backrest-background-hover: light-dark( var(--sbb-color-black), var(--sbb-color-white) );--sbb-seat-reservation-place-control-free-backrest-background-focus: var(--sbb-color-black);--sbb-seat-reservation-place-control-free-backrest-background-focus: light-dark( var(--sbb-color-black), var(--sbb-color-white) );--sbb-seat-reservation-place-control-selected-background-default: var(--sbb-color-primary);--sbb-seat-reservation-place-control-selected-background-hover: var(--sbb-color-primary125);--sbb-seat-reservation-place-control-selected-background-focus: var(--sbb-color-primary150);--sbb-seat-reservation-place-control-selected-backrest-background-default: var( --sbb-color-primary150 );--sbb-seat-reservation-place-control-selected-backrest-background-hover: #7d000f;--sbb-seat-reservation-place-control-selected-backrest-background-focus: #5a000b;--sbb-seat-reservation-place-control-allocated-background-default: var(--sbb-color-milk);--sbb-seat-reservation-place-control-allocated-background-default: light-dark( var(--sbb-color-milk), var(--sbb-color-midnight) );--sbb-seat-reservation-place-control-free-backrest-high-contrast: CanvasText;--sbb-seat-reservation-place-control-free-background-high-contrast: Canvas;--sbb-seat-reservation-place-control-free-text-high-contrast: ButtonText;--sbb-seat-reservation-place-control-free-icon-high-contrast: CanvasText;--sbb-seat-reservation-place-control-allocated-backrest-high-contrast: GrayText;--sbb-seat-reservation-place-control-allocated-background-high-contrast: Canvas;--sbb-seat-reservation-place-control-allocated-text-high-contrast: GrayText;--sbb-seat-reservation-place-control-allocated-icon-high-contrast: GrayText;width:calc(var(--sbb-seat-reservation-place-control-width) * var(--sbb-seat-reservation-one-px-rem, .0625rem));height:calc(var(--sbb-seat-reservation-place-control-height) * var(--sbb-seat-reservation-one-px-rem, .0625rem));position:absolute;inset-block-start:calc(var(--sbb-seat-reservation-place-control-top) * var(--sbb-seat-reservation-one-px-rem, .0625rem));inset-inline-start:calc(var(--sbb-seat-reservation-place-control-left) * var(--sbb-seat-reservation-one-px-rem, .0625rem));font-weight:300;cursor:var(--sbb-cursor-pointer)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-free-background-hover);color:var(--sbb-seat-reservation-place-control-free-text)}@media(forced-colors:active){:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-high-contrast)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-icon){fill:var(--sbb-seat-reservation-place-control-free-icon-high-contrast)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-seatline){stroke:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}:host(:hover) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{forced-color-adjust:none;background-color:var(--sbb-seat-reservation-place-control-free-background-high-contrast);color:var(--sbb-seat-reservation-place-control-free-text-high-contrast)}}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-selected-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-selected-backrest-background-hover)}:host(:hover) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-selected-background-hover);color:var(--sbb-seat-reservation-place-control-selected-text)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-focus)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-background-focus)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-free-background-focus);color:var(--sbb-seat-reservation-place-control-free-text)}@media(forced-colors:active){:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-high-contrast)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-icon){fill:var(--sbb-seat-reservation-place-control-free-icon-high-contrast)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-seatline){stroke:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}:host(:focus-visible) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{forced-color-adjust:none;background-color:var(--sbb-seat-reservation-place-control-free-background-high-contrast);color:var(--sbb-seat-reservation-place-control-free-text-high-contrast)}}:host(:active) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-selected-background-focus)}:host(:active) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-selected-backrest-background-focus)}:host(:active) .sbb-sr-place-ctrl--state-selected:not(.sbb-reservation-place-control--disabled) .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-selected-background-focus);color:var(--sbb-seat-reservation-place-control-selected-text)}:host(:dir(rtl)) :not(.sbb-sr-place-ctrl--type-bicycle,.sbb-sr-place-ctrl--orientation-90,.sbb-sr-place-ctrl--orientation-270,.sbb-sr-place-ctrl--state-selected) ::part(svg-place){rotate:180deg}.sbb-sr-place-ctrl{width:max-content;position:relative;font-size:calc(var(--sbb-seat-reservation-place-control-text-size) * var(--sbb-seat-reservation-one-px-rem, .0625rem))}.sbb-sr-place-ctrl--state-free ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-default)}.sbb-sr-place-ctrl--state-free ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-background-default)}.sbb-sr-place-ctrl--state-free .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-free-background-default);color:var(--sbb-seat-reservation-place-control-free-text)}@media(forced-colors:active){.sbb-sr-place-ctrl--state-free ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-free-background-high-contrast)}.sbb-sr-place-ctrl--state-free ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}.sbb-sr-place-ctrl--state-free ::part(svg-icon){fill:var(--sbb-seat-reservation-place-control-free-icon-high-contrast)}.sbb-sr-place-ctrl--state-free ::part(svg-seatline){stroke:var(--sbb-seat-reservation-place-control-free-backrest-high-contrast)}.sbb-sr-place-ctrl--state-free .sbb-sr-place-ctrl__text{forced-color-adjust:none;background-color:var(--sbb-seat-reservation-place-control-free-background-high-contrast);color:var(--sbb-seat-reservation-place-control-free-text-high-contrast)}}.sbb-sr-place-ctrl--state-selected ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-selected-background-default)}.sbb-sr-place-ctrl--state-selected ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-selected-backrest-background-default)}.sbb-sr-place-ctrl--state-selected .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-selected-background-default);color:var(--sbb-seat-reservation-place-control-selected-text)}.sbb-sr-place-ctrl--state-allocated ::part(svg-place),.sbb-sr-place-ctrl--state-restricted ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-allocated-background-default)}.sbb-sr-place-ctrl--state-allocated ::part(svg-backrest),.sbb-sr-place-ctrl--state-restricted ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-allocated-backrest-background-default)}.sbb-sr-place-ctrl--state-allocated .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-restricted .sbb-sr-place-ctrl__text{background-color:var(--sbb-seat-reservation-place-control-allocated-background-default);color:var(--sbb-seat-reservation-place-control-allocated-text)}@media(forced-colors:active){.sbb-sr-place-ctrl--state-allocated ::part(svg-place),.sbb-sr-place-ctrl--state-restricted ::part(svg-place){fill:var(--sbb-seat-reservation-place-control-allocated-background-high-contrast)}.sbb-sr-place-ctrl--state-allocated ::part(svg-backrest),.sbb-sr-place-ctrl--state-restricted ::part(svg-backrest){fill:var(--sbb-seat-reservation-place-control-allocated-backrest-high-contrast)}.sbb-sr-place-ctrl--state-allocated ::part(svg-icon),.sbb-sr-place-ctrl--state-restricted ::part(svg-icon){fill:var(--sbb-seat-reservation-place-control-allocated-icon-high-contrast)}.sbb-sr-place-ctrl--state-allocated ::part(svg-seatline),.sbb-sr-place-ctrl--state-restricted ::part(svg-seatline){stroke:var(--sbb-seat-reservation-place-control-allocated-backrest-high-contrast)}.sbb-sr-place-ctrl--state-allocated .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-restricted .sbb-sr-place-ctrl__text{forced-color-adjust:none;background-color:var(--sbb-seat-reservation-place-control-allocated-background-high-contrast);color:var(--sbb-seat-reservation-place-control-allocated-text-high-contrast)}}.sbb-sr-place-ctrl--state-allocated,.sbb-sr-place-ctrl--state-restricted{cursor:not-allowed}.sbb-sr-place-ctrl__text{overflow:hidden;display:none;position:absolute;inset-block-start:50%;translate:-50% -50%;rotate:calc(var(--sbb-seat-reservation-place-control-text-rotation) * 1deg);font-family:var(--sbb-typo-font-family);font-size:.75em;line-height:initial}.sbb-sr-place-ctrl--state-free .sbb-sr-place-ctrl__text,.sbb-sr-place-ctrl--state-allocated .sbb-sr-place-ctrl__text{display:block}.sbb-sr-place-ctrl--type-bicycle .sbb-sr-place-ctrl__text{inset-block-start:65%;inset-inline-start:50%;transform-origin:center 16%;font-size:.6875em}.sbb-sr-place-ctrl--orientation-0.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-inline-start:45%}.sbb-sr-place-ctrl--orientation-90.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-block-start:46%;inset-inline-start:50%}.sbb-sr-place-ctrl--orientation-180.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-inline-start:55%}.sbb-sr-place-ctrl--orientation-270.sbb-sr-place-ctrl--type-seat .sbb-sr-place-ctrl__text{inset-block-start:52%;inset-inline-start:52%}:host(:dir(rtl)) .sbb-sr-place-ctrl--orientation-0 .sbb-sr-place-ctrl__text{inset-inline-start:3%}:host(:dir(rtl)) .sbb-sr-place-ctrl--orientation-90 .sbb-sr-place-ctrl__text,:host(:dir(rtl)) .sbb-sr-place-ctrl--orientation-180 .sbb-sr-place-ctrl__text{inset-inline-start:10%}:host(:dir(rtl)) .sbb-sr-place-ctrl--orientation-270 .sbb-sr-place-ctrl__text{inset-inline-start:5%}:host(:dir(rtl)) .sbb-sr-place-ctrl--type-bicycle .sbb-sr-place-ctrl__text{inset-inline-start:-10%}";
13
+ //#endregion
14
+ //#region src/elements-experimental/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.ts
15
+ f.define();
16
+ var m = (() => {
17
+ let f = n, m, h = [], g = [], _, v = [], y = [], b, x = [], S = [], C, w = [], T = [], E, D = [], O = [], k, A = [], j = [], M, N = [], P = [], F, I = [], L = [], R, z = [], B = [], V, H = [], U = [];
18
+ return class extends f {
19
+ static {
20
+ let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(f[Symbol.metadata] ?? null) : void 0;
21
+ m = [i(), l({ attribute: "type" })], _ = [i(), l({
22
+ attribute: "state",
23
+ reflect: !0
24
+ })], b = [l({ attribute: "travel-direction" })], C = [l({
25
+ attribute: "propertyIds",
26
+ type: Array
27
+ })], E = [i(), l({ attribute: "text" })], k = [i(), l({
28
+ attribute: "deck-index",
29
+ type: Number
30
+ })], M = [i(), l({
31
+ attribute: "coach-index",
32
+ type: Number
33
+ })], F = [i(), l({
34
+ attribute: "prevent-click",
35
+ type: Boolean
36
+ })], R = [i(), l({ attribute: "keyfocus" })], V = [i(), l({
37
+ type: Boolean,
38
+ useDefault: !0
39
+ })], e(this, null, m, {
40
+ kind: "accessor",
41
+ name: "placeType",
42
+ static: !1,
43
+ private: !1,
44
+ access: {
45
+ has: (e) => "placeType" in e,
46
+ get: (e) => e.placeType,
47
+ set: (e, t) => {
48
+ e.placeType = t;
49
+ }
50
+ },
51
+ metadata: t
52
+ }, h, g), e(this, null, _, {
53
+ kind: "accessor",
54
+ name: "state",
55
+ static: !1,
56
+ private: !1,
57
+ access: {
58
+ has: (e) => "state" in e,
59
+ get: (e) => e.state,
60
+ set: (e, t) => {
61
+ e.state = t;
62
+ }
63
+ },
64
+ metadata: t
65
+ }, v, y), e(this, null, b, {
66
+ kind: "accessor",
67
+ name: "travelDirection",
68
+ static: !1,
69
+ private: !1,
70
+ access: {
71
+ has: (e) => "travelDirection" in e,
72
+ get: (e) => e.travelDirection,
73
+ set: (e, t) => {
74
+ e.travelDirection = t;
75
+ }
76
+ },
77
+ metadata: t
78
+ }, x, S), e(this, null, C, {
79
+ kind: "accessor",
80
+ name: "propertyIds",
81
+ static: !1,
82
+ private: !1,
83
+ access: {
84
+ has: (e) => "propertyIds" in e,
85
+ get: (e) => e.propertyIds,
86
+ set: (e, t) => {
87
+ e.propertyIds = t;
88
+ }
89
+ },
90
+ metadata: t
91
+ }, w, T), e(this, null, E, {
92
+ kind: "accessor",
93
+ name: "text",
94
+ static: !1,
95
+ private: !1,
96
+ access: {
97
+ has: (e) => "text" in e,
98
+ get: (e) => e.text,
99
+ set: (e, t) => {
100
+ e.text = t;
101
+ }
102
+ },
103
+ metadata: t
104
+ }, D, O), e(this, null, k, {
105
+ kind: "accessor",
106
+ name: "deckIndex",
107
+ static: !1,
108
+ private: !1,
109
+ access: {
110
+ has: (e) => "deckIndex" in e,
111
+ get: (e) => e.deckIndex,
112
+ set: (e, t) => {
113
+ e.deckIndex = t;
114
+ }
115
+ },
116
+ metadata: t
117
+ }, A, j), e(this, null, M, {
118
+ kind: "accessor",
119
+ name: "coachIndex",
120
+ static: !1,
121
+ private: !1,
122
+ access: {
123
+ has: (e) => "coachIndex" in e,
124
+ get: (e) => e.coachIndex,
125
+ set: (e, t) => {
126
+ e.coachIndex = t;
127
+ }
128
+ },
129
+ metadata: t
130
+ }, N, P), e(this, null, F, {
131
+ kind: "accessor",
132
+ name: "preventClick",
133
+ static: !1,
134
+ private: !1,
135
+ access: {
136
+ has: (e) => "preventClick" in e,
137
+ get: (e) => e.preventClick,
138
+ set: (e, t) => {
139
+ e.preventClick = t;
140
+ }
141
+ },
142
+ metadata: t
143
+ }, I, L), e(this, null, R, {
144
+ kind: "accessor",
145
+ name: "keyfocus",
146
+ static: !1,
147
+ private: !1,
148
+ access: {
149
+ has: (e) => "keyfocus" in e,
150
+ get: (e) => e.keyfocus,
151
+ set: (e, t) => {
152
+ e.keyfocus = t;
153
+ }
154
+ },
155
+ metadata: t
156
+ }, z, B), e(this, null, V, {
157
+ kind: "accessor",
158
+ name: "showTitleInfo",
159
+ static: !1,
160
+ private: !1,
161
+ access: {
162
+ has: (e) => "showTitleInfo" in e,
163
+ get: (e) => e.showTitleInfo,
164
+ set: (e, t) => {
165
+ e.showTitleInfo = t;
166
+ }
167
+ },
168
+ metadata: t
169
+ }, H, U), t && Object.defineProperty(this, Symbol.metadata, {
170
+ enumerable: !0,
171
+ configurable: !0,
172
+ writable: !0,
173
+ value: t
174
+ });
175
+ }
176
+ static {
177
+ this.elementName = "sbb-seat-reservation-place-control";
178
+ }
179
+ static {
180
+ this.styles = [a, c(p)];
181
+ }
182
+ static {
183
+ this.events = { selectplace: "selectplace" };
184
+ }
185
+ #e;
186
+ get placeType() {
187
+ return this.#e;
188
+ }
189
+ set placeType(e) {
190
+ this.#e = e;
191
+ }
192
+ #t;
193
+ get state() {
194
+ return this.#t;
195
+ }
196
+ set state(e) {
197
+ this.#t = e;
198
+ }
199
+ #n;
200
+ get travelDirection() {
201
+ return this.#n;
202
+ }
203
+ set travelDirection(e) {
204
+ this.#n = e;
205
+ }
206
+ #r;
207
+ get propertyIds() {
208
+ return this.#r;
209
+ }
210
+ set propertyIds(e) {
211
+ this.#r = e;
212
+ }
213
+ #i;
214
+ get text() {
215
+ return this.#i;
216
+ }
217
+ set text(e) {
218
+ this.#i = e;
219
+ }
220
+ #a;
221
+ get deckIndex() {
222
+ return this.#a;
223
+ }
224
+ set deckIndex(e) {
225
+ this.#a = e;
226
+ }
227
+ #o;
228
+ get coachIndex() {
229
+ return this.#o;
230
+ }
231
+ set coachIndex(e) {
232
+ this.#o = e;
233
+ }
234
+ #s;
235
+ get preventClick() {
236
+ return this.#s;
237
+ }
238
+ set preventClick(e) {
239
+ this.#s = e;
240
+ }
241
+ #c;
242
+ get keyfocus() {
243
+ return this.#c;
244
+ }
245
+ set keyfocus(e) {
246
+ this.#c = e;
247
+ }
248
+ #l;
249
+ get showTitleInfo() {
250
+ return this.#l;
251
+ }
252
+ set showTitleInfo(e) {
253
+ this.#l = e;
254
+ }
255
+ constructor() {
256
+ super(), this.#e = t(this, h, "SEAT"), this.#t = (t(this, g), t(this, v, "FREE")), this.#n = (t(this, y), t(this, x, "NONE")), this.#r = (t(this, S), t(this, w, [])), this.#i = (t(this, T), t(this, D, "")), this.#a = (t(this, O), t(this, A, null)), this.#o = (t(this, j), t(this, N, null)), this.#s = (t(this, P), t(this, I, !1)), this.#c = (t(this, L), t(this, z, "unfocus")), this.#l = (t(this, B), t(this, H, !1)), this._optionalScreenreaderInfo = (t(this, U), ""), this._language = new r(this), this.addEventListener("click", () => this._selectPlace());
257
+ }
258
+ willUpdate(e) {
259
+ super.willUpdate(e), e.has("keyfocus") && this.keyfocus === "focus" && this.focus(), e.has("showTitleInfo") && (this.showTitleInfo || (this.title = ""));
260
+ }
261
+ render() {
262
+ let e = this._getPlaceSvg(this.placeType, this.state), t = this.type.toLowerCase(), n = this.state.toLowerCase(), r = this.text, i = this.style?.getPropertyValue("--sbb-seat-reservation-place-control-width"), a = this.style?.getPropertyValue("--sbb-seat-reservation-place-control-height"), c = this.style?.getPropertyValue("--sbb-seat-reservation-place-control-rotation"), l = this.style?.getPropertyValue("--sbb-seat-reservation-place-control-text-rotation"), d = Number(l) - Number(c), f = this.preventClick ? "sbb-reservation-place-control--disabled" : null;
263
+ return this.showTitleInfo ? this.title = this._getTitleDescriptionPlace(c) : this._optionalScreenreaderInfo = this._getTitleDescriptionPlace(c), this.tabIndex = -1, o`
264
+ <div
265
+ part="sbb-sr-place-part"
266
+ class="sbb-sr-place-ctrl sbb-sr-place-ctrl--orientation-${c} sbb-sr-place-ctrl--state-${n} sbb-sr-place-ctrl--type-${t} ${f}"
267
+ >
268
+ <sbb-seat-reservation-graphic
269
+ style=${u({
270
+ "--sbb-seat-reservation-graphic-width": i,
271
+ "--sbb-seat-reservation-graphic-height": a,
272
+ "--sbb-seat-reservation-graphic-rotation": c,
273
+ "--sbb-seat-reservation-graphic-inverse-rotation": d
274
+ })}
275
+ .name=${e}
276
+ aria-hidden="true"
277
+ ></sbb-seat-reservation-graphic>
278
+ <span ${this.text ?? s} class="sbb-sr-place-ctrl__text" aria-hidden="true"
279
+ >${r}</span
280
+ >
281
+ ${this.showTitleInfo ? s : o`<sbb-screen-reader-only id="${this.id}"
282
+ >${this._optionalScreenreaderInfo}</sbb-screen-reader-only
283
+ >`}
284
+ </div>
285
+ `;
286
+ }
287
+ _getPlaceSvg(e, t) {
288
+ return `PLACE_${e}_${t}`;
289
+ }
290
+ _getTitleDescriptionPlace(e) {
291
+ let t = d("PLACE_CONTROL_" + this.type + "_" + this.state, this._language.current, [this.text]), n = this._getRelativeTravelDirection(e);
292
+ return (this.propertyIds.length || n) && (t += ". " + d("PLACE_PROPERTY", this._language.current).concat(": "), t += [n, ...this.propertyIds].map((e) => d("PLACE_PROPERTIES." + e, this._language.current)).filter((e) => e).join(", ")), t;
293
+ }
294
+ _getRelativeTravelDirection(e) {
295
+ if (!this.travelDirection || this.travelDirection === "NONE" || this.placeType !== "SEAT" || !e) return;
296
+ let t = Number(e);
297
+ if (t === 90 || t === 270) return "TRAVEL_DIRECTION_TRANSVERSELY";
298
+ if (t === 0 && this.travelDirection === "RIGHT" || t === 180 && this.travelDirection === "LEFT") return "TRAVEL_DIRECTION_IN_DIRECTION";
299
+ if (t === 0 || t === 180) return "TRAVEL_DIRECTION_IN_OPPOSITE_DIRECTION";
300
+ }
301
+ _selectPlace() {
302
+ if ((this.state === "FREE" || this.state === "SELECTED") && !this.preventClick) {
303
+ this.state = this.state === "FREE" ? "SELECTED" : "FREE";
304
+ let e = {
305
+ id: this.id,
306
+ deckIndex: this.deckIndex,
307
+ coachIndex: this.coachIndex,
308
+ number: this.text,
309
+ state: this.state,
310
+ placeType: this.placeType
311
+ };
312
+ this.dispatchEvent(new CustomEvent("selectplace", {
313
+ detail: e,
314
+ bubbles: !0,
315
+ composed: !0
316
+ }));
317
+ }
318
+ }
319
+ };
320
+ })();
321
+ //#endregion
322
+ export { m as t };
@@ -0,0 +1,17 @@
1
+ import { SbbElement as e } from "@sbb-esta/lyne-elements/core/base-elements.js";
2
+ import { boxSizingStyles as t } from "@sbb-esta/lyne-elements/core/styles.js";
3
+ import { html as n, unsafeCSS as r } from "lit";
4
+ //#region src/elements-experimental/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.scss?inline
5
+ var i = ":host{--sbb-seat-reservation-scoped-width: 0;--sbb-seat-reservation-scoped-height: 0;display:block;width:calc(var(--sbb-seat-reservation-scoped-width) * var(--sbb-seat-reservation-one-px-rem, .0625rem));height:calc(var(--sbb-seat-reservation-scoped-height) * var(--sbb-seat-reservation-one-px-rem, .0625rem))}", a = class extends e {
6
+ static {
7
+ this.elementName = "sbb-seat-reservation-scoped";
8
+ }
9
+ static {
10
+ this.styles = [t, r(i)];
11
+ }
12
+ render() {
13
+ return n`<slot></slot>`;
14
+ }
15
+ };
16
+ //#endregion
17
+ export { a as t };