@sbb-esta/lyne-elements-experimental-dev 4.7.0-dev.1773349433 → 4.7.0-dev.1773388997

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 (199) hide show
  1. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +65 -76
  2. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +72 -52
  3. package/autocomplete-grid/autocomplete-grid-button.js +3 -6
  4. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -17
  5. package/autocomplete-grid/autocomplete-grid-cell.js +4 -7
  6. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +20 -21
  7. package/autocomplete-grid/autocomplete-grid-optgroup.js +3 -6
  8. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -33
  9. package/autocomplete-grid/autocomplete-grid-option.js +4 -9
  10. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -22
  11. package/autocomplete-grid/autocomplete-grid-row.js +4 -7
  12. package/autocomplete-grid/autocomplete-grid.js +3 -6
  13. package/autocomplete-grid-cell.component-Dak9wlBr.js +24 -0
  14. package/autocomplete-grid-option.component-DNRFHOwc.js +37 -0
  15. package/autocomplete-grid-row.component-DBHZQ0GQ.js +27 -0
  16. package/autocomplete-grid.js +9 -21
  17. package/autocomplete-grid.pure.js +7 -15
  18. package/core/datetime/date-helper.js +2 -191
  19. package/core/datetime.js +2 -5
  20. package/core/timetable/access-leg-helper.js +76 -71
  21. package/core/timetable/timetable-helper.js +9 -11
  22. package/core/timetable/timetable-properties.js +0 -1
  23. package/core/timetable.js +3 -7
  24. package/date-helper-CGproP5d.js +185 -0
  25. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +114 -122
  26. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +92 -70
  27. package/development/autocomplete-grid/autocomplete-grid-button.js +6 -4
  28. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -29
  29. package/development/autocomplete-grid/autocomplete-grid-cell.js +7 -5
  30. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +27 -22
  31. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +6 -4
  32. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -109
  33. package/development/autocomplete-grid/autocomplete-grid-option.js +7 -7
  34. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -91
  35. package/development/autocomplete-grid/autocomplete-grid-row.js +7 -5
  36. package/development/autocomplete-grid/autocomplete-grid.js +6 -4
  37. package/development/autocomplete-grid-cell.component-BBvM4o2H.js +42 -0
  38. package/development/autocomplete-grid-option.component-QzfM5eIE.js +123 -0
  39. package/development/autocomplete-grid-row.component-H8sCTCkT.js +104 -0
  40. package/development/autocomplete-grid.js +10 -14
  41. package/development/autocomplete-grid.pure.js +4 -13
  42. package/development/core/datetime/date-helper.js +2 -285
  43. package/development/core/datetime.js +2 -6
  44. package/development/core/timetable/access-leg-helper.js +104 -82
  45. package/development/core/timetable/timetable-helper.js +16 -17
  46. package/development/core/timetable/timetable-properties.js +0 -2
  47. package/development/core/timetable.js +3 -8
  48. package/development/date-helper-8_Y-PuHh.js +520 -0
  49. package/development/differenceInMinutes-DN_1Rk3O.js +110 -0
  50. package/development/format-Bbrn2bgo.js +1848 -0
  51. package/development/isValid-C-HzKv4v.js +178 -0
  52. package/development/journey-summary/journey-summary.component.js +2 -288
  53. package/development/journey-summary.component-uGhZvA4p.js +385 -0
  54. package/development/journey-summary.js +8 -5
  55. package/development/journey-summary.pure.js +2 -5
  56. package/development/pearl-chain/pearl-chain.component.js +2 -634
  57. package/development/pearl-chain-time/pearl-chain-time.component.js +2 -306
  58. package/development/pearl-chain-time.component-B8mayTWD.js +415 -0
  59. package/development/pearl-chain-time.js +8 -5
  60. package/development/pearl-chain-time.pure.js +2 -5
  61. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -28
  62. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -393
  63. package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +435 -0
  64. package/development/pearl-chain-vertical-item.js +8 -5
  65. package/development/pearl-chain-vertical-item.pure.js +2 -5
  66. package/development/pearl-chain-vertical.component-CswE7b3M.js +39 -0
  67. package/development/pearl-chain-vertical.js +8 -5
  68. package/development/pearl-chain-vertical.pure.js +2 -5
  69. package/development/pearl-chain.component-wpsTvoSe.js +704 -0
  70. package/development/pearl-chain.js +8 -5
  71. package/development/pearl-chain.pure.js +2 -5
  72. package/development/seat-reservation/common/mapper/icon-mapper.js +168 -71
  73. package/development/seat-reservation/common/mapper/mapper.js +153 -122
  74. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +570 -559
  75. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +992 -972
  76. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20334 -20367
  77. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1731 -1738
  78. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9741 -9782
  79. package/development/seat-reservation/common/mapper.js +1 -8
  80. package/development/seat-reservation/common/svgs.js +2 -46
  81. package/development/seat-reservation/common/translations/i18n.js +1118 -900
  82. package/development/seat-reservation/common/translations.js +1 -4
  83. package/development/seat-reservation/common/types.js +0 -2
  84. package/development/seat-reservation/common.js +7 -11
  85. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +1305 -1230
  86. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +2 -859
  87. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -106
  88. package/development/seat-reservation/seat-reservation-area.js +7 -5
  89. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +35 -34
  90. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -162
  91. package/development/seat-reservation/seat-reservation-graphic.js +7 -5
  92. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -713
  93. package/development/seat-reservation/seat-reservation-navigation-coach.js +7 -5
  94. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -131
  95. package/development/seat-reservation/seat-reservation-navigation-services.js +7 -5
  96. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -601
  97. package/development/seat-reservation/seat-reservation-place-control.js +7 -5
  98. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -22
  99. package/development/seat-reservation/seat-reservation-scoped.js +7 -5
  100. package/development/seat-reservation/seat-reservation.js +7 -6
  101. package/development/seat-reservation-area.component-BK92ZtFo.js +138 -0
  102. package/development/seat-reservation-graphic.component-cUnsHh5x.js +193 -0
  103. package/development/seat-reservation-navigation-coach.component-D6Bglus8.js +828 -0
  104. package/development/seat-reservation-navigation-services.component-DYJ6Ddkg.js +179 -0
  105. package/development/seat-reservation-place-control.component-Bg9evKBW.js +726 -0
  106. package/development/seat-reservation-scoped.component-DRQ_I702.js +31 -0
  107. package/development/seat-reservation.component-Cq_aJKR0.js +818 -0
  108. package/development/seat-reservation.js +15 -28
  109. package/development/seat-reservation.pure.js +10 -28
  110. package/development/svgs-C3JMWR26.js +28 -0
  111. package/development/timetable-duration/timetable-duration.component.js +2 -108
  112. package/development/timetable-duration.component-DI0lET17.js +125 -0
  113. package/development/timetable-duration.js +8 -5
  114. package/development/timetable-duration.pure.js +2 -5
  115. package/development/timetable-row/timetable-row.component.js +2 -781
  116. package/development/timetable-row.component-CAED6Zwc.js +932 -0
  117. package/development/timetable-row.js +8 -13
  118. package/development/timetable-row.pure.js +2 -12
  119. package/development/toDate-Biiv3kyf.js +150 -0
  120. package/differenceInMinutes-Dr9gRqtu.js +27 -0
  121. package/format-CM5exOsN.js +1103 -0
  122. package/isValid-B9oVW3lA.js +36 -0
  123. package/journey-summary/journey-summary.component.js +2 -194
  124. package/journey-summary.component-Cq_4kaOp.js +264 -0
  125. package/journey-summary.js +5 -4
  126. package/journey-summary.pure.js +2 -4
  127. package/package.json +2 -2
  128. package/pearl-chain/pearl-chain.component.js +2 -165
  129. package/pearl-chain-time/pearl-chain-time.component.js +2 -157
  130. package/pearl-chain-time.component-DGDW5S1c.js +239 -0
  131. package/pearl-chain-time.js +5 -4
  132. package/pearl-chain-time.pure.js +2 -4
  133. package/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -17
  134. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -77
  135. package/pearl-chain-vertical-item.component-G22bWhLU.js +108 -0
  136. package/pearl-chain-vertical-item.js +5 -4
  137. package/pearl-chain-vertical-item.pure.js +2 -4
  138. package/pearl-chain-vertical.component-CXIDT5RD.js +21 -0
  139. package/pearl-chain-vertical.js +5 -4
  140. package/pearl-chain-vertical.pure.js +2 -4
  141. package/pearl-chain.component-DmjkVIva.js +194 -0
  142. package/pearl-chain.js +5 -4
  143. package/pearl-chain.pure.js +2 -4
  144. package/seat-reservation/common/mapper/icon-mapper.js +71 -71
  145. package/seat-reservation/common/mapper/mapper.js +95 -89
  146. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +568 -558
  147. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +989 -970
  148. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20332 -20366
  149. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1729 -1737
  150. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9739 -9781
  151. package/seat-reservation/common/mapper.js +3 -9
  152. package/seat-reservation/common/svgs.js +2 -243
  153. package/seat-reservation/common/translations/i18n.js +1084 -891
  154. package/seat-reservation/common/translations.js +2 -4
  155. package/seat-reservation/common/types.js +0 -1
  156. package/seat-reservation/common.js +9 -15
  157. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +832 -810
  158. package/seat-reservation/seat-reservation/seat-reservation.component.js +2 -420
  159. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -51
  160. package/seat-reservation/seat-reservation-area.js +4 -7
  161. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +68 -71
  162. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -75
  163. package/seat-reservation/seat-reservation-graphic.js +4 -7
  164. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -234
  165. package/seat-reservation/seat-reservation-navigation-coach.js +4 -7
  166. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -85
  167. package/seat-reservation/seat-reservation-navigation-services.js +4 -7
  168. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -203
  169. package/seat-reservation/seat-reservation-place-control.js +4 -7
  170. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -13
  171. package/seat-reservation/seat-reservation-scoped.js +4 -7
  172. package/seat-reservation/seat-reservation.js +5 -9
  173. package/seat-reservation-area.component-n-9rGn_y.js +75 -0
  174. package/seat-reservation-graphic.component-YTXRmKt0.js +102 -0
  175. package/seat-reservation-navigation-coach.component-YJ0vaYmO.js +333 -0
  176. package/seat-reservation-navigation-services.component-C3xnLJg2.js +127 -0
  177. package/seat-reservation-place-control.component-DmBAfM6K.js +322 -0
  178. package/seat-reservation-scoped.component-DPkz6u17.js +17 -0
  179. package/seat-reservation.component-C_anMkgw.js +364 -0
  180. package/seat-reservation.js +17 -39
  181. package/seat-reservation.pure.js +15 -32
  182. package/svgs-D9arBcqr.js +26 -0
  183. package/timetable-duration/timetable-duration.component.js +2 -57
  184. package/timetable-duration.component-DCu8Phts.js +65 -0
  185. package/timetable-duration.js +5 -4
  186. package/timetable-duration.pure.js +2 -4
  187. package/timetable-row/timetable-row.component.js +2 -427
  188. package/timetable-row.component-BVRCB3xK.js +559 -0
  189. package/timetable-row.js +6 -13
  190. package/timetable-row.pure.js +2 -11
  191. package/toDate-p-Tpkb7t.js +16 -0
  192. package/development/differenceInMinutes-B0dawX-5.js +0 -26
  193. package/development/format-BMkeaqaF.js +0 -1433
  194. package/development/isValid-BYRch7pV.js +0 -53
  195. package/development/toDate-BWb6Z1JD.js +0 -24
  196. package/differenceInMinutes-COvvdYsJ.js +0 -23
  197. package/format-CmKROkbc.js +0 -1186
  198. package/isValid-m3_OsPaB.js +0 -45
  199. package/toDate-Bw2KTWeq.js +0 -15
@@ -1,131 +1,162 @@
1
1
  import { MOCK_COACHES_RAW_BUS } from "./sample-data/seat-reservation-sample-data-bus.js";
2
2
  import { MOCK_COACHE_RAW_DECK_LOWER, MOCK_COACHE_RAW_DECK_UPPPER } from "./sample-data/seat-reservation-sample-data-decks.js";
3
3
  import { MOCK_COACHES_RAW_TRAIN } from "./sample-data/seat-reservation-sample-data-train.js";
4
+ //#region src/elements-experimental/seat-reservation/common/mapper/mapper.ts
5
+ /**
6
+ * Handle mock data based on vehicle type or coach deck level
7
+ * @param vehicleType
8
+ * @param coachDeckLevel
9
+ * @returns
10
+ */
4
11
  function getMockData(vehicleType, coachDeckLevel) {
5
- if (vehicleType !== null) {
6
- return vehicleType === "TRAIN" ? MOCK_COACHES_RAW_TRAIN : MOCK_COACHES_RAW_BUS;
7
- } else {
8
- if (coachDeckLevel === "LOWER_DECK") {
9
- return MOCK_COACHE_RAW_DECK_LOWER;
10
- } else if (coachDeckLevel === "UPPER_DECK") {
11
- return MOCK_COACHE_RAW_DECK_UPPPER;
12
- }
13
- }
14
- return MOCK_COACHES_RAW_TRAIN;
12
+ if (vehicleType !== null) return vehicleType === "TRAIN" ? MOCK_COACHES_RAW_TRAIN : MOCK_COACHES_RAW_BUS;
13
+ else if (coachDeckLevel === "LOWER_DECK") return MOCK_COACHE_RAW_DECK_LOWER;
14
+ else if (coachDeckLevel === "UPPER_DECK") return MOCK_COACHE_RAW_DECK_UPPPER;
15
+ return MOCK_COACHES_RAW_TRAIN;
15
16
  }
16
- const mapRawDataToSeatReservation = (vehicleType, coachDeckLevel = null) => {
17
- const MOCK_DATA = getMockData(vehicleType, coachDeckLevel);
18
- const deckCoachLevelIndex = coachDeckLevel === "LOWER_DECK" ? 1 : 0;
19
- const coachsArr = MOCK_DATA.map((coachDeckLayout) => {
20
- const coachLayout = coachDeckLayout?.coachDeckLayout;
21
- const coachTravelClasses = [];
22
- const coachPropertyIds = [];
23
- const places = coachLayout.placeGroups.map((placeGroup) => {
24
- if (coachTravelClasses.indexOf(placeGroup.travelClass) === -1) {
25
- coachTravelClasses.push(placeGroup.travelClass);
26
- }
27
- if (coachPropertyIds.indexOf(placeGroup.accommodationSubType) === -1) {
28
- coachPropertyIds.push(placeGroup.accommodationSubType);
29
- }
30
- return placeGroup.places?.map((place) => {
31
- return {
32
- number: place?.number,
33
- state: place?.state,
34
- type: placeGroup.accommodationSubType.indexOf("BICYCLE") === -1 ? "SEAT" : "BICYCLE",
35
- dimension: { w: place.rectangle.dimension.width, h: place.rectangle.dimension.height },
36
- position: {
37
- x: place.rectangle.position.x,
38
- y: place.rectangle.position.y,
39
- z: place.rectangle.position.z
40
- },
41
- rotation: place?.orientation || 0,
42
- travelClass: placeGroup?.travelClass,
43
- propertyIds: place.placeProperties || []
44
- };
45
- });
46
- }).flat();
47
- const signs = coachLayout.serviceIcons.map((serviceIcon) => {
48
- return {
49
- icon: serviceIcon.type,
50
- position: {
51
- x: serviceIcon.rectangle.position.x,
52
- y: serviceIcon.rectangle.position.y,
53
- z: serviceIcon.rectangle.position.z
54
- },
55
- dimension: {
56
- w: serviceIcon.rectangle.dimension.width,
57
- h: serviceIcon.rectangle.dimension.height
58
- }
59
- };
60
- });
61
- const graphicalElements = coachLayout.graphicElements.map((element) => {
62
- return {
63
- icon: element?.type,
64
- position: {
65
- x: element.rectangle.position.x,
66
- y: element.rectangle.position.y,
67
- z: element.rectangle.position.z
68
- },
69
- dimension: { w: element.rectangle.dimension.width, h: element.rectangle.dimension.height },
70
- rotation: element.orientation
71
- };
72
- });
73
- return {
74
- id: coachLayout?.id,
75
- number: coachLayout?.name,
76
- dimension: { w: coachLayout.dimension?.width, h: coachLayout.dimension?.height },
77
- places,
78
- serviceElements: signs,
79
- graphicElements: graphicalElements,
80
- travelClass: coachTravelClasses,
81
- propertyIds: coachPropertyIds
82
- };
83
- });
84
- return {
85
- vehicleType: vehicleType || "TRAIN",
86
- deckCoachIndex: deckCoachLevelIndex,
87
- deckCoachLevel: "SINGLE_DECK",
88
- coachItems: coachsArr
89
- };
17
+ /**
18
+ * Map function that converts the RAW OSDM mock data into SeatReservation
19
+ */
20
+ var mapRawDataToSeatReservation = (vehicleType, coachDeckLevel = null) => {
21
+ const MOCK_DATA = getMockData(vehicleType, coachDeckLevel);
22
+ const deckCoachLevelIndex = coachDeckLevel === "LOWER_DECK" ? 1 : 0;
23
+ const coachsArr = MOCK_DATA.map((coachDeckLayout) => {
24
+ const coachLayout = coachDeckLayout?.coachDeckLayout;
25
+ const coachTravelClasses = [];
26
+ const coachPropertyIds = [];
27
+ const places = coachLayout.placeGroups.map((placeGroup) => {
28
+ if (coachTravelClasses.indexOf(placeGroup.travelClass) === -1) coachTravelClasses.push(placeGroup.travelClass);
29
+ if (coachPropertyIds.indexOf(placeGroup.accommodationSubType) === -1) coachPropertyIds.push(placeGroup.accommodationSubType);
30
+ return placeGroup.places?.map((place) => {
31
+ return {
32
+ number: place?.number,
33
+ state: place?.state,
34
+ type: placeGroup.accommodationSubType.indexOf("BICYCLE") === -1 ? "SEAT" : "BICYCLE",
35
+ dimension: {
36
+ w: place.rectangle.dimension.width,
37
+ h: place.rectangle.dimension.height
38
+ },
39
+ position: {
40
+ x: place.rectangle.position.x,
41
+ y: place.rectangle.position.y,
42
+ z: place.rectangle.position.z
43
+ },
44
+ rotation: place?.orientation || 0,
45
+ travelClass: placeGroup?.travelClass,
46
+ propertyIds: place.placeProperties || []
47
+ };
48
+ });
49
+ }).flat();
50
+ const signs = coachLayout.serviceIcons.map((serviceIcon) => {
51
+ return {
52
+ icon: serviceIcon.type,
53
+ position: {
54
+ x: serviceIcon.rectangle.position.x,
55
+ y: serviceIcon.rectangle.position.y,
56
+ z: serviceIcon.rectangle.position.z
57
+ },
58
+ dimension: {
59
+ w: serviceIcon.rectangle.dimension.width,
60
+ h: serviceIcon.rectangle.dimension.height
61
+ }
62
+ };
63
+ });
64
+ const graphicalElements = coachLayout.graphicElements.map((element) => {
65
+ return {
66
+ icon: element?.type,
67
+ position: {
68
+ x: element.rectangle.position.x,
69
+ y: element.rectangle.position.y,
70
+ z: element.rectangle.position.z
71
+ },
72
+ dimension: {
73
+ w: element.rectangle.dimension.width,
74
+ h: element.rectangle.dimension.height
75
+ },
76
+ rotation: element.orientation
77
+ };
78
+ });
79
+ return {
80
+ id: coachLayout?.id,
81
+ number: coachLayout?.name,
82
+ dimension: {
83
+ w: coachLayout.dimension?.width,
84
+ h: coachLayout.dimension?.height
85
+ },
86
+ places,
87
+ serviceElements: signs,
88
+ graphicElements: graphicalElements,
89
+ travelClass: coachTravelClasses,
90
+ propertyIds: coachPropertyIds
91
+ };
92
+ });
93
+ return {
94
+ vehicleType: vehicleType || "TRAIN",
95
+ deckCoachIndex: deckCoachLevelIndex,
96
+ deckCoachLevel: "SINGLE_DECK",
97
+ coachItems: coachsArr
98
+ };
90
99
  };
91
- const mapPlaceInfosToPlaceSelection = (place, placeId, deckIndex, coachIndex) => {
92
- return {
93
- id: placeId,
94
- number: place.number,
95
- deckIndex,
96
- coachIndex,
97
- state: place.state,
98
- placeType: place.type
99
- };
100
+ /**
101
+ * Mapped place and coach information to place selection
102
+ * @param place
103
+ * @param placeId
104
+ * @param deckIndex
105
+ * @param coachIndex
106
+ * @returns PlaceSelection
107
+ */
108
+ var mapPlaceInfosToPlaceSelection = (place, placeId, deckIndex, coachIndex) => {
109
+ return {
110
+ id: placeId,
111
+ number: place.number,
112
+ deckIndex,
113
+ coachIndex,
114
+ state: place.state,
115
+ placeType: place.type
116
+ };
100
117
  };
101
- const mapPlaceAndCoachToSeatReservationPlaceSelection = (place, coach, placeId, deckIndex, coachIndex) => {
102
- return {
103
- id: placeId,
104
- coachId: coach.id,
105
- coachNumber: coach.number,
106
- coachIndex,
107
- deckIndex,
108
- placeNumber: place.number,
109
- placeType: place.type,
110
- placeTravelClass: place.travelClass || "ANY_CLASS",
111
- propertyIds: place.propertyIds || []
112
- };
118
+ /**
119
+ * Mapped information from place, coach and the coachindex to the seatReservationPlaceSelection.
120
+ * This Object information is emitted outwards
121
+ * @param place
122
+ * @param coach
123
+ * @param placeId
124
+ * @param deckIndex
125
+ * @param coachIndex
126
+ * @returns SeatReservationPlaceSelection
127
+ */
128
+ var mapPlaceAndCoachToSeatReservationPlaceSelection = (place, coach, placeId, deckIndex, coachIndex) => {
129
+ return {
130
+ id: placeId,
131
+ coachId: coach.id,
132
+ coachNumber: coach.number,
133
+ coachIndex,
134
+ deckIndex,
135
+ placeNumber: place.number,
136
+ placeType: place.type,
137
+ placeTravelClass: place.travelClass || "ANY_CLASS",
138
+ propertyIds: place.propertyIds || []
139
+ };
113
140
  };
114
- const mapCoachInfosToCoachSelection = (coachIndex, coach, coachNumberOfFreePlaces) => {
115
- return {
116
- coachId: coach.id,
117
- coachNumber: coach.number,
118
- coachIndex,
119
- coachType: coach?.type,
120
- coachTravelClass: coach?.travelClass,
121
- coachPropertyIds: coach?.propertyIds,
122
- coachNumberOfFreePlaces
123
- };
141
+ /**
142
+ * Mapped coach information to coach selection
143
+ * @param coachIndex
144
+ * @param coach
145
+ * @param coachNumberOfFreePlaces
146
+ * @returns PlaceSelection
147
+ */
148
+ var mapCoachInfosToCoachSelection = (coachIndex, coach, coachNumberOfFreePlaces) => {
149
+ return {
150
+ coachId: coach.id,
151
+ coachNumber: coach.number,
152
+ coachIndex,
153
+ coachType: coach?.type,
154
+ coachTravelClass: coach?.travelClass,
155
+ coachPropertyIds: coach?.propertyIds,
156
+ coachNumberOfFreePlaces
157
+ };
124
158
  };
125
- export {
126
- mapCoachInfosToCoachSelection,
127
- mapPlaceAndCoachToSeatReservationPlaceSelection,
128
- mapPlaceInfosToPlaceSelection,
129
- mapRawDataToSeatReservation
130
- };
131
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL3NlYXQtcmVzZXJ2YXRpb24vY29tbW9uL21hcHBlci9tYXBwZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBDb2FjaERlY2tMZXZlbCxcbiAgQ29hY2hJdGVtLFxuICBDb2FjaE51bWJlck9mRnJlZVBsYWNlcyxcbiAgUGxhY2UsXG4gIFBsYWNlU2VsZWN0aW9uLFxuICBQbGFjZVRyYXZlbENsYXNzLFxuICBTZWF0UmVzZXJ2YXRpb24sXG4gIFNlYXRSZXNlcnZhdGlvblBsYWNlU2VsZWN0aW9uLFxuICBTZWF0UmVzZXJ2YXRpb25TZWxlY3RlZENvYWNoLFxuICBWZWhpY2xlVHlwZSxcbn0gZnJvbSAnLi4vdHlwZXMudHMnO1xuXG5pbXBvcnQgeyBNT0NLX0NPQUNIRVNfUkFXX0JVUyB9IGZyb20gJy4vc2FtcGxlLWRhdGEvc2VhdC1yZXNlcnZhdGlvbi1zYW1wbGUtZGF0YS1idXMudHMnO1xuaW1wb3J0IHtcbiAgTU9DS19DT0FDSEVfUkFXX0RFQ0tfTE9XRVIsXG4gIE1PQ0tfQ09BQ0hFX1JBV19ERUNLX1VQUFBFUixcbn0gZnJvbSAnLi9zYW1wbGUtZGF0YS9zZWF0LXJlc2VydmF0aW9uLXNhbXBsZS1kYXRhLWRlY2tzLnRzJztcbmltcG9ydCB7IE1PQ0tfQ09BQ0hFU19SQVdfVFJBSU4gfSBmcm9tICcuL3NhbXBsZS1kYXRhL3NlYXQtcmVzZXJ2YXRpb24tc2FtcGxlLWRhdGEtdHJhaW4udHMnO1xuXG4vKipcbiAqIEhhbmRsZSBtb2NrIGRhdGEgYmFzZWQgb24gdmVoaWNsZSB0eXBlIG9yIGNvYWNoIGRlY2sgbGV2ZWxcbiAqIEBwYXJhbSB2ZWhpY2xlVHlwZVxuICogQHBhcmFtIGNvYWNoRGVja0xldmVsXG4gKiBAcmV0dXJuc1xuICovXG5mdW5jdGlvbiBnZXRNb2NrRGF0YShcbiAgdmVoaWNsZVR5cGU6IFZlaGljbGVUeXBlIHwgbnVsbCxcbiAgY29hY2hEZWNrTGV2ZWw6IENvYWNoRGVja0xldmVsIHwgbnVsbCxcbik6IGFueVtdIHtcbiAgaWYgKHZlaGljbGVUeXBlICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIHZlaGljbGVUeXBlID09PSAnVFJBSU4nID8gTU9DS19DT0FDSEVTX1JBV19UUkFJTiA6IE1PQ0tfQ09BQ0hFU19SQVdfQlVTO1xuICB9IGVsc2Uge1xuICAgIGlmIChjb2FjaERlY2tMZXZlbCA9PT0gJ0xPV0VSX0RFQ0snKSB7XG4gICAgICByZXR1cm4gTU9DS19DT0FDSEVfUkFXX0RFQ0tfTE9XRVI7XG4gICAgfSBlbHNlIGlmIChjb2FjaERlY2tMZXZlbCA9PT0gJ1VQUEVSX0RFQ0snKSB7XG4gICAgICByZXR1cm4gTU9DS19DT0FDSEVfUkFXX0RFQ0tfVVBQUEVSO1xuICAgIH1cbiAgfVxuICByZXR1cm4gTU9DS19DT0FDSEVTX1JBV19UUkFJTjtcbn1cblxuLyoqXG4gKiBNYXAgZnVuY3Rpb24gdGhhdCBjb252ZXJ0cyB0aGUgUkFXIE9TRE0gbW9jayBkYXRhIGludG8gU2VhdFJlc2VydmF0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBtYXBSYXdEYXRhVG9TZWF0UmVzZXJ2YXRpb24gPSAoXG4gIHZlaGljbGVUeXBlOiBWZWhpY2xlVHlwZSB8IG51bGwsXG4gIGNvYWNoRGVja0xldmVsOiBDb2FjaERlY2tMZXZlbCB8IG51bGwgPSBudWxsLFxuKTogU2VhdFJlc2VydmF0aW9uID0+IHtcbiAgY29uc3QgTU9DS19EQVRBID0gZ2V0TW9ja0RhdGEodmVoaWNsZVR5cGUsIGNvYWNoRGVja0xldmVsKTtcbiAgY29uc3QgZGVja0NvYWNoTGV2ZWxJbmRleCA9IGNvYWNoRGVja0xldmVsID09PSAnTE9XRVJfREVDSycgPyAxIDogMDtcblxuICBjb25zdCBjb2FjaHNBcnIgPSBNT0NLX0RBVEEubWFwKChjb2FjaERlY2tMYXlvdXQpID0+IHtcbiAgICBjb25zdCBjb2FjaExheW91dCA9IGNvYWNoRGVja0xheW91dD8uY29hY2hEZWNrTGF5b3V0O1xuICAgIGNvbnN0IGNvYWNoVHJhdmVsQ2xhc3NlczogUGxhY2VUcmF2ZWxDbGFzc1tdID0gW107XG4gICAgY29uc3QgY29hY2hQcm9wZXJ0eUlkczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBwbGFjZXMgPSBjb2FjaExheW91dC5wbGFjZUdyb3Vwc1xuICAgICAgLm1hcCgocGxhY2VHcm91cDogYW55KSA9PiB7XG4gICAgICAgIC8vQ29sbGVjdCB1bmlxdWUgdHJhdmVsIGNsYXNzZXMgZm9yIGNvYWNoXG4gICAgICAgIGlmIChjb2FjaFRyYXZlbENsYXNzZXMuaW5kZXhPZihwbGFjZUdyb3VwLnRyYXZlbENsYXNzKSA9PT0gLTEpIHtcbiAgICAgICAgICBjb2FjaFRyYXZlbENsYXNzZXMucHVzaChwbGFjZUdyb3VwLnRyYXZlbENsYXNzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbGxlY3QgdW5pcXVlIHByb3BlcnRpZXMgZm9yIGNvYWNoXG4gICAgICAgIGlmIChjb2FjaFByb3BlcnR5SWRzLmluZGV4T2YocGxhY2VHcm91cC5hY2NvbW1vZGF0aW9uU3ViVHlwZSkgPT09IC0xKSB7XG4gICAgICAgICAgY29hY2hQcm9wZXJ0eUlkcy5wdXNoKHBsYWNlR3JvdXAuYWNjb21tb2RhdGlvblN1YlR5cGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHBsYWNlR3JvdXAucGxhY2VzPy5tYXAoKHBsYWNlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbnVtYmVyOiBwbGFjZT8ubnVtYmVyLFxuICAgICAgICAgICAgc3RhdGU6IHBsYWNlPy5zdGF0ZSxcbiAgICAgICAgICAgIHR5cGU6IHBsYWNlR3JvdXAuYWNjb21tb2RhdGlvblN1YlR5cGUuaW5kZXhPZignQklDWUNMRScpID09PSAtMSA/ICdTRUFUJyA6ICdCSUNZQ0xFJyxcbiAgICAgICAgICAgIGRpbWVuc2lvbjogeyB3OiBwbGFjZS5yZWN0YW5nbGUuZGltZW5zaW9uLndpZHRoLCBoOiBwbGFjZS5yZWN0YW5nbGUuZGltZW5zaW9uLmhlaWdodCB9LFxuICAgICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgICAgeDogcGxhY2UucmVjdGFuZ2xlLnBvc2l0aW9uLngsXG4gICAgICAgICAgICAgIHk6IHBsYWNlLnJlY3RhbmdsZS5wb3NpdGlvbi55LFxuICAgICAgICAgICAgICB6OiBwbGFjZS5yZWN0YW5nbGUucG9zaXRpb24ueixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByb3RhdGlvbjogcGxhY2U/Lm9yaWVudGF0aW9uIHx8IDAsXG4gICAgICAgICAgICB0cmF2ZWxDbGFzczogcGxhY2VHcm91cD8udHJhdmVsQ2xhc3MsXG4gICAgICAgICAgICBwcm9wZXJ0eUlkczogcGxhY2UucGxhY2VQcm9wZXJ0aWVzIHx8IFtdLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICAgIC5mbGF0KCk7XG5cbiAgICBjb25zdCBzaWducyA9IGNvYWNoTGF5b3V0LnNlcnZpY2VJY29ucy5tYXAoKHNlcnZpY2VJY29uOiBhbnkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb246IHNlcnZpY2VJY29uLnR5cGUsXG4gICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgeDogc2VydmljZUljb24ucmVjdGFuZ2xlLnBvc2l0aW9uLngsXG4gICAgICAgICAgeTogc2VydmljZUljb24ucmVjdGFuZ2xlLnBvc2l0aW9uLnksXG4gICAgICAgICAgejogc2VydmljZUljb24ucmVjdGFuZ2xlLnBvc2l0aW9uLnosXG4gICAgICAgIH0sXG4gICAgICAgIGRpbWVuc2lvbjoge1xuICAgICAgICAgIHc6IHNlcnZpY2VJY29uLnJlY3RhbmdsZS5kaW1lbnNpb24ud2lkdGgsXG4gICAgICAgICAgaDogc2VydmljZUljb24ucmVjdGFuZ2xlLmRpbWVuc2lvbi5oZWlnaHQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgY29uc3QgZ3JhcGhpY2FsRWxlbWVudHMgPSBjb2FjaExheW91dC5ncmFwaGljRWxlbWVudHMubWFwKChlbGVtZW50OiBhbnkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb246IGVsZW1lbnQ/LnR5cGUsXG4gICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgeDogZWxlbWVudC5yZWN0YW5nbGUucG9zaXRpb24ueCxcbiAgICAgICAgICB5OiBlbGVtZW50LnJlY3RhbmdsZS5wb3NpdGlvbi55LFxuICAgICAgICAgIHo6IGVsZW1lbnQucmVjdGFuZ2xlLnBvc2l0aW9uLnosXG4gICAgICAgIH0sXG4gICAgICAgIGRpbWVuc2lvbjogeyB3OiBlbGVtZW50LnJlY3RhbmdsZS5kaW1lbnNpb24ud2lkdGgsIGg6IGVsZW1lbnQucmVjdGFuZ2xlLmRpbWVuc2lvbi5oZWlnaHQgfSxcbiAgICAgICAgcm90YXRpb246IGVsZW1lbnQub3JpZW50YXRpb24sXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBjb2FjaExheW91dD8uaWQsXG4gICAgICBudW1iZXI6IGNvYWNoTGF5b3V0Py5uYW1lLFxuICAgICAgZGltZW5zaW9uOiB7IHc6IGNvYWNoTGF5b3V0LmRpbWVuc2lvbj8ud2lkdGgsIGg6IGNvYWNoTGF5b3V0LmRpbWVuc2lvbj8uaGVpZ2h0IH0sXG4gICAgICBwbGFjZXM6IHBsYWNlcyxcbiAgICAgIHNlcnZpY2VFbGVtZW50czogc2lnbnMsXG4gICAgICBncmFwaGljRWxlbWVudHM6IGdyYXBoaWNhbEVsZW1lbnRzLFxuICAgICAgdHJhdmVsQ2xhc3M6IGNvYWNoVHJhdmVsQ2xhc3NlcyxcbiAgICAgIHByb3BlcnR5SWRzOiBjb2FjaFByb3BlcnR5SWRzLFxuICAgIH0gYXMgQ29hY2hJdGVtO1xuICB9KTtcblxuICByZXR1cm4ge1xuICAgIHZlaGljbGVUeXBlOiB2ZWhpY2xlVHlwZSB8fCAnVFJBSU4nLFxuICAgIGRlY2tDb2FjaEluZGV4OiBkZWNrQ29hY2hMZXZlbEluZGV4LFxuICAgIGRlY2tDb2FjaExldmVsOiAnU0lOR0xFX0RFQ0snLFxuICAgIGNvYWNoSXRlbXM6IGNvYWNoc0FycixcbiAgfTtcbn07XG5cbi8qKlxuICogTWFwcGVkIHBsYWNlIGFuZCBjb2FjaCBpbmZvcm1hdGlvbiB0byBwbGFjZSBzZWxlY3Rpb25cbiAqIEBwYXJhbSBwbGFjZVxuICogQHBhcmFtIHBsYWNlSWRcbiAqIEBwYXJhbSBkZWNrSW5kZXhcbiAqIEBwYXJhbSBjb2FjaEluZGV4XG4gKiBAcmV0dXJucyBQbGFjZVNlbGVjdGlvblxuICovXG5leHBvcnQgY29uc3QgbWFwUGxhY2VJbmZvc1RvUGxhY2VTZWxlY3Rpb24gPSAoXG4gIHBsYWNlOiBQbGFjZSxcbiAgcGxhY2VJZDogc3RyaW5nLFxuICBkZWNrSW5kZXg6IG51bWJlcixcbiAgY29hY2hJbmRleDogbnVtYmVyLFxuKTogUGxhY2VTZWxlY3Rpb24gPT4ge1xuICByZXR1cm4ge1xuICAgIGlkOiBwbGFjZUlkLFxuICAgIG51bWJlcjogcGxhY2UubnVtYmVyLFxuICAgIGRlY2tJbmRleDogZGVja0luZGV4LFxuICAgIGNvYWNoSW5kZXg6IGNvYWNoSW5kZXgsXG4gICAgc3RhdGU6IHBsYWNlLnN0YXRlLFxuICAgIHBsYWNlVHlwZTogcGxhY2UudHlwZSxcbiAgfTtcbn07XG5cbi8qKlxuICogTWFwcGVkIGluZm9ybWF0aW9uIGZyb20gcGxhY2UsIGNvYWNoIGFuZCB0aGUgY29hY2hpbmRleCAgdG8gdGhlIHNlYXRSZXNlcnZhdGlvblBsYWNlU2VsZWN0aW9uLlxuICogVGhpcyBPYmplY3QgaW5mb3JtYXRpb24gaXMgZW1pdHRlZCBvdXR3YXJkc1xuICogQHBhcmFtIHBsYWNlXG4gKiBAcGFyYW0gY29hY2hcbiAqIEBwYXJhbSBwbGFjZUlkXG4gKiBAcGFyYW0gZGVja0luZGV4XG4gKiBAcGFyYW0gY29hY2hJbmRleFxuICogQHJldHVybnMgU2VhdFJlc2VydmF0aW9uUGxhY2VTZWxlY3Rpb25cbiAqL1xuZXhwb3J0IGNvbnN0IG1hcFBsYWNlQW5kQ29hY2hUb1NlYXRSZXNlcnZhdGlvblBsYWNlU2VsZWN0aW9uID0gKFxuICBwbGFjZTogUGxhY2UsXG4gIGNvYWNoOiBDb2FjaEl0ZW0sXG4gIHBsYWNlSWQ6IHN0cmluZyxcbiAgZGVja0luZGV4OiBudW1iZXIsXG4gIGNvYWNoSW5kZXg6IG51bWJlcixcbik6IFNlYXRSZXNlcnZhdGlvblBsYWNlU2VsZWN0aW9uID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpZDogcGxhY2VJZCxcbiAgICBjb2FjaElkOiBjb2FjaC5pZCxcbiAgICBjb2FjaE51bWJlcjogY29hY2gubnVtYmVyLFxuICAgIGNvYWNoSW5kZXg6IGNvYWNoSW5kZXgsXG4gICAgZGVja0luZGV4OiBkZWNrSW5kZXgsXG4gICAgcGxhY2VOdW1iZXI6IHBsYWNlLm51bWJlcixcbiAgICBwbGFjZVR5cGU6IHBsYWNlLnR5cGUsXG4gICAgcGxhY2VUcmF2ZWxDbGFzczogcGxhY2UudHJhdmVsQ2xhc3MgfHwgJ0FOWV9DTEFTUycsXG4gICAgcHJvcGVydHlJZHM6IHBsYWNlLnByb3BlcnR5SWRzIHx8IFtdLFxuICB9O1xufTtcblxuLyoqXG4gKiBNYXBwZWQgY29hY2ggaW5mb3JtYXRpb24gdG8gY29hY2ggc2VsZWN0aW9uXG4gKiBAcGFyYW0gY29hY2hJbmRleFxuICogQHBhcmFtIGNvYWNoXG4gKiBAcGFyYW0gY29hY2hOdW1iZXJPZkZyZWVQbGFjZXNcbiAqIEByZXR1cm5zIFBsYWNlU2VsZWN0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBtYXBDb2FjaEluZm9zVG9Db2FjaFNlbGVjdGlvbiA9IChcbiAgY29hY2hJbmRleDogbnVtYmVyLFxuICBjb2FjaDogQ29hY2hJdGVtLFxuICBjb2FjaE51bWJlck9mRnJlZVBsYWNlczogQ29hY2hOdW1iZXJPZkZyZWVQbGFjZXMsXG4pOiBTZWF0UmVzZXJ2YXRpb25TZWxlY3RlZENvYWNoID0+IHtcbiAgcmV0dXJuIHtcbiAgICBjb2FjaElkOiBjb2FjaC5pZCxcbiAgICBjb2FjaE51bWJlcjogY29hY2gubnVtYmVyLFxuICAgIGNvYWNoSW5kZXg6IGNvYWNoSW5kZXgsXG4gICAgY29hY2hUeXBlOiBjb2FjaD8udHlwZSxcbiAgICBjb2FjaFRyYXZlbENsYXNzOiBjb2FjaD8udHJhdmVsQ2xhc3MsXG4gICAgY29hY2hQcm9wZXJ0eUlkczogY29hY2g/LnByb3BlcnR5SWRzLFxuICAgIGNvYWNoTnVtYmVyT2ZGcmVlUGxhY2VzOiBjb2FjaE51bWJlck9mRnJlZVBsYWNlcyxcbiAgfTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBMEJBLFNBQVMsWUFDUCxhQUNBLGdCQUFxQztBQUVyQyxNQUFJLGdCQUFnQixNQUFNO0FBQ3hCLFdBQU8sZ0JBQWdCLFVBQVUseUJBQXlCO0FBQUEsRUFDNUQsT0FBTztBQUNMLFFBQUksbUJBQW1CLGNBQWM7QUFDbkMsYUFBTztBQUFBLElBQ1QsV0FBVyxtQkFBbUIsY0FBYztBQUMxQyxhQUFPO0FBQUEsSUFDVDtBQUFBLEVBQ0Y7QUFDQSxTQUFPO0FBQ1Q7QUFLTyxNQUFNLDhCQUE4QixDQUN6QyxhQUNBLGlCQUF3QyxTQUNyQjtBQUNuQixRQUFNLFlBQVksWUFBWSxhQUFhLGNBQWM7QUFDekQsUUFBTSxzQkFBc0IsbUJBQW1CLGVBQWUsSUFBSTtBQUVsRSxRQUFNLFlBQVksVUFBVSxJQUFJLENBQUMsb0JBQW1CO0FBQ2xELFVBQU0sY0FBYyxpQkFBaUI7QUFDckMsVUFBTSxxQkFBeUMsQ0FBQTtBQUMvQyxVQUFNLG1CQUE2QixDQUFBO0FBQ25DLFVBQU0sU0FBUyxZQUFZLFlBQ3hCLElBQUksQ0FBQyxlQUFtQjtBQUV2QixVQUFJLG1CQUFtQixRQUFRLFdBQVcsV0FBVyxNQUFNLElBQUk7QUFDN0QsMkJBQW1CLEtBQUssV0FBVyxXQUFXO0FBQUEsTUFDaEQ7QUFHQSxVQUFJLGlCQUFpQixRQUFRLFdBQVcsb0JBQW9CLE1BQU0sSUFBSTtBQUNwRSx5QkFBaUIsS0FBSyxXQUFXLG9CQUFvQjtBQUFBLE1BQ3ZEO0FBRUEsYUFBTyxXQUFXLFFBQVEsSUFBSSxDQUFDLFVBQWM7QUFDM0MsZUFBTztBQUFBLFVBQ0wsUUFBUSxPQUFPO0FBQUEsVUFDZixPQUFPLE9BQU87QUFBQSxVQUNkLE1BQU0sV0FBVyxxQkFBcUIsUUFBUSxTQUFTLE1BQU0sS0FBSyxTQUFTO0FBQUEsVUFDM0UsV0FBVyxFQUFFLEdBQUcsTUFBTSxVQUFVLFVBQVUsT0FBTyxHQUFHLE1BQU0sVUFBVSxVQUFVLE9BQUE7QUFBQSxVQUM5RSxVQUFVO0FBQUEsWUFDUixHQUFHLE1BQU0sVUFBVSxTQUFTO0FBQUEsWUFDNUIsR0FBRyxNQUFNLFVBQVUsU0FBUztBQUFBLFlBQzVCLEdBQUcsTUFBTSxVQUFVLFNBQVM7QUFBQSxVQUFBO0FBQUEsVUFFOUIsVUFBVSxPQUFPLGVBQWU7QUFBQSxVQUNoQyxhQUFhLFlBQVk7QUFBQSxVQUN6QixhQUFhLE1BQU0sbUJBQW1CLENBQUE7QUFBQSxRQUFBO0FBQUEsTUFFMUMsQ0FBQztBQUFBLElBQ0gsQ0FBQyxFQUNBLEtBQUE7QUFFSCxVQUFNLFFBQVEsWUFBWSxhQUFhLElBQUksQ0FBQyxnQkFBb0I7QUFDOUQsYUFBTztBQUFBLFFBQ0wsTUFBTSxZQUFZO0FBQUEsUUFDbEIsVUFBVTtBQUFBLFVBQ1IsR0FBRyxZQUFZLFVBQVUsU0FBUztBQUFBLFVBQ2xDLEdBQUcsWUFBWSxVQUFVLFNBQVM7QUFBQSxVQUNsQyxHQUFHLFlBQVksVUFBVSxTQUFTO0FBQUEsUUFBQTtBQUFBLFFBRXBDLFdBQVc7QUFBQSxVQUNULEdBQUcsWUFBWSxVQUFVLFVBQVU7QUFBQSxVQUNuQyxHQUFHLFlBQVksVUFBVSxVQUFVO0FBQUEsUUFBQTtBQUFBLE1BQ3BDO0FBQUEsSUFFTCxDQUFDO0FBRUQsVUFBTSxvQkFBb0IsWUFBWSxnQkFBZ0IsSUFBSSxDQUFDLFlBQWdCO0FBQ3pFLGFBQU87QUFBQSxRQUNMLE1BQU0sU0FBUztBQUFBLFFBQ2YsVUFBVTtBQUFBLFVBQ1IsR0FBRyxRQUFRLFVBQVUsU0FBUztBQUFBLFVBQzlCLEdBQUcsUUFBUSxVQUFVLFNBQVM7QUFBQSxVQUM5QixHQUFHLFFBQVEsVUFBVSxTQUFTO0FBQUEsUUFBQTtBQUFBLFFBRWhDLFdBQVcsRUFBRSxHQUFHLFFBQVEsVUFBVSxVQUFVLE9BQU8sR0FBRyxRQUFRLFVBQVUsVUFBVSxPQUFBO0FBQUEsUUFDbEYsVUFBVSxRQUFRO0FBQUEsTUFBQTtBQUFBLElBRXRCLENBQUM7QUFFRCxXQUFPO0FBQUEsTUFDTCxJQUFJLGFBQWE7QUFBQSxNQUNqQixRQUFRLGFBQWE7QUFBQSxNQUNyQixXQUFXLEVBQUUsR0FBRyxZQUFZLFdBQVcsT0FBTyxHQUFHLFlBQVksV0FBVyxPQUFBO0FBQUEsTUFDeEU7QUFBQSxNQUNBLGlCQUFpQjtBQUFBLE1BQ2pCLGlCQUFpQjtBQUFBLE1BQ2pCLGFBQWE7QUFBQSxNQUNiLGFBQWE7QUFBQSxJQUFBO0FBQUEsRUFFakIsQ0FBQztBQUVELFNBQU87QUFBQSxJQUNMLGFBQWEsZUFBZTtBQUFBLElBQzVCLGdCQUFnQjtBQUFBLElBQ2hCLGdCQUFnQjtBQUFBLElBQ2hCLFlBQVk7QUFBQSxFQUFBO0FBRWhCO0FBVU8sTUFBTSxnQ0FBZ0MsQ0FDM0MsT0FDQSxTQUNBLFdBQ0EsZUFDa0I7QUFDbEIsU0FBTztBQUFBLElBQ0wsSUFBSTtBQUFBLElBQ0osUUFBUSxNQUFNO0FBQUEsSUFDZDtBQUFBLElBQ0E7QUFBQSxJQUNBLE9BQU8sTUFBTTtBQUFBLElBQ2IsV0FBVyxNQUFNO0FBQUEsRUFBQTtBQUVyQjtBQVlPLE1BQU0sa0RBQWtELENBQzdELE9BQ0EsT0FDQSxTQUNBLFdBQ0EsZUFDaUM7QUFDakMsU0FBTztBQUFBLElBQ0wsSUFBSTtBQUFBLElBQ0osU0FBUyxNQUFNO0FBQUEsSUFDZixhQUFhLE1BQU07QUFBQSxJQUNuQjtBQUFBLElBQ0E7QUFBQSxJQUNBLGFBQWEsTUFBTTtBQUFBLElBQ25CLFdBQVcsTUFBTTtBQUFBLElBQ2pCLGtCQUFrQixNQUFNLGVBQWU7QUFBQSxJQUN2QyxhQUFhLE1BQU0sZUFBZSxDQUFBO0FBQUEsRUFBQTtBQUV0QztBQVNPLE1BQU0sZ0NBQWdDLENBQzNDLFlBQ0EsT0FDQSw0QkFDZ0M7QUFDaEMsU0FBTztBQUFBLElBQ0wsU0FBUyxNQUFNO0FBQUEsSUFDZixhQUFhLE1BQU07QUFBQSxJQUNuQjtBQUFBLElBQ0EsV0FBVyxPQUFPO0FBQUEsSUFDbEIsa0JBQWtCLE9BQU87QUFBQSxJQUN6QixrQkFBa0IsT0FBTztBQUFBLElBQ3pCO0FBQUEsRUFBQTtBQUVKOyJ9
159
+ //#endregion
160
+ export { mapCoachInfosToCoachSelection, mapPlaceAndCoachToSeatReservationPlaceSelection, mapPlaceInfosToPlaceSelection, mapRawDataToSeatReservation };
161
+
162
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy1leHBlcmltZW50YWwvc2VhdC1yZXNlcnZhdGlvbi9jb21tb24vbWFwcGVyL21hcHBlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIENvYWNoRGVja0xldmVsLFxuICBDb2FjaEl0ZW0sXG4gIENvYWNoTnVtYmVyT2ZGcmVlUGxhY2VzLFxuICBQbGFjZSxcbiAgUGxhY2VTZWxlY3Rpb24sXG4gIFBsYWNlVHJhdmVsQ2xhc3MsXG4gIFNlYXRSZXNlcnZhdGlvbixcbiAgU2VhdFJlc2VydmF0aW9uUGxhY2VTZWxlY3Rpb24sXG4gIFNlYXRSZXNlcnZhdGlvblNlbGVjdGVkQ29hY2gsXG4gIFZlaGljbGVUeXBlLFxufSBmcm9tICcuLi90eXBlcy50cyc7XG5cbmltcG9ydCB7IE1PQ0tfQ09BQ0hFU19SQVdfQlVTIH0gZnJvbSAnLi9zYW1wbGUtZGF0YS9zZWF0LXJlc2VydmF0aW9uLXNhbXBsZS1kYXRhLWJ1cy50cyc7XG5pbXBvcnQge1xuICBNT0NLX0NPQUNIRV9SQVdfREVDS19MT1dFUixcbiAgTU9DS19DT0FDSEVfUkFXX0RFQ0tfVVBQUEVSLFxufSBmcm9tICcuL3NhbXBsZS1kYXRhL3NlYXQtcmVzZXJ2YXRpb24tc2FtcGxlLWRhdGEtZGVja3MudHMnO1xuaW1wb3J0IHsgTU9DS19DT0FDSEVTX1JBV19UUkFJTiB9IGZyb20gJy4vc2FtcGxlLWRhdGEvc2VhdC1yZXNlcnZhdGlvbi1zYW1wbGUtZGF0YS10cmFpbi50cyc7XG5cbi8qKlxuICogSGFuZGxlIG1vY2sgZGF0YSBiYXNlZCBvbiB2ZWhpY2xlIHR5cGUgb3IgY29hY2ggZGVjayBsZXZlbFxuICogQHBhcmFtIHZlaGljbGVUeXBlXG4gKiBAcGFyYW0gY29hY2hEZWNrTGV2ZWxcbiAqIEByZXR1cm5zXG4gKi9cbmZ1bmN0aW9uIGdldE1vY2tEYXRhKFxuICB2ZWhpY2xlVHlwZTogVmVoaWNsZVR5cGUgfCBudWxsLFxuICBjb2FjaERlY2tMZXZlbDogQ29hY2hEZWNrTGV2ZWwgfCBudWxsLFxuKTogYW55W10ge1xuICBpZiAodmVoaWNsZVR5cGUgIT09IG51bGwpIHtcbiAgICByZXR1cm4gdmVoaWNsZVR5cGUgPT09ICdUUkFJTicgPyBNT0NLX0NPQUNIRVNfUkFXX1RSQUlOIDogTU9DS19DT0FDSEVTX1JBV19CVVM7XG4gIH0gZWxzZSB7XG4gICAgaWYgKGNvYWNoRGVja0xldmVsID09PSAnTE9XRVJfREVDSycpIHtcbiAgICAgIHJldHVybiBNT0NLX0NPQUNIRV9SQVdfREVDS19MT1dFUjtcbiAgICB9IGVsc2UgaWYgKGNvYWNoRGVja0xldmVsID09PSAnVVBQRVJfREVDSycpIHtcbiAgICAgIHJldHVybiBNT0NLX0NPQUNIRV9SQVdfREVDS19VUFBQRVI7XG4gICAgfVxuICB9XG4gIHJldHVybiBNT0NLX0NPQUNIRVNfUkFXX1RSQUlOO1xufVxuXG4vKipcbiAqIE1hcCBmdW5jdGlvbiB0aGF0IGNvbnZlcnRzIHRoZSBSQVcgT1NETSBtb2NrIGRhdGEgaW50byBTZWF0UmVzZXJ2YXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IG1hcFJhd0RhdGFUb1NlYXRSZXNlcnZhdGlvbiA9IChcbiAgdmVoaWNsZVR5cGU6IFZlaGljbGVUeXBlIHwgbnVsbCxcbiAgY29hY2hEZWNrTGV2ZWw6IENvYWNoRGVja0xldmVsIHwgbnVsbCA9IG51bGwsXG4pOiBTZWF0UmVzZXJ2YXRpb24gPT4ge1xuICBjb25zdCBNT0NLX0RBVEEgPSBnZXRNb2NrRGF0YSh2ZWhpY2xlVHlwZSwgY29hY2hEZWNrTGV2ZWwpO1xuICBjb25zdCBkZWNrQ29hY2hMZXZlbEluZGV4ID0gY29hY2hEZWNrTGV2ZWwgPT09ICdMT1dFUl9ERUNLJyA/IDEgOiAwO1xuXG4gIGNvbnN0IGNvYWNoc0FyciA9IE1PQ0tfREFUQS5tYXAoKGNvYWNoRGVja0xheW91dCkgPT4ge1xuICAgIGNvbnN0IGNvYWNoTGF5b3V0ID0gY29hY2hEZWNrTGF5b3V0Py5jb2FjaERlY2tMYXlvdXQ7XG4gICAgY29uc3QgY29hY2hUcmF2ZWxDbGFzc2VzOiBQbGFjZVRyYXZlbENsYXNzW10gPSBbXTtcbiAgICBjb25zdCBjb2FjaFByb3BlcnR5SWRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IHBsYWNlcyA9IGNvYWNoTGF5b3V0LnBsYWNlR3JvdXBzXG4gICAgICAubWFwKChwbGFjZUdyb3VwOiBhbnkpID0+IHtcbiAgICAgICAgLy9Db2xsZWN0IHVuaXF1ZSB0cmF2ZWwgY2xhc3NlcyBmb3IgY29hY2hcbiAgICAgICAgaWYgKGNvYWNoVHJhdmVsQ2xhc3Nlcy5pbmRleE9mKHBsYWNlR3JvdXAudHJhdmVsQ2xhc3MpID09PSAtMSkge1xuICAgICAgICAgIGNvYWNoVHJhdmVsQ2xhc3Nlcy5wdXNoKHBsYWNlR3JvdXAudHJhdmVsQ2xhc3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ29sbGVjdCB1bmlxdWUgcHJvcGVydGllcyBmb3IgY29hY2hcbiAgICAgICAgaWYgKGNvYWNoUHJvcGVydHlJZHMuaW5kZXhPZihwbGFjZUdyb3VwLmFjY29tbW9kYXRpb25TdWJUeXBlKSA9PT0gLTEpIHtcbiAgICAgICAgICBjb2FjaFByb3BlcnR5SWRzLnB1c2gocGxhY2VHcm91cC5hY2NvbW1vZGF0aW9uU3ViVHlwZSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcGxhY2VHcm91cC5wbGFjZXM/Lm1hcCgocGxhY2U6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBudW1iZXI6IHBsYWNlPy5udW1iZXIsXG4gICAgICAgICAgICBzdGF0ZTogcGxhY2U/LnN0YXRlLFxuICAgICAgICAgICAgdHlwZTogcGxhY2VHcm91cC5hY2NvbW1vZGF0aW9uU3ViVHlwZS5pbmRleE9mKCdCSUNZQ0xFJykgPT09IC0xID8gJ1NFQVQnIDogJ0JJQ1lDTEUnLFxuICAgICAgICAgICAgZGltZW5zaW9uOiB7IHc6IHBsYWNlLnJlY3RhbmdsZS5kaW1lbnNpb24ud2lkdGgsIGg6IHBsYWNlLnJlY3RhbmdsZS5kaW1lbnNpb24uaGVpZ2h0IH0sXG4gICAgICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgICAgICB4OiBwbGFjZS5yZWN0YW5nbGUucG9zaXRpb24ueCxcbiAgICAgICAgICAgICAgeTogcGxhY2UucmVjdGFuZ2xlLnBvc2l0aW9uLnksXG4gICAgICAgICAgICAgIHo6IHBsYWNlLnJlY3RhbmdsZS5wb3NpdGlvbi56LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJvdGF0aW9uOiBwbGFjZT8ub3JpZW50YXRpb24gfHwgMCxcbiAgICAgICAgICAgIHRyYXZlbENsYXNzOiBwbGFjZUdyb3VwPy50cmF2ZWxDbGFzcyxcbiAgICAgICAgICAgIHByb3BlcnR5SWRzOiBwbGFjZS5wbGFjZVByb3BlcnRpZXMgfHwgW10sXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICB9KVxuICAgICAgLmZsYXQoKTtcblxuICAgIGNvbnN0IHNpZ25zID0gY29hY2hMYXlvdXQuc2VydmljZUljb25zLm1hcCgoc2VydmljZUljb246IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvbjogc2VydmljZUljb24udHlwZSxcbiAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICB4OiBzZXJ2aWNlSWNvbi5yZWN0YW5nbGUucG9zaXRpb24ueCxcbiAgICAgICAgICB5OiBzZXJ2aWNlSWNvbi5yZWN0YW5nbGUucG9zaXRpb24ueSxcbiAgICAgICAgICB6OiBzZXJ2aWNlSWNvbi5yZWN0YW5nbGUucG9zaXRpb24ueixcbiAgICAgICAgfSxcbiAgICAgICAgZGltZW5zaW9uOiB7XG4gICAgICAgICAgdzogc2VydmljZUljb24ucmVjdGFuZ2xlLmRpbWVuc2lvbi53aWR0aCxcbiAgICAgICAgICBoOiBzZXJ2aWNlSWNvbi5yZWN0YW5nbGUuZGltZW5zaW9uLmhlaWdodCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjb25zdCBncmFwaGljYWxFbGVtZW50cyA9IGNvYWNoTGF5b3V0LmdyYXBoaWNFbGVtZW50cy5tYXAoKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvbjogZWxlbWVudD8udHlwZSxcbiAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICB4OiBlbGVtZW50LnJlY3RhbmdsZS5wb3NpdGlvbi54LFxuICAgICAgICAgIHk6IGVsZW1lbnQucmVjdGFuZ2xlLnBvc2l0aW9uLnksXG4gICAgICAgICAgejogZWxlbWVudC5yZWN0YW5nbGUucG9zaXRpb24ueixcbiAgICAgICAgfSxcbiAgICAgICAgZGltZW5zaW9uOiB7IHc6IGVsZW1lbnQucmVjdGFuZ2xlLmRpbWVuc2lvbi53aWR0aCwgaDogZWxlbWVudC5yZWN0YW5nbGUuZGltZW5zaW9uLmhlaWdodCB9LFxuICAgICAgICByb3RhdGlvbjogZWxlbWVudC5vcmllbnRhdGlvbixcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGNvYWNoTGF5b3V0Py5pZCxcbiAgICAgIG51bWJlcjogY29hY2hMYXlvdXQ/Lm5hbWUsXG4gICAgICBkaW1lbnNpb246IHsgdzogY29hY2hMYXlvdXQuZGltZW5zaW9uPy53aWR0aCwgaDogY29hY2hMYXlvdXQuZGltZW5zaW9uPy5oZWlnaHQgfSxcbiAgICAgIHBsYWNlczogcGxhY2VzLFxuICAgICAgc2VydmljZUVsZW1lbnRzOiBzaWducyxcbiAgICAgIGdyYXBoaWNFbGVtZW50czogZ3JhcGhpY2FsRWxlbWVudHMsXG4gICAgICB0cmF2ZWxDbGFzczogY29hY2hUcmF2ZWxDbGFzc2VzLFxuICAgICAgcHJvcGVydHlJZHM6IGNvYWNoUHJvcGVydHlJZHMsXG4gICAgfSBhcyBDb2FjaEl0ZW07XG4gIH0pO1xuXG4gIHJldHVybiB7XG4gICAgdmVoaWNsZVR5cGU6IHZlaGljbGVUeXBlIHx8ICdUUkFJTicsXG4gICAgZGVja0NvYWNoSW5kZXg6IGRlY2tDb2FjaExldmVsSW5kZXgsXG4gICAgZGVja0NvYWNoTGV2ZWw6ICdTSU5HTEVfREVDSycsXG4gICAgY29hY2hJdGVtczogY29hY2hzQXJyLFxuICB9O1xufTtcblxuLyoqXG4gKiBNYXBwZWQgcGxhY2UgYW5kIGNvYWNoIGluZm9ybWF0aW9uIHRvIHBsYWNlIHNlbGVjdGlvblxuICogQHBhcmFtIHBsYWNlXG4gKiBAcGFyYW0gcGxhY2VJZFxuICogQHBhcmFtIGRlY2tJbmRleFxuICogQHBhcmFtIGNvYWNoSW5kZXhcbiAqIEByZXR1cm5zIFBsYWNlU2VsZWN0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBtYXBQbGFjZUluZm9zVG9QbGFjZVNlbGVjdGlvbiA9IChcbiAgcGxhY2U6IFBsYWNlLFxuICBwbGFjZUlkOiBzdHJpbmcsXG4gIGRlY2tJbmRleDogbnVtYmVyLFxuICBjb2FjaEluZGV4OiBudW1iZXIsXG4pOiBQbGFjZVNlbGVjdGlvbiA9PiB7XG4gIHJldHVybiB7XG4gICAgaWQ6IHBsYWNlSWQsXG4gICAgbnVtYmVyOiBwbGFjZS5udW1iZXIsXG4gICAgZGVja0luZGV4OiBkZWNrSW5kZXgsXG4gICAgY29hY2hJbmRleDogY29hY2hJbmRleCxcbiAgICBzdGF0ZTogcGxhY2Uuc3RhdGUsXG4gICAgcGxhY2VUeXBlOiBwbGFjZS50eXBlLFxuICB9O1xufTtcblxuLyoqXG4gKiBNYXBwZWQgaW5mb3JtYXRpb24gZnJvbSBwbGFjZSwgY29hY2ggYW5kIHRoZSBjb2FjaGluZGV4ICB0byB0aGUgc2VhdFJlc2VydmF0aW9uUGxhY2VTZWxlY3Rpb24uXG4gKiBUaGlzIE9iamVjdCBpbmZvcm1hdGlvbiBpcyBlbWl0dGVkIG91dHdhcmRzXG4gKiBAcGFyYW0gcGxhY2VcbiAqIEBwYXJhbSBjb2FjaFxuICogQHBhcmFtIHBsYWNlSWRcbiAqIEBwYXJhbSBkZWNrSW5kZXhcbiAqIEBwYXJhbSBjb2FjaEluZGV4XG4gKiBAcmV0dXJucyBTZWF0UmVzZXJ2YXRpb25QbGFjZVNlbGVjdGlvblxuICovXG5leHBvcnQgY29uc3QgbWFwUGxhY2VBbmRDb2FjaFRvU2VhdFJlc2VydmF0aW9uUGxhY2VTZWxlY3Rpb24gPSAoXG4gIHBsYWNlOiBQbGFjZSxcbiAgY29hY2g6IENvYWNoSXRlbSxcbiAgcGxhY2VJZDogc3RyaW5nLFxuICBkZWNrSW5kZXg6IG51bWJlcixcbiAgY29hY2hJbmRleDogbnVtYmVyLFxuKTogU2VhdFJlc2VydmF0aW9uUGxhY2VTZWxlY3Rpb24gPT4ge1xuICByZXR1cm4ge1xuICAgIGlkOiBwbGFjZUlkLFxuICAgIGNvYWNoSWQ6IGNvYWNoLmlkLFxuICAgIGNvYWNoTnVtYmVyOiBjb2FjaC5udW1iZXIsXG4gICAgY29hY2hJbmRleDogY29hY2hJbmRleCxcbiAgICBkZWNrSW5kZXg6IGRlY2tJbmRleCxcbiAgICBwbGFjZU51bWJlcjogcGxhY2UubnVtYmVyLFxuICAgIHBsYWNlVHlwZTogcGxhY2UudHlwZSxcbiAgICBwbGFjZVRyYXZlbENsYXNzOiBwbGFjZS50cmF2ZWxDbGFzcyB8fCAnQU5ZX0NMQVNTJyxcbiAgICBwcm9wZXJ0eUlkczogcGxhY2UucHJvcGVydHlJZHMgfHwgW10sXG4gIH07XG59O1xuXG4vKipcbiAqIE1hcHBlZCBjb2FjaCBpbmZvcm1hdGlvbiB0byBjb2FjaCBzZWxlY3Rpb25cbiAqIEBwYXJhbSBjb2FjaEluZGV4XG4gKiBAcGFyYW0gY29hY2hcbiAqIEBwYXJhbSBjb2FjaE51bWJlck9mRnJlZVBsYWNlc1xuICogQHJldHVybnMgUGxhY2VTZWxlY3Rpb25cbiAqL1xuZXhwb3J0IGNvbnN0IG1hcENvYWNoSW5mb3NUb0NvYWNoU2VsZWN0aW9uID0gKFxuICBjb2FjaEluZGV4OiBudW1iZXIsXG4gIGNvYWNoOiBDb2FjaEl0ZW0sXG4gIGNvYWNoTnVtYmVyT2ZGcmVlUGxhY2VzOiBDb2FjaE51bWJlck9mRnJlZVBsYWNlcyxcbik6IFNlYXRSZXNlcnZhdGlvblNlbGVjdGVkQ29hY2ggPT4ge1xuICByZXR1cm4ge1xuICAgIGNvYWNoSWQ6IGNvYWNoLmlkLFxuICAgIGNvYWNoTnVtYmVyOiBjb2FjaC5udW1iZXIsXG4gICAgY29hY2hJbmRleDogY29hY2hJbmRleCxcbiAgICBjb2FjaFR5cGU6IGNvYWNoPy50eXBlLFxuICAgIGNvYWNoVHJhdmVsQ2xhc3M6IGNvYWNoPy50cmF2ZWxDbGFzcyxcbiAgICBjb2FjaFByb3BlcnR5SWRzOiBjb2FjaD8ucHJvcGVydHlJZHMsXG4gICAgY29hY2hOdW1iZXJPZkZyZWVQbGFjZXM6IGNvYWNoTnVtYmVyT2ZGcmVlUGxhY2VzLFxuICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQTBCQSxTQUFTLFlBQ1AsYUFDQSxnQkFBcUM7QUFFckMsS0FBSSxnQkFBZ0IsS0FDbEIsUUFBTyxnQkFBZ0IsVUFBVSx5QkFBeUI7VUFFdEQsbUJBQW1CLGFBQ3JCLFFBQU87VUFDRSxtQkFBbUIsYUFDNUIsUUFBTztBQUdYLFFBQU87Ozs7O0FBTVQsSUFBYSwrQkFDWCxhQUNBLGlCQUF3QyxTQUNyQjtDQUNuQixNQUFNLFlBQVksWUFBWSxhQUFhLGVBQWU7Q0FDMUQsTUFBTSxzQkFBc0IsbUJBQW1CLGVBQWUsSUFBSTtDQUVsRSxNQUFNLFlBQVksVUFBVSxLQUFLLG9CQUFtQjtFQUNsRCxNQUFNLGNBQWMsaUJBQWlCO0VBQ3JDLE1BQU0scUJBQXlDLEVBQUU7RUFDakQsTUFBTSxtQkFBNkIsRUFBRTtFQUNyQyxNQUFNLFNBQVMsWUFBWSxZQUN4QixLQUFLLGVBQW1CO0FBRXZCLE9BQUksbUJBQW1CLFFBQVEsV0FBVyxZQUFZLEtBQUssR0FDekQsb0JBQW1CLEtBQUssV0FBVyxZQUFZO0FBSWpELE9BQUksaUJBQWlCLFFBQVEsV0FBVyxxQkFBcUIsS0FBSyxHQUNoRSxrQkFBaUIsS0FBSyxXQUFXLHFCQUFxQjtBQUd4RCxVQUFPLFdBQVcsUUFBUSxLQUFLLFVBQWM7QUFDM0MsV0FBTztLQUNMLFFBQVEsT0FBTztLQUNmLE9BQU8sT0FBTztLQUNkLE1BQU0sV0FBVyxxQkFBcUIsUUFBUSxVQUFVLEtBQUssS0FBSyxTQUFTO0tBQzNFLFdBQVc7TUFBRSxHQUFHLE1BQU0sVUFBVSxVQUFVO01BQU8sR0FBRyxNQUFNLFVBQVUsVUFBVTtNQUFRO0tBQ3RGLFVBQVU7TUFDUixHQUFHLE1BQU0sVUFBVSxTQUFTO01BQzVCLEdBQUcsTUFBTSxVQUFVLFNBQVM7TUFDNUIsR0FBRyxNQUFNLFVBQVUsU0FBUztNQUM3QjtLQUNELFVBQVUsT0FBTyxlQUFlO0tBQ2hDLGFBQWEsWUFBWTtLQUN6QixhQUFhLE1BQU0sbUJBQW1CLEVBQUE7S0FDdkM7S0FDRDtJQUNGLENBQ0QsTUFBTTtFQUVULE1BQU0sUUFBUSxZQUFZLGFBQWEsS0FBSyxnQkFBb0I7QUFDOUQsVUFBTztJQUNMLE1BQU0sWUFBWTtJQUNsQixVQUFVO0tBQ1IsR0FBRyxZQUFZLFVBQVUsU0FBUztLQUNsQyxHQUFHLFlBQVksVUFBVSxTQUFTO0tBQ2xDLEdBQUcsWUFBWSxVQUFVLFNBQVM7S0FDbkM7SUFDRCxXQUFXO0tBQ1QsR0FBRyxZQUFZLFVBQVUsVUFBVTtLQUNuQyxHQUFHLFlBQVksVUFBVSxVQUFVOztJQUV0QztJQUNEO0VBRUYsTUFBTSxvQkFBb0IsWUFBWSxnQkFBZ0IsS0FBSyxZQUFnQjtBQUN6RSxVQUFPO0lBQ0wsTUFBTSxTQUFTO0lBQ2YsVUFBVTtLQUNSLEdBQUcsUUFBUSxVQUFVLFNBQVM7S0FDOUIsR0FBRyxRQUFRLFVBQVUsU0FBUztLQUM5QixHQUFHLFFBQVEsVUFBVSxTQUFTO0tBQy9CO0lBQ0QsV0FBVztLQUFFLEdBQUcsUUFBUSxVQUFVLFVBQVU7S0FBTyxHQUFHLFFBQVEsVUFBVSxVQUFVO0tBQVE7SUFDMUYsVUFBVSxRQUFRO0lBQ25CO0lBQ0Q7QUFFRixTQUFPO0dBQ0wsSUFBSSxhQUFhO0dBQ2pCLFFBQVEsYUFBYTtHQUNyQixXQUFXO0lBQUUsR0FBRyxZQUFZLFdBQVc7SUFBTyxHQUFHLFlBQVksV0FBVztJQUFRO0dBQ3hFO0dBQ1IsaUJBQWlCO0dBQ2pCLGlCQUFpQjtHQUNqQixhQUFhO0dBQ2IsYUFBYTtHQUNEO0dBQ2Q7QUFFRixRQUFPO0VBQ0wsYUFBYSxlQUFlO0VBQzVCLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNiOzs7Ozs7Ozs7O0FBV0gsSUFBYSxpQ0FDWCxPQUNBLFNBQ0EsV0FDQSxlQUNrQjtBQUNsQixRQUFPO0VBQ0wsSUFBSTtFQUNKLFFBQVEsTUFBTTtFQUNIO0VBQ0M7RUFDWixPQUFPLE1BQU07RUFDYixXQUFXLE1BQU07RUFDbEI7Ozs7Ozs7Ozs7OztBQWFILElBQWEsbURBQ1gsT0FDQSxPQUNBLFNBQ0EsV0FDQSxlQUNpQztBQUNqQyxRQUFPO0VBQ0wsSUFBSTtFQUNKLFNBQVMsTUFBTTtFQUNmLGFBQWEsTUFBTTtFQUNQO0VBQ0Q7RUFDWCxhQUFhLE1BQU07RUFDbkIsV0FBVyxNQUFNO0VBQ2pCLGtCQUFrQixNQUFNLGVBQWU7RUFDdkMsYUFBYSxNQUFNLGVBQWUsRUFBQTtFQUNuQzs7Ozs7Ozs7O0FBVUgsSUFBYSxpQ0FDWCxZQUNBLE9BQ0EsNEJBQ2dDO0FBQ2hDLFFBQU87RUFDTCxTQUFTLE1BQU07RUFDZixhQUFhLE1BQU07RUFDUDtFQUNaLFdBQVcsT0FBTztFQUNsQixrQkFBa0IsT0FBTztFQUN6QixrQkFBa0IsT0FBTztFQUNBO0VBQzFCIn0=