@roomstay/frontend 2.1.6 → 2.1.8

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 (914) hide show
  1. package/dist/14.bundle.js +1 -0
  2. package/dist/151.bundle.js +1 -0
  3. package/dist/201.bundle.js +1 -1
  4. package/dist/279.bundle.js +1 -1
  5. package/dist/370.bundle.js +1 -1
  6. package/dist/399.bundle.js +2 -0
  7. package/dist/399.bundle.js.LICENSE.txt +30 -0
  8. package/dist/449.bundle.js +1 -1
  9. package/dist/559.bundle.js +1 -0
  10. package/dist/760.bundle.js +1 -1
  11. package/dist/815.bundle.js +1 -0
  12. package/dist/855.bundle.js +1 -0
  13. package/dist/873.bundle.js +1 -1
  14. package/dist/882.bundle.js +1 -1
  15. package/dist/962.bundle.js +1 -0
  16. package/dist/972.bundle.js +1 -1
  17. package/dist/main.bundle.js +1 -1
  18. package/dist/src/animations/AutoAutoHeight.d.ts +1 -1
  19. package/dist/src/animations/AutoAutoHeight.js +11 -34
  20. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  21. package/dist/src/animations/Fade.d.ts +1 -1
  22. package/dist/src/animations/Fade.js +3 -4
  23. package/dist/src/animations/Fade.js.map +1 -1
  24. package/dist/src/api/AddonAPI.js +3 -2
  25. package/dist/src/api/AddonAPI.js.map +1 -1
  26. package/dist/src/api/AvailabilityAPI.d.ts +2 -2
  27. package/dist/src/api/AvailabilityAPI.js +6 -6
  28. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  29. package/dist/src/api/BaseAPI.d.ts +4 -4
  30. package/dist/src/api/BaseAPI.js +30 -24
  31. package/dist/src/api/BaseAPI.js.map +1 -1
  32. package/dist/src/api/ExchangeRateAPI.d.ts +1 -1
  33. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  34. package/dist/src/api/HotelAPI.js +1 -1
  35. package/dist/src/api/HotelAPI.js.map +1 -1
  36. package/dist/src/api/ReservationAPI.d.ts +1 -1
  37. package/dist/src/api/ReservationAPI.js +2 -1
  38. package/dist/src/api/ReservationAPI.js.map +1 -1
  39. package/dist/src/api/SessionAPI.d.ts +1 -1
  40. package/dist/src/api/SessionAPI.js +2 -2
  41. package/dist/src/api/SessionAPI.js.map +1 -1
  42. package/dist/src/components/User/Forms/ForgotPasswordForm.js +19 -23
  43. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
  44. package/dist/src/components/User/Forms/SignInForm.js +50 -52
  45. package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
  46. package/dist/src/components/User/Forms/SignUpForm.js +61 -62
  47. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
  48. package/dist/src/components/generic/Alert.js +3 -26
  49. package/dist/src/components/generic/Alert.js.map +1 -1
  50. package/dist/src/components/generic/BEButton.d.ts +1 -1
  51. package/dist/src/components/generic/BEButton.js +8 -7
  52. package/dist/src/components/generic/BEButton.js.map +1 -1
  53. package/dist/src/components/generic/BESelect.js +2 -0
  54. package/dist/src/components/generic/BESelect.js.map +1 -0
  55. package/dist/src/components/generic/BackButton.js +2 -26
  56. package/dist/src/components/generic/BackButton.js.map +1 -1
  57. package/dist/src/components/generic/BookNowPayLaterInfoBlock.d.ts +2 -1
  58. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +9 -9
  59. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  60. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +1 -3
  61. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -1
  62. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +1 -1
  63. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
  64. package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +1 -1
  65. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js +1 -1
  66. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -1
  67. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +6 -4
  68. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
  69. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +1 -1
  70. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
  71. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +5 -4
  72. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
  73. package/dist/src/components/generic/Card/Card/Card.js +4 -27
  74. package/dist/src/components/generic/Card/Card/Card.js.map +1 -1
  75. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +1 -1
  76. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +8 -8
  77. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
  78. package/dist/src/components/generic/Checkbox/Checkbox.d.ts +1 -1
  79. package/dist/src/components/generic/Checkbox/Checkbox.js +8 -8
  80. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
  81. package/dist/src/components/generic/Countdown.js +6 -29
  82. package/dist/src/components/generic/Countdown.js.map +1 -1
  83. package/dist/src/components/generic/Currency.js +10 -10
  84. package/dist/src/components/generic/Currency.js.map +1 -1
  85. package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +3 -3
  86. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +28 -28
  87. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -1
  88. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.d.ts +13 -7
  89. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js +4 -39
  90. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js.map +1 -1
  91. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +18 -16
  92. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -1
  93. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +4 -27
  94. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -1
  95. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +10 -10
  96. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -1
  97. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.d.ts +3 -3
  98. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +13 -36
  99. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -1
  100. package/dist/src/components/generic/Distance.js +5 -28
  101. package/dist/src/components/generic/Distance.js.map +1 -1
  102. package/dist/src/components/generic/ForwardedSelect.d.ts +1 -1
  103. package/dist/src/components/generic/ForwardedSelect.js +9 -29
  104. package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
  105. package/dist/src/components/generic/Headline.d.ts +1 -1
  106. package/dist/src/components/generic/Headline.js +5 -30
  107. package/dist/src/components/generic/Headline.js.map +1 -1
  108. package/dist/src/components/generic/Icon/Icon.d.ts +1 -0
  109. package/dist/src/components/generic/Icon/Icon.js +6 -28
  110. package/dist/src/components/generic/Icon/Icon.js.map +1 -1
  111. package/dist/src/components/generic/IconText/IconText.js +5 -4
  112. package/dist/src/components/generic/IconText/IconText.js.map +1 -1
  113. package/dist/src/components/generic/InputGroup/InputGroup.js +6 -29
  114. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  115. package/dist/src/components/generic/Layout/StepLayout/StepLayoutContainer.d.ts +3 -0
  116. package/dist/src/components/generic/Layout/StepLayout/StepLayoutContainer.js +28 -0
  117. package/dist/src/components/generic/Layout/StepLayout/StepLayoutContainer.js.map +1 -0
  118. package/dist/src/components/generic/Layout/StepLayout/StepLayoutLeftContent.d.ts +3 -0
  119. package/dist/src/components/generic/Layout/StepLayout/StepLayoutLeftContent.js +25 -0
  120. package/dist/src/components/generic/Layout/StepLayout/StepLayoutLeftContent.js.map +1 -0
  121. package/dist/src/components/generic/Layout/StepLayout/StepLayoutRightContent.d.ts +3 -0
  122. package/dist/src/components/generic/Layout/StepLayout/StepLayoutRightContent.js +25 -0
  123. package/dist/src/components/generic/Layout/StepLayout/StepLayoutRightContent.js.map +1 -0
  124. package/dist/src/components/generic/Layout/StepLayout/index.d.ts +3 -0
  125. package/dist/src/components/generic/Layout/StepLayout/index.js +13 -0
  126. package/dist/src/components/generic/Layout/StepLayout/index.js.map +1 -0
  127. package/dist/src/components/generic/LineBreak.js +2 -25
  128. package/dist/src/components/generic/LineBreak.js.map +1 -1
  129. package/dist/src/components/generic/Notification.d.ts +2 -3
  130. package/dist/src/components/generic/Notification.js +16 -13
  131. package/dist/src/components/generic/Notification.js.map +1 -1
  132. package/dist/src/components/generic/NumberIncrement.js +10 -10
  133. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  134. package/dist/src/components/generic/Overlay/Overlay.d.ts +3 -3
  135. package/dist/src/components/generic/Overlay/Overlay.js +16 -40
  136. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
  137. package/dist/src/components/generic/PasswordBox/PasswordBox.d.ts +1 -1
  138. package/dist/src/components/generic/PasswordBox/PasswordBox.js +8 -8
  139. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
  140. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +9 -28
  141. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -1
  142. package/dist/src/components/generic/PaymentCard/PaymentCard.js +18 -41
  143. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -1
  144. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +66 -51
  145. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
  146. package/dist/src/components/generic/Pill.d.ts +1 -1
  147. package/dist/src/components/generic/Pill.js +4 -27
  148. package/dist/src/components/generic/Pill.js.map +1 -1
  149. package/dist/src/components/generic/Placeholder.js +4 -27
  150. package/dist/src/components/generic/Placeholder.js.map +1 -1
  151. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +2 -25
  152. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -1
  153. package/dist/src/components/generic/Portal/Portal.d.ts +1 -1
  154. package/dist/src/components/generic/Portal/Portal.js +4 -24
  155. package/dist/src/components/generic/Portal/Portal.js.map +1 -1
  156. package/dist/src/components/generic/PromoCodeInput.js +27 -28
  157. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  158. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +9 -32
  159. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
  160. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.d.ts +6 -6
  161. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +6 -29
  162. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  163. package/dist/src/components/generic/RecentSearchesCard.js +19 -18
  164. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  165. package/dist/src/components/generic/RoomstayMark.d.ts +1 -0
  166. package/dist/src/components/generic/RoomstayMark.js +49 -0
  167. package/dist/src/components/generic/RoomstayMark.js.map +1 -0
  168. package/dist/src/components/generic/ScrollToTop.d.ts +2 -0
  169. package/dist/src/components/generic/ScrollToTop.js +3 -3
  170. package/dist/src/components/generic/ScrollToTop.js.map +1 -1
  171. package/dist/src/components/generic/Select/Select.d.ts +4 -4
  172. package/dist/src/components/generic/Select/Select.js +16 -6
  173. package/dist/src/components/generic/Select/Select.js.map +1 -1
  174. package/dist/src/components/generic/Select.d.ts +0 -0
  175. package/dist/src/components/generic/Select.js +2 -0
  176. package/dist/src/components/generic/Select.js.map +1 -0
  177. package/dist/src/components/generic/Slider/Slider.d.ts +3 -3
  178. package/dist/src/components/generic/Slider/Slider.js +23 -45
  179. package/dist/src/components/generic/Slider/Slider.js.map +1 -1
  180. package/dist/src/components/generic/Tabs/ElementChildren.d.ts +1 -1
  181. package/dist/src/components/generic/Tabs/ElementChildren.js +6 -26
  182. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
  183. package/dist/src/components/generic/Tabs/Tab.d.ts +1 -1
  184. package/dist/src/components/generic/Tabs/Tab.js +4 -24
  185. package/dist/src/components/generic/Tabs/Tab.js.map +1 -1
  186. package/dist/src/components/generic/Tabs/TabContext.d.ts +5 -6
  187. package/dist/src/components/generic/Tabs/TabContext.js +11 -31
  188. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
  189. package/dist/src/components/generic/Tabs/TabLink.d.ts +1 -1
  190. package/dist/src/components/generic/Tabs/TabLink.js +7 -30
  191. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  192. package/dist/src/components/generic/Tabs/TabRouteContainer.js +10 -33
  193. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
  194. package/dist/src/components/generic/Tabs/Tabs.d.ts +2 -2
  195. package/dist/src/components/generic/Tabs/Tabs.js +9 -32
  196. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -1
  197. package/dist/src/components/generic/Text.d.ts +1 -1
  198. package/dist/src/components/generic/Text.js +3 -26
  199. package/dist/src/components/generic/Text.js.map +1 -1
  200. package/dist/src/components/generic/TextArea.d.ts +1 -1
  201. package/dist/src/components/generic/TextArea.js +6 -26
  202. package/dist/src/components/generic/TextArea.js.map +1 -1
  203. package/dist/src/components/generic/TextBox.d.ts +2 -2
  204. package/dist/src/components/generic/TextBox.js +11 -34
  205. package/dist/src/components/generic/TextBox.js.map +1 -1
  206. package/dist/src/components/generic/Tooltip/Tooltip.d.ts +1 -1
  207. package/dist/src/components/generic/Tooltip/Tooltip.js +8 -31
  208. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
  209. package/dist/src/components/generic/badging/SSLSecureBadge.js +3 -26
  210. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  211. package/dist/src/components/generic/buttons/NextStepButton.js +5 -28
  212. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  213. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.d.ts +3 -4
  214. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +23 -32
  215. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  216. package/dist/src/components/generic/date/DatePicker.js +49 -50
  217. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  218. package/dist/src/components/generic/date/DatePickerDay.js +27 -27
  219. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  220. package/dist/src/components/generic/date/DatePickerDays.js +4 -27
  221. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  222. package/dist/src/components/generic/date/DatePickerMonth.js +9 -9
  223. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  224. package/dist/src/components/generic/date/DatePickerWeek.js +26 -26
  225. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  226. package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
  227. package/dist/src/components/generic/date/FloatingDatePicker.js +11 -11
  228. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  229. package/dist/src/components/generic/date/WeekViewSkeleton.js +23 -46
  230. package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
  231. package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
  232. package/dist/src/components/generic/loader/ImageLoader.js +8 -8
  233. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  234. package/dist/src/components/generic/loader/LargeLoader.js +15 -38
  235. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  236. package/dist/src/components/generic/loader/SmallSpinner.js +6 -3
  237. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  238. package/dist/src/components/generic/map/HotelLocationMap.js +3 -26
  239. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  240. package/dist/src/components/generic/modal/ConfirmationModal.js +8 -8
  241. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  242. package/dist/src/components/generic/modal/ErrorModal.d.ts +2 -2
  243. package/dist/src/components/generic/modal/ErrorModal.js +5 -5
  244. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  245. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.d.ts +3 -2
  246. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +16 -16
  247. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
  248. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +1 -1
  249. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +26 -26
  250. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
  251. package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -2
  252. package/dist/src/components/generic/modal/SimpleModal.js +21 -22
  253. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  254. package/dist/src/components/generic/modal/TabbedModal.d.ts +1 -1
  255. package/dist/src/components/generic/modal/TabbedModal.js +12 -12
  256. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  257. package/dist/src/components/generic/radio/RadioFields.js +11 -11
  258. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  259. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js +16 -36
  260. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js.map +1 -1
  261. package/dist/src/components/members/EditMyProfile.d.ts +1 -1
  262. package/dist/src/components/members/EditMyProfile.js +35 -59
  263. package/dist/src/components/members/EditMyProfile.js.map +1 -1
  264. package/dist/src/components/navigation/Header.js +69 -64
  265. package/dist/src/components/navigation/Header.js.map +1 -1
  266. package/dist/src/components/navigation/StepSelector.js +27 -27
  267. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  268. package/dist/src/components/navigation/StepSelectorModal.js +14 -13
  269. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  270. package/dist/src/components/pages/Account/Card/CardList.js +10 -33
  271. package/dist/src/components/pages/Account/Card/CardList.js.map +1 -1
  272. package/dist/src/components/pages/Account/Card/MemberCardItem.js +10 -10
  273. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
  274. package/dist/src/components/pages/PageColorComponent.js +4 -27
  275. package/dist/src/components/pages/PageColorComponent.js.map +1 -1
  276. package/dist/src/components/reservation/EmptyReservation.d.ts +6 -0
  277. package/dist/src/components/reservation/EmptyReservation.js +52 -0
  278. package/dist/src/components/reservation/EmptyReservation.js.map +1 -0
  279. package/dist/src/components/reservation/ReservationItem.js +56 -56
  280. package/dist/src/components/reservation/ReservationItem.js.map +1 -1
  281. package/dist/src/components/reservation/ReservationList.d.ts +3 -2
  282. package/dist/src/components/reservation/ReservationList.js +7 -26
  283. package/dist/src/components/reservation/ReservationList.js.map +1 -1
  284. package/dist/src/components/steps/DaysSelectedInformer.js +9 -6
  285. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  286. package/dist/src/components/steps/MinimumNightStayPill.d.ts +1 -1
  287. package/dist/src/components/steps/MinimumNightStayPill.js +8 -8
  288. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  289. package/dist/src/components/steps/addons/AddonCard.js +59 -58
  290. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  291. package/dist/src/components/steps/addons/AddonList.js +12 -15
  292. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  293. package/dist/src/components/steps/addons/AddonsNotFound.js +38 -61
  294. package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
  295. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +1 -1
  296. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +19 -19
  297. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  298. package/dist/src/components/steps/confirmation/AccountDetails.js +11 -34
  299. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  300. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +5 -27
  301. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
  302. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js +1 -0
  303. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +12 -32
  304. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
  305. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.d.ts +1 -1
  306. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +26 -25
  307. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
  308. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +35 -58
  309. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
  310. package/dist/src/components/steps/confirmation/RoomContactDetails.js +72 -68
  311. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  312. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +14 -14
  313. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  314. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +36 -35
  315. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  316. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +7 -30
  317. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  318. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.d.ts +2 -2
  319. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +29 -24
  320. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  321. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +94 -89
  322. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  323. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +3 -26
  324. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
  325. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +13 -13
  326. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  327. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +16 -16
  328. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  329. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +25 -20
  330. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  331. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +26 -26
  332. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  333. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +13 -9
  334. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  335. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +61 -61
  336. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  337. package/dist/src/components/steps/date/PeoplePicker.js +11 -7
  338. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  339. package/dist/src/components/steps/date/PeoplePickerRow.js +18 -18
  340. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  341. package/dist/src/components/steps/date/StepDatePricePerRoom.js +16 -16
  342. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  343. package/dist/src/components/steps/date/StepOneDateRange.js +10 -10
  344. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  345. package/dist/src/components/steps/date/StepOneDateRangePicker.js +6 -6
  346. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  347. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +6 -6
  348. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  349. package/dist/src/components/steps/date/StepOneNextStepButton.js +5 -5
  350. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  351. package/dist/src/components/steps/date/StepOneStatusPeople.js +4 -27
  352. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  353. package/dist/src/components/steps/hotel/HotelCard.js +61 -48
  354. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  355. package/dist/src/components/steps/hotel/HotelCardList.js +5 -28
  356. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  357. package/dist/src/components/steps/hotel/HotelCardModal.d.ts +1 -1
  358. package/dist/src/components/steps/hotel/HotelCardModal.js +45 -45
  359. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  360. package/dist/src/components/steps/hotel/HotelSearchParameters.js +40 -40
  361. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  362. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +57 -80
  363. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  364. package/dist/src/components/steps/room/AvailableUpgradesModal.d.ts +2 -1
  365. package/dist/src/components/steps/room/AvailableUpgradesModal.js +40 -42
  366. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  367. package/dist/src/components/steps/room/ImageGallerySlider.js +21 -21
  368. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  369. package/dist/src/components/steps/room/InactivityWindow.js +20 -20
  370. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  371. package/dist/src/components/steps/room/LargeRoomCard.js +36 -35
  372. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  373. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +44 -48
  374. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  375. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +52 -52
  376. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  377. package/dist/src/components/steps/room/RatesNotFound.js +39 -62
  378. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  379. package/dist/src/components/steps/room/RoomList.js +13 -36
  380. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  381. package/dist/src/components/steps/room/RoomListAlert.d.ts +1 -1
  382. package/dist/src/components/steps/room/RoomListAlert.js +11 -34
  383. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
  384. package/dist/src/components/steps/room/RoomListCrossSellBlock.d.ts +2 -1
  385. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +38 -38
  386. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  387. package/dist/src/components/steps/room/RoomModal.js +32 -32
  388. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  389. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +9 -9
  390. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  391. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +6 -6
  392. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  393. package/dist/src/components/steps/room/StepRoomErrorForm.js +34 -34
  394. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  395. package/dist/src/components/steps/room/StepRoomHotelDetails.js +18 -18
  396. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  397. package/dist/src/components/steps/room/StepRoomNextStepButton.js +4 -4
  398. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  399. package/dist/src/components/steps/room/StepRoomSortBy.js +6 -6
  400. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  401. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +15 -38
  402. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  403. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +2 -25
  404. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  405. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +2 -25
  406. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  407. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +9 -9
  408. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  409. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +71 -69
  410. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  411. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +42 -39
  412. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  413. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +18 -15
  414. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  415. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +6 -7
  416. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  417. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +16 -16
  418. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  419. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.d.ts +1 -1
  420. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +37 -36
  421. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  422. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +8 -31
  423. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  424. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +26 -26
  425. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  426. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +43 -43
  427. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  428. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +34 -34
  429. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  430. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +8 -8
  431. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  432. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +11 -11
  433. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
  434. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +8 -10
  435. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  436. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +32 -32
  437. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  438. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +16 -39
  439. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  440. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +10 -9
  441. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  442. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +32 -31
  443. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  444. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +1 -1
  445. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +20 -21
  446. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  447. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +1 -1
  448. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +17 -17
  449. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  450. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +1 -1
  451. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +20 -18
  452. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  453. package/dist/src/components/summary/BEMapWidget.d.ts +1 -1
  454. package/dist/src/components/summary/BEMapWidget.js +29 -27
  455. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  456. package/dist/src/components/summary/BEMobileSummary.js +22 -22
  457. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  458. package/dist/src/components/summary/BEMobileSummaryModal.js +62 -60
  459. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  460. package/dist/src/components/summary/BESummary.js +42 -41
  461. package/dist/src/components/summary/BESummary.js.map +1 -1
  462. package/dist/src/components/summary/BESummaryAddonRow.js +22 -21
  463. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  464. package/dist/src/components/summary/BESummaryPerkBlock.js +11 -11
  465. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  466. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +11 -8
  467. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  468. package/dist/src/components/summary/BESummaryRoomRow.js +57 -57
  469. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  470. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +12 -12
  471. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  472. package/dist/src/components/temp/Login.js +29 -29
  473. package/dist/src/components/temp/Login.js.map +1 -1
  474. package/dist/src/containers/PrivateRoute.js +6 -26
  475. package/dist/src/containers/PrivateRoute.js.map +1 -1
  476. package/dist/src/contexts/BasketContext/BasketContext.js +1 -1
  477. package/dist/src/contexts/BasketContext/BasketContext.js.map +1 -1
  478. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +4 -3
  479. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  480. package/dist/src/contexts/BasketContext/BasketContextWrapper.d.ts +1 -1
  481. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +73 -67
  482. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  483. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js +1 -1
  484. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js.map +1 -1
  485. package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.d.ts +1 -1
  486. package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.js.map +1 -1
  487. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.d.ts +1 -1
  488. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +3 -4
  489. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  490. package/dist/src/contexts/CompanyContext/CompanyContext.js +1 -1
  491. package/dist/src/contexts/CompanyContext/CompanyContext.js.map +1 -1
  492. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +24 -47
  493. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  494. package/dist/src/contexts/ConfirmationFormContext.d.ts +2 -2
  495. package/dist/src/contexts/ConfirmationFormContext.js +8 -28
  496. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  497. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +11 -10
  498. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  499. package/dist/src/contexts/DatePickerContext.d.ts +12 -11
  500. package/dist/src/contexts/DatePickerContext.js +4 -41
  501. package/dist/src/contexts/DatePickerContext.js.map +1 -1
  502. package/dist/src/contexts/ErrorContext.d.ts +2 -2
  503. package/dist/src/contexts/ErrorContext.js +10 -10
  504. package/dist/src/contexts/ErrorContext.js.map +1 -1
  505. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js +1 -1
  506. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js.map +1 -1
  507. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.d.ts +1 -1
  508. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +43 -49
  509. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  510. package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
  511. package/dist/src/contexts/HotelOverridesContext.js +14 -37
  512. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  513. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +7 -7
  514. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +18 -6
  515. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -1
  516. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.d.ts +1 -1
  517. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +38 -53
  518. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
  519. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.d.ts +1 -1
  520. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +29 -49
  521. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
  522. package/dist/src/contexts/ModalContext.d.ts +1 -1
  523. package/dist/src/contexts/ModalContext.js +4 -5
  524. package/dist/src/contexts/ModalContext.js.map +1 -1
  525. package/dist/src/contexts/NotificationContext.d.ts +1 -1
  526. package/dist/src/contexts/NotificationContext.js +8 -31
  527. package/dist/src/contexts/NotificationContext.js.map +1 -1
  528. package/dist/src/engines/BaseEngine.js.map +1 -1
  529. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +4 -27
  530. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
  531. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +15 -35
  532. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  533. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +67 -66
  534. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  535. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  536. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +20 -20
  537. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  538. package/dist/src/events/RoomstayEvent.d.ts +0 -1
  539. package/dist/src/events/RoomstayEvent.js +0 -1
  540. package/dist/src/events/RoomstayEvent.js.map +1 -1
  541. package/dist/src/events/RoomstayEventManager.d.ts +2 -2
  542. package/dist/src/events/RoomstayEventManager.js +1 -1
  543. package/dist/src/events/RoomstayEventManager.js.map +1 -1
  544. package/dist/src/hooks/AutoFocusOnSelect.d.ts +1 -1
  545. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
  546. package/dist/src/hooks/BodyClickHook.d.ts +2 -4
  547. package/dist/src/hooks/BodyClickHook.js +3 -3
  548. package/dist/src/hooks/BodyClickHook.js.map +1 -1
  549. package/dist/src/hooks/CombineState.d.ts +1 -1
  550. package/dist/src/hooks/CombineState.js.map +1 -1
  551. package/dist/src/hooks/ConfirmationQuery.d.ts +3 -3
  552. package/dist/src/hooks/CurrentHotelHook.d.ts +1 -1
  553. package/dist/src/hooks/ElementSortHook.d.ts +1 -1
  554. package/dist/src/hooks/ElementSortHook.js +7 -27
  555. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  556. package/dist/src/hooks/EventHook.d.ts +1 -1
  557. package/dist/src/hooks/EventHook.js.map +1 -1
  558. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +3 -3
  559. package/dist/src/hooks/LoggedInUserHook.d.ts +6 -6
  560. package/dist/src/hooks/LoggedInUserHook.js.map +1 -1
  561. package/dist/src/hooks/Query.js +5 -25
  562. package/dist/src/hooks/Query.js.map +1 -1
  563. package/dist/src/hooks/VGSHooks.d.ts +4 -4
  564. package/dist/src/hooks/VGSHooks.js +16 -11
  565. package/dist/src/hooks/VGSHooks.js.map +1 -1
  566. package/dist/src/icons/Check.js +7 -27
  567. package/dist/src/icons/Check.js.map +1 -1
  568. package/dist/src/index.d.ts +4 -3
  569. package/dist/src/index.js +5 -18
  570. package/dist/src/index.js.map +1 -1
  571. package/dist/src/mockApi/AddonAPI.js +2 -1
  572. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  573. package/dist/src/mockApi/MockAPI.d.ts +1 -1
  574. package/dist/src/mockApi/ReservationAPI.d.ts +1 -1
  575. package/dist/src/mockApi/ReservationAPI.js +2 -1
  576. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  577. package/dist/src/models/Addon/Addon.d.ts +1 -0
  578. package/dist/src/models/Addon/Addon.js +11 -2
  579. package/dist/src/models/Addon/Addon.js.map +1 -1
  580. package/dist/src/models/BasketAddonRow.d.ts +2 -2
  581. package/dist/src/models/BasketAddonRow.js +27 -20
  582. package/dist/src/models/BasketAddonRow.js.map +1 -1
  583. package/dist/src/models/BasketRow.d.ts +6 -6
  584. package/dist/src/models/BasketRow.js +3 -2
  585. package/dist/src/models/BasketRow.js.map +1 -1
  586. package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +1 -1
  587. package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -1
  588. package/dist/src/models/Client/Client.js.map +1 -1
  589. package/dist/src/models/Currency.d.ts +1 -1
  590. package/dist/src/models/Currency.js.map +1 -1
  591. package/dist/src/models/Room/Filters/BudgetFilter.d.ts +1 -1
  592. package/dist/src/models/Room/Filters/RoomTypeFilter.d.ts +1 -1
  593. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  594. package/dist/src/models/Room/Room.d.ts +10 -10
  595. package/dist/src/models/Room/Room.js +10 -8
  596. package/dist/src/models/Room/Room.js.map +1 -1
  597. package/dist/src/models/Room/RoomRate.d.ts +1 -1
  598. package/dist/src/models/Room/RoomRate.js +1 -1
  599. package/dist/src/models/Room/RoomRate.js.map +1 -1
  600. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  601. package/dist/src/models/RoomstaySession.d.ts +2 -2
  602. package/dist/src/models/RoomstaySession.js.map +1 -1
  603. package/dist/src/pages/account/AccountHome/AccountHomePage.js +31 -31
  604. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
  605. package/dist/src/pages/account/AccountOutlet.d.ts +1 -1
  606. package/dist/src/pages/account/AccountOutlet.js +5 -25
  607. package/dist/src/pages/account/AccountOutlet.js.map +1 -1
  608. package/dist/src/pages/account/AccountRouter.js +12 -37
  609. package/dist/src/pages/account/AccountRouter.js.map +1 -1
  610. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +24 -28
  611. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
  612. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +8 -8
  613. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
  614. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +41 -42
  615. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
  616. package/dist/src/pages/account/Help/AccountHelpPage.js +42 -44
  617. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
  618. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +78 -82
  619. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  620. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +17 -40
  621. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
  622. package/dist/src/pages/findReservation/FindReservation.js +81 -76
  623. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  624. package/dist/src/pages/findReservation/FindReservationResults.js +33 -33
  625. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  626. package/dist/src/pages/findReservation/ReservationRow.js +66 -65
  627. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  628. package/dist/src/pages/findReservation/ReservationRowModal.js +52 -52
  629. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  630. package/dist/src/pages/hotel/HotelInfo.js +88 -88
  631. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  632. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +4 -27
  633. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  634. package/dist/src/pages/steps/Step.d.ts +2 -2
  635. package/dist/src/pages/steps/Step.js.map +1 -1
  636. package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +1 -1
  637. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  638. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +14 -14
  639. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  640. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +51 -50
  641. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  642. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.d.ts +1 -1
  643. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  644. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +24 -24
  645. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  646. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +71 -71
  647. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  648. package/dist/src/pages/steps/StepDate/StepDate.d.ts +14 -0
  649. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  650. package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +2 -0
  651. package/dist/src/pages/steps/StepDate/StepDateComponent.js +46 -48
  652. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  653. package/dist/src/pages/steps/StepGuide.d.ts +1 -1
  654. package/dist/src/pages/steps/StepGuide.js +3 -26
  655. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  656. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +21 -21
  657. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  658. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +43 -43
  659. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  660. package/dist/src/pages/steps/StepRoom/StepRoom.d.ts +1 -1
  661. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  662. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +34 -34
  663. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  664. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +73 -73
  665. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  666. package/dist/src/pages/steps/StepThanks/StepThanks.d.ts +1 -1
  667. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  668. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +28 -29
  669. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  670. package/dist/src/providers/CurrencyProvider.d.ts +1 -1
  671. package/dist/src/providers/DIProvider.js +5 -25
  672. package/dist/src/providers/DIProvider.js.map +1 -1
  673. package/dist/src/providers/FeatureProvider.js +2 -0
  674. package/dist/src/providers/FeatureProvider.js.map +1 -1
  675. package/dist/src/providers/FilterProvider.d.ts +1 -1
  676. package/dist/src/providers/FilterProvider.js +3 -2
  677. package/dist/src/providers/FilterProvider.js.map +1 -1
  678. package/dist/src/providers/LanguageProvider.d.ts +1 -1
  679. package/dist/src/providers/LanguageProvider.js.map +1 -1
  680. package/dist/src/providers/PromotionProvider.d.ts +1 -1
  681. package/dist/src/providers/PromotionProvider.js +1 -1
  682. package/dist/src/providers/PromotionProvider.js.map +1 -1
  683. package/dist/src/providers/RoomstayThemeEngine.d.ts +2 -2
  684. package/dist/src/providers/RoomstayThemeEngine.js +5 -7
  685. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  686. package/dist/src/providers/SessionProvider.js +4 -4
  687. package/dist/src/providers/SessionProvider.js.map +1 -1
  688. package/dist/src/providers/feature/Feature.d.ts +1 -1
  689. package/dist/src/providers/feature/Feature.js +3 -0
  690. package/dist/src/providers/feature/Feature.js.map +1 -1
  691. package/dist/src/providers/feature/FullPageEngineSmallSpacingFeature.d.ts +6 -0
  692. package/dist/src/providers/feature/FullPageEngineSmallSpacingFeature.js +10 -0
  693. package/dist/src/providers/feature/FullPageEngineSmallSpacingFeature.js.map +1 -0
  694. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  695. package/dist/src/providers/feature/MemberPortalFeature.d.ts +0 -1
  696. package/dist/src/providers/feature/MemberPortalFeature.js +0 -1
  697. package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -1
  698. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.d.ts +0 -1
  699. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js +0 -1
  700. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js.map +1 -1
  701. package/dist/src/providers/storage/LocalStorageProvider.d.ts +2 -2
  702. package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
  703. package/dist/src/reducers/BasketReducer.d.ts +2 -1
  704. package/dist/src/reducers/BasketReducer.js +10 -2
  705. package/dist/src/reducers/BasketReducer.js.map +1 -1
  706. package/dist/src/routes/NaturallyProgressedStepRoute.js +6 -29
  707. package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
  708. package/dist/src/stories/Alert.stories.d.ts +2 -2
  709. package/dist/src/stories/Alert.stories.js +2 -25
  710. package/dist/src/stories/Alert.stories.js.map +1 -1
  711. package/dist/src/stories/BEButton.stories.d.ts +2 -2
  712. package/dist/src/stories/BEButton.stories.js +2 -25
  713. package/dist/src/stories/BEButton.stories.js.map +1 -1
  714. package/dist/src/stories/BackButton.stories.d.ts +2 -2
  715. package/dist/src/stories/BackButton.stories.js +2 -25
  716. package/dist/src/stories/BackButton.stories.js.map +1 -1
  717. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.d.ts +2 -2
  718. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js +4 -24
  719. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js.map +1 -1
  720. package/dist/src/stories/BookingWizard.stories.d.ts +5 -5
  721. package/dist/src/stories/BookingWizard.stories.js +25 -9
  722. package/dist/src/stories/BookingWizard.stories.js.map +1 -1
  723. package/dist/src/stories/Card.stories.d.ts +6 -3
  724. package/dist/src/stories/CardTypeSelect.stories.d.ts +3 -3
  725. package/dist/src/stories/CardTypeSelect.stories.js +4 -24
  726. package/dist/src/stories/CardTypeSelect.stories.js.map +1 -1
  727. package/dist/src/stories/Checkbox.stories.d.ts +3 -3
  728. package/dist/src/stories/Checkbox.stories.js +2 -25
  729. package/dist/src/stories/Checkbox.stories.js.map +1 -1
  730. package/dist/src/stories/ConfirmationModal.stories.js +6 -29
  731. package/dist/src/stories/ConfirmationModal.stories.js.map +1 -1
  732. package/dist/src/stories/Countdown.stories.d.ts +2 -2
  733. package/dist/src/stories/Countdown.stories.js +4 -27
  734. package/dist/src/stories/Countdown.stories.js.map +1 -1
  735. package/dist/src/stories/Currency.stories.d.ts +2 -2
  736. package/dist/src/stories/Currency.stories.js +2 -25
  737. package/dist/src/stories/Currency.stories.js.map +1 -1
  738. package/dist/src/stories/DateRangePicker.stories.js +25 -15
  739. package/dist/src/stories/DateRangePicker.stories.js.map +1 -1
  740. package/dist/src/stories/Distance.stories.d.ts +2 -2
  741. package/dist/src/stories/Distance.stories.js +2 -25
  742. package/dist/src/stories/Distance.stories.js.map +1 -1
  743. package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +5 -0
  744. package/dist/src/stories/EnhancedPhoneNumberField.stories.js +2 -25
  745. package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -1
  746. package/dist/src/stories/ErrorModal.stories.js +7 -30
  747. package/dist/src/stories/ErrorModal.stories.js.map +1 -1
  748. package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +1 -1
  749. package/dist/src/stories/FloatingDateRangePicker.stories.js +15 -38
  750. package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -1
  751. package/dist/src/stories/ForwardedSelect.stories.d.ts +3 -3
  752. package/dist/src/stories/ForwardedSelect.stories.js +4 -27
  753. package/dist/src/stories/ForwardedSelect.stories.js.map +1 -1
  754. package/dist/src/stories/Headline.stories.d.ts +2 -2
  755. package/dist/src/stories/Headline.stories.js +2 -25
  756. package/dist/src/stories/Headline.stories.js.map +1 -1
  757. package/dist/src/stories/Icon.stories.d.ts +2 -2
  758. package/dist/src/stories/Icon.stories.js +5 -2
  759. package/dist/src/stories/Icon.stories.js.map +1 -1
  760. package/dist/src/stories/IconNavCard.stories.d.ts +18 -8
  761. package/dist/src/stories/IconNavCard.stories.js +5 -25
  762. package/dist/src/stories/IconNavCard.stories.js.map +1 -1
  763. package/dist/src/stories/IconText.stories.d.ts +5 -0
  764. package/dist/src/stories/IconText.stories.js +4 -6
  765. package/dist/src/stories/IconText.stories.js.map +1 -1
  766. package/dist/src/stories/ImageLoader.stories.d.ts +2 -2
  767. package/dist/src/stories/ImageLoader.stories.js +2 -25
  768. package/dist/src/stories/ImageLoader.stories.js.map +1 -1
  769. package/dist/src/stories/InputGroup.stories.d.ts +2 -2
  770. package/dist/src/stories/InputGroup.stories.js +3 -26
  771. package/dist/src/stories/InputGroup.stories.js.map +1 -1
  772. package/dist/src/stories/LargeLoader.stories.d.ts +2 -2
  773. package/dist/src/stories/LargeLoader.stories.js +2 -25
  774. package/dist/src/stories/LargeLoader.stories.js.map +1 -1
  775. package/dist/src/stories/LineBreak.stories.d.ts +2 -2
  776. package/dist/src/stories/LineBreak.stories.js +2 -25
  777. package/dist/src/stories/LineBreak.stories.js.map +1 -1
  778. package/dist/src/stories/Notification.stories.d.ts +2 -2
  779. package/dist/src/stories/Notification.stories.js +2 -25
  780. package/dist/src/stories/Notification.stories.js.map +1 -1
  781. package/dist/src/stories/NumberIncrement.stories.js +6 -28
  782. package/dist/src/stories/NumberIncrement.stories.js.map +1 -1
  783. package/dist/src/stories/PasswordBox.stories.d.ts +3 -3
  784. package/dist/src/stories/PasswordBox.stories.js +4 -24
  785. package/dist/src/stories/PasswordBox.stories.js.map +1 -1
  786. package/dist/src/stories/PaymentCard.stories.d.ts +2 -2
  787. package/dist/src/stories/PaymentCard.stories.js +4 -24
  788. package/dist/src/stories/PaymentCard.stories.js.map +1 -1
  789. package/dist/src/stories/PaymentCardInput.stories.d.ts +4 -4
  790. package/dist/src/stories/PaymentCardInput.stories.js +13 -25
  791. package/dist/src/stories/PaymentCardInput.stories.js.map +1 -1
  792. package/dist/src/stories/Pill.stories.d.ts +2 -2
  793. package/dist/src/stories/Pill.stories.js +2 -25
  794. package/dist/src/stories/Pill.stories.js.map +1 -1
  795. package/dist/src/stories/Placeholder.stories.d.ts +2 -2
  796. package/dist/src/stories/Placeholder.stories.js +2 -25
  797. package/dist/src/stories/Placeholder.stories.js.map +1 -1
  798. package/dist/src/stories/PlanpayButton.stories.d.ts +3 -3
  799. package/dist/src/stories/PlanpayButton.stories.js +4 -24
  800. package/dist/src/stories/PlanpayButton.stories.js.map +1 -1
  801. package/dist/src/stories/PromoCodeInput.stories.d.ts +2 -2
  802. package/dist/src/stories/PromoCodeInput.stories.js +2 -25
  803. package/dist/src/stories/PromoCodeInput.stories.js.map +1 -1
  804. package/dist/src/stories/RadioButton.stories.d.ts +4 -4
  805. package/dist/src/stories/RadioButton.stories.js +4 -24
  806. package/dist/src/stories/RadioButton.stories.js.map +1 -1
  807. package/dist/src/stories/RadioButtonGroup.stories.d.ts +2 -2
  808. package/dist/src/stories/RadioButtonGroup.stories.js +4 -27
  809. package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
  810. package/dist/src/stories/RadioFields.stories.d.ts +2 -2
  811. package/dist/src/stories/RadioFields.stories.js +2 -25
  812. package/dist/src/stories/RadioFields.stories.js.map +1 -1
  813. package/dist/src/stories/SSLSecureBadge.stories.d.ts +2 -2
  814. package/dist/src/stories/SSLSecureBadge.stories.js +1 -1
  815. package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -1
  816. package/dist/src/stories/Select.stories.d.ts +14 -14
  817. package/dist/src/stories/Select.stories.js +18 -38
  818. package/dist/src/stories/Select.stories.js.map +1 -1
  819. package/dist/src/stories/SimpleModal.stories.js +11 -33
  820. package/dist/src/stories/SimpleModal.stories.js.map +1 -1
  821. package/dist/src/stories/Slider.stories.d.ts +4 -4
  822. package/dist/src/stories/Slider.stories.js +6 -26
  823. package/dist/src/stories/Slider.stories.js.map +1 -1
  824. package/dist/src/stories/SmallSpinner.stories.d.ts +2 -2
  825. package/dist/src/stories/SmallSpinner.stories.js +2 -25
  826. package/dist/src/stories/SmallSpinner.stories.js.map +1 -1
  827. package/dist/src/stories/TabbedModal.stories.js +6 -29
  828. package/dist/src/stories/TabbedModal.stories.js.map +1 -1
  829. package/dist/src/stories/Tabs.stories.d.ts +1 -1
  830. package/dist/src/stories/Tabs.stories.js +7 -30
  831. package/dist/src/stories/Tabs.stories.js.map +1 -1
  832. package/dist/src/stories/Text.stories.d.ts +2 -2
  833. package/dist/src/stories/Text.stories.js +2 -25
  834. package/dist/src/stories/Text.stories.js.map +1 -1
  835. package/dist/src/stories/TextArea.stories.d.ts +3 -3
  836. package/dist/src/stories/TextArea.stories.js +2 -25
  837. package/dist/src/stories/TextArea.stories.js.map +1 -1
  838. package/dist/src/stories/TextBox.stories.d.ts +3 -3
  839. package/dist/src/stories/TextBox.stories.js +2 -25
  840. package/dist/src/stories/TextBox.stories.js.map +1 -1
  841. package/dist/src/stories/Tooltip.stories.d.ts +2 -2
  842. package/dist/src/stories/Tooltip.stories.js +2 -25
  843. package/dist/src/stories/Tooltip.stories.js.map +1 -1
  844. package/dist/src/translations/Translation.d.ts +4 -0
  845. package/dist/src/translations/Translation.js +4 -0
  846. package/dist/src/translations/Translation.js.map +1 -1
  847. package/dist/src/translations/languages/en-gb.js +4 -0
  848. package/dist/src/translations/languages/en-gb.js.map +1 -1
  849. package/dist/src/util/AsyncAuth.d.ts +5 -0
  850. package/dist/src/util/AsyncAuth.js +44 -0
  851. package/dist/src/util/AsyncAuth.js.map +1 -0
  852. package/dist/src/util/DataLayer.js +3 -3
  853. package/dist/src/util/DataLayer.js.map +1 -1
  854. package/dist/src/util/EnumHelper.d.ts +1 -1
  855. package/dist/src/util/EnumHelper.js +1 -1
  856. package/dist/src/util/EnumHelper.js.map +1 -1
  857. package/dist/src/util/ObjectHelper.d.ts +1 -1
  858. package/dist/src/util/PaymentCardHelper.js +2 -1
  859. package/dist/src/util/PaymentCardHelper.js.map +1 -1
  860. package/dist/src/util/StepManager.d.ts +1 -1
  861. package/dist/src/util/TotalCalculator.js +7 -1
  862. package/dist/src/util/TotalCalculator.js.map +1 -1
  863. package/dist/src/util/Validation.d.ts +0 -1
  864. package/dist/src/util/Validation.js +3 -4
  865. package/dist/src/util/Validation.js.map +1 -1
  866. package/dist/test.bundle.js +1 -1
  867. package/dist/vendors.bundle.js +1 -1
  868. package/dist/vendors.bundle.js.LICENSE.txt +0 -31
  869. package/package.json +11 -5
  870. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.d.ts +0 -1
  871. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +0 -133
  872. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +0 -1
  873. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.d.ts +0 -2
  874. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +0 -158
  875. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +0 -1
  876. package/dist/tests/jest/engines/RoomstayThemeEngine.test.d.ts +0 -1
  877. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js +0 -39
  878. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js.map +0 -1
  879. package/dist/tests/jest/events/EventManager.test.d.ts +0 -1
  880. package/dist/tests/jest/events/EventManager.test.js +0 -101
  881. package/dist/tests/jest/events/EventManager.test.js.map +0 -1
  882. package/dist/tests/jest/helpers/ObjectHelper.test.d.ts +0 -1
  883. package/dist/tests/jest/helpers/ObjectHelper.test.js +0 -72
  884. package/dist/tests/jest/helpers/ObjectHelper.test.js.map +0 -1
  885. package/dist/tests/jest/models/RoomRate.test.d.ts +0 -1
  886. package/dist/tests/jest/models/RoomRate.test.js +0 -133
  887. package/dist/tests/jest/models/RoomRate.test.js.map +0 -1
  888. package/dist/tests/jest/providers/LanguageProvider.test.d.ts +0 -1
  889. package/dist/tests/jest/providers/LanguageProvider.test.js +0 -30
  890. package/dist/tests/jest/providers/LanguageProvider.test.js.map +0 -1
  891. package/dist/tests/jest/providers/SessionProvider.test.d.ts +0 -1
  892. package/dist/tests/jest/providers/SessionProvider.test.js +0 -228
  893. package/dist/tests/jest/providers/SessionProvider.test.js.map +0 -1
  894. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.d.ts +0 -1
  895. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.js +0 -126
  896. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.js.map +0 -1
  897. package/dist/tests/jest/reducers/BasketReducer.test.d.ts +0 -1
  898. package/dist/tests/jest/reducers/BasketReducer.test.js +0 -102
  899. package/dist/tests/jest/reducers/BasketReducer.test.js.map +0 -1
  900. package/dist/tests/offline/RoomstayBestRateAlert.d.ts +0 -1
  901. package/dist/tests/offline/RoomstayBestRateAlert.js +0 -48
  902. package/dist/tests/offline/RoomstayBestRateAlert.js.map +0 -1
  903. package/dist/tests/offline/entry/ReactWrapper.d.ts +0 -1
  904. package/dist/tests/offline/entry/ReactWrapper.js +0 -159
  905. package/dist/tests/offline/entry/ReactWrapper.js.map +0 -1
  906. package/dist/tests/offline/entry/allEngines.d.ts +0 -1
  907. package/dist/tests/offline/entry/allEngines.js +0 -50
  908. package/dist/tests/offline/entry/allEngines.js.map +0 -1
  909. package/dist/tests/offline/entry/components/TestPicker.d.ts +0 -1
  910. package/dist/tests/offline/entry/components/TestPicker.js +0 -166
  911. package/dist/tests/offline/entry/components/TestPicker.js.map +0 -1
  912. package/dist/tests/setupTests.js +0 -11
  913. package/dist/tests/setupTests.js.map +0 -1
  914. /package/dist/{tests/setupTests.d.ts → src/components/generic/BESelect.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import * as ReactRaw from 'react';
1
+ import ReactRaw from 'react';
2
2
  export declare const react: typeof ReactRaw;
3
3
  export { useTranslation } from 'react-i18next';
4
4
  export { Link } from 'react-router-dom';
@@ -43,6 +43,7 @@ export { default as InlineAddonStepFeature } from './providers/feature/InlineAdd
43
43
  export { default as RoomUpsellFeature } from './providers/feature/RoomUpsellFeature';
44
44
  export { default as ShowIATANumberOnCheckoutFeature } from './providers/feature/ShowIATANumberOnCheckoutFeature';
45
45
  export { default as E164PhoneNumberFieldFeature } from './providers/feature/E164PhoneNumberFieldFeature';
46
+ export { default as FullPageEngineSmallSpacingFeature } from './providers/feature/FullPageEngineSmallSpacingFeature';
46
47
  export * from './contexts/index.js';
47
48
  export { default as SessionProvider } from './providers/SessionProvider';
48
49
  export * from './providers/RoomstayThemeEngine';
@@ -71,7 +72,7 @@ export * from './events/index';
71
72
  /** @deprecated use `roomstay.events` instead */
72
73
  export { default as RoomstayEventManager } from './events/RoomstayEventManager';
73
74
  export declare const events: {
74
- on: (eventType: string | import("./events/RoomstayEvent").RoomstayEvent, callback: import("./events/RoomstayEventManager").RoomstayEventCallback, id?: string) => boolean;
75
+ on: <T extends import("./events/RoomstayEvent").RoomstayEvent = import("./events/RoomstayEvent").RoomstayEvent>(eventType: string | import("./events/RoomstayEvent").RoomstayEvent, callback: import("./events/RoomstayEventManager").RoomstayEventCallback<T>, id?: string | undefined) => boolean;
75
76
  raise: (event: import("./events/RoomstayEvent").RoomstayEvent) => Promise<void>;
76
77
  };
77
- export declare const Version: any;
78
+ export declare const Version: string;
package/dist/src/index.js CHANGED
@@ -10,18 +10,6 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
10
10
  if (k2 === undefined) k2 = k;
11
11
  o[k2] = m[k];
12
12
  }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
15
  };
@@ -29,18 +17,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
29
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
30
18
  };
31
19
  Object.defineProperty(exports, "__esModule", { value: true });
32
- exports.Version = exports.events = exports.RoomstayEventManager = exports.StepThanks = exports.StepRoom = exports.StepHotel = exports.StepConfirmation = exports.StepDate = exports.StepAddon = exports.StepManager = exports.API = exports.DataLayer = exports.withDI = exports.registerReplacement = exports.RoomstayThemeEngine = exports.SessionProvider = exports.E164PhoneNumberFieldFeature = exports.ShowIATANumberOnCheckoutFeature = exports.RoomUpsellFeature = exports.InlineAddonStepFeature = exports.FeaturedPromoFeature = exports.DatePickerTypeFeature = exports.ConfirmationVerifyFeature = exports.RatePillProvider = exports.FeatureProvider = exports.CurrencyProvider = exports.SmallSpinner = exports.StepNoRoomBestRateAlert = exports.StepConfirmationCountrySelector = exports.NoRoomsFoundBlock = exports.BE_NO_ROOMS_FOUND_BLOCK = exports.BEButton = exports.Alert = exports.Headline = exports.AutoAutoHeight = exports.LineBreak = exports.Checkbox = exports.RadioFields = exports.InputGroup = exports.TextArea = exports.TextBox = exports.Icon = exports.Link = exports.useTranslation = exports.react = void 0;
20
+ exports.Version = exports.events = exports.RoomstayEventManager = exports.StepThanks = exports.StepRoom = exports.StepHotel = exports.StepConfirmation = exports.StepDate = exports.StepAddon = exports.StepManager = exports.API = exports.DataLayer = exports.withDI = exports.registerReplacement = exports.RoomstayThemeEngine = exports.SessionProvider = exports.FullPageEngineSmallSpacingFeature = exports.E164PhoneNumberFieldFeature = exports.ShowIATANumberOnCheckoutFeature = exports.RoomUpsellFeature = exports.InlineAddonStepFeature = exports.FeaturedPromoFeature = exports.DatePickerTypeFeature = exports.ConfirmationVerifyFeature = exports.RatePillProvider = exports.FeatureProvider = exports.CurrencyProvider = exports.SmallSpinner = exports.StepNoRoomBestRateAlert = exports.StepConfirmationCountrySelector = exports.NoRoomsFoundBlock = exports.BE_NO_ROOMS_FOUND_BLOCK = exports.BEButton = exports.Alert = exports.Headline = exports.AutoAutoHeight = exports.LineBreak = exports.Checkbox = exports.RadioFields = exports.InputGroup = exports.TextArea = exports.TextBox = exports.Icon = exports.Link = exports.useTranslation = exports.react = void 0;
33
21
  const StepConfirmation_1 = __importDefault(require("./pages/steps/StepConfirmation/StepConfirmation"));
34
22
  const StepDate_1 = __importDefault(require("./pages/steps/StepDate/StepDate"));
35
23
  const StepRoom_1 = __importDefault(require("./pages/steps/StepRoom/StepRoom"));
36
24
  const StepThanks_1 = __importDefault(require("./pages/steps/StepThanks/StepThanks"));
37
25
  const StepManager_1 = __importDefault(require("./util/StepManager"));
38
26
  // TODO: Look into resolving this.
39
- // @ts-ignore
40
- const ReactRaw = __importStar(require("react"));
27
+ const react_1 = __importDefault(require("react"));
41
28
  const RoomstayEventManager_1 = __importDefault(require("./events/RoomstayEventManager"));
42
- // @ts-ignore
43
- exports.react = ReactRaw;
29
+ exports.react = react_1.default;
44
30
  var react_i18next_1 = require("react-i18next");
45
31
  Object.defineProperty(exports, "useTranslation", { enumerable: true, get: function () { return react_i18next_1.useTranslation; } });
46
32
  var react_router_dom_1 = require("react-router-dom");
@@ -116,6 +102,8 @@ var ShowIATANumberOnCheckoutFeature_1 = require("./providers/feature/ShowIATANum
116
102
  Object.defineProperty(exports, "ShowIATANumberOnCheckoutFeature", { enumerable: true, get: function () { return __importDefault(ShowIATANumberOnCheckoutFeature_1).default; } });
117
103
  var E164PhoneNumberFieldFeature_1 = require("./providers/feature/E164PhoneNumberFieldFeature");
118
104
  Object.defineProperty(exports, "E164PhoneNumberFieldFeature", { enumerable: true, get: function () { return __importDefault(E164PhoneNumberFieldFeature_1).default; } });
105
+ var FullPageEngineSmallSpacingFeature_1 = require("./providers/feature/FullPageEngineSmallSpacingFeature");
106
+ Object.defineProperty(exports, "FullPageEngineSmallSpacingFeature", { enumerable: true, get: function () { return __importDefault(FullPageEngineSmallSpacingFeature_1).default; } });
119
107
  // Contexts
120
108
  __exportStar(require("./contexts/index.js"), exports);
121
109
  var SessionProvider_1 = require("./providers/SessionProvider");
@@ -166,7 +154,6 @@ exports.events = {
166
154
  on: RoomstayEventManager_1.default.addEvent,
167
155
  raise: RoomstayEventManager_1.default.raise,
168
156
  };
169
- //@ts-ignore
170
157
  exports.Version = RS_VERSION;
171
158
  StepManager_1.default.currentSteps = {
172
159
  0: StepDate_1.default,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import StepConfirmation from '@/pages/steps/StepConfirmation/StepConfirmation';\nimport StepDate from '@/pages/steps/StepDate/StepDate';\nimport StepRoom from '@/pages/steps/StepRoom/StepRoom';\nimport StepThanks from '@/pages/steps/StepThanks/StepThanks';\nimport StepManager from '@/util/StepManager';\n\n// TODO: Look into resolving this.\n// @ts-ignore\nimport * as ReactRaw from 'react';\nimport RoomstayEventManager from './events/RoomstayEventManager';\n\n// @ts-ignore\nexport const react = ReactRaw;\n\nexport { useTranslation } from 'react-i18next';\nexport { Link } from 'react-router-dom';\n\n// Components\nexport * from '@/engines/FullPageBookingEngine/FullPageBookingEngine';\nexport * from '@/engines/InlineRoomMiniEngine/InlineRoomMiniEngine';\nexport * from '@/engines/RecentSearchesEngine/RecentSearchesEngine';\nexport * from '@/engines/BookingWizardEngine/BookingWizardEngine';\nexport * from '@/engines/CustomEngine/CustomEngine';\n\nexport { default as Icon } from '@/components/generic/Icon/Icon';\nexport * from '@/components/generic/Icon/Icon';\nexport * from '@/components/generic/Text';\n\nexport { default as TextBox } from '@/components/generic/TextBox';\nexport { default as TextArea } from '@/components/generic/TextArea';\nexport { default as InputGroup } from '@/components/generic/InputGroup/InputGroup';\nexport { default as RadioFields } from '@/components/generic/radio/RadioFields';\nexport { default as Checkbox } from '@/components/generic/Checkbox/Checkbox';\n\nexport { default as LineBreak } from '@/components/generic/LineBreak';\nexport { default as AutoAutoHeight } from '@/animations/AutoAutoHeight';\nexport { default as Headline } from '@/components/generic/Headline';\n\nexport * from '@/components/generic/Alert';\nexport { default as Alert } from '@/components/generic/Alert';\nexport { default as BEButton } from '@/components/generic/BEButton';\n\nexport { BE_NO_ROOMS_FOUND_BLOCK } from '@/components/steps/room/NoRoomsFoundBlock';\nexport { default as NoRoomsFoundBlock } from '@/components/steps/room/NoRoomsFoundBlock';\n\nexport { default as StepConfirmationCountrySelector } from '@/components/steps/confirmation/StepConfirmationCountrySelector';\n\nexport * from '@/components/steps/confirmation/StepConfirmationCommentsComponent';\nexport * from '@/components/summary/BESummaryPerkBlock';\n\nexport * from '@/components/summary/BESummary';\n\nexport * from '@/components/steps/room/StepRoomBestRateAlert';\nexport { default as StepNoRoomBestRateAlert } from '@/components/steps/room/StepRoomBestRateAlert';\n\n// Loaders\nexport { default as SmallSpinner } from '@/components/generic/loader/SmallSpinner';\n\n// Providers\nexport * from '@/providers/LanguageProvider';\nexport * from '@/providers/CurrencyProvider';\nexport { default as CurrencyProvider } from '@/providers/CurrencyProvider';\nexport { default as FeatureProvider } from '@/providers/FeatureProvider';\nexport { default as RatePillProvider } from '@/providers/RatePillProvider';\nexport * from '@/providers/PromotionProvider';\n\n// Features\n\nexport { default as ConfirmationVerifyFeature } from '@/providers/feature/ConfirmationVerifyFeature';\nexport { default as DatePickerTypeFeature } from '@/providers/feature/DatePickerTypeFeature';\nexport { default as FeaturedPromoFeature } from '@/providers/feature/FeaturedPromoFeature';\nexport { default as InlineAddonStepFeature } from '@/providers/feature/InlineAddonStepFeature';\nexport { default as RoomUpsellFeature } from '@/providers/feature/RoomUpsellFeature';\nexport { default as ShowIATANumberOnCheckoutFeature } from '@/providers/feature/ShowIATANumberOnCheckoutFeature';\nexport { default as E164PhoneNumberFieldFeature } from '@/providers/feature/E164PhoneNumberFieldFeature';\n\n// Contexts\nexport * from '@frontend/contexts';\n\nexport { default as SessionProvider } from '@/providers/SessionProvider';\nexport * from '@/providers/RoomstayThemeEngine';\nexport { default as RoomstayThemeEngine } from '@/providers/RoomstayThemeEngine';\nexport { registerReplacement, withDI } from '@/providers/DIProvider';\n\nexport { default as DataLayer } from '@/util/DataLayer';\nexport * from '@/util/DataLayer';\n\n// Models\nexport * from '@/models/Client/Hotel/Hotel';\nexport * from '@/models/Client/Hotel/HotelPerk';\n\nexport * from '@/models/Client/Hotel/DistanceUnitType.types';\nexport * from '@/models/Client/Hotel/WeekdayStartsOn.types';\n\nexport * from '@/models/Client/Hotel/Company';\n\nexport { default as API } from '@/api/BookingAPI';\n\n// Steps\nexport { default as StepManager } from '@/util/StepManager';\n\nexport { default as StepAddon } from '@/pages/steps/StepAddon/StepAddon';\nexport { default as StepDate } from '@/pages/steps/StepDate/StepDate';\nexport { default as StepConfirmation } from '@/pages/steps/StepConfirmation/StepConfirmation';\nexport { default as StepHotel } from '@/pages/steps/StepHotel/StepHotel';\nexport { default as StepRoom } from '@/pages/steps/StepRoom/StepRoom';\nexport { default as StepThanks } from '@/pages/steps/StepThanks/StepThanks';\n\nexport * from '@/translations/Translation';\n\n// Util\n\nexport * from '@/util/Color';\n\n// Hooks\n\nexport * from '@/hooks/CurrentHotelHook';\nexport * from '@/hooks/EventHook';\n\nexport * from '@/events/index';\n\n/** @deprecated use `roomstay.events` instead */\nexport { default as RoomstayEventManager } from '@/events/RoomstayEventManager';\n\nexport const events = {\n on: RoomstayEventManager.addEvent,\n raise: RoomstayEventManager.raise,\n};\n\n//@ts-ignore\nexport const Version = RS_VERSION;\n\nStepManager.currentSteps = {\n 0: StepDate,\n 10: StepRoom,\n 20: StepConfirmation,\n 30: StepThanks,\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import StepConfirmation from '@/pages/steps/StepConfirmation/StepConfirmation';\nimport StepDate from '@/pages/steps/StepDate/StepDate';\nimport StepRoom from '@/pages/steps/StepRoom/StepRoom';\nimport StepThanks from '@/pages/steps/StepThanks/StepThanks';\nimport StepManager from '@/util/StepManager';\n\n// TODO: Look into resolving this.\nimport ReactRaw from 'react';\nimport RoomstayEventManager from './events/RoomstayEventManager';\n\nexport const react = ReactRaw;\n\nexport { useTranslation } from 'react-i18next';\nexport { Link } from 'react-router-dom';\n\n// Components\nexport * from '@/engines/FullPageBookingEngine/FullPageBookingEngine';\nexport * from '@/engines/InlineRoomMiniEngine/InlineRoomMiniEngine';\nexport * from '@/engines/RecentSearchesEngine/RecentSearchesEngine';\nexport * from '@/engines/BookingWizardEngine/BookingWizardEngine';\nexport * from '@/engines/CustomEngine/CustomEngine';\n\nexport { default as Icon } from '@/components/generic/Icon/Icon';\nexport * from '@/components/generic/Icon/Icon';\nexport * from '@/components/generic/Text';\n\nexport { default as TextBox } from '@/components/generic/TextBox';\nexport { default as TextArea } from '@/components/generic/TextArea';\nexport { default as InputGroup } from '@/components/generic/InputGroup/InputGroup';\nexport { default as RadioFields } from '@/components/generic/radio/RadioFields';\nexport { default as Checkbox } from '@/components/generic/Checkbox/Checkbox';\n\nexport { default as LineBreak } from '@/components/generic/LineBreak';\nexport { default as AutoAutoHeight } from '@/animations/AutoAutoHeight';\nexport { default as Headline } from '@/components/generic/Headline';\n\nexport * from '@/components/generic/Alert';\nexport { default as Alert } from '@/components/generic/Alert';\nexport { default as BEButton } from '@/components/generic/BEButton';\n\nexport { BE_NO_ROOMS_FOUND_BLOCK } from '@/components/steps/room/NoRoomsFoundBlock';\nexport { default as NoRoomsFoundBlock } from '@/components/steps/room/NoRoomsFoundBlock';\n\nexport { default as StepConfirmationCountrySelector } from '@/components/steps/confirmation/StepConfirmationCountrySelector';\n\nexport * from '@/components/steps/confirmation/StepConfirmationCommentsComponent';\nexport * from '@/components/summary/BESummaryPerkBlock';\n\nexport * from '@/components/summary/BESummary';\n\nexport * from '@/components/steps/room/StepRoomBestRateAlert';\nexport { default as StepNoRoomBestRateAlert } from '@/components/steps/room/StepRoomBestRateAlert';\n\n// Loaders\nexport { default as SmallSpinner } from '@/components/generic/loader/SmallSpinner';\n\n// Providers\nexport * from '@/providers/LanguageProvider';\nexport * from '@/providers/CurrencyProvider';\nexport { default as CurrencyProvider } from '@/providers/CurrencyProvider';\nexport { default as FeatureProvider } from '@/providers/FeatureProvider';\nexport { default as RatePillProvider } from '@/providers/RatePillProvider';\nexport * from '@/providers/PromotionProvider';\n\n// Features\n\nexport { default as ConfirmationVerifyFeature } from '@/providers/feature/ConfirmationVerifyFeature';\nexport { default as DatePickerTypeFeature } from '@/providers/feature/DatePickerTypeFeature';\nexport { default as FeaturedPromoFeature } from '@/providers/feature/FeaturedPromoFeature';\nexport { default as InlineAddonStepFeature } from '@/providers/feature/InlineAddonStepFeature';\nexport { default as RoomUpsellFeature } from '@/providers/feature/RoomUpsellFeature';\nexport { default as ShowIATANumberOnCheckoutFeature } from '@/providers/feature/ShowIATANumberOnCheckoutFeature';\nexport { default as E164PhoneNumberFieldFeature } from '@/providers/feature/E164PhoneNumberFieldFeature';\nexport { default as FullPageEngineSmallSpacingFeature } from '@/providers/feature/FullPageEngineSmallSpacingFeature';\n\n// Contexts\nexport * from '@frontend/contexts';\n\nexport { default as SessionProvider } from '@/providers/SessionProvider';\nexport * from '@/providers/RoomstayThemeEngine';\nexport { default as RoomstayThemeEngine } from '@/providers/RoomstayThemeEngine';\nexport { registerReplacement, withDI } from '@/providers/DIProvider';\n\nexport { default as DataLayer } from '@/util/DataLayer';\nexport * from '@/util/DataLayer';\n\n// Models\nexport * from '@/models/Client/Hotel/Hotel';\nexport * from '@/models/Client/Hotel/HotelPerk';\n\nexport * from '@/models/Client/Hotel/DistanceUnitType.types';\nexport * from '@/models/Client/Hotel/WeekdayStartsOn.types';\n\nexport * from '@/models/Client/Hotel/Company';\n\nexport { default as API } from '@/api/BookingAPI';\n\n// Steps\nexport { default as StepManager } from '@/util/StepManager';\n\nexport { default as StepAddon } from '@/pages/steps/StepAddon/StepAddon';\nexport { default as StepDate } from '@/pages/steps/StepDate/StepDate';\nexport { default as StepConfirmation } from '@/pages/steps/StepConfirmation/StepConfirmation';\nexport { default as StepHotel } from '@/pages/steps/StepHotel/StepHotel';\nexport { default as StepRoom } from '@/pages/steps/StepRoom/StepRoom';\nexport { default as StepThanks } from '@/pages/steps/StepThanks/StepThanks';\n\nexport * from '@/translations/Translation';\n\n// Util\n\nexport * from '@/util/Color';\n\n// Hooks\n\nexport * from '@/hooks/CurrentHotelHook';\nexport * from '@/hooks/EventHook';\n\nexport * from '@/events/index';\n\n/** @deprecated use `roomstay.events` instead */\nexport { default as RoomstayEventManager } from '@/events/RoomstayEventManager';\n\nexport const events = {\n on: RoomstayEventManager.addEvent,\n raise: RoomstayEventManager.raise,\n};\n\ndeclare const RS_VERSION: string;\nexport const Version = RS_VERSION;\n\nStepManager.currentSteps = {\n 0: StepDate,\n 10: StepRoom,\n 20: StepConfirmation,\n 30: StepThanks,\n};\n"]}
@@ -20,8 +20,9 @@ class AddonAPI extends MockAPI_1.default {
20
20
  super(...arguments);
21
21
  this.storedAddons = {};
22
22
  this.findAddons = (basketRows) => new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
23
+ var _a;
23
24
  const basketRow = basketRows[0];
24
- const rate = basketRow.getRate().code;
25
+ const rate = (_a = basketRow.getRate()) === null || _a === void 0 ? void 0 : _a.code;
25
26
  const adults = basketRow.getAdults();
26
27
  const children = basketRow.getChildren();
27
28
  const checkInDate = basketRow.getStartDate().format('YYYY-MM-DD');
@@ -1 +1 @@
1
- {"version":3,"file":"AddonAPI.js","sourceRoot":"/","sources":["src/mockApi/AddonAPI.ts"],"names":[],"mappings":"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","sourcesContent":["import MockAPI from 'mockApi/MockAPI';\nimport BasketRow from '@/models/BasketRow';\nimport { Addon } from '@/models/Addon/Addon';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\n\nexport default class AddonAPI extends MockAPI {\n private storedAddons: { [ref: string]: any } = {};\n\n public findAddons = (basketRows: BasketRow[]) =>\n new Promise<Addon[]>(async (resolve, reject) => {\n const basketRow = basketRows[0];\n\n const rate = basketRow.getRate().code;\n const adults = basketRow.getAdults();\n const children = basketRow.getChildren();\n const checkInDate = basketRow.getStartDate().format('YYYY-MM-DD');\n const checkOutDate = basketRow.getEndDate().format('YYYY-MM-DD');\n const language = RoomstayThemeEngine.selectedLang;\n\n const upgrade = new Addon();\n const upgradeData: any = {\n code: 'TEST1',\n name: 'Room Upgrade',\n description: 'Upgrade your room for a more luxurious stay. Treat yourself!',\n image: 'https://unsplash.com/photos/lG1Gc-IW6f0/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const champagne = new Addon();\n const champagneData: any = {\n code: 'TEST2',\n name: 'Champagne in Room',\n description: 'Enjoy a chilled glass of premium champagne served in an ice bucket, ready for you in your room upon arrival.',\n image: 'https://unsplash.com/photos/RhBnqwZwtbU/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const lateCheckout = new Addon();\n const lateCheckoutData: any = {\n code: 'TEST3',\n name: 'Late Checkout',\n description: 'Planning for a late night? Why not sleep in a little longer? Book a late checkout to give you more time to relax before your flight home.',\n image: 'https://unsplash.com/photos/kHHwYNA1lnM/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const daysBetween = basketRow.getEndDate().diff(basketRow.getStartDate(), 'day');\n\n for (let i = 0; i < daysBetween; i++) {\n const addonDate = basketRow.getStartDate().add(i, 'day').format('YYYY-MM-DD');\n\n upgradeData.availability[addonDate] = { price: 50, quantity: 1 };\n champagneData.availability[addonDate] = { price: 75, quantity: 1 };\n lateCheckoutData.availability[addonDate] = { price: 25, quantity: 1 };\n }\n\n upgrade.applyData(upgradeData);\n champagne.applyData(champagneData);\n lateCheckout.applyData(lateCheckoutData);\n\n return resolve([upgrade, champagne, lateCheckout]);\n });\n}\n"]}
1
+ {"version":3,"file":"AddonAPI.js","sourceRoot":"/","sources":["src/mockApi/AddonAPI.ts"],"names":[],"mappings":"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","sourcesContent":["import MockAPI from 'mockApi/MockAPI';\nimport BasketRow from '@/models/BasketRow';\nimport { Addon } from '@/models/Addon/Addon';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\n\nexport default class AddonAPI extends MockAPI {\n private storedAddons: { [ref: string]: any } = {};\n\n public findAddons = (basketRows: BasketRow[]) =>\n new Promise<Addon[]>(async (resolve, reject) => {\n const basketRow = basketRows[0];\n\n const rate = basketRow.getRate()?.code;\n const adults = basketRow.getAdults();\n const children = basketRow.getChildren();\n const checkInDate = basketRow.getStartDate().format('YYYY-MM-DD');\n const checkOutDate = basketRow.getEndDate().format('YYYY-MM-DD');\n const language = RoomstayThemeEngine.selectedLang;\n\n const upgrade = new Addon();\n const upgradeData: any = {\n code: 'TEST1',\n name: 'Room Upgrade',\n description: 'Upgrade your room for a more luxurious stay. Treat yourself!',\n image: 'https://unsplash.com/photos/lG1Gc-IW6f0/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const champagne = new Addon();\n const champagneData: any = {\n code: 'TEST2',\n name: 'Champagne in Room',\n description: 'Enjoy a chilled glass of premium champagne served in an ice bucket, ready for you in your room upon arrival.',\n image: 'https://unsplash.com/photos/RhBnqwZwtbU/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const lateCheckout = new Addon();\n const lateCheckoutData: any = {\n code: 'TEST3',\n name: 'Late Checkout',\n description: 'Planning for a late night? Why not sleep in a little longer? Book a late checkout to give you more time to relax before your flight home.',\n image: 'https://unsplash.com/photos/kHHwYNA1lnM/download?w:1920',\n pricingType: 'Per Night',\n availability: {},\n category: '',\n inclusive: false,\n ratePlanCode: '',\n };\n\n const daysBetween = basketRow.getEndDate().diff(basketRow.getStartDate(), 'day');\n\n for (let i = 0; i < daysBetween; i++) {\n const addonDate = basketRow.getStartDate().add(i, 'day').format('YYYY-MM-DD');\n\n upgradeData.availability[addonDate] = { price: 50, quantity: 1 };\n champagneData.availability[addonDate] = { price: 75, quantity: 1 };\n lateCheckoutData.availability[addonDate] = { price: 25, quantity: 1 };\n }\n\n upgrade.applyData(upgradeData);\n champagne.applyData(champagneData);\n lateCheckout.applyData(lateCheckoutData);\n\n return resolve([upgrade, champagne, lateCheckout]);\n });\n}\n"]}
@@ -26,6 +26,6 @@ export default class MockAPI {
26
26
  private postOrDeleteOrUpdate;
27
27
  protected post: (endpoint: APIEndpoint, params: ApiGetParameters, getParams?: ApiGetParameters, extraPath?: string) => Promise<any>;
28
28
  protected delete: (endpoint: APIEndpoint, params: ApiGetParameters, getParams?: ApiGetParameters, extraPath?: string) => Promise<any>;
29
- protected get: (endpoint: APIEndpoint, params: ApiGetParameters, extraPath: string, hotelId: string) => Promise<any>;
29
+ protected get: (endpoint: APIEndpoint, params: ApiGetParameters, extraPath: string | undefined, hotelId: string) => Promise<any>;
30
30
  }
31
31
  export {};
@@ -6,7 +6,7 @@ import ReservationsDTO from '../models/Api/ReservationsDTO';
6
6
  import BasketAddonRow from '../models/BasketAddonRow';
7
7
  export default class ReservationAPI extends MockAPI {
8
8
  private storedReservations;
9
- bookNow: (basketRows: BasketRow[], profiles: UserProfile[], card: PaymentCard, addonRows: BasketAddonRow[], comments: string, specialReq?: string) => Promise<ReservationsDTO>;
9
+ bookNow: (basketRows: BasketRow[], profiles: UserProfile[], card: PaymentCard, addonRows: BasketAddonRow[], comments: string, specialReq?: string | undefined) => Promise<ReservationsDTO>;
10
10
  commit: (reservations: string[]) => Promise<ReservationsDTO>;
11
11
  rollback: (reservations: string[]) => Promise<boolean>;
12
12
  cancelReservation: (id: string, email: string) => Promise<boolean>;
@@ -40,9 +40,10 @@ class ReservationAPI extends MockAPI_1.default {
40
40
  this.bookNow = (basketRows, profiles, card, addonRows, comments, specialReq = undefined) => __awaiter(this, void 0, void 0, function* () {
41
41
  const rooms = [];
42
42
  basketRows.forEach((row) => {
43
+ var _a;
43
44
  const room = {
44
45
  RoomType: row.getRoom().code,
45
- RatePlan: row.getRate().code,
46
+ RatePlan: (_a = row.getRate()) === null || _a === void 0 ? void 0 : _a.code,
46
47
  PromoCode: row.getPromoCode(),
47
48
  Adults: row.getAdults(),
48
49
  Children: row.getChildren(),
@@ -1 +1 @@
1
- {"version":3,"file":"ReservationAPI.js","sourceRoot":"/","sources":["src/mockApi/ReservationAPI.ts"],"names":[],"mappings":"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","sourcesContent":["import MockAPI, { APIEndpoint } from 'mockApi/MockAPI';\nimport BasketRow from '@/models/BasketRow';\nimport UserProfile from '@/models/UserProfile';\nimport PaymentCard from '@/models/PaymentCard';\nimport ReservationsDTO, { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketAddonRow from '@/models/BasketAddonRow';\n\nexport default class ReservationAPI extends MockAPI {\n private storedReservations: { [ref: string]: any } = {};\n\n public bookNow = async (\n basketRows: BasketRow[],\n profiles: UserProfile[],\n card: PaymentCard,\n addonRows: BasketAddonRow[],\n comments: string,\n specialReq: string = undefined\n ): Promise<ReservationsDTO> => {\n const rooms: any[] = [];\n\n basketRows.forEach((row) => {\n const room = {\n RoomType: row.getRoom().code,\n RatePlan: row.getRate().code,\n PromoCode: row.getPromoCode(),\n Adults: row.getAdults(),\n Children: row.getChildren(),\n CheckInDate: row.getStartDate().format('YYYY-MM-DD'),\n CheckOutDate: row.getEndDate().format('YYYY-MM-DD'),\n };\n\n rooms.push(room);\n });\n\n const addons = addonRows.map((row) => {\n const addon = row.getAddon();\n const priceInfo = addon.availability[row.getSelectedDate()];\n\n const response: any = {\n Code: addon.code,\n StartDate: row.getSelectedDate(),\n };\n if (row.getAddon().ratePlanCode) {\n response.RatePlanCode = row.getAddon().ratePlanCode;\n }\n if (row.getSelectedTime()) {\n response.StartTime = row.getSelectedTime();\n }\n\n if (priceInfo.price) {\n response.Quantity = row.getQuantity();\n }\n if (priceInfo.adultPrice) {\n response.Adults = row.getAdultQuantity();\n }\n if (priceInfo.childPrice) {\n response.Children = row.getChildQuantity();\n }\n\n return response;\n });\n\n return this.post(APIEndpoint.Reservations, {\n Rooms: rooms,\n Profiles: profiles,\n PaymentCard: card,\n Services: addons,\n SpecialRequest: specialReq,\n Comments: comments,\n });\n };\n\n public commit = async (reservations: string[]): Promise<ReservationsDTO> => {\n return this.post(\n APIEndpoint.Reservations,\n {\n reservationIds: reservations,\n },\n {},\n 'commit'\n );\n };\n\n public rollback = async (reservations: string[]): Promise<boolean> => {\n await this.post(\n APIEndpoint.Reservations,\n {\n reservationIds: reservations,\n },\n {},\n 'rollback'\n );\n\n return true;\n };\n\n public cancelReservation = (id: string, email: string): Promise<boolean> =>\n new Promise(async (resolve, reject) => {\n try {\n const response = await this.delete(APIEndpoint.Reservations, {}, { email }, id);\n\n this.storedReservations[id]?.reservations?.forEach((reservation: ReservationDTO) => {\n if (reservation.reservationNumber === id) {\n reservation.status = 'Cancelled';\n }\n });\n\n resolve(response);\n } catch (ex) {\n reject(ex);\n }\n });\n\n public findReservation = (id: string, email?: string, hotelId?: string): Promise<ReservationsDTO> =>\n new Promise(async (resolve, reject) => {\n /*\n resolve with locally cached data, so we don't have to re-query this again\n */\n if (this.storedReservations[id]) {\n return resolve(this.storedReservations[id]);\n }\n\n try {\n const response = await this.get(APIEndpoint.Reservations, { email }, id, hotelId);\n\n this.storedReservations[id] = response;\n\n resolve(response);\n } catch (ex) {\n reject(ex);\n }\n });\n}\n"]}
1
+ {"version":3,"file":"ReservationAPI.js","sourceRoot":"/","sources":["src/mockApi/ReservationAPI.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAuD;AAOvD,MAAqB,cAAe,SAAQ,iBAAO;IAAnD;;QACY,uBAAkB,GAA2B,EAAE,CAAC;QAEjD,YAAO,GAAG,CACb,UAAuB,EACvB,QAAuB,EACvB,IAAiB,EACjB,SAA2B,EAC3B,QAAgB,EAChB,aAAiC,SAAS,EAClB,EAAE;YAC1B,MAAM,KAAK,GAAU,EAAE,CAAC;YAExB,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;gBACvB,MAAM,IAAI,GAAG;oBACT,QAAQ,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI;oBAC5B,QAAQ,EAAE,MAAA,GAAG,CAAC,OAAO,EAAE,0CAAE,IAAI;oBAC7B,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE;oBAC7B,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE;oBACvB,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE;oBAC3B,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;oBACpD,YAAY,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;iBACtD,CAAC;gBAEF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjC,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;gBAE5D,MAAM,QAAQ,GAAQ;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,SAAS,EAAE,GAAG,CAAC,eAAe,EAAE;iBACnC,CAAC;gBACF,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE;oBAC7B,QAAQ,CAAC,YAAY,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC;iBACvD;gBACD,IAAI,GAAG,CAAC,eAAe,EAAE,EAAE;oBACvB,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;iBAC9C;gBAED,IAAI,SAAS,CAAC,KAAK,EAAE;oBACjB,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;iBACzC;gBACD,IAAI,SAAS,CAAC,UAAU,EAAE;oBACtB,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,gBAAgB,EAAE,CAAC;iBAC5C;gBACD,IAAI,SAAS,CAAC,UAAU,EAAE;oBACtB,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,gBAAgB,EAAE,CAAC;iBAC9C;gBAED,OAAO,QAAQ,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,IAAI,CAAC,qBAAW,CAAC,YAAY,EAAE;gBACvC,KAAK,EAAE,KAAK;gBACZ,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE,MAAM;gBAChB,cAAc,EAAE,UAAU;gBAC1B,QAAQ,EAAE,QAAQ;aACrB,CAAC,CAAC;QACP,CAAC,CAAA,CAAC;QAEK,WAAM,GAAG,CAAO,YAAsB,EAA4B,EAAE;YACvE,OAAO,IAAI,CAAC,IAAI,CACZ,qBAAW,CAAC,YAAY,EACxB;gBACI,cAAc,EAAE,YAAY;aAC/B,EACD,EAAE,EACF,QAAQ,CACX,CAAC;QACN,CAAC,CAAA,CAAC;QAEK,aAAQ,GAAG,CAAO,YAAsB,EAAoB,EAAE;YACjE,MAAM,IAAI,CAAC,IAAI,CACX,qBAAW,CAAC,YAAY,EACxB;gBACI,cAAc,EAAE,YAAY;aAC/B,EACD,EAAE,EACF,UAAU,CACb,CAAC;YAEF,OAAO,IAAI,CAAC;QAChB,CAAC,CAAA,CAAC;QAEK,sBAAiB,GAAG,CAAC,EAAU,EAAE,KAAa,EAAoB,EAAE,CACvE,IAAI,OAAO,CAAC,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;;YAClC,IAAI;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,qBAAW,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEhF,MAAA,MAAA,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,0CAAE,YAAY,0CAAE,OAAO,CAAC,CAAC,WAA2B,EAAE,EAAE;oBAC/E,IAAI,WAAW,CAAC,iBAAiB,KAAK,EAAE,EAAE;wBACtC,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC;qBACpC;gBACL,CAAC,CAAC,CAAC;gBAEH,OAAO,CAAC,QAAQ,CAAC,CAAC;aACrB;YAAC,OAAO,EAAE,EAAE;gBACT,MAAM,CAAC,EAAE,CAAC,CAAC;aACd;QACL,CAAC,CAAA,CAAC,CAAC;QAEA,oBAAe,GAAG,CAAC,EAAU,EAAE,KAAc,EAAE,OAAgB,EAA4B,EAAE,CAChG,IAAI,OAAO,CAAC,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAClC;;UAEF;YACE,IAAI,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE;gBAC7B,OAAO,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;aAC/C;YAED,IAAI;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,qBAAW,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAiB,CAAC,CAAC;gBAE5F,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC;gBAEvC,OAAO,CAAC,QAAQ,CAAC,CAAC;aACrB;YAAC,OAAO,EAAE,EAAE;gBACT,MAAM,CAAC,EAAE,CAAC,CAAC;aACd;QACL,CAAC,CAAA,CAAC,CAAC;IACX,CAAC;CAAA;AA7HD,iCA6HC","sourcesContent":["import MockAPI, { APIEndpoint } from 'mockApi/MockAPI';\nimport BasketRow from '@/models/BasketRow';\nimport UserProfile from '@/models/UserProfile';\nimport PaymentCard from '@/models/PaymentCard';\nimport ReservationsDTO, { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketAddonRow from '@/models/BasketAddonRow';\n\nexport default class ReservationAPI extends MockAPI {\n private storedReservations: { [ref: string]: any } = {};\n\n public bookNow = async (\n basketRows: BasketRow[],\n profiles: UserProfile[],\n card: PaymentCard,\n addonRows: BasketAddonRow[],\n comments: string,\n specialReq: string | undefined = undefined\n ): Promise<ReservationsDTO> => {\n const rooms: any[] = [];\n\n basketRows.forEach((row) => {\n const room = {\n RoomType: row.getRoom().code,\n RatePlan: row.getRate()?.code,\n PromoCode: row.getPromoCode(),\n Adults: row.getAdults(),\n Children: row.getChildren(),\n CheckInDate: row.getStartDate().format('YYYY-MM-DD'),\n CheckOutDate: row.getEndDate().format('YYYY-MM-DD'),\n };\n\n rooms.push(room);\n });\n\n const addons = addonRows.map((row) => {\n const addon = row.getAddon();\n const priceInfo = addon.availability[row.getSelectedDate()];\n\n const response: any = {\n Code: addon.code,\n StartDate: row.getSelectedDate(),\n };\n if (row.getAddon().ratePlanCode) {\n response.RatePlanCode = row.getAddon().ratePlanCode;\n }\n if (row.getSelectedTime()) {\n response.StartTime = row.getSelectedTime();\n }\n\n if (priceInfo.price) {\n response.Quantity = row.getQuantity();\n }\n if (priceInfo.adultPrice) {\n response.Adults = row.getAdultQuantity();\n }\n if (priceInfo.childPrice) {\n response.Children = row.getChildQuantity();\n }\n\n return response;\n });\n\n return this.post(APIEndpoint.Reservations, {\n Rooms: rooms,\n Profiles: profiles,\n PaymentCard: card,\n Services: addons,\n SpecialRequest: specialReq,\n Comments: comments,\n });\n };\n\n public commit = async (reservations: string[]): Promise<ReservationsDTO> => {\n return this.post(\n APIEndpoint.Reservations,\n {\n reservationIds: reservations,\n },\n {},\n 'commit'\n );\n };\n\n public rollback = async (reservations: string[]): Promise<boolean> => {\n await this.post(\n APIEndpoint.Reservations,\n {\n reservationIds: reservations,\n },\n {},\n 'rollback'\n );\n\n return true;\n };\n\n public cancelReservation = (id: string, email: string): Promise<boolean> =>\n new Promise(async (resolve, reject) => {\n try {\n const response = await this.delete(APIEndpoint.Reservations, {}, { email }, id);\n\n this.storedReservations[id]?.reservations?.forEach((reservation: ReservationDTO) => {\n if (reservation.reservationNumber === id) {\n reservation.status = 'Cancelled';\n }\n });\n\n resolve(response);\n } catch (ex) {\n reject(ex);\n }\n });\n\n public findReservation = (id: string, email?: string, hotelId?: string): Promise<ReservationsDTO> =>\n new Promise(async (resolve, reject) => {\n /*\n resolve with locally cached data, so we don't have to re-query this again\n */\n if (this.storedReservations[id]) {\n return resolve(this.storedReservations[id]);\n }\n\n try {\n const response = await this.get(APIEndpoint.Reservations, { email }, id, hotelId as string);\n\n this.storedReservations[id] = response;\n\n resolve(response);\n } catch (ex) {\n reject(ex);\n }\n });\n}\n"]}
@@ -44,6 +44,7 @@ export declare enum AddonPricingType {
44
44
  PER_ADULT_OCCUPANCY_PER_NIGHT = "Per Adult Occupancy Per Night",
45
45
  PER_CHILD_OCCUPANCY_PER_NIGHT = "Per Child Occupancy Per Night"
46
46
  }
47
+ export declare const ADDON_PER_NIGHT_TYPES: AddonPricingType[];
47
48
  export declare class Addon {
48
49
  code: string;
49
50
  /**
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Addon = exports.AddonPricingType = void 0;
6
+ exports.Addon = exports.ADDON_PER_NIGHT_TYPES = exports.AddonPricingType = void 0;
7
7
  const dayjs_1 = __importDefault(require("dayjs"));
8
8
  var AddonPricingType;
9
9
  (function (AddonPricingType) {
@@ -18,6 +18,15 @@ var AddonPricingType;
18
18
  AddonPricingType["PER_ADULT_OCCUPANCY_PER_NIGHT"] = "Per Adult Occupancy Per Night";
19
19
  AddonPricingType["PER_CHILD_OCCUPANCY_PER_NIGHT"] = "Per Child Occupancy Per Night";
20
20
  })(AddonPricingType = exports.AddonPricingType || (exports.AddonPricingType = {}));
21
+ exports.ADDON_PER_NIGHT_TYPES = [
22
+ AddonPricingType.PER_NIGHT,
23
+ AddonPricingType.PER_PERSON_PER_NIGHT,
24
+ AddonPricingType.PER_QUANTITY_NAME_PER_NIGHT,
25
+ AddonPricingType.PER_ROOM_QUANTITY_PER_NIGHT,
26
+ AddonPricingType.PER_PERSON_OCCUPANCY_PER_NIGHT,
27
+ AddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT,
28
+ AddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT,
29
+ ];
21
30
  class Addon {
22
31
  constructor(props) {
23
32
  /**
@@ -38,7 +47,7 @@ class Addon {
38
47
  }, this);
39
48
  let first = true;
40
49
  for (const date in this.availability) {
41
- if (!this.availability.hasOwnProperty(date)) {
50
+ if (!Object.prototype.hasOwnProperty.call(this.availability, date)) {
42
51
  continue;
43
52
  }
44
53
  const day = (0, dayjs_1.default)(date, 'YYYY-MM-DD');
@@ -1 +1 @@
1
- {"version":3,"file":"Addon.js","sourceRoot":"/","sources":["src/models/Addon/Addon.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport { Dayjs } from 'dayjs';\n\ninterface IAddon {\n code: string;\n\n /**\n * The SynXis CR RatePlan Code associated with the Package if the Package is restricted to certain RatePlans\n */\n ratePlanCode: string;\n\n name: string;\n\n description: string;\n\n /**\n * Whether the price for this package is included in the room rate.\n * (Always `false` unless the price is zero)\n */\n inclusive: boolean;\n\n image?: string;\n\n url?: string;\n\n /**\n * Defines how a service is priced.\n * Values:\n * Per Stay\n * Per Night\n * Per Person\n * Per Person Per Night\n */\n pricingType: AddonPricingType;\n\n hideDatePicker?: boolean;\n\n category: string;\n\n cancelPenalty?: string;\n\n guaranteeDescription?: string;\n\n availability: { [date: string]: PriceInfo };\n\n checkInDate: dayjs.Dayjs;\n checkOutDate: dayjs.Dayjs;\n}\n\nexport enum AddonPricingType {\n PER_STAY = 'Per stay',\n PER_NIGHT = 'Per night',\n PER_PERSON = 'Per person',\n PER_PERSON_PER_NIGHT = 'Per person per night',\n\n // Synxis Basic addon types\n PER_QUANTITY_NAME_PER_NIGHT = 'Per Quantity Name Per Night',\n PER_ROOM_QUANTITY_PER_NIGHT = 'Per Room Quantity Per Night',\n PER_PERSON_OCCUPANCY_PER_NIGHT = 'Per Person Occupancy Per Night',\n PER_ADULT_OCCUPANCY_PER_NIGHT = 'Per Adult Occupancy Per Night',\n PER_CHILD_OCCUPANCY_PER_NIGHT = 'Per Child Occupancy Per Night',\n}\n\nexport class Addon {\n public code: string;\n\n /**\n * The SynXis CR RatePlan Code associated with the Package if the Package is restricted to certain RatePlans\n */\n public ratePlanCode: string;\n\n public name: string;\n\n public description: string;\n\n /**\n * Whether the price for this package is included in the room rate.\n * (Always `false` unless the price is zero)\n */\n public inclusive = false;\n\n public image?: string;\n\n public url?: string;\n\n /**\n * Defines how a service is priced.\n * Values:\n * Per Stay\n * Per Night\n * Per Person\n * Per Person Per Night\n */\n public pricingType: AddonPricingType;\n\n public hideDatePicker: false;\n\n public category: string;\n\n public cancelPenalty?: string;\n\n public guaranteeDescription?: string;\n\n public availability: { [date: string]: PriceInfo } = {};\n\n public selected?: boolean;\n\n public selectorDates: { text: string; value: string }[] = [];\n\n public firstDate?: string;\n\n public checkInDate: dayjs.Dayjs;\n public checkOutDate: dayjs.Dayjs;\n\n public nights: number;\n\n public constructor(props?: IAddon) {\n if (props) {\n this.applyData(props);\n }\n }\n\n public applyData(data: IAddon) {\n Object.keys(data).map((key: any) => {\n (this as any)[key] = (data as any)[key];\n }, this);\n\n let first = true;\n for (const date in this.availability) {\n if (!this.availability.hasOwnProperty(date)) {\n continue;\n }\n\n const day = dayjs(date, 'YYYY-MM-DD');\n this.selectorDates.push({ text: day.format('D MMM'), value: date });\n if (first) {\n this.firstDate = date;\n first = false;\n }\n\n const priceInfo = this.availability[date];\n priceInfo.selectorTimes = [];\n priceInfo.timeSlots?.forEach((slot) => {\n const timeRegExp = /T(\\d{2}):(\\d{2}):(\\d{2})$/;\n const startTime = slot.startTime?.match(timeRegExp);\n const endTime = slot.endTime?.match(timeRegExp);\n\n if (startTime && endTime) {\n const start = dayjs().hour(parseInt(startTime[1], 10)).minute(parseInt(startTime[2], 10)).second(parseInt(startTime[3], 10));\n const end = dayjs().hour(parseInt(endTime[1], 10)).minute(parseInt(endTime[2], 10)).second(parseInt(endTime[3], 10));\n\n const [hours, minutes, seconds] = slot.increment.split(':').map((it) => parseInt(it, 10));\n\n const increment = (time: Dayjs) => time.add(hours, 'hour').add(minutes, 'minute').add(seconds, 'second');\n\n for (let time = start; time.isBefore(end, 'second'); time = increment(time)) {\n priceInfo.selectorTimes.push({ text: time.format('h:mma'), value: time.format('THH:mm:ss') });\n }\n }\n });\n }\n\n if (data.checkInDate && data.checkOutDate) {\n this.nights = data.checkOutDate.diff(data.checkInDate, 'day');\n }\n }\n\n public static fromData(data: any) {\n const addon = new this();\n\n addon.applyData(data);\n\n return addon;\n }\n}\n\nexport type PriceInfo = {\n /**\n * Number of available items for sale.\n */\n quantity: number;\n\n /**\n * Price per quantity\n */\n price?: number;\n\n adultPrice?: number;\n childPrice?: number;\n\n timeSlots?: TimeSlot[];\n\n selectorTimes?: { text: string; value: string }[];\n};\n\nexport type TimeSlot = {\n /**\n * The start date and time when the package is available.\n * If the package applies during the whole stay, this node is not returned unless the time needs to be selected. In that case, the Start and End dates do not\n * include the date: @Start=\"T07:30:00\" and @End=\"T17:30:00\" and @Increment=\"00:60:00\"\n * Type: DateTime\n */\n startTime?: string;\n\n /**\n * The end date / time when the package is available.\n * If the package component applies during the whole stay, this node is not returned unless the time needs to be selected. In that case, the Start and End dates\n * do not include the date: @Start=\"T07:30:00\" and @End=\"T17:30:00\" and @Increment=\"00:60:00\"\n * Type: DateTime\n */\n endTime?: string;\n\n /**\n * Used with @Start and @End. Indicates the interval when the package or service is available.\n * For example, a package with golf lessons from 7:30 am to 5:30 pm with instructions and available hourly has the TimeSpan attributes set as: @Start=\"2015-\n * 010-28T07:30:00\" and @End=\"2015-10-28T17:30:00\" and @Increment=\"00:60:00\"\n * Type: Time\n */\n increment?: string;\n};\n"]}
1
+ {"version":3,"file":"Addon.js","sourceRoot":"/","sources":["src/models/Addon/Addon.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAiD1B,IAAY,gBAYX;AAZD,WAAY,gBAAgB;IACxB,yCAAqB,CAAA;IACrB,2CAAuB,CAAA;IACvB,6CAAyB,CAAA;IACzB,iEAA6C,CAAA;IAE7C,2BAA2B;IAC3B,+EAA2D,CAAA;IAC3D,+EAA2D,CAAA;IAC3D,qFAAiE,CAAA;IACjE,mFAA+D,CAAA;IAC/D,mFAA+D,CAAA;AACnE,CAAC,EAZW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAY3B;AAEY,QAAA,qBAAqB,GAAG;IACjC,gBAAgB,CAAC,SAAS;IAC1B,gBAAgB,CAAC,oBAAoB;IAErC,gBAAgB,CAAC,2BAA2B;IAC5C,gBAAgB,CAAC,2BAA2B;IAC5C,gBAAgB,CAAC,8BAA8B;IAC/C,gBAAgB,CAAC,6BAA6B;IAC9C,gBAAgB,CAAC,6BAA6B;CACjD,CAAC;AAEF,MAAa,KAAK;IAqDd,YAAmB,KAAc;QAzCjC;;;WAGG;QACI,cAAS,GAAG,KAAK,CAAC;QAwBlB,iBAAY,GAAkC,EAAE,CAAC;QAIjD,kBAAa,GAAsC,EAAE,CAAC;QAUzD,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SACzB;IACL,CAAC;IAEM,SAAS,CAAC,IAAY;;QACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE;YAC9B,IAAY,CAAC,GAAG,CAAC,GAAI,IAAY,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE;gBAChE,SAAS;aACZ;YAED,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,IAAI,KAAK,EAAE;gBACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,KAAK,GAAG,KAAK,CAAC;aACjB;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC1C,SAAS,CAAC,aAAa,GAAG,EAAE,CAAC;YAC7B,MAAA,SAAS,CAAC,SAAS,0CAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;gBAClC,MAAM,UAAU,GAAG,2BAA2B,CAAC;gBAC/C,MAAM,SAAS,GAAG,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBAEhD,IAAI,SAAS,IAAI,OAAO,EAAE;oBACtB,MAAM,KAAK,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC7H,MAAM,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBAErH,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,GAAI,IAAI,CAAC,SAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;oBAEtG,MAAM,SAAS,GAAG,CAAC,IAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oBAEzG,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE;wBACxE,SAAS,CAAC,aAAmD,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;qBACxI;iBACJ;YACL,CAAC,CAAC,CAAC;SACN;QAED,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE;YACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;SACjE;IACL,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAS;QAC5B,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QAEzB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AA/GD,sBA+GC","sourcesContent":["import dayjs from 'dayjs';\nimport { Dayjs } from 'dayjs';\n\ninterface IAddon {\n code: string;\n\n /**\n * The SynXis CR RatePlan Code associated with the Package if the Package is restricted to certain RatePlans\n */\n ratePlanCode: string;\n\n name: string;\n\n description: string;\n\n /**\n * Whether the price for this package is included in the room rate.\n * (Always `false` unless the price is zero)\n */\n inclusive: boolean;\n\n image?: string;\n\n url?: string;\n\n /**\n * Defines how a service is priced.\n * Values:\n * Per Stay\n * Per Night\n * Per Person\n * Per Person Per Night\n */\n pricingType: AddonPricingType;\n\n hideDatePicker?: boolean;\n\n category: string;\n\n cancelPenalty?: string;\n\n guaranteeDescription?: string;\n\n availability: { [date: string]: PriceInfo };\n\n checkInDate: dayjs.Dayjs;\n checkOutDate: dayjs.Dayjs;\n}\n\nexport enum AddonPricingType {\n PER_STAY = 'Per stay',\n PER_NIGHT = 'Per night',\n PER_PERSON = 'Per person',\n PER_PERSON_PER_NIGHT = 'Per person per night',\n\n // Synxis Basic addon types\n PER_QUANTITY_NAME_PER_NIGHT = 'Per Quantity Name Per Night',\n PER_ROOM_QUANTITY_PER_NIGHT = 'Per Room Quantity Per Night',\n PER_PERSON_OCCUPANCY_PER_NIGHT = 'Per Person Occupancy Per Night',\n PER_ADULT_OCCUPANCY_PER_NIGHT = 'Per Adult Occupancy Per Night',\n PER_CHILD_OCCUPANCY_PER_NIGHT = 'Per Child Occupancy Per Night',\n}\n\nexport const ADDON_PER_NIGHT_TYPES = [\n AddonPricingType.PER_NIGHT,\n AddonPricingType.PER_PERSON_PER_NIGHT,\n\n AddonPricingType.PER_QUANTITY_NAME_PER_NIGHT,\n AddonPricingType.PER_ROOM_QUANTITY_PER_NIGHT,\n AddonPricingType.PER_PERSON_OCCUPANCY_PER_NIGHT,\n AddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT,\n AddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT,\n];\n\nexport class Addon {\n public code!: string;\n\n /**\n * The SynXis CR RatePlan Code associated with the Package if the Package is restricted to certain RatePlans\n */\n public ratePlanCode!: string;\n\n public name!: string;\n\n public description!: string;\n\n /**\n * Whether the price for this package is included in the room rate.\n * (Always `false` unless the price is zero)\n */\n public inclusive = false;\n\n public image?: string;\n\n public url?: string;\n\n /**\n * Defines how a service is priced.\n * Values:\n * Per Stay\n * Per Night\n * Per Person\n * Per Person Per Night\n */\n public pricingType!: AddonPricingType;\n\n public hideDatePicker!: false;\n\n public category!: string;\n\n public cancelPenalty?: string;\n\n public guaranteeDescription?: string;\n\n public availability: { [date: string]: PriceInfo } = {};\n\n public selected?: boolean;\n\n public selectorDates: { text: string; value: string }[] = [];\n\n public firstDate?: string;\n\n public checkInDate!: dayjs.Dayjs;\n public checkOutDate!: dayjs.Dayjs;\n\n public nights!: number;\n\n public constructor(props?: IAddon) {\n if (props) {\n this.applyData(props);\n }\n }\n\n public applyData(data: IAddon) {\n Object.keys(data).map((key: any) => {\n (this as any)[key] = (data as any)[key];\n }, this);\n\n let first = true;\n for (const date in this.availability) {\n if (!Object.prototype.hasOwnProperty.call(this.availability, date)) {\n continue;\n }\n\n const day = dayjs(date, 'YYYY-MM-DD');\n this.selectorDates.push({ text: day.format('D MMM'), value: date });\n if (first) {\n this.firstDate = date;\n first = false;\n }\n\n const priceInfo = this.availability[date];\n priceInfo.selectorTimes = [];\n priceInfo.timeSlots?.forEach((slot) => {\n const timeRegExp = /T(\\d{2}):(\\d{2}):(\\d{2})$/;\n const startTime = slot.startTime?.match(timeRegExp);\n const endTime = slot.endTime?.match(timeRegExp);\n\n if (startTime && endTime) {\n const start = dayjs().hour(parseInt(startTime[1], 10)).minute(parseInt(startTime[2], 10)).second(parseInt(startTime[3], 10));\n const end = dayjs().hour(parseInt(endTime[1], 10)).minute(parseInt(endTime[2], 10)).second(parseInt(endTime[3], 10));\n\n const [hours, minutes, seconds] = (slot.increment as string).split(':').map((it) => parseInt(it, 10));\n\n const increment = (time: Dayjs) => time.add(hours, 'hour').add(minutes, 'minute').add(seconds, 'second');\n\n for (let time = start; time.isBefore(end, 'second'); time = increment(time)) {\n (priceInfo.selectorTimes as { text: string; value: string }[]).push({ text: time.format('h:mma'), value: time.format('THH:mm:ss') });\n }\n }\n });\n }\n\n if (data.checkInDate && data.checkOutDate) {\n this.nights = data.checkOutDate.diff(data.checkInDate, 'day');\n }\n }\n\n public static fromData(data: any) {\n const addon = new this();\n\n addon.applyData(data);\n\n return addon;\n }\n}\n\nexport type PriceInfo = {\n /**\n * Number of available items for sale.\n */\n quantity: number;\n\n /**\n * Price per quantity\n */\n price?: number;\n\n adultPrice?: number;\n childPrice?: number;\n\n timeSlots?: TimeSlot[];\n\n selectorTimes?: { text: string; value: string }[];\n};\n\nexport type TimeSlot = {\n /**\n * The start date and time when the package is available.\n * If the package applies during the whole stay, this node is not returned unless the time needs to be selected. In that case, the Start and End dates do not\n * include the date: @Start=\"T07:30:00\" and @End=\"T17:30:00\" and @Increment=\"00:60:00\"\n * Type: DateTime\n */\n startTime?: string;\n\n /**\n * The end date / time when the package is available.\n * If the package component applies during the whole stay, this node is not returned unless the time needs to be selected. In that case, the Start and End dates\n * do not include the date: @Start=\"T07:30:00\" and @End=\"T17:30:00\" and @Increment=\"00:60:00\"\n * Type: DateTime\n */\n endTime?: string;\n\n /**\n * Used with @Start and @End. Indicates the interval when the package or service is available.\n * For example, a package with golf lessons from 7:30 am to 5:30 pm with instructions and available hourly has the TimeSpan attributes set as: @Start=\"2015-\n * 010-28T07:30:00\" and @End=\"2015-10-28T17:30:00\" and @Increment=\"00:60:00\"\n * Type: Time\n */\n increment?: string;\n};\n"]}
@@ -28,9 +28,9 @@ export default class BasketAddonRow {
28
28
  getChildQuantity(): number;
29
29
  setChildQuantity(value: number): void;
30
30
  getID(): string;
31
- isValid(): boolean;
31
+ isValid(): boolean | "";
32
32
  setSelectedDate(date: string): void;
33
- setSelectedTime(time: string): void;
33
+ setSelectedTime(time?: string): void;
34
34
  setQuantity(quantity: number): void;
35
35
  setAddon(addon: Addon): void;
36
36
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const Addon_1 = require("./Addon/Addon");
4
+ const TotalCalculator_1 = require("../util/TotalCalculator");
4
5
  class BasketAddonRow {
5
6
  constructor(addon) {
6
7
  if (addon) {
@@ -10,7 +11,7 @@ class BasketAddonRow {
10
11
  this.adultQuantity = 1;
11
12
  this.childQuantity = 0;
12
13
  this.uniqId = btoa(((Date.now() % 1000) / 1000) * Math.random() + '');
13
- this.numberOfAvailableNights = Object.values(addon.availability).length;
14
+ this.numberOfAvailableNights = Object.values(addon === null || addon === void 0 ? void 0 : addon.availability).length;
14
15
  }
15
16
  getAddon() {
16
17
  return this.addon;
@@ -31,20 +32,27 @@ class BasketAddonRow {
31
32
  return this.numberOfAvailableNights;
32
33
  }
33
34
  getTotalPrice() {
35
+ var _a;
34
36
  const addon = this.getAddon();
35
37
  const date = this.getSelectedDate();
36
38
  const priceInfo = addon.availability[date];
37
- let addonTotal = 0;
38
- if (priceInfo.price) {
39
- addonTotal += priceInfo.price * this.getQuantity();
40
- }
41
- if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {
42
- addonTotal += priceInfo.adultPrice * this.getAdultQuantity();
43
- }
44
- if (priceInfo.childPrice && this.getChildQuantity() > 0) {
45
- addonTotal += priceInfo.childPrice * this.getChildQuantity();
46
- }
47
- return addonTotal * this.getNightModifier();
39
+ return (0, TotalCalculator_1.calculateReservationAddonTotal)({
40
+ availability: this.getAddon().availability,
41
+ code: addon.code,
42
+ inclusive: false,
43
+ quantity: this.getQuantity(),
44
+ adultQuantity: this.getAdultQuantity(),
45
+ childQuantity: this.getChildQuantity(),
46
+ description: addon.description,
47
+ name: addon.name,
48
+ category: addon.category,
49
+ image: addon.image,
50
+ price: (_a = priceInfo.price) !== null && _a !== void 0 ? _a : 0,
51
+ adultPrice: priceInfo.adultPrice,
52
+ childPrice: priceInfo.childPrice,
53
+ pricingType: addon.pricingType,
54
+ nights: addon.nights,
55
+ }).total;
48
56
  }
49
57
  getItemPrice() {
50
58
  const addon = this.getAddon();
@@ -70,10 +78,10 @@ class BasketAddonRow {
70
78
  if (priceInfo.price) {
71
79
  quantity += this.getQuantity();
72
80
  }
73
- if (priceInfo.adultPrice) {
81
+ if (priceInfo.adultPrice || addon.pricingType === Addon_1.AddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT) {
74
82
  quantity += this.getAdultQuantity();
75
83
  }
76
- if (priceInfo.childPrice) {
84
+ if (priceInfo.childPrice || addon.pricingType === Addon_1.AddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT) {
77
85
  quantity += this.getChildQuantity();
78
86
  }
79
87
  return quantity;
@@ -85,12 +93,11 @@ class BasketAddonRow {
85
93
  */
86
94
  getNightModifier() {
87
95
  const modifier = 1;
88
- switch (this.addon.pricingType) {
89
- case Addon_1.AddonPricingType.PER_PERSON_PER_NIGHT:
90
- case Addon_1.AddonPricingType.PER_NIGHT:
91
- return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');
92
- default:
93
- return modifier;
96
+ if (Addon_1.ADDON_PER_NIGHT_TYPES.includes(this.addon.pricingType)) {
97
+ return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');
98
+ }
99
+ else {
100
+ return modifier;
94
101
  }
95
102
  }
96
103
  setAdultQuantity(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"BasketAddonRow.js","sourceRoot":"/","sources":["src/models/BasketAddonRow.ts"],"names":[],"mappings":"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","sourcesContent":["import { Addon, AddonPricingType } from '@/models/Addon/Addon';\n\nexport default class BasketAddonRow {\n private readonly uniqId: string;\n\n private addon: Addon;\n\n private quantity: number;\n private adultQuantity: number;\n private childQuantity: number;\n\n private selectedDate: string;\n private selectedTime: string;\n\n private numberOfAvailableNights: number;\n\n public constructor(addon?: Addon) {\n if (addon) {\n this.setAddon(addon);\n }\n\n this.quantity = 1;\n this.adultQuantity = 1;\n this.childQuantity = 0;\n\n this.uniqId = btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n\n this.numberOfAvailableNights = Object.values(addon.availability).length;\n }\n\n public getAddon() {\n return this.addon;\n }\n\n public getSelectedDate() {\n return this.selectedDate;\n }\n\n public getSelectedTime() {\n return this.selectedTime;\n }\n\n public getQuantity() {\n return this.quantity;\n }\n\n public getAdultQuantity(): number {\n return this.adultQuantity;\n }\n\n public getNumberOfAvailableNights() {\n return this.numberOfAvailableNights;\n }\n\n public getTotalPrice(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let addonTotal = 0;\n if (priceInfo.price) {\n addonTotal += priceInfo.price * this.getQuantity();\n }\n\n if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {\n addonTotal += priceInfo.adultPrice * this.getAdultQuantity();\n }\n\n if (priceInfo.childPrice && this.getChildQuantity() > 0) {\n addonTotal += priceInfo.childPrice * this.getChildQuantity();\n }\n\n return addonTotal * this.getNightModifier();\n }\n\n public getItemPrice(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let price = 0;\n if (priceInfo.price) {\n price += priceInfo.price;\n }\n\n if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {\n price += priceInfo.adultPrice;\n }\n\n if (priceInfo.childPrice && this.getChildQuantity() > 0) {\n price += priceInfo.childPrice;\n }\n\n return price;\n }\n\n public getTotalQuantity(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let quantity = 0;\n if (priceInfo.price) {\n quantity += this.getQuantity();\n }\n\n if (priceInfo.adultPrice) {\n quantity += this.getAdultQuantity();\n }\n\n if (priceInfo.childPrice) {\n quantity += this.getChildQuantity();\n }\n\n return quantity;\n }\n\n /**\n * This function returns a value that should multiply the total price of the addon for one (assumed) night\n * Depending on the pricing type\n * @returns number\n */\n public getNightModifier(): number {\n const modifier = 1;\n\n switch (this.addon.pricingType) {\n case AddonPricingType.PER_PERSON_PER_NIGHT:\n case AddonPricingType.PER_NIGHT:\n return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');\n default:\n return modifier;\n }\n }\n\n public setAdultQuantity(value: number) {\n this.adultQuantity = value;\n }\n\n public getChildQuantity(): number {\n return this.childQuantity;\n }\n\n public setChildQuantity(value: number) {\n this.childQuantity = value;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public isValid() {\n return this.selectedDate && this.addon && this.quantity > 0;\n }\n\n public setSelectedDate(date: string) {\n this.selectedDate = date;\n }\n\n public setSelectedTime(time: string) {\n this.selectedTime = time;\n }\n\n public setQuantity(quantity: number) {\n this.quantity = quantity;\n }\n\n public setAddon(addon: Addon) {\n this.addon = addon;\n }\n}\n"]}
1
+ {"version":3,"file":"BasketAddonRow.js","sourceRoot":"/","sources":["src/models/BasketAddonRow.ts"],"names":[],"mappings":"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","sourcesContent":["import { ADDON_PER_NIGHT_TYPES, Addon, AddonPricingType, PriceInfo } from '@/models/Addon/Addon';\nimport { calculateReservationAddonTotal } from '@/util/TotalCalculator';\n\nexport default class BasketAddonRow {\n private readonly uniqId: string;\n\n private addon!: Addon;\n\n private quantity: number;\n private adultQuantity: number;\n private childQuantity: number;\n\n private selectedDate!: string;\n private selectedTime!: string;\n\n private numberOfAvailableNights: number;\n\n public constructor(addon?: Addon) {\n if (addon) {\n this.setAddon(addon);\n }\n\n this.quantity = 1;\n this.adultQuantity = 1;\n this.childQuantity = 0;\n\n this.uniqId = btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n\n this.numberOfAvailableNights = Object.values(addon?.availability as { [date: string]: PriceInfo }).length;\n }\n\n public getAddon() {\n return this.addon;\n }\n\n public getSelectedDate() {\n return this.selectedDate;\n }\n\n public getSelectedTime() {\n return this.selectedTime;\n }\n\n public getQuantity() {\n return this.quantity;\n }\n\n public getAdultQuantity(): number {\n return this.adultQuantity;\n }\n\n public getNumberOfAvailableNights() {\n return this.numberOfAvailableNights;\n }\n\n public getTotalPrice(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n return calculateReservationAddonTotal({\n availability: this.getAddon().availability,\n code: addon.code,\n inclusive: false,\n quantity: this.getQuantity(),\n adultQuantity: this.getAdultQuantity(),\n childQuantity: this.getChildQuantity(),\n description: addon.description,\n name: addon.name,\n category: addon.category,\n image: addon.image as any,\n price: priceInfo.price ?? 0,\n adultPrice: priceInfo.adultPrice,\n childPrice: priceInfo.childPrice,\n pricingType: addon.pricingType,\n nights: addon.nights,\n }).total;\n }\n\n public getItemPrice(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let price = 0;\n if (priceInfo.price) {\n price += priceInfo.price;\n }\n\n if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {\n price += priceInfo.adultPrice;\n }\n\n if (priceInfo.childPrice && this.getChildQuantity() > 0) {\n price += priceInfo.childPrice;\n }\n\n return price;\n }\n\n public getTotalQuantity(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let quantity = 0;\n if (priceInfo.price) {\n quantity += this.getQuantity();\n }\n\n if (priceInfo.adultPrice || addon.pricingType === AddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT) {\n quantity += this.getAdultQuantity();\n }\n\n if (priceInfo.childPrice || addon.pricingType === AddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT) {\n quantity += this.getChildQuantity();\n }\n\n return quantity;\n }\n\n /**\n * This function returns a value that should multiply the total price of the addon for one (assumed) night\n * Depending on the pricing type\n * @returns number\n */\n public getNightModifier(): number {\n const modifier = 1;\n\n if (ADDON_PER_NIGHT_TYPES.includes(this.addon.pricingType)) {\n return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');\n } else {\n return modifier;\n }\n }\n\n public setAdultQuantity(value: number) {\n this.adultQuantity = value;\n }\n\n public getChildQuantity(): number {\n return this.childQuantity;\n }\n\n public setChildQuantity(value: number) {\n this.childQuantity = value;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public isValid() {\n return this.selectedDate && this.addon && this.quantity > 0;\n }\n\n public setSelectedDate(date: string) {\n this.selectedDate = date;\n }\n\n public setSelectedTime(time?: string) {\n this.selectedTime = time as string;\n }\n\n public setQuantity(quantity: number) {\n this.quantity = quantity;\n }\n\n public setAddon(addon: Addon) {\n this.addon = addon;\n }\n}\n"]}
@@ -20,18 +20,18 @@ export default class BasketRow {
20
20
  private member?;
21
21
  constructor(rate?: RoomRate, uniqId?: string);
22
22
  getStale(): boolean;
23
- getRate(): RoomRate;
23
+ getRate(): RoomRate | null;
24
24
  getPromoCode(): string;
25
25
  getPromoOnly(): boolean;
26
26
  getPromoCodeColour(): Color.Success | Color.Alert | Color.Navy;
27
- isPromoCodeValid(): boolean;
27
+ isPromoCodeValid(): boolean | "";
28
28
  getNumberOfDays(): number;
29
29
  getRoom(): Room;
30
30
  getStartDate(): dayjs.Dayjs;
31
31
  getEndDate(): dayjs.Dayjs;
32
- getArrivalDate(): string;
33
- getDepartureDate(): string;
34
- getStayDateRange(format?: string, separator?: string): string;
32
+ getArrivalDate(): string | null;
33
+ getDepartureDate(): string | null;
34
+ getStayDateRange(format?: string, separator?: string): string | undefined;
35
35
  getAdults(): number;
36
36
  getChildren(): number;
37
37
  getID(): string;
@@ -47,6 +47,6 @@ export default class BasketRow {
47
47
  setChildren(children: number): void;
48
48
  setRate(rate: RoomRate): void;
49
49
  setMember(member: Partial<IRoomstayMember>): void;
50
- getTotalPrice(beforeTax?: boolean): number;
50
+ getTotalPrice(beforeTax?: boolean): number | undefined;
51
51
  checkDiffFromReservation(res: ReservationDTO): false | BasketRowDifferences;
52
52
  }
@@ -40,7 +40,7 @@ class BasketRow {
40
40
  }
41
41
  isPromoCodeValid() {
42
42
  const rate = this.getRate();
43
- return rate.getAveragePrice(true) < rate.getAveragePriceBeforeDiscount(true) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';
43
+ return (rate === null || rate === void 0 ? void 0 : rate.getAveragePrice(true)) < (rate === null || rate === void 0 ? void 0 : rate.getAveragePriceBeforeDiscount(true)) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';
44
44
  }
45
45
  getNumberOfDays() {
46
46
  if (this.endDate && this.startDate) {
@@ -135,7 +135,8 @@ class BasketRow {
135
135
  this.member = member;
136
136
  }
137
137
  getTotalPrice(beforeTax = false) {
138
- return this.getRate().getTotalPrice(beforeTax);
138
+ var _a;
139
+ return (_a = this.getRate()) === null || _a === void 0 ? void 0 : _a.getTotalPrice(beforeTax);
139
140
  }
140
141
  checkDiffFromReservation(res) {
141
142
  const differences = {};
@@ -1 +1 @@
1
- {"version":3,"file":"BasketRow.js","sourceRoot":"/","sources":["src/models/BasketRow.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport type { Room } from '@/models/Room/Room';\nimport type { RoomRate } from '@/models/Room/RoomRate';\nimport { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketRowDifferences from '@/models/BasketRowDifferences';\nimport { Color } from '@/util/Color';\nimport { IRoomstayMember } from '@roomstay/core';\n\nexport default class BasketRow {\n private uniqId: string;\n\n private room: Room;\n private rate: RoomRate;\n private isStale: boolean;\n private adults: number;\n private children: number;\n\n private promoCode: string;\n private promoCodeStatus: 'valid' | 'invalid' | 'new';\n\n private startDate: dayjs.Dayjs;\n private endDate: dayjs.Dayjs;\n\n private promoOnly: boolean;\n private member?: Partial<IRoomstayMember>;\n\n public constructor(rate?: RoomRate, uniqId?: string) {\n /*\n Rate is optional since we can create row entries\n on first step, where there is no ability to select rate.\n */\n if (rate) {\n this.setRate(rate);\n }\n\n this.adults = 1;\n this.children = 0;\n this.promoCode = '';\n this.promoCodeStatus = 'new';\n this.promoOnly = false;\n\n this.uniqId = uniqId ? uniqId : btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n }\n public getStale() {\n return this.isStale;\n }\n public getRate() {\n return this.rate;\n }\n\n public getPromoCode() {\n return this.promoCode.toUpperCase();\n }\n\n public getPromoOnly() {\n return this.promoOnly;\n }\n\n public getPromoCodeColour() {\n if (this.promoCodeStatus === 'valid') {\n return Color.Success;\n } else if (this.promoCodeStatus === 'invalid') {\n return Color.Alert;\n }\n\n return Color.Navy;\n }\n\n public isPromoCodeValid() {\n const rate = this.getRate();\n\n return rate.getAveragePrice(true) < rate.getAveragePriceBeforeDiscount(true) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';\n }\n\n public getNumberOfDays() {\n if (this.endDate && this.startDate) {\n return this.endDate.diff(this.startDate, 'day');\n }\n\n return 0;\n }\n\n public getRoom() {\n return this.room;\n }\n\n public getStartDate() {\n return this.startDate;\n }\n\n public getEndDate() {\n return this.endDate;\n }\n\n public getArrivalDate() {\n if (this.startDate) {\n return this.startDate.format('D MMM');\n }\n\n return null;\n }\n\n public getDepartureDate() {\n if (this.endDate) {\n return this.endDate.format('D MMM');\n }\n\n return null;\n }\n\n public getStayDateRange(format = 'ddd D MMM', separator = ',') {\n if (this.startDate && this.endDate) {\n return `${this.startDate.format(format)}${separator} ${this.endDate.format(format)}`;\n }\n }\n\n public getAdults() {\n return this.adults;\n }\n\n public getChildren() {\n return this.children;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public getPromoCodeStatus() {\n return this.promoCodeStatus;\n }\n\n public isValid(): boolean {\n return this.startDate && this.endDate && !!this.rate;\n }\n\n public setPromoCode(code: string) {\n if (this.promoCode !== code.toUpperCase()) {\n this.setPromoCodeStatus('new');\n this.promoOnly = false;\n }\n\n this.promoCode = code.toUpperCase();\n }\n\n public setPromoOnly(value: boolean) {\n this.promoOnly = value;\n }\n\n public setStale(status: boolean) {\n this.isStale = status;\n }\n public setPromoCodeStatus(status: 'valid' | 'invalid' | 'new') {\n this.promoCodeStatus = this.promoCode ? status : 'new';\n }\n\n public setStartDate(date: dayjs.Dayjs) {\n if (this.rate && !date.isSame(this.startDate) && this.startDate) {\n this.rate = null;\n }\n\n if (date?.isValid() || date === undefined) {\n this.startDate = date;\n }\n }\n\n public setEndDate(date: dayjs.Dayjs) {\n if (this.rate && !date.isSame(this.endDate) && this.endDate) {\n this.rate = null;\n }\n\n if (date?.isValid() || date === undefined) {\n this.endDate = date;\n }\n }\n\n public setAdults(adults: number) {\n this.adults = adults;\n }\n\n public setChildren(children: number) {\n this.children = children;\n }\n\n public setRate(rate: RoomRate) {\n this.rate = rate;\n this.room = rate.getRoom();\n }\n\n public setMember(member: Partial<IRoomstayMember>) {\n this.member = member;\n }\n\n public getTotalPrice(beforeTax = false) {\n return this.getRate().getTotalPrice(beforeTax);\n }\n\n public checkDiffFromReservation(res: ReservationDTO) {\n const differences: BasketRowDifferences = {};\n\n if (Number(res.total.afterTax).toFixed(2) !== Number(this.getTotalPrice()).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(),\n after: res.total.afterTax,\n };\n }\n\n if (Object.keys(differences).length) {\n differences.id = this.getID();\n\n return differences;\n } else {\n return false;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"BasketRow.js","sourceRoot":"/","sources":["src/models/BasketRow.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport type { Room } from '@/models/Room/Room';\nimport type { RoomRate } from '@/models/Room/RoomRate';\nimport { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketRowDifferences from '@/models/BasketRowDifferences';\nimport { Color } from '@/util/Color';\nimport { IRoomstayMember } from '@roomstay/core';\n\nexport default class BasketRow {\n private uniqId: string;\n\n private room!: Room;\n private rate!: RoomRate | null;\n private isStale!: boolean;\n private adults: number;\n private children: number;\n\n private promoCode: string;\n private promoCodeStatus: 'valid' | 'invalid' | 'new';\n\n private startDate!: dayjs.Dayjs;\n private endDate!: dayjs.Dayjs;\n\n private promoOnly: boolean;\n private member?: Partial<IRoomstayMember>;\n\n public constructor(rate?: RoomRate, uniqId?: string) {\n /*\n Rate is optional since we can create row entries\n on first step, where there is no ability to select rate.\n */\n if (rate) {\n this.setRate(rate);\n }\n\n this.adults = 1;\n this.children = 0;\n this.promoCode = '';\n this.promoCodeStatus = 'new';\n this.promoOnly = false;\n\n this.uniqId = uniqId ? uniqId : btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n }\n public getStale() {\n return this.isStale;\n }\n public getRate() {\n return this.rate;\n }\n\n public getPromoCode() {\n return this.promoCode.toUpperCase();\n }\n\n public getPromoOnly() {\n return this.promoOnly;\n }\n\n public getPromoCodeColour() {\n if (this.promoCodeStatus === 'valid') {\n return Color.Success;\n } else if (this.promoCodeStatus === 'invalid') {\n return Color.Alert;\n }\n\n return Color.Navy;\n }\n\n public isPromoCodeValid() {\n const rate = this.getRate();\n\n return (rate?.getAveragePrice(true) as number) < (rate?.getAveragePriceBeforeDiscount(true) as number) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';\n }\n\n public getNumberOfDays() {\n if (this.endDate && this.startDate) {\n return this.endDate.diff(this.startDate, 'day');\n }\n\n return 0;\n }\n\n public getRoom() {\n return this.room;\n }\n\n public getStartDate() {\n return this.startDate;\n }\n\n public getEndDate() {\n return this.endDate;\n }\n\n public getArrivalDate() {\n if (this.startDate) {\n return this.startDate.format('D MMM');\n }\n\n return null;\n }\n\n public getDepartureDate() {\n if (this.endDate) {\n return this.endDate.format('D MMM');\n }\n\n return null;\n }\n\n public getStayDateRange(format = 'ddd D MMM', separator = ',') {\n if (this.startDate && this.endDate) {\n return `${this.startDate.format(format)}${separator} ${this.endDate.format(format)}`;\n }\n }\n\n public getAdults() {\n return this.adults;\n }\n\n public getChildren() {\n return this.children;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public getPromoCodeStatus() {\n return this.promoCodeStatus;\n }\n\n public isValid(): boolean {\n return this.startDate && this.endDate && !!this.rate;\n }\n\n public setPromoCode(code: string) {\n if (this.promoCode !== code.toUpperCase()) {\n this.setPromoCodeStatus('new');\n this.promoOnly = false;\n }\n\n this.promoCode = code.toUpperCase();\n }\n\n public setPromoOnly(value: boolean) {\n this.promoOnly = value;\n }\n\n public setStale(status: boolean) {\n this.isStale = status;\n }\n public setPromoCodeStatus(status: 'valid' | 'invalid' | 'new') {\n this.promoCodeStatus = this.promoCode ? status : 'new';\n }\n\n public setStartDate(date: dayjs.Dayjs) {\n if (this.rate && !date.isSame(this.startDate) && this.startDate) {\n this.rate = null;\n }\n\n if (date?.isValid() || date === undefined) {\n this.startDate = date;\n }\n }\n\n public setEndDate(date: dayjs.Dayjs) {\n if (this.rate && !date.isSame(this.endDate) && this.endDate) {\n this.rate = null;\n }\n\n if (date?.isValid() || date === undefined) {\n this.endDate = date;\n }\n }\n\n public setAdults(adults: number) {\n this.adults = adults;\n }\n\n public setChildren(children: number) {\n this.children = children;\n }\n\n public setRate(rate: RoomRate) {\n this.rate = rate;\n this.room = rate.getRoom();\n }\n\n public setMember(member: Partial<IRoomstayMember>) {\n this.member = member;\n }\n\n public getTotalPrice(beforeTax = false) {\n return this.getRate()?.getTotalPrice(beforeTax);\n }\n\n public checkDiffFromReservation(res: ReservationDTO) {\n const differences: BasketRowDifferences = {};\n\n if (Number(res.total.afterTax).toFixed(2) !== Number(this.getTotalPrice()).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(),\n after: res.total.afterTax,\n };\n }\n\n if (Object.keys(differences).length) {\n differences.id = this.getID();\n\n return differences;\n } else {\n return false;\n }\n }\n}\n"]}
@@ -2,5 +2,5 @@ import type ColorProfile from '../Client/Hotel/ColorProfile';
2
2
  export type BookingWizardProperty = {
3
3
  id: string;
4
4
  name: string;
5
- colors: Omit<ColorProfile, 'navbar'>;
5
+ colors?: Omit<ColorProfile, 'navbar'>;
6
6
  };