@roomstay/frontend 1.6.0 → 2.0.0-1

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 (1056) hide show
  1. package/dist/201.bundle.js +1 -1
  2. package/dist/218.bundle.js +1 -0
  3. package/dist/279.bundle.js +1 -1
  4. package/dist/370.bundle.js +1 -1
  5. package/dist/423.bundle.js +1 -0
  6. package/dist/449.bundle.js +1 -1
  7. package/dist/625.bundle.js +1 -1
  8. package/dist/873.bundle.js +1 -1
  9. package/dist/882.bundle.js +1 -0
  10. package/dist/972.bundle.js +1 -1
  11. package/dist/main.bundle.js +1 -1
  12. package/dist/src/animations/AutoAutoHeight.d.ts +1 -0
  13. package/dist/src/animations/AutoAutoHeight.js +14 -8
  14. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  15. package/dist/src/animations/Fade.d.ts +7 -3
  16. package/dist/src/animations/Fade.js +14 -3
  17. package/dist/src/animations/Fade.js.map +1 -1
  18. package/dist/src/api/AddonAPI.d.ts +3 -3
  19. package/dist/src/api/AddonAPI.js +3 -3
  20. package/dist/src/api/AddonAPI.js.map +1 -1
  21. package/dist/src/api/AvailabilityAPI.d.ts +3 -3
  22. package/dist/src/api/AvailabilityAPI.js +9 -8
  23. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  24. package/dist/src/api/BaseAPI.d.ts +8 -3
  25. package/dist/src/api/BaseAPI.js +22 -9
  26. package/dist/src/api/BaseAPI.js.map +1 -1
  27. package/dist/src/api/BookingAPI.d.ts +9 -7
  28. package/dist/src/api/BookingAPI.js +9 -7
  29. package/dist/src/api/BookingAPI.js.map +1 -1
  30. package/dist/src/api/ErrorAPI.d.ts +6 -0
  31. package/dist/src/api/ErrorAPI.js +15 -0
  32. package/dist/src/api/ErrorAPI.js.map +1 -1
  33. package/dist/src/api/ExchangeRateAPI.d.ts +2 -2
  34. package/dist/src/api/ExchangeRateAPI.js +14 -8
  35. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  36. package/dist/src/api/HotelAPI.d.ts +5 -5
  37. package/dist/src/api/HotelAPI.js +7 -3
  38. package/dist/src/api/HotelAPI.js.map +1 -1
  39. package/dist/src/api/MemberAPI.d.ts +1 -1
  40. package/dist/src/api/MemberAPI.js +1 -1
  41. package/dist/src/api/MemberAPI.js.map +1 -1
  42. package/dist/src/api/ReservationAPI.d.ts +19 -9
  43. package/dist/src/api/ReservationAPI.js +15 -7
  44. package/dist/src/api/ReservationAPI.js.map +1 -1
  45. package/dist/src/api/SessionAPI.d.ts +4 -0
  46. package/dist/src/api/SessionAPI.js +23 -0
  47. package/dist/src/api/SessionAPI.js.map +1 -0
  48. package/dist/src/api/members-service/MembersServiceAPI.d.ts +6 -0
  49. package/dist/src/api/members-service/MembersServiceAPI.js +77 -0
  50. package/dist/src/api/members-service/MembersServiceAPI.js.map +1 -0
  51. package/dist/src/components/User/Forms/ForgotPasswordForm.d.ts +6 -0
  52. package/dist/src/components/User/Forms/ForgotPasswordForm.js +108 -0
  53. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -0
  54. package/dist/src/components/User/Forms/SignInForm.d.ts +6 -0
  55. package/dist/src/components/User/Forms/SignInForm.js +113 -0
  56. package/dist/src/components/User/Forms/SignInForm.js.map +1 -0
  57. package/dist/src/components/User/Forms/SignUpForm.d.ts +6 -0
  58. package/dist/src/components/User/Forms/SignUpForm.js +159 -0
  59. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -0
  60. package/dist/src/components/generic/Alert.d.ts +11 -3
  61. package/dist/src/components/generic/Alert.js +9 -5
  62. package/dist/src/components/generic/Alert.js.map +1 -1
  63. package/dist/src/components/generic/BEButton.d.ts +9 -4
  64. package/dist/src/components/generic/BEButton.js +12 -12
  65. package/dist/src/components/generic/BEButton.js.map +1 -1
  66. package/dist/src/components/generic/BESelect.d.ts +4 -1
  67. package/dist/src/components/generic/BESelect.js +5 -40
  68. package/dist/src/components/generic/BESelect.js.map +1 -1
  69. package/dist/src/components/generic/BackButton.js +4 -4
  70. package/dist/src/components/generic/BackButton.js.map +1 -1
  71. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +6 -6
  72. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  73. package/dist/src/components/generic/Card/Card/Card.d.ts +7 -0
  74. package/dist/src/components/generic/Card/Card/Card.js +14 -0
  75. package/dist/src/components/generic/Card/Card/Card.js.map +1 -0
  76. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +15 -0
  77. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +33 -0
  78. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -0
  79. package/dist/src/components/generic/{Checkbox.d.ts → Checkbox/Checkbox.d.ts} +1 -1
  80. package/dist/src/components/generic/Checkbox/Checkbox.js +35 -0
  81. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -0
  82. package/dist/src/components/generic/Countdown.js +3 -3
  83. package/dist/src/components/generic/Countdown.js.map +1 -1
  84. package/dist/src/components/generic/Currency.js +9 -9
  85. package/dist/src/components/generic/Currency.js.map +1 -1
  86. package/dist/src/components/generic/Distance.js +4 -4
  87. package/dist/src/components/generic/Distance.js.map +1 -1
  88. package/dist/src/components/generic/ForwardedSelect.d.ts +12 -0
  89. package/dist/src/components/generic/ForwardedSelect.js +16 -0
  90. package/dist/src/components/generic/ForwardedSelect.js.map +1 -0
  91. package/dist/src/components/generic/Headline.d.ts +5 -3
  92. package/dist/src/components/generic/Headline.js +2 -1
  93. package/dist/src/components/generic/Headline.js.map +1 -1
  94. package/dist/src/components/generic/{Icon.d.ts → Icon/Icon.d.ts} +6 -2
  95. package/dist/src/components/generic/{Icon.js → Icon/Icon.js} +10 -5
  96. package/dist/src/components/generic/Icon/Icon.js.map +1 -0
  97. package/dist/src/components/generic/IconText/IconText.d.ts +10 -0
  98. package/dist/src/components/generic/IconText/IconText.js +21 -0
  99. package/dist/src/components/generic/IconText/IconText.js.map +1 -0
  100. package/dist/src/components/generic/InputGroup/InputGroup.d.ts +1 -1
  101. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  102. package/dist/src/components/generic/InputGroup/InputGroup.types.d.ts +1 -1
  103. package/dist/src/components/generic/LineBreak.d.ts +1 -0
  104. package/dist/src/components/generic/LineBreak.js +1 -0
  105. package/dist/src/components/generic/LineBreak.js.map +1 -1
  106. package/dist/src/components/generic/Notification.d.ts +1 -1
  107. package/dist/src/components/generic/Notification.js +5 -5
  108. package/dist/src/components/generic/Notification.js.map +1 -1
  109. package/dist/src/components/generic/NumberIncrement.js +5 -5
  110. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  111. package/dist/src/components/generic/Overlay/Overlay.d.ts +18 -0
  112. package/dist/src/components/generic/Overlay/Overlay.js +93 -0
  113. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -0
  114. package/dist/src/components/generic/PasswordBox/PasswordBox.d.ts +3 -0
  115. package/dist/src/components/generic/PasswordBox/PasswordBox.js +20 -0
  116. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -0
  117. package/dist/src/components/generic/PaymentCard/CardTypeSelect.d.ts +9 -0
  118. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +30 -0
  119. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -0
  120. package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +6 -0
  121. package/dist/src/components/generic/PaymentCard/PaymentCard.js +54 -0
  122. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -0
  123. package/dist/src/components/generic/PaymentCard/PaymentCardInput.d.ts +11 -0
  124. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +201 -0
  125. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -0
  126. package/dist/src/components/generic/Pill.d.ts +11 -3
  127. package/dist/src/components/generic/Pill.js +10 -3
  128. package/dist/src/components/generic/Pill.js.map +1 -1
  129. package/dist/src/components/generic/Placeholder.d.ts +2 -1
  130. package/dist/src/components/generic/Placeholder.js +2 -1
  131. package/dist/src/components/generic/Placeholder.js.map +1 -1
  132. package/dist/src/components/generic/PlanpayButton/PlanpayButton.d.ts +6 -0
  133. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +11 -0
  134. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -0
  135. package/dist/src/components/generic/Portal/Portal.d.ts +9 -0
  136. package/dist/src/components/generic/Portal/Portal.js +10 -0
  137. package/dist/src/components/generic/Portal/Portal.js.map +1 -0
  138. package/dist/src/components/generic/PromoCodeInput.js +22 -20
  139. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  140. package/dist/src/components/generic/RadioButtonGroup/RadioButton.d.ts +11 -0
  141. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +21 -0
  142. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -0
  143. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.d.ts +15 -0
  144. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +20 -0
  145. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -0
  146. package/dist/src/components/generic/RecentSearchesCard.d.ts +1 -1
  147. package/dist/src/components/generic/RecentSearchesCard.js +9 -9
  148. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  149. package/dist/src/components/generic/ScrollToTop.js +3 -3
  150. package/dist/src/components/generic/ScrollToTop.js.map +1 -1
  151. package/dist/src/components/generic/Select/Select.d.ts +24 -0
  152. package/dist/src/components/generic/Select/Select.js +64 -0
  153. package/dist/src/components/generic/Select/Select.js.map +1 -0
  154. package/dist/src/components/generic/Select.js +2 -2
  155. package/dist/src/components/generic/Select.js.map +1 -1
  156. package/dist/src/components/generic/Slider/Slider.d.ts +22 -0
  157. package/dist/src/components/generic/Slider/Slider.js +111 -0
  158. package/dist/src/components/generic/Slider/Slider.js.map +1 -0
  159. package/dist/src/components/generic/Tabs/ElementChildren.d.ts +3 -0
  160. package/dist/src/components/generic/Tabs/ElementChildren.js +18 -0
  161. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -0
  162. package/dist/src/components/generic/Tabs/Tab.d.ts +9 -0
  163. package/dist/src/components/generic/Tabs/Tab.js +13 -0
  164. package/dist/src/components/generic/Tabs/Tab.js.map +1 -0
  165. package/dist/src/components/generic/Tabs/TabContext.d.ts +16 -0
  166. package/dist/src/components/generic/Tabs/TabContext.js +39 -0
  167. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -0
  168. package/dist/src/components/generic/Tabs/TabLink.d.ts +1 -0
  169. package/dist/src/components/generic/Tabs/TabLink.js +30 -0
  170. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -0
  171. package/dist/src/components/generic/Tabs/TabRouteContainer.d.ts +6 -0
  172. package/dist/src/components/generic/Tabs/TabRouteContainer.js +30 -0
  173. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -0
  174. package/dist/src/components/generic/Tabs/Tabs.d.ts +12 -0
  175. package/dist/src/components/generic/Tabs/Tabs.js +39 -0
  176. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -0
  177. package/dist/src/components/generic/Text.d.ts +6 -3
  178. package/dist/src/components/generic/Text.js +2 -2
  179. package/dist/src/components/generic/Text.js.map +1 -1
  180. package/dist/src/components/generic/TextArea.d.ts +2 -1
  181. package/dist/src/components/generic/TextArea.js +3 -3
  182. package/dist/src/components/generic/TextArea.js.map +1 -1
  183. package/dist/src/components/generic/TextBox.d.ts +5 -3
  184. package/dist/src/components/generic/TextBox.js +18 -14
  185. package/dist/src/components/generic/TextBox.js.map +1 -1
  186. package/dist/src/components/generic/Tooltip/Tooltip.d.ts +8 -0
  187. package/dist/src/components/generic/Tooltip/Tooltip.js +26 -0
  188. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -0
  189. package/dist/src/components/generic/badging/SSLSecureBadge.js +3 -3
  190. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  191. package/dist/src/components/generic/buttons/NextStepButton.d.ts +1 -1
  192. package/dist/src/components/generic/buttons/NextStepButton.js +5 -5
  193. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  194. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.d.ts +10 -7
  195. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +37 -58
  196. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  197. package/dist/src/components/generic/date/DatePicker.js +29 -28
  198. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  199. package/dist/src/components/generic/date/DatePickerDay.js +21 -22
  200. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  201. package/dist/src/components/generic/date/DatePickerDays.js +5 -5
  202. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  203. package/dist/src/components/generic/date/DatePickerMonth.js +8 -8
  204. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  205. package/dist/src/components/generic/date/DatePickerWeek.js +23 -24
  206. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  207. package/dist/src/components/generic/date/FloatingDatePicker.js +14 -45
  208. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  209. package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
  210. package/dist/src/components/generic/loader/ImageLoader.js +6 -6
  211. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  212. package/dist/src/components/generic/loader/LargeLoader.js +5 -5
  213. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  214. package/dist/src/components/generic/loader/SmallSpinner.d.ts +1 -1
  215. package/dist/src/components/generic/loader/SmallSpinner.js +2 -2
  216. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  217. package/dist/src/components/generic/map/HotelLocationMap.js +2 -2
  218. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  219. package/dist/src/components/generic/modal/ConfirmationModal.js +3 -3
  220. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  221. package/dist/src/components/generic/modal/ErrorModal.js +3 -3
  222. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  223. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.d.ts +8 -0
  224. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +73 -0
  225. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -0
  226. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +15 -0
  227. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +82 -0
  228. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -0
  229. package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -3
  230. package/dist/src/components/generic/modal/SimpleModal.js +67 -55
  231. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  232. package/dist/src/components/generic/modal/TabbedModal.js +3 -3
  233. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  234. package/dist/src/components/generic/radio/RadioFields.js +2 -2
  235. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  236. package/dist/src/components/members/EditMyProfile.d.ts +3 -0
  237. package/dist/src/components/members/EditMyProfile.js +103 -0
  238. package/dist/src/components/members/EditMyProfile.js.map +1 -0
  239. package/dist/src/components/navigation/Header.js +73 -32
  240. package/dist/src/components/navigation/Header.js.map +1 -1
  241. package/dist/src/components/navigation/StepSelector.js +15 -14
  242. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  243. package/dist/src/components/navigation/StepSelectorModal.js +9 -9
  244. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  245. package/dist/src/components/pages/Account/Card/CardList.d.ts +15 -0
  246. package/dist/src/components/pages/Account/Card/CardList.js +36 -0
  247. package/dist/src/components/pages/Account/Card/CardList.js.map +1 -0
  248. package/dist/src/components/pages/Account/Card/MemberCardItem.d.ts +8 -0
  249. package/dist/src/components/pages/Account/Card/MemberCardItem.js +38 -0
  250. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -0
  251. package/dist/src/components/pages/PageColorComponent.d.ts +1 -0
  252. package/dist/src/components/pages/PageColorComponent.js +18 -0
  253. package/dist/src/components/pages/PageColorComponent.js.map +1 -0
  254. package/dist/src/components/reservation/ReservationItem.d.ts +16 -0
  255. package/dist/src/components/reservation/ReservationItem.js +145 -0
  256. package/dist/src/components/reservation/ReservationItem.js.map +1 -0
  257. package/dist/src/components/reservation/ReservationList.d.ts +11 -0
  258. package/dist/src/components/reservation/ReservationList.js +10 -0
  259. package/dist/src/components/reservation/ReservationList.js.map +1 -0
  260. package/dist/src/components/steps/DaysSelectedInformer.js +4 -4
  261. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  262. package/dist/src/components/steps/MinimumNightStayPill.js +14 -14
  263. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  264. package/dist/src/components/steps/addons/AddonCard.d.ts +1 -1
  265. package/dist/src/components/steps/addons/AddonCard.js +22 -22
  266. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  267. package/dist/src/components/steps/addons/AddonList.js +12 -12
  268. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  269. package/dist/src/components/steps/addons/AddonsNotFound.js +5 -5
  270. package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
  271. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +1 -1
  272. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +4 -3
  273. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  274. package/dist/src/components/steps/confirmation/AccountDetails.js +9 -9
  275. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  276. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.d.ts +8 -0
  277. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +31 -0
  278. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -0
  279. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.d.ts +0 -0
  280. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js +1 -0
  281. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js.map +1 -0
  282. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.d.ts +6 -0
  283. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +41 -0
  284. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -0
  285. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.d.ts +3 -0
  286. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +196 -0
  287. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -0
  288. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.d.ts +2 -0
  289. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +58 -0
  290. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -0
  291. package/dist/src/components/steps/confirmation/RoomContactDetails.d.ts +3 -8
  292. package/dist/src/components/steps/confirmation/RoomContactDetails.js +262 -201
  293. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  294. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.d.ts +3 -6
  295. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +29 -19
  296. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  297. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.d.ts +1 -1
  298. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +13 -13
  299. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  300. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.d.ts +2 -1
  301. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +22 -10
  302. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  303. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.d.ts +10 -8
  304. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +82 -54
  305. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  306. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +229 -302
  307. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  308. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.d.ts +1 -0
  309. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +11 -0
  310. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -0
  311. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +7 -7
  312. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  313. package/dist/src/components/steps/confirmation/StepConfirmationPaymentDetails.js +31 -34
  314. package/dist/src/components/steps/confirmation/StepConfirmationPaymentDetails.js.map +1 -1
  315. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +5 -5
  316. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  317. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +5 -5
  318. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  319. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +23 -23
  320. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  321. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.d.ts +1 -1
  322. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +3 -3
  323. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  324. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.d.ts +2 -2
  325. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +17 -17
  326. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  327. package/dist/src/components/steps/date/PeoplePicker.js +9 -9
  328. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  329. package/dist/src/components/steps/date/PeoplePickerRow.js +13 -13
  330. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  331. package/dist/src/components/steps/date/StepDatePricePerRoom.js +15 -15
  332. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  333. package/dist/src/components/steps/date/StepOneDateRange.js +7 -7
  334. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  335. package/dist/src/components/steps/date/StepOneDateRangePicker.js +6 -6
  336. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  337. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +6 -6
  338. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  339. package/dist/src/components/steps/date/StepOneNextStepButton.js +6 -6
  340. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  341. package/dist/src/components/steps/date/StepOneStatusPeople.js +1 -1
  342. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  343. package/dist/src/components/steps/hotel/HotelCard.d.ts +1 -1
  344. package/dist/src/components/steps/hotel/HotelCard.js +31 -31
  345. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  346. package/dist/src/components/steps/hotel/HotelCardList.d.ts +1 -1
  347. package/dist/src/components/steps/hotel/HotelCardList.js +2 -2
  348. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  349. package/dist/src/components/steps/hotel/HotelCardModal.d.ts +2 -3
  350. package/dist/src/components/steps/hotel/HotelCardModal.js +20 -20
  351. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  352. package/dist/src/components/steps/hotel/HotelSearchParameters.js +24 -31
  353. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  354. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +4 -4
  355. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  356. package/dist/src/components/steps/room/AvailableUpgradesModal.js +23 -24
  357. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  358. package/dist/src/components/steps/room/ImageGallerySlider.d.ts +1 -1
  359. package/dist/src/components/steps/room/ImageGallerySlider.js +14 -14
  360. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  361. package/dist/src/components/steps/room/InactivityWindow.js +22 -22
  362. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  363. package/dist/src/components/steps/room/LargeRoomCard.d.ts +1 -1
  364. package/dist/src/components/steps/room/LargeRoomCard.js +14 -14
  365. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  366. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +39 -44
  367. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  368. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.types.d.ts +1 -1
  369. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.types.js.map +1 -1
  370. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +22 -22
  371. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  372. package/dist/src/components/steps/room/RatesNotFound.js +3 -3
  373. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  374. package/dist/src/components/steps/room/RoomList.js +53 -23
  375. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  376. package/dist/src/components/steps/room/RoomListAlert.d.ts +2 -0
  377. package/dist/src/components/steps/room/RoomListAlert.js +27 -0
  378. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -0
  379. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +24 -26
  380. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  381. package/dist/src/components/steps/room/RoomModal.d.ts +2 -2
  382. package/dist/src/components/steps/room/RoomModal.js +12 -12
  383. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  384. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +8 -8
  385. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  386. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +8 -8
  387. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  388. package/dist/src/components/steps/room/StepRoomErrorForm.js +10 -10
  389. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  390. package/dist/src/components/steps/room/StepRoomHotelDetails.js +8 -9
  391. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  392. package/dist/src/components/steps/room/StepRoomNextStepButton.js +5 -5
  393. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  394. package/dist/src/components/steps/room/StepRoomSortBy.js +6 -6
  395. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  396. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +13 -13
  397. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  398. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +1 -1
  399. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +6 -6
  400. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  401. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +1 -1
  402. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +6 -6
  403. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  404. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +9 -9
  405. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  406. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.d.ts +1 -1
  407. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +35 -42
  408. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  409. package/dist/src/components/steps/room/roomDetails/RoomDetails.d.ts +1 -1
  410. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +37 -37
  411. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  412. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.d.ts +3 -1
  413. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +9 -8
  414. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  415. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.d.ts +1 -1
  416. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +5 -5
  417. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  418. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +10 -10
  419. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  420. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.d.ts +7 -0
  421. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +99 -0
  422. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -0
  423. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.d.ts +1 -1
  424. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +4 -4
  425. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  426. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +11 -11
  427. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  428. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.d.ts +1 -1
  429. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +15 -14
  430. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  431. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.d.ts +1 -1
  432. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +16 -15
  433. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  434. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.d.ts +1 -1
  435. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +4 -4
  436. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  437. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.d.ts +2 -3
  438. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +16 -16
  439. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  440. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.d.ts +1 -1
  441. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +22 -22
  442. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  443. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.d.ts +1 -1
  444. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +25 -32
  445. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  446. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +7 -7
  447. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  448. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.d.ts +1 -1
  449. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +22 -39
  450. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  451. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +2 -2
  452. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +65 -27
  453. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  454. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +2 -2
  455. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +13 -13
  456. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  457. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +2 -2
  458. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +13 -13
  459. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  460. package/dist/src/components/summary/BEMapWidget.js +7 -7
  461. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  462. package/dist/src/components/summary/BEMobileSummary.js +15 -15
  463. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  464. package/dist/src/components/summary/BEMobileSummaryModal.js +25 -26
  465. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  466. package/dist/src/components/summary/BESummary.d.ts +1 -1
  467. package/dist/src/components/summary/BESummary.js +22 -25
  468. package/dist/src/components/summary/BESummary.js.map +1 -1
  469. package/dist/src/components/summary/BESummaryAddonRow.d.ts +1 -1
  470. package/dist/src/components/summary/BESummaryAddonRow.js +9 -9
  471. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  472. package/dist/src/components/summary/BESummaryPerkBlock.js +8 -8
  473. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  474. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +5 -5
  475. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  476. package/dist/src/components/summary/BESummaryRoomRow.d.ts +1 -1
  477. package/dist/src/components/summary/BESummaryRoomRow.js +19 -19
  478. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  479. package/dist/src/components/summary/TransportDistanceFromHotelBlock.d.ts +1 -1
  480. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +7 -7
  481. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  482. package/dist/src/components/temp/Login.d.ts +2 -0
  483. package/dist/src/components/temp/Login.js +53 -0
  484. package/dist/src/components/temp/Login.js.map +1 -0
  485. package/dist/src/containers/PrivateRoute.d.ts +3 -0
  486. package/dist/src/containers/PrivateRoute.js +31 -0
  487. package/dist/src/containers/PrivateRoute.js.map +1 -0
  488. package/dist/src/contexts/BasketContext/BasketContext.d.ts +2 -1
  489. package/dist/src/contexts/BasketContext/BasketContext.js +4 -2
  490. package/dist/src/contexts/BasketContext/BasketContext.js.map +1 -1
  491. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +7 -7
  492. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  493. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +70 -56
  494. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  495. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.d.ts +1 -0
  496. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js +4 -2
  497. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js.map +1 -1
  498. package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.d.ts +2 -2
  499. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +4 -4
  500. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  501. package/dist/src/contexts/CompanyContext/CompanyContext.js +1 -1
  502. package/dist/src/contexts/CompanyContext/CompanyContext.js.map +1 -1
  503. package/dist/src/contexts/CompanyContext/CompanyContextType.type.d.ts +13 -9
  504. package/dist/src/contexts/CompanyContext/CompanyContextType.type.js.map +1 -1
  505. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.d.ts +1 -1
  506. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +37 -42
  507. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  508. package/dist/src/contexts/ConfirmationFormContext.d.ts +3 -3
  509. package/dist/src/contexts/ConfirmationFormContext.js +4 -5
  510. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  511. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.d.ts +4 -0
  512. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.js +8 -0
  513. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.js.map +1 -0
  514. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.d.ts +12 -0
  515. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js +3 -0
  516. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js.map +1 -0
  517. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.d.ts +2 -0
  518. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +188 -0
  519. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -0
  520. package/dist/src/contexts/ErrorContext.js +3 -3
  521. package/dist/src/contexts/ErrorContext.js.map +1 -1
  522. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js +1 -1
  523. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js.map +1 -1
  524. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +46 -35
  525. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  526. package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
  527. package/dist/src/contexts/HotelOverridesContext.js +15 -15
  528. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  529. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +36 -0
  530. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +28 -0
  531. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -0
  532. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.d.ts +2 -0
  533. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +227 -0
  534. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -0
  535. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +20 -0
  536. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.js +8 -0
  537. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.js.map +1 -0
  538. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.d.ts +2 -0
  539. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +155 -0
  540. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -0
  541. package/dist/src/contexts/ModalContext.js +1 -1
  542. package/dist/src/contexts/ModalContext.js.map +1 -1
  543. package/dist/src/contexts/NotificationContext.d.ts +3 -3
  544. package/dist/src/contexts/NotificationContext.js +5 -6
  545. package/dist/src/contexts/NotificationContext.js.map +1 -1
  546. package/dist/src/contexts/index.d.ts +22 -19
  547. package/dist/src/contexts/index.js +28 -21
  548. package/dist/src/contexts/index.js.map +1 -1
  549. package/dist/src/engines/BaseEngine.d.ts +3 -3
  550. package/dist/src/engines/BaseEngine.js +2 -2
  551. package/dist/src/engines/BaseEngine.js.map +1 -1
  552. package/dist/src/engines/CustomEngine/CustomEngine.d.ts +1 -1
  553. package/dist/src/engines/CustomEngine/CustomEngine.js +1 -1
  554. package/dist/src/engines/CustomEngine/CustomEngine.js.map +1 -1
  555. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.d.ts +1 -1
  556. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +4 -4
  557. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
  558. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.d.ts +1 -1
  559. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +25 -14
  560. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  561. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.d.ts +1 -1
  562. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js +4 -4
  563. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js.map +1 -1
  564. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +1 -1
  565. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +46 -121
  566. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  567. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.d.ts +1 -1
  568. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js +4 -4
  569. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  570. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.d.ts +1 -1
  571. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +17 -15
  572. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  573. package/dist/src/errors/GetAvailabilityError.d.ts +1 -1
  574. package/dist/src/errors/GetAvailabilityError.js +4 -4
  575. package/dist/src/errors/GetAvailabilityError.js.map +1 -1
  576. package/dist/src/errors/NoCompanyContextError.d.ts +1 -1
  577. package/dist/src/errors/NoCompanyContextError.js +1 -1
  578. package/dist/src/errors/NoCompanyContextError.js.map +1 -1
  579. package/dist/src/errors/NoHotelSelectedError.d.ts +1 -1
  580. package/dist/src/errors/NoHotelSelectedError.js +1 -1
  581. package/dist/src/errors/NoHotelSelectedError.js.map +1 -1
  582. package/dist/src/events/RoomstayEventManager.d.ts +3 -3
  583. package/dist/src/events/RoomstayEventManager.js +5 -24
  584. package/dist/src/events/RoomstayEventManager.js.map +1 -1
  585. package/dist/src/events/actions/AddToCartEvent.d.ts +2 -2
  586. package/dist/src/events/actions/AddToCartEvent.js +1 -1
  587. package/dist/src/events/actions/AddToCartEvent.js.map +1 -1
  588. package/dist/src/events/actions/RemoveFromCartEvent.d.ts +2 -2
  589. package/dist/src/events/actions/RemoveFromCartEvent.js +1 -1
  590. package/dist/src/events/actions/RemoveFromCartEvent.js.map +1 -1
  591. package/dist/src/events/index.d.ts +13 -14
  592. package/dist/src/events/index.js +19 -16
  593. package/dist/src/events/index.js.map +1 -1
  594. package/dist/src/events/views/StepCheckoutViewEvent.d.ts +2 -2
  595. package/dist/src/events/views/StepCheckoutViewEvent.js +1 -1
  596. package/dist/src/events/views/StepCheckoutViewEvent.js.map +1 -1
  597. package/dist/src/hooks/AutoFocusOnSelect.d.ts +13 -0
  598. package/dist/src/hooks/AutoFocusOnSelect.js +76 -0
  599. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -0
  600. package/dist/src/hooks/BodyClickHook.d.ts +10 -0
  601. package/dist/src/hooks/BodyClickHook.js +36 -0
  602. package/dist/src/hooks/BodyClickHook.js.map +1 -0
  603. package/dist/src/hooks/CombineState.d.ts +2 -0
  604. package/dist/src/hooks/CombineState.js +10 -0
  605. package/dist/src/hooks/CombineState.js.map +1 -0
  606. package/dist/src/hooks/ConfirmationQuery.d.ts +5 -0
  607. package/dist/src/hooks/ConfirmationQuery.js +17 -0
  608. package/dist/src/hooks/ConfirmationQuery.js.map +1 -0
  609. package/dist/src/hooks/CurrentHotelHook.js +4 -3
  610. package/dist/src/hooks/CurrentHotelHook.js.map +1 -1
  611. package/dist/src/hooks/ElementSortHook.d.ts +2 -2
  612. package/dist/src/hooks/ElementSortHook.js +4 -3
  613. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  614. package/dist/src/hooks/EventHook.d.ts +3 -3
  615. package/dist/src/hooks/EventHook.js +5 -4
  616. package/dist/src/hooks/EventHook.js.map +1 -1
  617. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +13 -0
  618. package/dist/src/hooks/KeyboardControlOnSelect.js +111 -0
  619. package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -0
  620. package/dist/src/hooks/LoggedInUserHook.d.ts +10 -0
  621. package/dist/src/hooks/LoggedInUserHook.js +43 -0
  622. package/dist/src/hooks/LoggedInUserHook.js.map +1 -0
  623. package/dist/src/hooks/Query.d.ts +2 -0
  624. package/dist/src/hooks/Query.js +15 -0
  625. package/dist/src/hooks/Query.js.map +1 -0
  626. package/dist/src/hooks/ScrollFocusHook.js +2 -1
  627. package/dist/src/hooks/ScrollFocusHook.js.map +1 -1
  628. package/dist/src/hooks/VGSHooks.d.ts +47 -0
  629. package/dist/src/hooks/VGSHooks.js +207 -0
  630. package/dist/src/hooks/VGSHooks.js.map +1 -0
  631. package/dist/src/hooks/WindowSize.d.ts +4 -0
  632. package/dist/src/hooks/WindowSize.js +24 -0
  633. package/dist/src/hooks/WindowSize.js.map +1 -0
  634. package/dist/src/hooks/index.d.ts +6 -5
  635. package/dist/src/hooks/index.js +12 -7
  636. package/dist/src/hooks/index.js.map +1 -1
  637. package/dist/src/icons/Check.js +1 -1
  638. package/dist/src/icons/Check.js.map +1 -1
  639. package/dist/src/index.d.ts +62 -64
  640. package/dist/src/index.js +73 -72
  641. package/dist/src/index.js.map +1 -1
  642. package/dist/src/mockApi/AddonAPI.d.ts +3 -3
  643. package/dist/src/mockApi/AddonAPI.js +3 -3
  644. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  645. package/dist/src/mockApi/BookingAPI.d.ts +6 -6
  646. package/dist/src/mockApi/BookingAPI.js +6 -6
  647. package/dist/src/mockApi/BookingAPI.js.map +1 -1
  648. package/dist/src/mockApi/ExchangeRateAPI.d.ts +2 -2
  649. package/dist/src/mockApi/ExchangeRateAPI.js +1 -1
  650. package/dist/src/mockApi/ExchangeRateAPI.js.map +1 -1
  651. package/dist/src/mockApi/HotelAPI.d.ts +3 -3
  652. package/dist/src/mockApi/HotelAPI.js +1 -1
  653. package/dist/src/mockApi/HotelAPI.js.map +1 -1
  654. package/dist/src/mockApi/MemberAPI.d.ts +1 -1
  655. package/dist/src/mockApi/MemberAPI.js +1 -1
  656. package/dist/src/mockApi/MemberAPI.js.map +1 -1
  657. package/dist/src/mockApi/MockAPI.d.ts +1 -1
  658. package/dist/src/mockApi/MockAPI.js +1 -1
  659. package/dist/src/mockApi/MockAPI.js.map +1 -1
  660. package/dist/src/mockApi/ReservationAPI.d.ts +6 -6
  661. package/dist/src/mockApi/ReservationAPI.js +1 -1
  662. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  663. package/dist/src/models/Addon/Addon.d.ts +2 -2
  664. package/dist/src/models/Addon/Addon.js.map +1 -1
  665. package/dist/src/models/Api/ExchangeRateDTO.d.ts +1 -1
  666. package/dist/src/models/Api/HotelDTO.d.ts +19 -11
  667. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  668. package/dist/src/models/Api/HotelOverrideDTO.d.ts +1 -1
  669. package/dist/src/models/Api/HotelOverrideDTO.js.map +1 -1
  670. package/dist/src/models/Api/IEventReservation.d.ts +1 -1
  671. package/dist/src/models/Api/RatePlanDTO.d.ts +1 -1
  672. package/dist/src/models/Api/ReservationsDTO.d.ts +17 -4
  673. package/dist/src/models/Api/ReservationsDTO.js.map +1 -1
  674. package/dist/src/models/Api/RoomNightDTO.d.ts +2 -2
  675. package/dist/src/models/Api/RoomNightDTO.js.map +1 -1
  676. package/dist/src/models/Api/RoomNightRateDTO.d.ts +1 -1
  677. package/dist/src/models/Api/RoomTypeDTO.d.ts +1 -1
  678. package/dist/src/models/BasketAddonRow.d.ts +1 -1
  679. package/dist/src/models/BasketAddonRow.js +2 -2
  680. package/dist/src/models/BasketAddonRow.js.map +1 -1
  681. package/dist/src/models/BasketRow.d.ts +9 -6
  682. package/dist/src/models/BasketRow.js +4 -1
  683. package/dist/src/models/BasketRow.js.map +1 -1
  684. package/dist/src/models/BasketRowDifferences.d.ts +2 -2
  685. package/dist/src/models/Client/Hotel/ColorProfile.d.ts +1 -1
  686. package/dist/src/models/Client/Hotel/Company.d.ts +2 -2
  687. package/dist/src/models/Client/Hotel/Company.js.map +1 -1
  688. package/dist/src/models/Client/Hotel/Hotel.d.ts +28 -15
  689. package/dist/src/models/Client/Hotel/Hotel.js +8 -0
  690. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  691. package/dist/src/models/Client/Hotel/HotelAddress.d.ts +1 -1
  692. package/dist/src/models/Client/Hotel/HotelPerk.d.ts +3 -3
  693. package/dist/src/models/Client/Hotel/HotelPerk.js.map +1 -1
  694. package/dist/src/models/Client/Hotel/HotelRoomOverwrite.d.ts +1 -1
  695. package/dist/src/models/Confirmation.d.ts +31 -0
  696. package/dist/src/models/Confirmation.js +15 -0
  697. package/dist/src/models/Confirmation.js.map +1 -0
  698. package/dist/src/models/PaymentCard.d.ts +15 -2
  699. package/dist/src/models/PaymentCard.js +13 -0
  700. package/dist/src/models/PaymentCard.js.map +1 -1
  701. package/dist/src/models/Reservation/Reservation.d.ts +16 -0
  702. package/dist/src/models/{Promotion/IPromotion.type.js → Reservation/Reservation.js} +1 -1
  703. package/dist/src/models/Reservation/Reservation.js.map +1 -0
  704. package/dist/src/models/Room/Filters/BudgetFilter.d.ts +2 -2
  705. package/dist/src/models/Room/Filters/BudgetFilter.js +1 -1
  706. package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
  707. package/dist/src/models/Room/Filters/Filter.d.ts +1 -1
  708. package/dist/src/models/Room/Filters/Filter.js.map +1 -1
  709. package/dist/src/models/Room/Filters/RateTypeFilter.d.ts +2 -2
  710. package/dist/src/models/Room/Filters/RateTypeFilter.js +1 -1
  711. package/dist/src/models/Room/Filters/RateTypeFilter.js.map +1 -1
  712. package/dist/src/models/Room/Filters/RoomTypeFilter.d.ts +2 -2
  713. package/dist/src/models/Room/Filters/RoomTypeFilter.js +1 -1
  714. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  715. package/dist/src/models/Room/Room.d.ts +3 -3
  716. package/dist/src/models/Room/Room.js +1 -1
  717. package/dist/src/models/Room/Room.js.map +1 -1
  718. package/dist/src/models/Room/RoomRate.d.ts +4 -4
  719. package/dist/src/models/Room/RoomRate.js +3 -3
  720. package/dist/src/models/Room/RoomRate.js.map +1 -1
  721. package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
  722. package/dist/src/models/Room/RoomRateNight.js +1 -1
  723. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  724. package/dist/src/models/RoomListSearch.d.ts +3 -3
  725. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.d.ts +21 -0
  726. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.js +3 -0
  727. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.js.map +1 -0
  728. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.d.ts +2 -0
  729. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.js +3 -0
  730. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.js.map +1 -0
  731. package/dist/src/models/RoomstaySession.d.ts +9 -6
  732. package/dist/src/models/RoomstaySession.js.map +1 -1
  733. package/dist/src/models/SearchParameters.d.ts +1 -1
  734. package/dist/src/models/UserProfile.d.ts +2 -1
  735. package/dist/src/models/UserProfile.js.map +1 -1
  736. package/dist/src/pages/account/AccountHome/AccountHomePage.d.ts +1 -0
  737. package/dist/src/pages/account/AccountHome/AccountHomePage.js +82 -0
  738. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -0
  739. package/dist/src/pages/account/AccountOutlet.d.ts +6 -0
  740. package/dist/src/pages/account/AccountOutlet.js +10 -0
  741. package/dist/src/pages/account/AccountOutlet.js.map +1 -0
  742. package/dist/src/pages/account/AccountRouter.d.ts +1 -0
  743. package/dist/src/pages/account/AccountRouter.js +32 -0
  744. package/dist/src/pages/account/AccountRouter.js.map +1 -0
  745. package/dist/src/pages/account/AccountRoutes.d.ts +22 -0
  746. package/dist/src/pages/account/AccountRoutes.js +26 -0
  747. package/dist/src/pages/account/AccountRoutes.js.map +1 -0
  748. package/dist/src/pages/account/Details/AccountDetailsCardsPage.d.ts +1 -0
  749. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +125 -0
  750. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -0
  751. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.d.ts +7 -0
  752. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +25 -0
  753. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -0
  754. package/dist/src/pages/account/Details/AccountDetailsProfilePage.d.ts +1 -0
  755. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +127 -0
  756. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -0
  757. package/dist/src/pages/account/Help/AccountHelpPage.d.ts +1 -0
  758. package/dist/src/pages/account/Help/AccountHelpPage.js +140 -0
  759. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -0
  760. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.d.ts +1 -0
  761. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +107 -0
  762. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +1 -0
  763. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.d.ts +2 -0
  764. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +132 -0
  765. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +1 -0
  766. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.d.ts +1 -0
  767. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +245 -0
  768. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -0
  769. package/dist/src/pages/account/Reservations/AccountReservationsPage.d.ts +1 -0
  770. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +38 -0
  771. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -0
  772. package/dist/src/pages/findReservation/FindReservation.d.ts +7 -0
  773. package/dist/src/pages/findReservation/FindReservation.js +149 -73
  774. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  775. package/dist/src/pages/findReservation/FindReservationResults.js +29 -29
  776. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  777. package/dist/src/pages/findReservation/ReservationRow.d.ts +1 -1
  778. package/dist/src/pages/findReservation/ReservationRow.js +24 -23
  779. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  780. package/dist/src/pages/findReservation/ReservationRowModal.d.ts +1 -1
  781. package/dist/src/pages/findReservation/ReservationRowModal.js +12 -12
  782. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  783. package/dist/src/pages/hotel/HotelInfo.js +23 -30
  784. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  785. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +1 -1
  786. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  787. package/dist/src/pages/steps/Step.d.ts +4 -4
  788. package/dist/src/pages/steps/Step.js.map +1 -1
  789. package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +6 -7
  790. package/dist/src/pages/steps/StepAddon/StepAddon.js +4 -4
  791. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  792. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +17 -17
  793. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  794. package/dist/src/pages/steps/StepAddon/StepAddonLoader.d.ts +2 -1
  795. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +7 -7
  796. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  797. package/dist/src/pages/steps/StepAddon/StepAddonValidator.d.ts +1 -1
  798. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js +1 -1
  799. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js.map +1 -1
  800. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.d.ts +6 -6
  801. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js +4 -4
  802. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  803. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +23 -26
  804. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  805. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +2 -2
  806. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  807. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.d.ts +1 -1
  808. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js +1 -1
  809. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
  810. package/dist/src/pages/steps/StepDate/StepDate.js +4 -4
  811. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  812. package/dist/src/pages/steps/StepDate/StepDateComponent.js +30 -28
  813. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  814. package/dist/src/pages/steps/StepDate/StepDateValidator.d.ts +2 -3
  815. package/dist/src/pages/steps/StepDate/StepDateValidator.js +2 -2
  816. package/dist/src/pages/steps/StepDate/StepDateValidator.js.map +1 -1
  817. package/dist/src/pages/steps/StepGuide.d.ts +1 -1
  818. package/dist/src/pages/steps/StepGuide.js +8 -8
  819. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  820. package/dist/src/pages/steps/StepHotel/StepHotel.d.ts +5 -6
  821. package/dist/src/pages/steps/StepHotel/StepHotel.js +4 -4
  822. package/dist/src/pages/steps/StepHotel/StepHotel.js.map +1 -1
  823. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +26 -26
  824. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  825. package/dist/src/pages/steps/StepHotel/StepHotelLoader.d.ts +2 -1
  826. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +10 -10
  827. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  828. package/dist/src/pages/steps/StepHotel/StepHotelValidator.d.ts +1 -1
  829. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js +1 -1
  830. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js.map +1 -1
  831. package/dist/src/pages/steps/StepRoom/StepRoom.d.ts +6 -6
  832. package/dist/src/pages/steps/StepRoom/StepRoom.js +4 -4
  833. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  834. package/dist/src/pages/steps/StepRoom/StepRoomComponent.d.ts +2 -1
  835. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +25 -35
  836. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  837. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +2 -2
  838. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  839. package/dist/src/pages/steps/StepRoom/StepRoomValidator.d.ts +1 -1
  840. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js +1 -1
  841. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
  842. package/dist/src/pages/steps/StepThanks/StepThanks.d.ts +6 -6
  843. package/dist/src/pages/steps/StepThanks/StepThanks.js +5 -5
  844. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  845. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +17 -17
  846. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  847. package/dist/src/pages/steps/StepThanks/StepThanksValidator.d.ts +1 -1
  848. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js +1 -1
  849. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
  850. package/dist/src/providers/CurrencyProvider.js +128 -3
  851. package/dist/src/providers/CurrencyProvider.js.map +1 -1
  852. package/dist/src/providers/DistanceProvider.d.ts +1 -1
  853. package/dist/src/providers/DistanceProvider.js +1 -1
  854. package/dist/src/providers/DistanceProvider.js.map +1 -1
  855. package/dist/src/providers/FeatureProvider.js +11 -7
  856. package/dist/src/providers/FeatureProvider.js.map +1 -1
  857. package/dist/src/providers/FilterProvider.d.ts +3 -3
  858. package/dist/src/providers/FilterProvider.js +3 -1
  859. package/dist/src/providers/FilterProvider.js.map +1 -1
  860. package/dist/src/providers/ImageProvider.js +1 -1
  861. package/dist/src/providers/ImageProvider.js.map +1 -1
  862. package/dist/src/providers/LanguageProvider.d.ts +1 -1
  863. package/dist/src/providers/LanguageProvider.js +2 -2
  864. package/dist/src/providers/LanguageProvider.js.map +1 -1
  865. package/dist/src/providers/RatePillProvider.d.ts +8 -8
  866. package/dist/src/providers/RatePillProvider.js.map +1 -1
  867. package/dist/src/providers/RoomSortProvider.d.ts +1 -1
  868. package/dist/src/providers/RoomSortProvider.js.map +1 -1
  869. package/dist/src/providers/RoomstayThemeEngine.d.ts +6 -10
  870. package/dist/src/providers/RoomstayThemeEngine.js +14 -25
  871. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  872. package/dist/src/providers/SessionProvider.d.ts +3 -1
  873. package/dist/src/providers/SessionProvider.js +19 -7
  874. package/dist/src/providers/SessionProvider.js.map +1 -1
  875. package/dist/src/providers/feature/ConfirmationVerifyFeature.d.ts +1 -1
  876. package/dist/src/providers/feature/ConfirmationVerifyFeature.js +1 -1
  877. package/dist/src/providers/feature/ConfirmationVerifyFeature.js.map +1 -1
  878. package/dist/src/providers/feature/DatePickerTypeFeature.d.ts +1 -1
  879. package/dist/src/providers/feature/DatePickerTypeFeature.js +2 -2
  880. package/dist/src/providers/feature/DatePickerTypeFeature.js.map +1 -1
  881. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.d.ts +1 -1
  882. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.js +1 -1
  883. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.js.map +1 -1
  884. package/dist/src/providers/feature/Feature.js +3 -1
  885. package/dist/src/providers/feature/Feature.js.map +1 -1
  886. package/dist/src/providers/feature/FeaturedPromoFeature.d.ts +1 -1
  887. package/dist/src/providers/feature/FeaturedPromoFeature.js +2 -2
  888. package/dist/src/providers/feature/FeaturedPromoFeature.js.map +1 -1
  889. package/dist/src/providers/feature/InlineAddonStepFeature.d.ts +1 -1
  890. package/dist/src/providers/feature/InlineAddonStepFeature.js +1 -1
  891. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  892. package/dist/src/providers/feature/MemberPortalFeature.d.ts +7 -0
  893. package/dist/src/providers/feature/MemberPortalFeature.js +11 -0
  894. package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -0
  895. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.d.ts +7 -0
  896. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js +11 -0
  897. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js.map +1 -0
  898. package/dist/src/providers/feature/RoomUpsellFeature.d.ts +1 -1
  899. package/dist/src/providers/feature/RoomUpsellFeature.js +1 -1
  900. package/dist/src/providers/feature/RoomUpsellFeature.js.map +1 -1
  901. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.d.ts +1 -1
  902. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.js +1 -1
  903. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.js.map +1 -1
  904. package/dist/src/providers/storage/LocalStorageProvider.d.ts +2 -2
  905. package/dist/src/providers/storage/LocalStorageProvider.js +25 -24
  906. package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
  907. package/dist/src/reducers/BasketReducer.d.ts +3 -3
  908. package/dist/src/reducers/BasketReducer.js +5 -4
  909. package/dist/src/reducers/BasketReducer.js.map +1 -1
  910. package/dist/src/routes/NaturallyProgressedStepRoute.d.ts +1 -1
  911. package/dist/src/routes/NaturallyProgressedStepRoute.js +5 -3
  912. package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
  913. package/dist/src/stories/Button.stories.d.ts +5 -0
  914. package/dist/src/stories/Button.stories.js +17 -0
  915. package/dist/src/stories/Button.stories.js.map +1 -0
  916. package/dist/src/stories/Card.stories.d.ts +8 -0
  917. package/dist/src/stories/Card.stories.js +17 -0
  918. package/dist/src/stories/Card.stories.js.map +1 -0
  919. package/dist/src/stories/Checkbox.stories.d.ts +5 -0
  920. package/dist/src/stories/Checkbox.stories.js +17 -0
  921. package/dist/src/stories/Checkbox.stories.js.map +1 -0
  922. package/dist/src/stories/EnhancedPhoneNumberField.stories.js +16 -0
  923. package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -0
  924. package/dist/src/stories/Icon.stories.d.ts +5 -0
  925. package/dist/src/stories/Icon.stories.js +16 -0
  926. package/dist/src/stories/Icon.stories.js.map +1 -0
  927. package/dist/src/stories/IconNavCard.stories.d.ts +16 -0
  928. package/dist/src/stories/IconNavCard.stories.js +28 -0
  929. package/dist/src/stories/IconNavCard.stories.js.map +1 -0
  930. package/dist/src/stories/IconText.stories.js +18 -0
  931. package/dist/src/stories/IconText.stories.js.map +1 -0
  932. package/dist/src/stories/ImageLoader.stories.d.ts +5 -0
  933. package/dist/src/stories/ImageLoader.stories.js +16 -0
  934. package/dist/src/stories/ImageLoader.stories.js.map +1 -0
  935. package/dist/src/stories/InputGroup.stories.d.ts +5 -0
  936. package/dist/src/stories/InputGroup.stories.js +16 -0
  937. package/dist/src/stories/InputGroup.stories.js.map +1 -0
  938. package/dist/src/stories/LargeLoader.stories.d.ts +5 -0
  939. package/dist/src/stories/LargeLoader.stories.js +14 -0
  940. package/dist/src/stories/LargeLoader.stories.js.map +1 -0
  941. package/dist/src/stories/PasswordBox.stories.d.ts +5 -0
  942. package/dist/src/stories/PasswordBox.stories.js +14 -0
  943. package/dist/src/stories/PasswordBox.stories.js.map +1 -0
  944. package/dist/src/stories/SSLSecureBadge.stories.d.ts +5 -0
  945. package/dist/src/stories/SSLSecureBadge.stories.js +14 -0
  946. package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -0
  947. package/dist/src/stories/SmallSpinner.stories.d.ts +5 -0
  948. package/dist/src/stories/SmallSpinner.stories.js +14 -0
  949. package/dist/src/stories/SmallSpinner.stories.js.map +1 -0
  950. package/dist/src/translations/Translation.d.ts +111 -1
  951. package/dist/src/translations/Translation.js +111 -1
  952. package/dist/src/translations/Translation.js.map +1 -1
  953. package/dist/src/translations/languages/en-gb.d.ts +1 -1
  954. package/dist/src/translations/languages/en-gb.js +112 -2
  955. package/dist/src/translations/languages/en-gb.js.map +1 -1
  956. package/dist/src/translations/languages/es.js +1 -1
  957. package/dist/src/translations/languages/es.js.map +1 -1
  958. package/dist/src/translations/languages/fr.js +1 -1
  959. package/dist/src/translations/languages/fr.js.map +1 -1
  960. package/dist/src/translations/languages/template.js +1 -1
  961. package/dist/src/translations/languages/template.js.map +1 -1
  962. package/dist/src/translations/languages/zh-cn.js +1 -1
  963. package/dist/src/translations/languages/zh-cn.js.map +1 -1
  964. package/dist/src/translations/languages/zh-tw.js +1 -1
  965. package/dist/src/translations/languages/zh-tw.js.map +1 -1
  966. package/dist/src/util/CalendarHelper.d.ts +1 -1
  967. package/dist/src/util/CalendarHelper.js +2 -1
  968. package/dist/src/util/CalendarHelper.js.map +1 -1
  969. package/dist/src/util/Color.d.ts +15 -14
  970. package/dist/src/util/Color.js +15 -14
  971. package/dist/src/util/Color.js.map +1 -1
  972. package/dist/src/util/DataLayer.d.ts +7 -7
  973. package/dist/src/util/DataLayer.js.map +1 -1
  974. package/dist/src/util/Debounce.d.ts +2 -0
  975. package/dist/src/util/Debounce.js +14 -0
  976. package/dist/src/util/Debounce.js.map +1 -0
  977. package/dist/src/util/EnumHelper.d.ts +3 -0
  978. package/dist/src/util/EnumHelper.js +10 -0
  979. package/dist/src/util/EnumHelper.js.map +1 -0
  980. package/dist/src/util/PaymentCardHelper.d.ts +9 -0
  981. package/dist/src/util/PaymentCardHelper.js +37 -0
  982. package/dist/src/util/PaymentCardHelper.js.map +1 -0
  983. package/dist/src/util/StepManager.d.ts +1 -1
  984. package/dist/src/util/StepManager.js +1 -3
  985. package/dist/src/util/StepManager.js.map +1 -1
  986. package/dist/src/util/StringHelper.js +1 -1
  987. package/dist/src/util/StringHelper.js.map +1 -1
  988. package/dist/src/util/TotalCalculator.js +5 -3
  989. package/dist/src/util/TotalCalculator.js.map +1 -1
  990. package/dist/src/util/Validation.d.ts +17 -1
  991. package/dist/src/util/Validation.js +25 -2
  992. package/dist/src/util/Validation.js.map +1 -1
  993. package/dist/test.bundle.js +1 -1
  994. package/dist/tests/jest/events/EventManager.test.js +4 -5
  995. package/dist/tests/jest/events/EventManager.test.js.map +1 -1
  996. package/dist/tests/jest/providers/LanguageProvider.test.d.ts +1 -1
  997. package/dist/tests/jest/providers/LanguageProvider.test.js +6 -7
  998. package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -1
  999. package/dist/tests/jest/reducers/BasketReducer.test.js +11 -11
  1000. package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -1
  1001. package/dist/tests/offline/RoomstayBestRateAlert.js +3 -3
  1002. package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -1
  1003. package/dist/tests/offline/entry/RSCompany.d.ts +1 -1
  1004. package/dist/tests/offline/entry/RSCompany.js +15 -55
  1005. package/dist/tests/offline/entry/RSCompany.js.map +1 -1
  1006. package/dist/tests/offline/entry/ReactWrapper.js +11 -6
  1007. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -1
  1008. package/dist/tests/offline/entry/allEngines.js +2 -2
  1009. package/dist/tests/offline/entry/allEngines.js.map +1 -1
  1010. package/dist/tests/offline/entry/components/TestPicker.js +32 -8
  1011. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
  1012. package/dist/tests/setupTests.d.ts +0 -0
  1013. package/dist/tests/setupTests.js +9 -0
  1014. package/dist/tests/setupTests.js.map +1 -0
  1015. package/dist/vendors.bundle.js +1 -1
  1016. package/dist/vendors.bundle.js.LICENSE.txt +33 -8
  1017. package/package.json +31 -43
  1018. package/dist/661.bundle.js +0 -1
  1019. package/dist/7.bundle.js +0 -1
  1020. package/dist/845.bundle.js +0 -1
  1021. package/dist/876.bundle.js +0 -1
  1022. package/dist/src/components/generic/BETooltip.d.ts +0 -7
  1023. package/dist/src/components/generic/BETooltip.js +0 -44
  1024. package/dist/src/components/generic/BETooltip.js.map +0 -1
  1025. package/dist/src/components/generic/Checkbox.js +0 -22
  1026. package/dist/src/components/generic/Checkbox.js.map +0 -1
  1027. package/dist/src/components/generic/Icon.js.map +0 -1
  1028. package/dist/src/components/generic/ScrollToTop.d.ts +0 -2
  1029. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.d.ts +0 -7
  1030. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +0 -30
  1031. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +0 -1
  1032. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.d.ts +0 -7
  1033. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.js +0 -15
  1034. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.js.map +0 -1
  1035. package/dist/src/events/actions/Promotion/PromotionAddedEvent.d.ts +0 -7
  1036. package/dist/src/events/actions/Promotion/PromotionAddedEvent.js +0 -15
  1037. package/dist/src/events/actions/Promotion/PromotionAddedEvent.js.map +0 -1
  1038. package/dist/src/events/actions/Promotion/PromotionClickedEvent.d.ts +0 -7
  1039. package/dist/src/events/actions/Promotion/PromotionClickedEvent.js +0 -15
  1040. package/dist/src/events/actions/Promotion/PromotionClickedEvent.js.map +0 -1
  1041. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.d.ts +0 -7
  1042. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.js +0 -15
  1043. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.js.map +0 -1
  1044. package/dist/src/handlers/HotelContextEventHandler.d.ts +0 -3
  1045. package/dist/src/handlers/HotelContextEventHandler.js +0 -9
  1046. package/dist/src/handlers/HotelContextEventHandler.js.map +0 -1
  1047. package/dist/src/hooks/ScrollLock.d.ts +0 -1
  1048. package/dist/src/hooks/ScrollLock.js +0 -17
  1049. package/dist/src/hooks/ScrollLock.js.map +0 -1
  1050. package/dist/src/models/Promotion/IPromotion.type.d.ts +0 -26
  1051. package/dist/src/models/Promotion/IPromotion.type.js.map +0 -1
  1052. package/dist/src/pages/steps/StepDate/StepDate.d.ts +0 -14
  1053. package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +0 -2
  1054. package/dist/src/providers/PromotionProvider.d.ts +0 -14
  1055. package/dist/src/providers/PromotionProvider.js +0 -210
  1056. package/dist/src/providers/PromotionProvider.js.map +0 -1
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasketContext = void 0;
3
+ exports.useBasket = exports.BasketContext = void 0;
4
4
  const react_1 = require("react");
5
- exports.BasketContext = react_1.createContext(null);
5
+ exports.BasketContext = (0, react_1.createContext)(null);
6
+ const useBasket = () => (0, react_1.useContext)(exports.BasketContext);
7
+ exports.useBasket = useBasket;
6
8
  //# sourceMappingURL=BasketContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BasketContext.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContext.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AAGzB,QAAA,aAAa,GAAG,qBAAa,CAAoB,IAAI,CAAC,CAAC","sourcesContent":["import { createContext } from 'react';\nimport { BasketContextType } from './BasketContextType';\n\nexport const BasketContext = createContext<BasketContextType>(null);\n"]}
1
+ {"version":3,"file":"BasketContext.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContext.ts"],"names":[],"mappings":";;;AAAA,iCAAkD;AAGrC,QAAA,aAAa,GAAG,IAAA,qBAAa,EAAoB,IAAI,CAAC,CAAC;AAE7D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAA,kBAAU,EAAC,qBAAa,CAAC,CAAC;AAA5C,QAAA,SAAS,aAAmC","sourcesContent":["import { createContext, useContext } from 'react';\nimport { BasketContextType } from '@frontend/contexts';\n\nexport const BasketContext = createContext<BasketContextType>(null);\n\nexport const useBasket = () => useContext(BasketContext);\n"]}
@@ -1,15 +1,13 @@
1
1
  import type * as dayjs from 'dayjs';
2
- import { IPromotion } from 'models/Promotion/IPromotion.type';
3
- import type { Addon } from '../../models/Addon/Addon';
4
- import type ReservationsDTO from '../../models/Api/ReservationsDTO';
5
- import type BasketAddonRow from '../../models/BasketAddonRow';
6
- import type BasketRow from '../../models/BasketRow';
7
- import type { RoomRate } from '../../models/Room/RoomRate';
2
+ import type { Addon } from 'models/Addon/Addon';
3
+ import type ReservationsDTO from 'models/Api/ReservationsDTO';
4
+ import type BasketAddonRow from 'models/BasketAddonRow';
5
+ import type BasketRow from 'models/BasketRow';
6
+ import type { RoomRate } from 'models/Room/RoomRate';
8
7
  export interface BasketContextType {
9
8
  selectedBasketRow: BasketRow;
10
9
  currentBasketRows: BasketRow[];
11
10
  basketAddonRows: BasketAddonRow[];
12
- loadedPromotion: IPromotion | null;
13
11
  startDate: dayjs.Dayjs;
14
12
  endDate: dayjs.Dayjs;
15
13
  addBasketRow: (row: BasketRow, selectThisRate?: boolean, neverSelectThisRate?: boolean) => void;
@@ -28,6 +26,8 @@ export interface BasketContextType {
28
26
  setEndDate: (date: dayjs.Dayjs) => void;
29
27
  hasCheckedOut: boolean;
30
28
  reservationData: ReservationsDTO;
29
+ booked: (data: ReservationsDTO) => void;
30
+ rollback: () => void;
31
31
  checkedOut: (data: ReservationsDTO) => void;
32
32
  clearSelectedRates: () => void;
33
33
  getRowForAddon: (selectedAddon: Addon) => BasketAddonRow;
@@ -1 +1 @@
1
- {"version":3,"file":"BasketContextType.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContextType.ts"],"names":[],"mappings":"","sourcesContent":["import type * as dayjs from 'dayjs';\nimport { IPromotion } from 'models/Promotion/IPromotion.type';\nimport type { Addon } from '../../models/Addon/Addon';\nimport type ReservationsDTO from '../../models/Api/ReservationsDTO';\nimport type BasketAddonRow from '../../models/BasketAddonRow';\nimport type BasketRow from '../../models/BasketRow';\nimport type { RoomRate } from '../../models/Room/RoomRate';\n\nexport interface BasketContextType {\n selectedBasketRow: BasketRow;\n currentBasketRows: BasketRow[];\n basketAddonRows: BasketAddonRow[];\n loadedPromotion: IPromotion | null;\n\n startDate: dayjs.Dayjs;\n endDate: dayjs.Dayjs;\n\n addBasketRow: (row: BasketRow, selectThisRate?: boolean, neverSelectThisRate?: boolean) => void;\n addRate: (rate: RoomRate, notify?: boolean) => Promise<void>;\n\n getAllValidRows: () => BasketRow[];\n getAllDatelessRows: () => BasketRow[];\n\n getNumberOfAdults: (withTranslation: boolean) => number | string;\n getNumberOfChildren: (withTranslation: boolean) => number | string;\n getNumberOfRooms: (withTranslation: boolean) => number | string;\n\n getTotalPrice: () => any;\n\n updateBasketRow: (row: BasketRow, updateGlobalDates?: boolean) => void;\n removeBasketRow: (row: BasketRow) => void;\n clearBasketRows: (confirm: boolean) => void;\n selectBasketRow: (row: BasketRow) => void;\n\n setStartDate: (date: dayjs.Dayjs) => void;\n setEndDate: (date: dayjs.Dayjs) => void;\n\n hasCheckedOut: boolean;\n reservationData: ReservationsDTO;\n checkedOut: (data: ReservationsDTO) => void;\n clearSelectedRates: () => void;\n\n getRowForAddon: (selectedAddon: Addon) => BasketAddonRow;\n\n setAddonQuantities: (addon: Addon, quantities: { quantity: number; adult: number; child: number }, selectedDate: string, selectedTime: string) => void;\n\n removeBasketAddonRow: (row: BasketAddonRow) => void;\n attemptSelectUnfilledRow: () => BasketRow | null;\n}\n"]}
1
+ {"version":3,"file":"BasketContextType.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContextType.ts"],"names":[],"mappings":"","sourcesContent":["import type * as dayjs from 'dayjs';\nimport type { Addon } from 'models/Addon/Addon';\nimport type ReservationsDTO from 'models/Api/ReservationsDTO';\nimport type BasketAddonRow from 'models/BasketAddonRow';\nimport type BasketRow from 'models/BasketRow';\nimport type { RoomRate } from 'models/Room/RoomRate';\n\nexport interface BasketContextType {\n selectedBasketRow: BasketRow;\n currentBasketRows: BasketRow[];\n basketAddonRows: BasketAddonRow[];\n\n startDate: dayjs.Dayjs;\n endDate: dayjs.Dayjs;\n\n addBasketRow: (row: BasketRow, selectThisRate?: boolean, neverSelectThisRate?: boolean) => void;\n addRate: (rate: RoomRate, notify?: boolean) => Promise<void>;\n\n getAllValidRows: () => BasketRow[];\n getAllDatelessRows: () => BasketRow[];\n\n getNumberOfAdults: (withTranslation: boolean) => number | string;\n getNumberOfChildren: (withTranslation: boolean) => number | string;\n getNumberOfRooms: (withTranslation: boolean) => number | string;\n\n getTotalPrice: () => any;\n\n updateBasketRow: (row: BasketRow, updateGlobalDates?: boolean) => void;\n removeBasketRow: (row: BasketRow) => void;\n clearBasketRows: (confirm: boolean) => void;\n selectBasketRow: (row: BasketRow) => void;\n\n setStartDate: (date: dayjs.Dayjs) => void;\n setEndDate: (date: dayjs.Dayjs) => void;\n\n hasCheckedOut: boolean;\n reservationData: ReservationsDTO;\n booked: (data: ReservationsDTO) => void;\n rollback: () => void;\n checkedOut: (data: ReservationsDTO) => void;\n clearSelectedRates: () => void;\n\n getRowForAddon: (selectedAddon: Addon) => BasketAddonRow;\n\n setAddonQuantities: (addon: Addon, quantities: { quantity: number; adult: number; child: number }, selectedDate: string, selectedTime: string) => void;\n\n removeBasketAddonRow: (row: BasketAddonRow) => void;\n attemptSelectUnfilledRow: () => BasketRow | null;\n}\n"]}
@@ -14,40 +14,38 @@ const dayjs = require("dayjs");
14
14
  const React = require("react");
15
15
  const react_1 = require("react");
16
16
  const react_i18next_1 = require("react-i18next");
17
- const react_router_1 = require("react-router");
17
+ const react_router_dom_1 = require("react-router-dom");
18
18
  const contexts_1 = require("@frontend/contexts");
19
19
  const contexts_2 = require("@frontend/contexts");
20
20
  const hooks_1 = require("@frontend/hooks");
21
- const NotificationContext_1 = require("../NotificationContext");
22
- const BasketReducer_1 = require("../../reducers/BasketReducer");
23
- const BookingAPI_1 = require("../../api/BookingAPI");
24
- const Icon_1 = require("../../components/generic/Icon");
25
- const MemberSignInModal_1 = require("../../components/steps/room/MemberSignInModal/MemberSignInModal");
26
- const BasketContextErrorHandler_1 = require("../../handlers/BasketContextErrorHandler");
27
- const BasketAddonRow_1 = require("../../models/BasketAddonRow");
28
- const BasketRow_1 = require("../../models/BasketRow");
29
- const StepAddon_1 = require("../../pages/steps/StepAddon/StepAddon");
30
- const StepRoom_1 = require("../../pages/steps/StepRoom/StepRoom");
31
- const StepThanks_1 = require("../../pages/steps/StepThanks/StepThanks");
32
- const InlineAddonStepFeature_1 = require("../../providers/feature/InlineAddonStepFeature");
33
- const DataLayer_1 = require("../../util/DataLayer");
34
- const StepManager_1 = require("../../util/StepManager");
35
- const StringHelper_1 = require("../../util/StringHelper");
36
- const Translation_1 = require("../../translations/Translation");
37
- const Text_1 = require("../../components/generic/Text");
38
- const PromotionProvider_1 = require("providers/PromotionProvider");
21
+ const BasketReducer_1 = require("reducers/BasketReducer");
22
+ const BookingAPI_1 = require("api/BookingAPI");
23
+ const Icon_1 = require("components/generic/Icon/Icon");
24
+ const MemberSignInModal_1 = require("components/steps/room/MemberSignInModal/MemberSignInModal");
25
+ const BasketContextErrorHandler_1 = require("handlers/BasketContextErrorHandler");
26
+ const BasketAddonRow_1 = require("models/BasketAddonRow");
27
+ const BasketRow_1 = require("models/BasketRow");
28
+ const StepAddon_1 = require("pages/steps/StepAddon/StepAddon");
29
+ const StepRoom_1 = require("pages/steps/StepRoom/StepRoom");
30
+ const StepThanks_1 = require("pages/steps/StepThanks/StepThanks");
31
+ const InlineAddonStepFeature_1 = require("providers/feature/InlineAddonStepFeature");
32
+ const DataLayer_1 = require("util/DataLayer");
33
+ const StepManager_1 = require("util/StepManager");
34
+ const StringHelper_1 = require("util/StringHelper");
35
+ const Translation_1 = require("translations/Translation");
36
+ const Text_1 = require("components/generic/Text");
39
37
  function BasketContextWrapper(props) {
40
38
  var _a, _b, _c;
41
- const { t } = react_i18next_1.useTranslation();
42
- const { hotel } = hooks_1.useCurrentHotel();
43
- const notifications = react_1.useContext(NotificationContext_1.default);
44
- const beContext = react_1.useContext(contexts_2.BookingEngineContext);
45
- const ccx = react_1.useContext(contexts_2.CompanyContext);
46
- const fullPageContext = react_1.useContext(contexts_1.FullPageEngineContext);
39
+ const { t } = (0, react_i18next_1.useTranslation)();
40
+ const { hotel } = (0, hooks_1.useCurrentHotel)();
41
+ const notifications = (0, react_1.useContext)(contexts_2.NotificationContext);
42
+ const beContext = (0, react_1.useContext)(contexts_2.BookingEngineContext);
43
+ const ccx = (0, react_1.useContext)(contexts_2.CompanyContext);
44
+ const memberContext = (0, contexts_1.useMemberContext)();
47
45
  const initialSession = (_a = beContext === null || beContext === void 0 ? void 0 : beContext.engine) === null || _a === void 0 ? void 0 : _a.getInitialSession();
48
- const [currentBasketRows, basketRowReducer] = react_1.useReducer(BasketReducer_1.BasketReducer, (_b = initialSession === null || initialSession === void 0 ? void 0 : initialSession.basketRows) !== null && _b !== void 0 ? _b : []);
49
- const [selectedBasketRow, setSelectedBasketRow] = react_1.useState(null);
50
- const [basketAddonRows, setBasketAddonRows] = react_1.useState([]);
46
+ const [currentBasketRows, basketRowReducer] = (0, react_1.useReducer)(BasketReducer_1.BasketReducer, (_b = initialSession === null || initialSession === void 0 ? void 0 : initialSession.basketRows) !== null && _b !== void 0 ? _b : []);
47
+ const [selectedBasketRow, setSelectedBasketRow] = (0, react_1.useState)(null);
48
+ const [basketAddonRows, setBasketAddonRows] = (0, react_1.useState)([]);
51
49
  let loadedStartDate;
52
50
  let loadedEndDate;
53
51
  if ((_c = initialSession === null || initialSession === void 0 ? void 0 : initialSession.basketRows) === null || _c === void 0 ? void 0 : _c.length) {
@@ -62,12 +60,12 @@ function BasketContextWrapper(props) {
62
60
  loadedEndDate = initialSession.endDate;
63
61
  }
64
62
  }
65
- const [startDate, setStartDate] = react_1.useState(loadedStartDate !== null && loadedStartDate !== void 0 ? loadedStartDate : null);
66
- const [endDate, setEndDate] = react_1.useState(loadedEndDate !== null && loadedEndDate !== void 0 ? loadedEndDate : null);
67
- const [hasCheckedOut, setHasCheckedOut] = react_1.useState(false);
68
- const [reservationData, setReservationData] = react_1.useState(null);
69
- const [knownErrorPromoCodes, setKnownErrorPromoCodes] = react_1.useState([]);
70
- const history = react_router_1.useHistory();
63
+ const [startDate, setStartDate] = (0, react_1.useState)(loadedStartDate !== null && loadedStartDate !== void 0 ? loadedStartDate : null);
64
+ const [endDate, setEndDate] = (0, react_1.useState)(loadedEndDate !== null && loadedEndDate !== void 0 ? loadedEndDate : null);
65
+ const [hasCheckedOut, setHasCheckedOut] = (0, react_1.useState)(false);
66
+ const [reservationData, setReservationData] = (0, react_1.useState)(initialSession.reservation || null);
67
+ const [knownErrorPromoCodes, setKnownErrorPromoCodes] = (0, react_1.useState)([]);
68
+ const history = (0, react_router_dom_1.useHistory)();
71
69
  BasketContextErrorHandler_1.BasketContextErrorHandler.handleAvailabilityWarnings = (warnings) => {
72
70
  warnings.map((warning) => {
73
71
  if (warning.toLowerCase().startsWith('invalid promo code')) {
@@ -99,7 +97,7 @@ function BasketContextWrapper(props) {
99
97
  }
100
98
  });
101
99
  };
102
- react_1.useEffect(() => {
100
+ (0, react_1.useEffect)(() => {
103
101
  var _a;
104
102
  if (!startDate || !endDate) {
105
103
  return;
@@ -126,12 +124,12 @@ function BasketContextWrapper(props) {
126
124
  workingContext.updateBasketRow(onlyBasketRow, false);
127
125
  }
128
126
  }, [startDate, endDate]);
129
- react_1.useEffect(() => {
130
- var _a, _b;
131
- (_a = beContext.sessionProvider) === null || _a === void 0 ? void 0 : _a.updateSession({ basketRows: currentBasketRows, step: (_b = fullPageContext === null || fullPageContext === void 0 ? void 0 : fullPageContext.currentStep) === null || _b === void 0 ? void 0 : _b.getName() });
132
- }, [currentBasketRows, fullPageContext === null || fullPageContext === void 0 ? void 0 : fullPageContext.currentStep, selectedBasketRow]);
127
+ (0, react_1.useEffect)(() => {
128
+ var _a;
129
+ (_a = beContext.sessionProvider) === null || _a === void 0 ? void 0 : _a.updateSession({ basketRows: currentBasketRows });
130
+ }, [currentBasketRows, selectedBasketRow]);
133
131
  const checkAndApplyMemberOnlyPromo = (row) => {
134
- if ((hotel === null || hotel === void 0 ? void 0 : hotel.memberOnlyPromoCode) && localStorage.getItem('hotel' + (hotel === null || hotel === void 0 ? void 0 : hotel.hotelID) + 'user') && !(row === null || row === void 0 ? void 0 : row.getPromoCode())) {
132
+ if ((hotel === null || hotel === void 0 ? void 0 : hotel.memberOnlyPromoCode) && localStorage.getItem('hotel' + (hotel === null || hotel === void 0 ? void 0 : hotel.hotelID) + 'user') && !row.getPromoCode()) {
135
133
  row.setPromoCode(hotel === null || hotel === void 0 ? void 0 : hotel.memberOnlyPromoCode);
136
134
  workingContext.updateBasketRow(row);
137
135
  }
@@ -139,12 +137,11 @@ function BasketContextWrapper(props) {
139
137
  /**
140
138
  * This is necessary as when we're adding our first row, hotel might not be set.
141
139
  */
142
- react_1.useEffect(() => {
140
+ (0, react_1.useEffect)(() => {
143
141
  checkAndApplyMemberOnlyPromo(selectedBasketRow);
144
142
  }, [hotel]);
145
143
  const returnAggregationAndTranslation = (reduction, translation) => {
146
- let count;
147
- count = typeof reduction === 'number' ? reduction : currentBasketRows.reduce((total, row) => total + reduction(row), 0);
144
+ const count = typeof reduction === 'number' ? reduction : currentBasketRows.reduce((total, row) => total + reduction(row), 0);
148
145
  if (translation) {
149
146
  return StringHelper_1.default.pluralWithDictAndCount(count, translation, t);
150
147
  }
@@ -161,14 +158,6 @@ function BasketContextWrapper(props) {
161
158
  }
162
159
  return null;
163
160
  };
164
- const updateBasketRow = (row, updateGlobalDates = true) => {
165
- if (updateGlobalDates && row.getID() === (selectedBasketRow === null || selectedBasketRow === void 0 ? void 0 : selectedBasketRow.getID())) {
166
- setStartDate(row.getStartDate());
167
- setEndDate(row.getEndDate());
168
- }
169
- basketRowReducer({ method: 'Update', row });
170
- };
171
- const { loadedPromotion } = PromotionProvider_1.usePromotionContainer({ selectedBasketRow, updateBasketRow });
172
161
  const workingContext = {
173
162
  startDate,
174
163
  endDate,
@@ -177,7 +166,6 @@ function BasketContextWrapper(props) {
177
166
  basketAddonRows,
178
167
  hasCheckedOut,
179
168
  reservationData,
180
- loadedPromotion,
181
169
  /**
182
170
  * When adding a basket row, will check if there is a `selectedBasketRow`
183
171
  * if one is already set, row will simply get added, otherwise selectedBasketRow
@@ -315,7 +303,13 @@ function BasketContextWrapper(props) {
315
303
  basketRowReducer({ method: 'Clear' });
316
304
  }
317
305
  },
318
- updateBasketRow,
306
+ updateBasketRow: (row, updateGlobalDates = true) => {
307
+ if (updateGlobalDates && row.getID() === (selectedBasketRow === null || selectedBasketRow === void 0 ? void 0 : selectedBasketRow.getID())) {
308
+ setStartDate(row.getStartDate());
309
+ setEndDate(row.getEndDate());
310
+ }
311
+ basketRowReducer({ method: 'Update', row });
312
+ },
319
313
  /**
320
314
  * Select passed basket row, and update all inputs (like start date)
321
315
  */
@@ -331,8 +325,22 @@ function BasketContextWrapper(props) {
331
325
  }),
332
326
  setStartDate,
333
327
  setEndDate,
334
- checkedOut: (data) => {
328
+ booked: (data) => {
335
329
  var _a;
330
+ (_a = beContext.sessionProvider) === null || _a === void 0 ? void 0 : _a.updateSession({
331
+ reservation: data,
332
+ });
333
+ setReservationData(data);
334
+ },
335
+ rollback: () => {
336
+ var _a;
337
+ (_a = beContext.sessionProvider) === null || _a === void 0 ? void 0 : _a.updateSession({
338
+ reservation: null,
339
+ });
340
+ setReservationData(null);
341
+ },
342
+ checkedOut: (data) => {
343
+ var _a, _b;
336
344
  setHasCheckedOut(true);
337
345
  setReservationData(data);
338
346
  setSelectedBasketRow(null);
@@ -342,8 +350,14 @@ function BasketContextWrapper(props) {
342
350
  row.setEndDate(dayjs().add(2, 'day'));
343
351
  basketRowReducer({ method: 'Add', row });
344
352
  setBasketAddonRows([]);
345
- (_a = beContext === null || beContext === void 0 ? void 0 : beContext.engine) === null || _a === void 0 ? void 0 : _a.getSessionProvider().deleteSession();
353
+ const sessionProvider = (_a = beContext === null || beContext === void 0 ? void 0 : beContext.engine) === null || _a === void 0 ? void 0 : _a.getSessionProvider();
354
+ sessionProvider.deleteSession();
355
+ sessionProvider === null || sessionProvider === void 0 ? void 0 : sessionProvider.initialize(undefined, (_b = beContext === null || beContext === void 0 ? void 0 : beContext.engine) === null || _b === void 0 ? void 0 : _b.getSource());
356
+ const params = new URLSearchParams(window.location.search);
357
+ params.delete('planpay_checkout_id');
358
+ window.history.replaceState({}, '', `${window.location.pathname}?${params}`);
346
359
  history.push(StepThanks_1.default.getStepUrl());
360
+ memberContext.fetchRoomstayMember();
347
361
  },
348
362
  clearSelectedRates: () => {
349
363
  setSelectedBasketRow(null);
@@ -379,7 +393,7 @@ function BasketContextWrapper(props) {
379
393
  }
380
394
  },
381
395
  };
382
- return (React.createElement(contexts_1.BasketContext.Provider, { value: workingContext },
396
+ return (React.createElement(contexts_2.BasketContext.Provider, { value: workingContext },
383
397
  props.children,
384
398
  React.createElement(MemberSignInModal_1.default, { isOpen: ccx.isSigningIn, onClose: ccx.closeMemberSignupModal })));
385
399
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BasketContextWrapper.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as dayjs from 'dayjs';\nimport * as React from 'react';\nimport { useContext, useReducer, useState, useEffect } from 'react';\n\nimport { useTranslation } from 'react-i18next';\nimport { useHistory } from 'react-router';\n\nimport { BasketContext, FullPageEngineContext } from '@frontend/contexts';\nimport type { BasketContextType } from '@frontend/contexts';\n\nimport { BookingEngineContext, CompanyContext, ErrorHandler } from '@frontend/contexts';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport NotificationContext from '../NotificationContext';\nimport { BasketReducer } from '../../reducers/BasketReducer';\nimport API from '../../api/BookingAPI';\nimport { IconType } from '../../components/generic/Icon';\nimport MemberSignInModal from '../../components/steps/room/MemberSignInModal/MemberSignInModal';\nimport { BasketContextErrorHandler } from '../../handlers/BasketContextErrorHandler';\nimport { Addon } from '../../models/Addon/Addon';\nimport ReservationsDTO from '../../models/Api/ReservationsDTO';\nimport BasketAddonRow from '../../models/BasketAddonRow';\nimport BasketRow from '../../models/BasketRow';\nimport { RoomRate } from '../../models/Room/RoomRate';\nimport StepAddon from '../../pages/steps/StepAddon/StepAddon';\nimport StepRoom from '../../pages/steps/StepRoom/StepRoom';\nimport StepThanks from '../../pages/steps/StepThanks/StepThanks';\nimport InlineAddonStepFeature from '../../providers/feature/InlineAddonStepFeature';\nimport DataLayer from '../../util/DataLayer';\nimport StepManager from '../../util/StepManager';\nimport StringHelper from '../../util/StringHelper';\nimport { Translation } from '../../translations/Translation';\nimport Text from '../../components/generic/Text';\nimport { usePromotionContainer } from 'providers/PromotionProvider';\n\nexport interface BasketContextWrapperProps {\n children: React.ReactNode;\n}\n\nexport function BasketContextWrapper(props: BasketContextWrapperProps) {\n const { t } = useTranslation();\n const { hotel } = useCurrentHotel();\n\n const notifications = useContext(NotificationContext);\n const beContext = useContext(BookingEngineContext);\n const ccx = useContext(CompanyContext);\n const fullPageContext = useContext(FullPageEngineContext);\n\n const initialSession = beContext?.engine?.getInitialSession();\n\n const [currentBasketRows, basketRowReducer] = useReducer(BasketReducer, initialSession?.basketRows ?? []);\n\n const [selectedBasketRow, setSelectedBasketRow] = useState<BasketRow>(null);\n const [basketAddonRows, setBasketAddonRows] = useState<BasketAddonRow[]>([]);\n\n let loadedStartDate: dayjs.Dayjs;\n let loadedEndDate: dayjs.Dayjs;\n\n if (initialSession?.basketRows?.length) {\n loadedStartDate = initialSession.basketRows[0].getStartDate();\n loadedEndDate = initialSession.basketRows[0].getEndDate();\n } else {\n if (initialSession?.startDate) {\n loadedStartDate = initialSession.startDate;\n }\n\n if (initialSession?.endDate) {\n loadedEndDate = initialSession.endDate;\n }\n }\n\n const [startDate, setStartDate] = useState<dayjs.Dayjs>(loadedStartDate ?? null);\n const [endDate, setEndDate] = useState<dayjs.Dayjs>(loadedEndDate ?? null);\n\n const [hasCheckedOut, setHasCheckedOut] = useState(false);\n const [reservationData, setReservationData] = useState<ReservationsDTO>(null);\n\n const [knownErrorPromoCodes, setKnownErrorPromoCodes] = useState<string[]>([]);\n\n const history = useHistory();\n\n BasketContextErrorHandler.handleAvailabilityWarnings = (warnings: string[]) => {\n warnings.map((warning) => {\n if (warning.toLowerCase().startsWith('invalid promo code')) {\n const promoCode = warning.substr(20);\n\n currentBasketRows.forEach((row) => {\n if (promoCode.toLowerCase() === row.getPromoCode().toLowerCase()) {\n row.setPromoCodeStatus('invalid');\n workingContext.updateBasketRow(row, false);\n }\n });\n\n if (!knownErrorPromoCodes.includes(promoCode.toUpperCase())) {\n setKnownErrorPromoCodes((oldCodes) => {\n return [...oldCodes, promoCode.toUpperCase()];\n });\n }\n } else {\n ErrorHandler.add({\n message: warning,\n });\n }\n });\n };\n\n BasketContextErrorHandler.handlePromoSuccess = (promo: string) => {\n currentBasketRows.forEach((row) => {\n if (row.getPromoCode() === promo && row.getPromoCode() && row.getPromoCodeStatus() !== 'valid') {\n row.setPromoCodeStatus('valid');\n workingContext.updateBasketRow(row, false);\n }\n });\n };\n\n useEffect(() => {\n if (!startDate || !endDate) {\n return;\n }\n\n beContext.sessionProvider?.updateSession({\n startDate,\n endDate,\n });\n\n // TODO re-visit this as we don't want to set dates for everything constantly\n workingContext.getAllDatelessRows().forEach((row: BasketRow) => {\n row.setStartDate(startDate);\n row.setEndDate(endDate);\n\n workingContext.updateBasketRow(row);\n });\n\n if (selectedBasketRow) {\n selectedBasketRow.setStartDate(startDate);\n selectedBasketRow.setEndDate(endDate);\n\n workingContext.updateBasketRow(selectedBasketRow, false);\n } else if (currentBasketRows.length === 1) {\n const onlyBasketRow = currentBasketRows[0];\n onlyBasketRow.setStartDate(startDate);\n onlyBasketRow.setEndDate(endDate);\n\n workingContext.updateBasketRow(onlyBasketRow, false);\n }\n }, [startDate, endDate]);\n\n useEffect(() => {\n beContext.sessionProvider?.updateSession({ basketRows: currentBasketRows, step: fullPageContext?.currentStep?.getName() });\n }, [currentBasketRows, fullPageContext?.currentStep, selectedBasketRow]);\n\n const checkAndApplyMemberOnlyPromo = (row: BasketRow) => {\n if (hotel?.memberOnlyPromoCode && localStorage.getItem('hotel' + hotel?.hotelID + 'user') && !row?.getPromoCode()) {\n row.setPromoCode(hotel?.memberOnlyPromoCode);\n workingContext.updateBasketRow(row);\n }\n };\n\n /**\n * This is necessary as when we're adding our first row, hotel might not be set.\n */\n useEffect(() => {\n checkAndApplyMemberOnlyPromo(selectedBasketRow);\n }, [hotel]);\n\n const returnAggregationAndTranslation = (reduction: ((row: BasketRow) => number) | number, translation?: string) => {\n let count;\n count = typeof reduction === 'number' ? reduction : currentBasketRows.reduce((total, row) => total + reduction(row), 0);\n\n if (translation) {\n return StringHelper.pluralWithDictAndCount(count, translation, t);\n } else {\n return count;\n }\n };\n\n const getNextAvailableBasketRow = (exclude?: BasketRow): BasketRow => {\n const arrayLength = currentBasketRows.length;\n for (let i = 0; i < arrayLength; i++) {\n if ((!exclude || (exclude && exclude.getID() !== currentBasketRows[i].getID())) && !currentBasketRows[i].getRate()) {\n return currentBasketRows[i];\n }\n }\n\n return null;\n };\n\n const updateBasketRow = (row: BasketRow, updateGlobalDates = true) => {\n if (updateGlobalDates && row.getID() === selectedBasketRow?.getID()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n }\n\n basketRowReducer({ method: 'Update', row });\n };\n\n const { loadedPromotion } = usePromotionContainer({ selectedBasketRow, updateBasketRow });\n\n const workingContext: BasketContextType = {\n startDate,\n endDate,\n\n selectedBasketRow,\n currentBasketRows,\n basketAddonRows,\n\n hasCheckedOut,\n reservationData,\n\n loadedPromotion,\n\n /**\n * When adding a basket row, will check if there is a `selectedBasketRow`\n * if one is already set, row will simply get added, otherwise selectedBasketRow\n * gets set\n */\n addBasketRow: (row: BasketRow, selectThisRate = false, neverSelectThisRate = false) => {\n if ((!row.getStartDate() || !row.getEndDate()) && startDate && endDate) {\n row.setStartDate(startDate);\n row.setEndDate(endDate);\n } else if (!startDate && !endDate && row.getStartDate() && row.getEndDate()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n }\n\n checkAndApplyMemberOnlyPromo(row);\n\n if (\n (!selectedBasketRow && (!row.isValid() || !currentBasketRows.length || currentBasketRows.length - workingContext.getAllValidRows().length === 0)) ||\n selectThisRate\n ) {\n if (!neverSelectThisRate) {\n setSelectedBasketRow(row);\n }\n }\n\n basketRowReducer({ method: 'Add', row });\n },\n\n //TODO: This function needs to be refactored to simplify a lot of this logic, and move notification raising to use the Event Manager instead\n addRate: async (rate: RoomRate, notify = true) => {\n let basketRow: BasketRow = null;\n let translationString: string;\n\n let addons = [];\n\n if (selectedBasketRow) {\n basketRow = selectedBasketRow;\n if (selectedBasketRow.getRate()) {\n translationString = Translation.Misc.RoomUpdatedNotification;\n } else {\n if (!selectedBasketRow.getStartDate() && selectedBasketRow.getEndDate()) {\n selectedBasketRow.setStartDate(startDate);\n selectedBasketRow.setEndDate(endDate);\n }\n\n translationString = Translation.Misc.RoomAddedNotification;\n }\n } else {\n if (!startDate || !endDate) {\n console.error('room selected with no date values.');\n return;\n }\n\n basketRow = new BasketRow(rate);\n\n basketRow.setStartDate(startDate);\n basketRow.setEndDate(endDate);\n\n translationString = Translation.Misc.RoomAddedNotification;\n }\n\n if (InlineAddonStepFeature.isActive()) {\n basketRow.setRate(rate); // TODO: Fix quick hack to make the Addons load\n addons = await API.Addons.findAddons([basketRow], hotel.hotelID);\n }\n\n basketRowReducer({ method: 'AddRate', rate, row: basketRow });\n\n try {\n DataLayer.instance.sendRoomRateAddToCart(rate, basketRow.getNumberOfDays(), startDate ?? basketRow.getStartDate(), endDate ?? basketRow.getEndDate());\n } catch (ex) {\n console.log('Failed recording basket Add event');\n }\n\n if (notify) {\n notifications.addNotification({\n icon: IconType.Bed,\n children: (\n <Text inline={true}>\n {t(translationString)} <strong className=\"u-marg-left--light\">{rate.getRoom().name}</strong>\n </Text>\n ),\n ttl: 3000,\n });\n }\n\n const nextAvailable = getNextAvailableBasketRow(basketRow);\n\n if (nextAvailable) {\n setSelectedBasketRow(nextAvailable);\n } else {\n setSelectedBasketRow(null);\n const isNextStepAddon = StepManager.getNextStepUrl(StepRoom) === StepAddon.getStepUrl();\n\n if (isNextStepAddon) {\n if (addons.length) {\n history.push(StepAddon.getStepUrl());\n } else {\n history.push(StepManager.getNextStepUrl(StepAddon));\n }\n } else {\n history.push(StepManager.getNextStepUrl(StepRoom));\n }\n }\n },\n\n /**\n * Filter global list of rooms based on their validity.\n *\n * Useful for getting a complete summary of all the rooms.\n */\n getAllValidRows: () => {\n return currentBasketRows.filter((item) => item.isValid());\n },\n getAllDatelessRows: () => {\n return currentBasketRows.filter((item) => !item.getStartDate() || !item.getEndDate());\n },\n\n getNumberOfAdults: (withTranslation = false) => {\n return returnAggregationAndTranslation((row) => row.getAdults(), withTranslation ? Translation.Step.Date.Adult : null);\n },\n\n getNumberOfChildren: (withTranslation = false) => {\n return returnAggregationAndTranslation((row) => row.getChildren(), withTranslation ? Translation.Step.Date.Child : null);\n },\n\n getNumberOfRooms: (withTranslation = false) => {\n return returnAggregationAndTranslation(currentBasketRows.length, withTranslation ? Translation.Step.Date.Room : null);\n },\n\n getTotalPrice: () => {\n let totalPrice = returnAggregationAndTranslation((row) => (row.isValid() ? row.getRate().getTotalPrice() : 0)) as number;\n\n basketAddonRows.forEach((row) => {\n totalPrice += row.getTotalPrice();\n });\n\n return totalPrice;\n },\n\n /**\n * Pops the provided row from the current basket array\n */\n removeBasketRow: (row: BasketRow) => {\n const rowsBeforeRemoval = currentBasketRows.length;\n\n basketRowReducer({ method: 'Remove', row });\n\n if (selectedBasketRow && row.getID() === selectedBasketRow.getID()) {\n setSelectedBasketRow(getNextAvailableBasketRow(row));\n }\n\n if (rowsBeforeRemoval === 1) {\n workingContext.addBasketRow(new BasketRow(), true);\n }\n },\n\n clearBasketRows: (confirm: boolean) => {\n if (confirm) {\n basketRowReducer({ method: 'Clear' });\n }\n },\n\n updateBasketRow,\n\n /**\n * Select passed basket row, and update all inputs (like start date)\n */\n selectBasketRow: async (row: BasketRow) => {\n if (row && row.isValid()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n\n setSelectedBasketRow(row);\n } else {\n setSelectedBasketRow(getNextAvailableBasketRow());\n }\n },\n\n setStartDate,\n setEndDate,\n\n checkedOut: (data: ReservationsDTO) => {\n setHasCheckedOut(true);\n setReservationData(data);\n\n setSelectedBasketRow(null);\n basketRowReducer({ method: 'Clear' });\n\n const row = new BasketRow();\n row.setStartDate(dayjs().add(1, 'day'));\n row.setEndDate(dayjs().add(2, 'day'));\n\n basketRowReducer({ method: 'Add', row });\n setBasketAddonRows([]);\n\n beContext?.engine?.getSessionProvider().deleteSession();\n history.push(StepThanks.getStepUrl());\n },\n\n clearSelectedRates: () => {\n setSelectedBasketRow(null);\n },\n\n getRowForAddon: (selectedAddon) => {\n if (selectedAddon === undefined) {\n return;\n }\n return basketAddonRows.find((r) => r.getAddon()?.code === selectedAddon?.code);\n },\n\n setAddonQuantities: (addon: Addon, quantities: { quantity: number; adult: number; child: number }, selectedDate: string, selectedTime: string) => {\n let addonRow = basketAddonRows.find((r) => r.getAddon()?.code === addon.code);\n if (addonRow === undefined) {\n addonRow = new BasketAddonRow(addon);\n basketAddonRows.push(addonRow);\n }\n\n addonRow.setQuantity(quantities.quantity ?? 0);\n addonRow.setAdultQuantity(quantities.adult ?? 0);\n addonRow.setChildQuantity(quantities.child ?? 0);\n addonRow.setSelectedDate(selectedDate);\n addonRow.setSelectedTime(addon.availability[selectedDate].selectorTimes ? selectedTime : undefined);\n\n setBasketAddonRows([...basketAddonRows]);\n },\n\n removeBasketAddonRow: (row: BasketAddonRow) => {\n setBasketAddonRows((oldRows) => oldRows.filter((item) => item.getID() !== row.getID()));\n },\n\n attemptSelectUnfilledRow: () => {\n const row = getNextAvailableBasketRow();\n\n if (row) {\n setSelectedBasketRow(row);\n return row;\n }\n },\n };\n\n return (\n <BasketContext.Provider value={workingContext}>\n {props.children}\n <MemberSignInModal isOpen={ccx.isSigningIn} onClose={ccx.closeMemberSignupModal} />\n </BasketContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"BasketContextWrapper.js","sourceRoot":"/","sources":["src/contexts/BasketContext/BasketContextWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as dayjs from 'dayjs';\nimport * as React from 'react';\nimport { useContext, useEffect, useReducer, useState } from 'react';\n\nimport { useTranslation } from 'react-i18next';\nimport { useHistory } from 'react-router-dom';\n\nimport { BasketContextType, RoomstayMemberContext, useMemberContext } from '@frontend/contexts';\nimport { BasketContext, BookingEngineContext, CompanyContext, ErrorHandler, NotificationContext } from '@frontend/contexts';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { BasketReducer } from 'reducers/BasketReducer';\nimport API from 'api/BookingAPI';\nimport { IconType } from 'components/generic/Icon/Icon';\nimport MemberSignInModal from 'components/steps/room/MemberSignInModal/MemberSignInModal';\nimport { BasketContextErrorHandler } from 'handlers/BasketContextErrorHandler';\nimport { Addon } from 'models/Addon/Addon';\nimport ReservationsDTO from 'models/Api/ReservationsDTO';\nimport BasketAddonRow from 'models/BasketAddonRow';\nimport BasketRow from 'models/BasketRow';\nimport { RoomRate } from 'models/Room/RoomRate';\nimport StepAddon from 'pages/steps/StepAddon/StepAddon';\nimport StepRoom from 'pages/steps/StepRoom/StepRoom';\nimport StepThanks from 'pages/steps/StepThanks/StepThanks';\nimport InlineAddonStepFeature from 'providers/feature/InlineAddonStepFeature';\nimport DataLayer from 'util/DataLayer';\nimport StepManager from 'util/StepManager';\nimport StringHelper from 'util/StringHelper';\nimport { Translation } from 'translations/Translation';\nimport Text from 'components/generic/Text';\n\nexport interface BasketContextWrapperProps {\n children: React.ReactNode;\n}\n\nexport function BasketContextWrapper(props: BasketContextWrapperProps) {\n const { t } = useTranslation();\n const { hotel } = useCurrentHotel();\n\n const notifications = useContext(NotificationContext);\n const beContext = useContext(BookingEngineContext);\n const ccx = useContext(CompanyContext);\n const memberContext = useMemberContext();\n\n const initialSession = beContext?.engine?.getInitialSession();\n\n const [currentBasketRows, basketRowReducer] = useReducer(BasketReducer, initialSession?.basketRows ?? []);\n\n const [selectedBasketRow, setSelectedBasketRow] = useState<BasketRow>(null);\n const [basketAddonRows, setBasketAddonRows] = useState<BasketAddonRow[]>([]);\n\n let loadedStartDate: dayjs.Dayjs;\n let loadedEndDate: dayjs.Dayjs;\n\n if (initialSession?.basketRows?.length) {\n loadedStartDate = initialSession.basketRows[0].getStartDate();\n loadedEndDate = initialSession.basketRows[0].getEndDate();\n } else {\n if (initialSession?.startDate) {\n loadedStartDate = initialSession.startDate;\n }\n\n if (initialSession?.endDate) {\n loadedEndDate = initialSession.endDate;\n }\n }\n\n const [startDate, setStartDate] = useState<dayjs.Dayjs>(loadedStartDate ?? null);\n const [endDate, setEndDate] = useState<dayjs.Dayjs>(loadedEndDate ?? null);\n\n const [hasCheckedOut, setHasCheckedOut] = useState(false);\n const [reservationData, setReservationData] = useState<ReservationsDTO>(initialSession.reservation || null);\n\n const [knownErrorPromoCodes, setKnownErrorPromoCodes] = useState<string[]>([]);\n\n const history = useHistory();\n\n BasketContextErrorHandler.handleAvailabilityWarnings = (warnings: string[]) => {\n warnings.map((warning) => {\n if (warning.toLowerCase().startsWith('invalid promo code')) {\n const promoCode = warning.substr(20);\n\n currentBasketRows.forEach((row) => {\n if (promoCode.toLowerCase() === row.getPromoCode().toLowerCase()) {\n row.setPromoCodeStatus('invalid');\n workingContext.updateBasketRow(row, false);\n }\n });\n\n if (!knownErrorPromoCodes.includes(promoCode.toUpperCase())) {\n setKnownErrorPromoCodes((oldCodes) => {\n return [...oldCodes, promoCode.toUpperCase()];\n });\n }\n } else {\n ErrorHandler.add({\n message: warning,\n });\n }\n });\n };\n\n BasketContextErrorHandler.handlePromoSuccess = (promo: string) => {\n currentBasketRows.forEach((row) => {\n if (row.getPromoCode() === promo && row.getPromoCode() && row.getPromoCodeStatus() !== 'valid') {\n row.setPromoCodeStatus('valid');\n workingContext.updateBasketRow(row, false);\n }\n });\n };\n\n useEffect(() => {\n if (!startDate || !endDate) {\n return;\n }\n\n beContext.sessionProvider?.updateSession({\n startDate,\n endDate,\n });\n\n // TODO re-visit this as we don't want to set dates for everything constantly\n workingContext.getAllDatelessRows().forEach((row: BasketRow) => {\n row.setStartDate(startDate);\n row.setEndDate(endDate);\n\n workingContext.updateBasketRow(row);\n });\n\n if (selectedBasketRow) {\n selectedBasketRow.setStartDate(startDate);\n selectedBasketRow.setEndDate(endDate);\n\n workingContext.updateBasketRow(selectedBasketRow, false);\n } else if (currentBasketRows.length === 1) {\n const onlyBasketRow = currentBasketRows[0];\n onlyBasketRow.setStartDate(startDate);\n onlyBasketRow.setEndDate(endDate);\n\n workingContext.updateBasketRow(onlyBasketRow, false);\n }\n }, [startDate, endDate]);\n\n useEffect(() => {\n beContext.sessionProvider?.updateSession({ basketRows: currentBasketRows });\n }, [currentBasketRows, selectedBasketRow]);\n\n const checkAndApplyMemberOnlyPromo = (row: BasketRow) => {\n if (hotel?.memberOnlyPromoCode && localStorage.getItem('hotel' + hotel?.hotelID + 'user') && !row.getPromoCode()) {\n row.setPromoCode(hotel?.memberOnlyPromoCode);\n workingContext.updateBasketRow(row);\n }\n };\n\n /**\n * This is necessary as when we're adding our first row, hotel might not be set.\n */\n useEffect(() => {\n checkAndApplyMemberOnlyPromo(selectedBasketRow);\n }, [hotel]);\n\n const returnAggregationAndTranslation = (reduction: ((row: BasketRow) => number) | number, translation?: string) => {\n const count = typeof reduction === 'number' ? reduction : currentBasketRows.reduce((total, row) => total + reduction(row), 0);\n\n if (translation) {\n return StringHelper.pluralWithDictAndCount(count, translation, t);\n } else {\n return count;\n }\n };\n\n const getNextAvailableBasketRow = (exclude?: BasketRow): BasketRow => {\n const arrayLength = currentBasketRows.length;\n for (let i = 0; i < arrayLength; i++) {\n if ((!exclude || (exclude && exclude.getID() !== currentBasketRows[i].getID())) && !currentBasketRows[i].getRate()) {\n return currentBasketRows[i];\n }\n }\n\n return null;\n };\n\n const workingContext: BasketContextType = {\n startDate,\n endDate,\n\n selectedBasketRow,\n currentBasketRows,\n basketAddonRows,\n\n hasCheckedOut,\n reservationData,\n\n /**\n * When adding a basket row, will check if there is a `selectedBasketRow`\n * if one is already set, row will simply get added, otherwise selectedBasketRow\n * gets set\n */\n addBasketRow: (row: BasketRow, selectThisRate = false, neverSelectThisRate = false) => {\n if ((!row.getStartDate() || !row.getEndDate()) && startDate && endDate) {\n row.setStartDate(startDate);\n row.setEndDate(endDate);\n } else if (!startDate && !endDate && row.getStartDate() && row.getEndDate()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n }\n\n checkAndApplyMemberOnlyPromo(row);\n\n if (\n (!selectedBasketRow && (!row.isValid() || !currentBasketRows.length || currentBasketRows.length - workingContext.getAllValidRows().length === 0)) ||\n selectThisRate\n ) {\n if (!neverSelectThisRate) {\n setSelectedBasketRow(row);\n }\n }\n\n basketRowReducer({ method: 'Add', row });\n },\n\n //TODO: This function needs to be refactored to simplify a lot of this logic, and move notification raising to use the Event Manager instead\n addRate: async (rate: RoomRate, notify = true) => {\n let basketRow: BasketRow = null;\n let translationString: string;\n\n let addons = [];\n\n if (selectedBasketRow) {\n basketRow = selectedBasketRow;\n if (selectedBasketRow.getRate()) {\n translationString = Translation.Misc.RoomUpdatedNotification;\n } else {\n if (!selectedBasketRow.getStartDate() && selectedBasketRow.getEndDate()) {\n selectedBasketRow.setStartDate(startDate);\n selectedBasketRow.setEndDate(endDate);\n }\n\n translationString = Translation.Misc.RoomAddedNotification;\n }\n } else {\n if (!startDate || !endDate) {\n console.error('room selected with no date values.');\n return;\n }\n\n basketRow = new BasketRow(rate);\n\n basketRow.setStartDate(startDate);\n basketRow.setEndDate(endDate);\n\n translationString = Translation.Misc.RoomAddedNotification;\n }\n\n if (InlineAddonStepFeature.isActive()) {\n basketRow.setRate(rate); // TODO: Fix quick hack to make the Addons load\n addons = await API.Addons.findAddons([basketRow], hotel.hotelID);\n }\n\n basketRowReducer({ method: 'AddRate', rate, row: basketRow });\n\n try {\n DataLayer.instance.sendRoomRateAddToCart(rate, basketRow.getNumberOfDays(), startDate ?? basketRow.getStartDate(), endDate ?? basketRow.getEndDate());\n } catch (ex) {\n console.log('Failed recording basket Add event');\n }\n\n if (notify) {\n notifications.addNotification({\n icon: IconType.Bed,\n children: (\n <Text inline={true}>\n {t(translationString)} <strong className=\"u-marg-left--light\">{rate.getRoom().name}</strong>\n </Text>\n ),\n ttl: 3000,\n });\n }\n\n const nextAvailable = getNextAvailableBasketRow(basketRow);\n\n if (nextAvailable) {\n setSelectedBasketRow(nextAvailable);\n } else {\n setSelectedBasketRow(null);\n const isNextStepAddon = StepManager.getNextStepUrl(StepRoom) === StepAddon.getStepUrl();\n\n if (isNextStepAddon) {\n if (addons.length) {\n history.push(StepAddon.getStepUrl());\n } else {\n history.push(StepManager.getNextStepUrl(StepAddon));\n }\n } else {\n history.push(StepManager.getNextStepUrl(StepRoom));\n }\n }\n },\n\n /**\n * Filter global list of rooms based on their validity.\n *\n * Useful for getting a complete summary of all the rooms.\n */\n getAllValidRows: () => {\n return currentBasketRows.filter((item) => item.isValid());\n },\n getAllDatelessRows: () => {\n return currentBasketRows.filter((item) => !item.getStartDate() || !item.getEndDate());\n },\n\n getNumberOfAdults: (withTranslation = false) => {\n return returnAggregationAndTranslation((row) => row.getAdults(), withTranslation ? Translation.Step.Date.Adult : null);\n },\n\n getNumberOfChildren: (withTranslation = false) => {\n return returnAggregationAndTranslation((row) => row.getChildren(), withTranslation ? Translation.Step.Date.Child : null);\n },\n\n getNumberOfRooms: (withTranslation = false) => {\n return returnAggregationAndTranslation(currentBasketRows.length, withTranslation ? Translation.Step.Date.Room : null);\n },\n\n getTotalPrice: () => {\n let totalPrice = returnAggregationAndTranslation((row) => (row.isValid() ? row.getRate().getTotalPrice() : 0)) as number;\n\n basketAddonRows.forEach((row) => {\n totalPrice += row.getTotalPrice();\n });\n\n return totalPrice;\n },\n\n /**\n * Pops the provided row from the current basket array\n */\n removeBasketRow: (row: BasketRow) => {\n const rowsBeforeRemoval = currentBasketRows.length;\n\n basketRowReducer({ method: 'Remove', row });\n\n if (selectedBasketRow && row.getID() === selectedBasketRow.getID()) {\n setSelectedBasketRow(getNextAvailableBasketRow(row));\n }\n\n if (rowsBeforeRemoval === 1) {\n workingContext.addBasketRow(new BasketRow(), true);\n }\n },\n\n clearBasketRows: (confirm: boolean) => {\n if (confirm) {\n basketRowReducer({ method: 'Clear' });\n }\n },\n\n updateBasketRow: (row: BasketRow, updateGlobalDates = true) => {\n if (updateGlobalDates && row.getID() === selectedBasketRow?.getID()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n }\n\n basketRowReducer({ method: 'Update', row });\n },\n\n /**\n * Select passed basket row, and update all inputs (like start date)\n */\n selectBasketRow: async (row: BasketRow) => {\n if (row && row.isValid()) {\n setStartDate(row.getStartDate());\n setEndDate(row.getEndDate());\n\n setSelectedBasketRow(row);\n } else {\n setSelectedBasketRow(getNextAvailableBasketRow());\n }\n },\n\n setStartDate,\n setEndDate,\n\n booked: (data: ReservationsDTO) => {\n beContext.sessionProvider?.updateSession({\n reservation: data,\n });\n setReservationData(data);\n },\n\n rollback: () => {\n beContext.sessionProvider?.updateSession({\n reservation: null,\n });\n setReservationData(null);\n },\n\n checkedOut: (data: ReservationsDTO) => {\n setHasCheckedOut(true);\n setReservationData(data);\n\n setSelectedBasketRow(null);\n basketRowReducer({ method: 'Clear' });\n\n const row = new BasketRow();\n row.setStartDate(dayjs().add(1, 'day'));\n row.setEndDate(dayjs().add(2, 'day'));\n\n basketRowReducer({ method: 'Add', row });\n setBasketAddonRows([]);\n\n const sessionProvider = beContext?.engine?.getSessionProvider();\n sessionProvider.deleteSession();\n sessionProvider?.initialize(undefined, beContext?.engine?.getSource());\n const params = new URLSearchParams(window.location.search);\n params.delete('planpay_checkout_id');\n window.history.replaceState({}, '', `${window.location.pathname}?${params}`);\n history.push(StepThanks.getStepUrl());\n\n memberContext.fetchRoomstayMember();\n },\n\n clearSelectedRates: () => {\n setSelectedBasketRow(null);\n },\n\n getRowForAddon: (selectedAddon) => {\n if (selectedAddon === undefined) {\n return;\n }\n return basketAddonRows.find((r) => r.getAddon()?.code === selectedAddon?.code);\n },\n\n setAddonQuantities: (addon: Addon, quantities: { quantity: number; adult: number; child: number }, selectedDate: string, selectedTime: string) => {\n let addonRow = basketAddonRows.find((r) => r.getAddon()?.code === addon.code);\n if (addonRow === undefined) {\n addonRow = new BasketAddonRow(addon);\n basketAddonRows.push(addonRow);\n }\n\n addonRow.setQuantity(quantities.quantity ?? 0);\n addonRow.setAdultQuantity(quantities.adult ?? 0);\n addonRow.setChildQuantity(quantities.child ?? 0);\n addonRow.setSelectedDate(selectedDate);\n addonRow.setSelectedTime(addon.availability[selectedDate].selectorTimes ? selectedTime : undefined);\n\n setBasketAddonRows([...basketAddonRows]);\n },\n\n removeBasketAddonRow: (row: BasketAddonRow) => {\n setBasketAddonRows((oldRows) => oldRows.filter((item) => item.getID() !== row.getID()));\n },\n\n attemptSelectUnfilledRow: () => {\n const row = getNextAvailableBasketRow();\n\n if (row) {\n setSelectedBasketRow(row);\n return row;\n }\n },\n };\n\n return (\n <BasketContext.Provider value={workingContext}>\n {props.children}\n <MemberSignInModal isOpen={ccx.isSigningIn} onClose={ccx.closeMemberSignupModal} />\n </BasketContext.Provider>\n );\n}\n"]}
@@ -1,3 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import { BookingEngineContextType } from '@frontend/contexts';
3
3
  export declare const BookingEngineContext: import("react").Context<BookingEngineContextType>;
4
+ export declare const useBookingEngine: () => BookingEngineContextType;
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BookingEngineContext = void 0;
3
+ exports.useBookingEngine = exports.BookingEngineContext = void 0;
4
4
  const react_1 = require("react");
5
- exports.BookingEngineContext = react_1.createContext(null);
5
+ exports.BookingEngineContext = (0, react_1.createContext)(null);
6
+ const useBookingEngine = () => (0, react_1.useContext)(exports.BookingEngineContext);
7
+ exports.useBookingEngine = useBookingEngine;
6
8
  //# sourceMappingURL=BookingEngineContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BookingEngineContext.js","sourceRoot":"/","sources":["src/contexts/BookingEngineContext/BookingEngineContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAsC;AAGzB,QAAA,oBAAoB,GAAG,qBAAa,CAA2B,IAAI,CAAC,CAAC","sourcesContent":["import { createContext } from 'react';\nimport { BookingEngineContextType } from '@frontend/contexts';\n\nexport const BookingEngineContext = createContext<BookingEngineContextType>(null);\n"]}
1
+ {"version":3,"file":"BookingEngineContext.js","sourceRoot":"/","sources":["src/contexts/BookingEngineContext/BookingEngineContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAGrC,QAAA,oBAAoB,GAAG,IAAA,qBAAa,EAA2B,IAAI,CAAC,CAAC;AAE3E,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAA,kBAAU,EAAC,4BAAoB,CAAC,CAAC;AAA1D,QAAA,gBAAgB,oBAA0C","sourcesContent":["import { createContext, useContext } from 'react';\nimport { BookingEngineContextType } from '@frontend/contexts';\n\nexport const BookingEngineContext = createContext<BookingEngineContextType>(null);\n\nexport const useBookingEngine = () => useContext(BookingEngineContext);\n"]}
@@ -3,7 +3,7 @@ import type Filter from 'models/Room/Filters/Filter';
3
3
  import type { RoomSort } from 'providers/RoomSortProvider';
4
4
  import type SessionProvider from 'providers/SessionProvider';
5
5
  import type ScreenSize from 'util/ScreenSize';
6
- export declare type BookingEngineContextType = {
6
+ export type BookingEngineContextType = {
7
7
  currentRoomSort: RoomSort;
8
8
  currentFilters: EngineFilterType;
9
9
  screenSize: ScreenSize;
@@ -12,6 +12,6 @@ export declare type BookingEngineContextType = {
12
12
  setCurrentRoomSort: (sort: RoomSort) => void;
13
13
  setCurrentFilters: (filters: EngineFilterType) => void;
14
14
  };
15
- export declare type EngineFilterType = {
15
+ export type EngineFilterType = {
16
16
  [code: string]: Filter;
17
17
  };
@@ -8,10 +8,10 @@ const ScreenSize_1 = require("util/ScreenSize");
8
8
  const contexts_1 = require("@frontend/contexts");
9
9
  function BookingEngineContextWrapper({ engine, children }) {
10
10
  const sessionProvider = engine.getSessionProvider();
11
- const [screenSize, setScreenSize] = react_1.useState(null);
12
- const [currentRoomSort, setCurrentRoomSort] = react_1.useState(RoomSortProvider_1.RoomSort.PriceLow);
13
- const [currentFilters, setCurrentFilters] = react_1.useState({});
14
- react_1.useEffect(() => {
11
+ const [screenSize, setScreenSize] = (0, react_1.useState)(null);
12
+ const [currentRoomSort, setCurrentRoomSort] = (0, react_1.useState)(RoomSortProvider_1.RoomSort.PriceLow);
13
+ const [currentFilters, setCurrentFilters] = (0, react_1.useState)({});
14
+ (0, react_1.useEffect)(() => {
15
15
  let isCancelled = false;
16
16
  const onResize = () => {
17
17
  if (!isCancelled) {
@@ -1 +1 @@
1
- {"version":3,"file":"BookingEngineContextWrapper.js","sourceRoot":"/","sources":["src/contexts/BookingEngineContext/BookingEngineContextWrapper.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,iCAA4C;AAG5C,iEAAsD;AACtD,gDAAyC;AACzC,iDAA4E;AAO5E,SAAgB,2BAA2B,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAoC;IAC9F,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAEpD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,gBAAQ,CAAa,IAAI,CAAC,CAAC;IAE/D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,gBAAQ,CAAW,2BAAQ,CAAC,QAAQ,CAAC,CAAC;IACpF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,gBAAQ,CAAmB,EAAE,CAAC,CAAC;IAE3E,iBAAS,CAAC,GAAG,EAAE;QACX,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,MAAM,QAAQ,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,WAAW,EAAE;gBACd,KAAK,MAAM,IAAI,IAAI,oBAAU,EAAE;oBAC3B,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;wBACnC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC5B,MAAM;qBACT;iBACJ;aACJ;QACL,CAAC,CAAC;QAEF,QAAQ,EAAE,CAAC;QAEX,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE5C,OAAO,GAAG,EAAE;YACR,WAAW,GAAG,IAAI,CAAC;YAEnB,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG;QACzB,eAAe;QACf,cAAc;QAEd,UAAU;QAEV,UAAU;QACV,kBAAkB;QAClB,iBAAiB;QAEjB,MAAM;QACN,eAAe;KAClB,CAAC;IAEF,OAAO,oBAAC,+BAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,oBAAoB,IAAG,QAAQ,CAAiC,CAAC;AAClH,CAAC;AAhDD,kEAgDC","sourcesContent":["import * as React from 'react';\nimport { useState, useEffect } from 'react';\n\nimport type { BaseEngine, BaseEngineConfig } from 'engines/BaseEngine';\nimport { RoomSort } from 'providers/RoomSortProvider';\nimport ScreenSize from 'util/ScreenSize';\nimport { BookingEngineContext, EngineFilterType } from '@frontend/contexts';\n\nexport interface BookingEngineContextWrapperProps {\n children: React.ReactNode;\n engine: BaseEngine<BaseEngineConfig>;\n}\n\nexport function BookingEngineContextWrapper({ engine, children }: BookingEngineContextWrapperProps) {\n const sessionProvider = engine.getSessionProvider();\n\n const [screenSize, setScreenSize] = useState<ScreenSize>(null);\n\n const [currentRoomSort, setCurrentRoomSort] = useState<RoomSort>(RoomSort.PriceLow);\n const [currentFilters, setCurrentFilters] = useState<EngineFilterType>({});\n\n useEffect(() => {\n let isCancelled = false;\n\n const onResize = () => {\n if (!isCancelled) {\n for (const size in ScreenSize) {\n if (window.innerWidth <= Number(size)) {\n setScreenSize(Number(size));\n break;\n }\n }\n }\n };\n\n onResize();\n\n window.addEventListener('resize', onResize);\n\n return () => {\n isCancelled = true;\n\n window.removeEventListener('resize', onResize);\n };\n }, []);\n\n const bookingEngineContext = {\n currentRoomSort,\n currentFilters,\n\n screenSize,\n\n // Setters\n setCurrentRoomSort,\n setCurrentFilters,\n\n engine,\n sessionProvider,\n };\n\n return <BookingEngineContext.Provider value={bookingEngineContext}>{children}</BookingEngineContext.Provider>;\n}\n"]}
1
+ {"version":3,"file":"BookingEngineContextWrapper.js","sourceRoot":"/","sources":["src/contexts/BookingEngineContext/BookingEngineContextWrapper.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,iCAA4C;AAG5C,iEAAsD;AACtD,gDAAyC;AACzC,iDAA4E;AAO5E,SAAgB,2BAA2B,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAoC;IAC9F,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;IAEpD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAa,IAAI,CAAC,CAAC;IAE/D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAW,2BAAQ,CAAC,QAAQ,CAAC,CAAC;IACpF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAmB,EAAE,CAAC,CAAC;IAE3E,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,MAAM,QAAQ,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,WAAW,EAAE;gBACd,KAAK,MAAM,IAAI,IAAI,oBAAU,EAAE;oBAC3B,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;wBACnC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC5B,MAAM;qBACT;iBACJ;aACJ;QACL,CAAC,CAAC;QAEF,QAAQ,EAAE,CAAC;QAEX,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE5C,OAAO,GAAG,EAAE;YACR,WAAW,GAAG,IAAI,CAAC;YAEnB,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC,CAAC;IACN,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG;QACzB,eAAe;QACf,cAAc;QAEd,UAAU;QAEV,UAAU;QACV,kBAAkB;QAClB,iBAAiB;QAEjB,MAAM;QACN,eAAe;KAClB,CAAC;IAEF,OAAO,oBAAC,+BAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,oBAAoB,IAAG,QAAQ,CAAiC,CAAC;AAClH,CAAC;AAhDD,kEAgDC","sourcesContent":["import * as React from 'react';\nimport { useState, useEffect } from 'react';\n\nimport type { BaseEngine, BaseEngineConfig } from 'engines/BaseEngine';\nimport { RoomSort } from 'providers/RoomSortProvider';\nimport ScreenSize from 'util/ScreenSize';\nimport { BookingEngineContext, EngineFilterType } from '@frontend/contexts';\n\nexport interface BookingEngineContextWrapperProps {\n children: React.ReactNode;\n engine: BaseEngine<BaseEngineConfig>;\n}\n\nexport function BookingEngineContextWrapper({ engine, children }: BookingEngineContextWrapperProps) {\n const sessionProvider = engine.getSessionProvider();\n\n const [screenSize, setScreenSize] = useState<ScreenSize>(null);\n\n const [currentRoomSort, setCurrentRoomSort] = useState<RoomSort>(RoomSort.PriceLow);\n const [currentFilters, setCurrentFilters] = useState<EngineFilterType>({});\n\n useEffect(() => {\n let isCancelled = false;\n\n const onResize = () => {\n if (!isCancelled) {\n for (const size in ScreenSize) {\n if (window.innerWidth <= Number(size)) {\n setScreenSize(Number(size));\n break;\n }\n }\n }\n };\n\n onResize();\n\n window.addEventListener('resize', onResize);\n\n return () => {\n isCancelled = true;\n\n window.removeEventListener('resize', onResize);\n };\n }, []);\n\n const bookingEngineContext = {\n currentRoomSort,\n currentFilters,\n\n screenSize,\n\n // Setters\n setCurrentRoomSort,\n setCurrentFilters,\n\n engine,\n sessionProvider,\n };\n\n return <BookingEngineContext.Provider value={bookingEngineContext}>{children}</BookingEngineContext.Provider>;\n}\n"]}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CompanyContext = void 0;
4
4
  const react_1 = require("react");
5
- exports.CompanyContext = react_1.createContext(null);
5
+ exports.CompanyContext = (0, react_1.createContext)(null);
6
6
  //# sourceMappingURL=CompanyContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompanyContext.js","sourceRoot":"/","sources":["src/contexts/CompanyContext/CompanyContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAsC;AAGzB,QAAA,cAAc,GAAG,qBAAa,CAAqB,IAAI,CAAC,CAAC","sourcesContent":["import { createContext } from 'react';\nimport { CompanyContextType } from '@frontend/contexts';\n\nexport const CompanyContext = createContext<CompanyContextType>(null);\n"]}
1
+ {"version":3,"file":"CompanyContext.js","sourceRoot":"/","sources":["src/contexts/CompanyContext/CompanyContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAsC;AAGzB,QAAA,cAAc,GAAG,IAAA,qBAAa,EAAqB,IAAI,CAAC,CAAC","sourcesContent":["import { createContext } from 'react';\nimport { CompanyContextType } from '@frontend/contexts';\n\nexport const CompanyContext = createContext<CompanyContextType>(null);\n"]}
@@ -1,11 +1,9 @@
1
- import { IPromotion } from 'models/Promotion/IPromotion.type';
2
- import type BasketRow from '../../models/BasketRow';
3
- import type { Company } from '../../models/Client/Hotel/Company';
4
- import type { Hotel } from '../../models/Client/Hotel/Hotel';
5
- import type { Language } from '../../providers/LanguageProvider';
6
- export declare type CompanyContextType = Company & {
1
+ import type BasketRow from 'models/BasketRow';
2
+ import type { Company } from 'models/Client/Hotel/Company';
3
+ import type { Hotel } from 'models/Client/Hotel/Hotel';
4
+ import type { Language } from 'providers/LanguageProvider';
5
+ export type CompanyContextType = Company & {
7
6
  selectedHotelID: string;
8
- memberOnlyModalPromotion: IPromotion | null;
9
7
  currentCurrency: string;
10
8
  currentLanguage: Language;
11
9
  signedInUser: string;
@@ -15,7 +13,13 @@ export declare type CompanyContextType = Company & {
15
13
  setCurrentCurrency: (currency: string) => void;
16
14
  setCurrentLanguage: (lang: Language) => void;
17
15
  closeMemberSignupModal: () => void;
18
- openMemberSignupModal: (promotion?: IPromotion) => void;
16
+ openMemberSignupModal: () => void;
19
17
  signUserIn: (user: string) => void;
20
- refreshHotelFromApi: (hotelId: string) => void;
18
+ /**
19
+ * Returns information stored on the Hotel, also calls the API to fetch updated information from the Hotel if it's not been updated already
20
+ *
21
+ * @param hotelId
22
+ * @returns
23
+ */
24
+ getHotel: (hotelId: string) => Promise<Hotel>;
21
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CompanyContextType.type.js","sourceRoot":"/","sources":["src/contexts/CompanyContext/CompanyContextType.type.ts"],"names":[],"mappings":"","sourcesContent":["import { IPromotion } from 'models/Promotion/IPromotion.type';\nimport type BasketRow from '../../models/BasketRow';\nimport type { Company } from '../../models/Client/Hotel/Company';\nimport type { Hotel } from '../../models/Client/Hotel/Hotel';\nimport type { Language } from '../../providers/LanguageProvider';\n\nexport type CompanyContextType = Company & {\n selectedHotelID: string;\n\n memberOnlyModalPromotion: IPromotion | null;\n\n currentCurrency: string;\n currentLanguage: Language;\n\n signedInUser: string;\n isSigningIn: boolean;\n\n updateLowestPricePerNight: (hotelId: string | Hotel, row: BasketRow) => void;\n changeHotel: (hotel: string | Hotel) => boolean;\n\n setCurrentCurrency: (currency: string) => void;\n setCurrentLanguage: (lang: Language) => void;\n\n closeMemberSignupModal: () => void;\n openMemberSignupModal: (promotion?: IPromotion) => void;\n signUserIn: (user: string) => void;\n\n refreshHotelFromApi: (hotelId: string) => void;\n};\n"]}
1
+ {"version":3,"file":"CompanyContextType.type.js","sourceRoot":"/","sources":["src/contexts/CompanyContext/CompanyContextType.type.ts"],"names":[],"mappings":"","sourcesContent":["import type BasketRow from 'models/BasketRow';\nimport type { Company } from 'models/Client/Hotel/Company';\nimport type { Hotel } from 'models/Client/Hotel/Hotel';\nimport type { Language } from 'providers/LanguageProvider';\n\nexport type CompanyContextType = Company & {\n selectedHotelID: string;\n\n currentCurrency: string;\n currentLanguage: Language;\n\n signedInUser: string;\n isSigningIn: boolean;\n\n updateLowestPricePerNight: (hotelId: string | Hotel, row: BasketRow) => void;\n changeHotel: (hotel: string | Hotel) => boolean;\n\n setCurrentCurrency: (currency: string) => void;\n setCurrentLanguage: (lang: Language) => void;\n\n closeMemberSignupModal: () => void;\n openMemberSignupModal: () => void;\n signUserIn: (user: string) => void;\n\n /**\n * Returns information stored on the Hotel, also calls the API to fetch updated information from the Hotel if it's not been updated already\n *\n * @param hotelId\n * @returns\n */\n getHotel: (hotelId: string) => Promise<Hotel>;\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import { ReactChild } from 'react';
2
- import type { ConfigCompany } from '../../models/Client/Hotel/Company';
2
+ import type { ConfigCompany } from 'models/Client/Hotel/Company';
3
3
  interface CompanyContextWrapperProps {
4
4
  children: ReactChild;
5
5
  configCompany: ConfigCompany;