@sbb-esta/lyne-elements-experimental-dev 4.12.0-dev.1777535350 → 4.12.0-dev.1777541244

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 (45) hide show
  1. package/custom-elements.json +288 -167
  2. package/development/seat-reservation/common/types.d.ts +3 -4
  3. package/development/seat-reservation/common/types.d.ts.map +1 -1
  4. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +38 -7
  5. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  6. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +143 -32
  7. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +2 -13
  8. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  9. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  10. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  11. package/development/seat-reservation/seat-reservation-area.js +1 -1
  12. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  13. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  14. package/development/seat-reservation/seat-reservation-graphic.js +1 -1
  15. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  16. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  17. package/development/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  18. package/development/seat-reservation/seat-reservation.js +1 -1
  19. package/development/seat-reservation-area.component-BWdrKqek.js +96 -0
  20. package/development/seat-reservation-graphic.component-CN5sWn0I.js +129 -0
  21. package/development/{seat-reservation-navigation-coach.component-CjoDkcVU.js → seat-reservation-navigation-coach.component-tDZkXl-3.js} +3 -3
  22. package/development/seat-reservation.component-DyB5FVpD.js +464 -0
  23. package/development/seat-reservation.js +4 -4
  24. package/development/seat-reservation.pure.js +4 -4
  25. package/package.json +2 -2
  26. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +130 -77
  27. package/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  28. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  29. package/seat-reservation/seat-reservation-area.js +1 -1
  30. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  31. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  32. package/seat-reservation/seat-reservation-graphic.js +1 -1
  33. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  34. package/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  35. package/seat-reservation/seat-reservation.js +1 -1
  36. package/{seat-reservation-area.component-CtYawDjE.js → seat-reservation-area.component-B5_N7H_a.js} +1 -1
  37. package/seat-reservation-graphic.component-Dh1e2Pve.js +102 -0
  38. package/{seat-reservation-navigation-coach.component-sug9IBTH.js → seat-reservation-navigation-coach.component-BdCUfksf.js} +2 -2
  39. package/{seat-reservation.component-DajC6fqU.js → seat-reservation.component-DEtsEzex.js} +74 -81
  40. package/seat-reservation.js +4 -4
  41. package/seat-reservation.pure.js +4 -4
  42. package/development/seat-reservation-area.component-DbeuTnXT.js +0 -96
  43. package/development/seat-reservation-graphic.component-DlrHtlia.js +0 -129
  44. package/development/seat-reservation.component-DFJVFmrI.js +0 -510
  45. package/seat-reservation-graphic.component-Cm_pVxaB.js +0 -102
@@ -3,13 +3,13 @@ import { mapIconToSvg } from "./seat-reservation/common/mapper/icon-mapper.js";
3
3
  import "./seat-reservation/common/mapper.js";
4
4
  import { t as svgs } from "./svgs-kDpBCto5.js";
5
5
  import { getI18nSeatReservation } from "./seat-reservation/common/translations/i18n.js";
6
- import { t as SbbSeatReservationAreaElement } from "./seat-reservation-area.component-DbeuTnXT.js";
7
- import { t as SbbSeatReservationGraphicElement } from "./seat-reservation-graphic.component-DlrHtlia.js";
6
+ import { t as SbbSeatReservationAreaElement } from "./seat-reservation-area.component-BWdrKqek.js";
7
+ import { t as SbbSeatReservationGraphicElement } from "./seat-reservation-graphic.component-CN5sWn0I.js";
8
8
  import { assetsTemplate, svgImageByOSDMCode } from "./seat-reservation/seat-reservation-graphic/seat-reservation-assets.js";
9
- import { t as SbbSeatReservationNavigationCoachElement } from "./seat-reservation-navigation-coach.component-CjoDkcVU.js";
9
+ import { t as SbbSeatReservationNavigationCoachElement } from "./seat-reservation-navigation-coach.component-tDZkXl-3.js";
10
10
  import { t as SbbSeatReservationNavigationServicesElement } from "./seat-reservation-navigation-services.component-CGel7__P.js";
11
11
  import { t as SbbSeatReservationPlaceControlElement } from "./seat-reservation-place-control.component-CM9efId7.js";
12
12
  import { t as SbbSeatReservationScopedElement } from "./seat-reservation-scoped.component-CFA_bJ3o.js";
13
13
  import { SeatReservationBaseElement } from "./seat-reservation/seat-reservation/seat-reservation-base-element.js";
14
- import { t as SbbSeatReservationElement } from "./seat-reservation.component-DFJVFmrI.js";
14
+ import { t as SbbSeatReservationElement } from "./seat-reservation.component-DyB5FVpD.js";
15
15
  export { SbbSeatReservationAreaElement, SbbSeatReservationElement, SbbSeatReservationGraphicElement, SbbSeatReservationNavigationCoachElement, SbbSeatReservationNavigationServicesElement, SbbSeatReservationPlaceControlElement, SbbSeatReservationScopedElement, SeatReservationBaseElement, assetsTemplate, getI18nSeatReservation, mapCoachInfosToCoachSelection, mapIconToSvg, mapPlaceAndCoachToSeatReservationPlaceSelection, mapPlaceInfosToPlaceSelection, mapRawDataToSeatReservation, svgImageByOSDMCode, svgs };
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements-experimental-dev",
3
- "version": "4.12.0-dev.1777535350",
3
+ "version": "4.12.0-dev.1777541244",
4
4
  "description": "Lyne Design System",
5
5
  "keywords": [
6
6
  "design system",
7
7
  "web components",
8
8
  "lit",
9
9
  "storybook",
10
- "https://github.com/sbb-design-systems/lyne-components/commit/2cd7dd0b9a7afbb43b39a76c92aa46c61e88342b"
10
+ "https://github.com/sbb-design-systems/lyne-components/commit/bd7531cbbd7e2e0e846ccf4a3030ed17d83e2fda"
11
11
  ],
12
12
  "type": "module",
13
13
  "exports": {
@@ -3,14 +3,14 @@ import { SbbElement as n } from "@sbb-esta/lyne-elements/core/base-elements.js";
3
3
  import { forceType as r } from "@sbb-esta/lyne-elements/core/decorators.js";
4
4
  import { isServer as i } from "lit";
5
5
  import { isArrowKeyOrPageKeysPressed as a } from "@sbb-esta/lyne-elements/core/a11y.js";
6
- import { eventOptions as ee, property as o, state as s } from "lit/decorators.js";
7
- import { mapCoachInfosToCoachSelection as te, mapIconToSvg as c, mapPlaceAndCoachToSeatReservationPlaceSelection as ne, mapPlaceInfosToPlaceSelection as re } from "../common/mapper.js";
6
+ import { eventOptions as o, property as s, state as c } from "lit/decorators.js";
7
+ import { mapCoachInfosToCoachSelection as l, mapIconToSvg as u, mapPlaceAndCoachToSeatReservationPlaceSelection as ee, mapPlaceInfosToPlaceSelection as te } from "../common/mapper.js";
8
8
  //#region src/elements-experimental/seat-reservation/seat-reservation/seat-reservation-base-element.ts
9
- var l;
9
+ var d;
10
10
  (function(e) {
11
11
  e.right = "right", e.left = "left";
12
- })(l ||= {});
13
- var ie = 3, ae = [
12
+ })(d ||= {});
13
+ var ne = 3, re = [
14
14
  "sa-vo",
15
15
  "sa-rs",
16
16
  "sa-abteilkinderwagen",
@@ -18,47 +18,47 @@ var ie = 3, ae = [
18
18
  "sa-fa",
19
19
  "sa-bz",
20
20
  "sa-rz"
21
- ], u = (() => {
22
- let u = n, d = [], f, p = [], m = [], h, g = [], _ = [], v, y = [], b = [], x, S = [], C = [], w, T = [], E = [], D, O = [], oe = [], k, A = [], j = [], M, N = [], P = [], F, I = [], L = [], R, z = [], B = [], V, H = [], U = [], W, G = [], K = [], q, J = [], Y = [], X, Z = [], Q = [], $;
23
- return class extends u {
21
+ ], f = (() => {
22
+ let f = n, p = [], m, h = [], g = [], _, v = [], y = [], b, x = [], S = [], C, w = [], T = [], E, D = [], O = [], k, A = [], j = [], ie, M = [], N = [], P, F = [], I = [], L, R = [], z = [], B, V = [], H = [], U, W = [], G = [], K, q = [], J = [], Y, X = [], Z = [], Q, $ = [], ae = [], oe;
23
+ return class extends f {
24
24
  static {
25
- let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(u[Symbol.metadata] ?? null) : void 0;
26
- f = [o({
25
+ let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(f[Symbol.metadata] ?? null) : void 0;
26
+ m = [s({
27
27
  attribute: "seat-reservations",
28
28
  type: Array
29
- })], h = [o({
29
+ })], _ = [s({
30
30
  attribute: "travel-direction",
31
31
  type: String
32
- })], v = [r(), o({
32
+ })], b = [r(), s({
33
33
  attribute: "has-navigation",
34
34
  type: Boolean
35
- })], x = [r(), o({
35
+ })], C = [r(), s({
36
36
  attribute: "align-vertical",
37
37
  type: Boolean,
38
38
  reflect: !0,
39
39
  useDefault: !0
40
- })], w = [r(), o({
40
+ })], E = [r(), s({
41
41
  attribute: "base-grid-size",
42
42
  type: Number
43
- })], D = [r(), o({
43
+ })], k = [r(), s({
44
44
  attribute: "height",
45
45
  type: Number
46
- })], k = [r(), o({
46
+ })], ie = [r(), s({
47
47
  attribute: "max-seat-reservations",
48
48
  type: Number
49
- })], M = [r(), o({
49
+ })], P = [r(), s({
50
50
  attribute: "max-bicycle-reservations",
51
51
  type: Number
52
- })], F = [r(), o({
52
+ })], L = [r(), s({
53
53
  attribute: "prevent-place-click",
54
54
  type: Boolean
55
- })], R = [r(), o({
55
+ })], B = [r(), s({
56
56
  attribute: "preselect-coach-index",
57
57
  type: Number
58
- })], V = [r(), o({
58
+ })], U = [r(), s({
59
59
  attribute: "show-title-info",
60
60
  type: Boolean
61
- })], W = [s()], q = [s()], X = [s()], $ = [ee({ passive: !0 })], e(this, null, f, {
61
+ })], K = [c()], Y = [c()], Q = [c()], oe = [o({ passive: !0 })], e(this, null, m, {
62
62
  kind: "accessor",
63
63
  name: "seatReservations",
64
64
  static: !1,
@@ -71,7 +71,7 @@ var ie = 3, ae = [
71
71
  }
72
72
  },
73
73
  metadata: t
74
- }, p, m), e(this, null, h, {
74
+ }, h, g), e(this, null, _, {
75
75
  kind: "accessor",
76
76
  name: "travelDirection",
77
77
  static: !1,
@@ -84,7 +84,7 @@ var ie = 3, ae = [
84
84
  }
85
85
  },
86
86
  metadata: t
87
- }, g, _), e(this, null, v, {
87
+ }, v, y), e(this, null, b, {
88
88
  kind: "accessor",
89
89
  name: "hasNavigation",
90
90
  static: !1,
@@ -97,7 +97,7 @@ var ie = 3, ae = [
97
97
  }
98
98
  },
99
99
  metadata: t
100
- }, y, b), e(this, null, x, {
100
+ }, x, S), e(this, null, C, {
101
101
  kind: "accessor",
102
102
  name: "alignVertical",
103
103
  static: !1,
@@ -110,7 +110,7 @@ var ie = 3, ae = [
110
110
  }
111
111
  },
112
112
  metadata: t
113
- }, S, C), e(this, null, w, {
113
+ }, w, T), e(this, null, E, {
114
114
  kind: "accessor",
115
115
  name: "baseGridSize",
116
116
  static: !1,
@@ -123,7 +123,7 @@ var ie = 3, ae = [
123
123
  }
124
124
  },
125
125
  metadata: t
126
- }, T, E), e(this, null, D, {
126
+ }, D, O), e(this, null, k, {
127
127
  kind: "accessor",
128
128
  name: "height",
129
129
  static: !1,
@@ -136,7 +136,7 @@ var ie = 3, ae = [
136
136
  }
137
137
  },
138
138
  metadata: t
139
- }, O, oe), e(this, null, k, {
139
+ }, A, j), e(this, null, ie, {
140
140
  kind: "accessor",
141
141
  name: "maxSeatReservations",
142
142
  static: !1,
@@ -149,7 +149,7 @@ var ie = 3, ae = [
149
149
  }
150
150
  },
151
151
  metadata: t
152
- }, A, j), e(this, null, M, {
152
+ }, M, N), e(this, null, P, {
153
153
  kind: "accessor",
154
154
  name: "maxBicycleReservations",
155
155
  static: !1,
@@ -162,7 +162,7 @@ var ie = 3, ae = [
162
162
  }
163
163
  },
164
164
  metadata: t
165
- }, N, P), e(this, null, F, {
165
+ }, F, I), e(this, null, L, {
166
166
  kind: "accessor",
167
167
  name: "preventPlaceClick",
168
168
  static: !1,
@@ -175,7 +175,7 @@ var ie = 3, ae = [
175
175
  }
176
176
  },
177
177
  metadata: t
178
- }, I, L), e(this, null, R, {
178
+ }, R, z), e(this, null, B, {
179
179
  kind: "accessor",
180
180
  name: "preselectCoachIndex",
181
181
  static: !1,
@@ -188,7 +188,7 @@ var ie = 3, ae = [
188
188
  }
189
189
  },
190
190
  metadata: t
191
- }, z, B), e(this, null, V, {
191
+ }, V, H), e(this, null, U, {
192
192
  kind: "accessor",
193
193
  name: "showTitleInfo",
194
194
  static: !1,
@@ -201,7 +201,7 @@ var ie = 3, ae = [
201
201
  }
202
202
  },
203
203
  metadata: t
204
- }, H, U), e(this, null, W, {
204
+ }, W, G), e(this, null, K, {
205
205
  kind: "accessor",
206
206
  name: "selectedCoachIndex",
207
207
  static: !1,
@@ -214,7 +214,7 @@ var ie = 3, ae = [
214
214
  }
215
215
  },
216
216
  metadata: t
217
- }, G, K), e(this, null, q, {
217
+ }, q, J), e(this, null, Y, {
218
218
  kind: "accessor",
219
219
  name: "focusedCoachIndex",
220
220
  static: !1,
@@ -227,7 +227,7 @@ var ie = 3, ae = [
227
227
  }
228
228
  },
229
229
  metadata: t
230
- }, J, Y), e(this, null, X, {
230
+ }, X, Z), e(this, null, Q, {
231
231
  kind: "accessor",
232
232
  name: "hoveredCoachIndex",
233
233
  static: !1,
@@ -240,7 +240,7 @@ var ie = 3, ae = [
240
240
  }
241
241
  },
242
242
  metadata: t
243
- }, Z, Q), e(this, null, $, {
243
+ }, $, ae), e(this, null, oe, {
244
244
  kind: "method",
245
245
  name: "coachAreaScrollend",
246
246
  static: !1,
@@ -250,7 +250,7 @@ var ie = 3, ae = [
250
250
  get: (e) => e.coachAreaScrollend
251
251
  },
252
252
  metadata: t
253
- }, null, d), t && Object.defineProperty(this, Symbol.metadata, {
253
+ }, null, p), t && Object.defineProperty(this, Symbol.metadata, {
254
254
  enumerable: !0,
255
255
  configurable: !0,
256
256
  writable: !0,
@@ -362,10 +362,10 @@ var ie = 3, ae = [
362
362
  this.#p = e;
363
363
  }
364
364
  constructor() {
365
- super(), this.#e = (t(this, d), t(this, p, null)), this.#t = (t(this, m), t(this, g, "NONE")), this.#n = (t(this, _), t(this, y, !0)), this.#r = (t(this, b), t(this, S, !1)), this.#i = (t(this, C), t(this, T, 16)), this.#a = (t(this, E), t(this, O, null)), this.#o = (t(this, oe), t(this, A, -1)), this.#s = (t(this, j), t(this, N, -1)), this.#c = (t(this, P), t(this, I, !1)), this.#l = (t(this, L), t(this, z, -1)), this.#u = (t(this, B), t(this, H, !1)), this.#d = (t(this, U), t(this, G, -1)), this.#f = (t(this, K), t(this, J, -1)), this.#p = (t(this, Y), t(this, Z, -1)), this.coachBorderPadding = (t(this, Q), 6), this.gapBetweenCoaches = 4, this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.gapBetweenCoachDecks = 48, this.coachNavButtonDim = 0, this.globalAreaIconDim = {
365
+ super(), this.#e = (t(this, p), t(this, h, null)), this.#t = (t(this, g), t(this, v, "NONE")), this.#n = (t(this, y), t(this, x, !0)), this.#r = (t(this, S), t(this, w, !1)), this.#i = (t(this, T), t(this, D, 16)), this.#a = (t(this, O), t(this, A, null)), this.#o = (t(this, j), t(this, M, -1)), this.#s = (t(this, N), t(this, F, -1)), this.#c = (t(this, I), t(this, R, !1)), this.#l = (t(this, z), t(this, V, -1)), this.#u = (t(this, H), t(this, W, !1)), this.#d = (t(this, G), t(this, q, -1)), this.#f = (t(this, J), t(this, X, -1)), this.#p = (t(this, Z), t(this, $, -1)), this.coachBorderPadding = (t(this, ae), 6), this.gapBetweenCoaches = 4, this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.gapBetweenCoachDecks = 48, this.coachNavButtonDim = 0, this.globalAreaIconDim = {
366
366
  w: 2,
367
367
  h: 2
368
- }, this.globalAreaIconPadding = .8, this.coachItemDetailsElements = [], this.currScrollDirection = l.right, this.maxCalcCoachesWidth = 0, this.scrollCoachesAreaWidth = 0, this.scrollNavigationAreaDim = 0, this.triggerCoachPositionsCollection = [], this.navigationScrollArea = null, this.coachScrollArea = null, this.currSelectedPlace = null, this.currSelectedPlaceElementId = null, this.currSelectedCoachIndex = -1, this.currSelectedDeckIndex = 0, this.preventCoachScrollByPlaceClick = !1, this.selectedSeatReservationPlaces = {
368
+ }, this.globalAreaIconPadding = .8, this.coachItemDetailsElements = [], this.currScrollDirection = d.right, this.maxCalcCoachesWidth = 0, this.scrollCoachesAreaWidth = 0, this.scrollNavigationAreaDim = 0, this.triggerCoachPositionsCollection = [], this.navigationScrollArea = null, this.coachScrollArea = null, this.currSelectedPlace = null, this.currSelectedPlaceElementId = null, this.currSelectedCoachIndex = -1, this.currSelectedDeckIndex = 0, this.preventCoachScrollByPlaceClick = !1, this.selectedSeatReservationPlaces = {
369
369
  seats: [],
370
370
  bicycles: []
371
371
  }, this.seatReservationWithoutNavigationHasFocus = !1, this.isCoachGridFocusable = !1, this.isAutoScrolling = !1, this.isKeyboardNavigation = !1, this.hasMultipleDecks = !1, this.hasSeatReservationNativeFocus = !1, this.keyboardNavigationEvents = {
@@ -375,7 +375,7 @@ var ie = 3, ae = [
375
375
  ArrowDown: "ArrowDown",
376
376
  Tab: "Tab",
377
377
  Enter: "Enter"
378
- }, this.notAreaElements = [
378
+ }, this.seatReservationStructure = { decks: [] }, this.notFixedRotatableAreaIcons = ["ENTRY_EXIT"], this.notAreaElements = [
379
379
  "DRIVER_AREA",
380
380
  "DRIVER_AREA_NO_VERTICAL_WALL",
381
381
  "COACH_PASSAGE",
@@ -385,19 +385,24 @@ var ie = 3, ae = [
385
385
  "COMPARTMENT_PASSAGE_MIDDLE",
386
386
  "COMPARTMENT_PASSAGE_LOW",
387
387
  "COMPARTMENT_WALL"
388
- ], this.overHangingElementInformation = [], this._isRunningInitPreselectCoachIndex = !1, this._lastStartScrollPos = -1, this._prepareServiceIconsNavigation = (e) => e && e?.map(function(e) {
388
+ ], this.middleBorderDockingElements = [
389
+ "DRIVER_AREA",
390
+ "DRIVER_AREA_NO_VERTICAL_WALL",
391
+ "COACH_PASSAGE",
392
+ "COACH_WALL_NO_PASSAGE"
393
+ ], this._isRunningInitPreselectCoachIndex = !1, this._lastStartScrollPos = -1, this._prepareServiceIconsNavigation = (e) => e && e?.map(function(e) {
389
394
  return {
390
395
  pId: e,
391
- svgName: c[e]?.svgName ? c[e]?.svgName : ""
396
+ svgName: u[e]?.svgName ? u[e]?.svgName : ""
392
397
  };
393
- }).filter((e) => ae.indexOf(e.svgName) !== -1).filter((e, t, n) => n.map((e) => e.svgName).indexOf(e.svgName) === t).map((e) => e.pId).slice(0, ie) || [], this.addEventListener("blur", () => this._onLeaveSeatReservationComponent());
398
+ }).filter((e) => re.indexOf(e.svgName) !== -1).filter((e, t, n) => n.map((e) => e.svgName).indexOf(e.svgName) === t).map((e) => e.pId).slice(0, ne) || [], this.addEventListener("blur", () => this._onLeaveSeatReservationComponent());
394
399
  }
395
400
  willUpdate(e) {
396
- if (super.willUpdate(e), e.has("seatReservations") && (this.hasMultipleDecks = this.seatReservations?.length > 1, this._initPrepareSeatReservationData(), this._prepareCoachWidthAndGapCalculations(), this._initSeatReservationPlaceSelection(), this.initNavigationSelectionByScrollEvent()), e.has("baseGridSize") && (this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.style?.setProperty("--sbb-seat-reservation-grid-size", `${this.baseGridSize}px`), this.initNavigationSelectionByScrollEvent()), e.has("height") && this.height) {
401
+ if (super.willUpdate(e), e.has("seatReservations") && (this.hasMultipleDecks = this.seatReservations?.length > 1, this._initPrepareSeatReservationData(), this._initSeatReservationPlaceSelection(), this.initNavigationSelectionByScrollEvent()), e.has("baseGridSize") && (this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.style?.setProperty("--sbb-seat-reservation-grid-size", `${this.baseGridSize}px`), this._initPrepareSeatReservationData(), this.initNavigationSelectionByScrollEvent()), e.has("height") && this.height) {
397
402
  let e = this.seatReservations[this.currSelectedDeckIndex] || null;
398
- e?.coachItems.length && (this.baseGridSize = this.height / e.coachItems[0].dimension.h, this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.style?.setProperty("--sbb-seat-reservation-grid-size", `${this.baseGridSize}px`), this._initPrepareSeatReservationData(), this.initNavigationSelectionByScrollEvent());
403
+ e?.coachItems.length && (this.baseGridSize = Math.round(this.height / e.coachItems[0].dimension.h), this.coachBorderOffset = this.coachBorderPadding / this.baseGridSize, this.style?.setProperty("--sbb-seat-reservation-grid-size", `${this.baseGridSize}px`), this._initPrepareSeatReservationData(), this.initNavigationSelectionByScrollEvent());
399
404
  }
400
- e.has("alignVertical") && this.alignVertical && this.initNavigationSelectionByScrollEvent(), e.has("preselectCoachIndex") && (this._isRunningInitPreselectCoachIndex = !0, setTimeout(() => this.scrollToSelectedNavCoach(this.preselectCoachIndex), 1));
405
+ e.has("alignVertical") && (this._initPrepareSeatReservationData(), this.initNavigationSelectionByScrollEvent()), e.has("preselectCoachIndex") && (this._isRunningInitPreselectCoachIndex = !0, setTimeout(() => this.scrollToSelectedNavCoach(this.preselectCoachIndex), 1));
401
406
  }
402
407
  navigateByDirectionBtn(e) {
403
408
  this.unfocusPlaceElement();
@@ -405,7 +410,7 @@ var ie = 3, ae = [
405
410
  e == "DIRECTION_LEFT" && t > 0 ? t = this.currSelectedCoachIndex == -1 ? 0 : this.currSelectedCoachIndex - 1 : e == "DIRECTION_RIGHT" && t < this.seatReservations[this.currSelectedDeckIndex]?.coachItems.length - 1 && (t = this.currSelectedCoachIndex == -1 ? 0 : this.currSelectedCoachIndex + 1), this.scrollToSelectedNavCoach(t);
406
411
  }
407
412
  _initPrepareSeatReservationData() {
408
- this._determineBaseFontSize(), this.hasMultipleDecks && this._initEmptyCoachDeckOffsets(), this._prepareCoachItemDetailsData(), this._prepareOptimizeAreaIconDimensionByMedian();
413
+ this._determineBaseFontSize(), this.hasMultipleDecks && this._initEmptyCoachDeckOffsets(), this._prepareCoachItemDetailsData(), this._prepareSeatReservationStructureInformation(), this._prepareOptimizeAreaIconDimensionByMedian();
409
414
  }
410
415
  initNavigationSelectionByScrollEvent() {
411
416
  this.coachScrollArea = this.shadowRoot?.querySelector("#sbb-sr__wrapper-scrollarea"), this.navigationScrollArea = this.shadowRoot?.querySelector("#sbb-sr__navigation-list-coaches");
@@ -424,12 +429,12 @@ var ie = 3, ae = [
424
429
  }
425
430
  if (this.coachScrollArea && e) {
426
431
  let t = 0;
427
- this.scrollCoachesAreaWidth = this.alignVertical ? this.coachScrollArea.getBoundingClientRect().height : this.coachScrollArea.getBoundingClientRect().width, this.triggerCoachPositionsCollection = e.coachItems.map((e) => {
428
- let n = t, r = this.getCalculatedDimension(e.dimension).w, i = this.overHangingElementInformation.find((t) => t.coachId === e.id), a = i?.overhangingPlaces || i?.overhangingGraphicAreas;
429
- return t += r + (a ? 2 * this.gapBetweenCoaches : this.gapBetweenCoaches), {
430
- start: n,
432
+ this.scrollCoachesAreaWidth = this.alignVertical ? this.coachScrollArea.getBoundingClientRect().height : this.coachScrollArea.getBoundingClientRect().width, this.triggerCoachPositionsCollection = e.coachItems.map((e, n) => {
433
+ let r = this.seatReservationStructure.decks[this.currSelectedDeckIndex].deckCoaches[n], i = t;
434
+ return t += r.width + (r.hasOverhangingElements ? 2 * this.gapBetweenCoaches : this.gapBetweenCoaches), {
435
+ start: i,
431
436
  end: t,
432
- width: r
437
+ width: r.width
433
438
  };
434
439
  }), this.maxCalcCoachesWidth = t - this.gapBetweenCoaches;
435
440
  }
@@ -582,11 +587,11 @@ var ie = 3, ae = [
582
587
  }, 10);
583
588
  }
584
589
  _setScrollDirectionByCoachIndex() {
585
- this.currScrollDirection = this.currSelectedCoachIndex > this.selectedCoachIndex ? l.right : l.left;
590
+ this.currScrollDirection = this.currSelectedCoachIndex > this.selectedCoachIndex ? d.right : d.left;
586
591
  }
587
592
  _getCoachScrollPositionX() {
588
593
  let e = this.triggerCoachPositionsCollection[this.currSelectedCoachIndex];
589
- return this.isKeyboardNavigation && this.currScrollDirection === l.left && e.width > this.scrollCoachesAreaWidth ? e.end - this.scrollCoachesAreaWidth : e.start;
594
+ return this.isKeyboardNavigation && this.currScrollDirection === d.left && e.width > this.scrollCoachesAreaWidth ? e.end - this.scrollCoachesAreaWidth : e.start;
590
595
  }
591
596
  _setFocusToSelectedCoachGrid() {
592
597
  if (this.isCoachGridFocusable && this.hasSeatReservationNativeFocus) {
@@ -617,7 +622,7 @@ var ie = 3, ae = [
617
622
  if (this.currSelectedPlace) {
618
623
  let a = { ...this.currSelectedPlace.position };
619
624
  e && (i = this._getSwitchedCoachDeckIndexByKeyNavigation(e, t), i !== null && (r = this.seatReservations[i].coachItems[this.currSelectedCoachIndex].places || [], a.y = i < this.currSelectedDeckIndex ? t.dimension.h : -1));
620
- for (let t of r) e ? t.number !== this.currSelectedPlace?.number && (e === this.keyboardNavigationEvents.ArrowRight && (t.position.y === a.y || t.position.y === a.y - 1) && t.position.x > a.x && (!n || t.position.x < n.position.x) || e === this.keyboardNavigationEvents.ArrowDown && (t.position.x === a.x || t.position.x === a.x + 1) && t.position.y > a.y && (!n || t.position.y < n.position.y) || e === this.keyboardNavigationEvents.ArrowLeft && (t.position.y === a.y || t.position.y === a.y + 1) && t.position.x < a.x && (!n || t.position.x > n.position.x) || e === this.keyboardNavigationEvents.ArrowUp && (t.position.x === a.x || t.position.x === a.x - 1) && t.position.y < a.y && (!n || t.position.y > n.position.y)) && (n = t) : (this.currScrollDirection === l.right && t.position.y === a.y && (!n || t.position.x < n.position.x) || this.currScrollDirection === l.left && t.position.y === a.y && (!n || t.position.x > n.position.x)) && (n = t);
625
+ for (let t of r) e ? t.number !== this.currSelectedPlace?.number && (e === this.keyboardNavigationEvents.ArrowRight && (t.position.y === a.y || t.position.y === a.y - 1) && t.position.x > a.x && (!n || t.position.x < n.position.x) || e === this.keyboardNavigationEvents.ArrowDown && (t.position.x === a.x || t.position.x === a.x + 1) && t.position.y > a.y && (!n || t.position.y < n.position.y) || e === this.keyboardNavigationEvents.ArrowLeft && (t.position.y === a.y || t.position.y === a.y + 1) && t.position.x < a.x && (!n || t.position.x > n.position.x) || e === this.keyboardNavigationEvents.ArrowUp && (t.position.x === a.x || t.position.x === a.x - 1) && t.position.y < a.y && (!n || t.position.y > n.position.y)) && (n = t) : (this.currScrollDirection === d.right && t.position.y === a.y && (!n || t.position.x < n.position.x) || this.currScrollDirection === d.left && t.position.y === a.y && (!n || t.position.x > n.position.x)) && (n = t);
621
626
  i !== null && n && (this.currSelectedDeckIndex = i);
622
627
  }
623
628
  }
@@ -721,7 +726,7 @@ var ie = 3, ae = [
721
726
  _initSeatReservationPlaceSelection() {
722
727
  this.selectedSeatReservationPlaces.seats = [], this.selectedSeatReservationPlaces.bicycles = [], this.seatReservations?.forEach((e, t) => e.coachItems.map((n, r) => {
723
728
  n.places?.filter((e) => e.state === "SELECTED")?.forEach((n) => {
724
- let i = re(n, this.getPlaceElementId(t, r, n.number), e.deckCoachIndex, r), a = this._getSeatReservationPlaceSelection(i, t);
729
+ let i = te(n, this.getPlaceElementId(t, r, n.number), e.deckCoachIndex, r), a = this._getSeatReservationPlaceSelection(i, t);
725
730
  a && (a.placeType === "SEAT" ? this.selectedSeatReservationPlaces.seats.push(a) : this.selectedSeatReservationPlaces.bicycles.push(a));
726
731
  });
727
732
  }));
@@ -736,12 +741,12 @@ var ie = 3, ae = [
736
741
  _getSeatReservationPlaceSelection(e, t) {
737
742
  if (t === null) return null;
738
743
  let n = this.seatReservations[t].coachItems[e.coachIndex], r = n.places?.find((t) => t.number === e.number);
739
- return r ? ne(r, n, e.id, e.deckIndex, e.coachIndex) : null;
744
+ return r ? ee(r, n, e.id, e.deckIndex, e.coachIndex) : null;
740
745
  }
741
746
  _getSeatReservationSelectedCoach(e) {
742
747
  if (!this.seatReservations[this.currSelectedDeckIndex].coachItems[e]) return null;
743
748
  let t = this.seatReservations[this.currSelectedDeckIndex].coachItems[e];
744
- return te(e, t, this.getAvailableFreePlacesNumFromCoach(t.places));
749
+ return l(e, t, this.getAvailableFreePlacesNumFromCoach(t.places));
745
750
  }
746
751
  _setCurrSelectedPlaceElementId(e) {
747
752
  this.currSelectedPlaceElementId = e ? this.getPlaceElementId(this.currSelectedDeckIndex, this.currSelectedCoachIndex, e.number) : null;
@@ -764,9 +769,9 @@ var ie = 3, ae = [
764
769
  travelClass: this._prepareTravelClassNavigation(n),
765
770
  propertyIds: this._prepareServiceIconsNavigation(r),
766
771
  isDriverArea: e.places ? e.places.length === 0 : !0,
772
+ isLocomotive: this._isLocomotive(e),
767
773
  driverAreaSide: this._prepareDriverAreaSideNavigation(e),
768
- freePlaces: this.getAvailableFreePlacesNumFromCoach(i),
769
- driverAreaElements: this._setDriverAreasElements(e)
774
+ freePlaces: this.getAvailableFreePlacesNumFromCoach(i)
770
775
  });
771
776
  });
772
777
  }
@@ -806,17 +811,71 @@ var ie = 3, ae = [
806
811
  };
807
812
  }
808
813
  }
809
- _prepareCoachWidthAndGapCalculations() {
810
- this.seatReservations && this.seatReservations.forEach((e) => {
814
+ _prepareSeatReservationStructureInformation() {
815
+ this.seatReservations && (this.seatReservationStructure = { decks: [] }, this.seatReservations.forEach((e, t) => {
816
+ let n = {
817
+ deckIndex: t,
818
+ deckCoaches: []
819
+ };
811
820
  e?.coachItems?.forEach((e) => {
812
- let t = this._isOverhangingElementsPresent(e.dimension.w, e.places), n = e.graphicElements?.filter((e) => e.icon && !this.notAreaElements.includes(e.icon)), r = this._isOverhangingElementsPresent(e.dimension.w, n);
813
- this.overHangingElementInformation.push({
814
- coachId: e.id,
815
- overhangingPlaces: t,
816
- overhangingGraphicAreas: r
817
- });
818
- });
821
+ let t = (e.graphicElements?.filter((e) => e.icon && !this.notAreaElements.includes(e.icon)))?.concat(e.serviceElements || []).concat(e.places || []) || [], r = this._isOverhangingElementsPresent(e.dimension.w, t), i = e.graphicElements?.filter((e) => !this.notAreaElements.includes(e.icon)).map((t) => this._getCalculatedDimensionPositionElement(t, e.dimension, !0)), a = e.graphicElements?.filter((e) => this.notAreaElements.includes(e.icon)).map((t) => this._getCalculatedDimensionPositionElement(t, e.dimension, !1)), o = e.serviceElements?.map((t) => this._getCalculatedDimensionPositionElement(t, e.dimension, !1)), s = this._getCalculatedMiddleBorderElement(e), c = this.getCalculatedDimension({ ...e.dimension }), l = {
822
+ width: c.w,
823
+ height: c.h,
824
+ otherElements: a || [],
825
+ serviceElements: o || [],
826
+ areaElements: i || [],
827
+ borderMiddleElement: s,
828
+ hasOverhangingElements: r
829
+ };
830
+ n.deckCoaches.push(l);
831
+ }), this.seatReservationStructure.decks.push(n);
832
+ }));
833
+ }
834
+ _getCalculatedMiddleBorderElement(e) {
835
+ let t = (e.dimension.h + this.coachBorderOffset * 2) * this.baseGridSize, n = 0, r = e.dimension.w;
836
+ if (e.graphicElements) {
837
+ let t = this._getFirstLastDockingElements(e.graphicElements);
838
+ if (t?.length == 2) {
839
+ let i = t[0], a = t[1], o = i.position.x == 0 ? a.dimension.w : i.dimension.w;
840
+ n = i.position.x == 0 ? i.dimension.w : a.dimension.w, r = e.dimension.w - o - n;
841
+ } else if (t?.length == 1) {
842
+ let i = t[0];
843
+ i.position.x === 0 ? (n = i.dimension.w, r = e.dimension.w - i.dimension.w) : i.position.x !== 0 && (r = e.dimension.w - i.dimension.w);
844
+ }
845
+ }
846
+ let i = this.coachBorderPadding * -1;
847
+ return {
848
+ position: {
849
+ x: n * this.baseGridSize,
850
+ y: i,
851
+ z: 0
852
+ },
853
+ dimension: {
854
+ w: r * this.baseGridSize,
855
+ h: t
856
+ }
857
+ };
858
+ }
859
+ _getFirstLastDockingElements(e) {
860
+ let t = (e.filter((e) => this.middleBorderDockingElements.includes(e.icon)) || []).sort((e, t) => {
861
+ let n = e.position.x, r = t.position.x;
862
+ return n > r ? 1 : n < r ? -1 : 0;
819
863
  });
864
+ return t.filter((e, n) => n == 0 || n == t.length - 1);
865
+ }
866
+ _getCalculatedDimensionPositionElement(e, t, n) {
867
+ let r = { ...e.dimension }, i = { ...e.position }, a = e.rotation || 0, o = this.notAreaElements.concat(this.notFixedRotatableAreaIcons).indexOf(e.icon) === -1, s = this.alignVertical && o ? a - 90 : a, c = null;
868
+ if (n) {
869
+ let n = e.icon?.indexOf("TABLE") === -1, a = e.icon && n ? e.icon : null, o = this.isElementDirectlyOnBorder(e, t) && a !== "ENTRY_EXIT";
870
+ e.position.y === 0 ? (c = "upper-border", i.y -= this.coachBorderOffset - this.coachBorderOffset / 3) : e.position.y + e.dimension.h === t.h && (c = "lower-border", o || (i.y += this.coachBorderOffset - this.coachBorderOffset / 3)), o && (r.h += this.coachBorderOffset - this.coachBorderOffset / 3);
871
+ } else e.position.y === 0 && (i.y -= this.coachBorderOffset), t.h === e.position.y + e.dimension.h && (r.h += this.coachBorderOffset * 2);
872
+ return r.w *= this.baseGridSize, r.h *= this.baseGridSize, i.x *= this.baseGridSize, i.y *= this.baseGridSize, {
873
+ icon: e.icon && e.icon.endsWith("DRIVER_AREA") ? e.icon?.concat("_", this.seatReservations[this.currSelectedDeckIndex].vehicleType) : e.icon,
874
+ rotation: s,
875
+ dimension: r,
876
+ position: i,
877
+ mounting: c
878
+ };
820
879
  }
821
880
  _getPlaceHtmlElement() {
822
881
  return this.currSelectedPlaceElementId && this.shadowRoot?.getElementById(this.currSelectedPlaceElementId) || null;
@@ -843,14 +902,8 @@ var ie = 3, ae = [
843
902
  _isOverhangingElementsPresent(e, t) {
844
903
  return t?.some((t) => t.position.x === 0 || t.position.x + t.dimension.w >= e) ?? !1;
845
904
  }
846
- _setDriverAreasElements(e) {
847
- return e ? {
848
- driverArea: e.graphicElements?.find((e) => e.icon === "DRIVER_AREA"),
849
- driverAreaNoVerticalWall: e.type === "LOCOMOTIVE_COACH" ? e.graphicElements?.find((e) => e.icon === "DRIVER_AREA_NO_VERTICAL_WALL") : void 0
850
- } : {
851
- driverArea: void 0,
852
- driverAreaNoVerticalWall: void 0
853
- };
905
+ _isLocomotive(e) {
906
+ return e?.graphicElements?.find((e) => e.icon === "DRIVER_AREA_NO_VERTICAL_WALL") !== void 0;
854
907
  }
855
908
  _onLeaveSeatReservationComponent() {
856
909
  this.hasNavigation && (this.focusedCoachIndex = -1), this.unfocusPlaceElement();
@@ -858,4 +911,4 @@ var ie = 3, ae = [
858
911
  };
859
912
  })();
860
913
  //#endregion
861
- export { u as SeatReservationBaseElement };
914
+ export { f as SeatReservationBaseElement };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../seat-reservation.component-DajC6fqU.js";
1
+ import { t as e } from "../../seat-reservation.component-DEtsEzex.js";
2
2
  export { e as SbbSeatReservationElement };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../seat-reservation-area.component-CtYawDjE.js";
1
+ import { t as e } from "../../seat-reservation-area.component-B5_N7H_a.js";
2
2
  export { e as SbbSeatReservationAreaElement };
@@ -1,4 +1,4 @@
1
- import { t as e } from "../seat-reservation-area.component-CtYawDjE.js";
1
+ import { t as e } from "../seat-reservation-area.component-B5_N7H_a.js";
2
2
  e.define(), console.warn("The entrypoint '@sbb-esta/elements-experimental/seat-reservation/seat-reservation-area.js' has been deprecated.\nUse either '@sbb-esta/elements-experimental/seat-reservation.js' or '@sbb-esta/elements-experimental/seat-reservation.pure.js' instead.");
3
3
  //#endregion
4
4
  export { e as SbbSeatReservationAreaElement };
@@ -1,4 +1,4 @@
1
- import { t as e } from "../../seat-reservation-graphic.component-Cm_pVxaB.js";
1
+ import { t as e } from "../../seat-reservation-graphic.component-Dh1e2Pve.js";
2
2
  import { html as t } from "lit";
3
3
  import { unsafeHTML as n } from "lit/directives/unsafe-html.js";
4
4
  import { mapIconToSvg as r } from "../common/mapper.js";
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../seat-reservation-graphic.component-Cm_pVxaB.js";
1
+ import { t as e } from "../../seat-reservation-graphic.component-Dh1e2Pve.js";
2
2
  export { e as SbbSeatReservationGraphicElement };
@@ -1,4 +1,4 @@
1
- import { t as e } from "../seat-reservation-graphic.component-Cm_pVxaB.js";
1
+ import { t as e } from "../seat-reservation-graphic.component-Dh1e2Pve.js";
2
2
  e.define(), console.warn("The entrypoint '@sbb-esta/elements-experimental/seat-reservation/seat-reservation-graphic.js' has been deprecated.\nUse either '@sbb-esta/elements-experimental/seat-reservation.js' or '@sbb-esta/elements-experimental/seat-reservation.pure.js' instead.");
3
3
  //#endregion
4
4
  export { e as SbbSeatReservationGraphicElement };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../seat-reservation-navigation-coach.component-sug9IBTH.js";
1
+ import { t as e } from "../../seat-reservation-navigation-coach.component-BdCUfksf.js";
2
2
  export { e as SbbSeatReservationNavigationCoachElement };
@@ -1,4 +1,4 @@
1
- import { t as e } from "../seat-reservation-navigation-coach.component-sug9IBTH.js";
1
+ import { t as e } from "../seat-reservation-navigation-coach.component-BdCUfksf.js";
2
2
  e.define(), console.warn("The entrypoint '@sbb-esta/elements-experimental/seat-reservation/seat-reservation-navigation-coach.js' has been deprecated.\nUse either '@sbb-esta/elements-experimental/seat-reservation.js' or '@sbb-esta/elements-experimental/seat-reservation.pure.js' instead.");
3
3
  //#endregion
4
4
  export { e as SbbSeatReservationNavigationCoachElement };
@@ -1,5 +1,5 @@
1
1
  import { SeatReservationBaseElement as e } from "./seat-reservation/seat-reservation-base-element.js";
2
- import { t } from "../seat-reservation.component-DajC6fqU.js";
2
+ import { t } from "../seat-reservation.component-DEtsEzex.js";
3
3
  t.define(), console.warn("The entrypoint '@sbb-esta/elements-experimental/seat-reservation/seat-reservation.js' has been deprecated.\nUse either '@sbb-esta/elements-experimental/seat-reservation.js' or '@sbb-esta/elements-experimental/seat-reservation.pure.js' instead.");
4
4
  //#endregion
5
5
  export { t as SbbSeatReservationElement, e as SeatReservationBaseElement };
@@ -5,7 +5,7 @@ import { boxSizingStyles as i } from "@sbb-esta/lyne-elements/core/styles.js";
5
5
  import { html as a, unsafeCSS as o } from "lit";
6
6
  import { property as s } from "lit/decorators.js";
7
7
  //#region src/elements-experimental/seat-reservation/seat-reservation-area/seat-reservation-area.scss?inline
8
- var c = ":host{--sbb-seat-reservation-area-border-radius: var(--sbb-border-width-4x);--sbb-seat-reservation-area-rotation: 0;display:flex;justify-content:center;align-items:center;height:calc(var(--sbb-seat-reservation-area-height) * var(--sbb-seat-reservation-one-px-rem, .0625rem));width:calc(var(--sbb-seat-reservation-area-width) * var(--sbb-seat-reservation-one-px-rem, .0625rem));border:var(--sbb-border-width-1x) solid var(--sbb-color-graphite);border:var(--sbb-border-width-1x) solid light-dark(var(--sbb-color-graphite),var(--sbb-color-granite));border-radius:var(--sbb-seat-reservation-area-border-radius);position:absolute;inset-block-start:calc(var(--sbb-seat-reservation-area-top) * var(--sbb-seat-reservation-one-px-rem, .0625rem));inset-inline-start:calc(var(--sbb-seat-reservation-area-left) * var(--sbb-seat-reservation-one-px-rem, .0625rem));rotate:calc(var(--sbb-seat-reservation-area-rotation) * 1deg);line-height:normal;background-color:var(--sbb-background-color-2)}:host([background=dark]){background-color:var(--sbb-color-milk);background-color:light-dark(var(--sbb-color-milk),var(--sbb-color-iron))}:host([mounting=upper-border]){border-block-start-width:0;border-radius:0 0 var(--sbb-seat-reservation-area-border-radius) var(--sbb-seat-reservation-area-border-radius)}:host([mounting=lower-border]){border-block-end-width:0;border-radius:var(--sbb-seat-reservation-area-border-radius) var(--sbb-seat-reservation-area-border-radius) 0 0}:host([mounting=upper-to-lower-border]){border-block-start:none;border-block-end:none;border-radius:0}:host(.sbb-seat-reservation-area--cursor-pointer){cursor:var(--sbb-cursor-pointer)}", l = (() => {
8
+ var c = ":host{--sbb-seat-reservation-area-border-radius: var(--sbb-border-width-4x);--sbb-seat-reservation-area-rotation: 0;--sbb-seat-reservation-area-z-index: 0;display:flex;justify-content:center;align-items:center;height:calc(var(--sbb-seat-reservation-area-height) * var(--sbb-seat-reservation-one-px-rem, .0625rem));width:calc(var(--sbb-seat-reservation-area-width) * var(--sbb-seat-reservation-one-px-rem, .0625rem));border:var(--sbb-border-width-1x) solid var(--sbb-color-graphite);border:var(--sbb-border-width-1x) solid light-dark(var(--sbb-color-graphite),var(--sbb-color-granite));border-radius:var(--sbb-seat-reservation-area-border-radius);position:absolute;z-index:var(--sbb-seat-reservation-area-z-index);inset-block-start:calc(var(--sbb-seat-reservation-area-top) * var(--sbb-seat-reservation-one-px-rem, .0625rem));inset-inline-start:calc(var(--sbb-seat-reservation-area-left) * var(--sbb-seat-reservation-one-px-rem, .0625rem));rotate:calc(var(--sbb-seat-reservation-area-rotation) * 1deg);line-height:normal;background-color:var(--sbb-background-color-2)}:host([background=dark]){background-color:var(--sbb-color-milk);background-color:light-dark(var(--sbb-color-milk),var(--sbb-color-iron))}:host([mounting=upper-border]){border-block-start-width:0;border-radius:0 0 var(--sbb-seat-reservation-area-border-radius) var(--sbb-seat-reservation-area-border-radius)}:host([mounting=lower-border]){border-block-end-width:0;border-radius:var(--sbb-seat-reservation-area-border-radius) var(--sbb-seat-reservation-area-border-radius) 0 0}:host([mounting=upper-to-lower-border]){border-block-start:none;border-block-end:none;border-radius:0}:host(.sbb-seat-reservation-area--cursor-pointer){cursor:var(--sbb-cursor-pointer)}", l = (() => {
9
9
  let l = n, u, d = [], f = [], p, m = [], h = [];
10
10
  return class extends l {
11
11
  static {