@roomstay/frontend 2.0.12 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (834) hide show
  1. package/dist/201.bundle.js +1 -1
  2. package/dist/218.bundle.js +1 -1
  3. package/dist/423.bundle.js +1 -1
  4. package/dist/449.bundle.js +1 -1
  5. package/dist/873.bundle.js +1 -1
  6. package/dist/882.bundle.js +1 -1
  7. package/dist/main.bundle.js +1 -1
  8. package/dist/src/animations/AutoAutoHeight.js +28 -2
  9. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  10. package/dist/src/animations/Fade.js +24 -1
  11. package/dist/src/animations/Fade.js.map +1 -1
  12. package/dist/src/api/AddonAPI.js +29 -3
  13. package/dist/src/api/AddonAPI.js.map +1 -1
  14. package/dist/src/api/AvailabilityAPI.d.ts +1 -1
  15. package/dist/src/api/AvailabilityAPI.js +40 -14
  16. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  17. package/dist/src/api/BaseAPI.d.ts +1 -1
  18. package/dist/src/api/BaseAPI.js +7 -4
  19. package/dist/src/api/BaseAPI.js.map +1 -1
  20. package/dist/src/api/BookingAPI.js +12 -9
  21. package/dist/src/api/BookingAPI.js.map +1 -1
  22. package/dist/src/api/ErrorAPI.js +4 -1
  23. package/dist/src/api/ErrorAPI.js.map +1 -1
  24. package/dist/src/api/ExchangeRateAPI.js +4 -1
  25. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  26. package/dist/src/api/HotelAPI.js +4 -1
  27. package/dist/src/api/HotelAPI.js.map +1 -1
  28. package/dist/src/api/MemberAPI.js +24 -1
  29. package/dist/src/api/MemberAPI.js.map +1 -1
  30. package/dist/src/api/ReservationAPI.js +24 -1
  31. package/dist/src/api/ReservationAPI.js.map +1 -1
  32. package/dist/src/api/SessionAPI.js +24 -1
  33. package/dist/src/api/SessionAPI.js.map +1 -1
  34. package/dist/src/api/members-service/MembersServiceAPI.js +4 -1
  35. package/dist/src/api/members-service/MembersServiceAPI.js.map +1 -1
  36. package/dist/src/components/User/Forms/ForgotPasswordForm.js +33 -7
  37. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
  38. package/dist/src/components/User/Forms/SignInForm.js +33 -7
  39. package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
  40. package/dist/src/components/User/Forms/SignUpForm.js +36 -10
  41. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
  42. package/dist/src/components/generic/Alert.js +30 -4
  43. package/dist/src/components/generic/Alert.js.map +1 -1
  44. package/dist/src/components/generic/BEButton.js +30 -4
  45. package/dist/src/components/generic/BEButton.js.map +1 -1
  46. package/dist/src/components/generic/BackButton.js +28 -2
  47. package/dist/src/components/generic/BackButton.js.map +1 -1
  48. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +29 -3
  49. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  50. package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +19 -0
  51. package/dist/src/components/generic/BookingWizard/BookingWizard.js +106 -0
  52. package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -0
  53. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +6 -0
  54. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js +28 -0
  55. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -0
  56. package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +10 -0
  57. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +113 -0
  58. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -0
  59. package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +35 -0
  60. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js +8 -0
  61. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -0
  62. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.d.ts +7 -0
  63. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +146 -0
  64. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -0
  65. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.d.ts +9 -0
  66. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +111 -0
  67. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -0
  68. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.d.ts +10 -0
  69. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +144 -0
  70. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -0
  71. package/dist/src/components/generic/Card/Card/Card.js +30 -4
  72. package/dist/src/components/generic/Card/Card/Card.js.map +1 -1
  73. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +31 -5
  74. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
  75. package/dist/src/components/generic/Checkbox/Checkbox.js +30 -4
  76. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
  77. package/dist/src/components/generic/Countdown.d.ts +1 -1
  78. package/dist/src/components/generic/Countdown.js +29 -3
  79. package/dist/src/components/generic/Countdown.js.map +1 -1
  80. package/dist/src/components/generic/Currency.js +29 -3
  81. package/dist/src/components/generic/Currency.js.map +1 -1
  82. package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +14 -0
  83. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +155 -0
  84. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -0
  85. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.d.ts +10 -0
  86. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js +44 -0
  87. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js.map +1 -0
  88. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.d.ts +21 -0
  89. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +134 -0
  90. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -0
  91. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.d.ts +6 -0
  92. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +44 -0
  93. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -0
  94. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.d.ts +7 -0
  95. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +57 -0
  96. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -0
  97. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.d.ts +25 -0
  98. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +87 -0
  99. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -0
  100. package/dist/src/components/generic/Distance.js +28 -2
  101. package/dist/src/components/generic/Distance.js.map +1 -1
  102. package/dist/src/components/generic/ForwardedSelect.d.ts +1 -1
  103. package/dist/src/components/generic/ForwardedSelect.js +24 -1
  104. package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
  105. package/dist/src/components/generic/Headline.js +29 -3
  106. package/dist/src/components/generic/Headline.js.map +1 -1
  107. package/dist/src/components/generic/Icon/Icon.js +30 -4
  108. package/dist/src/components/generic/Icon/Icon.js.map +1 -1
  109. package/dist/src/components/generic/IconText/IconText.js +31 -5
  110. package/dist/src/components/generic/IconText/IconText.js.map +1 -1
  111. package/dist/src/components/generic/InputGroup/InputGroup.js +29 -3
  112. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  113. package/dist/src/components/generic/LineBreak.js +29 -3
  114. package/dist/src/components/generic/LineBreak.js.map +1 -1
  115. package/dist/src/components/generic/Notification.js +25 -2
  116. package/dist/src/components/generic/Notification.js.map +1 -1
  117. package/dist/src/components/generic/NumberIncrement.js +30 -4
  118. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  119. package/dist/src/components/generic/Overlay/Overlay.d.ts +3 -2
  120. package/dist/src/components/generic/Overlay/Overlay.js +33 -6
  121. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
  122. package/dist/src/components/generic/PasswordBox/PasswordBox.js +30 -4
  123. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
  124. package/dist/src/components/generic/PaymentCard/CardTypeSelect.d.ts +1 -2
  125. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +30 -4
  126. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -1
  127. package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +2 -3
  128. package/dist/src/components/generic/PaymentCard/PaymentCard.js +30 -4
  129. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -1
  130. package/dist/src/components/generic/PaymentCard/PaymentCardInput.d.ts +2 -3
  131. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +34 -8
  132. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
  133. package/dist/src/components/generic/Pill.js +30 -4
  134. package/dist/src/components/generic/Pill.js.map +1 -1
  135. package/dist/src/components/generic/Placeholder.js +29 -3
  136. package/dist/src/components/generic/Placeholder.js.map +1 -1
  137. package/dist/src/components/generic/PlanpayButton/PlanpayButton.d.ts +1 -2
  138. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +28 -2
  139. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -1
  140. package/dist/src/components/generic/Portal/Portal.js +24 -1
  141. package/dist/src/components/generic/Portal/Portal.js.map +1 -1
  142. package/dist/src/components/generic/PromoCodeInput.js +32 -6
  143. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  144. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +30 -4
  145. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
  146. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +30 -4
  147. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  148. package/dist/src/components/generic/RecentSearchesCard.d.ts +1 -1
  149. package/dist/src/components/generic/RecentSearchesCard.js +35 -9
  150. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  151. package/dist/src/components/generic/Select/Select.d.ts +20 -6
  152. package/dist/src/components/generic/Select/Select.js +92 -25
  153. package/dist/src/components/generic/Select/Select.js.map +1 -1
  154. package/dist/src/components/generic/Slider/Slider.js +29 -3
  155. package/dist/src/components/generic/Slider/Slider.js.map +1 -1
  156. package/dist/src/components/generic/Tabs/ElementChildren.js +24 -1
  157. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
  158. package/dist/src/components/generic/Tabs/Tab.js +24 -1
  159. package/dist/src/components/generic/Tabs/Tab.js.map +1 -1
  160. package/dist/src/components/generic/Tabs/TabContext.js +24 -1
  161. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
  162. package/dist/src/components/generic/Tabs/TabLink.js +30 -4
  163. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  164. package/dist/src/components/generic/Tabs/TabRouteContainer.js +28 -2
  165. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
  166. package/dist/src/components/generic/Tabs/Tabs.js +29 -3
  167. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -1
  168. package/dist/src/components/generic/Text.js +29 -3
  169. package/dist/src/components/generic/Text.js.map +1 -1
  170. package/dist/src/components/generic/TextArea.js +24 -1
  171. package/dist/src/components/generic/TextArea.js.map +1 -1
  172. package/dist/src/components/generic/TextBox.js +30 -4
  173. package/dist/src/components/generic/TextBox.js.map +1 -1
  174. package/dist/src/components/generic/Tooltip/Tooltip.js +28 -2
  175. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
  176. package/dist/src/components/generic/badging/SSLSecureBadge.js +29 -3
  177. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  178. package/dist/src/components/generic/buttons/NextStepButton.js +30 -4
  179. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  180. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +34 -8
  181. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  182. package/dist/src/components/generic/date/DatePicker.d.ts +1 -1
  183. package/dist/src/components/generic/date/DatePicker.js +42 -16
  184. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  185. package/dist/src/components/generic/date/DatePickerDay.d.ts +1 -1
  186. package/dist/src/components/generic/date/DatePickerDay.js +33 -7
  187. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  188. package/dist/src/components/generic/date/DatePickerDays.d.ts +1 -1
  189. package/dist/src/components/generic/date/DatePickerDays.js +29 -3
  190. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  191. package/dist/src/components/generic/date/DatePickerMonth.d.ts +1 -1
  192. package/dist/src/components/generic/date/DatePickerMonth.js +30 -4
  193. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  194. package/dist/src/components/generic/date/DatePickerWeek.js +38 -12
  195. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  196. package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
  197. package/dist/src/components/generic/date/FloatingDatePicker.js +29 -3
  198. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  199. package/dist/src/components/generic/date/WeekViewSkeleton.js +31 -5
  200. package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
  201. package/dist/src/components/generic/loader/ImageLoader.js +29 -3
  202. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  203. package/dist/src/components/generic/loader/LargeLoader.js +28 -2
  204. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  205. package/dist/src/components/generic/loader/SmallSpinner.js +25 -2
  206. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  207. package/dist/src/components/generic/map/HotelLocationMap.js +28 -2
  208. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  209. package/dist/src/components/generic/modal/ConfirmationModal.d.ts +1 -2
  210. package/dist/src/components/generic/modal/ConfirmationModal.js +30 -4
  211. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  212. package/dist/src/components/generic/modal/ErrorModal.js +29 -3
  213. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  214. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +32 -6
  215. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
  216. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +33 -7
  217. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
  218. package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -0
  219. package/dist/src/components/generic/modal/SimpleModal.js +36 -9
  220. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  221. package/dist/src/components/generic/modal/TabbedModal.js +29 -3
  222. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  223. package/dist/src/components/generic/radio/RadioFields.js +32 -6
  224. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  225. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js +24 -1
  226. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js.map +1 -1
  227. package/dist/src/components/members/EditMyProfile.js +32 -6
  228. package/dist/src/components/members/EditMyProfile.js.map +1 -1
  229. package/dist/src/components/navigation/Header.js +40 -14
  230. package/dist/src/components/navigation/Header.js.map +1 -1
  231. package/dist/src/components/navigation/StepSelector.js +34 -8
  232. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  233. package/dist/src/components/navigation/StepSelectorModal.js +33 -7
  234. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  235. package/dist/src/components/pages/Account/Card/CardList.js +30 -4
  236. package/dist/src/components/pages/Account/Card/CardList.js.map +1 -1
  237. package/dist/src/components/pages/Account/Card/MemberCardItem.js +34 -8
  238. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
  239. package/dist/src/components/pages/PageColorComponent.js +28 -2
  240. package/dist/src/components/pages/PageColorComponent.js.map +1 -1
  241. package/dist/src/components/reservation/ReservationItem.js +42 -16
  242. package/dist/src/components/reservation/ReservationItem.js.map +1 -1
  243. package/dist/src/components/reservation/ReservationList.js +28 -2
  244. package/dist/src/components/reservation/ReservationList.js.map +1 -1
  245. package/dist/src/components/steps/DaysSelectedInformer.js +25 -2
  246. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  247. package/dist/src/components/steps/MinimumNightStayPill.js +30 -4
  248. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  249. package/dist/src/components/steps/addons/AddonCard.js +37 -12
  250. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  251. package/dist/src/components/steps/addons/AddonList.js +33 -7
  252. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  253. package/dist/src/components/steps/addons/AddonsNotFound.js +29 -3
  254. package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
  255. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +29 -3
  256. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  257. package/dist/src/components/steps/confirmation/AccountDetails.js +29 -3
  258. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  259. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +30 -4
  260. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
  261. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +24 -1
  262. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
  263. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +32 -6
  264. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
  265. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +28 -2
  266. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
  267. package/dist/src/components/steps/confirmation/RoomContactDetails.js +41 -15
  268. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  269. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +33 -7
  270. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  271. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +37 -11
  272. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  273. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +30 -4
  274. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  275. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +31 -5
  276. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  277. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +54 -28
  278. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  279. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +28 -2
  280. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
  281. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.d.ts +1 -1
  282. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +32 -6
  283. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  284. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +29 -3
  285. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  286. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +25 -2
  287. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  288. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +36 -10
  289. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  290. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +26 -3
  291. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  292. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +37 -12
  293. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  294. package/dist/src/components/steps/date/PeoplePicker.js +32 -6
  295. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  296. package/dist/src/components/steps/date/PeoplePickerRow.js +31 -5
  297. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  298. package/dist/src/components/steps/date/StepDatePricePerRoom.js +32 -6
  299. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  300. package/dist/src/components/steps/date/StepOneDateRange.js +29 -3
  301. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  302. package/dist/src/components/steps/date/StepOneDateRangePicker.js +30 -4
  303. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  304. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +29 -3
  305. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  306. package/dist/src/components/steps/date/StepOneNextStepButton.js +29 -3
  307. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  308. package/dist/src/components/steps/date/StepOneStatusPeople.js +28 -2
  309. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  310. package/dist/src/components/steps/hotel/HotelCard.js +39 -13
  311. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  312. package/dist/src/components/steps/hotel/HotelCardList.js +29 -3
  313. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  314. package/dist/src/components/steps/hotel/HotelCardModal.js +38 -12
  315. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  316. package/dist/src/components/steps/hotel/HotelSearchParameters.js +47 -21
  317. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  318. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +29 -3
  319. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  320. package/dist/src/components/steps/room/AvailableUpgradesModal.js +37 -11
  321. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  322. package/dist/src/components/steps/room/ImageGallerySlider.js +32 -6
  323. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  324. package/dist/src/components/steps/room/InactivityWindow.js +37 -11
  325. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  326. package/dist/src/components/steps/room/LargeRoomCard.js +35 -9
  327. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  328. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +38 -12
  329. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  330. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +35 -9
  331. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  332. package/dist/src/components/steps/room/RatesNotFound.js +29 -3
  333. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  334. package/dist/src/components/steps/room/RoomList.js +38 -12
  335. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  336. package/dist/src/components/steps/room/RoomListAlert.js +31 -5
  337. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
  338. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +34 -8
  339. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  340. package/dist/src/components/steps/room/RoomModal.js +34 -8
  341. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  342. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +31 -5
  343. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  344. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +29 -3
  345. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  346. package/dist/src/components/steps/room/StepRoomErrorForm.js +37 -11
  347. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  348. package/dist/src/components/steps/room/StepRoomHotelDetails.js +29 -3
  349. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  350. package/dist/src/components/steps/room/StepRoomNextStepButton.js +29 -3
  351. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  352. package/dist/src/components/steps/room/StepRoomSortBy.js +34 -9
  353. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  354. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +31 -5
  355. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  356. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +1 -1
  357. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +32 -7
  358. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  359. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +1 -1
  360. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +32 -7
  361. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  362. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +31 -5
  363. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  364. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +43 -17
  365. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  366. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +41 -15
  367. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  368. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +25 -2
  369. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  370. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +31 -5
  371. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  372. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +35 -9
  373. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  374. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +37 -11
  375. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  376. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +29 -3
  377. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  378. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +35 -9
  379. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  380. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +34 -8
  381. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  382. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +34 -8
  383. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  384. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +30 -4
  385. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  386. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +30 -4
  387. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
  388. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +32 -6
  389. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  390. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +38 -12
  391. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  392. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +33 -7
  393. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  394. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +30 -4
  395. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  396. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +38 -12
  397. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  398. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +33 -7
  399. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  400. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +32 -6
  401. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  402. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +32 -6
  403. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  404. package/dist/src/components/summary/BEMapWidget.d.ts +3 -5
  405. package/dist/src/components/summary/BEMapWidget.js +66 -18
  406. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  407. package/dist/src/components/summary/BEMobileSummary.js +35 -9
  408. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  409. package/dist/src/components/summary/BEMobileSummaryModal.js +41 -15
  410. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  411. package/dist/src/components/summary/BESummary.js +37 -11
  412. package/dist/src/components/summary/BESummary.js.map +1 -1
  413. package/dist/src/components/summary/BESummaryAddonRow.js +34 -8
  414. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  415. package/dist/src/components/summary/BESummaryPerkBlock.js +30 -4
  416. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  417. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +25 -2
  418. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  419. package/dist/src/components/summary/BESummaryRoomRow.js +35 -9
  420. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  421. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +30 -4
  422. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  423. package/dist/src/components/temp/Login.js +29 -3
  424. package/dist/src/components/temp/Login.js.map +1 -1
  425. package/dist/src/containers/PrivateRoute.js +24 -1
  426. package/dist/src/containers/PrivateRoute.js.map +1 -1
  427. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +1 -1
  428. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  429. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +42 -16
  430. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  431. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +28 -2
  432. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  433. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +34 -8
  434. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  435. package/dist/src/contexts/ConfirmationFormContext.js +24 -1
  436. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  437. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +30 -4
  438. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  439. package/dist/src/contexts/DatePickerContext.d.ts +1 -1
  440. package/dist/src/contexts/DatePickerContext.js +24 -1
  441. package/dist/src/contexts/DatePickerContext.js.map +1 -1
  442. package/dist/src/contexts/ErrorContext.js +29 -3
  443. package/dist/src/contexts/ErrorContext.js.map +1 -1
  444. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.d.ts +1 -1
  445. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.js.map +1 -1
  446. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +52 -26
  447. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  448. package/dist/src/contexts/HotelOverridesContext.js +28 -2
  449. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  450. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +30 -4
  451. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
  452. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +30 -4
  453. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
  454. package/dist/src/contexts/ModalContext.js +24 -1
  455. package/dist/src/contexts/ModalContext.js.map +1 -1
  456. package/dist/src/contexts/NotificationContext.js +28 -2
  457. package/dist/src/contexts/NotificationContext.js.map +1 -1
  458. package/dist/src/engines/BaseEngine.d.ts +4 -5
  459. package/dist/src/engines/BaseEngine.js +6 -2
  460. package/dist/src/engines/BaseEngine.js.map +1 -1
  461. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +17 -0
  462. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js +31 -0
  463. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -0
  464. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.d.ts +6 -0
  465. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +54 -0
  466. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -0
  467. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.d.ts +6 -2
  468. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +24 -1
  469. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
  470. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +24 -1
  471. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  472. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.d.ts +6 -2
  473. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js +4 -1
  474. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js.map +1 -1
  475. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +61 -35
  476. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  477. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.d.ts +6 -2
  478. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js +4 -1
  479. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  480. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +35 -9
  481. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  482. package/dist/src/errors/GetAvailabilityError.d.ts +1 -1
  483. package/dist/src/errors/GetAvailabilityError.js.map +1 -1
  484. package/dist/src/hooks/AutoFocusOnSelect.d.ts +2 -0
  485. package/dist/src/hooks/AutoFocusOnSelect.js +1 -0
  486. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
  487. package/dist/src/hooks/ConfirmationQuery.js +2 -2
  488. package/dist/src/hooks/ConfirmationQuery.js.map +1 -1
  489. package/dist/src/hooks/ElementSortHook.js +24 -1
  490. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  491. package/dist/src/hooks/EventHook.js +4 -1
  492. package/dist/src/hooks/EventHook.js.map +1 -1
  493. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +14 -8
  494. package/dist/src/hooks/KeyboardControlOnSelect.js +45 -37
  495. package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -1
  496. package/dist/src/hooks/Query.d.ts +1 -1
  497. package/dist/src/hooks/Query.js +29 -6
  498. package/dist/src/hooks/Query.js.map +1 -1
  499. package/dist/src/hooks/VGSHooks.js +6 -3
  500. package/dist/src/hooks/VGSHooks.js.map +1 -1
  501. package/dist/src/hooks/WindowSize.d.ts +9 -3
  502. package/dist/src/hooks/WindowSize.js +13 -2
  503. package/dist/src/hooks/WindowSize.js.map +1 -1
  504. package/dist/src/icons/Check.js +24 -1
  505. package/dist/src/icons/Check.js.map +1 -1
  506. package/dist/src/index.d.ts +1 -0
  507. package/dist/src/index.js +60 -44
  508. package/dist/src/index.js.map +1 -1
  509. package/dist/src/mockApi/AddonAPI.js +5 -2
  510. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  511. package/dist/src/mockApi/BookingAPI.js +9 -6
  512. package/dist/src/mockApi/BookingAPI.js.map +1 -1
  513. package/dist/src/mockApi/ExchangeRateAPI.js +4 -1
  514. package/dist/src/mockApi/ExchangeRateAPI.js.map +1 -1
  515. package/dist/src/mockApi/HotelAPI.js +4 -1
  516. package/dist/src/mockApi/HotelAPI.js.map +1 -1
  517. package/dist/src/mockApi/MemberAPI.js +24 -1
  518. package/dist/src/mockApi/MemberAPI.js.map +1 -1
  519. package/dist/src/mockApi/MockAPI.d.ts +1 -1
  520. package/dist/src/mockApi/MockAPI.js +6 -3
  521. package/dist/src/mockApi/MockAPI.js.map +1 -1
  522. package/dist/src/mockApi/ReservationAPI.js +24 -1
  523. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  524. package/dist/src/models/Addon/Addon.d.ts +1 -1
  525. package/dist/src/models/Addon/Addon.js +7 -4
  526. package/dist/src/models/Addon/Addon.js.map +1 -1
  527. package/dist/src/models/BasketRow.d.ts +1 -1
  528. package/dist/src/models/BasketRow.js.map +1 -1
  529. package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +6 -0
  530. package/dist/src/models/BookingWizard/BookingWizardProperty.js +3 -0
  531. package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -0
  532. package/dist/src/models/BookingWizard/BookingWizardTypes.d.ts +4 -0
  533. package/dist/src/models/BookingWizard/BookingWizardTypes.js +3 -0
  534. package/dist/src/models/BookingWizard/BookingWizardTypes.js.map +1 -0
  535. package/dist/src/models/Promotion/IPromotion.type.d.ts +1 -1
  536. package/dist/src/models/Promotion/IPromotion.type.js.map +1 -1
  537. package/dist/src/models/Reservation/Reservation.d.ts +1 -1
  538. package/dist/src/models/Reservation/Reservation.js.map +1 -1
  539. package/dist/src/models/Room/Filters/BudgetFilter.js +4 -1
  540. package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
  541. package/dist/src/models/Room/Filters/RateTypeFilter.js +4 -1
  542. package/dist/src/models/Room/Filters/RateTypeFilter.js.map +1 -1
  543. package/dist/src/models/Room/Filters/RoomTypeFilter.js +4 -1
  544. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  545. package/dist/src/models/Room/RoomRate.js +6 -3
  546. package/dist/src/models/Room/RoomRate.js.map +1 -1
  547. package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
  548. package/dist/src/models/Room/RoomRateNight.js +5 -2
  549. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  550. package/dist/src/models/RoomstaySession.d.ts +1 -1
  551. package/dist/src/models/RoomstaySession.js.map +1 -1
  552. package/dist/src/pages/account/AccountHome/AccountHomePage.js +34 -8
  553. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
  554. package/dist/src/pages/account/AccountOutlet.js +24 -1
  555. package/dist/src/pages/account/AccountOutlet.js.map +1 -1
  556. package/dist/src/pages/account/AccountRouter.js +24 -1
  557. package/dist/src/pages/account/AccountRouter.js.map +1 -1
  558. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +33 -7
  559. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
  560. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +32 -6
  561. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
  562. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +34 -8
  563. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
  564. package/dist/src/pages/account/Help/AccountHelpPage.js +36 -10
  565. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
  566. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +40 -14
  567. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +1 -1
  568. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +39 -13
  569. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +1 -1
  570. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +39 -13
  571. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  572. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +31 -5
  573. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
  574. package/dist/src/pages/findReservation/FindReservation.js +39 -13
  575. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  576. package/dist/src/pages/findReservation/FindReservationResults.js +40 -14
  577. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  578. package/dist/src/pages/findReservation/ReservationRow.js +40 -14
  579. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  580. package/dist/src/pages/findReservation/ReservationRowModal.js +39 -13
  581. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  582. package/dist/src/pages/hotel/HotelInfo.js +36 -10
  583. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  584. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +28 -2
  585. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  586. package/dist/src/pages/steps/StepAddon/StepAddon.js +6 -3
  587. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  588. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +35 -9
  589. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  590. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +29 -3
  591. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  592. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js +4 -1
  593. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js.map +1 -1
  594. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js +6 -3
  595. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  596. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +41 -15
  597. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  598. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +29 -3
  599. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  600. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js +4 -1
  601. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
  602. package/dist/src/pages/steps/StepDate/StepDate.js +6 -3
  603. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  604. package/dist/src/pages/steps/StepDate/StepDateComponent.js +39 -13
  605. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  606. package/dist/src/pages/steps/StepDate/StepDateValidator.js +4 -1
  607. package/dist/src/pages/steps/StepDate/StepDateValidator.js.map +1 -1
  608. package/dist/src/pages/steps/StepGuide.js +29 -3
  609. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  610. package/dist/src/pages/steps/StepHotel/StepHotel.js +6 -3
  611. package/dist/src/pages/steps/StepHotel/StepHotel.js.map +1 -1
  612. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +39 -13
  613. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  614. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +31 -5
  615. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  616. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js +4 -1
  617. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js.map +1 -1
  618. package/dist/src/pages/steps/StepRoom/StepRoom.js +6 -3
  619. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  620. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +42 -16
  621. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  622. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +29 -3
  623. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  624. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js +4 -1
  625. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
  626. package/dist/src/pages/steps/StepThanks/StepThanks.js +7 -4
  627. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  628. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +39 -13
  629. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  630. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js +4 -1
  631. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
  632. package/dist/src/providers/CurrencyProvider.js +4 -1
  633. package/dist/src/providers/CurrencyProvider.js.map +1 -1
  634. package/dist/src/providers/DIProvider.js +24 -1
  635. package/dist/src/providers/DIProvider.js.map +1 -1
  636. package/dist/src/providers/FeatureProvider.d.ts +2 -2
  637. package/dist/src/providers/FeatureProvider.js +12 -9
  638. package/dist/src/providers/FeatureProvider.js.map +1 -1
  639. package/dist/src/providers/FilterProvider.js +4 -1
  640. package/dist/src/providers/FilterProvider.js.map +1 -1
  641. package/dist/src/providers/LanguageProvider.js +6 -3
  642. package/dist/src/providers/LanguageProvider.js.map +1 -1
  643. package/dist/src/providers/PromotionProvider.js +7 -4
  644. package/dist/src/providers/PromotionProvider.js.map +1 -1
  645. package/dist/src/providers/RoomstayThemeEngine.js +35 -9
  646. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  647. package/dist/src/providers/SessionProvider.js +9 -6
  648. package/dist/src/providers/SessionProvider.js.map +1 -1
  649. package/dist/src/providers/feature/InlineAddonStepFeature.js +5 -2
  650. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  651. package/dist/src/providers/storage/LocalStorageProvider.js +24 -1
  652. package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
  653. package/dist/src/reducers/BasketReducer.js +7 -4
  654. package/dist/src/reducers/BasketReducer.js.map +1 -1
  655. package/dist/src/routes/NaturallyProgressedStepRoute.js +33 -7
  656. package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
  657. package/dist/src/stories/Alert.stories.d.ts +5 -0
  658. package/dist/src/stories/Alert.stories.js +42 -0
  659. package/dist/src/stories/Alert.stories.js.map +1 -0
  660. package/dist/src/stories/{Button.stories.d.ts → BEButton.stories.d.ts} +1 -1
  661. package/dist/src/stories/BEButton.stories.js +43 -0
  662. package/dist/src/stories/BEButton.stories.js.map +1 -0
  663. package/dist/src/stories/BackButton.stories.d.ts +5 -0
  664. package/dist/src/stories/BackButton.stories.js +40 -0
  665. package/dist/src/stories/BackButton.stories.js.map +1 -0
  666. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.d.ts +5 -0
  667. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js +37 -0
  668. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js.map +1 -0
  669. package/dist/src/stories/BookingWizard.stories.d.ts +9 -0
  670. package/dist/src/stories/BookingWizard.stories.js +58 -0
  671. package/dist/src/stories/BookingWizard.stories.js.map +1 -0
  672. package/dist/src/stories/Card.stories.d.ts +3 -3
  673. package/dist/src/stories/Card.stories.js +4 -1
  674. package/dist/src/stories/Card.stories.js.map +1 -1
  675. package/dist/src/stories/CardTypeSelect.stories.d.ts +5 -0
  676. package/dist/src/stories/CardTypeSelect.stories.js +37 -0
  677. package/dist/src/stories/CardTypeSelect.stories.js.map +1 -0
  678. package/dist/src/stories/Checkbox.stories.js +28 -2
  679. package/dist/src/stories/Checkbox.stories.js.map +1 -1
  680. package/dist/src/stories/ConfirmationModal.stories.d.ts +5 -0
  681. package/dist/src/stories/ConfirmationModal.stories.js +45 -0
  682. package/dist/src/stories/ConfirmationModal.stories.js.map +1 -0
  683. package/dist/src/stories/Countdown.stories.d.ts +5 -0
  684. package/dist/src/stories/Countdown.stories.js +43 -0
  685. package/dist/src/stories/Countdown.stories.js.map +1 -0
  686. package/dist/src/stories/Currency.stories.d.ts +5 -0
  687. package/dist/src/stories/Currency.stories.js +42 -0
  688. package/dist/src/stories/Currency.stories.js.map +1 -0
  689. package/dist/src/stories/DateRangePicker.stories.d.ts +8 -0
  690. package/dist/src/stories/DateRangePicker.stories.js +80 -0
  691. package/dist/src/stories/DateRangePicker.stories.js.map +1 -0
  692. package/dist/src/stories/Distance.stories.d.ts +5 -0
  693. package/dist/src/stories/Distance.stories.js +42 -0
  694. package/dist/src/stories/Distance.stories.js.map +1 -0
  695. package/dist/src/stories/EnhancedPhoneNumberField.stories.js +28 -2
  696. package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -1
  697. package/dist/src/stories/ErrorModal.stories.d.ts +5 -0
  698. package/dist/src/stories/ErrorModal.stories.js +46 -0
  699. package/dist/src/stories/ErrorModal.stories.js.map +1 -0
  700. package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +6 -0
  701. package/dist/src/stories/FloatingDateRangePicker.stories.js +75 -0
  702. package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -0
  703. package/dist/src/stories/ForwardedSelect.stories.d.ts +5 -0
  704. package/dist/src/stories/ForwardedSelect.stories.js +51 -0
  705. package/dist/src/stories/ForwardedSelect.stories.js.map +1 -0
  706. package/dist/src/stories/Headline.stories.d.ts +5 -0
  707. package/dist/src/stories/Headline.stories.js +42 -0
  708. package/dist/src/stories/Headline.stories.js.map +1 -0
  709. package/dist/src/stories/Icon.stories.js +25 -2
  710. package/dist/src/stories/Icon.stories.js.map +1 -1
  711. package/dist/src/stories/IconNavCard.stories.js +24 -1
  712. package/dist/src/stories/IconNavCard.stories.js.map +1 -1
  713. package/dist/src/stories/IconText.stories.js +28 -2
  714. package/dist/src/stories/IconText.stories.js.map +1 -1
  715. package/dist/src/stories/ImageLoader.stories.js +28 -2
  716. package/dist/src/stories/ImageLoader.stories.js.map +1 -1
  717. package/dist/src/stories/InputGroup.stories.js +28 -2
  718. package/dist/src/stories/InputGroup.stories.js.map +1 -1
  719. package/dist/src/stories/LargeLoader.stories.js +28 -2
  720. package/dist/src/stories/LargeLoader.stories.js.map +1 -1
  721. package/dist/src/stories/LineBreak.stories.d.ts +5 -0
  722. package/dist/src/stories/LineBreak.stories.js +40 -0
  723. package/dist/src/stories/LineBreak.stories.js.map +1 -0
  724. package/dist/src/stories/Notification.stories.d.ts +5 -0
  725. package/dist/src/stories/Notification.stories.js +46 -0
  726. package/dist/src/stories/Notification.stories.js.map +1 -0
  727. package/dist/src/stories/NumberIncrement.stories.d.ts +5 -0
  728. package/dist/src/stories/NumberIncrement.stories.js +46 -0
  729. package/dist/src/stories/NumberIncrement.stories.js.map +1 -0
  730. package/dist/src/stories/PasswordBox.stories.js +24 -1
  731. package/dist/src/stories/PasswordBox.stories.js.map +1 -1
  732. package/dist/src/stories/PaymentCard.stories.d.ts +4 -0
  733. package/dist/src/stories/PaymentCard.stories.js +47 -0
  734. package/dist/src/stories/PaymentCard.stories.js.map +1 -0
  735. package/dist/src/stories/PaymentCardInput.stories.d.ts +6 -0
  736. package/dist/src/stories/PaymentCardInput.stories.js +51 -0
  737. package/dist/src/stories/PaymentCardInput.stories.js.map +1 -0
  738. package/dist/src/stories/Pill.stories.d.ts +5 -0
  739. package/dist/src/stories/Pill.stories.js +42 -0
  740. package/dist/src/stories/Pill.stories.js.map +1 -0
  741. package/dist/src/stories/Placeholder.stories.d.ts +5 -0
  742. package/dist/src/stories/Placeholder.stories.js +45 -0
  743. package/dist/src/stories/Placeholder.stories.js.map +1 -0
  744. package/dist/src/stories/PlanpayButton.stories.d.ts +5 -0
  745. package/dist/src/stories/PlanpayButton.stories.js +39 -0
  746. package/dist/src/stories/PlanpayButton.stories.js.map +1 -0
  747. package/dist/src/stories/PromoCodeInput.stories.d.ts +5 -0
  748. package/dist/src/stories/PromoCodeInput.stories.js +40 -0
  749. package/dist/src/stories/PromoCodeInput.stories.js.map +1 -0
  750. package/dist/src/stories/RadioButton.stories.d.ts +6 -0
  751. package/dist/src/stories/RadioButton.stories.js +47 -0
  752. package/dist/src/stories/RadioButton.stories.js.map +1 -0
  753. package/dist/src/stories/RadioButtonGroup.stories.d.ts +5 -0
  754. package/dist/src/stories/RadioButtonGroup.stories.js +55 -0
  755. package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -0
  756. package/dist/src/stories/RadioFields.stories.d.ts +5 -0
  757. package/dist/src/stories/RadioFields.stories.js +54 -0
  758. package/dist/src/stories/RadioFields.stories.js.map +1 -0
  759. package/dist/src/stories/SSLSecureBadge.stories.js +5 -2
  760. package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -1
  761. package/dist/src/stories/Select.stories.d.ts +25 -0
  762. package/dist/src/stories/Select.stories.js +96 -0
  763. package/dist/src/stories/Select.stories.js.map +1 -0
  764. package/dist/src/stories/SimpleModal.stories.d.ts +5 -0
  765. package/dist/src/stories/SimpleModal.stories.js +52 -0
  766. package/dist/src/stories/SimpleModal.stories.js.map +1 -0
  767. package/dist/src/stories/Slider.stories.d.ts +10 -0
  768. package/dist/src/stories/Slider.stories.js +53 -0
  769. package/dist/src/stories/Slider.stories.js.map +1 -0
  770. package/dist/src/stories/SmallSpinner.stories.js +28 -2
  771. package/dist/src/stories/SmallSpinner.stories.js.map +1 -1
  772. package/dist/src/stories/TabbedModal.stories.d.ts +5 -0
  773. package/dist/src/stories/TabbedModal.stories.js +61 -0
  774. package/dist/src/stories/TabbedModal.stories.js.map +1 -0
  775. package/dist/src/stories/Tabs.stories.d.ts +5 -0
  776. package/dist/src/stories/Tabs.stories.js +52 -0
  777. package/dist/src/stories/Tabs.stories.js.map +1 -0
  778. package/dist/src/stories/Text.stories.d.ts +5 -0
  779. package/dist/src/stories/Text.stories.js +42 -0
  780. package/dist/src/stories/Text.stories.js.map +1 -0
  781. package/dist/src/stories/TextArea.stories.d.ts +5 -0
  782. package/dist/src/stories/TextArea.stories.js +40 -0
  783. package/dist/src/stories/TextArea.stories.js.map +1 -0
  784. package/dist/src/stories/TextBox.stories.d.ts +5 -0
  785. package/dist/src/stories/TextBox.stories.js +40 -0
  786. package/dist/src/stories/TextBox.stories.js.map +1 -0
  787. package/dist/src/stories/Tooltip.stories.d.ts +5 -0
  788. package/dist/src/stories/Tooltip.stories.js +43 -0
  789. package/dist/src/stories/Tooltip.stories.js.map +1 -0
  790. package/dist/src/util/CalendarHelper.d.ts +1 -1
  791. package/dist/src/util/CalendarHelper.js +5 -2
  792. package/dist/src/util/CalendarHelper.js.map +1 -1
  793. package/dist/src/util/DataLayer.js +30 -4
  794. package/dist/src/util/DataLayer.js.map +1 -1
  795. package/dist/src/util/ObjectHelper.js +1 -1
  796. package/dist/src/util/ObjectHelper.js.map +1 -1
  797. package/dist/src/util/PaymentCardHelper.js +4 -1
  798. package/dist/src/util/PaymentCardHelper.js.map +1 -1
  799. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js +4 -1
  800. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js.map +1 -1
  801. package/dist/tests/jest/events/EventManager.test.js +5 -2
  802. package/dist/tests/jest/events/EventManager.test.js.map +1 -1
  803. package/dist/tests/jest/models/RoomRate.test.js +5 -2
  804. package/dist/tests/jest/models/RoomRate.test.js.map +1 -1
  805. package/dist/tests/jest/providers/LanguageProvider.test.js +11 -0
  806. package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -1
  807. package/dist/tests/jest/providers/SessionProvider.test.js +26 -15
  808. package/dist/tests/jest/providers/SessionProvider.test.js.map +1 -1
  809. package/dist/tests/jest/reducers/BasketReducer.test.js +4 -1
  810. package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -1
  811. package/dist/tests/offline/RoomstayBestRateAlert.js +29 -3
  812. package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -1
  813. package/dist/tests/offline/entry/RSCompany.js +13 -1
  814. package/dist/tests/offline/entry/RSCompany.js.map +1 -1
  815. package/dist/tests/offline/entry/ReactWrapper.js +105 -9
  816. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -1
  817. package/dist/tests/offline/entry/allEngines.js +32 -6
  818. package/dist/tests/offline/entry/allEngines.js.map +1 -1
  819. package/dist/tests/offline/entry/components/TestPicker.js +79 -36
  820. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
  821. package/dist/tests/setupTests.js +2 -0
  822. package/dist/tests/setupTests.js.map +1 -1
  823. package/dist/vendors.bundle.js +1 -1
  824. package/dist/vendors.bundle.js.LICENSE.txt +5 -9
  825. package/package.json +10 -7
  826. package/dist/src/components/generic/BESelect.d.ts +0 -16
  827. package/dist/src/components/generic/BESelect.js +0 -12
  828. package/dist/src/components/generic/BESelect.js.map +0 -1
  829. package/dist/src/components/generic/Select.d.ts +0 -11
  830. package/dist/src/components/generic/Select.js +0 -18
  831. package/dist/src/components/generic/Select.js.map +0 -1
  832. package/dist/src/stories/Button.stories.js +0 -17
  833. package/dist/src/stories/Button.stories.js.map +0 -1
  834. package/dist/test.bundle.js +0 -1
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,17 +31,20 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
32
  });
10
33
  };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
11
37
  Object.defineProperty(exports, "__esModule", { value: true });
12
38
  exports.ConfirmationStepContextWrapper = void 0;
13
- const React = require("react");
39
+ const React = __importStar(require("react"));
14
40
  const react_1 = require("react");
15
- const BookingAPI_1 = require("../../api/BookingAPI");
41
+ const BookingAPI_1 = __importDefault(require("../../api/BookingAPI"));
16
42
  const contexts_1 = require("@frontend/contexts");
17
43
  const hooks_1 = require("@frontend/hooks");
18
- const Sentry = require("@sentry/browser");
44
+ const Sentry = __importStar(require("@sentry/browser"));
19
45
  const types_1 = require("@sentry/types");
20
46
  const react_hook_form_1 = require("react-hook-form");
21
- const DataLayer_1 = require("../../util/DataLayer");
47
+ const DataLayer_1 = __importStar(require("../../util/DataLayer"));
22
48
  const ConfirmationQuery_1 = require("hooks/ConfirmationQuery");
23
49
  const ConfirmationStepContext_1 = require("./ConfirmationStepContext");
24
50
  const ConfirmationStepContextProvider = ConfirmationStepContext_1.ConfirmationStepContext.Provider;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationStepContextWrapper.js","sourceRoot":"/","sources":["src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { FC, PropsWithChildren, useContext, useState } from 'react';\nimport ReservationsDTO from '../../models/Api/ReservationsDTO';\nimport reservationsDTO, { ReservationDTO } from '../../models/Api/ReservationsDTO';\nimport API from '../../api/BookingAPI';\nimport UserProfile from '../../models/UserProfile';\nimport { BasketContext, ErrorHandler } from '@frontend/contexts';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport BasketRowDifferences from '../../models/BasketRowDifferences';\nimport * as Sentry from '@sentry/browser';\nimport { Severity } from '@sentry/types';\nimport { ConfirmationFormValues, FBookGetPaymentDetails, FBookSuccessCallback, FBookValidateFunction, FBookValidationCallback, IBookValidationResult } from 'models/Confirmation';\nimport { FormProvider, useForm } from 'react-hook-form';\nimport DataLayer, { InteractionStep, InteractionType } from '../../util/DataLayer';\nimport { useConfirmationQuery } from 'hooks/ConfirmationQuery';\nimport { ConfirmationStepContext } from './ConfirmationStepContext';\n\nconst ConfirmationStepContextProvider = ConfirmationStepContext.Provider;\nexport const ConfirmationStepContextWrapper: FC<PropsWithChildren<any>> = ({ children }) => {\n const { queryPaymentMethod, queryRoomstayId: queryReservationId, queryPlanpayCheckoutId } = useConfirmationQuery();\n\n const [isLoading, setIsLoading] = useState<boolean>(false);\n const [apiErrors, setApiErrors] = useState<string>('');\n const methods = useForm<ConfirmationFormValues>({\n mode: 'onChange',\n });\n const basketContext = useContext(BasketContext);\n const basketRows = basketContext.getAllValidRows();\n const basketAddonRows = basketContext.basketAddonRows;\n const { hotel } = useCurrentHotel();\n\n const toUserProfiles = (formValues: ConfirmationFormValues): UserProfile[] => {\n return formValues.userProfiles.map((values) => ({\n FirstName: values.Forename,\n LastName: values.Surname,\n Phone: values.Phone.replace(' ', ''),\n Email: values.Email,\n Address: {\n Line1: values.Address,\n City: values.City,\n PostalCode: values.PostCode,\n Country: values.Country,\n },\n MarketingOptIn: false,\n }));\n };\n\n const validateReservation = async (data: reservationsDTO): Promise<IBookValidationResult | undefined> => {\n const apiDifferences: BasketRowDifferences[] = [];\n if (data.reservations) {\n data.reservations.forEach((reservation: ReservationDTO, index) => {\n const diff = basketContext.currentBasketRows[index].checkDiffFromReservation(reservation);\n\n if (diff) {\n apiDifferences.push(diff);\n }\n });\n } else {\n Sentry.addBreadcrumb({\n level: Severity.Error,\n message: 'No reservation data: ' + JSON.stringify(data),\n });\n throw new Error('The reservation could not be completed due to an unexpected issue, please try again');\n }\n\n // If there are differences, we want to display them to make sure the booking still needs to proceed\n if (apiDifferences.length || (data.warnings && data.warnings.length)) {\n return {\n differences: apiDifferences,\n warnings: data.warnings,\n };\n }\n };\n\n const onSubmit =\n (getPaymentDetails: FBookGetPaymentDetails, preValidate?: FBookValidateFunction, onPostValidationError?: FBookValidationCallback, onSuccess?: FBookSuccessCallback) =>\n async (formValues: ConfirmationFormValues): Promise<void> => {\n DataLayer.instance.sendInteraction('Complete Booking', InteractionType.BUTTON, InteractionStep.GUEST_DETAILS);\n setIsLoading(true);\n let data: ReservationsDTO | undefined;\n const validateResult = !preValidate || (await preValidate());\n if (!validateResult) {\n setIsLoading(false);\n return;\n }\n\n const payment = await getPaymentDetails();\n\n try {\n data = await API.Reservation.bookNow(basketRows, toUserProfiles(formValues), payment, basketAddonRows, formValues.comment, hotel.hotelID);\n basketContext.booked(data);\n const validationResult = await validateReservation(data);\n if (validationResult) {\n onPostValidationError?.(validationResult);\n } else onSuccess?.(data);\n } catch (error) {\n console.log(error);\n setApiErrors(error?.Message ?? 'Unexpected error returned from the booking database.');\n // We don't want to stop the isLoading on a succesful flow to avoid clicking checkout twice\n setIsLoading(false);\n }\n };\n\n const isBackFromPlanpay = !!queryPlanpayCheckoutId && !!queryReservationId && !!queryPaymentMethod;\n\n const parseReservationIdsFromData = (data: ReservationsDTO) => {\n return data?.reservations?.map((reservation) => reservation.reservationNumber);\n };\n\n const commitReservation = async (resData: ReservationsDTO) => {\n try {\n setIsLoading(true);\n if (resData) {\n const reservationIds = parseReservationIdsFromData(resData);\n if (reservationIds.length) {\n try {\n API.Reservation.commit(reservationIds, resData.itineraryNumber, hotel.hotelID, queryPlanpayCheckoutId)\n .then((response: ReservationsDTO) => {\n try {\n DataLayer.instance.sendReservationConfirmed(basketContext.getAllValidRows(), basketContext.basketAddonRows, response);\n } catch (ex) {\n Sentry.captureException('Failed to read reservations from GTM code: ' + JSON.stringify(ex));\n }\n basketContext.checkedOut(response);\n })\n .catch((ex: any) => {\n console.log(ex);\n setApiErrors('Unexpected error');\n })\n .finally(() => {\n setIsLoading(false);\n });\n } catch (error) {\n setApiErrors(error?.Message ?? 'Unexpected error returned from the booking database.');\n }\n } else {\n setApiErrors('Committing reservation failed due to an unexpected error');\n ErrorHandler.add({ message: 'Committing reservation failed due to an unexpected error' });\n Sentry.captureException('No reservation IDs found when attempting to commit: ' + JSON.stringify(resData));\n }\n }\n } catch (ex) {\n setApiErrors('Failed to commit reservation');\n console.log('Failed to commit reservation ');\n console.error(ex);\n Sentry.captureException(ex);\n }\n };\n\n const rollbackReservation = async () => {\n if (!basketContext.reservationData) return;\n try {\n const reservationIds = parseReservationIdsFromData(basketContext.reservationData);\n if (reservationIds.length) {\n setIsLoading(true);\n await API.Reservation.rollback(reservationIds, basketContext.reservationData.itineraryNumber, hotel.hotelID);\n } else {\n Sentry.captureException('No reservation IDs found when attempting to rollback: ' + JSON.stringify(basketContext.reservationData));\n }\n } catch (ex) {\n console.log('Failed to rollback reservations');\n Sentry.captureException(ex);\n } finally {\n basketContext.rollback();\n setIsLoading(false);\n }\n };\n\n const clearApiErrors = () => setApiErrors('');\n\n const book = async (\n getPaymentDetails: FBookGetPaymentDetails,\n preValidate?: FBookValidateFunction,\n onPostValidationError?: FBookValidationCallback,\n onSuccess?: FBookSuccessCallback\n ) => {\n await methods.handleSubmit(onSubmit(getPaymentDetails, preValidate, onPostValidationError, onSuccess))();\n };\n\n return (\n <FormProvider {...methods}>\n <ConfirmationStepContextProvider\n value={{\n book,\n commitReservation,\n rollbackReservation,\n\n isLoading,\n apiErrors,\n clearApiErrors,\n isBackFromPlanpay,\n }}\n >\n {children}\n </ConfirmationStepContextProvider>\n </FormProvider>\n );\n};\n"]}
1
+ {"version":3,"file":"ConfirmationStepContextWrapper.js","sourceRoot":"/","sources":["src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { FC, PropsWithChildren, useContext, useState } from 'react';\nimport ReservationsDTO from '../../models/Api/ReservationsDTO';\nimport reservationsDTO, { ReservationDTO } from '../../models/Api/ReservationsDTO';\nimport API from '../../api/BookingAPI';\nimport UserProfile from '../../models/UserProfile';\nimport { BasketContext, ErrorHandler } from '@frontend/contexts';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport BasketRowDifferences from '../../models/BasketRowDifferences';\nimport * as Sentry from '@sentry/browser';\nimport { Severity } from '@sentry/types';\nimport { ConfirmationFormValues, FBookGetPaymentDetails, FBookSuccessCallback, FBookValidateFunction, FBookValidationCallback, IBookValidationResult } from 'models/Confirmation';\nimport { FormProvider, useForm } from 'react-hook-form';\nimport DataLayer, { InteractionStep, InteractionType } from '../../util/DataLayer';\nimport { useConfirmationQuery } from 'hooks/ConfirmationQuery';\nimport { ConfirmationStepContext } from './ConfirmationStepContext';\n\nconst ConfirmationStepContextProvider = ConfirmationStepContext.Provider;\nexport const ConfirmationStepContextWrapper: FC<PropsWithChildren<any>> = ({ children }) => {\n const { queryPaymentMethod, queryRoomstayId: queryReservationId, queryPlanpayCheckoutId } = useConfirmationQuery();\n\n const [isLoading, setIsLoading] = useState<boolean>(false);\n const [apiErrors, setApiErrors] = useState<string>('');\n const methods = useForm<ConfirmationFormValues>({\n mode: 'onChange',\n });\n const basketContext = useContext(BasketContext);\n const basketRows = basketContext.getAllValidRows();\n const basketAddonRows = basketContext.basketAddonRows;\n const { hotel } = useCurrentHotel();\n\n const toUserProfiles = (formValues: ConfirmationFormValues): UserProfile[] => {\n return formValues.userProfiles.map((values) => ({\n FirstName: values.Forename,\n LastName: values.Surname,\n Phone: values.Phone.replace(' ', ''),\n Email: values.Email,\n Address: {\n Line1: values.Address,\n City: values.City,\n PostalCode: values.PostCode,\n Country: values.Country,\n },\n MarketingOptIn: false,\n }));\n };\n\n const validateReservation = async (data: reservationsDTO): Promise<IBookValidationResult | undefined> => {\n const apiDifferences: BasketRowDifferences[] = [];\n if (data.reservations) {\n data.reservations.forEach((reservation: ReservationDTO, index) => {\n const diff = basketContext.currentBasketRows[index].checkDiffFromReservation(reservation);\n\n if (diff) {\n apiDifferences.push(diff);\n }\n });\n } else {\n Sentry.addBreadcrumb({\n level: Severity.Error,\n message: 'No reservation data: ' + JSON.stringify(data),\n });\n throw new Error('The reservation could not be completed due to an unexpected issue, please try again');\n }\n\n // If there are differences, we want to display them to make sure the booking still needs to proceed\n if (apiDifferences.length || (data.warnings && data.warnings.length)) {\n return {\n differences: apiDifferences,\n warnings: data.warnings,\n };\n }\n };\n\n const onSubmit =\n (getPaymentDetails: FBookGetPaymentDetails, preValidate?: FBookValidateFunction, onPostValidationError?: FBookValidationCallback, onSuccess?: FBookSuccessCallback) =>\n async (formValues: ConfirmationFormValues): Promise<void> => {\n DataLayer.instance.sendInteraction('Complete Booking', InteractionType.BUTTON, InteractionStep.GUEST_DETAILS);\n setIsLoading(true);\n let data: ReservationsDTO | undefined;\n const validateResult = !preValidate || (await preValidate());\n if (!validateResult) {\n setIsLoading(false);\n return;\n }\n\n const payment = await getPaymentDetails();\n\n try {\n data = await API.Reservation.bookNow(basketRows, toUserProfiles(formValues), payment, basketAddonRows, formValues.comment, hotel.hotelID);\n basketContext.booked(data);\n const validationResult = await validateReservation(data);\n if (validationResult) {\n onPostValidationError?.(validationResult);\n } else onSuccess?.(data);\n } catch (error) {\n console.log(error);\n setApiErrors(error?.Message ?? 'Unexpected error returned from the booking database.');\n // We don't want to stop the isLoading on a succesful flow to avoid clicking checkout twice\n setIsLoading(false);\n }\n };\n\n const isBackFromPlanpay = !!queryPlanpayCheckoutId && !!queryReservationId && !!queryPaymentMethod;\n\n const parseReservationIdsFromData = (data: ReservationsDTO) => {\n return data?.reservations?.map((reservation) => reservation.reservationNumber);\n };\n\n const commitReservation = async (resData: ReservationsDTO) => {\n try {\n setIsLoading(true);\n if (resData) {\n const reservationIds = parseReservationIdsFromData(resData);\n if (reservationIds.length) {\n try {\n API.Reservation.commit(reservationIds, resData.itineraryNumber, hotel.hotelID, queryPlanpayCheckoutId)\n .then((response: ReservationsDTO) => {\n try {\n DataLayer.instance.sendReservationConfirmed(basketContext.getAllValidRows(), basketContext.basketAddonRows, response);\n } catch (ex) {\n Sentry.captureException('Failed to read reservations from GTM code: ' + JSON.stringify(ex));\n }\n basketContext.checkedOut(response);\n })\n .catch((ex: any) => {\n console.log(ex);\n setApiErrors('Unexpected error');\n })\n .finally(() => {\n setIsLoading(false);\n });\n } catch (error) {\n setApiErrors(error?.Message ?? 'Unexpected error returned from the booking database.');\n }\n } else {\n setApiErrors('Committing reservation failed due to an unexpected error');\n ErrorHandler.add({ message: 'Committing reservation failed due to an unexpected error' });\n Sentry.captureException('No reservation IDs found when attempting to commit: ' + JSON.stringify(resData));\n }\n }\n } catch (ex) {\n setApiErrors('Failed to commit reservation');\n console.log('Failed to commit reservation ');\n console.error(ex);\n Sentry.captureException(ex);\n }\n };\n\n const rollbackReservation = async () => {\n if (!basketContext.reservationData) return;\n try {\n const reservationIds = parseReservationIdsFromData(basketContext.reservationData);\n if (reservationIds.length) {\n setIsLoading(true);\n await API.Reservation.rollback(reservationIds, basketContext.reservationData.itineraryNumber, hotel.hotelID);\n } else {\n Sentry.captureException('No reservation IDs found when attempting to rollback: ' + JSON.stringify(basketContext.reservationData));\n }\n } catch (ex) {\n console.log('Failed to rollback reservations');\n Sentry.captureException(ex);\n } finally {\n basketContext.rollback();\n setIsLoading(false);\n }\n };\n\n const clearApiErrors = () => setApiErrors('');\n\n const book = async (\n getPaymentDetails: FBookGetPaymentDetails,\n preValidate?: FBookValidateFunction,\n onPostValidationError?: FBookValidationCallback,\n onSuccess?: FBookSuccessCallback\n ) => {\n await methods.handleSubmit(onSubmit(getPaymentDetails, preValidate, onPostValidationError, onSuccess))();\n };\n\n return (\n <FormProvider {...methods}>\n <ConfirmationStepContextProvider\n value={{\n book,\n commitReservation,\n rollbackReservation,\n\n isLoading,\n apiErrors,\n clearApiErrors,\n isBackFromPlanpay,\n }}\n >\n {children}\n </ConfirmationStepContextProvider>\n </FormProvider>\n );\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import * as dayjs from 'dayjs';
2
+ import dayjs from 'dayjs';
3
3
  export declare const DatePickerContext: React.Context<{
4
4
  todayInUnix: number;
5
5
  today: dayjs.Dayjs;
@@ -1,7 +1,30 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.DatePickerContext = void 0;
4
- const React = require("react");
27
+ const React = __importStar(require("react"));
5
28
  exports.DatePickerContext = React.createContext({
6
29
  todayInUnix: 0,
7
30
  today: null,
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerContext.js","sourceRoot":"/","sources":["src/contexts/DatePickerContext.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAGlB,QAAA,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC;IACjD,WAAW,EAAE,CAAC;IACd,KAAK,EAAE,IAAmB;IAC1B,SAAS,EAAE,IAAmB;IAC9B,OAAO,EAAE,IAAmB;IAE5B,YAAY,EAAE,IAAmB;IAEjC,YAAY,EAAE,IAAI;IAElB,QAAQ,EAAE,CAAC;IAEX,WAAW,EAAE,CAAC,IAAiB,EAAE,EAAE;QAC/B,KAAK;IACT,CAAC;IACD,YAAY,EAAE,CAAC,IAAiB,EAAE,EAAE;QAChC,KAAK;IACT,CAAC;IACD,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE;QAC3B,KAAK;IACT,CAAC;CACJ,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport * as dayjs from 'dayjs';\n\nexport const DatePickerContext = React.createContext({\n todayInUnix: 0,\n today: null as dayjs.Dayjs,\n startDate: null as dayjs.Dayjs,\n endDate: null as dayjs.Dayjs,\n\n hoveredMonth: null as dayjs.Dayjs,\n\n currentMonth: null,\n\n maxPrice: 0,\n\n onHoverOver: (date: dayjs.Dayjs) => {\n /* */\n },\n onDayClicked: (date: dayjs.Dayjs) => {\n /* */\n },\n setMaxPrice: (price: number) => {\n /* */\n },\n});\n"]}
1
+ {"version":3,"file":"DatePickerContext.js","sourceRoot":"/","sources":["src/contexts/DatePickerContext.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAGlB,QAAA,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAC;IACjD,WAAW,EAAE,CAAC;IACd,KAAK,EAAE,IAAmB;IAC1B,SAAS,EAAE,IAAmB;IAC9B,OAAO,EAAE,IAAmB;IAE5B,YAAY,EAAE,IAAmB;IAEjC,YAAY,EAAE,IAAI;IAElB,QAAQ,EAAE,CAAC;IAEX,WAAW,EAAE,CAAC,IAAiB,EAAE,EAAE;QAC/B,KAAK;IACT,CAAC;IACD,YAAY,EAAE,CAAC,IAAiB,EAAE,EAAE;QAChC,KAAK;IACT,CAAC;IACD,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE;QAC3B,KAAK;IACT,CAAC;CACJ,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport dayjs from 'dayjs';\n\nexport const DatePickerContext = React.createContext({\n todayInUnix: 0,\n today: null as dayjs.Dayjs,\n startDate: null as dayjs.Dayjs,\n endDate: null as dayjs.Dayjs,\n\n hoveredMonth: null as dayjs.Dayjs,\n\n currentMonth: null,\n\n maxPrice: 0,\n\n onHoverOver: (date: dayjs.Dayjs) => {\n /* */\n },\n onDayClicked: (date: dayjs.Dayjs) => {\n /* */\n },\n setMaxPrice: (price: number) => {\n /* */\n },\n});\n"]}
@@ -1,10 +1,36 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
2
28
  Object.defineProperty(exports, "__esModule", { value: true });
3
29
  exports.ErrorContextWrapper = exports.ErrorHandler = void 0;
4
- const React = require("react");
30
+ const React = __importStar(require("react"));
5
31
  const react_1 = require("react");
6
- const Text_1 = require("components/generic/Text");
7
- const ErrorModal = (0, react_1.lazy)(() => Promise.resolve().then(() => require('components/generic/modal/ErrorModal')));
32
+ const Text_1 = __importDefault(require("components/generic/Text"));
33
+ const ErrorModal = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('components/generic/modal/ErrorModal'))));
8
34
  const ErrorContext = React.createContext(null);
9
35
  exports.default = ErrorContext;
10
36
  exports.ErrorHandler = {};
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorContext.js","sourceRoot":"/","sources":["src/contexts/ErrorContext.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,iCAAiD;AACjD,kDAA2C;AAE3C,MAAM,UAAU,GAAG,IAAA,YAAI,EAAC,GAAG,EAAE,sCAAQ,qCAAqC,EAAC,CAAC,CAAC;AAa7E,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAmB,IAAI,CAAC,CAAC;AACjE,kBAAe,YAAY,CAAC;AAMf,QAAA,YAAY,GAA8C,EAAE,CAAC;AAE1E,SAAgB,mBAAmB,CAAC,KAA+B;IAC/D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAc,EAAE,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAqB;QAC9B,QAAQ,EAAE,CAAC,KAAgB,EAAE,EAAE;YAC3B,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACzB,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QACpD,CAAC;KACJ,CAAC;IAEF,oBAAY,CAAC,GAAG,GAAG,CAAC,KAAgB,EAAE,EAAE;QACpC,SAAS,CAAC,CAAC,aAAa,EAAE,EAAE;YACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE;gBACvF,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC;aACpC;YAED,OAAO,aAAa,CAAC;QACzB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IACF,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YACjB,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;SACrB;QACD,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,OAAO,CACH;QACI,oBAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO;YAChC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAChB,oBAAC,gBAAQ,IAAC,QAAQ,EAAE,EAAE;gBAClB,oBAAC,UAAU,IAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB;oBAC9H,oBAAC,cAAI,QAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAQ,CACvB,CACN,CACd;YACA,KAAK,CAAC,QAAQ,CACK,CACzB,CACN,CAAC;AACN,CAAC;AAzCD,kDAyCC","sourcesContent":["import * as React from 'react';\nimport { useState, lazy, Suspense } from 'react';\nimport Text from 'components/generic/Text';\n\nconst ErrorModal = lazy(() => import('components/generic/modal/ErrorModal'));\n\ninterface ErrorContextType {\n addError: (error: ErrorType) => void;\n}\n\ninterface ErrorType {\n id?: number;\n retry?: () => void;\n message: string;\n title?: string;\n}\n\nconst ErrorContext = React.createContext<ErrorContextType>(null);\nexport default ErrorContext;\n\ninterface ErrorContextWrapperProps {\n children: React.ReactNode;\n}\n\nexport const ErrorHandler: { add: (error: ErrorType) => void } | any = {};\n\nexport function ErrorContextWrapper(props: ErrorContextWrapperProps) {\n const [errors, setErrors] = useState<ErrorType[]>([]);\n\n const context: ErrorContextType = {\n addError: (error: ErrorType) => {\n error.id = Math.random();\n setErrors((oldErrors) => [...oldErrors, error]);\n },\n };\n\n ErrorHandler.add = (error: ErrorType) => {\n setErrors((currentErrors) => {\n if (!currentErrors.some((it) => it.title === error.title && it.message === error.message)) {\n error.id = Math.random();\n return [...currentErrors, error];\n }\n\n return currentErrors;\n });\n };\n const onCloseModalHandler = () => {\n if (errors[0].retry) {\n errors[0].retry();\n }\n errors.shift();\n setErrors(() => [...errors]);\n };\n return (\n <>\n <ErrorContext.Provider value={context}>\n {!!errors.length && (\n <Suspense fallback={''}>\n <ErrorModal title={errors[0].title} closeButtonText={errors[0].retry ? 'Retry' : 'Close'} open={true} onClose={onCloseModalHandler}>\n <Text>{errors[0].message}</Text>\n </ErrorModal>\n </Suspense>\n )}\n {props.children}\n </ErrorContext.Provider>\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"ErrorContext.js","sourceRoot":"/","sources":["src/contexts/ErrorContext.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,iCAAiD;AACjD,mEAA2C;AAE3C,MAAM,UAAU,GAAG,IAAA,YAAI,EAAC,GAAG,EAAE,mDAAQ,qCAAqC,GAAC,CAAC,CAAC;AAa7E,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAmB,IAAI,CAAC,CAAC;AACjE,kBAAe,YAAY,CAAC;AAMf,QAAA,YAAY,GAA8C,EAAE,CAAC;AAE1E,SAAgB,mBAAmB,CAAC,KAA+B;IAC/D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAc,EAAE,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAqB;QAC9B,QAAQ,EAAE,CAAC,KAAgB,EAAE,EAAE;YAC3B,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACzB,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QACpD,CAAC;KACJ,CAAC;IAEF,oBAAY,CAAC,GAAG,GAAG,CAAC,KAAgB,EAAE,EAAE;QACpC,SAAS,CAAC,CAAC,aAAa,EAAE,EAAE;YACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE;gBACvF,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC;aACpC;YAED,OAAO,aAAa,CAAC;QACzB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IACF,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YACjB,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;SACrB;QACD,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,OAAO,CACH;QACI,oBAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO;YAChC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAChB,oBAAC,gBAAQ,IAAC,QAAQ,EAAE,EAAE;gBAClB,oBAAC,UAAU,IAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB;oBAC9H,oBAAC,cAAI,QAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAQ,CACvB,CACN,CACd;YACA,KAAK,CAAC,QAAQ,CACK,CACzB,CACN,CAAC;AACN,CAAC;AAzCD,kDAyCC","sourcesContent":["import * as React from 'react';\nimport { useState, lazy, Suspense } from 'react';\nimport Text from 'components/generic/Text';\n\nconst ErrorModal = lazy(() => import('components/generic/modal/ErrorModal'));\n\ninterface ErrorContextType {\n addError: (error: ErrorType) => void;\n}\n\ninterface ErrorType {\n id?: number;\n retry?: () => void;\n message: string;\n title?: string;\n}\n\nconst ErrorContext = React.createContext<ErrorContextType>(null);\nexport default ErrorContext;\n\ninterface ErrorContextWrapperProps {\n children: React.ReactNode;\n}\n\nexport const ErrorHandler: { add: (error: ErrorType) => void } | any = {};\n\nexport function ErrorContextWrapper(props: ErrorContextWrapperProps) {\n const [errors, setErrors] = useState<ErrorType[]>([]);\n\n const context: ErrorContextType = {\n addError: (error: ErrorType) => {\n error.id = Math.random();\n setErrors((oldErrors) => [...oldErrors, error]);\n },\n };\n\n ErrorHandler.add = (error: ErrorType) => {\n setErrors((currentErrors) => {\n if (!currentErrors.some((it) => it.title === error.title && it.message === error.message)) {\n error.id = Math.random();\n return [...currentErrors, error];\n }\n\n return currentErrors;\n });\n };\n const onCloseModalHandler = () => {\n if (errors[0].retry) {\n errors[0].retry();\n }\n errors.shift();\n setErrors(() => [...errors]);\n };\n return (\n <>\n <ErrorContext.Provider value={context}>\n {!!errors.length && (\n <Suspense fallback={''}>\n <ErrorModal title={errors[0].title} closeButtonText={errors[0].retry ? 'Retry' : 'Close'} open={true} onClose={onCloseModalHandler}>\n <Text>{errors[0].message}</Text>\n </ErrorModal>\n </Suspense>\n )}\n {props.children}\n </ErrorContext.Provider>\n </>\n );\n}\n"]}
@@ -1,4 +1,4 @@
1
- import * as dayjs from 'dayjs';
1
+ import dayjs from 'dayjs';
2
2
  import type Step from 'pages/steps/Step';
3
3
  export interface FullPageBookingEngineUrlParameters {
4
4
  startDate?: dayjs.Dayjs;
@@ -1 +1 @@
1
- {"version":3,"file":"FullPageEngineContextTypes.js","sourceRoot":"/","sources":["src/contexts/FullPageEngineContext/FullPageEngineContextTypes.ts"],"names":[],"mappings":"","sourcesContent":["import * as dayjs from 'dayjs';\nimport type Step from 'pages/steps/Step';\n\nexport interface FullPageBookingEngineUrlParameters {\n startDate?: dayjs.Dayjs;\n endDate?: dayjs.Dayjs;\n\n hotelId?: string;\n\n defaultCity?: string;\n\n promoCode?: string;\n promoOnly?: boolean;\n\n promoFeatured?: boolean;\n\n adults?: number;\n children?: number;\n\n rooms?: number;\n}\n\nexport interface FullPageEngineContextType {\n urlParameters: FullPageBookingEngineUrlParameters;\n\n currentStep: Step;\n setCurrentStep: (step: Step) => void;\n}\n"]}
1
+ {"version":3,"file":"FullPageEngineContextTypes.js","sourceRoot":"/","sources":["src/contexts/FullPageEngineContext/FullPageEngineContextTypes.ts"],"names":[],"mappings":"","sourcesContent":["import dayjs from 'dayjs';\nimport type Step from 'pages/steps/Step';\n\nexport interface FullPageBookingEngineUrlParameters {\n startDate?: dayjs.Dayjs;\n endDate?: dayjs.Dayjs;\n\n hotelId?: string;\n\n defaultCity?: string;\n\n promoCode?: string;\n promoOnly?: boolean;\n\n promoFeatured?: boolean;\n\n adults?: number;\n children?: number;\n\n rooms?: number;\n}\n\nexport interface FullPageEngineContextType {\n urlParameters: FullPageBookingEngineUrlParameters;\n\n currentStep: Step;\n setCurrentStep: (step: Step) => void;\n}\n"]}
@@ -1,31 +1,57 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
2
28
  Object.defineProperty(exports, "__esModule", { value: true });
3
29
  exports.FullPageEngineContextWrapper = void 0;
4
- const React = require("react");
30
+ const React = __importStar(require("react"));
5
31
  const react_1 = require("react");
6
32
  const contexts_1 = require("@frontend/contexts");
7
- const dayjs = require("dayjs");
8
- const StepManager_1 = require("util/StepManager");
33
+ const dayjs_1 = __importDefault(require("dayjs"));
34
+ const StepManager_1 = __importDefault(require("util/StepManager"));
9
35
  const hooks_1 = require("@frontend/hooks");
10
36
  const react_router_dom_1 = require("react-router-dom");
11
- const FeatureProvider_1 = require("providers/FeatureProvider");
12
- const FeaturedPromoFeature_1 = require("providers/feature/FeaturedPromoFeature");
13
- const RoomTypeFilter_1 = require("models/Room/Filters/RoomTypeFilter");
14
- const RateTypeFilter_1 = require("models/Room/Filters/RateTypeFilter");
15
- const BasketRow_1 = require("models/BasketRow");
16
- const StepRoom_1 = require("pages/steps/StepRoom/StepRoom");
17
- const ScrollToTop_1 = require("components/generic/ScrollToTop");
18
- const Header_1 = require("components/navigation/Header");
19
- const AvailableUpgradesModal_1 = require("components/steps/room/AvailableUpgradesModal");
20
- const FindReservation_1 = require("pages/findReservation/FindReservation");
21
- const FindReservationResults_1 = require("pages/findReservation/FindReservationResults");
22
- const HotelInfo_1 = require("pages/hotel/HotelInfo");
23
- const HotelInfoPlaceholder_1 = require("pages/hotel/HotelInfoPlaceholder");
24
- const NaturallyProgressedStepRoute_1 = require("routes/NaturallyProgressedStepRoute");
37
+ const FeatureProvider_1 = __importDefault(require("providers/FeatureProvider"));
38
+ const FeaturedPromoFeature_1 = __importDefault(require("providers/feature/FeaturedPromoFeature"));
39
+ const RoomTypeFilter_1 = __importDefault(require("models/Room/Filters/RoomTypeFilter"));
40
+ const RateTypeFilter_1 = __importDefault(require("models/Room/Filters/RateTypeFilter"));
41
+ const BasketRow_1 = __importDefault(require("models/BasketRow"));
42
+ const StepRoom_1 = __importDefault(require("pages/steps/StepRoom/StepRoom"));
43
+ const ScrollToTop_1 = __importDefault(require("components/generic/ScrollToTop"));
44
+ const Header_1 = __importDefault(require("components/navigation/Header"));
45
+ const AvailableUpgradesModal_1 = __importDefault(require("components/steps/room/AvailableUpgradesModal"));
46
+ const FindReservation_1 = __importStar(require("pages/findReservation/FindReservation"));
47
+ const FindReservationResults_1 = __importDefault(require("pages/findReservation/FindReservationResults"));
48
+ const HotelInfo_1 = __importDefault(require("pages/hotel/HotelInfo"));
49
+ const HotelInfoPlaceholder_1 = __importDefault(require("pages/hotel/HotelInfoPlaceholder"));
50
+ const NaturallyProgressedStepRoute_1 = __importDefault(require("routes/NaturallyProgressedStepRoute"));
25
51
  const AccountRouter_1 = require("pages/account/AccountRouter");
26
52
  const PageColorComponent_1 = require("components/pages/PageColorComponent");
27
- const MemberPortalFeature_1 = require("providers/feature/MemberPortalFeature");
28
- const Text_1 = require("components/generic/Text");
53
+ const MemberPortalFeature_1 = __importDefault(require("providers/feature/MemberPortalFeature"));
54
+ const Text_1 = __importStar(require("components/generic/Text"));
29
55
  const TextAlignment_1 = require("util/TextAlignment");
30
56
  const Color_1 = require("util/Color");
31
57
  function FullPageEngineContextWrapper(props) {
@@ -57,8 +83,8 @@ function FullPageEngineContextWrapper(props) {
57
83
  if (location.search) {
58
84
  const query = new URLSearchParams(location.search);
59
85
  const format = 'YYYY-MM-DD';
60
- let start = dayjs(query.get('arrive'), format);
61
- let end = dayjs(query.get('depart'), format);
86
+ let start = (0, dayjs_1.default)(query.get('arrive'), format);
87
+ let end = (0, dayjs_1.default)(query.get('depart'), format);
62
88
  const promoCode = query.get('promocode');
63
89
  const promoOnly = query.get('promoonly');
64
90
  const promoFeatured = query.get('promofeatured');
@@ -86,7 +112,7 @@ function FullPageEngineContextWrapper(props) {
86
112
  if (hotelId) {
87
113
  if (ccx.changeHotel(hotelId)) {
88
114
  if (!start.isValid()) {
89
- start = dayjs().add(1, 'day');
115
+ start = (0, dayjs_1.default)().add(1, 'day');
90
116
  }
91
117
  if (!end.isValid()) {
92
118
  end = start.add(1, 'day');
@@ -101,14 +127,14 @@ function FullPageEngineContextWrapper(props) {
101
127
  }
102
128
  // We're doing dates last, as other properties, like hotelID might change them if they're not already set
103
129
  if (start.isValid() && end.isValid()) {
104
- if (start.isBefore(dayjs())) {
105
- start = dayjs();
130
+ if (start.isBefore((0, dayjs_1.default)())) {
131
+ start = (0, dayjs_1.default)();
106
132
  }
107
133
  if (end.isBefore(start)) {
108
134
  end = start.add(1, 'day');
109
135
  }
110
- else if (end.isBefore(dayjs().add(1, 'day'))) {
111
- end = dayjs().add(1, 'day');
136
+ else if (end.isBefore((0, dayjs_1.default)().add(1, 'day'))) {
137
+ end = (0, dayjs_1.default)().add(1, 'day');
112
138
  }
113
139
  urlParameterBuilder.startDate = start;
114
140
  urlParameterBuilder.endDate = end;
@@ -1 +1 @@
1
- {"version":3,"file":"FullPageEngineContextWrapper.js","sourceRoot":"/","sources":["src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useContext, useEffect, useState } from 'react';\n\nimport {\n AuthenticationContextProvider,\n BasketContext,\n BookingEngineContext,\n CompanyContext,\n FullPageBookingEngineUrlParameters,\n FullPageEngineContext,\n FullPageEngineContextType,\n ModalContextWrapper,\n} from '@frontend/contexts';\nimport * as dayjs from 'dayjs';\nimport Step from 'pages/steps/Step';\nimport StepManager from 'util/StepManager';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { Redirect, Route, useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport FeatureProvider from 'providers/FeatureProvider';\nimport FeaturedPromoFeature from 'providers/feature/FeaturedPromoFeature';\nimport RoomTypeFilter from 'models/Room/Filters/RoomTypeFilter';\nimport RateTypeFilter from 'models/Room/Filters/RateTypeFilter';\nimport BasketRow from 'models/BasketRow';\nimport StepRoom from 'pages/steps/StepRoom/StepRoom';\nimport ScrollToTop from 'components/generic/ScrollToTop';\nimport Header from 'components/navigation/Header';\nimport AvailableUpgradesModal from 'components/steps/room/AvailableUpgradesModal';\n\nimport FindReservation, { EFindReservationPath, QUERY_PARAM_NAME } from 'pages/findReservation/FindReservation';\nimport FindReservationResults from 'pages/findReservation/FindReservationResults';\nimport HotelInfo from 'pages/hotel/HotelInfo';\nimport HotelInfoPlaceholder from 'pages/hotel/HotelInfoPlaceholder';\nimport StepRoute from 'routes/NaturallyProgressedStepRoute';\nimport { AccountRouter } from 'pages/account/AccountRouter';\nimport { PageColorComponent } from 'components/pages/PageColorComponent';\nimport MemberPortalFeature from 'providers/feature/MemberPortalFeature';\nimport Text, { TextType } from 'components/generic/Text';\nimport { TextAlign } from 'util/TextAlignment';\nimport { Color } from 'util/Color';\n\ninterface FullPageEngineContextWrapperProps {\n children?: React.ReactNode;\n}\n\nexport function FullPageEngineContextWrapper(props: FullPageEngineContextWrapperProps) {\n const basketContext = useContext(BasketContext);\n const ccx = useContext(CompanyContext);\n const beContext = useContext(BookingEngineContext);\n\n const [engineReady, setEngineReady] = useState(false);\n const [urlFlagsParsed, setUrlFlagsParsed] = useState(false);\n const [urlParameters, setUrlParameters] = useState<FullPageBookingEngineUrlParameters>({});\n\n const [currentStep, setCurrentStep] = useState<Step>(StepManager.getStepFromName(beContext.engine.getInitialSession()?.step) ?? StepManager.getFirstStep());\n const [initialStep, setInitialStep] = useState<Step>(StepManager.getFirstStep());\n\n const { hotel } = useCurrentHotel();\n\n const location = useLocation();\n const history = useHistory();\n\n const isInStepRoot = useRouteMatch({\n path: StepManager.STEP_BASE,\n });\n\n useEffect(() => {\n beContext.sessionProvider?.updateSession({ step: currentStep.getName() });\n }, [currentStep]);\n\n useEffect(() => {\n const currentBasketRows = basketContext.currentBasketRows;\n\n let addXRooms = 1;\n\n // TODO: this probably needs to be the only place this is set, and listen for URL changes\n if (currentBasketRows.length === 0) {\n const urlParameterBuilder: FullPageBookingEngineUrlParameters = {};\n\n if (location.search) {\n const query = new URLSearchParams(location.search);\n\n const format = 'YYYY-MM-DD';\n\n let start = dayjs(query.get('arrive'), format);\n let end = dayjs(query.get('depart'), format);\n\n const promoCode = query.get('promocode');\n const promoOnly = query.get('promoonly');\n\n const promoFeatured = query.get('promofeatured');\n\n if (promoCode) {\n urlParameterBuilder.promoCode = promoCode;\n }\n\n if (promoOnly && promoOnly.toLowerCase() !== 'false') {\n urlParameterBuilder.promoOnly = Boolean(promoOnly);\n }\n\n if (promoFeatured && promoFeatured.toLowerCase() !== 'false') {\n FeatureProvider.load(FeaturedPromoFeature);\n urlParameterBuilder.promoFeatured = true;\n }\n\n const roomCode = query.get('room');\n if (roomCode) {\n // TODO: Refactor this to come from this context instead.\n beContext.setCurrentFilters({\n ...beContext.currentFilters,\n ['RoomType']: new RoomTypeFilter([roomCode]),\n });\n }\n\n const rateCode = query.get('rate');\n if (rateCode) {\n // TODO: Refactor this to come from this context instead.\n beContext.setCurrentFilters({\n ...beContext.currentFilters,\n ['RateType']: new RateTypeFilter([rateCode]),\n });\n }\n\n const hotelId = query.get('hotel');\n\n if (hotelId) {\n if (ccx.changeHotel(hotelId)) {\n if (!start.isValid()) {\n start = dayjs().add(1, 'day');\n }\n\n if (!end.isValid()) {\n end = start.add(1, 'day');\n }\n\n setInitialStep(StepRoom);\n }\n\n urlParameterBuilder.hotelId = hotelId;\n }\n\n const defaultCity = query.get('defaultCity');\n if (defaultCity) {\n urlParameterBuilder.defaultCity = defaultCity;\n }\n\n // We're doing dates last, as other properties, like hotelID might change them if they're not already set\n if (start.isValid() && end.isValid()) {\n if (start.isBefore(dayjs())) {\n start = dayjs();\n }\n\n if (end.isBefore(start)) {\n end = start.add(1, 'day');\n } else if (end.isBefore(dayjs().add(1, 'day'))) {\n end = dayjs().add(1, 'day');\n }\n\n urlParameterBuilder.startDate = start;\n urlParameterBuilder.endDate = end;\n }\n\n const adults = Number.parseInt(query.get('adults'), 10);\n if (!isNaN(adults) && adults > 1) {\n if (!hotel || hotel.maxOccupancy >= adults) {\n urlParameterBuilder.adults = adults;\n }\n }\n\n const children = Number.parseInt(query.get('children'), 10);\n if (!isNaN(children) && children > 0) {\n if (!hotel || hotel.maxOccupancy + (isNaN(adults) ? 0 : adults) >= children) {\n urlParameterBuilder.children = children;\n }\n }\n\n const roomCount = Number.parseInt(query.get('rooms'), 10);\n if (!isNaN(roomCount) && roomCount > 1) {\n urlParameterBuilder.rooms = addXRooms = roomCount;\n }\n\n setUrlParameters(urlParameterBuilder);\n }\n\n let firstBasketRow: BasketRow;\n const { startDate, endDate, promoCode, promoOnly, adults, children } = urlParameterBuilder;\n for (let i = 0; i < addXRooms; i++) {\n const basketRow = new BasketRow();\n\n if (startDate) {\n basketRow.setStartDate(startDate);\n }\n\n if (endDate) {\n basketRow.setEndDate(endDate);\n }\n\n if (promoCode) {\n basketRow.setPromoCode(promoCode);\n }\n\n if (promoOnly) {\n basketRow.setPromoOnly(promoOnly);\n }\n\n if (adults) {\n basketRow.setAdults(adults);\n }\n\n if (children) {\n basketRow.setChildren(children);\n }\n\n basketContext.addBasketRow(basketRow, false, i !== 0);\n\n if (i === 0) {\n firstBasketRow = basketRow;\n }\n }\n\n if (firstBasketRow.getStartDate() && firstBasketRow.getEndDate()) {\n setInitialStep(StepRoom);\n }\n } else {\n const initialSession = beContext.engine.getInitialSession();\n if (initialSession) {\n setInitialStep(StepManager.getStepFromName(initialSession.step));\n }\n }\n\n setUrlFlagsParsed(true);\n }, []);\n\n /**\n * Engine Ready useEffect, used to deffer loading the UI until everything engine wise is set up properly\n */\n useEffect(() => {\n if (!engineReady) {\n if (ccx.hotels.length > 0 && urlFlagsParsed) {\n setEngineReady(true);\n }\n }\n }, [ccx.hotels, urlFlagsParsed]);\n\n useEffect(() => {\n if (engineReady) {\n if (isInStepRoot && initialStep) {\n // We want to respect the browsers pathname, and only redirect to a defined step if\n // the pathname isn't set, or matches an unknown page.\n\n // Is the current location in the path? i.e does the user want to be somewhere specific\n let pathInLoadedSteps = false;\n for (const step of StepManager.getSteps()) {\n // Using match instead of equals as some clients have skipped the trailing slash\n if (step.getStepUrl().match(new RegExp(`${location.pathname}(\\/|)`, 'ig'))) {\n pathInLoadedSteps = true;\n break;\n }\n }\n\n // We're in /step/ but on a not recognized one.\n if (!pathInLoadedSteps) {\n history.push({\n ...location,\n pathname: initialStep.getStepUrl(),\n });\n }\n }\n }\n }, [engineReady]);\n\n const workingContext: FullPageEngineContextType = { urlParameters, currentStep, setCurrentStep };\n\n const renderRouteHandler = () => {\n return <Redirect to={StepManager.getFirstStep().getStepUrl()} />;\n };\n\n return (\n <FullPageEngineContext.Provider value={workingContext}>\n <AuthenticationContextProvider>\n <ModalContextWrapper>\n <ScrollToTop />\n <Route exact={true} path=\"/\" render={renderRouteHandler} />\n <header className=\"engine-header\">\n <Header />\n </header>\n {engineReady && (\n <>\n <div className=\"engine-page\">\n <React.Suspense fallback={<HotelInfoPlaceholder />}>\n <Route exact={true} path={'/hotel-info/'} component={HotelInfo} />\n </React.Suspense>\n <React.Suspense fallback={<div>Loading...</div>}>\n <Route\n exact={true}\n path={`/:${QUERY_PARAM_NAME}(${Object.values(EFindReservationPath)\n .filter((path) => MemberPortalFeature.isActive() || path === EFindReservationPath.FindReservation)\n .join('|')})`}\n component={FindReservation}\n />\n <Route path={'/find-reservation/:ref/:email'} component={FindReservationResults} />\n </React.Suspense>\n\n {MemberPortalFeature.isActive() && (\n <React.Suspense fallback={<div>TODO:</div>}>\n <AccountRouter />\n </React.Suspense>\n )}\n </div>\n <div className=\"engine-body\">\n <AvailableUpgradesModal />\n {StepManager.getSteps().map((step: Step) => (\n <StepRoute key={step.getName()} step={step} />\n ))}\n <Route path=\"*\" component={PageColorComponent} />\n </div>\n </>\n )}\n <div className=\"container u-pad-bottom\">\n <Text type={TextType.Caption} color={Color.Grey} align={TextAlign.Right}>\n Powered by{' '}\n <a rel=\"noreferrer\" target=\"_blank\" href=\"https://www.roomstay.io/\">\n <u>\n <i>Roomstay.io</i>\n </u>\n </a>\n </Text>\n </div>\n </ModalContextWrapper>\n </AuthenticationContextProvider>\n </FullPageEngineContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"FullPageEngineContextWrapper.js","sourceRoot":"/","sources":["src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useContext, useEffect, useState } from 'react';\n\nimport {\n AuthenticationContextProvider,\n BasketContext,\n BookingEngineContext,\n CompanyContext,\n FullPageBookingEngineUrlParameters,\n FullPageEngineContext,\n FullPageEngineContextType,\n ModalContextWrapper,\n} from '@frontend/contexts';\nimport dayjs from 'dayjs';\nimport Step from 'pages/steps/Step';\nimport StepManager from 'util/StepManager';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { Redirect, Route, useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport FeatureProvider from 'providers/FeatureProvider';\nimport FeaturedPromoFeature from 'providers/feature/FeaturedPromoFeature';\nimport RoomTypeFilter from 'models/Room/Filters/RoomTypeFilter';\nimport RateTypeFilter from 'models/Room/Filters/RateTypeFilter';\nimport BasketRow from 'models/BasketRow';\nimport StepRoom from 'pages/steps/StepRoom/StepRoom';\nimport ScrollToTop from 'components/generic/ScrollToTop';\nimport Header from 'components/navigation/Header';\nimport AvailableUpgradesModal from 'components/steps/room/AvailableUpgradesModal';\n\nimport FindReservation, { EFindReservationPath, QUERY_PARAM_NAME } from 'pages/findReservation/FindReservation';\nimport FindReservationResults from 'pages/findReservation/FindReservationResults';\nimport HotelInfo from 'pages/hotel/HotelInfo';\nimport HotelInfoPlaceholder from 'pages/hotel/HotelInfoPlaceholder';\nimport StepRoute from 'routes/NaturallyProgressedStepRoute';\nimport { AccountRouter } from 'pages/account/AccountRouter';\nimport { PageColorComponent } from 'components/pages/PageColorComponent';\nimport MemberPortalFeature from 'providers/feature/MemberPortalFeature';\nimport Text, { TextType } from 'components/generic/Text';\nimport { TextAlign } from 'util/TextAlignment';\nimport { Color } from 'util/Color';\n\ninterface FullPageEngineContextWrapperProps {\n children?: React.ReactNode;\n}\n\nexport function FullPageEngineContextWrapper(props: FullPageEngineContextWrapperProps) {\n const basketContext = useContext(BasketContext);\n const ccx = useContext(CompanyContext);\n const beContext = useContext(BookingEngineContext);\n\n const [engineReady, setEngineReady] = useState(false);\n const [urlFlagsParsed, setUrlFlagsParsed] = useState(false);\n const [urlParameters, setUrlParameters] = useState<FullPageBookingEngineUrlParameters>({});\n\n const [currentStep, setCurrentStep] = useState<Step>(StepManager.getStepFromName(beContext.engine.getInitialSession()?.step) ?? StepManager.getFirstStep());\n const [initialStep, setInitialStep] = useState<Step>(StepManager.getFirstStep());\n\n const { hotel } = useCurrentHotel();\n\n const location = useLocation();\n const history = useHistory();\n\n const isInStepRoot = useRouteMatch({\n path: StepManager.STEP_BASE,\n });\n\n useEffect(() => {\n beContext.sessionProvider?.updateSession({ step: currentStep.getName() });\n }, [currentStep]);\n\n useEffect(() => {\n const currentBasketRows = basketContext.currentBasketRows;\n\n let addXRooms = 1;\n\n // TODO: this probably needs to be the only place this is set, and listen for URL changes\n if (currentBasketRows.length === 0) {\n const urlParameterBuilder: FullPageBookingEngineUrlParameters = {};\n\n if (location.search) {\n const query = new URLSearchParams(location.search);\n\n const format = 'YYYY-MM-DD';\n\n let start = dayjs(query.get('arrive'), format);\n let end = dayjs(query.get('depart'), format);\n\n const promoCode = query.get('promocode');\n const promoOnly = query.get('promoonly');\n\n const promoFeatured = query.get('promofeatured');\n\n if (promoCode) {\n urlParameterBuilder.promoCode = promoCode;\n }\n\n if (promoOnly && promoOnly.toLowerCase() !== 'false') {\n urlParameterBuilder.promoOnly = Boolean(promoOnly);\n }\n\n if (promoFeatured && promoFeatured.toLowerCase() !== 'false') {\n FeatureProvider.load(FeaturedPromoFeature);\n urlParameterBuilder.promoFeatured = true;\n }\n\n const roomCode = query.get('room');\n if (roomCode) {\n // TODO: Refactor this to come from this context instead.\n beContext.setCurrentFilters({\n ...beContext.currentFilters,\n ['RoomType']: new RoomTypeFilter([roomCode]),\n });\n }\n\n const rateCode = query.get('rate');\n if (rateCode) {\n // TODO: Refactor this to come from this context instead.\n beContext.setCurrentFilters({\n ...beContext.currentFilters,\n ['RateType']: new RateTypeFilter([rateCode]),\n });\n }\n\n const hotelId = query.get('hotel');\n\n if (hotelId) {\n if (ccx.changeHotel(hotelId)) {\n if (!start.isValid()) {\n start = dayjs().add(1, 'day');\n }\n\n if (!end.isValid()) {\n end = start.add(1, 'day');\n }\n\n setInitialStep(StepRoom);\n }\n\n urlParameterBuilder.hotelId = hotelId;\n }\n\n const defaultCity = query.get('defaultCity');\n if (defaultCity) {\n urlParameterBuilder.defaultCity = defaultCity;\n }\n\n // We're doing dates last, as other properties, like hotelID might change them if they're not already set\n if (start.isValid() && end.isValid()) {\n if (start.isBefore(dayjs())) {\n start = dayjs();\n }\n\n if (end.isBefore(start)) {\n end = start.add(1, 'day');\n } else if (end.isBefore(dayjs().add(1, 'day'))) {\n end = dayjs().add(1, 'day');\n }\n\n urlParameterBuilder.startDate = start;\n urlParameterBuilder.endDate = end;\n }\n\n const adults = Number.parseInt(query.get('adults'), 10);\n if (!isNaN(adults) && adults > 1) {\n if (!hotel || hotel.maxOccupancy >= adults) {\n urlParameterBuilder.adults = adults;\n }\n }\n\n const children = Number.parseInt(query.get('children'), 10);\n if (!isNaN(children) && children > 0) {\n if (!hotel || hotel.maxOccupancy + (isNaN(adults) ? 0 : adults) >= children) {\n urlParameterBuilder.children = children;\n }\n }\n\n const roomCount = Number.parseInt(query.get('rooms'), 10);\n if (!isNaN(roomCount) && roomCount > 1) {\n urlParameterBuilder.rooms = addXRooms = roomCount;\n }\n\n setUrlParameters(urlParameterBuilder);\n }\n\n let firstBasketRow: BasketRow;\n const { startDate, endDate, promoCode, promoOnly, adults, children } = urlParameterBuilder;\n for (let i = 0; i < addXRooms; i++) {\n const basketRow = new BasketRow();\n\n if (startDate) {\n basketRow.setStartDate(startDate);\n }\n\n if (endDate) {\n basketRow.setEndDate(endDate);\n }\n\n if (promoCode) {\n basketRow.setPromoCode(promoCode);\n }\n\n if (promoOnly) {\n basketRow.setPromoOnly(promoOnly);\n }\n\n if (adults) {\n basketRow.setAdults(adults);\n }\n\n if (children) {\n basketRow.setChildren(children);\n }\n\n basketContext.addBasketRow(basketRow, false, i !== 0);\n\n if (i === 0) {\n firstBasketRow = basketRow;\n }\n }\n\n if (firstBasketRow.getStartDate() && firstBasketRow.getEndDate()) {\n setInitialStep(StepRoom);\n }\n } else {\n const initialSession = beContext.engine.getInitialSession();\n if (initialSession) {\n setInitialStep(StepManager.getStepFromName(initialSession.step));\n }\n }\n\n setUrlFlagsParsed(true);\n }, []);\n\n /**\n * Engine Ready useEffect, used to deffer loading the UI until everything engine wise is set up properly\n */\n useEffect(() => {\n if (!engineReady) {\n if (ccx.hotels.length > 0 && urlFlagsParsed) {\n setEngineReady(true);\n }\n }\n }, [ccx.hotels, urlFlagsParsed]);\n\n useEffect(() => {\n if (engineReady) {\n if (isInStepRoot && initialStep) {\n // We want to respect the browsers pathname, and only redirect to a defined step if\n // the pathname isn't set, or matches an unknown page.\n\n // Is the current location in the path? i.e does the user want to be somewhere specific\n let pathInLoadedSteps = false;\n for (const step of StepManager.getSteps()) {\n // Using match instead of equals as some clients have skipped the trailing slash\n if (step.getStepUrl().match(new RegExp(`${location.pathname}(\\/|)`, 'ig'))) {\n pathInLoadedSteps = true;\n break;\n }\n }\n\n // We're in /step/ but on a not recognized one.\n if (!pathInLoadedSteps) {\n history.push({\n ...location,\n pathname: initialStep.getStepUrl(),\n });\n }\n }\n }\n }, [engineReady]);\n\n const workingContext: FullPageEngineContextType = { urlParameters, currentStep, setCurrentStep };\n\n const renderRouteHandler = () => {\n return <Redirect to={StepManager.getFirstStep().getStepUrl()} />;\n };\n\n return (\n <FullPageEngineContext.Provider value={workingContext}>\n <AuthenticationContextProvider>\n <ModalContextWrapper>\n <ScrollToTop />\n <Route exact={true} path=\"/\" render={renderRouteHandler} />\n <header className=\"engine-header\">\n <Header />\n </header>\n {engineReady && (\n <>\n <div className=\"engine-page\">\n <React.Suspense fallback={<HotelInfoPlaceholder />}>\n <Route exact={true} path={'/hotel-info/'} component={HotelInfo} />\n </React.Suspense>\n <React.Suspense fallback={<div>Loading...</div>}>\n <Route\n exact={true}\n path={`/:${QUERY_PARAM_NAME}(${Object.values(EFindReservationPath)\n .filter((path) => MemberPortalFeature.isActive() || path === EFindReservationPath.FindReservation)\n .join('|')})`}\n component={FindReservation}\n />\n <Route path={'/find-reservation/:ref/:email'} component={FindReservationResults} />\n </React.Suspense>\n\n {MemberPortalFeature.isActive() && (\n <React.Suspense fallback={<div>TODO:</div>}>\n <AccountRouter />\n </React.Suspense>\n )}\n </div>\n <div className=\"engine-body\">\n <AvailableUpgradesModal />\n {StepManager.getSteps().map((step: Step) => (\n <StepRoute key={step.getName()} step={step} />\n ))}\n <Route path=\"*\" component={PageColorComponent} />\n </div>\n </>\n )}\n <div className=\"container u-pad-bottom\">\n <Text type={TextType.Caption} color={Color.Grey} align={TextAlign.Right}>\n Powered by{' '}\n <a rel=\"noreferrer\" target=\"_blank\" href=\"https://www.roomstay.io/\">\n <u>\n <i>Roomstay.io</i>\n </u>\n </a>\n </Text>\n </div>\n </ModalContextWrapper>\n </AuthenticationContextProvider>\n </FullPageEngineContext.Provider>\n );\n}\n"]}
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,11 +31,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
32
  });
10
33
  };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
11
37
  Object.defineProperty(exports, "__esModule", { value: true });
12
38
  exports.HotelOverridesContextWrapper = exports.HotelOverridesContext = void 0;
13
- const React = require("react");
39
+ const React = __importStar(require("react"));
14
40
  const react_1 = require("react");
15
- const BookingAPI_1 = require("api/BookingAPI");
41
+ const BookingAPI_1 = __importDefault(require("api/BookingAPI"));
16
42
  const hooks_1 = require("@frontend/hooks");
17
43
  const DistanceUnitType_types_1 = require("models/Client/Hotel/DistanceUnitType.types");
18
44
  const contexts_1 = require("@frontend/contexts");
@@ -1 +1 @@
1
- {"version":3,"file":"HotelOverridesContext.js","sourceRoot":"/","sources":["src/contexts/HotelOverridesContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';\nimport API from 'api/BookingAPI';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { HotelOverrideDTO } from 'models/Api/HotelOverrideDTO';\nimport { DistanceUnitType } from 'models/Client/Hotel/DistanceUnitType.types';\nimport { CompanyContext } from '@frontend/contexts';\n\ninterface IHotelOverridesContext extends Omit<HotelOverrideDTO, 'overrideDistanceUnitType'> {\n loading: boolean;\n}\n\nexport const HotelOverridesContext = createContext<IHotelOverridesContext>(null);\n\nconst useHotelOverrides = (): IHotelOverridesContext => {\n const companyContext = useContext(CompanyContext);\n const { hotel } = useCurrentHotel();\n\n const [loading, loadingSet] = useState<boolean>(false);\n const [overrides, overridesSet] = useState<HotelOverrideDTO>({});\n\n const fetchApiData = useCallback(async () => {\n if (companyContext.selectedHotelID) {\n loadingSet(true);\n const apiData = await API.Hotel.fetchOverrides(companyContext.selectedHotelID);\n loadingSet(false);\n overridesSet(apiData);\n }\n }, [companyContext.selectedHotelID]);\n\n const hideByLine: boolean = useMemo(() => {\n return overrides?.hideByLine || hotel?.hideByLine;\n }, [overrides?.hideByLine]);\n\n const distanceUnitType: DistanceUnitType = useMemo(() => {\n // Metric by default\n return (overrides.overrideDistanceUnitType && overrides?.distanceUnitType) || hotel?.distanceUnitType || DistanceUnitType.Metric;\n }, [overrides?.distanceUnitType, hotel?.distanceUnitType, hotel?.hasLoadedDetails]);\n\n const transportDistances = useMemo(() => {\n return overrides?.transportDistances ?? hotel?.transportDistances;\n }, [overrides?.transportDistances]);\n\n const phoneNumberInSummary = useMemo(() => {\n return overrides?.phoneNumberInSummary;\n }, [overrides?.phoneNumberInSummary]);\n\n useEffect(() => {\n fetchApiData();\n }, [fetchApiData]);\n\n return {\n loading,\n hideByLine,\n distanceUnitType,\n transportDistances,\n phoneNumberInSummary,\n };\n};\n\nexport const HotelOverridesContextWrapper = ({ children }: { children?: React.ReactNode }) => {\n const hotelOverrides = useHotelOverrides();\n return <HotelOverridesContext.Provider value={hotelOverrides}>{children}</HotelOverridesContext.Provider>;\n};\n"]}
1
+ {"version":3,"file":"HotelOverridesContext.js","sourceRoot":"/","sources":["src/contexts/HotelOverridesContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';\nimport API from 'api/BookingAPI';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { HotelOverrideDTO } from 'models/Api/HotelOverrideDTO';\nimport { DistanceUnitType } from 'models/Client/Hotel/DistanceUnitType.types';\nimport { CompanyContext } from '@frontend/contexts';\n\ninterface IHotelOverridesContext extends Omit<HotelOverrideDTO, 'overrideDistanceUnitType'> {\n loading: boolean;\n}\n\nexport const HotelOverridesContext = createContext<IHotelOverridesContext>(null);\n\nconst useHotelOverrides = (): IHotelOverridesContext => {\n const companyContext = useContext(CompanyContext);\n const { hotel } = useCurrentHotel();\n\n const [loading, loadingSet] = useState<boolean>(false);\n const [overrides, overridesSet] = useState<HotelOverrideDTO>({});\n\n const fetchApiData = useCallback(async () => {\n if (companyContext.selectedHotelID) {\n loadingSet(true);\n const apiData = await API.Hotel.fetchOverrides(companyContext.selectedHotelID);\n loadingSet(false);\n overridesSet(apiData);\n }\n }, [companyContext.selectedHotelID]);\n\n const hideByLine: boolean = useMemo(() => {\n return overrides?.hideByLine || hotel?.hideByLine;\n }, [overrides?.hideByLine]);\n\n const distanceUnitType: DistanceUnitType = useMemo(() => {\n // Metric by default\n return (overrides.overrideDistanceUnitType && overrides?.distanceUnitType) || hotel?.distanceUnitType || DistanceUnitType.Metric;\n }, [overrides?.distanceUnitType, hotel?.distanceUnitType, hotel?.hasLoadedDetails]);\n\n const transportDistances = useMemo(() => {\n return overrides?.transportDistances ?? hotel?.transportDistances;\n }, [overrides?.transportDistances]);\n\n const phoneNumberInSummary = useMemo(() => {\n return overrides?.phoneNumberInSummary;\n }, [overrides?.phoneNumberInSummary]);\n\n useEffect(() => {\n fetchApiData();\n }, [fetchApiData]);\n\n return {\n loading,\n hideByLine,\n distanceUnitType,\n transportDistances,\n phoneNumberInSummary,\n };\n};\n\nexport const HotelOverridesContextWrapper = ({ children }: { children?: React.ReactNode }) => {\n const hotelOverrides = useHotelOverrides();\n return <HotelOverridesContext.Provider value={hotelOverrides}>{children}</HotelOverridesContext.Provider>;\n};\n"]}
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,14 +31,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
32
  });
10
33
  };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
11
37
  Object.defineProperty(exports, "__esModule", { value: true });
12
38
  exports.AuthenticationContextProvider = void 0;
13
- const React = require("react");
39
+ const React = __importStar(require("react"));
14
40
  const react_1 = require("react");
15
- const base64 = require("base-64");
41
+ const base64 = __importStar(require("base-64"));
16
42
  const contexts_1 = require("@frontend/contexts");
17
- const auth_1 = require("@aws-amplify/auth");
18
- const MemberPortalFeature_1 = require("providers/feature/MemberPortalFeature");
43
+ const auth_1 = __importDefault(require("@aws-amplify/auth"));
44
+ const MemberPortalFeature_1 = __importDefault(require("providers/feature/MemberPortalFeature"));
19
45
  const useAuthenticationContext = () => {
20
46
  const { companyShort, selectedHotelID } = (0, react_1.useContext)(contexts_1.CompanyContext);
21
47
  const clientMetadata = (0, react_1.useMemo)(() => ({