@sbb-esta/lyne-elements-experimental 3.2.0 → 3.3.2

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 (50) hide show
  1. package/custom-elements.json +341 -125
  2. package/development/seat-reservation/common/mapper/icon-mapper.d.ts.map +1 -1
  3. package/development/seat-reservation/common/mapper/icon-mapper.js +4 -3
  4. package/development/seat-reservation/common/mapper/mapper.d.ts +4 -4
  5. package/development/seat-reservation/common/mapper/mapper.d.ts.map +1 -1
  6. package/development/seat-reservation/common/mapper/mapper.js +9 -8
  7. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +113 -0
  8. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -1
  9. package/development/seat-reservation/common/mapper/seat-reservation-sample-data.js +20373 -8
  10. package/development/seat-reservation/common/translations/i18n.d.ts.map +1 -1
  11. package/development/seat-reservation/common/translations/i18n.js +35 -4
  12. package/development/seat-reservation/common/types.d.ts +10 -3
  13. package/development/seat-reservation/common/types.d.ts.map +1 -1
  14. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +20 -14
  15. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  16. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +129 -79
  17. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts +11 -10
  18. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  19. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +208 -132
  20. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  21. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +4 -4
  22. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +28 -28
  23. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +2 -0
  24. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -1
  25. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +22 -5
  26. package/package.json +2 -2
  27. package/seat-reservation/common/mapper/icon-mapper.d.ts.map +1 -1
  28. package/seat-reservation/common/mapper/icon-mapper.js +3 -2
  29. package/seat-reservation/common/mapper/mapper.d.ts +4 -4
  30. package/seat-reservation/common/mapper/mapper.d.ts.map +1 -1
  31. package/seat-reservation/common/mapper/mapper.js +29 -28
  32. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts +113 -0
  33. package/seat-reservation/common/mapper/seat-reservation-sample-data.d.ts.map +1 -1
  34. package/seat-reservation/common/mapper/seat-reservation-sample-data.js +20375 -11
  35. package/seat-reservation/common/translations/i18n.d.ts.map +1 -1
  36. package/seat-reservation/common/translations/i18n.js +34 -3
  37. package/seat-reservation/common/types.d.ts +10 -3
  38. package/seat-reservation/common/types.d.ts.map +1 -1
  39. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +20 -14
  40. package/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  41. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +191 -146
  42. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts +11 -10
  43. package/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  44. package/seat-reservation/seat-reservation/seat-reservation.component.js +211 -188
  45. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  46. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  47. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +74 -74
  48. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +2 -0
  49. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -1
  50. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +64 -53
@@ -53,7 +53,7 @@ const style = css`*,
53
53
  border-radius: 0;
54
54
  }
55
55
 
56
- :host(:hover) {
56
+ :host(.sbb-seat-reservation-area--cursor-pointer) {
57
57
  cursor: pointer;
58
58
  }`;
59
59
  let SbbSeatReservationAreaElement = (() => {
@@ -45,6 +45,10 @@ const style = css`*,
45
45
  inset-block-start: calc(var(--sbb-seat-reservation-graphic-top) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
46
46
  }
47
47
 
48
+ :host(.sbb-seat-reservation-graphic--cursor-pointer) {
49
+ cursor: pointer;
50
+ }
51
+
48
52
  .sbb-sr-icon,
49
53
  .sbb-sr-graphic {
50
54
  width: inherit;
@@ -53,10 +57,6 @@ const style = css`*,
53
57
  rotate: calc(var(--sbb-seat-reservation-graphic-rotation) * 1deg);
54
58
  }
55
59
 
56
- .sbb-sr-icon:hover {
57
- cursor: var(--sbb-seat-reservation--cursor-pointer, default);
58
- }
59
-
60
60
  .sbb-sr-icon {
61
61
  color: var(--sbb-color-granite);
62
62
  }
@@ -21,12 +21,12 @@ const style = css`*,
21
21
  }
22
22
 
23
23
  :host {
24
- --sbb-seat-reservation-navigation-travelclass-spacing: 0.625rem;
24
+ --sbb-seat-reservation-navigation-travelclass-spacing: 10;
25
25
  --sbb-seat-reservation-navigation-btn-outline-color: var(--sbb-color-granite);
26
- --sbb-seat-reservation-navigation-btn-outline-width: var(--sbb-border-width-1x);
26
+ --sbb-seat-reservation-navigation-btn-outline-width: 1;
27
27
  --sbb-seat-reservation-navigation-btn-background-color: var(--sbb-color-white);
28
28
  --sbb-seat-reservation-navigation-btn-outline-color-selected: var(--sbb-color-black);
29
- --sbb-seat-reservation-navigation-btn-outline-width-hover: var(--sbb-border-width-2x);
29
+ --sbb-seat-reservation-navigation-btn-outline-width-hover: 2;
30
30
  --sbb-seat-reservation-navigation-btn-background-color-hover: var(--sbb-color-cloud);
31
31
  }
32
32
 
@@ -38,7 +38,7 @@ const style = css`*,
38
38
  display: flex;
39
39
  flex-direction: column;
40
40
  gap: var(--sbb-spacing-fixed-2x);
41
- width: var(--sbb-train-formation-wagon-width);
41
+ width: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
42
42
  list-style-type: none;
43
43
  }
44
44
  .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation--first-class, .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation--first-class {
@@ -49,17 +49,17 @@ const style = css`*,
49
49
  border-end-start-radius: var(--sbb-border-radius-8x);
50
50
  }
51
51
  .sbb-sr-navigation__item-coach.first-coach .sbb-sr-navigation--first-class {
52
- margin-inline-start: var(--sbb-seat-reservation-navigation-travelclass-spacing);
52
+ margin-inline-start: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
53
53
  }
54
54
  .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
55
55
  border-start-end-radius: var(--sbb-border-radius-8x);
56
56
  border-end-end-radius: var(--sbb-border-radius-8x);
57
57
  }
58
58
  .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation__additional-information {
59
- padding-inline-end: var(--sbb-seat-reservation-navigation-travelclass-spacing);
59
+ padding-inline-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
60
60
  }
61
61
  .sbb-sr-navigation__item-coach.last-coach .sbb-sr-navigation--first-class {
62
- margin-inline-end: var(--sbb-seat-reservation-navigation-travelclass-spacing);
62
+ margin-inline-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
63
63
  }
64
64
  .sbb-sr-navigation__item-coach.vertical-coach {
65
65
  flex-direction: row;
@@ -80,9 +80,9 @@ const style = css`*,
80
80
  display: flex;
81
81
  flex-direction: column;
82
82
  justify-content: center;
83
- height: 2.25rem;
83
+ height: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
84
84
  position: relative;
85
- outline: var(--sbb-seat-reservation-navigation-btn-outline-width) solid var(--sbb-seat-reservation-navigation-btn-outline-color);
85
+ outline: calc(var(--sbb-seat-reservation-navigation-btn-outline-width) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-seat-reservation-navigation-btn-outline-color);
86
86
  border-radius: var(--sbb-border-radius-2x);
87
87
  background-color: var(--sbb-seat-reservation-navigation-btn-background-color);
88
88
  cursor: pointer;
@@ -149,8 +149,8 @@ const style = css`*,
149
149
  justify-content: space-between;
150
150
  align-items: center;
151
151
  flex: 1;
152
- column-gap: var(--sbb-spacing-fixed-2x);
153
- padding-inline: 1rem 1rem;
152
+ column-gap: calc(8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
153
+ padding-inline: calc(16 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
154
154
  font-family: var(--sbb-typo-font-family);
155
155
  font-weight: 700;
156
156
  color: var(--sbb-color-granite);
@@ -179,11 +179,11 @@ const style = css`*,
179
179
  }
180
180
 
181
181
  .sbb-sr-navigation--first-class {
182
- width: calc(100% - 0.5rem);
182
+ width: calc(100% - 8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
183
183
  position: absolute;
184
- inset-block-start: 0.1875rem;
185
- inset-inline-start: 0.25rem;
186
- border: var(--sbb-border-width-1x) solid transparent;
184
+ inset-block-start: calc(3 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
185
+ inset-inline-start: calc(4 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
186
+ border: calc(1 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid transparent;
187
187
  border-radius: var(--sbb-border-radius-1x);
188
188
  margin: auto;
189
189
  background-color: var(--sbb-color-lemon);
@@ -193,8 +193,8 @@ const style = css`*,
193
193
  display: flex;
194
194
  align-items: center;
195
195
  justify-content: center;
196
- min-height: 1.25rem;
197
- min-width: 1.25rem;
196
+ min-height: calc(20 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
197
+ min-width: calc(20 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
198
198
  border-radius: var(--sbb-border-radius-1x);
199
199
  text-align: center;
200
200
  background-color: var(--sbb-color-granite);
@@ -203,31 +203,31 @@ const style = css`*,
203
203
 
204
204
  .sbb-sr-navigation__item-coach.vertical-coach .sbb-sr-navigation__ctrl-button {
205
205
  flex-direction: row-reverse;
206
- height: 5rem;
207
- min-width: 2.25rem;
206
+ height: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
207
+ min-width: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
208
208
  }
209
209
  .sbb-sr-navigation__item-coach.vertical-coach .sbb-sr-navigation__additional-information {
210
210
  flex-direction: column-reverse;
211
- padding-block: 1rem 1rem;
211
+ padding-block: calc(16 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
212
212
  padding-inline-start: unset;
213
213
  padding-inline-end: unset;
214
214
  }
215
215
  .sbb-sr-navigation__item-coach.vertical-coach .sbb-sr-navigation--first-class {
216
- height: calc(100% - 0.5rem);
216
+ height: calc(100% - 8 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
217
217
  width: initial;
218
- inset-inline-end: 0.1875rem;
219
- inset-block-start: 0.25rem;
218
+ inset-inline-end: calc(3 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
219
+ inset-block-start: calc(4 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
220
220
  inset-inline-start: initial;
221
221
  }
222
222
  .sbb-sr-navigation__item-coach.vertical-coach.first-coach .sbb-sr-navigation--first-class, .sbb-sr-navigation__item-coach.vertical-coach.last-coach .sbb-sr-navigation--first-class {
223
- height: calc(100% - 1.125rem);
223
+ height: calc(100% - 18 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
224
224
  }
225
225
  .sbb-sr-navigation__item-coach.vertical-coach.first-coach:not(.last-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
226
226
  border-start-end-radius: var(--sbb-border-radius-8x);
227
227
  border-end-start-radius: var(--sbb-border-radius-2x);
228
228
  }
229
229
  .sbb-sr-navigation__item-coach.vertical-coach.first-coach:not(.last-coach) .sbb-sr-navigation--first-class {
230
- margin-block-start: var(--sbb-seat-reservation-navigation-travelclass-spacing);
230
+ margin-block-start: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
231
231
  margin-inline-start: initial;
232
232
  }
233
233
  .sbb-sr-navigation__item-coach.vertical-coach.last-coach:not(.first-coach) .sbb-sr-navigation__ctrl-button:not(.sbb-sr-navigation-driver-area) {
@@ -235,12 +235,12 @@ const style = css`*,
235
235
  border-end-start-radius: var(--sbb-border-radius-8x);
236
236
  }
237
237
  .sbb-sr-navigation__item-coach.vertical-coach.last-coach:not(.first-coach) .sbb-sr-navigation--first-class {
238
- margin-block-end: var(--sbb-seat-reservation-navigation-travelclass-spacing);
238
+ margin-block-end: calc(var(--sbb-seat-reservation-navigation-travelclass-spacing) * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
239
239
  margin-inline-end: initial;
240
240
  }
241
241
  .sbb-sr-navigation__item-coach.vertical-coach .sbb-sr-navigation-driver-area {
242
- height: 5rem;
243
- min-width: 2.25rem;
242
+ height: calc(80 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
243
+ min-width: calc(36 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem));
244
244
  }`;
245
245
  const MAX_SERVICE_PROPERTIES = 3;
246
246
  let SbbSeatReservationNavigationCoachElement = (() => {
@@ -25,6 +25,8 @@ export declare class SbbSeatReservationPlaceControlElement extends SbbButtonBase
25
25
  accessor text: string;
26
26
  /** Rotation of the text in degrees (without unit) */
27
27
  accessor textRotation: number;
28
+ /** Deck Index Prop to identifier the right place to deck */
29
+ accessor deckIndex: number;
28
30
  /** Coach Index Prop to identifier the right place to coach */
29
31
  accessor coachIndex: number;
30
32
  /** Prevent click prop prevent any place action */
@@ -1 +1 @@
1
- {"version":3,"file":"seat-reservation-place-control.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAGrF,OAAO,EAAE,KAAK,cAAc,EAAiB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAInG,OAAO,KAAK,EAAkB,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1E,OAAO,gCAAgC,CAAC;AAIxC;;GAEG;AACH,qBAEM,qCAAsC,SAAQ,oBAAoB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;MAElB;IAEX,qDAAqD;IACrD,SAEgB,SAAS,EAAE,SAAS,CAAU;IAE9C,6DAA6D;IAC7D,SAEgB,KAAK,EAAE,UAAU,CAAU;IAE3C,sEAAsE;IACtE,SACgB,WAAW,EAAE,MAAM,EAAE,CAAM;IAE3C,yCAAyC;IACzC,SAEgB,QAAQ,EAAE,MAAM,CAAK;IAErC,kDAAkD;IAClD,SAEgB,KAAK,EAAE,MAAM,CAAM;IAEnC,mDAAmD;IACnD,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,0CAA0C;IAC1C,SAEgB,IAAI,EAAE,MAAM,CAAM;IAElC,qDAAqD;IACrD,SAEgB,YAAY,EAAE,MAAM,CAAK;IAEzC,8DAA8D;IAC9D,SAEgB,UAAU,EAAE,MAAM,CAAS;IAE3C,kDAAkD;IAClD,SAEgB,YAAY,EAAE,OAAO,CAAS;IAE9C,wCAAwC;IACxC,SAEgB,QAAQ,EAAE,MAAM,CAAa;IAE7C,OAAO,CAAC,SAAS,CAAmC;;cAOjC,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cA4BzD,MAAM,IAAI,cAAc;IAkC3C,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,yBAAyB;IAejC,yGAAyG;IACzG,OAAO,CAAC,YAAY;CA2BrB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,oCAAoC,EAAE,qCAAqC,CAAC;KAC7E;CACF"}
1
+ {"version":3,"file":"seat-reservation-place-control.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAGrF,OAAO,EAAE,KAAK,cAAc,EAAiB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAInG,OAAO,KAAK,EAAkB,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1E,OAAO,gCAAgC,CAAC;AAIxC;;GAEG;AACH,qBAEM,qCAAsC,SAAQ,oBAAoB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;MAElB;IAEX,qDAAqD;IACrD,SAEgB,SAAS,EAAE,SAAS,CAAU;IAE9C,6DAA6D;IAC7D,SAEgB,KAAK,EAAE,UAAU,CAAU;IAE3C,sEAAsE;IACtE,SACgB,WAAW,EAAE,MAAM,EAAE,CAAM;IAE3C,yCAAyC;IACzC,SAEgB,QAAQ,EAAE,MAAM,CAAK;IAErC,kDAAkD;IAClD,SAEgB,KAAK,EAAE,MAAM,CAAM;IAEnC,mDAAmD;IACnD,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,0CAA0C;IAC1C,SAEgB,IAAI,EAAE,MAAM,CAAM;IAElC,qDAAqD;IACrD,SAEgB,YAAY,EAAE,MAAM,CAAK;IAEzC,4DAA4D;IAC5D,SAEgB,SAAS,EAAE,MAAM,CAAS;IAE1C,8DAA8D;IAC9D,SAEgB,UAAU,EAAE,MAAM,CAAS;IAE3C,kDAAkD;IAClD,SAEgB,YAAY,EAAE,OAAO,CAAS;IAE9C,wCAAwC;IACxC,SAEgB,QAAQ,EAAE,MAAM,CAAa;IAE7C,OAAO,CAAC,SAAS,CAAmC;;cAOjC,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cA4BzD,MAAM,IAAI,cAAc;IAkC3C,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,yBAAyB;IAejC,yGAAyG;IACzG,OAAO,CAAC,YAAY;CA4BrB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,oCAAoC,EAAE,qCAAqC,CAAC;KAC7E;CACF"}
@@ -79,7 +79,7 @@ const style = css`*,
79
79
 
80
80
  :host(:focus) {
81
81
  border-radius: var(--sbb-border-width-1x);
82
- outline: var(--sbb-border-width-2x) solid var(--sbb-color-black);
82
+ outline: calc(2 * var(--sbb-seat-reservation-one-px-rem, 0.0625rem)) solid var(--sbb-color-black);
83
83
  }
84
84
  :host(:focus) .sbb-sr-place-ctrl--state-free:not(.sbb-reservation-place-control--disabled) ::part(svg-place) {
85
85
  fill: var(--sbb-seat-reservation-place-control-free-background-focus);
@@ -195,7 +195,7 @@ const style = css`*,
195
195
  inset-inline-start: -10%;
196
196
  }`;
197
197
  let SbbSeatReservationPlaceControlElement = (() => {
198
- var _placeType_accessor_storage, _state_accessor_storage, _propertyIds_accessor_storage, _rotation_accessor_storage, _width_accessor_storage, _height_accessor_storage, _text_accessor_storage, _textRotation_accessor_storage, _coachIndex_accessor_storage, _preventClick_accessor_storage, _keyfocus_accessor_storage, _a;
198
+ var _placeType_accessor_storage, _state_accessor_storage, _propertyIds_accessor_storage, _rotation_accessor_storage, _width_accessor_storage, _height_accessor_storage, _text_accessor_storage, _textRotation_accessor_storage, _deckIndex_accessor_storage, _coachIndex_accessor_storage, _preventClick_accessor_storage, _keyfocus_accessor_storage, _a;
199
199
  let _classDecorators = [customElement("sbb-seat-reservation-place-control")];
200
200
  let _classDescriptor;
201
201
  let _classExtraInitializers = [];
@@ -225,6 +225,9 @@ let SbbSeatReservationPlaceControlElement = (() => {
225
225
  let _textRotation_decorators;
226
226
  let _textRotation_initializers = [];
227
227
  let _textRotation_extraInitializers = [];
228
+ let _deckIndex_decorators;
229
+ let _deckIndex_initializers = [];
230
+ let _deckIndex_extraInitializers = [];
228
231
  let _coachIndex_decorators;
229
232
  let _coachIndex_initializers = [];
230
233
  let _coachIndex_extraInitializers = [];
@@ -245,6 +248,7 @@ let SbbSeatReservationPlaceControlElement = (() => {
245
248
  __privateAdd(this, _height_accessor_storage);
246
249
  __privateAdd(this, _text_accessor_storage);
247
250
  __privateAdd(this, _textRotation_accessor_storage);
251
+ __privateAdd(this, _deckIndex_accessor_storage);
248
252
  __privateAdd(this, _coachIndex_accessor_storage);
249
253
  __privateAdd(this, _preventClick_accessor_storage);
250
254
  __privateAdd(this, _keyfocus_accessor_storage);
@@ -256,7 +260,8 @@ let SbbSeatReservationPlaceControlElement = (() => {
256
260
  __privateSet(this, _height_accessor_storage, (__runInitializers(this, _width_extraInitializers), __runInitializers(this, _height_initializers, 32)));
257
261
  __privateSet(this, _text_accessor_storage, (__runInitializers(this, _height_extraInitializers), __runInitializers(this, _text_initializers, "")));
258
262
  __privateSet(this, _textRotation_accessor_storage, (__runInitializers(this, _text_extraInitializers), __runInitializers(this, _textRotation_initializers, 0)));
259
- __privateSet(this, _coachIndex_accessor_storage, (__runInitializers(this, _textRotation_extraInitializers), __runInitializers(this, _coachIndex_initializers, null)));
263
+ __privateSet(this, _deckIndex_accessor_storage, (__runInitializers(this, _textRotation_extraInitializers), __runInitializers(this, _deckIndex_initializers, null)));
264
+ __privateSet(this, _coachIndex_accessor_storage, (__runInitializers(this, _deckIndex_extraInitializers), __runInitializers(this, _coachIndex_initializers, null)));
260
265
  __privateSet(this, _preventClick_accessor_storage, (__runInitializers(this, _coachIndex_extraInitializers), __runInitializers(this, _preventClick_initializers, false)));
261
266
  __privateSet(this, _keyfocus_accessor_storage, (__runInitializers(this, _preventClick_extraInitializers), __runInitializers(this, _keyfocus_initializers, "unfocus")));
262
267
  this._language = (__runInitializers(this, _keyfocus_extraInitializers), new SbbLanguageController(this));
@@ -318,6 +323,13 @@ let SbbSeatReservationPlaceControlElement = (() => {
318
323
  set textRotation(value) {
319
324
  __privateSet(this, _textRotation_accessor_storage, value);
320
325
  }
326
+ /** Deck Index Prop to identifier the right place to deck */
327
+ get deckIndex() {
328
+ return __privateGet(this, _deckIndex_accessor_storage);
329
+ }
330
+ set deckIndex(value) {
331
+ __privateSet(this, _deckIndex_accessor_storage, value);
332
+ }
321
333
  /** Coach Index Prop to identifier the right place to coach */
322
334
  get coachIndex() {
323
335
  return __privateGet(this, _coachIndex_accessor_storage);
@@ -407,6 +419,7 @@ let SbbSeatReservationPlaceControlElement = (() => {
407
419
  this.state = this.state === "FREE" ? "SELECTED" : "FREE";
408
420
  const placeSelection = {
409
421
  id: this.id,
422
+ deckIndex: this.deckIndex,
410
423
  coachIndex: this.coachIndex,
411
424
  number: this.text,
412
425
  state: this.state,
@@ -419,7 +432,7 @@ let SbbSeatReservationPlaceControlElement = (() => {
419
432
  }));
420
433
  }
421
434
  }
422
- }, _placeType_accessor_storage = new WeakMap(), _state_accessor_storage = new WeakMap(), _propertyIds_accessor_storage = new WeakMap(), _rotation_accessor_storage = new WeakMap(), _width_accessor_storage = new WeakMap(), _height_accessor_storage = new WeakMap(), _text_accessor_storage = new WeakMap(), _textRotation_accessor_storage = new WeakMap(), _coachIndex_accessor_storage = new WeakMap(), _preventClick_accessor_storage = new WeakMap(), _keyfocus_accessor_storage = new WeakMap(), _classThis = _a, (() => {
435
+ }, _placeType_accessor_storage = new WeakMap(), _state_accessor_storage = new WeakMap(), _propertyIds_accessor_storage = new WeakMap(), _rotation_accessor_storage = new WeakMap(), _width_accessor_storage = new WeakMap(), _height_accessor_storage = new WeakMap(), _text_accessor_storage = new WeakMap(), _textRotation_accessor_storage = new WeakMap(), _deckIndex_accessor_storage = new WeakMap(), _coachIndex_accessor_storage = new WeakMap(), _preventClick_accessor_storage = new WeakMap(), _keyfocus_accessor_storage = new WeakMap(), _classThis = _a, (() => {
423
436
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
424
437
  _placeType_decorators = [forceType(), property({ attribute: "type" })];
425
438
  _state_decorators = [forceType(), property({ attribute: "state" })];
@@ -429,6 +442,7 @@ let SbbSeatReservationPlaceControlElement = (() => {
429
442
  _height_decorators = [forceType(), property({ attribute: "height", type: Number })];
430
443
  _text_decorators = [forceType(), property({ attribute: "text" })];
431
444
  _textRotation_decorators = [forceType(), property({ attribute: "text-rotation" })];
445
+ _deckIndex_decorators = [forceType(), property({ attribute: "deck-index", type: Number })];
432
446
  _coachIndex_decorators = [forceType(), property({ attribute: "coach-index", type: Number })];
433
447
  _preventClick_decorators = [forceType(), property({ attribute: "prevent-click", type: Boolean })];
434
448
  _keyfocus_decorators = [forceType(), property({ attribute: "keyfocus" })];
@@ -456,6 +470,9 @@ let SbbSeatReservationPlaceControlElement = (() => {
456
470
  __esDecorate(_a, null, _textRotation_decorators, { kind: "accessor", name: "textRotation", static: false, private: false, access: { has: (obj) => "textRotation" in obj, get: (obj) => obj.textRotation, set: (obj, value) => {
457
471
  obj.textRotation = value;
458
472
  } }, metadata: _metadata }, _textRotation_initializers, _textRotation_extraInitializers);
473
+ __esDecorate(_a, null, _deckIndex_decorators, { kind: "accessor", name: "deckIndex", static: false, private: false, access: { has: (obj) => "deckIndex" in obj, get: (obj) => obj.deckIndex, set: (obj, value) => {
474
+ obj.deckIndex = value;
475
+ } }, metadata: _metadata }, _deckIndex_initializers, _deckIndex_extraInitializers);
459
476
  __esDecorate(_a, null, _coachIndex_decorators, { kind: "accessor", name: "coachIndex", static: false, private: false, access: { has: (obj) => "coachIndex" in obj, get: (obj) => obj.coachIndex, set: (obj, value) => {
460
477
  obj.coachIndex = value;
461
478
  } }, metadata: _metadata }, _coachIndex_initializers, _coachIndex_extraInitializers);
@@ -476,4 +493,4 @@ let SbbSeatReservationPlaceControlElement = (() => {
476
493
  export {
477
494
  SbbSeatReservationPlaceControlElement
478
495
  };
479
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhdC1yZXNlcnZhdGlvbi1wbGFjZS1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9zZWF0LXJlc2VydmF0aW9uL3NlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbC9zZWF0LXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNiYkJ1dHRvbkJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIG5vdGhpbmcsIHR5cGUgVGVtcGxhdGVSZXN1bHQsIHR5cGUgUHJvcGVydHlWYWx1ZXMgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGdldEkxOG5TZWF0UmVzZXJ2YXRpb24gfSBmcm9tICcuLi9jb21tb24uanMnO1xuaW1wb3J0IHR5cGUgeyBQbGFjZVNlbGVjdGlvbiwgUGxhY2VTdGF0ZSwgUGxhY2VUeXBlIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0ICcuLi9zZWF0LXJlc2VydmF0aW9uLWdyYXBoaWMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zZWF0LXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPdXRwdXQgdGhlIGdyYXBoaWMgb2YgYSBzZWF0IG9yIGEgYmljeWNsZSBwbGFjZSBhcyBhIGNvbnRyb2wgZWxlbWVudC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXNlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbCcpXG5jbGFzcyBTYmJTZWF0UmVzZXJ2YXRpb25QbGFjZUNvbnRyb2xFbGVtZW50IGV4dGVuZHMgU2JiQnV0dG9uQmFzZUVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgc2VsZWN0cGxhY2U6ICdzZWxlY3RwbGFjZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIHBsYWNlVHlwZSBvZiB0aGUgcGxhY2UsIGUuZy4gJ1NFQVQnLCAnQklDWUNMRScgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3R5cGUnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwbGFjZVR5cGU6IFBsYWNlVHlwZSA9ICdTRUFUJztcblxuICAvKiogc3RhdGUgb2YgdGhlIHBsYWNlLCBlLmcuICdGUkVFJywgJ1NFTEVDVEVEJywgJ0JMT0NLRUQnICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdzdGF0ZScgfSlcbiAgcHVibGljIGFjY2Vzc29yIHN0YXRlOiBQbGFjZVN0YXRlID0gJ0ZSRUUnO1xuXG4gIC8qKiBwcm9wZXJ0eSBpZHMgb2YgdGhlIHBsYWNlLCB0byBkaXNwbGF5IG1vcmUgaW5mbyBhYm91dCB0aGUgcGxhY2UgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncHJvcGVydHlJZHMnLCB0eXBlOiBBcnJheSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgcHJvcGVydHlJZHM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqIHJvdGF0aW9uIGluIGRlZ3JlZXMgKHdpdGhvdXQgdW5pdCkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3JvdGF0aW9uJywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciByb3RhdGlvbjogbnVtYmVyID0gMDtcblxuICAvKiogd2lkdGggb2YgdGhlIHBsYWNlIGluIHBpeGVscyAod2l0aG91dCB1bml0KSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnd2lkdGgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHdpZHRoOiBudW1iZXIgPSAzMjtcblxuICAvKiogaGVpZ2h0IG9mIHRoZSBwbGFjZSBpbiBwaXhlbHMgKHdpdGhvdXQgdW5pdCkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hlaWdodCcsIHR5cGU6IE51bWJlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgaGVpZ2h0OiBudW1iZXIgPSAzMjtcblxuICAvKiogbGFiZWwgb2YgdGhlIHBsYWNlLCBlLmcuICcxQScsICcyQicgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RleHQnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKiogUm90YXRpb24gb2YgdGhlIHRleHQgaW4gZGVncmVlcyAod2l0aG91dCB1bml0KSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGV4dC1yb3RhdGlvbicgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRleHRSb3RhdGlvbjogbnVtYmVyID0gMDtcblxuICAvKiogQ29hY2ggSW5kZXggUHJvcCB0byBpZGVudGlmaWVyIHRoZSByaWdodCBwbGFjZSB0byBjb2FjaCAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnY29hY2gtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvYWNoSW5kZXg6IG51bWJlciA9IG51bGwhO1xuXG4gIC8qKiBQcmV2ZW50IGNsaWNrIHByb3AgcHJldmVudCBhbnkgcGxhY2UgYWN0aW9uICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwcmV2ZW50LWNsaWNrJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgcHJldmVudENsaWNrOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCB0aGUgcGxhY2UgZm9jdXMgb3V0bGluZSBzdHlsZSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAna2V5Zm9jdXMnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBrZXlmb2N1czogc3RyaW5nID0gJ3VuZm9jdXMnO1xuXG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5fc2VsZWN0UGxhY2UoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3dpZHRoJykgfHwgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdoZWlnaHQnKSkge1xuICAgICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoXG4gICAgICAgICctLXNiYi1wbGFjZS1jb250cm9sLXRleHQtc2NhbGUtdmFsdWUnLFxuICAgICAgICBgJHtNYXRoLm1pbih0aGlzLndpZHRoLCB0aGlzLmhlaWdodCl9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygndGV4dFJvdGF0aW9uJykpIHtcbiAgICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KFxuICAgICAgICAnLS1zYmItc2VhdC1yZXNlcnZhdGlvbi1wbGFjZS1jb250cm9sLXRleHQtcm90YXRpb24nLFxuICAgICAgICBgJHt0aGlzLnRleHRSb3RhdGlvbn1gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdyb3RhdGlvbicpKSB7XG4gICAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItc2VhdC1yZXNlcnZhdGlvbi1wbGFjZS1jb250cm9sLXJvdGF0aW9uJywgYCR7dGhpcy5yb3RhdGlvbn1gKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdrZXlmb2N1cycpKSB7XG4gICAgICBpZiAodGhpcy5rZXlmb2N1cyA9PT0gJ2ZvY3VzJykge1xuICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgbmFtZTogc3RyaW5nID0gdGhpcy5fZ2V0UGxhY2VTdmcodGhpcy5wbGFjZVR5cGUsIHRoaXMuc3RhdGUpO1xuICAgIGNvbnN0IHR5cGU6IHN0cmluZyA9IHRoaXMudHlwZS50b0xvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IHN0YXRlOiBzdHJpbmcgPSB0aGlzLnN0YXRlLnRvTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgdGV4dDogc3RyaW5nIHwgbnVsbCA9IHRoaXMudGV4dDtcbiAgICBjb25zdCB3aWR0aDogbnVtYmVyID0gdGhpcy53aWR0aDtcbiAgICBjb25zdCBoZWlnaHQ6IG51bWJlciA9IHRoaXMuaGVpZ2h0O1xuICAgIGNvbnN0IGludmVyc2VSb3RhdGlvblBsYWNlQ2hlY2tJY29uID0gdGhpcy50ZXh0Um90YXRpb24gLSB0aGlzLnJvdGF0aW9uO1xuICAgIGNvbnN0IGRpc2FibGVkQ2xhc3MgPSB0aGlzLnByZXZlbnRDbGljayA/ICdzYmItcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbC0tZGlzYWJsZWQnIDogbnVsbDtcblxuICAgIHRoaXMudGl0bGUgPSB0aGlzLl9nZXRUaXRsZURlc2NyaXB0aW9uUGxhY2UoKTtcbiAgICB0aGlzLnRhYkluZGV4ID0gLTE7XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXZcbiAgICAgICAgcGFydD1cInNiYi1zci1wbGFjZS1wYXJ0XCJcbiAgICAgICAgY2xhc3M9XCJzYmItc3ItcGxhY2UtY3RybCBzYmItc3ItcGxhY2UtY3RybC0tb3JpZW50YXRpb24tJHt0aGlzXG4gICAgICAgICAgLnJvdGF0aW9ufSBzYmItc3ItcGxhY2UtY3RybC0tc3RhdGUtJHtzdGF0ZX0gc2JiLXNyLXBsYWNlLWN0cmwtLXR5cGUtJHt0eXBlfSAke2Rpc2FibGVkQ2xhc3N9XCJcbiAgICAgID5cbiAgICAgICAgPHNiYi1zZWF0LXJlc2VydmF0aW9uLWdyYXBoaWNcbiAgICAgICAgICAubmFtZT0ke25hbWV9XG4gICAgICAgICAgLndpZHRoPSR7d2lkdGh9XG4gICAgICAgICAgLmhlaWdodD0ke2hlaWdodH1cbiAgICAgICAgICAucm90YXRpb249JHt0aGlzLnJvdGF0aW9ufVxuICAgICAgICAgIC5pbnZlcnNlUm90YXRpb249JHtpbnZlcnNlUm90YXRpb25QbGFjZUNoZWNrSWNvbn1cbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICA+PC9zYmItc2VhdC1yZXNlcnZhdGlvbi1ncmFwaGljPlxuICAgICAgICA8c3BhbiAke3RoaXMudGV4dCA/PyBub3RoaW5nfSBjbGFzcz1cInNiYi1zci1wbGFjZS1jdHJsX190ZXh0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICA+JHt0ZXh0fTwvc3BhblxuICAgICAgICA+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UGxhY2VTdmcodHlwZTogUGxhY2VUeXBlLCBzdGF0ZTogUGxhY2VTdGF0ZSk6IHN0cmluZyB7XG4gICAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUgYXMgc3RyaW5nO1xuICAgIGNvbnN0IHN0YXRlU3RyaW5nID0gc3RhdGUgYXMgc3RyaW5nO1xuICAgIHJldHVybiBgUExBQ0VfJHt0eXBlU3RyaW5nfV8ke3N0YXRlU3RyaW5nfWA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRUaXRsZURlc2NyaXB0aW9uUGxhY2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCB0cmFuc2xhdGlvbktleSA9ICdQTEFDRV9DT05UUk9MXycgKyB0aGlzLnR5cGUgKyAnXycgKyB0aGlzLnN0YXRlO1xuICAgIGxldCBkZXNjcmlwdGlvbiA9IGdldEkxOG5TZWF0UmVzZXJ2YXRpb24odHJhbnNsYXRpb25LZXksIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQsIFt0aGlzLnRleHRdKTtcblxuICAgIGlmICh0aGlzLnByb3BlcnR5SWRzLmxlbmd0aCkge1xuICAgICAgZGVzY3JpcHRpb24gKz1cbiAgICAgICAgJy4gJyArIGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oJ1BMQUNFX1BST1BFUlRZJywgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCkuY29uY2F0KCc6ICcpO1xuICAgICAgZGVzY3JpcHRpb24gKz0gdGhpcy5wcm9wZXJ0eUlkc1xuICAgICAgICAubWFwKChwcm9wZXJ0eUlkKSA9PiBnZXRJMThuU2VhdFJlc2VydmF0aW9uKHByb3BlcnR5SWQsIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpKVxuICAgICAgICAuam9pbignLCAnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGVzY3JpcHRpb247XG4gIH1cblxuICAvKiogSWYgdGhlIHBsYWNlIHNlbGVjdGFibGUsIHdlIGVtaXQgdGhlIHBsYWNlU2VsZWN0aW9uIG9iamVjdCB3aGljaCBjb250YWlucyBpbmZvcyB0byB0aGUgcGxhY2Ugc3RhdGUgKi9cbiAgcHJpdmF0ZSBfc2VsZWN0UGxhY2UoKTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0YWJsZSA9ICh0aGlzLnN0YXRlID09PSAnRlJFRScgfHwgdGhpcy5zdGF0ZSA9PT0gJ1NFTEVDVEVEJykgJiYgIXRoaXMucHJldmVudENsaWNrO1xuXG4gICAgaWYgKHNlbGVjdGFibGUpIHtcbiAgICAgIHRoaXMuc3RhdGUgPSB0aGlzLnN0YXRlID09PSAnRlJFRScgPyAnU0VMRUNURUQnIDogJ0ZSRUUnO1xuICAgICAgY29uc3QgcGxhY2VTZWxlY3Rpb246IFBsYWNlU2VsZWN0aW9uID0ge1xuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgY29hY2hJbmRleDogdGhpcy5jb2FjaEluZGV4LFxuICAgICAgICBudW1iZXI6IHRoaXMudGV4dCxcbiAgICAgICAgc3RhdGU6IHRoaXMuc3RhdGUsXG4gICAgICAgIHBsYWNlVHlwZTogdGhpcy5wbGFjZVR5cGUsXG4gICAgICB9O1xuXG4gICAgICAvKipcbiAgICAgICAqIEB0eXBlIHtDdXN0b21FdmVudDxQbGFjZVNlbGVjdGlvbj59XG4gICAgICAgKiBFbWl0cyB3aGVuIGEgcGxhY2Ugd2FzIHNlbGVjdGVkIHZpYSB1c2VyIGludGVyYWN0aW9uIGFuZCByZXR1cm5zIGFcbiAgICAgICAqIFBsYWNlU2VsZWN0aW9uIG9iamVjdCB3aXRoIG5lY2Vzc2FyeSBwbGFjZSBpbmZvcm1hdGlvbi5cbiAgICAgICAqL1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KFxuICAgICAgICBuZXcgQ3VzdG9tRXZlbnQ8UGxhY2VTZWxlY3Rpb24+KCdzZWxlY3RwbGFjZScsIHtcbiAgICAgICAgICBkZXRhaWw6IHBsYWNlU2VsZWN0aW9uLFxuICAgICAgICAgIGJ1YmJsZXM6IHRydWUsXG4gICAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1zZWF0LXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wnOiBTYmJTZWF0UmVzZXJ2YXRpb25QbGFjZUNvbnRyb2xFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWtCTSx5Q0FBcUMsTUFBQTs7MEJBRDFDLGNBQWMsb0NBQW9DLENBQUM7Ozs7b0JBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBUixFQUFBLG1CQUFRLFlBQW9CO0FBQUEsSUE4RHRFLGNBQUE7QUFDRSxZQUFBO0FBdERGO0FBS0E7QUFJQTtBQUtBO0FBS0E7QUFLQTtBQUtBO0FBS0E7QUFLQTtBQUtBO0FBS0E7QUFqRGdCLHlCQUFBLDZCQUFBLGtCQUFBLE1BQUEseUJBQXVCLE1BQU07QUFLN0IseUJBQUEsMEJBQUEsa0JBQUEsTUFBQSw0QkFBQSxHQUFBLGtCQUFBLE1BQUEscUJBQW9CLE1BQU07QUFJMUIseUJBQUEsZ0NBQUEsa0JBQUEsTUFBQSx3QkFBQSxHQUFBLGtCQUFBLE1BQUEsMkJBQXdCLENBQUEsQ0FBRTtBQUsxQix5QkFBQSw2QkFBQSxrQkFBQSxNQUFBLDhCQUFBLEdBQUEsa0JBQUEsTUFBQSx3QkFBbUIsQ0FBQztBQUtwQix5QkFBQSwwQkFBQSxrQkFBQSxNQUFBLDJCQUFBLEdBQUEsa0JBQUEsTUFBQSxxQkFBZ0IsRUFBRTtBQUtsQix5QkFBQSwyQkFBQSxrQkFBQSxN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
496
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhdC1yZXNlcnZhdGlvbi1wbGFjZS1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9zZWF0LXJlc2VydmF0aW9uL3NlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbC9zZWF0LXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNiYkJ1dHRvbkJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIG5vdGhpbmcsIHR5cGUgVGVtcGxhdGVSZXN1bHQsIHR5cGUgUHJvcGVydHlWYWx1ZXMgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGdldEkxOG5TZWF0UmVzZXJ2YXRpb24gfSBmcm9tICcuLi9jb21tb24uanMnO1xuaW1wb3J0IHR5cGUgeyBQbGFjZVNlbGVjdGlvbiwgUGxhY2VTdGF0ZSwgUGxhY2VUeXBlIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0ICcuLi9zZWF0LXJlc2VydmF0aW9uLWdyYXBoaWMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zZWF0LXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPdXRwdXQgdGhlIGdyYXBoaWMgb2YgYSBzZWF0IG9yIGEgYmljeWNsZSBwbGFjZSBhcyBhIGNvbnRyb2wgZWxlbWVudC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXNlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbCcpXG5jbGFzcyBTYmJTZWF0UmVzZXJ2YXRpb25QbGFjZUNvbnRyb2xFbGVtZW50IGV4dGVuZHMgU2JiQnV0dG9uQmFzZUVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgc2VsZWN0cGxhY2U6ICdzZWxlY3RwbGFjZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIHBsYWNlVHlwZSBvZiB0aGUgcGxhY2UsIGUuZy4gJ1NFQVQnLCAnQklDWUNMRScgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3R5cGUnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwbGFjZVR5cGU6IFBsYWNlVHlwZSA9ICdTRUFUJztcblxuICAvKiogc3RhdGUgb2YgdGhlIHBsYWNlLCBlLmcuICdGUkVFJywgJ1NFTEVDVEVEJywgJ0JMT0NLRUQnICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdzdGF0ZScgfSlcbiAgcHVibGljIGFjY2Vzc29yIHN0YXRlOiBQbGFjZVN0YXRlID0gJ0ZSRUUnO1xuXG4gIC8qKiBwcm9wZXJ0eSBpZHMgb2YgdGhlIHBsYWNlLCB0byBkaXNwbGF5IG1vcmUgaW5mbyBhYm91dCB0aGUgcGxhY2UgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncHJvcGVydHlJZHMnLCB0eXBlOiBBcnJheSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgcHJvcGVydHlJZHM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqIHJvdGF0aW9uIGluIGRlZ3JlZXMgKHdpdGhvdXQgdW5pdCkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3JvdGF0aW9uJywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciByb3RhdGlvbjogbnVtYmVyID0gMDtcblxuICAvKiogd2lkdGggb2YgdGhlIHBsYWNlIGluIHBpeGVscyAod2l0aG91dCB1bml0KSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnd2lkdGgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHdpZHRoOiBudW1iZXIgPSAzMjtcblxuICAvKiogaGVpZ2h0IG9mIHRoZSBwbGFjZSBpbiBwaXhlbHMgKHdpdGhvdXQgdW5pdCkgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hlaWdodCcsIHR5cGU6IE51bWJlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgaGVpZ2h0OiBudW1iZXIgPSAzMjtcblxuICAvKiogbGFiZWwgb2YgdGhlIHBsYWNlLCBlLmcuICcxQScsICcyQicgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RleHQnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKiogUm90YXRpb24gb2YgdGhlIHRleHQgaW4gZGVncmVlcyAod2l0aG91dCB1bml0KSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGV4dC1yb3RhdGlvbicgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRleHRSb3RhdGlvbjogbnVtYmVyID0gMDtcblxuICAvKiogRGVjayBJbmRleCBQcm9wIHRvIGlkZW50aWZpZXIgdGhlIHJpZ2h0IHBsYWNlIHRvIGRlY2sgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2RlY2staW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGRlY2tJbmRleDogbnVtYmVyID0gbnVsbCE7XG5cbiAgLyoqIENvYWNoIEluZGV4IFByb3AgdG8gaWRlbnRpZmllciB0aGUgcmlnaHQgcGxhY2UgdG8gY29hY2ggKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2NvYWNoLWluZGV4JywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBjb2FjaEluZGV4OiBudW1iZXIgPSBudWxsITtcblxuICAvKiogUHJldmVudCBjbGljayBwcm9wIHByZXZlbnQgYW55IHBsYWNlIGFjdGlvbiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncHJldmVudC1jbGljaycsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIHByZXZlbnRDbGljazogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgdGhlIHBsYWNlIGZvY3VzIG91dGxpbmUgc3R5bGUgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2tleWZvY3VzJyB9KVxuICBwdWJsaWMgYWNjZXNzb3Iga2V5Zm9jdXM6IHN0cmluZyA9ICd1bmZvY3VzJztcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMuX3NlbGVjdFBsYWNlKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCd3aWR0aCcpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnaGVpZ2h0JykpIHtcbiAgICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KFxuICAgICAgICAnLS1zYmItcGxhY2UtY29udHJvbC10ZXh0LXNjYWxlLXZhbHVlJyxcbiAgICAgICAgYCR7TWF0aC5taW4odGhpcy53aWR0aCwgdGhpcy5oZWlnaHQpfWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3RleHRSb3RhdGlvbicpKSB7XG4gICAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eShcbiAgICAgICAgJy0tc2JiLXNlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbC10ZXh0LXJvdGF0aW9uJyxcbiAgICAgICAgYCR7dGhpcy50ZXh0Um90YXRpb259YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygncm90YXRpb24nKSkge1xuICAgICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoJy0tc2JiLXNlYXQtcmVzZXJ2YXRpb24tcGxhY2UtY29udHJvbC1yb3RhdGlvbicsIGAke3RoaXMucm90YXRpb259YCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygna2V5Zm9jdXMnKSkge1xuICAgICAgaWYgKHRoaXMua2V5Zm9jdXMgPT09ICdmb2N1cycpIHtcbiAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IHRoaXMuX2dldFBsYWNlU3ZnKHRoaXMucGxhY2VUeXBlLCB0aGlzLnN0YXRlKTtcbiAgICBjb25zdCB0eXBlOiBzdHJpbmcgPSB0aGlzLnR5cGUudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBzdGF0ZTogc3RyaW5nID0gdGhpcy5zdGF0ZS50b0xvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IHRleHQ6IHN0cmluZyB8IG51bGwgPSB0aGlzLnRleHQ7XG4gICAgY29uc3Qgd2lkdGg6IG51bWJlciA9IHRoaXMud2lkdGg7XG4gICAgY29uc3QgaGVpZ2h0OiBudW1iZXIgPSB0aGlzLmhlaWdodDtcbiAgICBjb25zdCBpbnZlcnNlUm90YXRpb25QbGFjZUNoZWNrSWNvbiA9IHRoaXMudGV4dFJvdGF0aW9uIC0gdGhpcy5yb3RhdGlvbjtcbiAgICBjb25zdCBkaXNhYmxlZENsYXNzID0gdGhpcy5wcmV2ZW50Q2xpY2sgPyAnc2JiLXJlc2VydmF0aW9uLXBsYWNlLWNvbnRyb2wtLWRpc2FibGVkJyA6IG51bGw7XG5cbiAgICB0aGlzLnRpdGxlID0gdGhpcy5fZ2V0VGl0bGVEZXNjcmlwdGlvblBsYWNlKCk7XG4gICAgdGhpcy50YWJJbmRleCA9IC0xO1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2XG4gICAgICAgIHBhcnQ9XCJzYmItc3ItcGxhY2UtcGFydFwiXG4gICAgICAgIGNsYXNzPVwic2JiLXNyLXBsYWNlLWN0cmwgc2JiLXNyLXBsYWNlLWN0cmwtLW9yaWVudGF0aW9uLSR7dGhpc1xuICAgICAgICAgIC5yb3RhdGlvbn0gc2JiLXNyLXBsYWNlLWN0cmwtLXN0YXRlLSR7c3RhdGV9IHNiYi1zci1wbGFjZS1jdHJsLS10eXBlLSR7dHlwZX0gJHtkaXNhYmxlZENsYXNzfVwiXG4gICAgICA+XG4gICAgICAgIDxzYmItc2VhdC1yZXNlcnZhdGlvbi1ncmFwaGljXG4gICAgICAgICAgLm5hbWU9JHtuYW1lfVxuICAgICAgICAgIC53aWR0aD0ke3dpZHRofVxuICAgICAgICAgIC5oZWlnaHQ9JHtoZWlnaHR9XG4gICAgICAgICAgLnJvdGF0aW9uPSR7dGhpcy5yb3RhdGlvbn1cbiAgICAgICAgICAuaW52ZXJzZVJvdGF0aW9uPSR7aW52ZXJzZVJvdGF0aW9uUGxhY2VDaGVja0ljb259XG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPjwvc2JiLXNlYXQtcmVzZXJ2YXRpb24tZ3JhcGhpYz5cbiAgICAgICAgPHNwYW4gJHt0aGlzLnRleHQgPz8gbm90aGluZ30gY2xhc3M9XCJzYmItc3ItcGxhY2UtY3RybF9fdGV4dFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgPiR7dGV4dH08L3NwYW5cbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFBsYWNlU3ZnKHR5cGU6IFBsYWNlVHlwZSwgc3RhdGU6IFBsYWNlU3RhdGUpOiBzdHJpbmcge1xuICAgIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlIGFzIHN0cmluZztcbiAgICBjb25zdCBzdGF0ZVN0cmluZyA9IHN0YXRlIGFzIHN0cmluZztcbiAgICByZXR1cm4gYFBMQUNFXyR7dHlwZVN0cmluZ31fJHtzdGF0ZVN0cmluZ31gO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VGl0bGVEZXNjcmlwdGlvblBsYWNlKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdHJhbnNsYXRpb25LZXkgPSAnUExBQ0VfQ09OVFJPTF8nICsgdGhpcy50eXBlICsgJ18nICsgdGhpcy5zdGF0ZTtcbiAgICBsZXQgZGVzY3JpcHRpb24gPSBnZXRJMThuU2VhdFJlc2VydmF0aW9uKHRyYW5zbGF0aW9uS2V5LCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LCBbdGhpcy50ZXh0XSk7XG5cbiAgICBpZiAodGhpcy5wcm9wZXJ0eUlkcy5sZW5ndGgpIHtcbiAgICAgIGRlc2NyaXB0aW9uICs9XG4gICAgICAgICcuICcgKyBnZXRJMThuU2VhdFJlc2VydmF0aW9uKCdQTEFDRV9QUk9QRVJUWScsIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpLmNvbmNhdCgnOiAnKTtcbiAgICAgIGRlc2NyaXB0aW9uICs9IHRoaXMucHJvcGVydHlJZHNcbiAgICAgICAgLm1hcCgocHJvcGVydHlJZCkgPT4gZ2V0STE4blNlYXRSZXNlcnZhdGlvbihwcm9wZXJ0eUlkLCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50KSlcbiAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlc2NyaXB0aW9uO1xuICB9XG5cbiAgLyoqIElmIHRoZSBwbGFjZSBzZWxlY3RhYmxlLCB3ZSBlbWl0IHRoZSBwbGFjZVNlbGVjdGlvbiBvYmplY3Qgd2hpY2ggY29udGFpbnMgaW5mb3MgdG8gdGhlIHBsYWNlIHN0YXRlICovXG4gIHByaXZhdGUgX3NlbGVjdFBsYWNlKCk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGFibGUgPSAodGhpcy5zdGF0ZSA9PT0gJ0ZSRUUnIHx8IHRoaXMuc3RhdGUgPT09ICdTRUxFQ1RFRCcpICYmICF0aGlzLnByZXZlbnRDbGljaztcblxuICAgIGlmIChzZWxlY3RhYmxlKSB7XG4gICAgICB0aGlzLnN0YXRlID0gdGhpcy5zdGF0ZSA9PT0gJ0ZSRUUnID8gJ1NFTEVDVEVEJyA6ICdGUkVFJztcbiAgICAgIGNvbnN0IHBsYWNlU2VsZWN0aW9uOiBQbGFjZVNlbGVjdGlvbiA9IHtcbiAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgIGRlY2tJbmRleDogdGhpcy5kZWNrSW5kZXgsXG4gICAgICAgIGNvYWNoSW5kZXg6IHRoaXMuY29hY2hJbmRleCxcbiAgICAgICAgbnVtYmVyOiB0aGlzLnRleHQsXG4gICAgICAgIHN0YXRlOiB0aGlzLnN0YXRlLFxuICAgICAgICBwbGFjZVR5cGU6IHRoaXMucGxhY2VUeXBlLFxuICAgICAgfTtcblxuICAgICAgLyoqXG4gICAgICAgKiBAdHlwZSB7Q3VzdG9tRXZlbnQ8UGxhY2VTZWxlY3Rpb24+fVxuICAgICAgICogRW1pdHMgd2hlbiBhIHBsYWNlIHdhcyBzZWxlY3RlZCB2aWEgdXNlciBpbnRlcmFjdGlvbiBhbmQgcmV0dXJucyBhXG4gICAgICAgKiBQbGFjZVNlbGVjdGlvbiBvYmplY3Qgd2l0aCBuZWNlc3NhcnkgcGxhY2UgaW5mb3JtYXRpb24uXG4gICAgICAgKi9cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgbmV3IEN1c3RvbUV2ZW50PFBsYWNlU2VsZWN0aW9uPignc2VsZWN0cGxhY2UnLCB7XG4gICAgICAgICAgZGV0YWlsOiBwbGFjZVNlbGVjdGlvbixcbiAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgIGNvbXBvc2VkOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItc2VhdC1yZXNlcnZhdGlvbi1wbGFjZS1jb250cm9sJzogU2JiU2VhdFJlc2VydmF0aW9uUGxhY2VDb250cm9sRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFrQk0seUNBQXFDLE1BQUE7OzBCQUQxQyxjQUFjLG9DQUFvQyxDQUFDOzs7O29CQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQVIsRUFBQSxtQkFBUSxZQUFvQjtBQUFBLElBbUV0RSxjQUFBO0FBQ0UsWUFBQTtBQTNERjtBQUtBO0FBSUE7QUFLQTtBQUtBO0FBS0E7QUFLQTtBQUtBO0FBS0E7QUFLQTtBQUtBO0FBS0E7QUF0RGdCLHlCQUFBLDZCQUFBLGtCQUFBLE1BQUEseUJBQXVCLE1BQU07QUFLN0IseUJBQUEsMEJBQUEsa0JBQUEsTUFBQSw0QkFBQSxHQUFBLGtCQUFBLE1BQUEscUJB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements-experimental",
3
- "version": "3.2.0",
3
+ "version": "3.3.2",
4
4
  "description": "Lyne Design System",
5
5
  "keywords": [
6
6
  "design system",
@@ -11,7 +11,7 @@
11
11
  "type": "module",
12
12
  "customElements": "custom-elements.json",
13
13
  "peerDependencies": {
14
- "@sbb-esta/lyne-elements": "3.2.0"
14
+ "@sbb-esta/lyne-elements": "3.3.2"
15
15
  },
16
16
  "dependencies": {
17
17
  "lit": "^3.3.1",
@@ -1 +1 @@
1
- {"version":3,"file":"icon-mapper.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/mapper/icon-mapper.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAgE5D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqGG"}
1
+ {"version":3,"file":"icon-mapper.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/mapper/icon-mapper.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAiE5D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqGG"}
@@ -20,8 +20,8 @@ const E = {
20
20
  COMPARTMENT_PASSAGE_HIGH: { svg: a.chassisPassageCompartmentLeftTop },
21
21
  COMPARTMENT_PASSAGE_LOW: { svg: a.chassisPassageCompartmentRightBottom },
22
22
  DRIVER_AREA: { svg: a.chassisDriverTrain },
23
- DRIVER_AREA_FULL_BUS: { svg: a.chassisDriverBus },
24
- DRIVER_AREA_FULL_TRAIN: { svg: a.chassisDriverTrainFull },
23
+ DRIVER_AREA_BUS: { svg: a.chassisDriverBus },
24
+ DRIVER_AREA_TRAIN: { svg: a.chassisDriverTrainFull },
25
25
  EASY_ACCESS: { svgName: "sa-em" },
26
26
  EASY_ACCESS_AREA: { svgName: "sa-em" },
27
27
  EASY_ACCESS_ICON: { svgName: "sa-em" },
@@ -52,6 +52,7 @@ const E = {
52
52
  SILENCE_ICON: { svgName: "sa-rz" },
53
53
  SKI_AREA: { svgName: "sa-sa" },
54
54
  SKI_ICON: { svgName: "sa-sa" },
55
+ STAFF_AREA: { svgName: "avatar-train-staff-medium" },
55
56
  STAIR_AREA: { svgName: "sa-ac" },
56
57
  TOILET_AREA: { svgName: "sa-wc" },
57
58
  TOILET_ICON: { svgName: "sa-wc" },
@@ -1,4 +1,4 @@
1
- import { CoachItem, CoachNumberOfFreePlaces, Place, PlaceSelection, SeatReservation, SeatReservationCoachSelection, SeatReservationPlaceSelection, VehicleType } from '../types.js';
1
+ import { CoachItem, CoachNumberOfFreePlaces, Place, PlaceSelection, SeatReservation, SeatReservationPlaceSelection, SeatReservationSelectedCoach, VehicleType } from '../types.js';
2
2
  /**
3
3
  * Map function that converts the RAW OSDM mock data into SeatReservation
4
4
  */
@@ -9,7 +9,7 @@ export declare const mapRawDataToSeatReservation: (vehicleType: VehicleType) =>
9
9
  * @param coachIndex
10
10
  * @returns PlaceSelection
11
11
  */
12
- export declare const mapPlaceInfosToPlaceSelection: (place: Place, coachIndex: number) => PlaceSelection;
12
+ export declare const mapPlaceInfosToPlaceSelection: (place: Place, deckIndex: number, coachIndex: number) => PlaceSelection;
13
13
  /**
14
14
  * Mapped information from place, coach and the coachindex to the seatReservationPlaceSelection.
15
15
  * This Object information is emitted outwards
@@ -18,7 +18,7 @@ export declare const mapPlaceInfosToPlaceSelection: (place: Place, coachIndex: n
18
18
  * @param coachIndex
19
19
  * @returns SeatReservationPlaceSelection
20
20
  */
21
- export declare const mapPlaceAndCoachToSeatReservationPlaceSelection: (place: Place, coach: CoachItem, coachIndex: number) => SeatReservationPlaceSelection;
21
+ export declare const mapPlaceAndCoachToSeatReservationPlaceSelection: (place: Place, coach: CoachItem, deckIndex: number, coachIndex: number) => SeatReservationPlaceSelection;
22
22
  /**
23
23
  * Mapped coach information to coach selection
24
24
  * @param coachIndex
@@ -26,5 +26,5 @@ export declare const mapPlaceAndCoachToSeatReservationPlaceSelection: (place: Pl
26
26
  * @param coachNumberOfFreePlaces
27
27
  * @returns PlaceSelection
28
28
  */
29
- export declare const mapCoachInfosToCoachSelection: (coachIndex: number, coach: CoachItem, coachNumberOfFreePlaces: CoachNumberOfFreePlaces) => SeatReservationCoachSelection;
29
+ export declare const mapCoachInfosToCoachSelection: (coachIndex: number, coach: CoachItem, coachNumberOfFreePlaces: CoachNumberOfFreePlaces) => SeatReservationSelectedCoach;
30
30
  //# sourceMappingURL=mapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/mapper/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EACvB,KAAK,EACL,cAAc,EAEd,eAAe,EACf,6BAA6B,EAC7B,6BAA6B,EAC7B,WAAW,EACZ,MAAM,aAAa,CAAC;AAIrB;;GAEG;AACH,eAAO,MAAM,2BAA2B,GAAI,aAAa,WAAW,KAAG,eAoFtE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,GAAI,OAAO,KAAK,EAAE,YAAY,MAAM,KAAG,cAShF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,+CAA+C,GAC1D,OAAO,KAAK,EACZ,OAAO,SAAS,EAChB,YAAY,MAAM,KACjB,6BAYF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,GACxC,YAAY,MAAM,EAClB,OAAO,SAAS,EAChB,yBAAyB,uBAAuB,KAC/C,6BAUF,CAAC"}
1
+ {"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../../../src/elements-experimental/seat-reservation/common/mapper/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EACvB,KAAK,EACL,cAAc,EAEd,eAAe,EACf,6BAA6B,EAC7B,4BAA4B,EAC5B,WAAW,EACZ,MAAM,aAAa,CAAC;AAIrB;;GAEG;AACH,eAAO,MAAM,2BAA2B,GAAI,aAAa,WAAW,KAAG,eAmFtE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,GACxC,OAAO,KAAK,EACZ,WAAW,MAAM,EACjB,YAAY,MAAM,KACjB,cAWF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,+CAA+C,GAC1D,OAAO,KAAK,EACZ,OAAO,SAAS,EAChB,WAAW,MAAM,EACjB,YAAY,MAAM,KACjB,6BAcF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,GACxC,YAAY,MAAM,EAClB,OAAO,SAAS,EAChB,yBAAyB,uBAAuB,KAC/C,4BAUF,CAAC"}
@@ -1,22 +1,20 @@
1
1
  import { MOCK_COACHES_RAW_0 as l, MOCK_COACHES_RAW_1 as h } from "./seat-reservation-sample-data.js";
2
2
  const u = (e) => {
3
- const s = (e === "TRAIN" ? l : h).map((c) => {
4
- const i = c?.coachDeckLayout, a = [], r = [], d = i.placeGroups.map((t) => (a.indexOf(t.travelClass) === -1 && a.push(t.travelClass), r.indexOf(t.accommodationSubType) === -1 && r.push(t.accommodationSubType), t.places?.map((o) => ({
5
- number: o?.number,
6
- state: o?.state,
3
+ const o = (e === "TRAIN" ? l : h).map((a) => {
4
+ const i = a?.coachDeckLayout, r = [], c = [], m = i.placeGroups.map((t) => (r.indexOf(t.travelClass) === -1 && r.push(t.travelClass), c.indexOf(t.accommodationSubType) === -1 && c.push(t.accommodationSubType), t.places?.map((s) => ({
5
+ number: s?.number,
6
+ state: s?.state,
7
7
  type: t.accommodationSubType.indexOf("BICYCLE") === -1 ? "SEAT" : "BICYCLE",
8
- dimension: { w: o.rectangle.dimension.width, h: o.rectangle.dimension.height },
8
+ dimension: { w: s.rectangle.dimension.width, h: s.rectangle.dimension.height },
9
9
  position: {
10
- x: o.rectangle.position.x,
11
- y: o.rectangle.position.y,
12
- z: o.rectangle.position.z
10
+ x: s.rectangle.position.x,
11
+ y: s.rectangle.position.y,
12
+ z: s.rectangle.position.z
13
13
  },
14
- rotation: o?.orientation || 0,
14
+ rotation: s?.orientation || 0,
15
15
  travelClass: t?.travelClass,
16
- remarkId: "",
17
- propertyIds: o.placeProperties || [],
18
- selected: !1
19
- })))).flat(), m = i.serviceIcons.map((t) => ({
16
+ propertyIds: s.placeProperties || []
17
+ })))).flat(), p = i.serviceIcons.map((t) => ({
20
18
  icon: t.type,
21
19
  position: {
22
20
  x: t.rectangle.position.x,
@@ -27,7 +25,7 @@ const u = (e) => {
27
25
  w: t.rectangle.dimension.width,
28
26
  h: t.rectangle.dimension.height
29
27
  }
30
- })), p = i.graphicElements.map((t) => ({
28
+ })), d = i.graphicElements.map((t) => ({
31
29
  icon: t?.type,
32
30
  position: {
33
31
  x: t.rectangle.position.x,
@@ -41,41 +39,44 @@ const u = (e) => {
41
39
  id: i?.id,
42
40
  number: i?.name,
43
41
  dimension: { w: i.dimension?.width, h: i.dimension?.height },
44
- places: d,
45
- serviceElements: m,
46
- graphicElements: p,
47
- travelClass: a,
48
- propertyIds: r
42
+ places: m,
43
+ serviceElements: p,
44
+ graphicElements: d,
45
+ travelClass: r,
46
+ propertyIds: c
49
47
  };
50
48
  });
51
49
  return {
52
50
  vehicleType: e,
53
51
  deckCoachIndex: 0,
54
- coachItems: s
52
+ deckCoachLevel: "SINGLE_DECK",
53
+ coachItems: o
55
54
  };
56
- }, y = (e, n) => ({
57
- id: "seat-reservation__place-button-" + n + "-" + e.number,
55
+ }, y = (e, n, o) => ({
56
+ id: "seat-reservation__place-button-" + n + "-" + o + "-" + e.number,
58
57
  number: e.number,
59
- coachIndex: n,
58
+ deckIndex: n,
59
+ coachIndex: o,
60
60
  state: e.state,
61
61
  placeType: e.type
62
- }), g = (e, n, s) => ({
63
- id: "seat-reservation__place-button-" + s + "-" + e.number,
62
+ }), g = (e, n, o, a) => ({
63
+ id: "seat-reservation__place-button-" + o + "-" + a + "-" + e.number,
64
64
  coachId: n.id,
65
65
  coachNumber: n.number,
66
- coachIndex: s,
66
+ coachIndex: a,
67
+ deckIndex: o,
67
68
  placeNumber: e.number,
68
69
  placeType: e.type,
69
70
  placeTravelClass: e.travelClass || "ANY_CLASS",
70
71
  propertyIds: e.propertyIds || []
71
- }), b = (e, n, s) => ({
72
+ }), b = (e, n, o) => ({
72
73
  coachId: n.id,
73
74
  coachNumber: n.number,
74
75
  coachIndex: e,
75
76
  coachType: n?.type,
76
77
  coachTravelClass: n?.travelClass,
77
78
  coachPropertyIds: n?.propertyIds,
78
- coachNumberOfFreePlaces: s
79
+ coachNumberOfFreePlaces: o
79
80
  });
80
81
  export {
81
82
  b as mapCoachInfosToCoachSelection,