@roomstay/frontend 1.6.1 → 2.0.0-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1056) hide show
  1. package/dist/201.bundle.js +1 -1
  2. package/dist/218.bundle.js +1 -0
  3. package/dist/279.bundle.js +1 -1
  4. package/dist/370.bundle.js +1 -1
  5. package/dist/423.bundle.js +1 -0
  6. package/dist/449.bundle.js +1 -1
  7. package/dist/625.bundle.js +1 -1
  8. package/dist/873.bundle.js +1 -1
  9. package/dist/882.bundle.js +1 -0
  10. package/dist/972.bundle.js +1 -1
  11. package/dist/main.bundle.js +1 -1
  12. package/dist/src/animations/AutoAutoHeight.d.ts +1 -0
  13. package/dist/src/animations/AutoAutoHeight.js +14 -8
  14. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  15. package/dist/src/animations/Fade.d.ts +7 -3
  16. package/dist/src/animations/Fade.js +14 -3
  17. package/dist/src/animations/Fade.js.map +1 -1
  18. package/dist/src/api/AddonAPI.d.ts +3 -3
  19. package/dist/src/api/AddonAPI.js +3 -3
  20. package/dist/src/api/AddonAPI.js.map +1 -1
  21. package/dist/src/api/AvailabilityAPI.d.ts +3 -3
  22. package/dist/src/api/AvailabilityAPI.js +9 -8
  23. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  24. package/dist/src/api/BaseAPI.d.ts +8 -3
  25. package/dist/src/api/BaseAPI.js +22 -9
  26. package/dist/src/api/BaseAPI.js.map +1 -1
  27. package/dist/src/api/BookingAPI.d.ts +9 -7
  28. package/dist/src/api/BookingAPI.js +9 -7
  29. package/dist/src/api/BookingAPI.js.map +1 -1
  30. package/dist/src/api/ErrorAPI.d.ts +6 -0
  31. package/dist/src/api/ErrorAPI.js +15 -0
  32. package/dist/src/api/ErrorAPI.js.map +1 -1
  33. package/dist/src/api/ExchangeRateAPI.d.ts +2 -2
  34. package/dist/src/api/ExchangeRateAPI.js +14 -8
  35. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  36. package/dist/src/api/HotelAPI.d.ts +5 -5
  37. package/dist/src/api/HotelAPI.js +7 -3
  38. package/dist/src/api/HotelAPI.js.map +1 -1
  39. package/dist/src/api/MemberAPI.d.ts +1 -1
  40. package/dist/src/api/MemberAPI.js +1 -1
  41. package/dist/src/api/MemberAPI.js.map +1 -1
  42. package/dist/src/api/ReservationAPI.d.ts +19 -9
  43. package/dist/src/api/ReservationAPI.js +15 -7
  44. package/dist/src/api/ReservationAPI.js.map +1 -1
  45. package/dist/src/api/SessionAPI.d.ts +4 -0
  46. package/dist/src/api/SessionAPI.js +23 -0
  47. package/dist/src/api/SessionAPI.js.map +1 -0
  48. package/dist/src/api/members-service/MembersServiceAPI.d.ts +6 -0
  49. package/dist/src/api/members-service/MembersServiceAPI.js +77 -0
  50. package/dist/src/api/members-service/MembersServiceAPI.js.map +1 -0
  51. package/dist/src/components/User/Forms/ForgotPasswordForm.d.ts +6 -0
  52. package/dist/src/components/User/Forms/ForgotPasswordForm.js +108 -0
  53. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -0
  54. package/dist/src/components/User/Forms/SignInForm.d.ts +6 -0
  55. package/dist/src/components/User/Forms/SignInForm.js +113 -0
  56. package/dist/src/components/User/Forms/SignInForm.js.map +1 -0
  57. package/dist/src/components/User/Forms/SignUpForm.d.ts +6 -0
  58. package/dist/src/components/User/Forms/SignUpForm.js +159 -0
  59. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -0
  60. package/dist/src/components/generic/Alert.d.ts +11 -3
  61. package/dist/src/components/generic/Alert.js +9 -5
  62. package/dist/src/components/generic/Alert.js.map +1 -1
  63. package/dist/src/components/generic/BEButton.d.ts +9 -4
  64. package/dist/src/components/generic/BEButton.js +12 -12
  65. package/dist/src/components/generic/BEButton.js.map +1 -1
  66. package/dist/src/components/generic/BESelect.d.ts +4 -1
  67. package/dist/src/components/generic/BESelect.js +5 -40
  68. package/dist/src/components/generic/BESelect.js.map +1 -1
  69. package/dist/src/components/generic/BackButton.js +4 -4
  70. package/dist/src/components/generic/BackButton.js.map +1 -1
  71. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +6 -6
  72. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  73. package/dist/src/components/generic/Card/Card/Card.d.ts +7 -0
  74. package/dist/src/components/generic/Card/Card/Card.js +14 -0
  75. package/dist/src/components/generic/Card/Card/Card.js.map +1 -0
  76. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +15 -0
  77. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +33 -0
  78. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -0
  79. package/dist/src/components/generic/{Checkbox.d.ts → Checkbox/Checkbox.d.ts} +1 -1
  80. package/dist/src/components/generic/Checkbox/Checkbox.js +35 -0
  81. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -0
  82. package/dist/src/components/generic/Countdown.js +3 -3
  83. package/dist/src/components/generic/Countdown.js.map +1 -1
  84. package/dist/src/components/generic/Currency.js +9 -9
  85. package/dist/src/components/generic/Currency.js.map +1 -1
  86. package/dist/src/components/generic/Distance.js +4 -4
  87. package/dist/src/components/generic/Distance.js.map +1 -1
  88. package/dist/src/components/generic/ForwardedSelect.d.ts +12 -0
  89. package/dist/src/components/generic/ForwardedSelect.js +16 -0
  90. package/dist/src/components/generic/ForwardedSelect.js.map +1 -0
  91. package/dist/src/components/generic/Headline.d.ts +5 -3
  92. package/dist/src/components/generic/Headline.js +2 -1
  93. package/dist/src/components/generic/Headline.js.map +1 -1
  94. package/dist/src/components/generic/{Icon.d.ts → Icon/Icon.d.ts} +6 -2
  95. package/dist/src/components/generic/{Icon.js → Icon/Icon.js} +10 -5
  96. package/dist/src/components/generic/Icon/Icon.js.map +1 -0
  97. package/dist/src/components/generic/IconText/IconText.d.ts +10 -0
  98. package/dist/src/components/generic/IconText/IconText.js +21 -0
  99. package/dist/src/components/generic/IconText/IconText.js.map +1 -0
  100. package/dist/src/components/generic/InputGroup/InputGroup.d.ts +1 -1
  101. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  102. package/dist/src/components/generic/InputGroup/InputGroup.types.d.ts +1 -1
  103. package/dist/src/components/generic/LineBreak.d.ts +1 -0
  104. package/dist/src/components/generic/LineBreak.js +1 -0
  105. package/dist/src/components/generic/LineBreak.js.map +1 -1
  106. package/dist/src/components/generic/Notification.d.ts +1 -1
  107. package/dist/src/components/generic/Notification.js +5 -5
  108. package/dist/src/components/generic/Notification.js.map +1 -1
  109. package/dist/src/components/generic/NumberIncrement.js +5 -5
  110. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  111. package/dist/src/components/generic/Overlay/Overlay.d.ts +18 -0
  112. package/dist/src/components/generic/Overlay/Overlay.js +93 -0
  113. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -0
  114. package/dist/src/components/generic/PasswordBox/PasswordBox.d.ts +3 -0
  115. package/dist/src/components/generic/PasswordBox/PasswordBox.js +20 -0
  116. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -0
  117. package/dist/src/components/generic/PaymentCard/CardTypeSelect.d.ts +9 -0
  118. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +30 -0
  119. package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -0
  120. package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +6 -0
  121. package/dist/src/components/generic/PaymentCard/PaymentCard.js +54 -0
  122. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -0
  123. package/dist/src/components/generic/PaymentCard/PaymentCardInput.d.ts +11 -0
  124. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +201 -0
  125. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -0
  126. package/dist/src/components/generic/Pill.d.ts +11 -3
  127. package/dist/src/components/generic/Pill.js +10 -3
  128. package/dist/src/components/generic/Pill.js.map +1 -1
  129. package/dist/src/components/generic/Placeholder.d.ts +2 -1
  130. package/dist/src/components/generic/Placeholder.js +2 -1
  131. package/dist/src/components/generic/Placeholder.js.map +1 -1
  132. package/dist/src/components/generic/PlanpayButton/PlanpayButton.d.ts +6 -0
  133. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +11 -0
  134. package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -0
  135. package/dist/src/components/generic/Portal/Portal.d.ts +9 -0
  136. package/dist/src/components/generic/Portal/Portal.js +10 -0
  137. package/dist/src/components/generic/Portal/Portal.js.map +1 -0
  138. package/dist/src/components/generic/PromoCodeInput.js +22 -20
  139. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  140. package/dist/src/components/generic/RadioButtonGroup/RadioButton.d.ts +11 -0
  141. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +21 -0
  142. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -0
  143. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.d.ts +15 -0
  144. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +20 -0
  145. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -0
  146. package/dist/src/components/generic/RecentSearchesCard.d.ts +1 -1
  147. package/dist/src/components/generic/RecentSearchesCard.js +9 -9
  148. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  149. package/dist/src/components/generic/ScrollToTop.js +3 -3
  150. package/dist/src/components/generic/ScrollToTop.js.map +1 -1
  151. package/dist/src/components/generic/Select/Select.d.ts +24 -0
  152. package/dist/src/components/generic/Select/Select.js +64 -0
  153. package/dist/src/components/generic/Select/Select.js.map +1 -0
  154. package/dist/src/components/generic/Select.js +2 -2
  155. package/dist/src/components/generic/Select.js.map +1 -1
  156. package/dist/src/components/generic/Slider/Slider.d.ts +22 -0
  157. package/dist/src/components/generic/Slider/Slider.js +111 -0
  158. package/dist/src/components/generic/Slider/Slider.js.map +1 -0
  159. package/dist/src/components/generic/Tabs/ElementChildren.d.ts +3 -0
  160. package/dist/src/components/generic/Tabs/ElementChildren.js +18 -0
  161. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -0
  162. package/dist/src/components/generic/Tabs/Tab.d.ts +9 -0
  163. package/dist/src/components/generic/Tabs/Tab.js +13 -0
  164. package/dist/src/components/generic/Tabs/Tab.js.map +1 -0
  165. package/dist/src/components/generic/Tabs/TabContext.d.ts +16 -0
  166. package/dist/src/components/generic/Tabs/TabContext.js +39 -0
  167. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -0
  168. package/dist/src/components/generic/Tabs/TabLink.d.ts +1 -0
  169. package/dist/src/components/generic/Tabs/TabLink.js +30 -0
  170. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -0
  171. package/dist/src/components/generic/Tabs/TabRouteContainer.d.ts +6 -0
  172. package/dist/src/components/generic/Tabs/TabRouteContainer.js +30 -0
  173. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -0
  174. package/dist/src/components/generic/Tabs/Tabs.d.ts +12 -0
  175. package/dist/src/components/generic/Tabs/Tabs.js +39 -0
  176. package/dist/src/components/generic/Tabs/Tabs.js.map +1 -0
  177. package/dist/src/components/generic/Text.d.ts +6 -3
  178. package/dist/src/components/generic/Text.js +2 -2
  179. package/dist/src/components/generic/Text.js.map +1 -1
  180. package/dist/src/components/generic/TextArea.d.ts +2 -1
  181. package/dist/src/components/generic/TextArea.js +3 -3
  182. package/dist/src/components/generic/TextArea.js.map +1 -1
  183. package/dist/src/components/generic/TextBox.d.ts +5 -3
  184. package/dist/src/components/generic/TextBox.js +18 -14
  185. package/dist/src/components/generic/TextBox.js.map +1 -1
  186. package/dist/src/components/generic/Tooltip/Tooltip.d.ts +8 -0
  187. package/dist/src/components/generic/Tooltip/Tooltip.js +26 -0
  188. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -0
  189. package/dist/src/components/generic/badging/SSLSecureBadge.js +3 -3
  190. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  191. package/dist/src/components/generic/buttons/NextStepButton.d.ts +1 -1
  192. package/dist/src/components/generic/buttons/NextStepButton.js +5 -5
  193. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  194. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.d.ts +10 -7
  195. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +37 -58
  196. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  197. package/dist/src/components/generic/date/DatePicker.js +29 -28
  198. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  199. package/dist/src/components/generic/date/DatePickerDay.js +21 -22
  200. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  201. package/dist/src/components/generic/date/DatePickerDays.js +5 -5
  202. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  203. package/dist/src/components/generic/date/DatePickerMonth.js +8 -8
  204. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  205. package/dist/src/components/generic/date/DatePickerWeek.js +23 -24
  206. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  207. package/dist/src/components/generic/date/FloatingDatePicker.js +14 -45
  208. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  209. package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
  210. package/dist/src/components/generic/loader/ImageLoader.js +6 -6
  211. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  212. package/dist/src/components/generic/loader/LargeLoader.js +5 -5
  213. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  214. package/dist/src/components/generic/loader/SmallSpinner.d.ts +1 -1
  215. package/dist/src/components/generic/loader/SmallSpinner.js +2 -2
  216. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  217. package/dist/src/components/generic/map/HotelLocationMap.js +2 -2
  218. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  219. package/dist/src/components/generic/modal/ConfirmationModal.js +3 -3
  220. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  221. package/dist/src/components/generic/modal/ErrorModal.js +3 -3
  222. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  223. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.d.ts +8 -0
  224. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +73 -0
  225. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -0
  226. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +15 -0
  227. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +82 -0
  228. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -0
  229. package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -3
  230. package/dist/src/components/generic/modal/SimpleModal.js +67 -55
  231. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  232. package/dist/src/components/generic/modal/TabbedModal.js +3 -3
  233. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  234. package/dist/src/components/generic/radio/RadioFields.js +2 -2
  235. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  236. package/dist/src/components/members/EditMyProfile.d.ts +3 -0
  237. package/dist/src/components/members/EditMyProfile.js +103 -0
  238. package/dist/src/components/members/EditMyProfile.js.map +1 -0
  239. package/dist/src/components/navigation/Header.js +73 -32
  240. package/dist/src/components/navigation/Header.js.map +1 -1
  241. package/dist/src/components/navigation/StepSelector.js +15 -14
  242. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  243. package/dist/src/components/navigation/StepSelectorModal.js +9 -9
  244. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  245. package/dist/src/components/pages/Account/Card/CardList.d.ts +15 -0
  246. package/dist/src/components/pages/Account/Card/CardList.js +36 -0
  247. package/dist/src/components/pages/Account/Card/CardList.js.map +1 -0
  248. package/dist/src/components/pages/Account/Card/MemberCardItem.d.ts +8 -0
  249. package/dist/src/components/pages/Account/Card/MemberCardItem.js +38 -0
  250. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -0
  251. package/dist/src/components/pages/PageColorComponent.d.ts +1 -0
  252. package/dist/src/components/pages/PageColorComponent.js +18 -0
  253. package/dist/src/components/pages/PageColorComponent.js.map +1 -0
  254. package/dist/src/components/reservation/ReservationItem.d.ts +16 -0
  255. package/dist/src/components/reservation/ReservationItem.js +145 -0
  256. package/dist/src/components/reservation/ReservationItem.js.map +1 -0
  257. package/dist/src/components/reservation/ReservationList.d.ts +11 -0
  258. package/dist/src/components/reservation/ReservationList.js +10 -0
  259. package/dist/src/components/reservation/ReservationList.js.map +1 -0
  260. package/dist/src/components/steps/DaysSelectedInformer.js +4 -4
  261. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  262. package/dist/src/components/steps/MinimumNightStayPill.js +14 -14
  263. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  264. package/dist/src/components/steps/addons/AddonCard.d.ts +1 -1
  265. package/dist/src/components/steps/addons/AddonCard.js +22 -22
  266. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  267. package/dist/src/components/steps/addons/AddonList.js +12 -12
  268. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  269. package/dist/src/components/steps/addons/AddonsNotFound.js +5 -5
  270. package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
  271. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +1 -1
  272. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +4 -3
  273. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  274. package/dist/src/components/steps/confirmation/AccountDetails.js +9 -9
  275. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  276. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.d.ts +8 -0
  277. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +31 -0
  278. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -0
  279. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.d.ts +0 -0
  280. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js +1 -0
  281. package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js.map +1 -0
  282. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.d.ts +6 -0
  283. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +41 -0
  284. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -0
  285. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.d.ts +3 -0
  286. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +196 -0
  287. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -0
  288. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.d.ts +2 -0
  289. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +58 -0
  290. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -0
  291. package/dist/src/components/steps/confirmation/RoomContactDetails.d.ts +3 -8
  292. package/dist/src/components/steps/confirmation/RoomContactDetails.js +262 -201
  293. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  294. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.d.ts +3 -6
  295. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +29 -19
  296. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  297. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.d.ts +1 -1
  298. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +13 -13
  299. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  300. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.d.ts +2 -1
  301. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +22 -10
  302. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  303. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.d.ts +10 -8
  304. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +82 -54
  305. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  306. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +229 -302
  307. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  308. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.d.ts +1 -0
  309. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +11 -0
  310. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -0
  311. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +7 -7
  312. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  313. package/dist/src/components/steps/confirmation/StepConfirmationPaymentDetails.js +31 -34
  314. package/dist/src/components/steps/confirmation/StepConfirmationPaymentDetails.js.map +1 -1
  315. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +5 -5
  316. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  317. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +5 -5
  318. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  319. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +23 -23
  320. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  321. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.d.ts +1 -1
  322. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +3 -3
  323. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  324. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.d.ts +2 -2
  325. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +17 -17
  326. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  327. package/dist/src/components/steps/date/PeoplePicker.js +9 -9
  328. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  329. package/dist/src/components/steps/date/PeoplePickerRow.js +13 -13
  330. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  331. package/dist/src/components/steps/date/StepDatePricePerRoom.js +15 -15
  332. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  333. package/dist/src/components/steps/date/StepOneDateRange.js +7 -7
  334. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  335. package/dist/src/components/steps/date/StepOneDateRangePicker.js +6 -6
  336. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  337. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +6 -6
  338. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  339. package/dist/src/components/steps/date/StepOneNextStepButton.js +6 -6
  340. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  341. package/dist/src/components/steps/date/StepOneStatusPeople.js +1 -1
  342. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  343. package/dist/src/components/steps/hotel/HotelCard.d.ts +1 -1
  344. package/dist/src/components/steps/hotel/HotelCard.js +31 -31
  345. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  346. package/dist/src/components/steps/hotel/HotelCardList.d.ts +1 -1
  347. package/dist/src/components/steps/hotel/HotelCardList.js +2 -2
  348. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  349. package/dist/src/components/steps/hotel/HotelCardModal.d.ts +2 -3
  350. package/dist/src/components/steps/hotel/HotelCardModal.js +20 -20
  351. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  352. package/dist/src/components/steps/hotel/HotelSearchParameters.js +24 -31
  353. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  354. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +4 -4
  355. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  356. package/dist/src/components/steps/room/AvailableUpgradesModal.js +23 -24
  357. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  358. package/dist/src/components/steps/room/ImageGallerySlider.d.ts +1 -1
  359. package/dist/src/components/steps/room/ImageGallerySlider.js +14 -14
  360. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  361. package/dist/src/components/steps/room/InactivityWindow.js +22 -22
  362. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  363. package/dist/src/components/steps/room/LargeRoomCard.d.ts +1 -1
  364. package/dist/src/components/steps/room/LargeRoomCard.js +14 -14
  365. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  366. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +39 -45
  367. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  368. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.types.d.ts +1 -1
  369. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.types.js.map +1 -1
  370. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +22 -22
  371. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  372. package/dist/src/components/steps/room/RatesNotFound.js +3 -3
  373. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  374. package/dist/src/components/steps/room/RoomList.js +53 -23
  375. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  376. package/dist/src/components/steps/room/RoomListAlert.d.ts +2 -0
  377. package/dist/src/components/steps/room/RoomListAlert.js +27 -0
  378. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -0
  379. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +24 -26
  380. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  381. package/dist/src/components/steps/room/RoomModal.d.ts +2 -2
  382. package/dist/src/components/steps/room/RoomModal.js +12 -12
  383. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  384. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +8 -8
  385. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  386. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +8 -8
  387. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  388. package/dist/src/components/steps/room/StepRoomErrorForm.js +10 -10
  389. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  390. package/dist/src/components/steps/room/StepRoomHotelDetails.js +8 -9
  391. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  392. package/dist/src/components/steps/room/StepRoomNextStepButton.js +5 -5
  393. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  394. package/dist/src/components/steps/room/StepRoomSortBy.js +6 -6
  395. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  396. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +13 -13
  397. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  398. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +1 -1
  399. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +6 -6
  400. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  401. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +1 -1
  402. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +6 -6
  403. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  404. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +9 -9
  405. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  406. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.d.ts +1 -1
  407. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +35 -42
  408. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  409. package/dist/src/components/steps/room/roomDetails/RoomDetails.d.ts +1 -1
  410. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +37 -37
  411. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  412. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.d.ts +3 -1
  413. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +9 -8
  414. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  415. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.d.ts +1 -1
  416. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +5 -5
  417. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  418. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +10 -10
  419. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  420. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.d.ts +7 -0
  421. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +99 -0
  422. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -0
  423. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.d.ts +1 -1
  424. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +4 -4
  425. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  426. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +11 -11
  427. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  428. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.d.ts +1 -1
  429. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +15 -14
  430. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  431. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.d.ts +1 -1
  432. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +16 -15
  433. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  434. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.d.ts +1 -1
  435. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +4 -4
  436. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  437. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.d.ts +2 -3
  438. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +16 -16
  439. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  440. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.d.ts +1 -1
  441. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +22 -22
  442. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  443. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.d.ts +1 -1
  444. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +25 -32
  445. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  446. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +7 -7
  447. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  448. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.d.ts +1 -1
  449. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +22 -39
  450. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  451. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +2 -2
  452. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +65 -27
  453. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  454. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +2 -2
  455. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +13 -13
  456. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  457. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +2 -2
  458. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +13 -13
  459. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  460. package/dist/src/components/summary/BEMapWidget.js +7 -7
  461. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  462. package/dist/src/components/summary/BEMobileSummary.js +15 -15
  463. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  464. package/dist/src/components/summary/BEMobileSummaryModal.js +25 -26
  465. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  466. package/dist/src/components/summary/BESummary.d.ts +1 -1
  467. package/dist/src/components/summary/BESummary.js +22 -25
  468. package/dist/src/components/summary/BESummary.js.map +1 -1
  469. package/dist/src/components/summary/BESummaryAddonRow.d.ts +1 -1
  470. package/dist/src/components/summary/BESummaryAddonRow.js +9 -9
  471. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  472. package/dist/src/components/summary/BESummaryPerkBlock.js +8 -8
  473. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  474. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +5 -5
  475. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  476. package/dist/src/components/summary/BESummaryRoomRow.d.ts +1 -1
  477. package/dist/src/components/summary/BESummaryRoomRow.js +19 -19
  478. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  479. package/dist/src/components/summary/TransportDistanceFromHotelBlock.d.ts +1 -1
  480. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +7 -7
  481. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  482. package/dist/src/components/temp/Login.d.ts +2 -0
  483. package/dist/src/components/temp/Login.js +53 -0
  484. package/dist/src/components/temp/Login.js.map +1 -0
  485. package/dist/src/containers/PrivateRoute.d.ts +3 -0
  486. package/dist/src/containers/PrivateRoute.js +31 -0
  487. package/dist/src/containers/PrivateRoute.js.map +1 -0
  488. package/dist/src/contexts/BasketContext/BasketContext.d.ts +2 -1
  489. package/dist/src/contexts/BasketContext/BasketContext.js +4 -2
  490. package/dist/src/contexts/BasketContext/BasketContext.js.map +1 -1
  491. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +7 -7
  492. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  493. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +70 -56
  494. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  495. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.d.ts +1 -0
  496. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js +4 -2
  497. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js.map +1 -1
  498. package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.d.ts +2 -2
  499. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +4 -4
  500. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  501. package/dist/src/contexts/CompanyContext/CompanyContext.js +1 -1
  502. package/dist/src/contexts/CompanyContext/CompanyContext.js.map +1 -1
  503. package/dist/src/contexts/CompanyContext/CompanyContextType.type.d.ts +13 -9
  504. package/dist/src/contexts/CompanyContext/CompanyContextType.type.js.map +1 -1
  505. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.d.ts +1 -1
  506. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +37 -42
  507. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  508. package/dist/src/contexts/ConfirmationFormContext.d.ts +3 -3
  509. package/dist/src/contexts/ConfirmationFormContext.js +4 -5
  510. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  511. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.d.ts +4 -0
  512. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.js +8 -0
  513. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.js.map +1 -0
  514. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.d.ts +12 -0
  515. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js +3 -0
  516. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js.map +1 -0
  517. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.d.ts +2 -0
  518. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +188 -0
  519. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -0
  520. package/dist/src/contexts/ErrorContext.js +3 -3
  521. package/dist/src/contexts/ErrorContext.js.map +1 -1
  522. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js +1 -1
  523. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js.map +1 -1
  524. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +46 -35
  525. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  526. package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
  527. package/dist/src/contexts/HotelOverridesContext.js +15 -15
  528. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  529. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +36 -0
  530. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +28 -0
  531. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -0
  532. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.d.ts +2 -0
  533. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +227 -0
  534. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -0
  535. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +20 -0
  536. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.js +8 -0
  537. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.js.map +1 -0
  538. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.d.ts +2 -0
  539. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +155 -0
  540. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -0
  541. package/dist/src/contexts/ModalContext.js +1 -1
  542. package/dist/src/contexts/ModalContext.js.map +1 -1
  543. package/dist/src/contexts/NotificationContext.d.ts +3 -3
  544. package/dist/src/contexts/NotificationContext.js +5 -6
  545. package/dist/src/contexts/NotificationContext.js.map +1 -1
  546. package/dist/src/contexts/index.d.ts +22 -19
  547. package/dist/src/contexts/index.js +28 -21
  548. package/dist/src/contexts/index.js.map +1 -1
  549. package/dist/src/engines/BaseEngine.d.ts +3 -3
  550. package/dist/src/engines/BaseEngine.js +2 -2
  551. package/dist/src/engines/BaseEngine.js.map +1 -1
  552. package/dist/src/engines/CustomEngine/CustomEngine.d.ts +1 -1
  553. package/dist/src/engines/CustomEngine/CustomEngine.js +1 -1
  554. package/dist/src/engines/CustomEngine/CustomEngine.js.map +1 -1
  555. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.d.ts +1 -1
  556. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +4 -4
  557. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
  558. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.d.ts +1 -1
  559. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +25 -14
  560. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  561. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.d.ts +1 -1
  562. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js +4 -4
  563. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js.map +1 -1
  564. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +1 -1
  565. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +46 -121
  566. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  567. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.d.ts +1 -1
  568. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js +4 -4
  569. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  570. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.d.ts +1 -1
  571. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +17 -15
  572. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  573. package/dist/src/errors/GetAvailabilityError.d.ts +1 -1
  574. package/dist/src/errors/GetAvailabilityError.js +4 -4
  575. package/dist/src/errors/GetAvailabilityError.js.map +1 -1
  576. package/dist/src/errors/NoCompanyContextError.d.ts +1 -1
  577. package/dist/src/errors/NoCompanyContextError.js +1 -1
  578. package/dist/src/errors/NoCompanyContextError.js.map +1 -1
  579. package/dist/src/errors/NoHotelSelectedError.d.ts +1 -1
  580. package/dist/src/errors/NoHotelSelectedError.js +1 -1
  581. package/dist/src/errors/NoHotelSelectedError.js.map +1 -1
  582. package/dist/src/events/RoomstayEventManager.d.ts +3 -3
  583. package/dist/src/events/RoomstayEventManager.js +5 -24
  584. package/dist/src/events/RoomstayEventManager.js.map +1 -1
  585. package/dist/src/events/actions/AddToCartEvent.d.ts +2 -2
  586. package/dist/src/events/actions/AddToCartEvent.js +1 -1
  587. package/dist/src/events/actions/AddToCartEvent.js.map +1 -1
  588. package/dist/src/events/actions/RemoveFromCartEvent.d.ts +2 -2
  589. package/dist/src/events/actions/RemoveFromCartEvent.js +1 -1
  590. package/dist/src/events/actions/RemoveFromCartEvent.js.map +1 -1
  591. package/dist/src/events/index.d.ts +13 -14
  592. package/dist/src/events/index.js +19 -16
  593. package/dist/src/events/index.js.map +1 -1
  594. package/dist/src/events/views/StepCheckoutViewEvent.d.ts +2 -2
  595. package/dist/src/events/views/StepCheckoutViewEvent.js +1 -1
  596. package/dist/src/events/views/StepCheckoutViewEvent.js.map +1 -1
  597. package/dist/src/hooks/AutoFocusOnSelect.d.ts +13 -0
  598. package/dist/src/hooks/AutoFocusOnSelect.js +76 -0
  599. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -0
  600. package/dist/src/hooks/BodyClickHook.d.ts +10 -0
  601. package/dist/src/hooks/BodyClickHook.js +36 -0
  602. package/dist/src/hooks/BodyClickHook.js.map +1 -0
  603. package/dist/src/hooks/CombineState.d.ts +2 -0
  604. package/dist/src/hooks/CombineState.js +10 -0
  605. package/dist/src/hooks/CombineState.js.map +1 -0
  606. package/dist/src/hooks/ConfirmationQuery.d.ts +5 -0
  607. package/dist/src/hooks/ConfirmationQuery.js +17 -0
  608. package/dist/src/hooks/ConfirmationQuery.js.map +1 -0
  609. package/dist/src/hooks/CurrentHotelHook.js +4 -3
  610. package/dist/src/hooks/CurrentHotelHook.js.map +1 -1
  611. package/dist/src/hooks/ElementSortHook.d.ts +2 -2
  612. package/dist/src/hooks/ElementSortHook.js +4 -3
  613. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  614. package/dist/src/hooks/EventHook.d.ts +3 -3
  615. package/dist/src/hooks/EventHook.js +5 -4
  616. package/dist/src/hooks/EventHook.js.map +1 -1
  617. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +13 -0
  618. package/dist/src/hooks/KeyboardControlOnSelect.js +111 -0
  619. package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -0
  620. package/dist/src/hooks/LoggedInUserHook.d.ts +10 -0
  621. package/dist/src/hooks/LoggedInUserHook.js +43 -0
  622. package/dist/src/hooks/LoggedInUserHook.js.map +1 -0
  623. package/dist/src/hooks/Query.d.ts +2 -0
  624. package/dist/src/hooks/Query.js +15 -0
  625. package/dist/src/hooks/Query.js.map +1 -0
  626. package/dist/src/hooks/ScrollFocusHook.js +2 -1
  627. package/dist/src/hooks/ScrollFocusHook.js.map +1 -1
  628. package/dist/src/hooks/VGSHooks.d.ts +47 -0
  629. package/dist/src/hooks/VGSHooks.js +207 -0
  630. package/dist/src/hooks/VGSHooks.js.map +1 -0
  631. package/dist/src/hooks/WindowSize.d.ts +4 -0
  632. package/dist/src/hooks/WindowSize.js +24 -0
  633. package/dist/src/hooks/WindowSize.js.map +1 -0
  634. package/dist/src/hooks/index.d.ts +6 -5
  635. package/dist/src/hooks/index.js +12 -7
  636. package/dist/src/hooks/index.js.map +1 -1
  637. package/dist/src/icons/Check.js +1 -1
  638. package/dist/src/icons/Check.js.map +1 -1
  639. package/dist/src/index.d.ts +62 -64
  640. package/dist/src/index.js +73 -72
  641. package/dist/src/index.js.map +1 -1
  642. package/dist/src/mockApi/AddonAPI.d.ts +3 -3
  643. package/dist/src/mockApi/AddonAPI.js +3 -3
  644. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  645. package/dist/src/mockApi/BookingAPI.d.ts +6 -6
  646. package/dist/src/mockApi/BookingAPI.js +6 -6
  647. package/dist/src/mockApi/BookingAPI.js.map +1 -1
  648. package/dist/src/mockApi/ExchangeRateAPI.d.ts +2 -2
  649. package/dist/src/mockApi/ExchangeRateAPI.js +1 -1
  650. package/dist/src/mockApi/ExchangeRateAPI.js.map +1 -1
  651. package/dist/src/mockApi/HotelAPI.d.ts +3 -3
  652. package/dist/src/mockApi/HotelAPI.js +1 -1
  653. package/dist/src/mockApi/HotelAPI.js.map +1 -1
  654. package/dist/src/mockApi/MemberAPI.d.ts +1 -1
  655. package/dist/src/mockApi/MemberAPI.js +1 -1
  656. package/dist/src/mockApi/MemberAPI.js.map +1 -1
  657. package/dist/src/mockApi/MockAPI.d.ts +1 -1
  658. package/dist/src/mockApi/MockAPI.js +1 -1
  659. package/dist/src/mockApi/MockAPI.js.map +1 -1
  660. package/dist/src/mockApi/ReservationAPI.d.ts +6 -6
  661. package/dist/src/mockApi/ReservationAPI.js +1 -1
  662. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  663. package/dist/src/models/Addon/Addon.d.ts +2 -2
  664. package/dist/src/models/Addon/Addon.js.map +1 -1
  665. package/dist/src/models/Api/ExchangeRateDTO.d.ts +1 -1
  666. package/dist/src/models/Api/HotelDTO.d.ts +19 -11
  667. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  668. package/dist/src/models/Api/HotelOverrideDTO.d.ts +1 -1
  669. package/dist/src/models/Api/HotelOverrideDTO.js.map +1 -1
  670. package/dist/src/models/Api/IEventReservation.d.ts +1 -1
  671. package/dist/src/models/Api/RatePlanDTO.d.ts +1 -1
  672. package/dist/src/models/Api/ReservationsDTO.d.ts +17 -4
  673. package/dist/src/models/Api/ReservationsDTO.js.map +1 -1
  674. package/dist/src/models/Api/RoomNightDTO.d.ts +2 -2
  675. package/dist/src/models/Api/RoomNightDTO.js.map +1 -1
  676. package/dist/src/models/Api/RoomNightRateDTO.d.ts +1 -1
  677. package/dist/src/models/Api/RoomTypeDTO.d.ts +1 -1
  678. package/dist/src/models/BasketAddonRow.d.ts +1 -1
  679. package/dist/src/models/BasketAddonRow.js +2 -2
  680. package/dist/src/models/BasketAddonRow.js.map +1 -1
  681. package/dist/src/models/BasketRow.d.ts +9 -6
  682. package/dist/src/models/BasketRow.js +4 -1
  683. package/dist/src/models/BasketRow.js.map +1 -1
  684. package/dist/src/models/BasketRowDifferences.d.ts +2 -2
  685. package/dist/src/models/Client/Hotel/ColorProfile.d.ts +1 -1
  686. package/dist/src/models/Client/Hotel/Company.d.ts +2 -2
  687. package/dist/src/models/Client/Hotel/Company.js.map +1 -1
  688. package/dist/src/models/Client/Hotel/Hotel.d.ts +28 -15
  689. package/dist/src/models/Client/Hotel/Hotel.js +8 -0
  690. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  691. package/dist/src/models/Client/Hotel/HotelAddress.d.ts +1 -1
  692. package/dist/src/models/Client/Hotel/HotelPerk.d.ts +3 -3
  693. package/dist/src/models/Client/Hotel/HotelPerk.js.map +1 -1
  694. package/dist/src/models/Client/Hotel/HotelRoomOverwrite.d.ts +1 -1
  695. package/dist/src/models/Confirmation.d.ts +31 -0
  696. package/dist/src/models/Confirmation.js +15 -0
  697. package/dist/src/models/Confirmation.js.map +1 -0
  698. package/dist/src/models/PaymentCard.d.ts +15 -2
  699. package/dist/src/models/PaymentCard.js +13 -0
  700. package/dist/src/models/PaymentCard.js.map +1 -1
  701. package/dist/src/models/Reservation/Reservation.d.ts +16 -0
  702. package/dist/src/models/{Promotion/IPromotion.type.js → Reservation/Reservation.js} +1 -1
  703. package/dist/src/models/Reservation/Reservation.js.map +1 -0
  704. package/dist/src/models/Room/Filters/BudgetFilter.d.ts +2 -2
  705. package/dist/src/models/Room/Filters/BudgetFilter.js +1 -1
  706. package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
  707. package/dist/src/models/Room/Filters/Filter.d.ts +1 -1
  708. package/dist/src/models/Room/Filters/Filter.js.map +1 -1
  709. package/dist/src/models/Room/Filters/RateTypeFilter.d.ts +2 -2
  710. package/dist/src/models/Room/Filters/RateTypeFilter.js +1 -1
  711. package/dist/src/models/Room/Filters/RateTypeFilter.js.map +1 -1
  712. package/dist/src/models/Room/Filters/RoomTypeFilter.d.ts +2 -2
  713. package/dist/src/models/Room/Filters/RoomTypeFilter.js +1 -1
  714. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  715. package/dist/src/models/Room/Room.d.ts +3 -3
  716. package/dist/src/models/Room/Room.js +1 -1
  717. package/dist/src/models/Room/Room.js.map +1 -1
  718. package/dist/src/models/Room/RoomRate.d.ts +4 -4
  719. package/dist/src/models/Room/RoomRate.js +3 -3
  720. package/dist/src/models/Room/RoomRate.js.map +1 -1
  721. package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
  722. package/dist/src/models/Room/RoomRateNight.js +1 -1
  723. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  724. package/dist/src/models/RoomListSearch.d.ts +3 -3
  725. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.d.ts +21 -0
  726. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.js +3 -0
  727. package/dist/src/models/RoomstayMembers/IRoomstayMemberBooking.js.map +1 -0
  728. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.d.ts +2 -0
  729. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.js +3 -0
  730. package/dist/src/models/RoomstayMembers/IRoomstayMemberCard.js.map +1 -0
  731. package/dist/src/models/RoomstaySession.d.ts +9 -6
  732. package/dist/src/models/RoomstaySession.js.map +1 -1
  733. package/dist/src/models/SearchParameters.d.ts +1 -1
  734. package/dist/src/models/UserProfile.d.ts +2 -1
  735. package/dist/src/models/UserProfile.js.map +1 -1
  736. package/dist/src/pages/account/AccountHome/AccountHomePage.d.ts +1 -0
  737. package/dist/src/pages/account/AccountHome/AccountHomePage.js +82 -0
  738. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -0
  739. package/dist/src/pages/account/AccountOutlet.d.ts +6 -0
  740. package/dist/src/pages/account/AccountOutlet.js +10 -0
  741. package/dist/src/pages/account/AccountOutlet.js.map +1 -0
  742. package/dist/src/pages/account/AccountRouter.d.ts +1 -0
  743. package/dist/src/pages/account/AccountRouter.js +32 -0
  744. package/dist/src/pages/account/AccountRouter.js.map +1 -0
  745. package/dist/src/pages/account/AccountRoutes.d.ts +22 -0
  746. package/dist/src/pages/account/AccountRoutes.js +26 -0
  747. package/dist/src/pages/account/AccountRoutes.js.map +1 -0
  748. package/dist/src/pages/account/Details/AccountDetailsCardsPage.d.ts +1 -0
  749. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +125 -0
  750. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -0
  751. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.d.ts +7 -0
  752. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +25 -0
  753. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -0
  754. package/dist/src/pages/account/Details/AccountDetailsProfilePage.d.ts +1 -0
  755. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +127 -0
  756. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -0
  757. package/dist/src/pages/account/Help/AccountHelpPage.d.ts +1 -0
  758. package/dist/src/pages/account/Help/AccountHelpPage.js +140 -0
  759. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -0
  760. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.d.ts +1 -0
  761. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +107 -0
  762. package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +1 -0
  763. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.d.ts +2 -0
  764. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +132 -0
  765. package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +1 -0
  766. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.d.ts +1 -0
  767. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +245 -0
  768. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -0
  769. package/dist/src/pages/account/Reservations/AccountReservationsPage.d.ts +1 -0
  770. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +38 -0
  771. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -0
  772. package/dist/src/pages/findReservation/FindReservation.d.ts +7 -0
  773. package/dist/src/pages/findReservation/FindReservation.js +149 -73
  774. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  775. package/dist/src/pages/findReservation/FindReservationResults.js +29 -29
  776. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  777. package/dist/src/pages/findReservation/ReservationRow.d.ts +1 -1
  778. package/dist/src/pages/findReservation/ReservationRow.js +24 -23
  779. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  780. package/dist/src/pages/findReservation/ReservationRowModal.d.ts +1 -1
  781. package/dist/src/pages/findReservation/ReservationRowModal.js +12 -12
  782. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  783. package/dist/src/pages/hotel/HotelInfo.js +23 -30
  784. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  785. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +1 -1
  786. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  787. package/dist/src/pages/steps/Step.d.ts +4 -4
  788. package/dist/src/pages/steps/Step.js.map +1 -1
  789. package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +6 -7
  790. package/dist/src/pages/steps/StepAddon/StepAddon.js +4 -4
  791. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  792. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +17 -17
  793. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  794. package/dist/src/pages/steps/StepAddon/StepAddonLoader.d.ts +2 -1
  795. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +7 -7
  796. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  797. package/dist/src/pages/steps/StepAddon/StepAddonValidator.d.ts +1 -1
  798. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js +1 -1
  799. package/dist/src/pages/steps/StepAddon/StepAddonValidator.js.map +1 -1
  800. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.d.ts +6 -6
  801. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js +4 -4
  802. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  803. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +23 -26
  804. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  805. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +2 -2
  806. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  807. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.d.ts +1 -1
  808. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js +1 -1
  809. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
  810. package/dist/src/pages/steps/StepDate/StepDate.js +4 -4
  811. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  812. package/dist/src/pages/steps/StepDate/StepDateComponent.js +30 -28
  813. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  814. package/dist/src/pages/steps/StepDate/StepDateValidator.d.ts +2 -3
  815. package/dist/src/pages/steps/StepDate/StepDateValidator.js +2 -2
  816. package/dist/src/pages/steps/StepDate/StepDateValidator.js.map +1 -1
  817. package/dist/src/pages/steps/StepGuide.d.ts +1 -1
  818. package/dist/src/pages/steps/StepGuide.js +8 -8
  819. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  820. package/dist/src/pages/steps/StepHotel/StepHotel.d.ts +5 -6
  821. package/dist/src/pages/steps/StepHotel/StepHotel.js +4 -4
  822. package/dist/src/pages/steps/StepHotel/StepHotel.js.map +1 -1
  823. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +26 -26
  824. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  825. package/dist/src/pages/steps/StepHotel/StepHotelLoader.d.ts +2 -1
  826. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +10 -10
  827. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  828. package/dist/src/pages/steps/StepHotel/StepHotelValidator.d.ts +1 -1
  829. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js +1 -1
  830. package/dist/src/pages/steps/StepHotel/StepHotelValidator.js.map +1 -1
  831. package/dist/src/pages/steps/StepRoom/StepRoom.d.ts +6 -6
  832. package/dist/src/pages/steps/StepRoom/StepRoom.js +4 -4
  833. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  834. package/dist/src/pages/steps/StepRoom/StepRoomComponent.d.ts +2 -1
  835. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +25 -35
  836. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  837. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +2 -2
  838. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  839. package/dist/src/pages/steps/StepRoom/StepRoomValidator.d.ts +1 -1
  840. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js +1 -1
  841. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
  842. package/dist/src/pages/steps/StepThanks/StepThanks.d.ts +6 -6
  843. package/dist/src/pages/steps/StepThanks/StepThanks.js +5 -5
  844. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  845. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +17 -17
  846. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  847. package/dist/src/pages/steps/StepThanks/StepThanksValidator.d.ts +1 -1
  848. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js +1 -1
  849. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
  850. package/dist/src/providers/CurrencyProvider.js +128 -3
  851. package/dist/src/providers/CurrencyProvider.js.map +1 -1
  852. package/dist/src/providers/DistanceProvider.d.ts +1 -1
  853. package/dist/src/providers/DistanceProvider.js +1 -1
  854. package/dist/src/providers/DistanceProvider.js.map +1 -1
  855. package/dist/src/providers/FeatureProvider.js +11 -7
  856. package/dist/src/providers/FeatureProvider.js.map +1 -1
  857. package/dist/src/providers/FilterProvider.d.ts +3 -3
  858. package/dist/src/providers/FilterProvider.js +3 -1
  859. package/dist/src/providers/FilterProvider.js.map +1 -1
  860. package/dist/src/providers/ImageProvider.js +1 -1
  861. package/dist/src/providers/ImageProvider.js.map +1 -1
  862. package/dist/src/providers/LanguageProvider.d.ts +1 -1
  863. package/dist/src/providers/LanguageProvider.js +2 -2
  864. package/dist/src/providers/LanguageProvider.js.map +1 -1
  865. package/dist/src/providers/RatePillProvider.d.ts +8 -8
  866. package/dist/src/providers/RatePillProvider.js.map +1 -1
  867. package/dist/src/providers/RoomSortProvider.d.ts +1 -1
  868. package/dist/src/providers/RoomSortProvider.js.map +1 -1
  869. package/dist/src/providers/RoomstayThemeEngine.d.ts +6 -10
  870. package/dist/src/providers/RoomstayThemeEngine.js +14 -25
  871. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  872. package/dist/src/providers/SessionProvider.d.ts +3 -1
  873. package/dist/src/providers/SessionProvider.js +19 -7
  874. package/dist/src/providers/SessionProvider.js.map +1 -1
  875. package/dist/src/providers/feature/ConfirmationVerifyFeature.d.ts +1 -1
  876. package/dist/src/providers/feature/ConfirmationVerifyFeature.js +1 -1
  877. package/dist/src/providers/feature/ConfirmationVerifyFeature.js.map +1 -1
  878. package/dist/src/providers/feature/DatePickerTypeFeature.d.ts +1 -1
  879. package/dist/src/providers/feature/DatePickerTypeFeature.js +2 -2
  880. package/dist/src/providers/feature/DatePickerTypeFeature.js.map +1 -1
  881. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.d.ts +1 -1
  882. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.js +1 -1
  883. package/dist/src/providers/feature/E164PhoneNumberFieldFeature.js.map +1 -1
  884. package/dist/src/providers/feature/Feature.js +3 -1
  885. package/dist/src/providers/feature/Feature.js.map +1 -1
  886. package/dist/src/providers/feature/FeaturedPromoFeature.d.ts +1 -1
  887. package/dist/src/providers/feature/FeaturedPromoFeature.js +2 -2
  888. package/dist/src/providers/feature/FeaturedPromoFeature.js.map +1 -1
  889. package/dist/src/providers/feature/InlineAddonStepFeature.d.ts +1 -1
  890. package/dist/src/providers/feature/InlineAddonStepFeature.js +1 -1
  891. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  892. package/dist/src/providers/feature/MemberPortalFeature.d.ts +7 -0
  893. package/dist/src/providers/feature/MemberPortalFeature.js +11 -0
  894. package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -0
  895. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.d.ts +7 -0
  896. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js +11 -0
  897. package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js.map +1 -0
  898. package/dist/src/providers/feature/RoomUpsellFeature.d.ts +1 -1
  899. package/dist/src/providers/feature/RoomUpsellFeature.js +1 -1
  900. package/dist/src/providers/feature/RoomUpsellFeature.js.map +1 -1
  901. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.d.ts +1 -1
  902. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.js +1 -1
  903. package/dist/src/providers/feature/ShowIATANumberOnCheckoutFeature.js.map +1 -1
  904. package/dist/src/providers/storage/LocalStorageProvider.d.ts +2 -2
  905. package/dist/src/providers/storage/LocalStorageProvider.js +25 -24
  906. package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
  907. package/dist/src/reducers/BasketReducer.d.ts +3 -3
  908. package/dist/src/reducers/BasketReducer.js +5 -4
  909. package/dist/src/reducers/BasketReducer.js.map +1 -1
  910. package/dist/src/routes/NaturallyProgressedStepRoute.d.ts +1 -1
  911. package/dist/src/routes/NaturallyProgressedStepRoute.js +5 -3
  912. package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
  913. package/dist/src/stories/Button.stories.d.ts +5 -0
  914. package/dist/src/stories/Button.stories.js +17 -0
  915. package/dist/src/stories/Button.stories.js.map +1 -0
  916. package/dist/src/stories/Card.stories.d.ts +8 -0
  917. package/dist/src/stories/Card.stories.js +17 -0
  918. package/dist/src/stories/Card.stories.js.map +1 -0
  919. package/dist/src/stories/Checkbox.stories.d.ts +5 -0
  920. package/dist/src/stories/Checkbox.stories.js +17 -0
  921. package/dist/src/stories/Checkbox.stories.js.map +1 -0
  922. package/dist/src/stories/EnhancedPhoneNumberField.stories.js +16 -0
  923. package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -0
  924. package/dist/src/stories/Icon.stories.d.ts +5 -0
  925. package/dist/src/stories/Icon.stories.js +16 -0
  926. package/dist/src/stories/Icon.stories.js.map +1 -0
  927. package/dist/src/stories/IconNavCard.stories.d.ts +16 -0
  928. package/dist/src/stories/IconNavCard.stories.js +28 -0
  929. package/dist/src/stories/IconNavCard.stories.js.map +1 -0
  930. package/dist/src/stories/IconText.stories.js +18 -0
  931. package/dist/src/stories/IconText.stories.js.map +1 -0
  932. package/dist/src/stories/ImageLoader.stories.d.ts +5 -0
  933. package/dist/src/stories/ImageLoader.stories.js +16 -0
  934. package/dist/src/stories/ImageLoader.stories.js.map +1 -0
  935. package/dist/src/stories/InputGroup.stories.d.ts +5 -0
  936. package/dist/src/stories/InputGroup.stories.js +16 -0
  937. package/dist/src/stories/InputGroup.stories.js.map +1 -0
  938. package/dist/src/stories/LargeLoader.stories.d.ts +5 -0
  939. package/dist/src/stories/LargeLoader.stories.js +14 -0
  940. package/dist/src/stories/LargeLoader.stories.js.map +1 -0
  941. package/dist/src/stories/PasswordBox.stories.d.ts +5 -0
  942. package/dist/src/stories/PasswordBox.stories.js +14 -0
  943. package/dist/src/stories/PasswordBox.stories.js.map +1 -0
  944. package/dist/src/stories/SSLSecureBadge.stories.d.ts +5 -0
  945. package/dist/src/stories/SSLSecureBadge.stories.js +14 -0
  946. package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -0
  947. package/dist/src/stories/SmallSpinner.stories.d.ts +5 -0
  948. package/dist/src/stories/SmallSpinner.stories.js +14 -0
  949. package/dist/src/stories/SmallSpinner.stories.js.map +1 -0
  950. package/dist/src/translations/Translation.d.ts +111 -1
  951. package/dist/src/translations/Translation.js +111 -1
  952. package/dist/src/translations/Translation.js.map +1 -1
  953. package/dist/src/translations/languages/en-gb.d.ts +1 -1
  954. package/dist/src/translations/languages/en-gb.js +112 -2
  955. package/dist/src/translations/languages/en-gb.js.map +1 -1
  956. package/dist/src/translations/languages/es.js +1 -1
  957. package/dist/src/translations/languages/es.js.map +1 -1
  958. package/dist/src/translations/languages/fr.js +1 -1
  959. package/dist/src/translations/languages/fr.js.map +1 -1
  960. package/dist/src/translations/languages/template.js +1 -1
  961. package/dist/src/translations/languages/template.js.map +1 -1
  962. package/dist/src/translations/languages/zh-cn.js +1 -1
  963. package/dist/src/translations/languages/zh-cn.js.map +1 -1
  964. package/dist/src/translations/languages/zh-tw.js +1 -1
  965. package/dist/src/translations/languages/zh-tw.js.map +1 -1
  966. package/dist/src/util/CalendarHelper.d.ts +1 -1
  967. package/dist/src/util/CalendarHelper.js +2 -1
  968. package/dist/src/util/CalendarHelper.js.map +1 -1
  969. package/dist/src/util/Color.d.ts +15 -14
  970. package/dist/src/util/Color.js +15 -14
  971. package/dist/src/util/Color.js.map +1 -1
  972. package/dist/src/util/DataLayer.d.ts +7 -7
  973. package/dist/src/util/DataLayer.js.map +1 -1
  974. package/dist/src/util/Debounce.d.ts +2 -0
  975. package/dist/src/util/Debounce.js +14 -0
  976. package/dist/src/util/Debounce.js.map +1 -0
  977. package/dist/src/util/EnumHelper.d.ts +3 -0
  978. package/dist/src/util/EnumHelper.js +10 -0
  979. package/dist/src/util/EnumHelper.js.map +1 -0
  980. package/dist/src/util/PaymentCardHelper.d.ts +9 -0
  981. package/dist/src/util/PaymentCardHelper.js +37 -0
  982. package/dist/src/util/PaymentCardHelper.js.map +1 -0
  983. package/dist/src/util/StepManager.d.ts +1 -1
  984. package/dist/src/util/StepManager.js +1 -3
  985. package/dist/src/util/StepManager.js.map +1 -1
  986. package/dist/src/util/StringHelper.js +1 -1
  987. package/dist/src/util/StringHelper.js.map +1 -1
  988. package/dist/src/util/TotalCalculator.js +5 -3
  989. package/dist/src/util/TotalCalculator.js.map +1 -1
  990. package/dist/src/util/Validation.d.ts +17 -1
  991. package/dist/src/util/Validation.js +25 -2
  992. package/dist/src/util/Validation.js.map +1 -1
  993. package/dist/test.bundle.js +1 -1
  994. package/dist/tests/jest/events/EventManager.test.js +4 -5
  995. package/dist/tests/jest/events/EventManager.test.js.map +1 -1
  996. package/dist/tests/jest/providers/LanguageProvider.test.d.ts +1 -1
  997. package/dist/tests/jest/providers/LanguageProvider.test.js +6 -7
  998. package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -1
  999. package/dist/tests/jest/reducers/BasketReducer.test.js +11 -11
  1000. package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -1
  1001. package/dist/tests/offline/RoomstayBestRateAlert.js +3 -3
  1002. package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -1
  1003. package/dist/tests/offline/entry/RSCompany.d.ts +1 -1
  1004. package/dist/tests/offline/entry/RSCompany.js +15 -55
  1005. package/dist/tests/offline/entry/RSCompany.js.map +1 -1
  1006. package/dist/tests/offline/entry/ReactWrapper.js +11 -6
  1007. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -1
  1008. package/dist/tests/offline/entry/allEngines.js +2 -2
  1009. package/dist/tests/offline/entry/allEngines.js.map +1 -1
  1010. package/dist/tests/offline/entry/components/TestPicker.js +32 -8
  1011. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
  1012. package/dist/tests/setupTests.d.ts +0 -0
  1013. package/dist/tests/setupTests.js +9 -0
  1014. package/dist/tests/setupTests.js.map +1 -0
  1015. package/dist/vendors.bundle.js +1 -1
  1016. package/dist/vendors.bundle.js.LICENSE.txt +33 -8
  1017. package/package.json +31 -43
  1018. package/dist/661.bundle.js +0 -1
  1019. package/dist/7.bundle.js +0 -1
  1020. package/dist/845.bundle.js +0 -1
  1021. package/dist/876.bundle.js +0 -1
  1022. package/dist/src/components/generic/BETooltip.d.ts +0 -7
  1023. package/dist/src/components/generic/BETooltip.js +0 -44
  1024. package/dist/src/components/generic/BETooltip.js.map +0 -1
  1025. package/dist/src/components/generic/Checkbox.js +0 -22
  1026. package/dist/src/components/generic/Checkbox.js.map +0 -1
  1027. package/dist/src/components/generic/Icon.js.map +0 -1
  1028. package/dist/src/components/generic/ScrollToTop.d.ts +0 -2
  1029. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.d.ts +0 -7
  1030. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +0 -30
  1031. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +0 -1
  1032. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.d.ts +0 -7
  1033. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.js +0 -15
  1034. package/dist/src/events/actions/MemberOnlyFence/MemberOnlyFenceSignUp.js.map +0 -1
  1035. package/dist/src/events/actions/Promotion/PromotionAddedEvent.d.ts +0 -7
  1036. package/dist/src/events/actions/Promotion/PromotionAddedEvent.js +0 -15
  1037. package/dist/src/events/actions/Promotion/PromotionAddedEvent.js.map +0 -1
  1038. package/dist/src/events/actions/Promotion/PromotionClickedEvent.d.ts +0 -7
  1039. package/dist/src/events/actions/Promotion/PromotionClickedEvent.js +0 -15
  1040. package/dist/src/events/actions/Promotion/PromotionClickedEvent.js.map +0 -1
  1041. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.d.ts +0 -7
  1042. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.js +0 -15
  1043. package/dist/src/events/actions/Promotion/PromotionRemovedEvent.js.map +0 -1
  1044. package/dist/src/handlers/HotelContextEventHandler.d.ts +0 -3
  1045. package/dist/src/handlers/HotelContextEventHandler.js +0 -9
  1046. package/dist/src/handlers/HotelContextEventHandler.js.map +0 -1
  1047. package/dist/src/hooks/ScrollLock.d.ts +0 -1
  1048. package/dist/src/hooks/ScrollLock.js +0 -17
  1049. package/dist/src/hooks/ScrollLock.js.map +0 -1
  1050. package/dist/src/models/Promotion/IPromotion.type.d.ts +0 -27
  1051. package/dist/src/models/Promotion/IPromotion.type.js.map +0 -1
  1052. package/dist/src/pages/steps/StepDate/StepDate.d.ts +0 -14
  1053. package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +0 -2
  1054. package/dist/src/providers/PromotionProvider.d.ts +0 -14
  1055. package/dist/src/providers/PromotionProvider.js +0 -210
  1056. package/dist/src/providers/PromotionProvider.js.map +0 -1
@@ -1,41 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const React = require("react");
4
- const RoomRateRow_1 = require("./RoomRateRow");
4
+ const RoomRateRow_1 = require("components/steps/room/roomDetails/roomRates/RoomRateRow");
5
5
  const react_1 = require("react");
6
- const Icon_1 = require("../../../../generic/Icon");
7
- const BEButton_1 = require("../../../../generic/BEButton");
8
- const Color_1 = require("../../../../../util/Color");
6
+ const Icon_1 = require("components/generic/Icon/Icon");
7
+ const BEButton_1 = require("components/generic/BEButton");
8
+ const Color_1 = require("util/Color");
9
9
  const contexts_1 = require("@frontend/contexts");
10
- const RoomSortProvider_1 = require("../../../../../providers/RoomSortProvider");
10
+ const RoomSortProvider_1 = require("providers/RoomSortProvider");
11
11
  const react_i18next_1 = require("react-i18next");
12
- const Translation_1 = require("../../../../../translations/Translation");
13
- const DataLayer_1 = require("../../../../../util/DataLayer");
14
- const MembersOnlyRow_1 = require("./MembersOnlyRow");
15
- const ScreenSize_1 = require("../../../../../util/ScreenSize");
12
+ const Translation_1 = require("translations/Translation");
13
+ const DataLayer_1 = require("util/DataLayer");
14
+ const MembersOnlyRow_1 = require("components/steps/room/roomDetails/roomRates/MembersOnlyRow");
15
+ const ScreenSize_1 = require("util/ScreenSize");
16
16
  const hooks_1 = require("@frontend/hooks");
17
17
  const contexts_2 = require("@frontend/contexts");
18
- const RoomRateListPromotion_1 = require("./RoomRateListPromotion/RoomRateListPromotion");
19
18
  function RoomRates(props) {
20
- const { t } = react_i18next_1.useTranslation();
21
- const [showingMoreOpen, setShowingMoreOpen] = react_1.useState(false);
22
- const basketContext = react_1.useContext(contexts_1.BasketContext);
23
- const beContext = react_1.useContext(contexts_1.BookingEngineContext);
24
- const ccx = react_1.useContext(contexts_2.CompanyContext);
25
- const { hotel } = hooks_1.useCurrentHotel();
19
+ const { t } = (0, react_i18next_1.useTranslation)();
20
+ const [showingMoreOpen, setShowingMoreOpen] = (0, react_1.useState)(false);
21
+ const basketContext = (0, react_1.useContext)(contexts_1.BasketContext);
22
+ const beContext = (0, react_1.useContext)(contexts_1.BookingEngineContext);
23
+ const ccx = (0, react_1.useContext)(contexts_2.CompanyContext);
24
+ const { hotel } = (0, hooks_1.useCurrentHotel)();
26
25
  const { rates } = props;
27
26
  const numOfRatesToShowFirst = beContext.screenSize <= ScreenSize_1.default.Medium ? 2 : 3;
28
27
  const sortBy = beContext.currentRoomSort;
29
- react_1.useEffect(() => {
28
+ (0, react_1.useEffect)(() => {
30
29
  var _a;
31
30
  if (((_a = basketContext.selectedBasketRow) === null || _a === void 0 ? void 0 : _a.getRoom()) && basketContext.selectedBasketRow.getRoom().code === props.roomCode) {
32
31
  setShowingMoreOpen(true);
33
32
  }
34
33
  }, [basketContext.selectedBasketRow]);
35
- react_1.useEffect(() => {
34
+ (0, react_1.useEffect)(() => {
36
35
  DataLayer_1.default.instance.sendRoomImpressions();
37
36
  }, [showingMoreOpen]);
38
- return react_1.useMemo(() => {
37
+ return (0, react_1.useMemo)(() => {
39
38
  var _a, _b, _c;
40
39
  const featuredRates = (_a = props.featuredRates) === null || _a === void 0 ? void 0 : _a.filter((rate) => !!rate);
41
40
  const hasFeaturedRates = !!featuredRates && featuredRates.length > 0;
@@ -64,15 +63,12 @@ function RoomRates(props) {
64
63
  };
65
64
  const maxRows = hasFeaturedRates && !showingMoreOpen ? featuredRates.length : numOfRatesToShowFirst;
66
65
  let rowsLeftToOpen = 0;
67
- if (featuredRates && featuredRates.length) {
68
- featuredRates.sort(RoomSortProvider_1.default.getSortByFunction(sortBy));
69
- // First we add Featured Rates to the top of the list - no limits there
70
- featuredRates.forEach((row) => {
71
- if (row) {
72
- itemsToRender.push(renderRoomRateRow(row, true));
73
- }
74
- });
75
- }
66
+ // First we add Featured Rates to the top of the list - no limits there
67
+ featuredRates === null || featuredRates === void 0 ? void 0 : featuredRates.forEach((row) => {
68
+ if (row) {
69
+ itemsToRender.push(renderRoomRateRow(row, true));
70
+ }
71
+ });
76
72
  // Then we do a tricky check to see if MOD intent should be displayed
77
73
  if (!hasFeaturedRates || showingMoreOpen) {
78
74
  if (!props.hideMemberOnlyRow &&
@@ -81,9 +77,6 @@ function RoomRates(props) {
81
77
  itemsToRender.push(React.createElement(MembersOnlyRow_1.default, null));
82
78
  }
83
79
  }
84
- if (basketContext.loadedPromotion) {
85
- itemsToRender.push(React.createElement(RoomRateListPromotion_1.RoomRateListPromotion, { promotion: basketContext.loadedPromotion }));
86
- }
87
80
  // Then we add the remaining rates to the render list - stop adding if we hit `maxRows`
88
81
  sortedRates.forEach((rate) => {
89
82
  if (itemsToRender.length < maxRows || showingMoreOpen) {
@@ -104,7 +97,7 @@ function RoomRates(props) {
104
97
  rowsLeftToOpen,
105
98
  " ",
106
99
  t(Translation_1.Translation.Step.Room.RoomInfo.MoreRates))))));
107
- }, [props.featuredRates, rates, beContext.currentRoomSort, showingMoreOpen, basketContext === null || basketContext === void 0 ? void 0 : basketContext.loadedPromotion]);
100
+ }, [props.featuredRates, rates, beContext.currentRoomSort, showingMoreOpen]);
108
101
  }
109
102
  exports.default = RoomRates;
110
103
  //# sourceMappingURL=RoomRates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RoomRates.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/roomRates/RoomRates.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport RoomRateRow from './RoomRateRow';\nimport { RoomRate } from '../../../../../models/Room/RoomRate';\nimport { useState, useEffect, useContext, useMemo } from 'react';\nimport { IconType } from '../../../../generic/Icon';\nimport BEButton from '../../../../generic/BEButton';\nimport { Color } from '../../../../../util/Color';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport RoomSortProvider from '../../../../../providers/RoomSortProvider';\n\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from '../../../../../translations/Translation';\nimport DataLayer from '../../../../../util/DataLayer';\nimport MembersOnlyRow from './MembersOnlyRow';\nimport ScreenSize from '../../../../../util/ScreenSize';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { CompanyContext } from '@frontend/contexts';\nimport { RoomRateListPromotion } from './RoomRateListPromotion/RoomRateListPromotion';\nexport interface RoomRatesProps {\n roomCode: string;\n rates: RoomRate[];\n\n featuredRates?: RoomRate[];\n\n classNames?: string;\n\n hideMemberOnlyRow?: boolean;\n\n // Inline Booking Widget overrides\n getButtonLabel?: (isRoomSelectedAndEditing: boolean, isThisSelectedRow: boolean) => string;\n onAddToBasketOverride?: (rate: RoomRate) => void;\n}\n\nexport default function RoomRates(props: RoomRatesProps) {\n const { t } = useTranslation();\n const [showingMoreOpen, setShowingMoreOpen] = useState(false);\n\n const basketContext = useContext(BasketContext);\n const beContext = useContext(BookingEngineContext);\n\n const ccx = useContext(CompanyContext);\n\n const { hotel } = useCurrentHotel();\n\n const { rates } = props;\n\n const numOfRatesToShowFirst = beContext.screenSize <= ScreenSize.Medium ? 2 : 3;\n\n const sortBy = beContext.currentRoomSort;\n\n useEffect(() => {\n if (basketContext.selectedBasketRow?.getRoom() && basketContext.selectedBasketRow.getRoom().code === props.roomCode) {\n setShowingMoreOpen(true);\n }\n }, [basketContext.selectedBasketRow]);\n\n useEffect(() => {\n DataLayer.instance.sendRoomImpressions();\n }, [showingMoreOpen]);\n\n return useMemo(() => {\n const featuredRates = props.featuredRates?.filter((rate) => !!rate);\n const hasFeaturedRates = !!featuredRates && featuredRates.length > 0;\n\n let sortedRates: RoomRate[];\n\n if (rates.length !== 0) {\n sortedRates = rates.sort(RoomSortProvider.getSortByFunction(sortBy));\n }\n\n // Need two sorts because of MOD\n sortedRates = rates.sort((a, b) => {\n if (a.isMemberOnly) {\n return -1;\n } else if (b.isMemberOnly) {\n return 1;\n } else {\n return 0;\n }\n });\n\n const showMoreOnClick = () => {\n setShowingMoreOpen(true);\n };\n\n const itemsToRender = [];\n\n const renderRoomRateRow = (rate: RoomRate, isPromo = false) => {\n return <RoomRateRow key={rate.name} rate={rate} getButtonLabel={props.getButtonLabel} onAddToBasketOverride={props.onAddToBasketOverride} isPromoRate={isPromo} />;\n };\n\n const maxRows = hasFeaturedRates && !showingMoreOpen ? featuredRates.length : numOfRatesToShowFirst;\n let rowsLeftToOpen = 0;\n\n if (featuredRates && featuredRates.length) {\n featuredRates.sort(RoomSortProvider.getSortByFunction(sortBy));\n // First we add Featured Rates to the top of the list - no limits there\n featuredRates.forEach((row) => {\n if (row) {\n itemsToRender.push(renderRoomRateRow(row, true));\n }\n });\n }\n\n // Then we do a tricky check to see if MOD intent should be displayed\n if (!hasFeaturedRates || showingMoreOpen) {\n if (\n !props.hideMemberOnlyRow &&\n !!hotel?.memberOnlyPromoCode &&\n (!ccx.signedInUser || hotel?.memberOnlyPromoCode === basketContext?.selectedBasketRow?.getPromoCode())\n ) {\n itemsToRender.push(<MembersOnlyRow />);\n }\n }\n\n if (basketContext.loadedPromotion) {\n itemsToRender.push(<RoomRateListPromotion promotion={basketContext.loadedPromotion} />);\n }\n\n // Then we add the remaining rates to the render list - stop adding if we hit `maxRows`\n sortedRates.forEach((rate: RoomRate) => {\n if (itemsToRender.length < maxRows || showingMoreOpen) {\n itemsToRender.push(renderRoomRateRow(rate));\n } else {\n rowsLeftToOpen++;\n }\n });\n\n return (\n <div className={props.classNames ?? ''}>\n {itemsToRender.map((item: any, index: number) => {\n return <React.Fragment key={index}>{item}</React.Fragment>;\n })}\n {rowsLeftToOpen > 0 && (\n <div className=\"room-show-more\">\n <BEButton icon={IconType.ArrowDown2} iconPosition=\"right\" stopIconAnimation={true} isText={true} textColor={Color.Navy} onClick={showMoreOnClick}>\n {t(Translation.Step.Room.RoomInfo.Show)} {rowsLeftToOpen} {t(Translation.Step.Room.RoomInfo.MoreRates)}\n </BEButton>\n </div>\n )}\n </div>\n );\n }, [props.featuredRates, rates, beContext.currentRoomSort, showingMoreOpen, basketContext?.loadedPromotion]);\n}\n"]}
1
+ {"version":3,"file":"RoomRates.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/roomRates/RoomRates.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport RoomRateRow from 'components/steps/room/roomDetails/roomRates/RoomRateRow';\nimport { RoomRate } from 'models/Room/RoomRate';\nimport { useState, useEffect, useContext, useMemo } from 'react';\nimport { IconType } from 'components/generic/Icon/Icon';\nimport BEButton from 'components/generic/BEButton';\nimport { Color } from 'util/Color';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport RoomSortProvider from 'providers/RoomSortProvider';\n\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport DataLayer from 'util/DataLayer';\nimport MembersOnlyRow from 'components/steps/room/roomDetails/roomRates/MembersOnlyRow';\nimport ScreenSize from 'util/ScreenSize';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { CompanyContext } from '@frontend/contexts';\nexport interface RoomRatesProps {\n roomCode: string;\n rates: RoomRate[];\n\n featuredRates?: RoomRate[];\n\n classNames?: string;\n\n hideMemberOnlyRow?: boolean;\n\n // Inline Booking Widget overrides\n getButtonLabel?: (isRoomSelectedAndEditing: boolean, isThisSelectedRow: boolean) => string;\n onAddToBasketOverride?: (rate: RoomRate) => void;\n}\n\nexport default function RoomRates(props: RoomRatesProps) {\n const { t } = useTranslation();\n const [showingMoreOpen, setShowingMoreOpen] = useState(false);\n\n const basketContext = useContext(BasketContext);\n const beContext = useContext(BookingEngineContext);\n\n const ccx = useContext(CompanyContext);\n\n const { hotel } = useCurrentHotel();\n\n const { rates } = props;\n\n const numOfRatesToShowFirst = beContext.screenSize <= ScreenSize.Medium ? 2 : 3;\n\n const sortBy = beContext.currentRoomSort;\n\n useEffect(() => {\n if (basketContext.selectedBasketRow?.getRoom() && basketContext.selectedBasketRow.getRoom().code === props.roomCode) {\n setShowingMoreOpen(true);\n }\n }, [basketContext.selectedBasketRow]);\n\n useEffect(() => {\n DataLayer.instance.sendRoomImpressions();\n }, [showingMoreOpen]);\n\n return useMemo(() => {\n const featuredRates = props.featuredRates?.filter((rate) => !!rate);\n const hasFeaturedRates = !!featuredRates && featuredRates.length > 0;\n\n let sortedRates: RoomRate[];\n\n if (rates.length !== 0) {\n sortedRates = rates.sort(RoomSortProvider.getSortByFunction(sortBy));\n }\n\n // Need two sorts because of MOD\n sortedRates = rates.sort((a, b) => {\n if (a.isMemberOnly) {\n return -1;\n } else if (b.isMemberOnly) {\n return 1;\n } else {\n return 0;\n }\n });\n\n const showMoreOnClick = () => {\n setShowingMoreOpen(true);\n };\n\n const itemsToRender = [];\n\n const renderRoomRateRow = (rate: RoomRate, isPromo = false) => {\n return <RoomRateRow key={rate.name} rate={rate} getButtonLabel={props.getButtonLabel} onAddToBasketOverride={props.onAddToBasketOverride} isPromoRate={isPromo} />;\n };\n\n const maxRows = hasFeaturedRates && !showingMoreOpen ? featuredRates.length : numOfRatesToShowFirst;\n let rowsLeftToOpen = 0;\n\n // First we add Featured Rates to the top of the list - no limits there\n featuredRates?.forEach((row) => {\n if (row) {\n itemsToRender.push(renderRoomRateRow(row, true));\n }\n });\n\n // Then we do a tricky check to see if MOD intent should be displayed\n if (!hasFeaturedRates || showingMoreOpen) {\n if (\n !props.hideMemberOnlyRow &&\n !!hotel?.memberOnlyPromoCode &&\n (!ccx.signedInUser || hotel?.memberOnlyPromoCode === basketContext?.selectedBasketRow?.getPromoCode())\n ) {\n itemsToRender.push(<MembersOnlyRow />);\n }\n }\n\n // Then we add the remaining rates to the render list - stop adding if we hit `maxRows`\n sortedRates.forEach((rate: RoomRate) => {\n if (itemsToRender.length < maxRows || showingMoreOpen) {\n itemsToRender.push(renderRoomRateRow(rate));\n } else {\n rowsLeftToOpen++;\n }\n });\n\n return (\n <div className={props.classNames ?? ''}>\n {itemsToRender.map((item: any, index: number) => {\n return <React.Fragment key={index}>{item}</React.Fragment>;\n })}\n {rowsLeftToOpen > 0 && (\n <div className=\"room-show-more\">\n <BEButton icon={IconType.ArrowDown2} iconPosition=\"right\" stopIconAnimation={true} isText={true} textColor={Color.Navy} onClick={showMoreOnClick}>\n {t(Translation.Step.Room.RoomInfo.Show)} {rowsLeftToOpen} {t(Translation.Step.Room.RoomInfo.MoreRates)}\n </BEButton>\n </div>\n )}\n </div>\n );\n }, [props.featuredRates, rates, beContext.currentRoomSort, showingMoreOpen]);\n}\n"]}
@@ -2,16 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const React = require("react");
4
4
  const react_1 = require("react");
5
- const Filter_1 = require("../../../../models/Room/Filters/Filter");
6
- const Pill_1 = require("../../../generic/Pill");
7
- const Icon_1 = require("../../../generic/Icon");
8
- const BEButton_1 = require("../../../generic/BEButton");
9
- const Translation_1 = require("../../../../translations/Translation");
5
+ const Filter_1 = require("models/Room/Filters/Filter");
6
+ const Pill_1 = require("components/generic/Pill");
7
+ const Icon_1 = require("components/generic/Icon/Icon");
8
+ const BEButton_1 = require("components/generic/BEButton");
9
+ const Translation_1 = require("translations/Translation");
10
10
  const react_i18next_1 = require("react-i18next");
11
11
  const contexts_1 = require("@frontend/contexts");
12
12
  function AppliedFiltersBlock() {
13
- const context = react_1.useContext(contexts_1.BookingEngineContext);
14
- const { t } = react_i18next_1.useTranslation();
13
+ const context = (0, react_1.useContext)(contexts_1.BookingEngineContext);
14
+ const { t } = (0, react_i18next_1.useTranslation)();
15
15
  const filtersByKey = Object.keys(context.currentFilters).filter((current) => {
16
16
  return current && context.currentFilters[current] instanceof Filter_1.default;
17
17
  });
@@ -1 +1 @@
1
- {"version":3,"file":"AppliedFiltersBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/AppliedFiltersBlock.tsx"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,iCAAmC;AACnC,mEAA4D;AAC5D,gDAAuD;AACvD,gDAAiD;AACjD,wDAAiD;AACjD,sEAAmE;AACnE,iDAA+C;AAC/C,iDAA0D;AAE1D,SAAwB,mBAAmB;IACvC,MAAM,OAAO,GAAG,kBAAU,CAAC,+BAAoB,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,EAAE,GAAG,8BAAc,EAAE,CAAC;IAE/B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QACxE,OAAO,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,gBAAM,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACtB,OAAO,yCAAK,CAAC;KAChB;IACD,MAAM,eAAe,GAAG,GAAG,EAAE;QACzB,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC3B,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CACH,6BAAK,SAAS,EAAC,cAAc;QACzB,6BAAK,SAAS,EAAC,eAAe,IACzB,YAAY;YACT,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CACxB,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACxB,IAAI,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,gBAAM,EAAE;oBAC5D,MAAM,kBAAkB,GAAG,GAAG,EAAE;wBAC5B,OAAO,CAAC,iBAAiB,iCAClB,OAAO,CAAC,cAAc,KACzB,CAAC,MAAM,CAAC,EAAE,IAAI,IAChB,CAAC;oBACP,CAAC,CAAC;oBACF,OAAO,CACH,oBAAC,cAAI,IAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,YAAY,EAAC,OAAO,IACnH,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CACvC,CACV,CAAC;iBACL;YACL,CAAC,CAAC,CACL,CAAC,CAAC,CAAC,CACA,oBAAC,cAAI,IAAC,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,eAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,YAAY,EAAC,OAAO;gBACnG,YAAY,CAAC,MAAM;mCACjB,CACV,CAAC,CACJ;QACL,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CACpE,oBAAC,kBAAQ,IAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,iBAAiB,IACzD,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CACtB,CACd,CACC,CACT,CAAC;AACN,CAAC;AAlDD,sCAkDC","sourcesContent":["import * as React from 'react';\nimport { useContext } from 'react';\nimport Filter from '../../../../models/Room/Filters/Filter';\nimport Pill, { PillType } from '../../../generic/Pill';\nimport { IconType } from '../../../generic/Icon';\nimport BEButton from '../../../generic/BEButton';\nimport { Translation } from '../../../../translations/Translation';\nimport { useTranslation } from 'react-i18next';\nimport { BookingEngineContext } from '@frontend/contexts';\n\nexport default function AppliedFiltersBlock() {\n const context = useContext(BookingEngineContext);\n const { t } = useTranslation();\n\n const filtersByKey = Object.keys(context.currentFilters).filter((current) => {\n return current && context.currentFilters[current] instanceof Filter;\n });\n\n if (!filtersByKey.length) {\n return <></>;\n }\n const onClickIconPill = () => {\n context.setCurrentFilters({});\n };\n const setFiltersOnClick = () => {\n context.setCurrentFilters({});\n };\n return (\n <div className=\"u-flex w-100\">\n <div className=\"filter-height\">\n {filtersByKey &&\n (filtersByKey.length <= 2 ? (\n filtersByKey.map((filter) => {\n if (filter && context.currentFilters[filter] instanceof Filter) {\n const onClickIconHandler = () => {\n context.setCurrentFilters({\n ...context.currentFilters,\n [filter]: null,\n });\n };\n return (\n <Pill key={filter} onClickIcon={onClickIconHandler} type={PillType.Secondary} icon={IconType.Close} iconPosition=\"right\">\n {context.currentFilters[filter].getLabel()}\n </Pill>\n );\n }\n })\n ) : (\n <Pill onClickIcon={onClickIconPill} type={PillType.Secondary} icon={IconType.Close} iconPosition=\"right\">\n {filtersByKey.length} Filters Applied\n </Pill>\n ))}\n </div>\n {!!Object.values(context.currentFilters).filter((it) => !!it).length && (\n <BEButton isText={true} size=\"tiny\" onClick={setFiltersOnClick}>\n {t(Translation.Misc.ClearAll)}\n </BEButton>\n )}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"AppliedFiltersBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/AppliedFiltersBlock.tsx"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,iCAAmC;AACnC,uDAAgD;AAChD,kDAAyD;AACzD,uDAAwD;AACxD,0DAAmD;AACnD,0DAAuD;AACvD,iDAA+C;AAC/C,iDAA0D;AAE1D,SAAwB,mBAAmB;IACvC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,+BAAoB,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAE/B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QACxE,OAAO,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,gBAAM,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACtB,OAAO,yCAAK,CAAC;KAChB;IACD,MAAM,eAAe,GAAG,GAAG,EAAE;QACzB,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC3B,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CACH,6BAAK,SAAS,EAAC,cAAc;QACzB,6BAAK,SAAS,EAAC,eAAe,IACzB,YAAY;YACT,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CACxB,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACxB,IAAI,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,gBAAM,EAAE;oBAC5D,MAAM,kBAAkB,GAAG,GAAG,EAAE;wBAC5B,OAAO,CAAC,iBAAiB,iCAClB,OAAO,CAAC,cAAc,KACzB,CAAC,MAAM,CAAC,EAAE,IAAI,IAChB,CAAC;oBACP,CAAC,CAAC;oBACF,OAAO,CACH,oBAAC,cAAI,IAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,eAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,YAAY,EAAC,OAAO,IACnH,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CACvC,CACV,CAAC;iBACL;YACL,CAAC,CAAC,CACL,CAAC,CAAC,CAAC,CACA,oBAAC,cAAI,IAAC,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,eAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,YAAY,EAAC,OAAO;gBACnG,YAAY,CAAC,MAAM;mCACjB,CACV,CAAC,CACJ;QACL,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CACpE,oBAAC,kBAAQ,IAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,iBAAiB,IACzD,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CACtB,CACd,CACC,CACT,CAAC;AACN,CAAC;AAlDD,sCAkDC","sourcesContent":["import * as React from 'react';\nimport { useContext } from 'react';\nimport Filter from 'models/Room/Filters/Filter';\nimport Pill, { PillType } from 'components/generic/Pill';\nimport { IconType } from 'components/generic/Icon/Icon';\nimport BEButton from 'components/generic/BEButton';\nimport { Translation } from 'translations/Translation';\nimport { useTranslation } from 'react-i18next';\nimport { BookingEngineContext } from '@frontend/contexts';\n\nexport default function AppliedFiltersBlock() {\n const context = useContext(BookingEngineContext);\n const { t } = useTranslation();\n\n const filtersByKey = Object.keys(context.currentFilters).filter((current) => {\n return current && context.currentFilters[current] instanceof Filter;\n });\n\n if (!filtersByKey.length) {\n return <></>;\n }\n const onClickIconPill = () => {\n context.setCurrentFilters({});\n };\n const setFiltersOnClick = () => {\n context.setCurrentFilters({});\n };\n return (\n <div className=\"u-flex w-100\">\n <div className=\"filter-height\">\n {filtersByKey &&\n (filtersByKey.length <= 2 ? (\n filtersByKey.map((filter) => {\n if (filter && context.currentFilters[filter] instanceof Filter) {\n const onClickIconHandler = () => {\n context.setCurrentFilters({\n ...context.currentFilters,\n [filter]: null,\n });\n };\n return (\n <Pill key={filter} onClickIcon={onClickIconHandler} type={PillType.Secondary} icon={IconType.Close} iconPosition=\"right\">\n {context.currentFilters[filter].getLabel()}\n </Pill>\n );\n }\n })\n ) : (\n <Pill onClickIcon={onClickIconPill} type={PillType.Secondary} icon={IconType.Close} iconPosition=\"right\">\n {filtersByKey.length} Filters Applied\n </Pill>\n ))}\n </div>\n {!!Object.values(context.currentFilters).filter((it) => !!it).length && (\n <BEButton isText={true} size=\"tiny\" onClick={setFiltersOnClick}>\n {t(Translation.Misc.ClearAll)}\n </BEButton>\n )}\n </div>\n );\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { Room } from '../../../../models/Room/Room';
1
+ import { Room } from 'models/Room/Room';
2
2
  export interface RoomFilterProps {
3
3
  anchorEl: any;
4
4
  filter?: () => Room[];
@@ -1,51 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const React = require("react");
4
- const core_1 = require("@material-ui/core");
5
- const Headline_1 = require("../../../generic/Headline");
6
- const Text_1 = require("../../../generic/Text");
7
- const BEButton_1 = require("../../../generic/BEButton");
8
- const LineBreak_1 = require("../../../generic/LineBreak");
9
- const Color_1 = require("../../../../util/Color");
4
+ const Headline_1 = require("components/generic/Headline");
5
+ const Text_1 = require("components/generic/Text");
6
+ const BEButton_1 = require("components/generic/BEButton");
7
+ const LineBreak_1 = require("components/generic/LineBreak");
8
+ const Color_1 = require("util/Color");
10
9
  const react_i18next_1 = require("react-i18next");
11
- const Translation_1 = require("../../../../translations/Translation");
12
- const ScreenSize_1 = require("../../../../util/ScreenSize");
13
- const SimpleModal_1 = require("../../../generic/modal/SimpleModal");
14
- const RoomstayThemeEngine_1 = require("../../../../providers/RoomstayThemeEngine");
10
+ const Translation_1 = require("translations/Translation");
11
+ const ScreenSize_1 = require("util/ScreenSize");
12
+ const SimpleModal_1 = require("components/generic/modal/SimpleModal");
15
13
  const react_1 = require("react");
16
- const RoomFilterPriceSlider_1 = require("./RoomFilterPriceSlider");
14
+ const RoomFilterPriceSlider_1 = require("components/steps/room/roomFilter/RoomFilterPriceSlider");
17
15
  const contexts_1 = require("@frontend/contexts");
18
- const FilterProvider_1 = require("../../../../providers/FilterProvider");
19
- const RoomFilterRateType_1 = require("./RoomFilterRateType");
20
- const RoomFilterRoomType_1 = require("./RoomFilterRoomType");
21
- const DataLayer_1 = require("../../../../util/DataLayer");
16
+ const FilterProvider_1 = require("providers/FilterProvider");
17
+ const RoomFilterRateType_1 = require("components/steps/room/roomFilter/RoomFilterRateType");
18
+ const RoomFilterRoomType_1 = require("components/steps/room/roomFilter/RoomFilterRoomType");
19
+ const DataLayer_1 = require("util/DataLayer");
22
20
  const hooks_1 = require("@frontend/hooks");
21
+ const Overlay_1 = require("components/generic/Overlay/Overlay");
23
22
  function RoomFilterOverlay(props) {
24
- const context = react_1.useContext(contexts_1.BookingEngineContext);
25
- const basketContext = react_1.useContext(contexts_1.BasketContext);
26
- const { hotel } = hooks_1.useCurrentHotel();
27
- const { t } = react_i18next_1.useTranslation();
28
- const [filters, setFilters] = react_1.useState(context.currentFilters);
29
- const [roomList, setRoomList] = react_1.useState([]);
30
- react_1.useEffect(() => {
23
+ const context = (0, react_1.useContext)(contexts_1.BookingEngineContext);
24
+ const basketContext = (0, react_1.useContext)(contexts_1.BasketContext);
25
+ const { hotel } = (0, hooks_1.useCurrentHotel)();
26
+ const { t } = (0, react_i18next_1.useTranslation)();
27
+ const [filters, setFilters] = (0, react_1.useState)(context.currentFilters);
28
+ const [roomList, setRoomList] = (0, react_1.useState)([]);
29
+ (0, react_1.useEffect)(() => {
31
30
  var _a;
32
31
  setFilters(Object.assign({}, context.currentFilters));
33
- const removeOverflow = () => {
34
- document.body.style.overflow = null;
35
- };
36
32
  if (props.open) {
37
- document.body.style.overflow = 'hidden';
38
33
  const allRows = basketContext.getAllValidRows();
39
34
  FilterProvider_1.default.getUnfilteredRoomList((_a = basketContext.selectedBasketRow) !== null && _a !== void 0 ? _a : allRows[allRows.length - 1], hotel.hotelID).then((rooms) => {
40
35
  setRoomList(rooms);
41
36
  });
42
37
  }
43
- else {
44
- removeOverflow();
45
- }
46
- return () => {
47
- removeOverflow();
48
- };
49
38
  }, [props.open]);
50
39
  const applyChangesOnClickHandler = () => {
51
40
  DataLayer_1.default.instance.sendInteraction('Apply Filters', DataLayer_1.InteractionType.BUTTON, DataLayer_1.InteractionStep.ROOMS);
@@ -85,13 +74,7 @@ function RoomFilterOverlay(props) {
85
74
  React.createElement("div", { className: "u-marg-bottom--heavy" },
86
75
  React.createElement(RoomFilterRateType_1.default, { roomList: roomList, filter: filters.RateType, onChange: onFilterRateChangeHandler })))))));
87
76
  if (context.screenSize > ScreenSize_1.default.Medium) {
88
- return (React.createElement(core_1.Popover, { anchorEl: props.anchorEl, onClose: props.onClose, container: RoomstayThemeEngine_1.default.EngineContainer, open: props.open, anchorOrigin: {
89
- vertical: 'bottom',
90
- horizontal: 'center',
91
- }, transformOrigin: {
92
- vertical: 'top',
93
- horizontal: 'left',
94
- } },
77
+ return (React.createElement(Overlay_1.Overlay, { followElement: props.anchorEl, onClose: props.onClose, open: props.open, placement: 'bottom-start' },
95
78
  React.createElement(React.Fragment, null,
96
79
  filterInside,
97
80
  React.createElement("div", { className: "u-pad--heavy u-pad-top--none" },
@@ -1 +1 @@
1
- {"version":3,"file":"RoomFilterOverlay.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/RoomFilterOverlay.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { Popover } from '@material-ui/core';\nimport Headline from '../../../generic/Headline';\nimport Text from '../../../generic/Text';\nimport BEButton from '../../../generic/BEButton';\nimport LineBreak from '../../../generic/LineBreak';\nimport { Color } from '../../../../util/Color';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from '../../../../translations/Translation';\nimport ScreenSize from '../../../../util/ScreenSize';\nimport SimpleModal from '../../../generic/modal/SimpleModal';\nimport { Room } from '../../../../models/Room/Room';\nimport RoomstayThemeEngine from '../../../../providers/RoomstayThemeEngine';\nimport { useEffect, useState, useContext } from 'react';\nimport RoomFilterPriceSlider from './RoomFilterPriceSlider';\nimport Filter from '../../../../models/Room/Filters/Filter';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport FilterProvider from '../../../../providers/FilterProvider';\nimport RoomFilterRateType from './RoomFilterRateType';\nimport RoomFilterRoomType from './RoomFilterRoomType';\nimport DataLayer, { InteractionStep, InteractionType } from '../../../../util/DataLayer';\nimport { useCurrentHotel } from '@frontend/hooks';\n\nexport interface RoomFilterProps {\n anchorEl: any;\n filter?: () => Room[];\n open: boolean;\n\n onClose?: () => void;\n}\n\nexport default function RoomFilterOverlay(props: RoomFilterProps) {\n const context = useContext(BookingEngineContext);\n const basketContext = useContext(BasketContext);\n const { hotel } = useCurrentHotel();\n\n const { t } = useTranslation();\n\n const [filters, setFilters] = useState<any>(context.currentFilters);\n const [roomList, setRoomList] = useState<Room[]>([]);\n\n useEffect(() => {\n setFilters({ ...context.currentFilters });\n\n const removeOverflow = () => {\n document.body.style.overflow = null;\n };\n\n if (props.open) {\n document.body.style.overflow = 'hidden';\n\n const allRows = basketContext.getAllValidRows();\n\n FilterProvider.getUnfilteredRoomList(basketContext.selectedBasketRow ?? allRows[allRows.length - 1], hotel.hotelID).then((rooms) => {\n setRoomList(rooms);\n });\n } else {\n removeOverflow();\n }\n\n return () => {\n removeOverflow();\n };\n }, [props.open]);\n\n const applyChangesOnClickHandler = () => {\n DataLayer.instance.sendInteraction('Apply Filters', InteractionType.BUTTON, InteractionStep.ROOMS);\n\n context.setCurrentFilters(filters);\n props.onClose();\n };\n\n const stickyFooter = (\n <div className=\"u-flex align-items-center justify-content-between justify-content-md-end\">\n <div className=\"u-marg-right--heavy\">\n <Text color={Color.Accent}>\n <strong>\n {FilterProvider.filterRooms(roomList, Object.values(filters)).length} {t(Translation.Step.Room.Filter.MatchingRoomsRates)}\n </strong>\n </Text>\n </div>\n <BEButton primary={true} filled={true} onClick={applyChangesOnClickHandler}>\n {t(Translation.Misc.ApplyChanges)}\n </BEButton>\n </div>\n );\n const updateFilters = (name: string, filter: Filter) => {\n setFilters((oldFilters: any) => ({\n ...oldFilters,\n [name]: filter,\n }));\n };\n const onPriceSliderChangeHandler = (filter: any) => {\n return updateFilters('Budget', filter);\n };\n const onFilterTypeChangeHandler = (filter: any) => {\n return updateFilters('RoomType', filter);\n };\n const onFilterRateChangeHandler = (filter: any) => {\n return updateFilters('RateType', filter);\n };\n const filterInside = (\n <div className=\"room-filter\">\n <div className=\"u-pad--heavy u-pad-bottom--none\">\n {context.screenSize > ScreenSize.Medium && (\n <div className=\"u-marg-bottom\">\n <Headline bold={true}>{t(Translation.Step.Room.FilterBy)}</Headline>\n </div>\n )}\n <div className=\"row\">\n <div className=\"col-md-6\">\n <RoomFilterPriceSlider filter={filters.Budget} onChange={onPriceSliderChangeHandler} roomList={roomList} />\n <div className=\"u-marg-bottom--heavy\">\n <RoomFilterRoomType roomList={roomList} filter={filters.RoomType} onChange={onFilterTypeChangeHandler} />\n </div>\n </div>\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <RoomFilterRateType roomList={roomList} filter={filters.RateType} onChange={onFilterRateChangeHandler} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n\n if (context.screenSize > ScreenSize.Medium) {\n return (\n <Popover\n anchorEl={props.anchorEl}\n onClose={props.onClose}\n container={RoomstayThemeEngine.EngineContainer}\n open={props.open}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'center',\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left',\n }}\n >\n <>\n {filterInside}\n <div className=\"u-pad--heavy u-pad-top--none\">\n <LineBreak />\n {stickyFooter}\n </div>\n </>\n </Popover>\n );\n } else {\n return (\n <SimpleModal open={props.open} onClose={props.onClose} title={'Filter'} mobileFooter={stickyFooter}>\n {filterInside}\n </SimpleModal>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"RoomFilterOverlay.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/RoomFilterOverlay.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport Headline from 'components/generic/Headline';\nimport Text from 'components/generic/Text';\nimport BEButton from 'components/generic/BEButton';\nimport LineBreak from 'components/generic/LineBreak';\nimport { Color } from 'util/Color';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport ScreenSize from 'util/ScreenSize';\nimport SimpleModal from 'components/generic/modal/SimpleModal';\nimport { Room } from 'models/Room/Room';\nimport { useEffect, useState, useContext } from 'react';\nimport RoomFilterPriceSlider from 'components/steps/room/roomFilter/RoomFilterPriceSlider';\nimport Filter from 'models/Room/Filters/Filter';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport FilterProvider from 'providers/FilterProvider';\nimport RoomFilterRateType from 'components/steps/room/roomFilter/RoomFilterRateType';\nimport RoomFilterRoomType from 'components/steps/room/roomFilter/RoomFilterRoomType';\nimport DataLayer, { InteractionStep, InteractionType } from 'util/DataLayer';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { Overlay } from 'components/generic/Overlay/Overlay';\n\nexport interface RoomFilterProps {\n anchorEl: any;\n filter?: () => Room[];\n open: boolean;\n\n onClose?: () => void;\n}\n\nexport default function RoomFilterOverlay(props: RoomFilterProps) {\n const context = useContext(BookingEngineContext);\n const basketContext = useContext(BasketContext);\n const { hotel } = useCurrentHotel();\n\n const { t } = useTranslation();\n\n const [filters, setFilters] = useState<any>(context.currentFilters);\n const [roomList, setRoomList] = useState<Room[]>([]);\n\n useEffect(() => {\n setFilters({ ...context.currentFilters });\n\n if (props.open) {\n const allRows = basketContext.getAllValidRows();\n\n FilterProvider.getUnfilteredRoomList(basketContext.selectedBasketRow ?? allRows[allRows.length - 1], hotel.hotelID).then((rooms) => {\n setRoomList(rooms);\n });\n }\n }, [props.open]);\n\n const applyChangesOnClickHandler = () => {\n DataLayer.instance.sendInteraction('Apply Filters', InteractionType.BUTTON, InteractionStep.ROOMS);\n\n context.setCurrentFilters(filters);\n props.onClose();\n };\n\n const stickyFooter = (\n <div className=\"u-flex align-items-center justify-content-between justify-content-md-end\">\n <div className=\"u-marg-right--heavy\">\n <Text color={Color.Accent}>\n <strong>\n {FilterProvider.filterRooms(roomList, Object.values(filters)).length} {t(Translation.Step.Room.Filter.MatchingRoomsRates)}\n </strong>\n </Text>\n </div>\n <BEButton primary={true} filled={true} onClick={applyChangesOnClickHandler}>\n {t(Translation.Misc.ApplyChanges)}\n </BEButton>\n </div>\n );\n const updateFilters = (name: string, filter: Filter) => {\n setFilters((oldFilters: any) => ({\n ...oldFilters,\n [name]: filter,\n }));\n };\n const onPriceSliderChangeHandler = (filter: any) => {\n return updateFilters('Budget', filter);\n };\n const onFilterTypeChangeHandler = (filter: any) => {\n return updateFilters('RoomType', filter);\n };\n const onFilterRateChangeHandler = (filter: any) => {\n return updateFilters('RateType', filter);\n };\n const filterInside = (\n <div className=\"room-filter\">\n <div className=\"u-pad--heavy u-pad-bottom--none\">\n {context.screenSize > ScreenSize.Medium && (\n <div className=\"u-marg-bottom\">\n <Headline bold={true}>{t(Translation.Step.Room.FilterBy)}</Headline>\n </div>\n )}\n <div className=\"row\">\n <div className=\"col-md-6\">\n <RoomFilterPriceSlider filter={filters.Budget} onChange={onPriceSliderChangeHandler} roomList={roomList} />\n <div className=\"u-marg-bottom--heavy\">\n <RoomFilterRoomType roomList={roomList} filter={filters.RoomType} onChange={onFilterTypeChangeHandler} />\n </div>\n </div>\n <div className=\"col-md-6\">\n <div className=\"u-marg-bottom--heavy\">\n <RoomFilterRateType roomList={roomList} filter={filters.RateType} onChange={onFilterRateChangeHandler} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n\n if (context.screenSize > ScreenSize.Medium) {\n return (\n <Overlay followElement={props.anchorEl} onClose={props.onClose} open={props.open} placement={'bottom-start'}>\n <>\n {filterInside}\n <div className=\"u-pad--heavy u-pad-top--none\">\n <LineBreak />\n {stickyFooter}\n </div>\n </>\n </Overlay>\n );\n } else {\n return (\n <SimpleModal open={props.open} onClose={props.onClose} title={'Filter'} mobileFooter={stickyFooter}>\n {filterInside}\n </SimpleModal>\n );\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import BudgetFilter from '../../../../models/Room/Filters/BudgetFilter';
2
- import { Room } from '../../../../models/Room/Room';
1
+ import BudgetFilter from 'models/Room/Filters/BudgetFilter';
2
+ import { Room } from 'models/Room/Room';
3
3
  interface RoomFilterPriceSliderProps {
4
4
  filter: BudgetFilter;
5
5
  roomList: Room[];
@@ -2,38 +2,40 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const React = require("react");
4
4
  const react_1 = require("react");
5
- const Currency_1 = require("../../../generic/Currency");
6
- const core_1 = require("@material-ui/core");
7
- const Color_1 = require("../../../../util/Color");
8
- const Text_1 = require("../../../generic/Text");
9
- const Translation_1 = require("../../../../translations/Translation");
10
- const BEButton_1 = require("../../../generic/BEButton");
5
+ const Currency_1 = require("components/generic/Currency");
6
+ const Color_1 = require("util/Color");
7
+ const Text_1 = require("components/generic/Text");
8
+ const Translation_1 = require("translations/Translation");
9
+ const BEButton_1 = require("components/generic/BEButton");
11
10
  const react_i18next_1 = require("react-i18next");
12
- const BudgetFilter_1 = require("../../../../models/Room/Filters/BudgetFilter");
13
- const SmallSpinner_1 = require("../../../generic/loader/SmallSpinner");
11
+ const BudgetFilter_1 = require("models/Room/Filters/BudgetFilter");
12
+ const SmallSpinner_1 = require("components/generic/loader/SmallSpinner");
14
13
  const cx = require("classnames");
14
+ const Slider_1 = require("components/generic/Slider/Slider");
15
15
  function RoomFilterPriceSlider(props) {
16
16
  var _a, _b, _c, _d, _e;
17
- const { t } = react_i18next_1.useTranslation();
18
- const [rangeDefaults, setRangeDefaults] = react_1.useState([(_b = (_a = props.filter) === null || _a === void 0 ? void 0 : _a.getMin()) !== null && _b !== void 0 ? _b : 0, (_d = (_c = props.filter) === null || _c === void 0 ? void 0 : _c.getMax()) !== null && _d !== void 0 ? _d : 0]);
19
- const [range, setRange] = react_1.useState(rangeDefaults);
20
- const [peaksReached, setPeaksReached] = react_1.useState(null);
21
- react_1.useEffect(() => {
17
+ const { t } = (0, react_i18next_1.useTranslation)();
18
+ const [rangeDefaults, setRangeDefaults] = (0, react_1.useState)([(_b = (_a = props.filter) === null || _a === void 0 ? void 0 : _a.getMin()) !== null && _b !== void 0 ? _b : 0, (_d = (_c = props.filter) === null || _c === void 0 ? void 0 : _c.getMax()) !== null && _d !== void 0 ? _d : 0]);
19
+ const [range, setRange] = (0, react_1.useState)(rangeDefaults);
20
+ const [peaksReached, setPeaksReached] = (0, react_1.useState)(null);
21
+ (0, react_1.useEffect)(() => {
22
22
  var _a, _b, _c, _d, _e, _f;
23
- const min = ((_a = props.roomList) === null || _a === void 0 ? void 0 : _a.length) ? props.roomList.reduce((total, room) => {
24
- const roomLowest = room.getLowestPrice(true);
25
- return total < roomLowest && total ? total : roomLowest;
26
- }, null)
23
+ const min = ((_a = props.roomList) === null || _a === void 0 ? void 0 : _a.length)
24
+ ? props.roomList.reduce((total, room) => {
25
+ const roomLowest = room.getLowestPrice(true);
26
+ return total < roomLowest && total ? total : roomLowest;
27
+ }, null)
27
28
  : 0;
28
- const max = ((_b = props.roomList) === null || _b === void 0 ? void 0 : _b.length) ? props.roomList.reduce((total, room) => {
29
- const roomHighest = room.getHighestPrice(true);
30
- return total > roomHighest && total ? total : roomHighest;
31
- }, 0)
29
+ const max = ((_b = props.roomList) === null || _b === void 0 ? void 0 : _b.length)
30
+ ? props.roomList.reduce((total, room) => {
31
+ const roomHighest = room.getHighestPrice(true);
32
+ return total > roomHighest && total ? total : roomHighest;
33
+ }, 0)
32
34
  : 0;
33
35
  setRangeDefaults([min, max]);
34
36
  setRange([(_d = (_c = props.filter) === null || _c === void 0 ? void 0 : _c.getMin()) !== null && _d !== void 0 ? _d : min, (_f = (_e = props.filter) === null || _e === void 0 ? void 0 : _e.getMax()) !== null && _f !== void 0 ? _f : max]);
35
37
  }, [props.roomList]);
36
- react_1.useEffect(() => {
38
+ (0, react_1.useEffect)(() => {
37
39
  const rangeDifference = rangeDefaults[1] - rangeDefaults[0];
38
40
  // Basically we're checking if the RIGHT slider (max) is within 1.2x of the smallest value
39
41
  // and if LEFT slider (min) is within .8 of the largest value. This will hopefully allow us to transform the label
@@ -54,11 +56,11 @@ function RoomFilterPriceSlider(props) {
54
56
  const budgetMarks = [
55
57
  {
56
58
  label: (React.createElement("span", { className: "be-slider-label --start", style: { color: Color_1.Color.Grey } }, currencyObj(rangeDefaults[0]))),
57
- value: rangeDefaults[0] - 1,
59
+ value: rangeDefaults[0],
58
60
  },
59
61
  {
60
62
  label: (React.createElement("span", { className: "be-slider-label", style: { color: Color_1.Color.Grey } }, currencyObj(rangeDefaults[1]))),
61
- value: rangeDefaults[1] + 2,
63
+ value: rangeDefaults[1],
62
64
  },
63
65
  {
64
66
  label: (React.createElement("span", { className: "be-slider-label --main" },
@@ -68,8 +70,8 @@ function RoomFilterPriceSlider(props) {
68
70
  value: (range[1] - range[0]) / 2 + range[0],
69
71
  },
70
72
  ];
71
- const handleBudgetChange = (event, newValue) => {
72
- setRange(newValue);
73
+ const handleBudgetChange = (newValue) => {
74
+ setRange(newValue.map((value) => value.value));
73
75
  };
74
76
  const handleBudgetCommittedChange = (event, newValue) => {
75
77
  props.onChange(new BudgetFilter_1.default(newValue[0], newValue[1]));
@@ -81,6 +83,38 @@ function RoomFilterPriceSlider(props) {
81
83
  const resetOnClickHandler = () => {
82
84
  return reset();
83
85
  };
86
+ const markers = [
87
+ {
88
+ isVisible: true,
89
+ value: range[0],
90
+ },
91
+ {
92
+ isVisible: true,
93
+ value: range[1],
94
+ },
95
+ {
96
+ isVisible: false,
97
+ label: (React.createElement(React.Fragment, null,
98
+ currencyObj(range[0]),
99
+ " - ",
100
+ currencyObj(range[1]))),
101
+ value: range[0] + (range[1] - range[0]) / 2,
102
+ },
103
+ ];
104
+ const backgroundMarkers = [
105
+ {
106
+ isVisible: true,
107
+ value: rangeDefaults[0],
108
+ label: currencyObj(rangeDefaults[0]),
109
+ isEdge: 'start',
110
+ },
111
+ {
112
+ isVisible: true,
113
+ value: rangeDefaults[1],
114
+ label: currencyObj(rangeDefaults[1]),
115
+ isEdge: 'end',
116
+ },
117
+ ];
84
118
  return (React.createElement(React.Fragment, null,
85
119
  React.createElement("div", { className: "u-flex" },
86
120
  React.createElement("div", null,
@@ -92,7 +126,11 @@ function RoomFilterPriceSlider(props) {
92
126
  React.createElement("div", null,
93
127
  React.createElement(BEButton_1.default, { size: "tiny", isText: true, disabled: !props.filter, onClick: resetOnClickHandler }, t(Translation_1.Translation.Misc.Clear)))),
94
128
  ((_e = props.roomList) === null || _e === void 0 ? void 0 : _e.length) > 0 ? (React.createElement("div", { className: cx('roomstay-slider', { '--min-limit': peaksReached === 'left', '--max-limit': peaksReached === 'right' }) },
95
- React.createElement(core_1.Slider, { min: rangeDefaults[0], max: rangeDefaults[1], valueLabelDisplay: "off", onChange: handleBudgetChange, onChangeCommitted: handleBudgetCommittedChange, "aria-labelledby": "track-false-range-slider", value: range, marks: budgetMarks }))) : (React.createElement("div", { className: "u-marg-top-bottom u-flex justify-content-center" },
129
+ React.createElement(Slider_1.Slider, { min: rangeDefaults[0], max: rangeDefaults[1], onChange: handleBudgetChange,
130
+ // onChangeCommitted={handleBudgetCommittedChange}
131
+ // aria-labelledby="track-false-range-slider"
132
+ // value={range}
133
+ markers: markers, backgroundMarkers: backgroundMarkers }))) : (React.createElement("div", { className: "u-marg-top-bottom u-flex justify-content-center" },
96
134
  React.createElement(SmallSpinner_1.default, null)))));
97
135
  }
98
136
  exports.default = RoomFilterPriceSlider;
@@ -1 +1 @@
1
- {"version":3,"file":"RoomFilterPriceSlider.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/RoomFilterPriceSlider.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport Currency from '../../../generic/Currency';\nimport { Slider } from '@material-ui/core';\nimport { Color } from '../../../../util/Color';\nimport Text, { TextType } from '../../../generic/Text';\nimport { Translation } from '../../../../translations/Translation';\nimport BEButton from '../../../generic/BEButton';\nimport { useTranslation } from 'react-i18next';\nimport BudgetFilter from '../../../../models/Room/Filters/BudgetFilter';\nimport { Room } from '../../../../models/Room/Room';\nimport Icon, { IconType } from '../../../generic/Icon';\nimport SmallSpinner from '../../../generic/loader/SmallSpinner';\n\nimport * as cx from 'classnames';\n\ninterface RoomFilterPriceSliderProps {\n filter: BudgetFilter;\n roomList: Room[];\n onChange: (filter: BudgetFilter) => void;\n}\n\nexport default function RoomFilterPriceSlider(props: RoomFilterPriceSliderProps) {\n const { t } = useTranslation();\n\n const [rangeDefaults, setRangeDefaults] = useState([props.filter?.getMin() ?? 0, props.filter?.getMax() ?? 0]);\n const [range, setRange] = useState(rangeDefaults);\n\n const [peaksReached, setPeaksReached] = useState<'left' | 'right'>(null);\n\n useEffect(() => {\n const min: any = props.roomList?.length\n ? props.roomList.reduce((total: number, room: Room): any => {\n const roomLowest = room.getLowestPrice(true);\n return total < roomLowest && total ? total : roomLowest;\n }, null)\n : 0;\n const max: any = props.roomList?.length\n ? props.roomList.reduce((total: number, room: Room): any => {\n const roomHighest = room.getHighestPrice(true);\n return total > roomHighest && total ? total : roomHighest;\n }, 0)\n : 0;\n\n setRangeDefaults([min, max]);\n setRange([props.filter?.getMin() ?? min, props.filter?.getMax() ?? max]);\n }, [props.roomList]);\n\n useEffect(() => {\n const rangeDifference = rangeDefaults[1] - rangeDefaults[0];\n\n // Basically we're checking if the RIGHT slider (max) is within 1.2x of the smallest value\n // and if LEFT slider (min) is within .8 of the largest value. This will hopefully allow us to transform the label\n // away from the edges, to avoid overlapping\n if (range[1] < rangeDefaults[0] + rangeDifference * 0.3) {\n setPeaksReached('left');\n } else if (range[0] > rangeDefaults[1] - rangeDifference * 0.3) {\n setPeaksReached('right');\n } else {\n setPeaksReached(null);\n }\n }, [range]);\n\n const currencyObj = (value: any, disableLoading = false) => {\n return (\n <Currency hideDecimals={true} disableLoading={true}>\n {value}\n </Currency>\n );\n };\n\n const budgetMarks = [\n {\n label: (\n <span className=\"be-slider-label --start\" style={{ color: Color.Grey }}>\n {currencyObj(rangeDefaults[0])}\n </span>\n ),\n value: rangeDefaults[0] - 1,\n },\n {\n label: (\n <span className=\"be-slider-label\" style={{ color: Color.Grey }}>\n {currencyObj(rangeDefaults[1])}\n </span>\n ),\n value: rangeDefaults[1] + 2,\n },\n {\n label: (\n <span className=\"be-slider-label --main\">\n {currencyObj(range[0])} - {currencyObj(range[1])}\n </span>\n ),\n value: (range[1] - range[0]) / 2 + range[0],\n },\n ];\n\n const handleBudgetChange = (event: any, newValue: number | number[]) => {\n setRange(newValue as number[]);\n };\n\n const handleBudgetCommittedChange = (event: any, newValue: number[]) => {\n props.onChange(new BudgetFilter(newValue[0], newValue[1]));\n };\n\n const reset = () => {\n setRange(rangeDefaults);\n props.onChange(null);\n };\n const resetOnClickHandler = () => {\n return reset();\n };\n return (\n <>\n <div className=\"u-flex\">\n <div>\n <Text inline={true} type={TextType.Small}>\n <strong>{t(Translation.Step.Room.Filter.Budget)}</strong>\n </Text>\n <Text inline={true} type={TextType.Small}>\n /{t(Translation.Misc.PerNight)}\n </Text>\n </div>\n <div>\n <BEButton size=\"tiny\" isText={true} disabled={!props.filter} onClick={resetOnClickHandler}>\n {t(Translation.Misc.Clear)}\n </BEButton>\n </div>\n </div>\n {props.roomList?.length > 0 ? (\n <div className={cx('roomstay-slider', { '--min-limit': peaksReached === 'left', '--max-limit': peaksReached === 'right' })}>\n <Slider\n min={rangeDefaults[0]}\n max={rangeDefaults[1]}\n valueLabelDisplay=\"off\"\n onChange={handleBudgetChange}\n onChangeCommitted={handleBudgetCommittedChange}\n aria-labelledby=\"track-false-range-slider\"\n value={range}\n marks={budgetMarks}\n />\n </div>\n ) : (\n <div className=\"u-marg-top-bottom u-flex justify-content-center\">\n <SmallSpinner />\n </div>\n )}\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"RoomFilterPriceSlider.js","sourceRoot":"/","sources":["src/components/steps/room/roomFilter/RoomFilterPriceSlider.tsx"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,iCAA4C;AAC5C,0DAAmD;AACnD,sCAAmC;AACnC,kDAAyD;AACzD,0DAAuD;AACvD,0DAAmD;AACnD,iDAA+C;AAC/C,mEAA4D;AAE5D,yEAAkE;AAElE,iCAAiC;AACjC,6DAA4F;AAQ5F,SAAwB,qBAAqB,CAAC,KAAiC;;IAC3E,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAE/B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,MAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,MAAM,EAAE,mCAAI,CAAC,EAAE,MAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,MAAM,EAAE,mCAAI,CAAC,CAAC,CAAC,CAAC;IAC/G,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,aAAa,CAAC,CAAC;IAElD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAAmB,IAAI,CAAC,CAAC;IAEzE,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACX,MAAM,GAAG,GAAQ,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM;YACnC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,IAAU,EAAO,EAAE;gBACrD,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC7C,OAAO,KAAK,GAAG,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;YAC5D,CAAC,EAAE,IAAI,CAAC;YACV,CAAC,CAAC,CAAC,CAAC;QACR,MAAM,GAAG,GAAQ,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM;YACnC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,IAAU,EAAO,EAAE;gBACrD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC/C,OAAO,KAAK,GAAG,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;YAC9D,CAAC,EAAE,CAAC,CAAC;YACP,CAAC,CAAC,CAAC,CAAC;QAER,gBAAgB,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7B,QAAQ,CAAC,CAAC,MAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,MAAM,EAAE,mCAAI,GAAG,EAAE,MAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,MAAM,EAAE,mCAAI,GAAG,CAAC,CAAC,CAAC;IAC7E,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,MAAM,eAAe,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAE5D,0FAA0F;QAC1F,kHAAkH;QAClH,4CAA4C;QAC5C,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,GAAG,EAAE;YACrD,eAAe,CAAC,MAAM,CAAC,CAAC;SAC3B;aAAM,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,GAAG,EAAE;YAC5D,eAAe,CAAC,OAAO,CAAC,CAAC;SAC5B;aAAM;YACH,eAAe,CAAC,IAAI,CAAC,CAAC;SACzB;IACL,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,cAAc,GAAG,KAAK,EAAE,EAAE;QACvD,OAAO,CACH,oBAAC,kBAAQ,IAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,IAC7C,KAAK,CACC,CACd,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG;QAChB;YACI,KAAK,EAAE,CACH,8BAAM,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAK,CAAC,IAAI,EAAE,IACjE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAC3B,CACV;YACD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;SAC1B;QACD;YACI,KAAK,EAAE,CACH,8BAAM,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAK,CAAC,IAAI,EAAE,IACzD,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAC3B,CACV;YACD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;SAC1B;QACD;YACI,KAAK,EAAE,CACH,8BAAM,SAAS,EAAC,wBAAwB;gBACnC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;;gBAAK,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC7C,CACV;YACD,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;SAC9C;KACJ,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,QAAsB,EAAE,EAAE;QAClD,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,KAAU,EAAE,QAAkB,EAAE,EAAE;QACnE,KAAK,CAAC,QAAQ,CAAC,IAAI,sBAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,GAAG,EAAE;QACf,QAAQ,CAAC,aAAa,CAAC,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC7B,OAAO,KAAK,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAiB;QAC1B;YACI,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SAClB;QACD;YACI,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SAClB;QACD;YACI,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,CACH;gBACK,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;;gBAAK,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACjD,CACN;YACD,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAC9C;KACJ,CAAC;IAEF,MAAM,iBAAiB,GAA2B;QAC9C;YACI,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;YACvB,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,EAAE,OAAO;SAClB;QACD;YACI,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;YACvB,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,EAAE,KAAK;SAChB;KACJ,CAAC;IAEF,OAAO,CACH;QACI,6BAAK,SAAS,EAAC,QAAQ;YACnB;gBACI,oBAAC,cAAI,IAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK;oBACpC,oCAAS,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAU,CACtD;gBACP,oBAAC,cAAI,IAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK;;oBAClC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC3B,CACL;YACN;gBACI,oBAAC,kBAAQ,IAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,mBAAmB,IACpF,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CACnB,CACT,CACJ;QACL,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,CAC1B,6BAAK,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,EAAE,aAAa,EAAE,YAAY,KAAK,MAAM,EAAE,aAAa,EAAE,YAAY,KAAK,OAAO,EAAE,CAAC;YACtH,oBAAC,eAAM,IACH,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EACrB,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,kBAAkB;gBAC5B,kDAAkD;gBAClD,6CAA6C;gBAC7C,gBAAgB;gBAChB,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,iBAAiB,GACtC,CACA,CACT,CAAC,CAAC,CAAC,CACA,6BAAK,SAAS,EAAC,iDAAiD;YAC5D,oBAAC,sBAAY,OAAG,CACd,CACT,CACF,CACN,CAAC;AACN,CAAC;AApKD,wCAoKC","sourcesContent":["import * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport Currency from 'components/generic/Currency';\nimport { Color } from 'util/Color';\nimport Text, { TextType } from 'components/generic/Text';\nimport { Translation } from 'translations/Translation';\nimport BEButton from 'components/generic/BEButton';\nimport { useTranslation } from 'react-i18next';\nimport BudgetFilter from 'models/Room/Filters/BudgetFilter';\nimport { Room } from 'models/Room/Room';\nimport SmallSpinner from 'components/generic/loader/SmallSpinner';\n\nimport * as cx from 'classnames';\nimport { Slider, MarkerType, BackgroundMarkerType } from 'components/generic/Slider/Slider';\n\ninterface RoomFilterPriceSliderProps {\n filter: BudgetFilter;\n roomList: Room[];\n onChange: (filter: BudgetFilter) => void;\n}\n\nexport default function RoomFilterPriceSlider(props: RoomFilterPriceSliderProps) {\n const { t } = useTranslation();\n\n const [rangeDefaults, setRangeDefaults] = useState([props.filter?.getMin() ?? 0, props.filter?.getMax() ?? 0]);\n const [range, setRange] = useState(rangeDefaults);\n\n const [peaksReached, setPeaksReached] = useState<'left' | 'right'>(null);\n\n useEffect(() => {\n const min: any = props.roomList?.length\n ? props.roomList.reduce((total: number, room: Room): any => {\n const roomLowest = room.getLowestPrice(true);\n return total < roomLowest && total ? total : roomLowest;\n }, null)\n : 0;\n const max: any = props.roomList?.length\n ? props.roomList.reduce((total: number, room: Room): any => {\n const roomHighest = room.getHighestPrice(true);\n return total > roomHighest && total ? total : roomHighest;\n }, 0)\n : 0;\n\n setRangeDefaults([min, max]);\n setRange([props.filter?.getMin() ?? min, props.filter?.getMax() ?? max]);\n }, [props.roomList]);\n\n useEffect(() => {\n const rangeDifference = rangeDefaults[1] - rangeDefaults[0];\n\n // Basically we're checking if the RIGHT slider (max) is within 1.2x of the smallest value\n // and if LEFT slider (min) is within .8 of the largest value. This will hopefully allow us to transform the label\n // away from the edges, to avoid overlapping\n if (range[1] < rangeDefaults[0] + rangeDifference * 0.3) {\n setPeaksReached('left');\n } else if (range[0] > rangeDefaults[1] - rangeDifference * 0.3) {\n setPeaksReached('right');\n } else {\n setPeaksReached(null);\n }\n }, [range]);\n\n const currencyObj = (value: any, disableLoading = false) => {\n return (\n <Currency hideDecimals={true} disableLoading={true}>\n {value}\n </Currency>\n );\n };\n\n const budgetMarks = [\n {\n label: (\n <span className=\"be-slider-label --start\" style={{ color: Color.Grey }}>\n {currencyObj(rangeDefaults[0])}\n </span>\n ),\n value: rangeDefaults[0],\n },\n {\n label: (\n <span className=\"be-slider-label\" style={{ color: Color.Grey }}>\n {currencyObj(rangeDefaults[1])}\n </span>\n ),\n value: rangeDefaults[1],\n },\n {\n label: (\n <span className=\"be-slider-label --main\">\n {currencyObj(range[0])} - {currencyObj(range[1])}\n </span>\n ),\n value: (range[1] - range[0]) / 2 + range[0],\n },\n ];\n\n const handleBudgetChange = (newValue: MarkerType[]) => {\n setRange(newValue.map((value) => value.value));\n };\n\n const handleBudgetCommittedChange = (event: any, newValue: number[]) => {\n props.onChange(new BudgetFilter(newValue[0], newValue[1]));\n };\n\n const reset = () => {\n setRange(rangeDefaults);\n props.onChange(null);\n };\n const resetOnClickHandler = () => {\n return reset();\n };\n\n const markers: MarkerType[] = [\n {\n isVisible: true,\n value: range[0],\n },\n {\n isVisible: true,\n value: range[1],\n },\n {\n isVisible: false,\n label: (\n <>\n {currencyObj(range[0])} - {currencyObj(range[1])}\n </>\n ),\n value: range[0] + (range[1] - range[0]) / 2,\n },\n ];\n\n const backgroundMarkers: BackgroundMarkerType[] = [\n {\n isVisible: true,\n value: rangeDefaults[0],\n label: currencyObj(rangeDefaults[0]),\n isEdge: 'start',\n },\n {\n isVisible: true,\n value: rangeDefaults[1],\n label: currencyObj(rangeDefaults[1]),\n isEdge: 'end',\n },\n ];\n\n return (\n <>\n <div className=\"u-flex\">\n <div>\n <Text inline={true} type={TextType.Small}>\n <strong>{t(Translation.Step.Room.Filter.Budget)}</strong>\n </Text>\n <Text inline={true} type={TextType.Small}>\n /{t(Translation.Misc.PerNight)}\n </Text>\n </div>\n <div>\n <BEButton size=\"tiny\" isText={true} disabled={!props.filter} onClick={resetOnClickHandler}>\n {t(Translation.Misc.Clear)}\n </BEButton>\n </div>\n </div>\n {props.roomList?.length > 0 ? (\n <div className={cx('roomstay-slider', { '--min-limit': peaksReached === 'left', '--max-limit': peaksReached === 'right' })}>\n <Slider\n min={rangeDefaults[0]}\n max={rangeDefaults[1]}\n onChange={handleBudgetChange}\n // onChangeCommitted={handleBudgetCommittedChange}\n // aria-labelledby=\"track-false-range-slider\"\n // value={range}\n markers={markers}\n backgroundMarkers={backgroundMarkers}\n />\n </div>\n ) : (\n <div className=\"u-marg-top-bottom u-flex justify-content-center\">\n <SmallSpinner />\n </div>\n )}\n </>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
- import RateTypeFilter from '../../../../models/Room/Filters/RateTypeFilter';
2
- import { Room } from '../../../../models/Room/Room';
1
+ import RateTypeFilter from 'models/Room/Filters/RateTypeFilter';
2
+ import { Room } from 'models/Room/Room';
3
3
  interface RoomFilterRateTypeProps {
4
4
  filter: RateTypeFilter;
5
5
  roomList: Room[];