@roomstay/frontend 2.0.12 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (834) hide show
  1. package/dist/201.bundle.js +1 -1
  2. package/dist/218.bundle.js +1 -1
  3. package/dist/423.bundle.js +1 -1
  4. package/dist/449.bundle.js +1 -1
  5. package/dist/873.bundle.js +1 -1
  6. package/dist/882.bundle.js +1 -1
  7. package/dist/main.bundle.js +1 -1
  8. package/dist/src/animations/AutoAutoHeight.js +28 -2
  9. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  10. package/dist/src/animations/Fade.js +24 -1
  11. package/dist/src/animations/Fade.js.map +1 -1
  12. package/dist/src/api/AddonAPI.js +29 -3
  13. package/dist/src/api/AddonAPI.js.map +1 -1
  14. package/dist/src/api/AvailabilityAPI.d.ts +1 -1
  15. package/dist/src/api/AvailabilityAPI.js +40 -14
  16. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  17. package/dist/src/api/BaseAPI.d.ts +1 -1
  18. package/dist/src/api/BaseAPI.js +7 -4
  19. package/dist/src/api/BaseAPI.js.map +1 -1
  20. package/dist/src/api/BookingAPI.js +12 -9
  21. package/dist/src/api/BookingAPI.js.map +1 -1
  22. package/dist/src/api/ErrorAPI.js +4 -1
  23. package/dist/src/api/ErrorAPI.js.map +1 -1
  24. package/dist/src/api/ExchangeRateAPI.js +4 -1
  25. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  26. package/dist/src/api/HotelAPI.js +4 -1
  27. package/dist/src/api/HotelAPI.js.map +1 -1
  28. package/dist/src/api/MemberAPI.js +24 -1
  29. package/dist/src/api/MemberAPI.js.map +1 -1
  30. package/dist/src/api/ReservationAPI.js +24 -1
  31. package/dist/src/api/ReservationAPI.js.map +1 -1
  32. package/dist/src/api/SessionAPI.js +24 -1
  33. package/dist/src/api/SessionAPI.js.map +1 -1
  34. package/dist/src/api/members-service/MembersServiceAPI.js +4 -1
  35. package/dist/src/api/members-service/MembersServiceAPI.js.map +1 -1
  36. package/dist/src/components/User/Forms/ForgotPasswordForm.js +33 -7
  37. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
  38. package/dist/src/components/User/Forms/SignInForm.js +33 -7
  39. package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
  40. package/dist/src/components/User/Forms/SignUpForm.js +36 -10
  41. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
  42. package/dist/src/components/generic/Alert.js +30 -4
  43. package/dist/src/components/generic/Alert.js.map +1 -1
  44. package/dist/src/components/generic/BEButton.js +30 -4
  45. package/dist/src/components/generic/BEButton.js.map +1 -1
  46. package/dist/src/components/generic/BackButton.js +28 -2
  47. package/dist/src/components/generic/BackButton.js.map +1 -1
  48. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +29 -3
  49. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  50. package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +19 -0
  51. package/dist/src/components/generic/BookingWizard/BookingWizard.js +106 -0
  52. package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -0
  53. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +6 -0
  54. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js +28 -0
  55. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -0
  56. package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +10 -0
  57. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +113 -0
  58. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -0
  59. package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +35 -0
  60. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js +8 -0
  61. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -0
  62. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.d.ts +7 -0
  63. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +146 -0
  64. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -0
  65. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.d.ts +9 -0
  66. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +111 -0
  67. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -0
  68. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.d.ts +10 -0
  69. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +144 -0
  70. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -0
  71. package/dist/src/components/generic/Card/Card/Card.js +30 -4
  72. package/dist/src/components/generic/Card/Card/Card.js.map +1 -1
  73. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +31 -5
  74. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
  75. package/dist/src/components/generic/Checkbox/Checkbox.js +30 -4
  76. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
  77. package/dist/src/components/generic/Countdown.d.ts +1 -1
  78. package/dist/src/components/generic/Countdown.js +29 -3
  79. package/dist/src/components/generic/Countdown.js.map +1 -1
  80. package/dist/src/components/generic/Currency.js +29 -3
  81. package/dist/src/components/generic/Currency.js.map +1 -1
  82. package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +14 -0
  83. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +155 -0
  84. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -0
  85. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.d.ts +10 -0
  86. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js +44 -0
  87. package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js.map +1 -0
  88. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.d.ts +21 -0
  89. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +134 -0
  90. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -0
  91. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.d.ts +6 -0
  92. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +44 -0
  93. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -0
  94. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.d.ts +7 -0
  95. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +57 -0
  96. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -0
  97. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.d.ts +25 -0
  98. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +87 -0
  99. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -0
  100. package/dist/src/components/generic/Distance.js +28 -2
  101. package/dist/src/components/generic/Distance.js.map +1 -1
  102. package/dist/src/components/generic/ForwardedSelect.d.ts +1 -1
  103. package/dist/src/components/generic/ForwardedSelect.js +24 -1
  104. package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
  105. package/dist/src/components/generic/Headline.js +29 -3
  106. package/dist/src/components/generic/Headline.js.map +1 -1
  107. package/dist/src/components/generic/Icon/Icon.js +30 -4
  108. package/dist/src/components/generic/Icon/Icon.js.map +1 -1
  109. package/dist/src/components/generic/IconText/IconText.js +31 -5
  110. package/dist/src/components/generic/IconText/IconText.js.map +1 -1
  111. package/dist/src/components/generic/InputGroup/InputGroup.js +29 -3
  112. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  113. package/dist/src/components/generic/LineBreak.js +29 -3
  114. package/dist/src/components/generic/LineBreak.js.map +1 -1
  115. package/dist/src/components/generic/Notification.js +25 -2
  116. package/dist/src/components/generic/Notification.js.map +1 -1
  117. package/dist/src/components/generic/NumberIncrement.js +30 -4
  118. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  119. package/dist/src/components/generic/Overlay/Overlay.d.ts +3 -2
  120. package/dist/src/components/generic/Overlay/Overlay.js +33 -6
  121. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
  122. package/dist/src/components/generic/PasswordBox/PasswordBox.js +30 -4
  123. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
  124. package/dist/src/components/generic/PaymentCard/CardTypeSelect.d.ts +1 -2
  125. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +30 -4
  126. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -1
  127. package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +2 -3
  128. package/dist/src/components/generic/PaymentCard/PaymentCard.js +30 -4
  129. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -1
  130. package/dist/src/components/generic/PaymentCard/PaymentCardInput.d.ts +2 -3
  131. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +34 -8
  132. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
  133. package/dist/src/components/generic/Pill.js +30 -4
  134. package/dist/src/components/generic/Pill.js.map +1 -1
  135. package/dist/src/components/generic/Placeholder.js +29 -3
  136. package/dist/src/components/generic/Placeholder.js.map +1 -1
  137. package/dist/src/components/generic/PlanpayButton/PlanpayButton.d.ts +1 -2
  138. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +28 -2
  139. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -1
  140. package/dist/src/components/generic/Portal/Portal.js +24 -1
  141. package/dist/src/components/generic/Portal/Portal.js.map +1 -1
  142. package/dist/src/components/generic/PromoCodeInput.js +32 -6
  143. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  144. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +30 -4
  145. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
  146. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +30 -4
  147. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  148. package/dist/src/components/generic/RecentSearchesCard.d.ts +1 -1
  149. package/dist/src/components/generic/RecentSearchesCard.js +35 -9
  150. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  151. package/dist/src/components/generic/Select/Select.d.ts +20 -6
  152. package/dist/src/components/generic/Select/Select.js +92 -25
  153. package/dist/src/components/generic/Select/Select.js.map +1 -1
  154. package/dist/src/components/generic/Slider/Slider.js +29 -3
  155. package/dist/src/components/generic/Slider/Slider.js.map +1 -1
  156. package/dist/src/components/generic/Tabs/ElementChildren.js +24 -1
  157. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
  158. package/dist/src/components/generic/Tabs/Tab.js +24 -1
  159. package/dist/src/components/generic/Tabs/Tab.js.map +1 -1
  160. package/dist/src/components/generic/Tabs/TabContext.js +24 -1
  161. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
  162. package/dist/src/components/generic/Tabs/TabLink.js +30 -4
  163. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  164. package/dist/src/components/generic/Tabs/TabRouteContainer.js +28 -2
  165. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
  166. package/dist/src/components/generic/Tabs/Tabs.js +29 -3
  167. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -1
  168. package/dist/src/components/generic/Text.js +29 -3
  169. package/dist/src/components/generic/Text.js.map +1 -1
  170. package/dist/src/components/generic/TextArea.js +24 -1
  171. package/dist/src/components/generic/TextArea.js.map +1 -1
  172. package/dist/src/components/generic/TextBox.js +30 -4
  173. package/dist/src/components/generic/TextBox.js.map +1 -1
  174. package/dist/src/components/generic/Tooltip/Tooltip.js +28 -2
  175. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
  176. package/dist/src/components/generic/badging/SSLSecureBadge.js +29 -3
  177. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  178. package/dist/src/components/generic/buttons/NextStepButton.js +30 -4
  179. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  180. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +34 -8
  181. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  182. package/dist/src/components/generic/date/DatePicker.d.ts +1 -1
  183. package/dist/src/components/generic/date/DatePicker.js +42 -16
  184. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  185. package/dist/src/components/generic/date/DatePickerDay.d.ts +1 -1
  186. package/dist/src/components/generic/date/DatePickerDay.js +33 -7
  187. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  188. package/dist/src/components/generic/date/DatePickerDays.d.ts +1 -1
  189. package/dist/src/components/generic/date/DatePickerDays.js +29 -3
  190. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  191. package/dist/src/components/generic/date/DatePickerMonth.d.ts +1 -1
  192. package/dist/src/components/generic/date/DatePickerMonth.js +30 -4
  193. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  194. package/dist/src/components/generic/date/DatePickerWeek.js +38 -12
  195. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  196. package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
  197. package/dist/src/components/generic/date/FloatingDatePicker.js +29 -3
  198. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  199. package/dist/src/components/generic/date/WeekViewSkeleton.js +31 -5
  200. package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
  201. package/dist/src/components/generic/loader/ImageLoader.js +29 -3
  202. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  203. package/dist/src/components/generic/loader/LargeLoader.js +28 -2
  204. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  205. package/dist/src/components/generic/loader/SmallSpinner.js +25 -2
  206. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  207. package/dist/src/components/generic/map/HotelLocationMap.js +28 -2
  208. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  209. package/dist/src/components/generic/modal/ConfirmationModal.d.ts +1 -2
  210. package/dist/src/components/generic/modal/ConfirmationModal.js +30 -4
  211. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  212. package/dist/src/components/generic/modal/ErrorModal.js +29 -3
  213. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  214. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +32 -6
  215. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
  216. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +33 -7
  217. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
  218. package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -0
  219. package/dist/src/components/generic/modal/SimpleModal.js +36 -9
  220. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  221. package/dist/src/components/generic/modal/TabbedModal.js +29 -3
  222. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  223. package/dist/src/components/generic/radio/RadioFields.js +32 -6
  224. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  225. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js +24 -1
  226. package/dist/src/components/iconComponents/BookNowPayLaterIcon.js.map +1 -1
  227. package/dist/src/components/members/EditMyProfile.js +32 -6
  228. package/dist/src/components/members/EditMyProfile.js.map +1 -1
  229. package/dist/src/components/navigation/Header.js +40 -14
  230. package/dist/src/components/navigation/Header.js.map +1 -1
  231. package/dist/src/components/navigation/StepSelector.js +34 -8
  232. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  233. package/dist/src/components/navigation/StepSelectorModal.js +33 -7
  234. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  235. package/dist/src/components/pages/Account/Card/CardList.js +30 -4
  236. package/dist/src/components/pages/Account/Card/CardList.js.map +1 -1
  237. package/dist/src/components/pages/Account/Card/MemberCardItem.js +34 -8
  238. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
  239. package/dist/src/components/pages/PageColorComponent.js +28 -2
  240. package/dist/src/components/pages/PageColorComponent.js.map +1 -1
  241. package/dist/src/components/reservation/ReservationItem.js +42 -16
  242. package/dist/src/components/reservation/ReservationItem.js.map +1 -1
  243. package/dist/src/components/reservation/ReservationList.js +28 -2
  244. package/dist/src/components/reservation/ReservationList.js.map +1 -1
  245. package/dist/src/components/steps/DaysSelectedInformer.js +25 -2
  246. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  247. package/dist/src/components/steps/MinimumNightStayPill.js +30 -4
  248. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  249. package/dist/src/components/steps/addons/AddonCard.js +37 -12
  250. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  251. package/dist/src/components/steps/addons/AddonList.js +33 -7
  252. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  253. package/dist/src/components/steps/addons/AddonsNotFound.js +29 -3
  254. package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
  255. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +29 -3
  256. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  257. package/dist/src/components/steps/confirmation/AccountDetails.js +29 -3
  258. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  259. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +30 -4
  260. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
  261. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +24 -1
  262. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
  263. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +32 -6
  264. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
  265. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +28 -2
  266. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
  267. package/dist/src/components/steps/confirmation/RoomContactDetails.js +41 -15
  268. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  269. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +33 -7
  270. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  271. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +37 -11
  272. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  273. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +30 -4
  274. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  275. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +31 -5
  276. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  277. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +54 -28
  278. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  279. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +28 -2
  280. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
  281. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.d.ts +1 -1
  282. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +32 -6
  283. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  284. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +29 -3
  285. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  286. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +25 -2
  287. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  288. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +36 -10
  289. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  290. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +26 -3
  291. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  292. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +37 -12
  293. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  294. package/dist/src/components/steps/date/PeoplePicker.js +32 -6
  295. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  296. package/dist/src/components/steps/date/PeoplePickerRow.js +31 -5
  297. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  298. package/dist/src/components/steps/date/StepDatePricePerRoom.js +32 -6
  299. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  300. package/dist/src/components/steps/date/StepOneDateRange.js +29 -3
  301. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  302. package/dist/src/components/steps/date/StepOneDateRangePicker.js +30 -4
  303. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  304. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +29 -3
  305. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  306. package/dist/src/components/steps/date/StepOneNextStepButton.js +29 -3
  307. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  308. package/dist/src/components/steps/date/StepOneStatusPeople.js +28 -2
  309. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  310. package/dist/src/components/steps/hotel/HotelCard.js +39 -13
  311. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  312. package/dist/src/components/steps/hotel/HotelCardList.js +29 -3
  313. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  314. package/dist/src/components/steps/hotel/HotelCardModal.js +38 -12
  315. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  316. package/dist/src/components/steps/hotel/HotelSearchParameters.js +47 -21
  317. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  318. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +29 -3
  319. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  320. package/dist/src/components/steps/room/AvailableUpgradesModal.js +37 -11
  321. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  322. package/dist/src/components/steps/room/ImageGallerySlider.js +32 -6
  323. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  324. package/dist/src/components/steps/room/InactivityWindow.js +37 -11
  325. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  326. package/dist/src/components/steps/room/LargeRoomCard.js +35 -9
  327. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  328. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +38 -12
  329. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  330. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +35 -9
  331. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  332. package/dist/src/components/steps/room/RatesNotFound.js +29 -3
  333. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  334. package/dist/src/components/steps/room/RoomList.js +38 -12
  335. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  336. package/dist/src/components/steps/room/RoomListAlert.js +31 -5
  337. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
  338. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +34 -8
  339. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  340. package/dist/src/components/steps/room/RoomModal.js +34 -8
  341. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  342. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +31 -5
  343. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  344. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +29 -3
  345. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  346. package/dist/src/components/steps/room/StepRoomErrorForm.js +37 -11
  347. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  348. package/dist/src/components/steps/room/StepRoomHotelDetails.js +29 -3
  349. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  350. package/dist/src/components/steps/room/StepRoomNextStepButton.js +29 -3
  351. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  352. package/dist/src/components/steps/room/StepRoomSortBy.js +34 -9
  353. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  354. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +31 -5
  355. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  356. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +1 -1
  357. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +32 -7
  358. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  359. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +1 -1
  360. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +32 -7
  361. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  362. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +31 -5
  363. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  364. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +43 -17
  365. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  366. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +41 -15
  367. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  368. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +25 -2
  369. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  370. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +31 -5
  371. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  372. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +35 -9
  373. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  374. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +37 -11
  375. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  376. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +29 -3
  377. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  378. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +35 -9
  379. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  380. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +34 -8
  381. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  382. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +34 -8
  383. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  384. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +30 -4
  385. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  386. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +30 -4
  387. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
  388. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +32 -6
  389. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  390. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +38 -12
  391. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  392. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +33 -7
  393. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  394. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +30 -4
  395. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  396. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +38 -12
  397. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  398. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +33 -7
  399. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  400. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +32 -6
  401. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  402. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +32 -6
  403. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  404. package/dist/src/components/summary/BEMapWidget.d.ts +3 -5
  405. package/dist/src/components/summary/BEMapWidget.js +66 -18
  406. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  407. package/dist/src/components/summary/BEMobileSummary.js +35 -9
  408. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  409. package/dist/src/components/summary/BEMobileSummaryModal.js +41 -15
  410. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  411. package/dist/src/components/summary/BESummary.js +37 -11
  412. package/dist/src/components/summary/BESummary.js.map +1 -1
  413. package/dist/src/components/summary/BESummaryAddonRow.js +34 -8
  414. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  415. package/dist/src/components/summary/BESummaryPerkBlock.js +30 -4
  416. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  417. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +25 -2
  418. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  419. package/dist/src/components/summary/BESummaryRoomRow.js +35 -9
  420. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  421. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +30 -4
  422. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  423. package/dist/src/components/temp/Login.js +29 -3
  424. package/dist/src/components/temp/Login.js.map +1 -1
  425. package/dist/src/containers/PrivateRoute.js +24 -1
  426. package/dist/src/containers/PrivateRoute.js.map +1 -1
  427. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +1 -1
  428. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  429. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +42 -16
  430. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  431. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +28 -2
  432. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  433. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +34 -8
  434. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  435. package/dist/src/contexts/ConfirmationFormContext.js +24 -1
  436. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  437. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +30 -4
  438. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  439. package/dist/src/contexts/DatePickerContext.d.ts +1 -1
  440. package/dist/src/contexts/DatePickerContext.js +24 -1
  441. package/dist/src/contexts/DatePickerContext.js.map +1 -1
  442. package/dist/src/contexts/ErrorContext.js +29 -3
  443. package/dist/src/contexts/ErrorContext.js.map +1 -1
  444. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.d.ts +1 -1
  445. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.js.map +1 -1
  446. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +52 -26
  447. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  448. package/dist/src/contexts/HotelOverridesContext.js +28 -2
  449. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  450. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +30 -4
  451. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
  452. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +30 -4
  453. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
  454. package/dist/src/contexts/ModalContext.js +24 -1
  455. package/dist/src/contexts/ModalContext.js.map +1 -1
  456. package/dist/src/contexts/NotificationContext.js +28 -2
  457. package/dist/src/contexts/NotificationContext.js.map +1 -1
  458. package/dist/src/engines/BaseEngine.d.ts +4 -5
  459. package/dist/src/engines/BaseEngine.js +6 -2
  460. package/dist/src/engines/BaseEngine.js.map +1 -1
  461. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +17 -0
  462. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js +31 -0
  463. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -0
  464. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.d.ts +6 -0
  465. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +54 -0
  466. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -0
  467. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.d.ts +6 -2
  468. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +24 -1
  469. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
  470. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +24 -1
  471. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  472. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.d.ts +6 -2
  473. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js +4 -1
  474. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js.map +1 -1
  475. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +61 -35
  476. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  477. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.d.ts +6 -2
  478. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js +4 -1
  479. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  480. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +35 -9
  481. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  482. package/dist/src/errors/GetAvailabilityError.d.ts +1 -1
  483. package/dist/src/errors/GetAvailabilityError.js.map +1 -1
  484. package/dist/src/hooks/AutoFocusOnSelect.d.ts +2 -0
  485. package/dist/src/hooks/AutoFocusOnSelect.js +1 -0
  486. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
  487. package/dist/src/hooks/ConfirmationQuery.js +2 -2
  488. package/dist/src/hooks/ConfirmationQuery.js.map +1 -1
  489. package/dist/src/hooks/ElementSortHook.js +24 -1
  490. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  491. package/dist/src/hooks/EventHook.js +4 -1
  492. package/dist/src/hooks/EventHook.js.map +1 -1
  493. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +14 -8
  494. package/dist/src/hooks/KeyboardControlOnSelect.js +45 -37
  495. package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -1
  496. package/dist/src/hooks/Query.d.ts +1 -1
  497. package/dist/src/hooks/Query.js +29 -6
  498. package/dist/src/hooks/Query.js.map +1 -1
  499. package/dist/src/hooks/VGSHooks.js +6 -3
  500. package/dist/src/hooks/VGSHooks.js.map +1 -1
  501. package/dist/src/hooks/WindowSize.d.ts +9 -3
  502. package/dist/src/hooks/WindowSize.js +13 -2
  503. package/dist/src/hooks/WindowSize.js.map +1 -1
  504. package/dist/src/icons/Check.js +24 -1
  505. package/dist/src/icons/Check.js.map +1 -1
  506. package/dist/src/index.d.ts +1 -0
  507. package/dist/src/index.js +60 -44
  508. package/dist/src/index.js.map +1 -1
  509. package/dist/src/mockApi/AddonAPI.js +5 -2
  510. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  511. package/dist/src/mockApi/BookingAPI.js +9 -6
  512. package/dist/src/mockApi/BookingAPI.js.map +1 -1
  513. package/dist/src/mockApi/ExchangeRateAPI.js +4 -1
  514. package/dist/src/mockApi/ExchangeRateAPI.js.map +1 -1
  515. package/dist/src/mockApi/HotelAPI.js +4 -1
  516. package/dist/src/mockApi/HotelAPI.js.map +1 -1
  517. package/dist/src/mockApi/MemberAPI.js +24 -1
  518. package/dist/src/mockApi/MemberAPI.js.map +1 -1
  519. package/dist/src/mockApi/MockAPI.d.ts +1 -1
  520. package/dist/src/mockApi/MockAPI.js +6 -3
  521. package/dist/src/mockApi/MockAPI.js.map +1 -1
  522. package/dist/src/mockApi/ReservationAPI.js +24 -1
  523. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  524. package/dist/src/models/Addon/Addon.d.ts +1 -1
  525. package/dist/src/models/Addon/Addon.js +7 -4
  526. package/dist/src/models/Addon/Addon.js.map +1 -1
  527. package/dist/src/models/BasketRow.d.ts +1 -1
  528. package/dist/src/models/BasketRow.js.map +1 -1
  529. package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +6 -0
  530. package/dist/src/models/BookingWizard/BookingWizardProperty.js +3 -0
  531. package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -0
  532. package/dist/src/models/BookingWizard/BookingWizardTypes.d.ts +4 -0
  533. package/dist/src/models/BookingWizard/BookingWizardTypes.js +3 -0
  534. package/dist/src/models/BookingWizard/BookingWizardTypes.js.map +1 -0
  535. package/dist/src/models/Promotion/IPromotion.type.d.ts +1 -1
  536. package/dist/src/models/Promotion/IPromotion.type.js.map +1 -1
  537. package/dist/src/models/Reservation/Reservation.d.ts +1 -1
  538. package/dist/src/models/Reservation/Reservation.js.map +1 -1
  539. package/dist/src/models/Room/Filters/BudgetFilter.js +4 -1
  540. package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
  541. package/dist/src/models/Room/Filters/RateTypeFilter.js +4 -1
  542. package/dist/src/models/Room/Filters/RateTypeFilter.js.map +1 -1
  543. package/dist/src/models/Room/Filters/RoomTypeFilter.js +4 -1
  544. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  545. package/dist/src/models/Room/RoomRate.js +6 -3
  546. package/dist/src/models/Room/RoomRate.js.map +1 -1
  547. package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
  548. package/dist/src/models/Room/RoomRateNight.js +5 -2
  549. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  550. package/dist/src/models/RoomstaySession.d.ts +1 -1
  551. package/dist/src/models/RoomstaySession.js.map +1 -1
  552. package/dist/src/pages/account/AccountHome/AccountHomePage.js +34 -8
  553. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
  554. package/dist/src/pages/account/AccountOutlet.js +24 -1
  555. package/dist/src/pages/account/AccountOutlet.js.map +1 -1
  556. package/dist/src/pages/account/AccountRouter.js +24 -1
  557. package/dist/src/pages/account/AccountRouter.js.map +1 -1
  558. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +33 -7
  559. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
  560. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +32 -6
  561. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
  562. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +34 -8
  563. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
  564. package/dist/src/pages/account/Help/AccountHelpPage.js +36 -10
  565. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
  566. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +40 -14
  567. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +1 -1
  568. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +39 -13
  569. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +1 -1
  570. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +39 -13
  571. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  572. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +31 -5
  573. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
  574. package/dist/src/pages/findReservation/FindReservation.js +39 -13
  575. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  576. package/dist/src/pages/findReservation/FindReservationResults.js +40 -14
  577. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  578. package/dist/src/pages/findReservation/ReservationRow.js +40 -14
  579. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  580. package/dist/src/pages/findReservation/ReservationRowModal.js +39 -13
  581. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  582. package/dist/src/pages/hotel/HotelInfo.js +36 -10
  583. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  584. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +28 -2
  585. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  586. package/dist/src/pages/steps/StepAddon/StepAddon.js +6 -3
  587. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  588. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +35 -9
  589. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  590. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +29 -3
  591. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  592. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js +4 -1
  593. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js.map +1 -1
  594. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js +6 -3
  595. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  596. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +41 -15
  597. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  598. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +29 -3
  599. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  600. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js +4 -1
  601. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
  602. package/dist/src/pages/steps/StepDate/StepDate.js +6 -3
  603. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  604. package/dist/src/pages/steps/StepDate/StepDateComponent.js +39 -13
  605. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  606. package/dist/src/pages/steps/StepDate/StepDateValidator.js +4 -1
  607. package/dist/src/pages/steps/StepDate/StepDateValidator.js.map +1 -1
  608. package/dist/src/pages/steps/StepGuide.js +29 -3
  609. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  610. package/dist/src/pages/steps/StepHotel/StepHotel.js +6 -3
  611. package/dist/src/pages/steps/StepHotel/StepHotel.js.map +1 -1
  612. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +39 -13
  613. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  614. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +31 -5
  615. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  616. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js +4 -1
  617. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js.map +1 -1
  618. package/dist/src/pages/steps/StepRoom/StepRoom.js +6 -3
  619. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  620. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +42 -16
  621. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  622. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +29 -3
  623. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  624. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js +4 -1
  625. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
  626. package/dist/src/pages/steps/StepThanks/StepThanks.js +7 -4
  627. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  628. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +39 -13
  629. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  630. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js +4 -1
  631. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
  632. package/dist/src/providers/CurrencyProvider.js +4 -1
  633. package/dist/src/providers/CurrencyProvider.js.map +1 -1
  634. package/dist/src/providers/DIProvider.js +24 -1
  635. package/dist/src/providers/DIProvider.js.map +1 -1
  636. package/dist/src/providers/FeatureProvider.d.ts +2 -2
  637. package/dist/src/providers/FeatureProvider.js +12 -9
  638. package/dist/src/providers/FeatureProvider.js.map +1 -1
  639. package/dist/src/providers/FilterProvider.js +4 -1
  640. package/dist/src/providers/FilterProvider.js.map +1 -1
  641. package/dist/src/providers/LanguageProvider.js +6 -3
  642. package/dist/src/providers/LanguageProvider.js.map +1 -1
  643. package/dist/src/providers/PromotionProvider.js +7 -4
  644. package/dist/src/providers/PromotionProvider.js.map +1 -1
  645. package/dist/src/providers/RoomstayThemeEngine.js +35 -9
  646. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  647. package/dist/src/providers/SessionProvider.js +9 -6
  648. package/dist/src/providers/SessionProvider.js.map +1 -1
  649. package/dist/src/providers/feature/InlineAddonStepFeature.js +5 -2
  650. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  651. package/dist/src/providers/storage/LocalStorageProvider.js +24 -1
  652. package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
  653. package/dist/src/reducers/BasketReducer.js +7 -4
  654. package/dist/src/reducers/BasketReducer.js.map +1 -1
  655. package/dist/src/routes/NaturallyProgressedStepRoute.js +33 -7
  656. package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
  657. package/dist/src/stories/Alert.stories.d.ts +5 -0
  658. package/dist/src/stories/Alert.stories.js +42 -0
  659. package/dist/src/stories/Alert.stories.js.map +1 -0
  660. package/dist/src/stories/{Button.stories.d.ts → BEButton.stories.d.ts} +1 -1
  661. package/dist/src/stories/BEButton.stories.js +43 -0
  662. package/dist/src/stories/BEButton.stories.js.map +1 -0
  663. package/dist/src/stories/BackButton.stories.d.ts +5 -0
  664. package/dist/src/stories/BackButton.stories.js +40 -0
  665. package/dist/src/stories/BackButton.stories.js.map +1 -0
  666. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.d.ts +5 -0
  667. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js +37 -0
  668. package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js.map +1 -0
  669. package/dist/src/stories/BookingWizard.stories.d.ts +9 -0
  670. package/dist/src/stories/BookingWizard.stories.js +58 -0
  671. package/dist/src/stories/BookingWizard.stories.js.map +1 -0
  672. package/dist/src/stories/Card.stories.d.ts +3 -3
  673. package/dist/src/stories/Card.stories.js +4 -1
  674. package/dist/src/stories/Card.stories.js.map +1 -1
  675. package/dist/src/stories/CardTypeSelect.stories.d.ts +5 -0
  676. package/dist/src/stories/CardTypeSelect.stories.js +37 -0
  677. package/dist/src/stories/CardTypeSelect.stories.js.map +1 -0
  678. package/dist/src/stories/Checkbox.stories.js +28 -2
  679. package/dist/src/stories/Checkbox.stories.js.map +1 -1
  680. package/dist/src/stories/ConfirmationModal.stories.d.ts +5 -0
  681. package/dist/src/stories/ConfirmationModal.stories.js +45 -0
  682. package/dist/src/stories/ConfirmationModal.stories.js.map +1 -0
  683. package/dist/src/stories/Countdown.stories.d.ts +5 -0
  684. package/dist/src/stories/Countdown.stories.js +43 -0
  685. package/dist/src/stories/Countdown.stories.js.map +1 -0
  686. package/dist/src/stories/Currency.stories.d.ts +5 -0
  687. package/dist/src/stories/Currency.stories.js +42 -0
  688. package/dist/src/stories/Currency.stories.js.map +1 -0
  689. package/dist/src/stories/DateRangePicker.stories.d.ts +8 -0
  690. package/dist/src/stories/DateRangePicker.stories.js +80 -0
  691. package/dist/src/stories/DateRangePicker.stories.js.map +1 -0
  692. package/dist/src/stories/Distance.stories.d.ts +5 -0
  693. package/dist/src/stories/Distance.stories.js +42 -0
  694. package/dist/src/stories/Distance.stories.js.map +1 -0
  695. package/dist/src/stories/EnhancedPhoneNumberField.stories.js +28 -2
  696. package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -1
  697. package/dist/src/stories/ErrorModal.stories.d.ts +5 -0
  698. package/dist/src/stories/ErrorModal.stories.js +46 -0
  699. package/dist/src/stories/ErrorModal.stories.js.map +1 -0
  700. package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +6 -0
  701. package/dist/src/stories/FloatingDateRangePicker.stories.js +75 -0
  702. package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -0
  703. package/dist/src/stories/ForwardedSelect.stories.d.ts +5 -0
  704. package/dist/src/stories/ForwardedSelect.stories.js +51 -0
  705. package/dist/src/stories/ForwardedSelect.stories.js.map +1 -0
  706. package/dist/src/stories/Headline.stories.d.ts +5 -0
  707. package/dist/src/stories/Headline.stories.js +42 -0
  708. package/dist/src/stories/Headline.stories.js.map +1 -0
  709. package/dist/src/stories/Icon.stories.js +25 -2
  710. package/dist/src/stories/Icon.stories.js.map +1 -1
  711. package/dist/src/stories/IconNavCard.stories.js +24 -1
  712. package/dist/src/stories/IconNavCard.stories.js.map +1 -1
  713. package/dist/src/stories/IconText.stories.js +28 -2
  714. package/dist/src/stories/IconText.stories.js.map +1 -1
  715. package/dist/src/stories/ImageLoader.stories.js +28 -2
  716. package/dist/src/stories/ImageLoader.stories.js.map +1 -1
  717. package/dist/src/stories/InputGroup.stories.js +28 -2
  718. package/dist/src/stories/InputGroup.stories.js.map +1 -1
  719. package/dist/src/stories/LargeLoader.stories.js +28 -2
  720. package/dist/src/stories/LargeLoader.stories.js.map +1 -1
  721. package/dist/src/stories/LineBreak.stories.d.ts +5 -0
  722. package/dist/src/stories/LineBreak.stories.js +40 -0
  723. package/dist/src/stories/LineBreak.stories.js.map +1 -0
  724. package/dist/src/stories/Notification.stories.d.ts +5 -0
  725. package/dist/src/stories/Notification.stories.js +46 -0
  726. package/dist/src/stories/Notification.stories.js.map +1 -0
  727. package/dist/src/stories/NumberIncrement.stories.d.ts +5 -0
  728. package/dist/src/stories/NumberIncrement.stories.js +46 -0
  729. package/dist/src/stories/NumberIncrement.stories.js.map +1 -0
  730. package/dist/src/stories/PasswordBox.stories.js +24 -1
  731. package/dist/src/stories/PasswordBox.stories.js.map +1 -1
  732. package/dist/src/stories/PaymentCard.stories.d.ts +4 -0
  733. package/dist/src/stories/PaymentCard.stories.js +47 -0
  734. package/dist/src/stories/PaymentCard.stories.js.map +1 -0
  735. package/dist/src/stories/PaymentCardInput.stories.d.ts +6 -0
  736. package/dist/src/stories/PaymentCardInput.stories.js +51 -0
  737. package/dist/src/stories/PaymentCardInput.stories.js.map +1 -0
  738. package/dist/src/stories/Pill.stories.d.ts +5 -0
  739. package/dist/src/stories/Pill.stories.js +42 -0
  740. package/dist/src/stories/Pill.stories.js.map +1 -0
  741. package/dist/src/stories/Placeholder.stories.d.ts +5 -0
  742. package/dist/src/stories/Placeholder.stories.js +45 -0
  743. package/dist/src/stories/Placeholder.stories.js.map +1 -0
  744. package/dist/src/stories/PlanpayButton.stories.d.ts +5 -0
  745. package/dist/src/stories/PlanpayButton.stories.js +39 -0
  746. package/dist/src/stories/PlanpayButton.stories.js.map +1 -0
  747. package/dist/src/stories/PromoCodeInput.stories.d.ts +5 -0
  748. package/dist/src/stories/PromoCodeInput.stories.js +40 -0
  749. package/dist/src/stories/PromoCodeInput.stories.js.map +1 -0
  750. package/dist/src/stories/RadioButton.stories.d.ts +6 -0
  751. package/dist/src/stories/RadioButton.stories.js +47 -0
  752. package/dist/src/stories/RadioButton.stories.js.map +1 -0
  753. package/dist/src/stories/RadioButtonGroup.stories.d.ts +5 -0
  754. package/dist/src/stories/RadioButtonGroup.stories.js +55 -0
  755. package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -0
  756. package/dist/src/stories/RadioFields.stories.d.ts +5 -0
  757. package/dist/src/stories/RadioFields.stories.js +54 -0
  758. package/dist/src/stories/RadioFields.stories.js.map +1 -0
  759. package/dist/src/stories/SSLSecureBadge.stories.js +5 -2
  760. package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -1
  761. package/dist/src/stories/Select.stories.d.ts +25 -0
  762. package/dist/src/stories/Select.stories.js +96 -0
  763. package/dist/src/stories/Select.stories.js.map +1 -0
  764. package/dist/src/stories/SimpleModal.stories.d.ts +5 -0
  765. package/dist/src/stories/SimpleModal.stories.js +52 -0
  766. package/dist/src/stories/SimpleModal.stories.js.map +1 -0
  767. package/dist/src/stories/Slider.stories.d.ts +10 -0
  768. package/dist/src/stories/Slider.stories.js +53 -0
  769. package/dist/src/stories/Slider.stories.js.map +1 -0
  770. package/dist/src/stories/SmallSpinner.stories.js +28 -2
  771. package/dist/src/stories/SmallSpinner.stories.js.map +1 -1
  772. package/dist/src/stories/TabbedModal.stories.d.ts +5 -0
  773. package/dist/src/stories/TabbedModal.stories.js +61 -0
  774. package/dist/src/stories/TabbedModal.stories.js.map +1 -0
  775. package/dist/src/stories/Tabs.stories.d.ts +5 -0
  776. package/dist/src/stories/Tabs.stories.js +52 -0
  777. package/dist/src/stories/Tabs.stories.js.map +1 -0
  778. package/dist/src/stories/Text.stories.d.ts +5 -0
  779. package/dist/src/stories/Text.stories.js +42 -0
  780. package/dist/src/stories/Text.stories.js.map +1 -0
  781. package/dist/src/stories/TextArea.stories.d.ts +5 -0
  782. package/dist/src/stories/TextArea.stories.js +40 -0
  783. package/dist/src/stories/TextArea.stories.js.map +1 -0
  784. package/dist/src/stories/TextBox.stories.d.ts +5 -0
  785. package/dist/src/stories/TextBox.stories.js +40 -0
  786. package/dist/src/stories/TextBox.stories.js.map +1 -0
  787. package/dist/src/stories/Tooltip.stories.d.ts +5 -0
  788. package/dist/src/stories/Tooltip.stories.js +43 -0
  789. package/dist/src/stories/Tooltip.stories.js.map +1 -0
  790. package/dist/src/util/CalendarHelper.d.ts +1 -1
  791. package/dist/src/util/CalendarHelper.js +5 -2
  792. package/dist/src/util/CalendarHelper.js.map +1 -1
  793. package/dist/src/util/DataLayer.js +30 -4
  794. package/dist/src/util/DataLayer.js.map +1 -1
  795. package/dist/src/util/ObjectHelper.js +1 -1
  796. package/dist/src/util/ObjectHelper.js.map +1 -1
  797. package/dist/src/util/PaymentCardHelper.js +4 -1
  798. package/dist/src/util/PaymentCardHelper.js.map +1 -1
  799. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js +4 -1
  800. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js.map +1 -1
  801. package/dist/tests/jest/events/EventManager.test.js +5 -2
  802. package/dist/tests/jest/events/EventManager.test.js.map +1 -1
  803. package/dist/tests/jest/models/RoomRate.test.js +5 -2
  804. package/dist/tests/jest/models/RoomRate.test.js.map +1 -1
  805. package/dist/tests/jest/providers/LanguageProvider.test.js +11 -0
  806. package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -1
  807. package/dist/tests/jest/providers/SessionProvider.test.js +26 -15
  808. package/dist/tests/jest/providers/SessionProvider.test.js.map +1 -1
  809. package/dist/tests/jest/reducers/BasketReducer.test.js +4 -1
  810. package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -1
  811. package/dist/tests/offline/RoomstayBestRateAlert.js +29 -3
  812. package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -1
  813. package/dist/tests/offline/entry/RSCompany.js +13 -1
  814. package/dist/tests/offline/entry/RSCompany.js.map +1 -1
  815. package/dist/tests/offline/entry/ReactWrapper.js +105 -9
  816. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -1
  817. package/dist/tests/offline/entry/allEngines.js +32 -6
  818. package/dist/tests/offline/entry/allEngines.js.map +1 -1
  819. package/dist/tests/offline/entry/components/TestPicker.js +79 -36
  820. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
  821. package/dist/tests/setupTests.js +2 -0
  822. package/dist/tests/setupTests.js.map +1 -1
  823. package/dist/vendors.bundle.js +1 -1
  824. package/dist/vendors.bundle.js.LICENSE.txt +5 -9
  825. package/package.json +10 -7
  826. package/dist/src/components/generic/BESelect.d.ts +0 -16
  827. package/dist/src/components/generic/BESelect.js +0 -12
  828. package/dist/src/components/generic/BESelect.js.map +0 -1
  829. package/dist/src/components/generic/Select.d.ts +0 -11
  830. package/dist/src/components/generic/Select.js +0 -18
  831. package/dist/src/components/generic/Select.js.map +0 -1
  832. package/dist/src/stories/Button.stories.js +0 -17
  833. package/dist/src/stories/Button.stories.js.map +0 -1
  834. package/dist/test.bundle.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingWizardBottomSheet.js","sourceRoot":"/","sources":["src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAAoC;AACpC,kDAA0B;AAC1B,yEAA0E;AAE1E,kEAA+D;AAI/D,MAAM,wBAAwB,GAA4C,CAAC,KAAK,EAAE,EAAE;IAChF,MAAM,EAAE,QAAQ,EAAE,SAAS,KAA0B,KAAK,EAA1B,gBAAgB,UAAK,KAAK,EAApD,yBAA4C,CAAQ,CAAC;IAE3D,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,eAAK,CAAC,UAAU,CAAC,2CAAoB,CAAC,CAAC;IAEjF,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,4BAA4B,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAEjF,OAAO,CACH,8BAAC,uCAAW,kBAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,IAAM,gBAAgB,GAC9D,QAAQ,CACC,CACjB,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,wBAAwB,CAAC","sourcesContent":["import classNames from 'classnames';\nimport React from 'react';\nimport { BottomSheet, BottomSheetProps } from 'react-spring-bottom-sheet';\n\nimport { BookingWizardContext } from '../BookingWizardContext';\n\ninterface BookingWizardBottomSheetProps extends BottomSheetProps {}\n\nconst BookingWizardBottomSheet: React.FC<BookingWizardBottomSheetProps> = (props) => {\n const { children, className, ...bottomSheetProps } = props;\n\n const { style, className: bwClassname } = React.useContext(BookingWizardContext);\n\n const classes = classNames('roomstay-booking-container', bwClassname, className);\n\n return (\n <BottomSheet className={classes} style={style} {...bottomSheetProps}>\n {children}\n </BottomSheet>\n );\n};\n\nexport default BookingWizardBottomSheet;\n"]}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import 'react-spring-bottom-sheet/dist/style.css';
3
+ import { BookingWizardProperty } from 'models/BookingWizard/BookingWizardProperty';
4
+ import { TBookingWizardProperties } from 'models/BookingWizard/BookingWizardTypes';
5
+ export interface BookingWizardContentProps {
6
+ defaultColors: BookingWizardProperty['colors'];
7
+ properties: TBookingWizardProperties;
8
+ selectedProperty?: BookingWizardProperty;
9
+ }
10
+ export declare const BookingWizardContent: React.FC<BookingWizardContentProps>;
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.BookingWizardContent = void 0;
30
+ const classnames_1 = __importDefault(require("classnames"));
31
+ const dayjs_1 = __importDefault(require("dayjs"));
32
+ const react_1 = __importStar(require("react"));
33
+ const BEButton_1 = __importDefault(require("../BEButton"));
34
+ const BookingWizard_module_scss_1 = __importDefault(require("./BookingWizard.module.scss"));
35
+ const BookingWizardContext_1 = require("./BookingWizardContext");
36
+ const BookingWizardDateSelector_1 = require("./BookingWizardDateSelector/BookingWizardDateSelector");
37
+ const BookingWizardGuestSelector_1 = require("./BookingWizardGuestSelector/BookingWizardGuestSelector");
38
+ const BookingWizardHotelSelector_1 = require("./BookingWizardHotelSelector/BookingWizardHotelSelector");
39
+ require("react-spring-bottom-sheet/dist/style.css");
40
+ const RoomstayThemeEngine_1 = __importDefault(require("providers/RoomstayThemeEngine"));
41
+ const BookingWizardContent = ({ properties, selectedProperty: defaultProperty, defaultColors }) => {
42
+ const bwContext = (0, react_1.useContext)(BookingWizardContext_1.BookingWizardContext);
43
+ const [checkInDate, setCheckInDate] = (0, react_1.useState)((0, dayjs_1.default)());
44
+ const [checkOutDate, setCheckOutDate] = (0, react_1.useState)((0, dayjs_1.default)().add(1, 'days'));
45
+ const [adults, setAdults] = (0, react_1.useState)(1);
46
+ const [children, setChildren] = (0, react_1.useState)(0);
47
+ const [room, setRoom] = (0, react_1.useState)(1);
48
+ const [selectedProperty, setSelectedProperty] = (0, react_1.useState)(defaultProperty);
49
+ (0, react_1.useEffect)(() => {
50
+ if (selectedProperty === null || selectedProperty === void 0 ? void 0 : selectedProperty.colors) {
51
+ RoomstayThemeEngine_1.default.changeTheme(selectedProperty.colors);
52
+ }
53
+ else if (defaultColors) {
54
+ RoomstayThemeEngine_1.default.changeTheme(defaultColors);
55
+ }
56
+ }, [selectedProperty]);
57
+ const setGuest = (guests) => {
58
+ setAdults(guests.adults);
59
+ setChildren(guests.children);
60
+ setRoom(guests.room);
61
+ };
62
+ const setDate = (startDate, endDate) => {
63
+ setCheckInDate(startDate);
64
+ setCheckOutDate(endDate);
65
+ };
66
+ const isValid = () => {
67
+ if (!selectedProperty)
68
+ return false;
69
+ if (!checkInDate)
70
+ return false;
71
+ if (!checkOutDate)
72
+ return false;
73
+ if (adults + children <= 0)
74
+ return false;
75
+ return true;
76
+ };
77
+ const _onSubmit = () => {
78
+ var _a;
79
+ if (!isValid())
80
+ return false;
81
+ // After passing validation, we pass the function up the chain for the engine
82
+ // Implementor to decide where the user should be redirected to
83
+ // This is to give the hotel team a chance to add tracking, or modify the request on their end.
84
+ (_a = bwContext.onSubmit) === null || _a === void 0 ? void 0 : _a.call(bwContext, {
85
+ id: selectedProperty === null || selectedProperty === void 0 ? void 0 : selectedProperty.id,
86
+ checkIn: checkInDate,
87
+ checkout: checkOutDate,
88
+ guests: {
89
+ adults,
90
+ children,
91
+ room,
92
+ },
93
+ });
94
+ };
95
+ return (react_1.default.createElement("div", { className: (0, classnames_1.default)(BookingWizard_module_scss_1.default.content, BookingWizard_module_scss_1.default[`--${bwContext.layout}`], {
96
+ [BookingWizard_module_scss_1.default['--vertical']]: bwContext.layout === 'button',
97
+ [BookingWizard_module_scss_1.default.inline]: bwContext.type === 'inline',
98
+ }) },
99
+ react_1.default.createElement(react_1.default.Fragment, null,
100
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.item },
101
+ react_1.default.createElement("label", { className: BookingWizard_module_scss_1.default.label }, "Choose hotel"),
102
+ react_1.default.createElement(BookingWizardHotelSelector_1.BookingWizardHotelSelector, { onChange: setSelectedProperty, properties: properties, selectedProperty: selectedProperty })),
103
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.divider })),
104
+ react_1.default.createElement(BookingWizardDateSelector_1.BookingWizardDateSelector, { onChange: setDate }),
105
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.divider }),
106
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.item },
107
+ react_1.default.createElement("label", { className: BookingWizard_module_scss_1.default.label }, "Guests"),
108
+ react_1.default.createElement(BookingWizardGuestSelector_1.BookingWizardGuestSelector, { onChange: setGuest })),
109
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.action },
110
+ react_1.default.createElement(BEButton_1.default, { disabled: !isValid(), className: BookingWizard_module_scss_1.default.bookNowBtn, onClick: _onSubmit }, "Book Now"))));
111
+ };
112
+ exports.BookingWizardContent = BookingWizardContent;
113
+ //# sourceMappingURL=BookingWizardContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingWizardContent.js","sourceRoot":"/","sources":["src/components/generic/BookingWizard/BookingWizardContent.tsx"],"names":[],"mappings":"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","sourcesContent":["import classNames from 'classnames';\nimport dayjs from 'dayjs';\nimport React, { useContext, useEffect, useState } from 'react';\n\nimport BEButton from '../BEButton';\nimport styles from './BookingWizard.module.scss';\nimport { BookingWizardContext, BookingWizardOnBooking } from './BookingWizardContext';\nimport { BookingWizardDateSelector } from './BookingWizardDateSelector/BookingWizardDateSelector';\nimport { BookingWizardGuestSelector } from './BookingWizardGuestSelector/BookingWizardGuestSelector';\nimport { BookingWizardHotelSelector } from './BookingWizardHotelSelector/BookingWizardHotelSelector';\n\nimport 'react-spring-bottom-sheet/dist/style.css';\nimport { BookingWizardProperty } from 'models/BookingWizard/BookingWizardProperty';\nimport { TBookingWizardProperties } from 'models/BookingWizard/BookingWizardTypes';\nimport RoomstayThemeEngine from 'providers/RoomstayThemeEngine';\n\nexport interface BookingWizardContentProps {\n defaultColors: BookingWizardProperty['colors'];\n properties: TBookingWizardProperties;\n selectedProperty?: BookingWizardProperty;\n}\n\nexport const BookingWizardContent: React.FC<BookingWizardContentProps> = ({ properties, selectedProperty: defaultProperty, defaultColors }) => {\n const bwContext = useContext(BookingWizardContext);\n\n const [checkInDate, setCheckInDate] = useState<dayjs.Dayjs | null>(dayjs());\n const [checkOutDate, setCheckOutDate] = useState<dayjs.Dayjs | null>(dayjs().add(1, 'days'));\n const [adults, setAdults] = useState<number>(1);\n const [children, setChildren] = useState<number>(0);\n const [room, setRoom] = useState<number>(1);\n const [selectedProperty, setSelectedProperty] = useState<BookingWizardProperty>(defaultProperty);\n\n useEffect(() => {\n if (selectedProperty?.colors) {\n RoomstayThemeEngine.changeTheme(selectedProperty.colors);\n } else if (defaultColors) {\n RoomstayThemeEngine.changeTheme(defaultColors);\n }\n }, [selectedProperty]);\n\n const setGuest = (guests: BookingWizardOnBooking['guests']) => {\n setAdults(guests.adults);\n setChildren(guests.children);\n setRoom(guests.room);\n };\n\n const setDate = (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => {\n setCheckInDate(startDate);\n setCheckOutDate(endDate);\n };\n\n const isValid = () => {\n if (!selectedProperty) return false;\n if (!checkInDate) return false;\n if (!checkOutDate) return false;\n if (adults + children <= 0) return false;\n\n return true;\n };\n\n const _onSubmit = () => {\n if (!isValid()) return false;\n\n // After passing validation, we pass the function up the chain for the engine\n // Implementor to decide where the user should be redirected to\n // This is to give the hotel team a chance to add tracking, or modify the request on their end.\n bwContext.onSubmit?.({\n id: selectedProperty?.id,\n checkIn: checkInDate,\n checkout: checkOutDate,\n guests: {\n adults,\n children,\n room,\n },\n });\n };\n\n return (\n <div\n className={classNames(styles.content, styles[`--${bwContext.layout}`], {\n [styles['--vertical']]: bwContext.layout === 'button',\n [styles.inline]: bwContext.type === 'inline',\n })}\n >\n <>\n <div className={styles.item}>\n <label className={styles.label}>Choose hotel</label>\n <BookingWizardHotelSelector onChange={setSelectedProperty} properties={properties} selectedProperty={selectedProperty} />\n </div>\n <div className={styles.divider} />\n </>\n <BookingWizardDateSelector onChange={setDate} />\n\n <div className={styles.divider} />\n <div className={styles.item}>\n <label className={styles.label}>Guests</label>\n <BookingWizardGuestSelector onChange={setGuest} />\n </div>\n <div className={styles.action}>\n <BEButton disabled={!isValid()} className={styles.bookNowBtn} onClick={_onSubmit}>\n Book Now\n </BEButton>\n </div>\n </div>\n );\n};\n"]}
@@ -0,0 +1,35 @@
1
+ /// <reference types="react" />
2
+ import type { Placement } from '@popperjs/core';
3
+ import * as dayjs from 'dayjs';
4
+ import type ColorProfile from 'models/Client/Hotel/ColorProfile';
5
+ import { EBookingWizardTheme } from './BookingWizard';
6
+ export type BookingWizardLayout = 'vertical' | 'horizontal' | 'button';
7
+ export type BookingWizardOverlayType = 'popup' | 'inline' | 'bottom-sheet';
8
+ export type BookingWizardTheme = EBookingWizardTheme;
9
+ export interface BookingWizardOnBooking {
10
+ id: string;
11
+ checkIn: dayjs.Dayjs;
12
+ checkout: dayjs.Dayjs;
13
+ guests: {
14
+ adults: number;
15
+ children: number;
16
+ room: number;
17
+ };
18
+ }
19
+ export interface BookingWizardContextType {
20
+ layout: BookingWizardLayout;
21
+ type: BookingWizardOverlayType;
22
+ theme: BookingWizardTheme;
23
+ className?: string;
24
+ style?: any;
25
+ color?: ColorProfile;
26
+ onSubmit?: (result: BookingWizardOnBooking) => void;
27
+ overlay?: {
28
+ offset?: [number, number];
29
+ placement?: Placement;
30
+ fallbackPlacements?: Placement;
31
+ dateOffset?: [number, number];
32
+ };
33
+ }
34
+ export declare const BookingWizardContext: import("react").Context<BookingWizardContextType>;
35
+ export declare const useBookingWizard: () => BookingWizardContextType;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useBookingWizard = exports.BookingWizardContext = void 0;
4
+ const react_1 = require("react");
5
+ exports.BookingWizardContext = (0, react_1.createContext)(null);
6
+ const useBookingWizard = () => (0, react_1.useContext)(exports.BookingWizardContext);
7
+ exports.useBookingWizard = useBookingWizard;
8
+ //# sourceMappingURL=BookingWizardContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingWizardContext.js","sourceRoot":"/","sources":["src/components/generic/BookingWizard/BookingWizardContext.ts"],"names":[],"mappings":";;;AAGA,iCAAkD;AAoCrC,QAAA,oBAAoB,GAAG,IAAA,qBAAa,EAA2B,IAAI,CAAC,CAAC;AAE3E,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAA,kBAAU,EAAC,4BAAoB,CAAC,CAAC;AAA1D,QAAA,gBAAgB,oBAA0C","sourcesContent":["import type { Placement } from '@popperjs/core';\nimport * as dayjs from 'dayjs';\nimport type ColorProfile from 'models/Client/Hotel/ColorProfile';\nimport { createContext, useContext } from 'react';\nimport { EBookingWizardTheme } from './BookingWizard';\n\nexport type BookingWizardLayout = 'vertical' | 'horizontal' | 'button';\nexport type BookingWizardOverlayType = 'popup' | 'inline' | 'bottom-sheet';\nexport type BookingWizardTheme = EBookingWizardTheme;\n\nexport interface BookingWizardOnBooking {\n id: string;\n checkIn: dayjs.Dayjs;\n checkout: dayjs.Dayjs;\n guests: {\n adults: number;\n children: number;\n room: number;\n };\n}\n\nexport interface BookingWizardContextType {\n layout: BookingWizardLayout;\n type: BookingWizardOverlayType;\n theme: BookingWizardTheme;\n className?: string;\n style?: any;\n color?: ColorProfile;\n\n onSubmit?: (result: BookingWizardOnBooking) => void;\n\n overlay?: {\n offset?: [number, number];\n placement?: Placement;\n fallbackPlacements?: Placement;\n dateOffset?: [number, number];\n };\n}\n\nexport const BookingWizardContext = createContext<BookingWizardContextType>(null);\n\nexport const useBookingWizard = () => useContext(BookingWizardContext);\n"]}
@@ -0,0 +1,7 @@
1
+ import dayjs from 'dayjs';
2
+ import React from 'react';
3
+ export interface BookingWizardDateSelectorProps {
4
+ open?: boolean;
5
+ onChange?: (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => void;
6
+ }
7
+ export declare const BookingWizardDateSelector: React.FC<BookingWizardDateSelectorProps>;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.BookingWizardDateSelector = void 0;
30
+ const classnames_1 = __importDefault(require("classnames"));
31
+ const dayjs_1 = __importDefault(require("dayjs"));
32
+ const react_1 = __importStar(require("react"));
33
+ const AutoAutoHeight_1 = __importDefault(require("animations/AutoAutoHeight"));
34
+ const BEButton_1 = __importDefault(require("components/generic/BEButton"));
35
+ const DateRangePicker_1 = __importDefault(require("components/generic/DateRangePicker/DateRangePicker"));
36
+ const Icon_1 = __importStar(require("components/generic/Icon/Icon"));
37
+ const WindowSize_1 = require("hooks/WindowSize");
38
+ const FloatingDateRangePicker_1 = __importDefault(require("../../DateRangePicker/FloatingDateRangePicker"));
39
+ const Text_1 = __importDefault(require("../../Text"));
40
+ const BookingWizard_module_scss_1 = __importDefault(require("../BookingWizard.module.scss"));
41
+ const BookingWizardBottomSheet_1 = __importDefault(require("../BookingWizardBottomSheet/BookingWizardBottomSheet"));
42
+ const BookingWizardContext_1 = require("../BookingWizardContext");
43
+ const BookingWizardDateSelector_module_scss_1 = __importDefault(require("./BookingWizardDateSelector.module.scss"));
44
+ const BookingWizard_1 = require("../BookingWizard");
45
+ const BookingWizardDateSelector = (props) => {
46
+ const { onChange } = props;
47
+ const { overlay, theme, layout, type: overlayType } = (0, BookingWizardContext_1.useBookingWizard)();
48
+ const checkOutDatePickerRef = react_1.default.useRef(null);
49
+ const [startDate, setStartDate] = (0, react_1.useState)((0, dayjs_1.default)());
50
+ const [endDate, setEndDate] = (0, react_1.useState)((0, dayjs_1.default)().add(1, 'days'));
51
+ const [selectingStartDate, setSelectingStartDate] = (0, react_1.useState)(startDate);
52
+ const [selectingSEndDate, setSelectingEndDate] = (0, react_1.useState)(endDate);
53
+ const [isOpen, setIsOpen] = (0, react_1.useState)(false);
54
+ const [checkInWrapperRef, setCheckInWrapperRef] = react_1.default.useState(null);
55
+ const { isMobile } = (0, WindowSize_1.useWindowSize)();
56
+ let RowWrapper = react_1.default.Fragment;
57
+ const rowWrapperProps = {};
58
+ if (layout === 'button' || isMobile) {
59
+ RowWrapper = 'div';
60
+ rowWrapperProps.className = BookingWizard_module_scss_1.default.itemGroup;
61
+ rowWrapperProps.ref = (ref) => {
62
+ if (layout === 'button') {
63
+ setCheckInWrapperRef(ref);
64
+ }
65
+ };
66
+ }
67
+ const setDate = (startDate, endDate) => {
68
+ setStartDate(startDate);
69
+ setEndDate(endDate);
70
+ };
71
+ const _onCheckoutDateChange = (newEndDate) => {
72
+ if (props.onChange && onChange) {
73
+ props.onChange(startDate, newEndDate);
74
+ }
75
+ setEndDate(newEndDate);
76
+ if (newEndDate) {
77
+ setIsOpen(false);
78
+ }
79
+ };
80
+ const _toggleInlineDatePicker = () => {
81
+ var _a;
82
+ (_a = checkOutDatePickerRef === null || checkOutDatePickerRef === void 0 ? void 0 : checkOutDatePickerRef.current) === null || _a === void 0 ? void 0 : _a.toggle();
83
+ setIsOpen(!isOpen);
84
+ };
85
+ const _checkInDate = (date, disabledClass) => {
86
+ return (react_1.default.createElement("div", { className: disabledClass ? '' : BookingWizard_module_scss_1.default.item, onClick: _toggleInlineDatePicker },
87
+ react_1.default.createElement("label", { className: BookingWizardDateSelector_module_scss_1.default.label }, "Check-in"),
88
+ react_1.default.createElement(Text_1.default, { className: BookingWizardDateSelector_module_scss_1.default.date }, (date === null || date === void 0 ? void 0 : date.format('MMM DD')) || '-')));
89
+ };
90
+ const _checkOutDate = (date) => {
91
+ return (react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.item, onClick: _toggleInlineDatePicker },
92
+ react_1.default.createElement("label", { className: BookingWizardDateSelector_module_scss_1.default.label }, "Check-out"),
93
+ react_1.default.createElement(Text_1.default, { className: BookingWizardDateSelector_module_scss_1.default.date }, (date === null || date === void 0 ? void 0 : date.format('MMM DD')) || '-')));
94
+ };
95
+ const _combineDates = (checkIn, checkOut) => {
96
+ return (react_1.default.createElement("div", { onClick: _toggleInlineDatePicker },
97
+ react_1.default.createElement("label", { className: BookingWizardDateSelector_module_scss_1.default.label }, "Dates"),
98
+ react_1.default.createElement(Text_1.default, { className: BookingWizardDateSelector_module_scss_1.default.date }, `${(checkIn === null || checkIn === void 0 ? void 0 : checkIn.format('MMM DD')) || ''} - ${(checkOut === null || checkOut === void 0 ? void 0 : checkOut.format('MMM DD')) || ''}`)));
99
+ };
100
+ const showMultipleMonths = layout === 'horizontal' && !isMobile;
101
+ if (overlayType === 'inline') {
102
+ return (react_1.default.createElement("div", { className: (0, classnames_1.default)(BookingWizardDateSelector_module_scss_1.default.container, { [BookingWizardDateSelector_module_scss_1.default['--open']]: isOpen }) },
103
+ react_1.default.createElement(RowWrapper, Object.assign({}, rowWrapperProps),
104
+ _checkInDate(startDate),
105
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.divider }),
106
+ _checkOutDate(endDate)),
107
+ react_1.default.createElement("div", { className: BookingWizardDateSelector_module_scss_1.default['inline-container'] },
108
+ react_1.default.createElement(AutoAutoHeight_1.default, { open: isOpen },
109
+ react_1.default.createElement("div", { className: BookingWizardDateSelector_module_scss_1.default['inline-box'] },
110
+ react_1.default.createElement(DateRangePicker_1.default, { selectedStartDate: startDate, selectedEndDate: endDate, onStartDateChanged: setStartDate, onEndDateChanged: _onCheckoutDateChange, theme: theme }))))));
111
+ }
112
+ if (overlayType === 'bottom-sheet') {
113
+ return (react_1.default.createElement(react_1.default.Fragment, null,
114
+ react_1.default.createElement(RowWrapper, Object.assign({}, rowWrapperProps), !isMobile && layout === 'horizontal' ? (react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.item }, _combineDates(startDate, endDate))) : (react_1.default.createElement(react_1.default.Fragment, null,
115
+ _checkInDate(startDate),
116
+ react_1.default.createElement("div", { className: BookingWizard_module_scss_1.default.divider }),
117
+ _checkOutDate(endDate)))),
118
+ react_1.default.createElement(BookingWizardBottomSheet_1.default, { className: (0, classnames_1.default)(BookingWizardDateSelector_module_scss_1.default.container, BookingWizardDateSelector_module_scss_1.default['bottom-sheet-container']), open: isOpen, onDismiss: () => setIsOpen(false), header: react_1.default.createElement("div", { className: BookingWizardDateSelector_module_scss_1.default.header },
119
+ react_1.default.createElement(Text_1.default, null, "Choose dates"),
120
+ " ",
121
+ react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.Close, onClick: () => setIsOpen(false) })) },
122
+ react_1.default.createElement("div", { className: BookingWizardDateSelector_module_scss_1.default['bottom-sheet-container-box'] },
123
+ react_1.default.createElement(DateRangePicker_1.default, { selectedStartDate: startDate, selectedEndDate: endDate, onStartDateChanged: setSelectingStartDate, onEndDateChanged: setSelectingEndDate, theme: theme }),
124
+ react_1.default.createElement(BEButton_1.default, { wide: true, className: BookingWizardDateSelector_module_scss_1.default.applyBtn, primary: true, filled: true, onClick: () => {
125
+ setStartDate(selectingStartDate);
126
+ setEndDate(selectingSEndDate);
127
+ setIsOpen(false);
128
+ } }, "Apply")))));
129
+ }
130
+ if (layout === 'horizontal' && theme === BookingWizard_1.EBookingWizardTheme.Specific && !isMobile) {
131
+ return (react_1.default.createElement(RowWrapper, Object.assign({}, rowWrapperProps),
132
+ react_1.default.createElement(FloatingDateRangePicker_1.default, { ref: checkOutDatePickerRef, container: checkInWrapperRef, startDate: startDate, endDate: endDate, selectedDateChanged: setDate, overlayOffset: overlay === null || overlay === void 0 ? void 0 : overlay.dateOffset, className: BookingWizard_module_scss_1.default.item, theme: theme, showMultipleMonths: showMultipleMonths, overlay: {
133
+ placement: overlay === null || overlay === void 0 ? void 0 : overlay.placement,
134
+ fallbackPlacements: overlay === null || overlay === void 0 ? void 0 : overlay.fallbackPlacements,
135
+ } }, _combineDates(startDate, endDate))));
136
+ }
137
+ return (react_1.default.createElement(RowWrapper, Object.assign({}, rowWrapperProps),
138
+ react_1.default.createElement(FloatingDateRangePicker_1.default, { ref: checkOutDatePickerRef, container: checkInWrapperRef, startDate: startDate, endDate: endDate, selectedDateChanged: setDate, overlayOffset: overlay === null || overlay === void 0 ? void 0 : overlay.dateOffset, theme: theme, showMultipleMonths: showMultipleMonths, className: BookingWizard_module_scss_1.default.item, overlay: {
139
+ placement: overlay === null || overlay === void 0 ? void 0 : overlay.placement,
140
+ fallbackPlacements: overlay === null || overlay === void 0 ? void 0 : overlay.fallbackPlacements,
141
+ } }, _checkInDate(startDate, true)),
142
+ react_1.default.createElement("div", { className: layout !== 'button' && !isMobile ? BookingWizard_module_scss_1.default.divider : '' }),
143
+ _checkOutDate(endDate)));
144
+ };
145
+ exports.BookingWizardDateSelector = BookingWizardDateSelector;
146
+ //# sourceMappingURL=BookingWizardDateSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingWizardDateSelector.js","sourceRoot":"/","sources":["src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import classNames from 'classnames';\nimport dayjs from 'dayjs';\nimport React, { useState } from 'react';\n\nimport AutoAutoHeight from 'animations/AutoAutoHeight';\nimport BEButton from 'components/generic/BEButton';\nimport DateRangePicker from 'components/generic/DateRangePicker/DateRangePicker';\nimport Icon, { IconType } from 'components/generic/Icon/Icon';\nimport { useWindowSize } from 'hooks/WindowSize';\nimport FloatingDateRangePicker, { FloatingDateRangePickerHandle } from '../../DateRangePicker/FloatingDateRangePicker';\nimport Text from '../../Text';\nimport bookingWizardStyles from '../BookingWizard.module.scss';\nimport BookingWizardBottomSheet from '../BookingWizardBottomSheet/BookingWizardBottomSheet';\nimport { useBookingWizard } from '../BookingWizardContext';\nimport styles from './BookingWizardDateSelector.module.scss';\nimport { EBookingWizardTheme } from '../BookingWizard';\n\nexport interface BookingWizardDateSelectorProps {\n open?: boolean;\n onChange?: (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => void;\n}\n\nexport const BookingWizardDateSelector: React.FC<BookingWizardDateSelectorProps> = (props) => {\n const { onChange } = props;\n\n const { overlay, theme, layout, type: overlayType } = useBookingWizard();\n\n const checkOutDatePickerRef = React.useRef<FloatingDateRangePickerHandle>(null);\n\n const [startDate, setStartDate] = useState<dayjs.Dayjs | null>(dayjs());\n const [endDate, setEndDate] = useState<dayjs.Dayjs | null>(dayjs().add(1, 'days'));\n const [selectingStartDate, setSelectingStartDate] = useState<dayjs.Dayjs | null>(startDate);\n const [selectingSEndDate, setSelectingEndDate] = useState<dayjs.Dayjs | null>(endDate);\n const [isOpen, setIsOpen] = useState(false);\n const [checkInWrapperRef, setCheckInWrapperRef] = React.useState(null);\n\n const { isMobile } = useWindowSize();\n\n let RowWrapper: any = React.Fragment;\n const rowWrapperProps = {} as any;\n if (layout === 'button' || isMobile) {\n RowWrapper = 'div';\n rowWrapperProps.className = bookingWizardStyles.itemGroup;\n rowWrapperProps.ref = (ref: any) => {\n if (layout === 'button') {\n setCheckInWrapperRef(ref);\n }\n };\n }\n\n const setDate = (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => {\n setStartDate(startDate);\n setEndDate(endDate);\n };\n\n const _onCheckoutDateChange = (newEndDate: dayjs.Dayjs) => {\n if (props.onChange && onChange) {\n props.onChange(startDate, newEndDate);\n }\n\n setEndDate(newEndDate);\n if (newEndDate) {\n setIsOpen(false);\n }\n };\n\n const _toggleInlineDatePicker = () => {\n checkOutDatePickerRef?.current?.toggle();\n setIsOpen(!isOpen);\n };\n\n const _checkInDate = (date?: dayjs.Dayjs, disabledClass?: boolean) => {\n return (\n <div className={disabledClass ? '' : bookingWizardStyles.item} onClick={_toggleInlineDatePicker}>\n <label className={styles.label}>Check-in</label>\n <Text className={styles.date}>{date?.format('MMM DD') || '-'}</Text>\n </div>\n );\n };\n\n const _checkOutDate = (date?: dayjs.Dayjs) => {\n return (\n <div className={bookingWizardStyles.item} onClick={_toggleInlineDatePicker}>\n <label className={styles.label}>Check-out</label>\n <Text className={styles.date}>{date?.format('MMM DD') || '-'}</Text>\n </div>\n );\n };\n\n const _combineDates = (checkIn?: dayjs.Dayjs, checkOut?: dayjs.Dayjs) => {\n return (\n <div onClick={_toggleInlineDatePicker}>\n <label className={styles.label}>Dates</label>\n <Text className={styles.date}>{`${checkIn?.format('MMM DD') || ''} - ${checkOut?.format('MMM DD') || ''}`}</Text>\n </div>\n );\n };\n\n const showMultipleMonths = layout === 'horizontal' && !isMobile;\n\n if (overlayType === 'inline') {\n return (\n <div className={classNames(styles.container, { [styles['--open']]: isOpen })}>\n <RowWrapper {...rowWrapperProps}>\n {_checkInDate(startDate)}\n <div className={bookingWizardStyles.divider} />\n {_checkOutDate(endDate)}\n </RowWrapper>\n <div className={styles['inline-container']}>\n <AutoAutoHeight open={isOpen}>\n <div className={styles['inline-box']}>\n <DateRangePicker\n selectedStartDate={startDate}\n selectedEndDate={endDate}\n onStartDateChanged={setStartDate}\n onEndDateChanged={_onCheckoutDateChange}\n theme={theme}\n />\n </div>\n </AutoAutoHeight>\n </div>\n </div>\n );\n }\n\n if (overlayType === 'bottom-sheet') {\n return (\n <>\n <RowWrapper {...rowWrapperProps}>\n {!isMobile && layout === 'horizontal' ? (\n <div className={bookingWizardStyles.item}>{_combineDates(startDate, endDate)}</div>\n ) : (\n <>\n {_checkInDate(startDate)}\n <div className={bookingWizardStyles.divider} />\n {_checkOutDate(endDate)}\n </>\n )}\n </RowWrapper>\n <BookingWizardBottomSheet\n className={classNames(styles.container, styles['bottom-sheet-container'])}\n open={isOpen}\n onDismiss={() => setIsOpen(false)}\n header={\n <div className={styles.header}>\n <Text>Choose dates</Text> <Icon icon={IconType.Close} onClick={() => setIsOpen(false)} />\n </div>\n }\n >\n <div className={styles['bottom-sheet-container-box']}>\n <DateRangePicker\n selectedStartDate={startDate}\n selectedEndDate={endDate}\n onStartDateChanged={setSelectingStartDate}\n onEndDateChanged={setSelectingEndDate}\n theme={theme}\n />\n <BEButton\n wide\n className={styles.applyBtn}\n primary={true}\n filled={true}\n onClick={() => {\n setStartDate(selectingStartDate);\n setEndDate(selectingSEndDate);\n setIsOpen(false);\n }}\n >\n Apply\n </BEButton>\n </div>\n </BookingWizardBottomSheet>\n </>\n );\n }\n\n if (layout === 'horizontal' && theme === EBookingWizardTheme.Specific && !isMobile) {\n return (\n <RowWrapper {...rowWrapperProps}>\n <FloatingDateRangePicker\n ref={checkOutDatePickerRef}\n container={checkInWrapperRef}\n startDate={startDate}\n endDate={endDate}\n selectedDateChanged={setDate}\n overlayOffset={overlay?.dateOffset}\n className={bookingWizardStyles.item}\n theme={theme}\n showMultipleMonths={showMultipleMonths}\n overlay={{\n placement: overlay?.placement,\n fallbackPlacements: overlay?.fallbackPlacements,\n }}\n >\n {_combineDates(startDate, endDate)}\n </FloatingDateRangePicker>\n </RowWrapper>\n );\n }\n\n return (\n <RowWrapper {...rowWrapperProps}>\n <FloatingDateRangePicker\n ref={checkOutDatePickerRef}\n container={checkInWrapperRef}\n startDate={startDate}\n endDate={endDate}\n selectedDateChanged={setDate}\n overlayOffset={overlay?.dateOffset}\n theme={theme}\n showMultipleMonths={showMultipleMonths}\n className={bookingWizardStyles.item}\n overlay={{\n placement: overlay?.placement,\n fallbackPlacements: overlay?.fallbackPlacements,\n }}\n >\n {_checkInDate(startDate, true)}\n </FloatingDateRangePicker>\n <div className={layout !== 'button' && !isMobile ? bookingWizardStyles.divider : ''} />\n {_checkOutDate(endDate)}\n </RowWrapper>\n );\n};\n"]}
@@ -0,0 +1,9 @@
1
+ import { FC } from 'react';
2
+ export interface BookingWizardGuestSelectorProps {
3
+ onChange?: ({ adults, children, room }: {
4
+ adults: number;
5
+ children: number;
6
+ room: number;
7
+ }) => void;
8
+ }
9
+ export declare const BookingWizardGuestSelector: FC<BookingWizardGuestSelectorProps>;
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.BookingWizardGuestSelector = void 0;
30
+ const classnames_1 = __importDefault(require("classnames"));
31
+ const react_1 = __importStar(require("react"));
32
+ const AutoAutoHeight_1 = __importDefault(require("animations/AutoAutoHeight"));
33
+ const BEButton_1 = __importDefault(require("components/generic/BEButton"));
34
+ const Icon_1 = __importStar(require("components/generic/Icon/Icon"));
35
+ const NumberIncrement_1 = __importDefault(require("components/generic/NumberIncrement"));
36
+ const Overlay_1 = require("components/generic/Overlay/Overlay");
37
+ const Text_1 = __importDefault(require("components/generic/Text"));
38
+ const BookingWizardContext_1 = require("../BookingWizardContext");
39
+ const BookingWizardGuestSelector_module_scss_1 = __importDefault(require("./BookingWizardGuestSelector.module.scss"));
40
+ const BookingWizardBottomSheet_1 = __importDefault(require("../BookingWizardBottomSheet/BookingWizardBottomSheet"));
41
+ const StringHelper_1 = __importDefault(require("util/StringHelper"));
42
+ const BookingWizardGuestSelector = ({ onChange }) => {
43
+ const { overlay, type: overlayType, theme } = (0, BookingWizardContext_1.useBookingWizard)();
44
+ const ref = (0, react_1.useRef)(null);
45
+ const targetRef = (0, react_1.useRef)(null);
46
+ const [adults, setAdults] = (0, react_1.useState)(1);
47
+ const [children, setChildren] = (0, react_1.useState)(0);
48
+ const [room, setRoom] = (0, react_1.useState)(1);
49
+ const [editingAdults, setEditingAdults] = (0, react_1.useState)(adults);
50
+ const [editingChildren, setEditingChildren] = (0, react_1.useState)(children);
51
+ const [editingRoom, setEditingRoom] = (0, react_1.useState)(room);
52
+ const [open, setOpen] = (0, react_1.useState)(false);
53
+ (0, react_1.useEffect)(() => {
54
+ setEditingAdults(adults);
55
+ }, [adults]);
56
+ (0, react_1.useEffect)(() => {
57
+ setEditingChildren(children);
58
+ }, [children]);
59
+ const onApply = () => {
60
+ setAdults(editingAdults);
61
+ setChildren(editingChildren);
62
+ setRoom(editingRoom);
63
+ setOpen(false);
64
+ onChange === null || onChange === void 0 ? void 0 : onChange({ adults: editingAdults, children: editingChildren, room: editingRoom });
65
+ };
66
+ const getValueAsText = () => {
67
+ const parts = [StringHelper_1.default.pluralWithCount(adults, 'Adult')];
68
+ if (children > 0) {
69
+ parts.push(StringHelper_1.default.pluralWithCount(children, 'Child'));
70
+ }
71
+ return parts.join(' - ');
72
+ };
73
+ const inner = (applyButton = true) => {
74
+ return (react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default['popper--box'] },
75
+ react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default['popper--content'], ref: ref },
76
+ react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.row },
77
+ react_1.default.createElement(Text_1.default, null, StringHelper_1.default.plural(editingAdults, 'Adult')),
78
+ react_1.default.createElement(NumberIncrement_1.default, { number: editingAdults, min: 1, max: 10, onChange: applyButton ? setEditingAdults : setAdults })),
79
+ react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.row },
80
+ react_1.default.createElement(Text_1.default, null, StringHelper_1.default.plural(editingChildren, 'Child')),
81
+ react_1.default.createElement(NumberIncrement_1.default, { number: editingChildren, min: 0, max: 10, onChange: applyButton ? setEditingChildren : setChildren })),
82
+ react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.row },
83
+ react_1.default.createElement(Text_1.default, null, StringHelper_1.default.plural(editingRoom, 'Room')),
84
+ react_1.default.createElement(NumberIncrement_1.default, { number: editingRoom, min: 1, max: 10, onChange: applyButton ? setEditingRoom : setRoom })),
85
+ applyButton ? (react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default['popper--action'] },
86
+ react_1.default.createElement(BEButton_1.default, { wide: overlayType === 'bottom-sheet', className: BookingWizardGuestSelector_module_scss_1.default.applyBtn, onClick: onApply }, "Apply"))) : null)));
87
+ };
88
+ const content = () => {
89
+ if (overlayType === 'inline') {
90
+ return (react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.popper },
91
+ react_1.default.createElement(AutoAutoHeight_1.default, { open: open }, inner(false))));
92
+ }
93
+ if (overlayType === 'bottom-sheet') {
94
+ return (react_1.default.createElement(BookingWizardBottomSheet_1.default, { className: (0, classnames_1.default)(BookingWizardGuestSelector_module_scss_1.default.container, BookingWizardGuestSelector_module_scss_1.default['--bottom-sheet']), open: open, onDismiss: () => setOpen(false), header: react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.header },
95
+ react_1.default.createElement(Text_1.default, null, "How many guests?"),
96
+ " ",
97
+ react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.Close, onClick: () => setOpen(false) })) },
98
+ react_1.default.createElement("div", { className: BookingWizardGuestSelector_module_scss_1.default.popper },
99
+ inner(),
100
+ " ")));
101
+ }
102
+ return (react_1.default.createElement(Overlay_1.Overlay, { offset: overlay === null || overlay === void 0 ? void 0 : overlay.offset, usePortal: false, followElement: targetRef.current, placement: overlay === null || overlay === void 0 ? void 0 : overlay.placement, fallbackPlacements: overlay === null || overlay === void 0 ? void 0 : overlay.fallbackPlacements, strategy: 'absolute', open: open, onClose: () => setOpen === null || setOpen === void 0 ? void 0 : setOpen(!open), className: BookingWizardGuestSelector_module_scss_1.default.popper, containerClassName: BookingWizardGuestSelector_module_scss_1.default['custom-overlay'] }, inner()));
103
+ };
104
+ return (react_1.default.createElement("div", { ref: targetRef, className: (0, classnames_1.default)(BookingWizardGuestSelector_module_scss_1.default.container, { [BookingWizardGuestSelector_module_scss_1.default['--inline']]: overlayType === 'inline', [BookingWizardGuestSelector_module_scss_1.default['--open']]: open }) },
105
+ react_1.default.createElement("div", { className: (0, classnames_1.default)(BookingWizardGuestSelector_module_scss_1.default['container--search']), onClick: () => setOpen === null || setOpen === void 0 ? void 0 : setOpen(!open) },
106
+ react_1.default.createElement(Text_1.default, { className: BookingWizardGuestSelector_module_scss_1.default['text-display'] }, getValueAsText()),
107
+ react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.Dropdown })),
108
+ content()));
109
+ };
110
+ exports.BookingWizardGuestSelector = BookingWizardGuestSelector;
111
+ //# sourceMappingURL=BookingWizardGuestSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BookingWizardGuestSelector.js","sourceRoot":"/","sources":["src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import classNames from 'classnames';\nimport React, { FC, useEffect, useRef, useState } from 'react';\n\nimport AutoAutoHeight from 'animations/AutoAutoHeight';\nimport BEButton from 'components/generic/BEButton';\nimport Icon, { IconType } from 'components/generic/Icon/Icon';\nimport NumberIncrement from 'components/generic/NumberIncrement';\nimport { Overlay } from 'components/generic/Overlay/Overlay';\nimport Text from 'components/generic/Text';\nimport { useBookingWizard } from '../BookingWizardContext';\nimport styles from './BookingWizardGuestSelector.module.scss';\nimport BookingWizardBottomSheet from '../BookingWizardBottomSheet/BookingWizardBottomSheet';\nimport StringHelper from 'util/StringHelper';\n\nexport interface BookingWizardGuestSelectorProps {\n onChange?: ({ adults, children, room }: { adults: number; children: number; room: number }) => void;\n}\n\nexport const BookingWizardGuestSelector: FC<BookingWizardGuestSelectorProps> = ({ onChange }) => {\n const { overlay, type: overlayType, theme } = useBookingWizard();\n\n const ref = useRef(null);\n const targetRef = useRef(null);\n\n const [adults, setAdults] = useState(1);\n const [children, setChildren] = useState(0);\n const [room, setRoom] = useState(1);\n const [editingAdults, setEditingAdults] = useState(adults);\n const [editingChildren, setEditingChildren] = useState(children);\n const [editingRoom, setEditingRoom] = useState(room);\n\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n setEditingAdults(adults);\n }, [adults]);\n\n useEffect(() => {\n setEditingChildren(children);\n }, [children]);\n\n const onApply = () => {\n setAdults(editingAdults);\n setChildren(editingChildren);\n setRoom(editingRoom);\n setOpen(false);\n onChange?.({ adults: editingAdults, children: editingChildren, room: editingRoom });\n };\n\n const getValueAsText = () => {\n const parts = [StringHelper.pluralWithCount(adults, 'Adult')];\n\n if (children > 0) {\n parts.push(StringHelper.pluralWithCount(children, 'Child'));\n }\n\n return parts.join(' - ');\n };\n\n const inner = (applyButton = true) => {\n return (\n <div className={styles['popper--box']}>\n <div className={styles['popper--content']} ref={ref}>\n <div className={styles.row}>\n <Text>{StringHelper.plural(editingAdults, 'Adult')}</Text>\n <NumberIncrement number={editingAdults} min={1} max={10} onChange={applyButton ? setEditingAdults : setAdults} />\n </div>\n <div className={styles.row}>\n <Text>{StringHelper.plural(editingChildren, 'Child')}</Text>\n <NumberIncrement number={editingChildren} min={0} max={10} onChange={applyButton ? setEditingChildren : setChildren} />\n </div>\n <div className={styles.row}>\n <Text>{StringHelper.plural(editingRoom, 'Room')}</Text>\n <NumberIncrement number={editingRoom} min={1} max={10} onChange={applyButton ? setEditingRoom : setRoom} />\n </div>\n {applyButton ? (\n <div className={styles['popper--action']}>\n <BEButton wide={overlayType === 'bottom-sheet'} className={styles.applyBtn} onClick={onApply}>\n Apply\n </BEButton>\n </div>\n ) : null}\n </div>\n </div>\n );\n };\n\n const content = () => {\n if (overlayType === 'inline') {\n return (\n <div className={styles.popper}>\n <AutoAutoHeight open={open}>{inner(false)}</AutoAutoHeight>\n </div>\n );\n }\n\n if (overlayType === 'bottom-sheet') {\n return (\n <BookingWizardBottomSheet\n className={classNames(styles.container, styles['--bottom-sheet'])}\n open={open}\n onDismiss={() => setOpen(false)}\n header={\n <div className={styles.header}>\n <Text>How many guests?</Text> <Icon icon={IconType.Close} onClick={() => setOpen(false)} />\n </div>\n }\n >\n <div className={styles.popper}>{inner()} </div>\n </BookingWizardBottomSheet>\n );\n }\n\n return (\n <Overlay\n offset={overlay?.offset}\n usePortal={false}\n followElement={targetRef.current}\n placement={overlay?.placement}\n fallbackPlacements={overlay?.fallbackPlacements}\n strategy={'absolute'}\n open={open}\n onClose={() => setOpen?.(!open)}\n className={styles.popper}\n containerClassName={styles['custom-overlay']}\n >\n {inner()}\n </Overlay>\n );\n };\n\n return (\n <div ref={targetRef} className={classNames(styles.container, { [styles['--inline']]: overlayType === 'inline', [styles['--open']]: open })}>\n <div className={classNames(styles['container--search'])} onClick={() => setOpen?.(!open)}>\n <Text className={styles['text-display']}>{getValueAsText()}</Text>\n\n <Icon icon={IconType.Dropdown} />\n </div>\n\n {content()}\n </div>\n );\n};\n"]}
@@ -0,0 +1,10 @@
1
+ import { BookingWizardProperty } from 'models/BookingWizard/BookingWizardProperty';
2
+ import { TBookingWizardProperties } from 'models/BookingWizard/BookingWizardTypes';
3
+ interface BookingWizardHotelSelectorProps {
4
+ disabled?: boolean;
5
+ selectedProperty?: BookingWizardProperty;
6
+ properties: TBookingWizardProperties;
7
+ onChange?: (hotel: BookingWizardProperty | null) => void;
8
+ }
9
+ export declare const BookingWizardHotelSelector: (props: BookingWizardHotelSelectorProps) => JSX.Element;
10
+ export {};