@roomstay/frontend 2.6.88 → 2.6.89-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 (1088) hide show
  1. package/dist/177.bundle.js +1 -1
  2. package/dist/279.bundle.js +1 -1
  3. package/dist/288.bundle.js +1 -1
  4. package/dist/370.bundle.js +1 -1
  5. package/dist/380.bundle.js +1 -0
  6. package/dist/430.bundle.js +1 -1
  7. package/dist/449.bundle.js +1 -1
  8. package/dist/456.bundle.js +1 -0
  9. package/dist/537.bundle.js +1 -1
  10. package/dist/686.bundle.js +1 -1
  11. package/dist/873.bundle.js +1 -1
  12. package/dist/972.bundle.js +1 -1
  13. package/dist/978.bundle.js +1 -1
  14. package/dist/e2e/canChangeCurrency.spec.js +1 -1
  15. package/dist/e2e/canChangeCurrency.spec.js.map +1 -1
  16. package/dist/e2e/canCheckout.spec.js +3 -3
  17. package/dist/e2e/canCheckout.spec.js.map +1 -1
  18. package/dist/e2e/canViewFindReservationsPage.spec.js +1 -1
  19. package/dist/e2e/canViewFindReservationsPage.spec.js.map +1 -1
  20. package/dist/e2e/canViewHotelnfoPage.spec.js +1 -1
  21. package/dist/e2e/canViewHotelnfoPage.spec.js.map +1 -1
  22. package/dist/e2e/goBackAndCheckoutAgain.spec.js +1 -1
  23. package/dist/e2e/goBackAndCheckoutAgain.spec.js.map +1 -1
  24. package/dist/e2e/helpers/checkoutHelpers.js +9 -8
  25. package/dist/e2e/helpers/checkoutHelpers.js.map +1 -1
  26. package/dist/e2e/helpers/playwrightHelpers.js +2 -1
  27. package/dist/e2e/helpers/playwrightHelpers.js.map +1 -1
  28. package/dist/e2e/price.spec.js +3 -3
  29. package/dist/e2e/price.spec.js.map +1 -1
  30. package/dist/main.bundle.js +1 -1
  31. package/dist/src/animations/AutoAutoHeight.d.ts +1 -1
  32. package/dist/src/animations/AutoAutoHeight.js +8 -18
  33. package/dist/src/animations/AutoAutoHeight.js.map +1 -1
  34. package/dist/src/animations/Fade.js +7 -17
  35. package/dist/src/animations/Fade.js.map +1 -1
  36. package/dist/src/api/AddonAPI.js +7 -17
  37. package/dist/src/api/AddonAPI.js.map +1 -1
  38. package/dist/src/api/AvailabilityAPI.d.ts +6 -28
  39. package/dist/src/api/AvailabilityAPI.js +106 -214
  40. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  41. package/dist/src/api/BaseAPI.js +6 -6
  42. package/dist/src/api/BaseAPI.js.map +1 -1
  43. package/dist/src/api/ErrorAPI.js.map +1 -1
  44. package/dist/src/api/ExchangeRateAPI.js.map +1 -1
  45. package/dist/src/api/HotelAPI.d.ts +1 -1
  46. package/dist/src/api/HotelAPI.js.map +1 -1
  47. package/dist/src/api/MemberAPI.js +7 -17
  48. package/dist/src/api/MemberAPI.js.map +1 -1
  49. package/dist/src/api/ReservationAPI.d.ts +3 -2
  50. package/dist/src/api/ReservationAPI.js +10 -21
  51. package/dist/src/api/ReservationAPI.js.map +1 -1
  52. package/dist/src/api/SessionAPI.js +7 -17
  53. package/dist/src/api/SessionAPI.js.map +1 -1
  54. package/dist/src/api/TrueRewardsAPI.js.map +1 -1
  55. package/dist/src/api/events-service/EventsServiceAPI.js.map +1 -1
  56. package/dist/src/api/members-service/MembersServiceAPI.d.ts +1 -1
  57. package/dist/src/components/Event/EventCarouselContainer.js +7 -17
  58. package/dist/src/components/Event/EventCarouselContainer.js.map +1 -1
  59. package/dist/src/components/User/Forms/ForgotPasswordForm.d.ts +1 -2
  60. package/dist/src/components/User/Forms/ForgotPasswordForm.js +7 -17
  61. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
  62. package/dist/src/components/User/Forms/SignInForm.js +7 -17
  63. package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
  64. package/dist/src/components/User/Forms/SignUpForm.d.ts +1 -2
  65. package/dist/src/components/User/Forms/SignUpForm.js +7 -17
  66. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
  67. package/dist/src/components/User/Forms/VerifyEmailForm.d.ts +1 -2
  68. package/dist/src/components/User/Forms/VerifyEmailForm.js +7 -17
  69. package/dist/src/components/User/Forms/VerifyEmailForm.js.map +1 -1
  70. package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js +7 -17
  71. package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js.map +1 -1
  72. package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.d.ts +1 -2
  73. package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js +7 -17
  74. package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js.map +1 -1
  75. package/dist/src/components/generic/Alert.d.ts +2 -2
  76. package/dist/src/components/generic/Alert.js +3 -3
  77. package/dist/src/components/generic/Alert.js.map +1 -1
  78. package/dist/src/components/generic/BEButton.d.ts +1 -2
  79. package/dist/src/components/generic/BEButton.js +9 -20
  80. package/dist/src/components/generic/BEButton.js.map +1 -1
  81. package/dist/src/components/generic/BackButton.d.ts +1 -2
  82. package/dist/src/components/generic/BackButton.js +1 -1
  83. package/dist/src/components/generic/BackButton.js.map +1 -1
  84. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +9 -18
  85. package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
  86. package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +2 -1
  87. package/dist/src/components/generic/BookingWizard/BookingWizard.js +46 -28
  88. package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
  89. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +2 -2
  90. package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +7 -5
  91. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +43 -21
  92. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
  93. package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +9 -0
  94. package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -1
  95. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.d.ts +2 -1
  96. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +9 -19
  97. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
  98. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.d.ts +2 -5
  99. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +10 -20
  100. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
  101. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.d.ts +1 -1
  102. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +11 -21
  103. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
  104. package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js +7 -17
  105. package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js.map +1 -1
  106. package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.d.ts +15 -0
  107. package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.js +135 -0
  108. package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.js.map +1 -0
  109. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +2 -2
  110. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +7 -17
  111. package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
  112. package/dist/src/components/generic/Checkbox/Checkbox.js +7 -17
  113. package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
  114. package/dist/src/components/generic/Countdown.d.ts +1 -2
  115. package/dist/src/components/generic/Countdown.js +8 -18
  116. package/dist/src/components/generic/Countdown.js.map +1 -1
  117. package/dist/src/components/generic/Currency.d.ts +1 -2
  118. package/dist/src/components/generic/Currency.js +8 -18
  119. package/dist/src/components/generic/Currency.js.map +1 -1
  120. package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +1 -2
  121. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +8 -18
  122. package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -1
  123. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.d.ts +1 -2
  124. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +9 -19
  125. package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -1
  126. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.d.ts +1 -2
  127. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +8 -18
  128. package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -1
  129. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.d.ts +1 -2
  130. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +8 -18
  131. package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -1
  132. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +7 -17
  133. package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -1
  134. package/dist/src/components/generic/Distance.d.ts +1 -2
  135. package/dist/src/components/generic/Distance.js +8 -18
  136. package/dist/src/components/generic/Distance.js.map +1 -1
  137. package/dist/src/components/generic/Event/EventCard.js +7 -17
  138. package/dist/src/components/generic/Event/EventCard.js.map +1 -1
  139. package/dist/src/components/generic/Event/EventCarousel.js +7 -17
  140. package/dist/src/components/generic/Event/EventCarousel.js.map +1 -1
  141. package/dist/src/components/generic/ForwardedSelect.js +7 -17
  142. package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
  143. package/dist/src/components/generic/GroupedCheckInOutTimes/GroupedCheckInOutTimes.js.map +1 -1
  144. package/dist/src/components/generic/Headline.d.ts +1 -1
  145. package/dist/src/components/generic/Headline.js +1 -1
  146. package/dist/src/components/generic/Headline.js.map +1 -1
  147. package/dist/src/components/generic/HtmlContentViewer.d.ts +1 -2
  148. package/dist/src/components/generic/HtmlContentViewer.js +27 -20
  149. package/dist/src/components/generic/HtmlContentViewer.js.map +1 -1
  150. package/dist/src/components/generic/IconText/IconText.js +9 -19
  151. package/dist/src/components/generic/IconText/IconText.js.map +1 -1
  152. package/dist/src/components/generic/InputGroup/InputGroup.d.ts +2 -2
  153. package/dist/src/components/generic/InputGroup/InputGroup.js +1 -1
  154. package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
  155. package/dist/src/components/generic/LineBreak.d.ts +1 -2
  156. package/dist/src/components/generic/LineBreak.js +1 -1
  157. package/dist/src/components/generic/LineBreak.js.map +1 -1
  158. package/dist/src/components/generic/Notification.d.ts +1 -1
  159. package/dist/src/components/generic/Notification.js +8 -18
  160. package/dist/src/components/generic/Notification.js.map +1 -1
  161. package/dist/src/components/generic/NumberIncrement.d.ts +1 -2
  162. package/dist/src/components/generic/NumberIncrement.js +8 -18
  163. package/dist/src/components/generic/NumberIncrement.js.map +1 -1
  164. package/dist/src/components/generic/Overlay/Overlay.d.ts +2 -2
  165. package/dist/src/components/generic/Overlay/Overlay.js +7 -17
  166. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
  167. package/dist/src/components/generic/PageTitle/index.d.ts +1 -2
  168. package/dist/src/components/generic/PageTitle/index.js.map +1 -1
  169. package/dist/src/components/generic/PasswordBox/PasswordBox.js +7 -17
  170. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
  171. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js +9 -19
  172. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js.map +1 -1
  173. package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +1 -2
  174. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +7 -17
  175. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
  176. package/dist/src/components/generic/Pill.d.ts +1 -1
  177. package/dist/src/components/generic/Pill.js +3 -3
  178. package/dist/src/components/generic/Pill.js.map +1 -1
  179. package/dist/src/components/generic/Placeholder.d.ts +1 -2
  180. package/dist/src/components/generic/Placeholder.js +1 -1
  181. package/dist/src/components/generic/Placeholder.js.map +1 -1
  182. package/dist/src/components/generic/PlanpayPrice/PlanpayPrice.js +7 -17
  183. package/dist/src/components/generic/PlanpayPrice/PlanpayPrice.js.map +1 -1
  184. package/dist/src/components/generic/PromoCodeInput.d.ts +1 -4
  185. package/dist/src/components/generic/PromoCodeInput.js +12 -20
  186. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  187. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +7 -17
  188. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
  189. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +7 -17
  190. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  191. package/dist/src/components/generic/RecentSearchesCard.d.ts +1 -2
  192. package/dist/src/components/generic/RecentSearchesCard.js +7 -17
  193. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  194. package/dist/src/components/generic/RoomstayMark.d.ts +1 -2
  195. package/dist/src/components/generic/RoomstayMark.js +7 -17
  196. package/dist/src/components/generic/RoomstayMark.js.map +1 -1
  197. package/dist/src/components/generic/ScrollToTop.js.map +1 -1
  198. package/dist/src/components/generic/Select/InputSelect.js +8 -18
  199. package/dist/src/components/generic/Select/InputSelect.js.map +1 -1
  200. package/dist/src/components/generic/Select/Select.d.ts +2 -2
  201. package/dist/src/components/generic/Select/Select.js +7 -17
  202. package/dist/src/components/generic/Select/Select.js.map +1 -1
  203. package/dist/src/components/generic/Slider/Slider.d.ts +1 -1
  204. package/dist/src/components/generic/Slider/Slider.js +7 -17
  205. package/dist/src/components/generic/Slider/Slider.js.map +1 -1
  206. package/dist/src/components/generic/Tabs/ElementChildren.js +3 -2
  207. package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
  208. package/dist/src/components/generic/Tabs/TabContext.js +7 -17
  209. package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
  210. package/dist/src/components/generic/Tabs/TabLink.js +7 -17
  211. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  212. package/dist/src/components/generic/Tabs/TabRouteContainer.d.ts +2 -2
  213. package/dist/src/components/generic/Tabs/TabRouteContainer.js +9 -18
  214. package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
  215. package/dist/src/components/generic/Text.d.ts +1 -0
  216. package/dist/src/components/generic/Text.js +12 -20
  217. package/dist/src/components/generic/Text.js.map +1 -1
  218. package/dist/src/components/generic/TextArea.js +7 -17
  219. package/dist/src/components/generic/TextArea.js.map +1 -1
  220. package/dist/src/components/generic/TextBox.js +7 -17
  221. package/dist/src/components/generic/TextBox.js.map +1 -1
  222. package/dist/src/components/generic/Tooltip/Tooltip.d.ts +2 -2
  223. package/dist/src/components/generic/Tooltip/Tooltip.js +8 -18
  224. package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
  225. package/dist/src/components/generic/badging/SSLSecureBadge.d.ts +1 -2
  226. package/dist/src/components/generic/badging/SSLSecureBadge.js +1 -1
  227. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  228. package/dist/src/components/generic/buttons/NextStepButton.d.ts +1 -2
  229. package/dist/src/components/generic/buttons/NextStepButton.js +8 -18
  230. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  231. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +7 -18
  232. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  233. package/dist/src/components/generic/date/DatePicker.d.ts +2 -3
  234. package/dist/src/components/generic/date/DatePicker.js +9 -19
  235. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  236. package/dist/src/components/generic/date/DatePickerDay.d.ts +1 -2
  237. package/dist/src/components/generic/date/DatePickerDay.js +9 -19
  238. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  239. package/dist/src/components/generic/date/DatePickerDays.d.ts +1 -2
  240. package/dist/src/components/generic/date/DatePickerDays.js +8 -18
  241. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  242. package/dist/src/components/generic/date/DatePickerMonth.d.ts +1 -2
  243. package/dist/src/components/generic/date/DatePickerMonth.js +8 -18
  244. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  245. package/dist/src/components/generic/date/DatePickerWeek.d.ts +1 -2
  246. package/dist/src/components/generic/date/DatePickerWeek.js +11 -21
  247. package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
  248. package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
  249. package/dist/src/components/generic/date/FloatingDatePicker.js +9 -19
  250. package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
  251. package/dist/src/components/generic/date/WeekViewSkeleton.d.ts +1 -2
  252. package/dist/src/components/generic/date/WeekViewSkeleton.js +7 -17
  253. package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
  254. package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
  255. package/dist/src/components/generic/loader/ImageLoader.js +8 -18
  256. package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
  257. package/dist/src/components/generic/loader/LargeLoader.d.ts +1 -2
  258. package/dist/src/components/generic/loader/LargeLoader.js +1 -1
  259. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  260. package/dist/src/components/generic/loader/OverlayLoader.d.ts +1 -2
  261. package/dist/src/components/generic/loader/SmallSpinner.d.ts +1 -2
  262. package/dist/src/components/generic/loader/SmallSpinner.js +8 -18
  263. package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
  264. package/dist/src/components/generic/map/HotelLocationMap.d.ts +1 -2
  265. package/dist/src/components/generic/map/HotelLocationMap.js +1 -1
  266. package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
  267. package/dist/src/components/generic/modal/ConfirmationModal.d.ts +1 -2
  268. package/dist/src/components/generic/modal/ConfirmationModal.js +8 -18
  269. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  270. package/dist/src/components/generic/modal/ErrorModal.d.ts +1 -1
  271. package/dist/src/components/generic/modal/ErrorModal.js +8 -18
  272. package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
  273. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +7 -17
  274. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
  275. package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js +7 -17
  276. package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js.map +1 -1
  277. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +1 -2
  278. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +8 -18
  279. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
  280. package/dist/src/components/generic/modal/SimpleModal.d.ts +1 -1
  281. package/dist/src/components/generic/modal/SimpleModal.js +9 -19
  282. package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
  283. package/dist/src/components/generic/modal/TabbedModal.d.ts +1 -1
  284. package/dist/src/components/generic/modal/TabbedModal.js +8 -18
  285. package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
  286. package/dist/src/components/generic/radio/RadioFields.d.ts +1 -2
  287. package/dist/src/components/generic/radio/RadioFields.js +8 -18
  288. package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
  289. package/dist/src/components/graphics/TravelerNotfound.d.ts +1 -2
  290. package/dist/src/components/graphics/TravelerNotfound.js +1 -1
  291. package/dist/src/components/graphics/TravelerNotfound.js.map +1 -1
  292. package/dist/src/components/iconComponents/BookNowPayLaterIcon.d.ts +1 -2
  293. package/dist/src/components/members/EditMyProfile.js +7 -17
  294. package/dist/src/components/members/EditMyProfile.js.map +1 -1
  295. package/dist/src/components/members/InlineSignUpSection.d.ts +2 -3
  296. package/dist/src/components/members/InlineSignUpSection.js +7 -17
  297. package/dist/src/components/members/InlineSignUpSection.js.map +1 -1
  298. package/dist/src/components/members/SignInModal/ExternalMemberModal.d.ts +1 -2
  299. package/dist/src/components/members/SignInModal/ExternalMemberModal.js +7 -17
  300. package/dist/src/components/members/SignInModal/ExternalMemberModal.js.map +1 -1
  301. package/dist/src/components/members/SignInModal/InternalMemberSignInModal.d.ts +1 -2
  302. package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js +9 -19
  303. package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js.map +1 -1
  304. package/dist/src/components/members/SignInModal/MemberPortalSignInModal.d.ts +1 -2
  305. package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js +8 -18
  306. package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js.map +1 -1
  307. package/dist/src/components/members/SignInModal/MemberSignInModal.d.ts +1 -2
  308. package/dist/src/components/members/SignInModal/MemberSignInModal.js +7 -17
  309. package/dist/src/components/members/SignInModal/MemberSignInModal.js.map +1 -1
  310. package/dist/src/components/navigation/Header.d.ts +1 -2
  311. package/dist/src/components/navigation/Header.js +8 -22
  312. package/dist/src/components/navigation/Header.js.map +1 -1
  313. package/dist/src/components/navigation/StepSelector.d.ts +1 -2
  314. package/dist/src/components/navigation/StepSelector.js +8 -18
  315. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  316. package/dist/src/components/navigation/StepSelectorModal.d.ts +1 -2
  317. package/dist/src/components/navigation/StepSelectorModal.js +8 -18
  318. package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
  319. package/dist/src/components/pages/Account/Card/MemberCardItem.d.ts +1 -2
  320. package/dist/src/components/pages/Account/Card/MemberCardItem.js +7 -17
  321. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
  322. package/dist/src/components/pages/PageColorComponent.d.ts +1 -2
  323. package/dist/src/components/pages/PageColorComponent.js +7 -17
  324. package/dist/src/components/pages/PageColorComponent.js.map +1 -1
  325. package/dist/src/components/reservation/EmptyReservation.js +7 -17
  326. package/dist/src/components/reservation/EmptyReservation.js.map +1 -1
  327. package/dist/src/components/reservation/ReservationItem.d.ts +1 -3
  328. package/dist/src/components/reservation/ReservationItem.js +10 -20
  329. package/dist/src/components/reservation/ReservationItem.js.map +1 -1
  330. package/dist/src/components/reservation/ReservationList.d.ts +0 -1
  331. package/dist/src/components/reservation/ReservationList.js +2 -2
  332. package/dist/src/components/reservation/ReservationList.js.map +1 -1
  333. package/dist/src/components/steps/DaysSelectedInformer.d.ts +1 -2
  334. package/dist/src/components/steps/DaysSelectedInformer.js +8 -18
  335. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  336. package/dist/src/components/steps/MinimumNightStayPill.d.ts +1 -2
  337. package/dist/src/components/steps/MinimumNightStayPill.js +8 -18
  338. package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
  339. package/dist/src/components/steps/addons/AddonCard.d.ts +1 -2
  340. package/dist/src/components/steps/addons/AddonCard.js +8 -26
  341. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  342. package/dist/src/components/steps/addons/AddonList.d.ts +1 -2
  343. package/dist/src/components/steps/addons/AddonList.js +7 -17
  344. package/dist/src/components/steps/addons/AddonList.js.map +1 -1
  345. package/dist/src/components/steps/addons/AddonsNotFoundBlock.d.ts +1 -2
  346. package/dist/src/components/steps/addons/AddonsNotFoundBlock.js +1 -1
  347. package/dist/src/components/steps/addons/AddonsNotFoundBlock.js.map +1 -1
  348. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +2 -3
  349. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +10 -20
  350. package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
  351. package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.d.ts +1 -2
  352. package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js +7 -17
  353. package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js.map +1 -1
  354. package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.d.ts +2 -3
  355. package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js +7 -17
  356. package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js.map +1 -1
  357. package/dist/src/components/steps/confirmation/AccountDetails.d.ts +1 -2
  358. package/dist/src/components/steps/confirmation/AccountDetails.js +8 -18
  359. package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
  360. package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js +7 -17
  361. package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js.map +1 -1
  362. package/dist/src/components/steps/confirmation/MastercardPaymentMethod.js +7 -17
  363. package/dist/src/components/steps/confirmation/MastercardPaymentMethod.js.map +1 -1
  364. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
  365. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.d.ts +1 -2
  366. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +7 -17
  367. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
  368. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +7 -17
  369. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
  370. package/dist/src/components/steps/confirmation/PaymentInformation.d.ts +1 -2
  371. package/dist/src/components/steps/confirmation/PaymentInformation.js +7 -17
  372. package/dist/src/components/steps/confirmation/PaymentInformation.js.map +1 -1
  373. package/dist/src/components/steps/confirmation/PlanpayLabel.d.ts +1 -2
  374. package/dist/src/components/steps/confirmation/PlanpayLabel.js +7 -17
  375. package/dist/src/components/steps/confirmation/PlanpayLabel.js.map +1 -1
  376. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +7 -17
  377. package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
  378. package/dist/src/components/steps/confirmation/RoomContactDetails.js +11 -18
  379. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  380. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.d.ts +1 -2
  381. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +19 -28
  382. package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
  383. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.d.ts +1 -2
  384. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +8 -18
  385. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  386. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.d.ts +1 -2
  387. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +2 -2
  388. package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
  389. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +7 -17
  390. package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
  391. package/dist/src/components/steps/confirmation/StepConfirmationForm.d.ts +1 -2
  392. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +8 -18
  393. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  394. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.d.ts +1 -2
  395. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +1 -1
  396. package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
  397. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.d.ts +1 -2
  398. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +8 -18
  399. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  400. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.d.ts +1 -2
  401. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +8 -18
  402. package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
  403. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.d.ts +1 -2
  404. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +14 -25
  405. package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
  406. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.d.ts +1 -2
  407. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js +13 -26
  408. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js.map +1 -1
  409. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.d.ts +1 -5
  410. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js +13 -35
  411. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js.map +1 -1
  412. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.d.ts +1 -2
  413. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +8 -18
  414. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  415. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.d.ts +1 -2
  416. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +8 -18
  417. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  418. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.d.ts +1 -2
  419. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +9 -19
  420. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
  421. package/dist/src/components/steps/date/OccupancyWarningBlock.d.ts +1 -2
  422. package/dist/src/components/steps/date/OccupancyWarningBlock.js +1 -1
  423. package/dist/src/components/steps/date/OccupancyWarningBlock.js.map +1 -1
  424. package/dist/src/components/steps/date/PeoplePicker.d.ts +1 -2
  425. package/dist/src/components/steps/date/PeoplePicker.js +10 -20
  426. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  427. package/dist/src/components/steps/date/PeoplePickerRow.d.ts +1 -2
  428. package/dist/src/components/steps/date/PeoplePickerRow.js +9 -19
  429. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  430. package/dist/src/components/steps/date/StepDatePricePerRoom.d.ts +1 -2
  431. package/dist/src/components/steps/date/StepDatePricePerRoom.js +8 -18
  432. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  433. package/dist/src/components/steps/date/StepOneDateRange.d.ts +1 -2
  434. package/dist/src/components/steps/date/StepOneDateRange.js +8 -18
  435. package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
  436. package/dist/src/components/steps/date/StepOneDateRangePicker.d.ts +1 -2
  437. package/dist/src/components/steps/date/StepOneDateRangePicker.js +8 -18
  438. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  439. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.d.ts +1 -2
  440. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +8 -18
  441. package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
  442. package/dist/src/components/steps/date/StepOneNextStepButton.d.ts +1 -2
  443. package/dist/src/components/steps/date/StepOneNextStepButton.js +8 -18
  444. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  445. package/dist/src/components/steps/date/StepOneStatusPeople.d.ts +1 -2
  446. package/dist/src/components/steps/date/StepOneStatusPeople.js +8 -18
  447. package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
  448. package/dist/src/components/steps/hotel/HotelCard.d.ts +1 -2
  449. package/dist/src/components/steps/hotel/HotelCard.js +9 -19
  450. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  451. package/dist/src/components/steps/hotel/HotelCardList.d.ts +1 -2
  452. package/dist/src/components/steps/hotel/HotelCardList.js +1 -1
  453. package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
  454. package/dist/src/components/steps/hotel/HotelCardModal.d.ts +1 -2
  455. package/dist/src/components/steps/hotel/HotelCardModal.js +7 -17
  456. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  457. package/dist/src/components/steps/hotel/HotelInfoPerksRow.d.ts +1 -2
  458. package/dist/src/components/steps/hotel/HotelInfoPerksRow.js +8 -18
  459. package/dist/src/components/steps/hotel/HotelInfoPerksRow.js.map +1 -1
  460. package/dist/src/components/steps/hotel/HotelSearchParameters.d.ts +1 -2
  461. package/dist/src/components/steps/hotel/HotelSearchParameters.js +20 -22
  462. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  463. package/dist/src/components/steps/hotel/NoHotelsAvailable.d.ts +1 -2
  464. package/dist/src/components/steps/hotel/NoHotelsAvailable.js +1 -1
  465. package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
  466. package/dist/src/components/steps/room/AvailableUpgradesModal.js +35 -113
  467. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  468. package/dist/src/components/steps/room/ImageGallerySlider.d.ts +1 -2
  469. package/dist/src/components/steps/room/ImageGallerySlider.js +8 -18
  470. package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
  471. package/dist/src/components/steps/room/InactivityWindow.d.ts +1 -2
  472. package/dist/src/components/steps/room/InactivityWindow.js +7 -17
  473. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  474. package/dist/src/components/steps/room/LargeRoomCard.d.ts +1 -2
  475. package/dist/src/components/steps/room/LargeRoomCard.js +10 -26
  476. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  477. package/dist/src/components/steps/room/NoRoomsFoundBlock.d.ts +1 -2
  478. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +8 -18
  479. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  480. package/dist/src/components/steps/room/RatesNotFoundBlock.d.ts +1 -2
  481. package/dist/src/components/steps/room/RatesNotFoundBlock.js +1 -1
  482. package/dist/src/components/steps/room/RatesNotFoundBlock.js.map +1 -1
  483. package/dist/src/components/steps/room/RoomList.d.ts +1 -2
  484. package/dist/src/components/steps/room/RoomList.js +8 -18
  485. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  486. package/dist/src/components/steps/room/RoomListAlert.js +7 -17
  487. package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
  488. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +8 -18
  489. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  490. package/dist/src/components/steps/room/RoomModal.d.ts +1 -2
  491. package/dist/src/components/steps/room/RoomModal.js +8 -18
  492. package/dist/src/components/steps/room/RoomModal.js.map +1 -1
  493. package/dist/src/components/steps/room/RoomModalPerkRow.d.ts +1 -2
  494. package/dist/src/components/steps/room/RoomModalPerkRow.js +8 -18
  495. package/dist/src/components/steps/room/RoomModalPerkRow.js.map +1 -1
  496. package/dist/src/components/steps/room/StepRoomAlertBlocks.d.ts +1 -2
  497. package/dist/src/components/steps/room/StepRoomAlertBlocks.js +8 -18
  498. package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
  499. package/dist/src/components/steps/room/StepRoomBestRateAlert.d.ts +1 -2
  500. package/dist/src/components/steps/room/StepRoomBestRateAlert.js +8 -18
  501. package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
  502. package/dist/src/components/steps/room/StepRoomErrorForm.d.ts +1 -2
  503. package/dist/src/components/steps/room/StepRoomErrorForm.js +7 -17
  504. package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
  505. package/dist/src/components/steps/room/StepRoomHotelDetails.d.ts +1 -2
  506. package/dist/src/components/steps/room/StepRoomHotelDetails.js +8 -18
  507. package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
  508. package/dist/src/components/steps/room/StepRoomNextStepButton.js +8 -18
  509. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  510. package/dist/src/components/steps/room/StepRoomSortBy.d.ts +1 -2
  511. package/dist/src/components/steps/room/StepRoomSortBy.js +8 -18
  512. package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
  513. package/dist/src/components/steps/room/StepRoomSummaryAndButton.d.ts +1 -2
  514. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +8 -18
  515. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  516. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.d.ts +1 -2
  517. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js +7 -17
  518. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js.map +1 -1
  519. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.d.ts +1 -2
  520. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js +7 -17
  521. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js.map +1 -1
  522. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.d.ts +1 -2
  523. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js +7 -17
  524. package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js.map +1 -1
  525. package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.d.ts +2 -3
  526. package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js +8 -19
  527. package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js.map +1 -1
  528. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.d.ts +1 -2
  529. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js +7 -17
  530. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js.map +1 -1
  531. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.d.ts +1 -2
  532. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js +20 -20
  533. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js.map +1 -1
  534. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.d.ts +1 -2
  535. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js +7 -17
  536. package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js.map +1 -1
  537. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +1 -2
  538. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +1 -1
  539. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
  540. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +1 -2
  541. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +1 -1
  542. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
  543. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.d.ts +1 -2
  544. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.js +1 -1
  545. package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.js.map +1 -1
  546. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.d.ts +1 -2
  547. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +8 -18
  548. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  549. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.d.ts +1 -2
  550. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +23 -23
  551. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  552. package/dist/src/components/steps/room/roomDetails/RoomDetails.d.ts +1 -2
  553. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +8 -18
  554. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  555. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.d.ts +1 -2
  556. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +9 -18
  557. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  558. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.d.ts +1 -2
  559. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +9 -18
  560. package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
  561. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.d.ts +1 -2
  562. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +8 -18
  563. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  564. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +7 -17
  565. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  566. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.d.ts +1 -2
  567. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +8 -18
  568. package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
  569. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.d.ts +1 -2
  570. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +8 -18
  571. package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
  572. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.d.ts +2 -3
  573. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +10 -20
  574. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  575. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.d.ts +1 -2
  576. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js +8 -18
  577. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js.map +1 -1
  578. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.d.ts +2 -3
  579. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +15 -24
  580. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  581. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.d.ts +1 -2
  582. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +9 -19
  583. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  584. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.d.ts +1 -2
  585. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +7 -17
  586. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
  587. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.d.ts +1 -2
  588. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +8 -18
  589. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  590. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.d.ts +1 -2
  591. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +8 -18
  592. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  593. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.d.ts +1 -2
  594. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +8 -18
  595. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
  596. package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.d.ts +1 -2
  597. package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js +12 -26
  598. package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js.map +1 -1
  599. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.d.ts +1 -2
  600. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +8 -18
  601. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  602. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.d.ts +1 -2
  603. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +8 -18
  604. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  605. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +1 -2
  606. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +8 -18
  607. package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
  608. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +1 -2
  609. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +8 -18
  610. package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
  611. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +1 -2
  612. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +8 -18
  613. package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
  614. package/dist/src/components/summary/BEMapWidget.d.ts +2 -0
  615. package/dist/src/components/summary/BEMapWidget.js +7 -17
  616. package/dist/src/components/summary/BEMapWidget.js.map +1 -1
  617. package/dist/src/components/summary/BEMobileSummary.d.ts +1 -2
  618. package/dist/src/components/summary/BEMobileSummary.js +8 -18
  619. package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
  620. package/dist/src/components/summary/BEMobileSummaryModal.d.ts +1 -2
  621. package/dist/src/components/summary/BEMobileSummaryModal.js +19 -30
  622. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  623. package/dist/src/components/summary/BESummary.d.ts +1 -2
  624. package/dist/src/components/summary/BESummary.js +14 -24
  625. package/dist/src/components/summary/BESummary.js.map +1 -1
  626. package/dist/src/components/summary/BESummaryAddonRow.d.ts +1 -2
  627. package/dist/src/components/summary/BESummaryAddonRow.js +16 -30
  628. package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
  629. package/dist/src/components/summary/BESummaryPerkBlock.d.ts +1 -2
  630. package/dist/src/components/summary/BESummaryPerkBlock.js +9 -19
  631. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  632. package/dist/src/components/summary/BESummaryPrivacyPolicy.d.ts +1 -2
  633. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +8 -18
  634. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  635. package/dist/src/components/summary/BESummaryRoomRow.d.ts +1 -2
  636. package/dist/src/components/summary/BESummaryRoomRow.js +9 -19
  637. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  638. package/dist/src/components/summary/TransportDistanceFromHotelBlock.d.ts +1 -2
  639. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +8 -18
  640. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  641. package/dist/src/containers/PrivateRoute.js.map +1 -1
  642. package/dist/src/contexts/BasketContext/BasketContext.d.ts +1 -0
  643. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +4 -5
  644. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  645. package/dist/src/contexts/BasketContext/BasketContextWrapper.d.ts +1 -1
  646. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +169 -248
  647. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  648. package/dist/src/contexts/BookingEngineContext/BookingEngineContext.d.ts +1 -0
  649. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.d.ts +1 -1
  650. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +9 -18
  651. package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
  652. package/dist/src/contexts/CompanyContext/CompanyContext.d.ts +1 -0
  653. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.d.ts +2 -2
  654. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +14 -24
  655. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  656. package/dist/src/contexts/ConfirmationFormContext.d.ts +1 -1
  657. package/dist/src/contexts/ConfirmationFormContext.js +9 -19
  658. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  659. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.d.ts +1 -0
  660. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.d.ts +1 -2
  661. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js.map +1 -1
  662. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +25 -47
  663. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  664. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.d.ts +1 -2
  665. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js +7 -17
  666. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js.map +1 -1
  667. package/dist/src/contexts/ErrorContext.d.ts +1 -1
  668. package/dist/src/contexts/ErrorContext.js +9 -19
  669. package/dist/src/contexts/ErrorContext.js.map +1 -1
  670. package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.d.ts +1 -2
  671. package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js +2 -1
  672. package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js.map +1 -1
  673. package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.d.ts +1 -2
  674. package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js +9 -18
  675. package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js.map +1 -1
  676. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.d.ts +1 -0
  677. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.d.ts +1 -2
  678. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +20 -25
  679. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  680. package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
  681. package/dist/src/contexts/HotelOverridesContext.js +7 -17
  682. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  683. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +2 -1
  684. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +1 -1
  685. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -1
  686. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +14 -40
  687. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
  688. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +1 -0
  689. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +7 -17
  690. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
  691. package/dist/src/contexts/ModalContext.d.ts +1 -1
  692. package/dist/src/contexts/ModalContext.js +9 -18
  693. package/dist/src/contexts/ModalContext.js.map +1 -1
  694. package/dist/src/contexts/NotificationContext.d.ts +1 -1
  695. package/dist/src/contexts/NotificationContext.js +9 -19
  696. package/dist/src/contexts/NotificationContext.js.map +1 -1
  697. package/dist/src/engines/BaseEngine.js +1 -1
  698. package/dist/src/engines/BaseEngine.js.map +1 -1
  699. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +4 -1
  700. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
  701. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.d.ts +1 -2
  702. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +3 -1
  703. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
  704. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +7 -17
  705. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
  706. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.d.ts +1 -2
  707. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +8 -18
  708. package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
  709. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +19 -21
  710. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +34 -30
  711. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  712. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js.map +1 -1
  713. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.d.ts +1 -2
  714. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js +8 -18
  715. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js.map +1 -1
  716. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.d.ts +1 -2
  717. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +8 -17
  718. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  719. package/dist/src/events/RoomstayEventManager.js +1 -1
  720. package/dist/src/events/RoomstayEventManager.js.map +1 -1
  721. package/dist/src/events/actions/PlacedBookingEvent.d.ts +1 -1
  722. package/dist/src/events/actions/PlacedBookingEvent.js.map +1 -1
  723. package/dist/src/events/views/CommittedBookingEvent.d.ts +1 -1
  724. package/dist/src/events/views/CommittedBookingEvent.js.map +1 -1
  725. package/dist/src/events/views/RolledBackBookingEvent.d.ts +1 -1
  726. package/dist/src/events/views/RolledBackBookingEvent.js.map +1 -1
  727. package/dist/src/handlers/BasketContextErrorHandler.d.ts +1 -1
  728. package/dist/src/handlers/BasketContextErrorHandler.js.map +1 -1
  729. package/dist/src/handlers/payment/AdyenPaymentHandler.js +7 -17
  730. package/dist/src/handlers/payment/AdyenPaymentHandler.js.map +1 -1
  731. package/dist/src/handlers/payment/PlanpayPaymentHandler.js +7 -17
  732. package/dist/src/handlers/payment/PlanpayPaymentHandler.js.map +1 -1
  733. package/dist/src/handlers/payment/TrueRewardsPaymentHandler.js +5 -8
  734. package/dist/src/handlers/payment/TrueRewardsPaymentHandler.js.map +1 -1
  735. package/dist/src/handlers/payment/VGSMemberPaymentHandler.js.map +1 -1
  736. package/dist/src/handlers/payment/VGSPaymentHandler.js +9 -19
  737. package/dist/src/handlers/payment/VGSPaymentHandler.js.map +1 -1
  738. package/dist/src/hooks/AutoFocusOnSelect.d.ts +2 -23
  739. package/dist/src/hooks/AutoFocusOnSelect.js +3 -3
  740. package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
  741. package/dist/src/hooks/BodyClickHook.js.map +1 -1
  742. package/dist/src/hooks/CombineState.d.ts +1 -1
  743. package/dist/src/hooks/ConfirmationQuery.d.ts +0 -4
  744. package/dist/src/hooks/ConfirmationQuery.js +3 -12
  745. package/dist/src/hooks/ConfirmationQuery.js.map +1 -1
  746. package/dist/src/hooks/Currency.js.map +1 -1
  747. package/dist/src/hooks/CurrentHotelHook.js.map +1 -1
  748. package/dist/src/hooks/ElementSortHook.js +7 -17
  749. package/dist/src/hooks/ElementSortHook.js.map +1 -1
  750. package/dist/src/hooks/HistoryConsistentPush.js +2 -1
  751. package/dist/src/hooks/HistoryConsistentPush.js.map +1 -1
  752. package/dist/src/hooks/KeyboardControlOnSelect.d.ts +2 -2
  753. package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -1
  754. package/dist/src/hooks/LoggedInUserHook.js.map +1 -1
  755. package/dist/src/hooks/Planpay.d.ts +1 -1
  756. package/dist/src/hooks/Query.js +3 -2
  757. package/dist/src/hooks/Query.js.map +1 -1
  758. package/dist/src/hooks/RoomRateAvailabilityListFromApi.js +1 -0
  759. package/dist/src/hooks/RoomRateAvailabilityListFromApi.js.map +1 -1
  760. package/dist/src/hooks/UpdateQueryParameters.js +2 -1
  761. package/dist/src/hooks/UpdateQueryParameters.js.map +1 -1
  762. package/dist/src/hooks/VGSHooks.d.ts +1 -0
  763. package/dist/src/hooks/VGSHooks.js.map +1 -1
  764. package/dist/src/hooks/useCalendarNightStay.js +3 -3
  765. package/dist/src/hooks/useCalendarNightStay.js.map +1 -1
  766. package/dist/src/hooks/useNextStepAction.d.ts +1 -2
  767. package/dist/src/hooks/useNextStepAction.js +11 -21
  768. package/dist/src/hooks/useNextStepAction.js.map +1 -1
  769. package/dist/src/hooks/usePlanpayRawPrice.js.map +1 -1
  770. package/dist/src/hooks/useRateDetails.js.map +1 -1
  771. package/dist/src/hooks/useSearchScopeHook.d.ts +1 -1
  772. package/dist/src/hooks/useSearchScopeHook.js.map +1 -1
  773. package/dist/src/icons/Check.d.ts +1 -2
  774. package/dist/src/index.d.ts +1 -1
  775. package/dist/src/index.js.map +1 -1
  776. package/dist/src/mockApi/AddonAPI.js.map +1 -1
  777. package/dist/src/mockApi/MemberAPI.js +7 -17
  778. package/dist/src/mockApi/MemberAPI.js.map +1 -1
  779. package/dist/src/mockApi/MockAPI.js +5 -5
  780. package/dist/src/mockApi/MockAPI.js.map +1 -1
  781. package/dist/src/mockApi/ReservationAPI.d.ts +1 -1
  782. package/dist/src/mockApi/ReservationAPI.js +8 -18
  783. package/dist/src/mockApi/ReservationAPI.js.map +1 -1
  784. package/dist/src/models/Addon/Addon.d.ts +24 -0
  785. package/dist/src/models/Addon/Addon.js.map +1 -1
  786. package/dist/src/models/Api/HotelDTO.d.ts +2 -3
  787. package/dist/src/models/Api/HotelDTO.js +1 -1
  788. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  789. package/dist/src/models/Api/IEventReservation.d.ts +0 -5
  790. package/dist/src/models/Api/IEventReservation.js.map +1 -1
  791. package/dist/src/models/Api/ReservationsDTO.d.ts +80 -0
  792. package/dist/src/models/Api/ReservationsDTO.js +3 -0
  793. package/dist/src/models/Api/ReservationsDTO.js.map +1 -0
  794. package/dist/src/models/AppQueryParameters.js +1 -1
  795. package/dist/src/models/AppQueryParameters.js.map +1 -1
  796. package/dist/src/models/BasketAddonRow.js +5 -3
  797. package/dist/src/models/BasketAddonRow.js.map +1 -1
  798. package/dist/src/models/BasketRow.d.ts +9 -63
  799. package/dist/src/models/BasketRow.js +37 -77
  800. package/dist/src/models/BasketRow.js.map +1 -1
  801. package/dist/src/models/BookingWizard/BookingWizardTypes.d.ts +4 -0
  802. package/dist/src/models/BookingWizard/BookingWizardTypes.js.map +1 -1
  803. package/dist/src/models/Client/Hotel/Company.d.ts +0 -2
  804. package/dist/src/models/Client/Hotel/Company.js.map +1 -1
  805. package/dist/src/models/Client/Hotel/DistanceUnitType.types.js +1 -1
  806. package/dist/src/models/Client/Hotel/DistanceUnitType.types.js.map +1 -1
  807. package/dist/src/models/Client/Hotel/Hotel.d.ts +2 -3
  808. package/dist/src/models/Client/Hotel/Hotel.js +1 -1
  809. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  810. package/dist/src/models/Client/Hotel/HotelDataSource.types.js +1 -1
  811. package/dist/src/models/Client/Hotel/HotelDataSource.types.js.map +1 -1
  812. package/dist/src/models/Client/Hotel/WeekdayStartsOn.types.js +1 -1
  813. package/dist/src/models/Client/Hotel/WeekdayStartsOn.types.js.map +1 -1
  814. package/dist/src/models/Confirmation.js +2 -2
  815. package/dist/src/models/Confirmation.js.map +1 -1
  816. package/dist/src/models/CountryCodesAndNumbers.js +3 -3
  817. package/dist/src/models/CountryCodesAndNumbers.js.map +1 -1
  818. package/dist/src/models/Fee.d.ts +9 -1
  819. package/dist/src/models/Fee.js +5 -4
  820. package/dist/src/models/Fee.js.map +1 -1
  821. package/dist/src/models/PaymentCard.js +1 -1
  822. package/dist/src/models/PaymentCard.js.map +1 -1
  823. package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
  824. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  825. package/dist/src/models/Room/Room.js.map +1 -1
  826. package/dist/src/models/Room/RoomRate.d.ts +1 -12
  827. package/dist/src/models/Room/RoomRate.js +1 -29
  828. package/dist/src/models/Room/RoomRate.js.map +1 -1
  829. package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
  830. package/dist/src/models/Room/RoomRateNight.js.map +1 -1
  831. package/dist/src/models/RoomstaySession.d.ts +3 -1
  832. package/dist/src/models/RoomstaySession.js.map +1 -1
  833. package/dist/src/pages/account/AccountHome/AccountHomePage.d.ts +1 -2
  834. package/dist/src/pages/account/AccountHome/AccountHomePage.js +8 -18
  835. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
  836. package/dist/src/pages/account/AccountOutlet.d.ts +1 -1
  837. package/dist/src/pages/account/AccountRouter.d.ts +1 -2
  838. package/dist/src/pages/account/AccountRoutes.d.ts +0 -5
  839. package/dist/src/pages/account/AccountRoutes.js +2 -8
  840. package/dist/src/pages/account/AccountRoutes.js.map +1 -1
  841. package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.d.ts +1 -2
  842. package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js +7 -17
  843. package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js.map +1 -1
  844. package/dist/src/pages/account/Details/AccountDetailsCardsPage.d.ts +1 -2
  845. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +7 -17
  846. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
  847. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +7 -17
  848. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
  849. package/dist/src/pages/account/Details/AccountDetailsProfilePage.d.ts +1 -2
  850. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +7 -17
  851. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
  852. package/dist/src/pages/account/Help/AccountHelpPage.d.ts +1 -2
  853. package/dist/src/pages/account/Help/AccountHelpPage.js +7 -17
  854. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
  855. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.d.ts +1 -2
  856. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +13 -38
  857. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  858. package/dist/src/pages/account/Reservations/AccountReservationsPage.d.ts +1 -2
  859. package/dist/src/pages/account/Reservations/AccountReservationsPage.js +7 -7
  860. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
  861. package/dist/src/pages/findReservation/FindReservation.d.ts +1 -2
  862. package/dist/src/pages/findReservation/FindReservation.js +9 -19
  863. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  864. package/dist/src/pages/findReservation/FindReservationResults.d.ts +1 -2
  865. package/dist/src/pages/findReservation/FindReservationResults.js +11 -21
  866. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  867. package/dist/src/pages/findReservation/ReservationRow.d.ts +2 -3
  868. package/dist/src/pages/findReservation/ReservationRow.js +8 -18
  869. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  870. package/dist/src/pages/findReservation/ReservationRowModal.d.ts +2 -3
  871. package/dist/src/pages/findReservation/ReservationRowModal.js +8 -18
  872. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  873. package/dist/src/pages/hotel/HotelInfo.d.ts +1 -2
  874. package/dist/src/pages/hotel/HotelInfo.js +10 -20
  875. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  876. package/dist/src/pages/hotel/HotelInfoPlaceholder.d.ts +1 -2
  877. package/dist/src/pages/hotel/HotelInfoPlaceholder.js +1 -1
  878. package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
  879. package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +1 -1
  880. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  881. package/dist/src/pages/steps/StepAddon/StepAddonComponent.d.ts +1 -2
  882. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +8 -18
  883. package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
  884. package/dist/src/pages/steps/StepAddon/StepAddonLoader.d.ts +1 -2
  885. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +7 -17
  886. package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
  887. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  888. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.d.ts +1 -2
  889. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +7 -17
  890. package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
  891. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.d.ts +1 -2
  892. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +8 -18
  893. package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
  894. package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
  895. package/dist/src/pages/steps/StepDate/StepDate.d.ts +1 -1
  896. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  897. package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +1 -2
  898. package/dist/src/pages/steps/StepDate/StepDateComponent.js +7 -17
  899. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  900. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoom.js.map +1 -1
  901. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.d.ts +1 -2
  902. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js +7 -20
  903. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js.map +1 -1
  904. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.d.ts +1 -2
  905. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js +8 -18
  906. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js.map +1 -1
  907. package/dist/src/pages/steps/StepGuide.d.ts +1 -1
  908. package/dist/src/pages/steps/StepGuide.js +8 -18
  909. package/dist/src/pages/steps/StepGuide.js.map +1 -1
  910. package/dist/src/pages/steps/StepHotel/StepHotel.d.ts +1 -1
  911. package/dist/src/pages/steps/StepHotel/StepHotelComponent.d.ts +1 -2
  912. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +7 -17
  913. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  914. package/dist/src/pages/steps/StepHotel/StepHotelLoader.d.ts +1 -2
  915. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +7 -17
  916. package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
  917. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  918. package/dist/src/pages/steps/StepRoom/StepRoomComponent.d.ts +1 -2
  919. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +7 -17
  920. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  921. package/dist/src/pages/steps/StepRoom/StepRoomFilters.js +7 -17
  922. package/dist/src/pages/steps/StepRoom/StepRoomFilters.js.map +1 -1
  923. package/dist/src/pages/steps/StepRoom/StepRoomLoader.d.ts +1 -2
  924. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +8 -18
  925. package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
  926. package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
  927. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  928. package/dist/src/pages/steps/StepThanks/StepThanksComponent.d.ts +1 -2
  929. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +10 -25
  930. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  931. package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
  932. package/dist/src/providers/CurrencyProvider.js +1 -1
  933. package/dist/src/providers/CurrencyProvider.js.map +1 -1
  934. package/dist/src/providers/DIProvider.d.ts +1 -2
  935. package/dist/src/providers/DIProvider.js +3 -2
  936. package/dist/src/providers/DIProvider.js.map +1 -1
  937. package/dist/src/providers/DistanceProvider.js.map +1 -1
  938. package/dist/src/providers/FeatureProvider.js +1 -3
  939. package/dist/src/providers/FeatureProvider.js.map +1 -1
  940. package/dist/src/providers/FilterProvider.d.ts +1 -1
  941. package/dist/src/providers/FilterProvider.js +3 -3
  942. package/dist/src/providers/FilterProvider.js.map +1 -1
  943. package/dist/src/providers/ImageProvider.js +1 -1
  944. package/dist/src/providers/ImageProvider.js.map +1 -1
  945. package/dist/src/providers/LanguageProvider.js +1 -1
  946. package/dist/src/providers/LanguageProvider.js.map +1 -1
  947. package/dist/src/providers/PromotionProvider.d.ts +1 -1
  948. package/dist/src/providers/PromotionProvider.js.map +1 -1
  949. package/dist/src/providers/RatePillProvider.js.map +1 -1
  950. package/dist/src/providers/RoomSortProvider.js +2 -2
  951. package/dist/src/providers/RoomSortProvider.js.map +1 -1
  952. package/dist/src/providers/RoomstayThemeEngine.js +8 -18
  953. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  954. package/dist/src/providers/feature/DerbysoftClickTrackingFeature.js.map +1 -1
  955. package/dist/src/providers/feature/Feature.d.ts +2 -0
  956. package/dist/src/providers/feature/Feature.js +4 -0
  957. package/dist/src/providers/feature/Feature.js.map +1 -1
  958. package/dist/src/providers/feature/GuestTitleFieldFeature.js.map +1 -1
  959. package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
  960. package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -1
  961. package/dist/src/providers/feature/RoomUpsellFeature.d.ts +0 -10
  962. package/dist/src/providers/feature/RoomUpsellFeature.js +0 -10
  963. package/dist/src/providers/feature/RoomUpsellFeature.js.map +1 -1
  964. package/dist/src/providers/storage/SessionProvider.js +2 -0
  965. package/dist/src/providers/storage/SessionProvider.js.map +1 -1
  966. package/dist/src/providers/storage/StorageProvider.d.ts +1 -1
  967. package/dist/src/providers/storage/StorageProvider.js +7 -17
  968. package/dist/src/providers/storage/StorageProvider.js.map +1 -1
  969. package/dist/src/reducers/BasketReducer.js.map +1 -1
  970. package/dist/src/routes/NaturallyProgressedStepRoute.d.ts +1 -2
  971. package/dist/src/stories/BookingWizard.stories.d.ts +3 -3
  972. package/dist/src/stories/Card.stories.d.ts +5 -3
  973. package/dist/src/stories/CardTypeSelect.stories.d.ts +1 -2
  974. package/dist/src/stories/Checkbox.stories.d.ts +1 -2
  975. package/dist/src/stories/ConfirmationModal.stories.d.ts +1 -2
  976. package/dist/src/stories/ConfirmationModal.stories.js +7 -17
  977. package/dist/src/stories/ConfirmationModal.stories.js.map +1 -1
  978. package/dist/src/stories/DateRangePicker.stories.d.ts +4 -5
  979. package/dist/src/stories/DateRangePicker.stories.js +7 -17
  980. package/dist/src/stories/DateRangePicker.stories.js.map +1 -1
  981. package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +1 -2
  982. package/dist/src/stories/ErrorModal.stories.d.ts +1 -2
  983. package/dist/src/stories/ErrorModal.stories.js +7 -17
  984. package/dist/src/stories/ErrorModal.stories.js.map +1 -1
  985. package/dist/src/stories/EventCarousel.stories.d.ts +3 -4
  986. package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +3 -4
  987. package/dist/src/stories/FloatingDateRangePicker.stories.js +7 -17
  988. package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -1
  989. package/dist/src/stories/ForwardedSelect.stories.d.ts +1 -2
  990. package/dist/src/stories/Icon.stories.js +7 -17
  991. package/dist/src/stories/Icon.stories.js.map +1 -1
  992. package/dist/src/stories/IconNavCard.stories.d.ts +16 -7
  993. package/dist/src/stories/IconText.stories.js +7 -17
  994. package/dist/src/stories/IconText.stories.js.map +1 -1
  995. package/dist/src/stories/NumberIncrement.stories.d.ts +1 -2
  996. package/dist/src/stories/NumberIncrement.stories.js +7 -17
  997. package/dist/src/stories/NumberIncrement.stories.js.map +1 -1
  998. package/dist/src/stories/PasswordBox.stories.d.ts +1 -2
  999. package/dist/src/stories/PaymentCard.stories.d.ts +2 -4
  1000. package/dist/src/stories/PaymentCardInput.stories.d.ts +1 -2
  1001. package/dist/src/stories/PlanpayButton.stories.d.ts +1 -2
  1002. package/dist/src/stories/RadioButton.stories.d.ts +1 -2
  1003. package/dist/src/stories/RadioButtonGroup.stories.d.ts +5 -5
  1004. package/dist/src/stories/RadioButtonGroup.stories.js +7 -17
  1005. package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
  1006. package/dist/src/stories/Select.stories.d.ts +6 -5
  1007. package/dist/src/stories/Select.stories.js +7 -17
  1008. package/dist/src/stories/Select.stories.js.map +1 -1
  1009. package/dist/src/stories/SimpleModal.stories.d.ts +1 -2
  1010. package/dist/src/stories/SimpleModal.stories.js +7 -17
  1011. package/dist/src/stories/SimpleModal.stories.js.map +1 -1
  1012. package/dist/src/stories/Slider.stories.d.ts +8 -4
  1013. package/dist/src/stories/Slider.stories.js +7 -17
  1014. package/dist/src/stories/Slider.stories.js.map +1 -1
  1015. package/dist/src/stories/TabbedModal.stories.d.ts +1 -2
  1016. package/dist/src/stories/TabbedModal.stories.js +7 -17
  1017. package/dist/src/stories/TabbedModal.stories.js.map +1 -1
  1018. package/dist/src/stories/Tabs.stories.d.ts +2 -3
  1019. package/dist/src/stories/Text.stories.d.ts +1 -2
  1020. package/dist/src/stories/TextArea.stories.d.ts +1 -2
  1021. package/dist/src/stories/TextBox.stories.d.ts +1 -2
  1022. package/dist/src/translations/Translation.d.ts +2 -0
  1023. package/dist/src/translations/Translation.js +4 -2
  1024. package/dist/src/translations/Translation.js.map +1 -1
  1025. package/dist/src/translations/languages/en-gb.js +2 -0
  1026. package/dist/src/translations/languages/en-gb.js.map +1 -1
  1027. package/dist/src/util/Analytics/Analytics.d.ts +10 -36
  1028. package/dist/src/util/Analytics/Analytics.js +0 -30
  1029. package/dist/src/util/Analytics/Analytics.js.map +1 -1
  1030. package/dist/src/util/Analytics/GoogleAnalytics4.d.ts +3 -10
  1031. package/dist/src/util/Analytics/GoogleAnalytics4.js +4 -21
  1032. package/dist/src/util/Analytics/GoogleAnalytics4.js.map +1 -1
  1033. package/dist/src/util/Analytics/UniversalAnalytics.d.ts +23 -5
  1034. package/dist/src/util/Analytics/UniversalAnalytics.js +5 -24
  1035. package/dist/src/util/Analytics/UniversalAnalytics.js.map +1 -1
  1036. package/dist/src/util/AsyncAuth.js +7 -17
  1037. package/dist/src/util/AsyncAuth.js.map +1 -1
  1038. package/dist/src/util/CalendarHelper.js +1 -1
  1039. package/dist/src/util/CalendarHelper.js.map +1 -1
  1040. package/dist/src/util/Color.d.ts +1 -1
  1041. package/dist/src/util/Color.js +1 -1
  1042. package/dist/src/util/Color.js.map +1 -1
  1043. package/dist/src/util/CurrencyHelper.js.map +1 -1
  1044. package/dist/src/util/DataLayer.d.ts +3 -9
  1045. package/dist/src/util/DataLayer.js +26 -61
  1046. package/dist/src/util/DataLayer.js.map +1 -1
  1047. package/dist/src/util/Debounce.js +3 -2
  1048. package/dist/src/util/Debounce.js.map +1 -1
  1049. package/dist/src/util/DefaultValueManager.js +1 -1
  1050. package/dist/src/util/DefaultValueManager.js.map +1 -1
  1051. package/dist/src/util/DerbysoftPixel.d.ts +1 -1
  1052. package/dist/src/util/DerbysoftPixel.js +2 -2
  1053. package/dist/src/util/DerbysoftPixel.js.map +1 -1
  1054. package/dist/src/util/EventsHelper.d.ts +2 -2
  1055. package/dist/src/util/EventsHelper.js.map +1 -1
  1056. package/dist/src/util/HotelPerkHelper.js +7 -17
  1057. package/dist/src/util/HotelPerkHelper.js.map +1 -1
  1058. package/dist/src/util/ObjectHelper.d.ts +1 -1
  1059. package/dist/src/util/ObjectHelper.js.map +1 -1
  1060. package/dist/src/util/PaymentCardHelper.js.map +1 -1
  1061. package/dist/src/util/RouteManager.js +1 -1
  1062. package/dist/src/util/RouteManager.js.map +1 -1
  1063. package/dist/src/util/StepManager.js +1 -1
  1064. package/dist/src/util/StepManager.js.map +1 -1
  1065. package/dist/src/util/StringHelper.js.map +1 -1
  1066. package/dist/src/util/TextAlignment.js +1 -1
  1067. package/dist/src/util/TextAlignment.js.map +1 -1
  1068. package/dist/src/util/TimeHelper.js.map +1 -1
  1069. package/dist/src/util/TotalCalculator.d.ts +24 -0
  1070. package/dist/src/util/TotalCalculator.js +157 -0
  1071. package/dist/src/util/TotalCalculator.js.map +1 -0
  1072. package/dist/test.bundle.js +1 -1
  1073. package/dist/tests/offline/entry/config/hotelSpecDefault.d.ts +1 -2
  1074. package/dist/tests/offline/entry/config/hotelSpecDefault.js +1 -0
  1075. package/dist/tests/offline/entry/config/hotelSpecDefault.js.map +1 -1
  1076. package/dist/vendors.bundle.js +1 -1
  1077. package/package.json +4 -12
  1078. package/dist/4.bundle.js +0 -1
  1079. package/dist/984.bundle.js +0 -1
  1080. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.d.ts +0 -2
  1081. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js +0 -94
  1082. package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js.map +0 -1
  1083. package/dist/src/components/steps/room/LargeRateCard.d.ts +0 -11
  1084. package/dist/src/components/steps/room/LargeRateCard.js +0 -120
  1085. package/dist/src/components/steps/room/LargeRateCard.js.map +0 -1
  1086. package/dist/src/providers/feature/GiftCardFeature.d.ts +0 -13
  1087. package/dist/src/providers/feature/GiftCardFeature.js +0 -14
  1088. package/dist/src/providers/feature/GiftCardFeature.js.map +0 -1
@@ -1,12 +1,9 @@
1
- import { ReservationDTO, ReservationsDTO } from '@roomstay/core';
1
+ import ReservationsDTO, { ReservationDTO } from '../../models/Api/ReservationsDTO';
2
2
  import BasketAddonRow from '../../models/BasketAddonRow';
3
3
  import BasketRow from '../../models/BasketRow';
4
4
  import { ConfigCompany } from '../../models/Client/Hotel/Company';
5
5
  import { Hotel } from '../../models/Client/Hotel/Hotel';
6
6
  import { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';
7
- export interface IAnalyticMessageEvent extends Record<string, any> {
8
- event: string;
9
- }
10
7
  /**
11
8
  * Abstract class used to transform roomstay data into either GA4 or UA analytics events
12
9
  *
@@ -15,43 +12,20 @@ export interface IAnalyticMessageEvent extends Record<string, any> {
15
12
  export declare abstract class Analytics {
16
13
  protected hotel?: Hotel;
17
14
  protected company?: ConfigCompany;
18
- protected userId?: string;
19
15
  protected currency: {
20
16
  original: string;
21
17
  current: string;
22
18
  };
23
- protected itemListName: string;
24
19
  initialise(company?: ConfigCompany, hotel?: Hotel): void;
25
- setUserId(id?: string): void;
26
- setItemListName(itemListName?: string): void;
27
- private getUserData;
28
- /**
29
- * Merges the current user's data (user_id) into the provided input object.
30
- * Ensures the resulting object always includes user_id when available.
31
- */
32
- withUserData: <T extends IAnalyticMessageEvent>(input: T) => T & Partial<{
33
- user_id: string;
34
- }>;
35
20
  updateCurrency(current: string, original: string): void;
36
21
  /** Assemble the message for a room impression post based on impressions added */
37
- abstract generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]): IAnalyticMessageEvent;
38
- abstract generateProductClickMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;
39
- abstract generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number): IAnalyticMessageEvent;
40
- abstract generateAddToCartMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;
41
- abstract generateAddonsAddToCartMessageObject(product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>): IAnalyticMessageEvent;
42
- abstract generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): IAnalyticMessageEvent | null;
43
- abstract generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;
44
- abstract generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]): IAnalyticMessageEvent;
45
- abstract generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): IAnalyticMessageEvent[];
46
- abstract generateRefundMessageObject(reservation: ReservationDTO): IAnalyticMessageEvent;
47
- generateRefundMessageObjectByReservationNumber(reservationNumber: string): {
48
- event: string;
49
- ecommerce: {
50
- refund: {
51
- actionField: {
52
- id: string;
53
- };
54
- };
55
- };
56
- };
22
+ abstract generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]): any;
23
+ abstract generateProductClickMessageObject(product: GenericAnalyticsAccommodation): any;
24
+ abstract generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number): any;
25
+ abstract generateAddToCartMessageObject(product: GenericAnalyticsAccommodation): any;
26
+ abstract generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): any;
27
+ abstract generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation): any;
28
+ abstract generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]): any;
29
+ abstract generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): any[];
30
+ abstract generateRefundMessageObject(reservation: ReservationDTO): any;
57
31
  }
@@ -9,44 +9,14 @@ exports.Analytics = void 0;
9
9
  class Analytics {
10
10
  constructor() {
11
11
  this.currency = { original: '', current: '' };
12
- this.itemListName = '';
13
- /**
14
- * Merges the current user's data (user_id) into the provided input object.
15
- * Ensures the resulting object always includes user_id when available.
16
- */
17
- this.withUserData = (input) => {
18
- return Object.assign(Object.assign({}, input), (('ecommerce' in input || input.event === 'login') && Object.assign({}, this.getUserData())));
19
- };
20
12
  }
21
13
  initialise(company, hotel) {
22
14
  this.company = company;
23
15
  this.hotel = hotel;
24
16
  }
25
- setUserId(id) {
26
- this.userId = id;
27
- }
28
- setItemListName(itemListName) {
29
- this.itemListName = itemListName || '';
30
- }
31
- // Returns an object containing the current user_id if available.
32
- getUserData() {
33
- return this.userId ? { user_id: this.userId } : {};
34
- }
35
17
  updateCurrency(current, original) {
36
18
  this.currency = { current, original };
37
19
  }
38
- generateRefundMessageObjectByReservationNumber(reservationNumber) {
39
- return {
40
- event: 'refund',
41
- ecommerce: {
42
- refund: {
43
- actionField: {
44
- id: reservationNumber,
45
- },
46
- },
47
- },
48
- };
49
- }
50
20
  }
51
21
  exports.Analytics = Analytics;
52
22
  //# sourceMappingURL=Analytics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Analytics.js","sourceRoot":"/","sources":["src/util/Analytics/Analytics.ts"],"names":[],"mappings":";;;AAWA;;;;GAIG;AACH,MAAsB,SAAS;IAA/B;QAKc,aAAQ,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACzC,iBAAY,GAAG,EAAE,CAAC;QAoB5B;;;WAGG;QACI,iBAAY,GAAG,CAAkC,KAAQ,EAAoC,EAAE;YAClG,uCACO,KAAK,GACL,CAAC,CAAC,WAAW,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,sBAC9C,IAAI,CAAC,WAAW,EAAE,CACxB,CAAC,EACJ;QACN,CAAC,CAAC;IAoCN,CAAC;IAjEU,UAAU,CAAC,OAAuB,EAAE,KAAa;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEM,SAAS,CAAC,EAAW;QACxB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAEM,eAAe,CAAC,YAAqB;QACxC,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACzD,WAAW;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,CAAC;IAeM,cAAc,CAAC,OAAe,EAAE,QAAgB;QACnD,IAAI,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAoBM,8CAA8C,CAAC,iBAAyB;QAC3E,OAAO;YACH,KAAK,EAAE,QAAQ;YACf,SAAS,EAAE;gBACP,MAAM,EAAE;oBACJ,WAAW,EAAE;wBACT,EAAE,EAAE,iBAAiB;qBACxB;iBACJ;aACJ;SACJ,CAAC;IACN,CAAC;CACJ;AAzED,8BAyEC","sourcesContent":["import { ReservationDTO, ReservationsDTO } from '@roomstay/core';\n\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { ConfigCompany } from '@/models/Client/Hotel/Company';\nimport { Hotel } from '@/models/Client/Hotel/Hotel';\n\nimport { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';\nexport interface IAnalyticMessageEvent extends Record<string, any> {\n event: string;\n}\n/**\n * Abstract class used to transform roomstay data into either GA4 or UA analytics events\n *\n * All logging still happens from the {@link DataLayer} class.\n */\nexport abstract class Analytics {\n protected hotel?: Hotel;\n protected company?: ConfigCompany;\n protected userId?: string; // logged user id\n\n protected currency = { original: '', current: '' };\n protected itemListName = '';\n\n public initialise(company?: ConfigCompany, hotel?: Hotel) {\n this.company = company;\n this.hotel = hotel;\n }\n\n public setUserId(id?: string) {\n this.userId = id;\n }\n\n public setItemListName(itemListName?: string) {\n this.itemListName = itemListName || '';\n }\n\n // Returns an object containing the current user_id if available.\n private getUserData(): Partial<{ user_id: string }> {\n return this.userId ? { user_id: this.userId } : {};\n }\n\n /**\n * Merges the current user's data (user_id) into the provided input object.\n * Ensures the resulting object always includes user_id when available.\n */\n public withUserData = <T extends IAnalyticMessageEvent>(input: T): T & Partial<{ user_id: string }> => {\n return {\n ...input,\n ...(('ecommerce' in input || input.event === 'login') && {\n ...this.getUserData(),\n }),\n };\n };\n\n public updateCurrency(current: string, original: string) {\n this.currency = { current, original };\n }\n\n /** Assemble the message for a room impression post based on impressions added */\n public abstract generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]): IAnalyticMessageEvent;\n\n public abstract generateProductClickMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;\n public abstract generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number): IAnalyticMessageEvent;\n\n public abstract generateAddToCartMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;\n public abstract generateAddonsAddToCartMessageObject(\n product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>\n ): IAnalyticMessageEvent;\n public abstract generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): IAnalyticMessageEvent | null;\n\n public abstract generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation): IAnalyticMessageEvent;\n\n public abstract generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]): IAnalyticMessageEvent;\n public abstract generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): IAnalyticMessageEvent[];\n public abstract generateRefundMessageObject(reservation: ReservationDTO): IAnalyticMessageEvent;\n\n public generateRefundMessageObjectByReservationNumber(reservationNumber: string) {\n return {\n event: 'refund',\n ecommerce: {\n refund: {\n actionField: {\n id: reservationNumber,\n },\n },\n },\n };\n }\n}\n"]}
1
+ {"version":3,"file":"Analytics.js","sourceRoot":"/","sources":["src/util/Analytics/Analytics.ts"],"names":[],"mappings":";;;AAQA;;;;GAIG;AACH,MAAsB,SAAS;IAA/B;QAIc,aAAQ,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAyBvD,CAAC;IAvBU,UAAU,CAAC,OAAuB,EAAE,KAAa;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEM,cAAc,CAAC,OAAe,EAAE,QAAgB;QACnD,IAAI,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC1C,CAAC;CAgBJ;AA7BD,8BA6BC","sourcesContent":["import ReservationsDTO, { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { ConfigCompany } from '@/models/Client/Hotel/Company';\nimport { Hotel } from '@/models/Client/Hotel/Hotel';\n\nimport { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';\n\n/**\n * Abstract class used to transform roomstay data into either GA4 or UA analytics events\n *\n * All logging still happens from the {@link DataLayer} class.\n */\nexport abstract class Analytics {\n protected hotel?: Hotel;\n protected company?: ConfigCompany;\n\n protected currency = { original: '', current: '' };\n\n public initialise(company?: ConfigCompany, hotel?: Hotel) {\n this.company = company;\n this.hotel = hotel;\n }\n\n public updateCurrency(current: string, original: string) {\n this.currency = { current, original };\n }\n\n /** Assemble the message for a room impression post based on impressions added */\n public abstract generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]): any;\n\n public abstract generateProductClickMessageObject(product: GenericAnalyticsAccommodation): any;\n public abstract generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number): any;\n\n public abstract generateAddToCartMessageObject(product: GenericAnalyticsAccommodation): any;\n public abstract generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): any;\n\n public abstract generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation): any;\n\n public abstract generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]): any;\n public abstract generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): any[];\n public abstract generateRefundMessageObject(reservation: ReservationDTO): any;\n}\n"]}
@@ -1,8 +1,8 @@
1
- import { ReservationDTO, ReservationsDTO } from '@roomstay/core';
1
+ import ReservationsDTO, { ReservationDTO } from '../../models/Api/ReservationsDTO';
2
2
  import BasketAddonRow from '../../models/BasketAddonRow';
3
3
  import BasketRow from '../../models/BasketRow';
4
- import { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';
5
- import { Analytics, IAnalyticMessageEvent } from './Analytics';
4
+ import { DateRange, GenericAnalyticsAccommodation as GenericAnalyticsAccommodation } from '../DataLayer';
5
+ import { Analytics } from './Analytics';
6
6
  interface GA4Item {
7
7
  item_name: string;
8
8
  item_id: string;
@@ -58,7 +58,6 @@ declare class GoogleAnalytics4 extends Analytics {
58
58
  items: GA4Item[];
59
59
  };
60
60
  };
61
- generateAddonsAddToCartMessageObject(product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>): IAnalyticMessageEvent;
62
61
  generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): {
63
62
  event: string;
64
63
  ecommerce: {
@@ -96,12 +95,6 @@ declare class GoogleAnalytics4 extends Analytics {
96
95
  page_type: string;
97
96
  items: GA4Item[];
98
97
  };
99
- user_data: {
100
- email: string;
101
- phone_number: string | undefined;
102
- first_name: string;
103
- last_name: string;
104
- };
105
98
  }[];
106
99
  generateRefundMessageObject(reservation: ReservationDTO): {
107
100
  event: string;
@@ -39,7 +39,7 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
39
39
  item_category2: (rate === null || rate === void 0 ? void 0 : rate.name) || undefined,
40
40
  item_category3: room.name,
41
41
  item_category5: ((_e = this.hotel) === null || _e === void 0 ? void 0 : _e.name) + ' Room',
42
- item_list_name: this.itemListName,
42
+ item_list_name: 'BE List',
43
43
  coupon,
44
44
  discount,
45
45
  index: listPosition || 0,
@@ -64,7 +64,7 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
64
64
  item_category2: undefined,
65
65
  item_category3: room.getAddon().name,
66
66
  item_category5: ((_d = this.hotel) === null || _d === void 0 ? void 0 : _d.name) + ' Addon',
67
- item_list_name: this.itemListName,
67
+ item_list_name: 'BE List',
68
68
  coupon: undefined,
69
69
  discount: 0,
70
70
  index: listPosition || 0,
@@ -92,7 +92,7 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
92
92
  event: 'select_item',
93
93
  ecommerce: {
94
94
  currency: this.currency.original,
95
- item_list_name: this.itemListName,
95
+ item_list_name: 'BE List',
96
96
  items: [this.generateRoomRateProductInfo(product.room, product.dateRange, undefined, undefined, product.quantity, product.promoCode)],
97
97
  },
98
98
  };
@@ -119,15 +119,6 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
119
119
  },
120
120
  };
121
121
  }
122
- generateAddonsAddToCartMessageObject(product) {
123
- return {
124
- event: 'add_to_cart',
125
- ecommerce: {
126
- currencyCode: this.currency.original,
127
- items: [this.generateAddonProductInfo(product.basketAddonRow)],
128
- },
129
- };
130
- }
131
122
  generateUpsellConfirmedMessageObject(oldProduct, newProduct) {
132
123
  return {
133
124
  event: 'upsell_confirmed',
@@ -171,7 +162,6 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
171
162
  };
172
163
  }
173
164
  generateRoomPurchaseMessageObject(basketRows, addonRows, reservations) {
174
- var _a;
175
165
  const productItems = basketRows.map((row, index) => {
176
166
  var _a;
177
167
  return this.generateRoomRateProductInfo(row.getRoom(), { to: row.getStartDate(), from: row.getEndDate() }, (_a = row.getRate()) !== null && _a !== void 0 ? _a : undefined, index, 1, row.getPromoCode(), {
@@ -181,7 +171,6 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
181
171
  addonRows === null || addonRows === void 0 ? void 0 : addonRows.forEach((row, index) => {
182
172
  productItems.push(this.generateAddonProductInfo(row, index));
183
173
  });
184
- const guest = (_a = reservations.reservations[0]) === null || _a === void 0 ? void 0 : _a.guest;
185
174
  return [
186
175
  {
187
176
  event: 'purchase',
@@ -195,12 +184,6 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
195
184
  page_type: 'conversion',
196
185
  items: productItems,
197
186
  },
198
- user_data: {
199
- email: guest === null || guest === void 0 ? void 0 : guest.email,
200
- phone_number: (guest === null || guest === void 0 ? void 0 : guest.phone) ? `+${guest.phone}` : undefined,
201
- first_name: guest === null || guest === void 0 ? void 0 : guest.firstName,
202
- last_name: guest === null || guest === void 0 ? void 0 : guest.lastName,
203
- },
204
187
  },
205
188
  ];
206
189
  }
@@ -229,7 +212,7 @@ class GoogleAnalytics4 extends Analytics_1.Analytics {
229
212
  item_category2: reservation.rate,
230
213
  item_category3: reservation.roomType,
231
214
  item_category5: ((_d = this.hotel) === null || _d === void 0 ? void 0 : _d.name) + ' Room',
232
- item_list_name: this.itemListName,
215
+ item_list_name: 'BE List',
233
216
  coupon: undefined,
234
217
  discount,
235
218
  index: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleAnalytics4.js","sourceRoot":"/","sources":["src/util/Analytics/GoogleAnalytics4.ts"],"names":[],"mappings":"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","sourcesContent":["import { ReservationDTO, ReservationsDTO } from '@roomstay/core';\nimport dayjs from 'dayjs';\n\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { Room } from '@/models/Room/Room';\nimport { RoomRate } from '@/models/Room/RoomRate';\n\nimport { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';\nimport { Analytics, IAnalyticMessageEvent } from './Analytics';\n\ninterface GA4Item {\n item_name: string;\n item_id: string;\n item_brand: string;\n item_category: string;\n item_category2?: string;\n item_category3?: string;\n item_category5?: string;\n item_list_name: string;\n coupon?: string;\n discount?: number;\n index: number;\n price: number;\n quantity: number;\n selected_dates?: string;\n upgrade?: string;\n upgrade_price_dif?: number;\n}\n\nconst DATALAYER_DATE_FORMAT = 'YYYY-M-D';\n\nclass GoogleAnalytics4 extends Analytics {\n private formatDateRange(dateRange?: DateRange): string {\n if (!dateRange) return '';\n return `ci:${dateRange.from.format('YYYY-MM-DD')} co:${dateRange.to.format('YYYY-MM-DD')}`;\n }\n\n private generateRoomRateProductInfo(\n room: Room,\n dateRange: DateRange,\n rate?: RoomRate,\n listPosition?: number,\n quantity?: number,\n coupon?: string,\n extra?: { upsell?: { originalRoomRate?: RoomRate } }\n ): GA4Item {\n const providerId = this.hotel?.providerHotelID;\n\n // For some reason GA4 seems to require pricing to be displayed as a whole, not per night.\n const price = rate ? rate.getTotalPrice() : room.getLowestTotalPrice();\n const discount = rate ? rate.getTotalDiscount() : 0;\n const idParts = [providerId, room.code];\n\n if (rate) {\n idParts.push(rate.code);\n }\n\n let upgrade = undefined;\n let upgrade_price_dif = undefined;\n\n if (extra?.upsell?.originalRoomRate) {\n const oldRate = extra.upsell.originalRoomRate;\n\n upgrade = `${room.name} to ${oldRate.name}`;\n const oldPrice = oldRate ? oldRate.getTotalPrice() : room.getLowestTotalPrice();\n upgrade_price_dif = Math.abs(price - oldPrice); // We're assuming that old is always cheaper, since Upsell is trying to make you spend more\n }\n\n return {\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join(' - '),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'Room',\n item_category2: rate?.name || undefined,\n item_category3: room.name,\n item_category5: this.hotel?.name + ' Room',\n item_list_name: this.itemListName,\n coupon,\n discount,\n index: listPosition || 0,\n price,\n quantity: quantity || 1,\n selected_dates: this.formatDateRange({ from: dateRange.from, to: dateRange.to }) ?? undefined,\n upgrade,\n upgrade_price_dif,\n };\n }\n\n private generateAddonProductInfo(room: BasketAddonRow, listPosition?: number): GA4Item {\n const providerId = this.hotel?.providerHotelID;\n\n const price = room.getTotalPrice();\n\n const idParts = [providerId, room.getAddon().code];\n\n return {\n // This is still accommodation as it's part of a greater category.\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join(' - '),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'addon',\n item_category2: undefined,\n item_category3: room.getAddon().name,\n item_category5: this.hotel?.name + ' Addon',\n item_list_name: this.itemListName,\n coupon: undefined,\n discount: 0,\n index: listPosition || 0,\n price,\n quantity: room.getQuantity() || 1,\n selected_dates: undefined,\n upgrade: undefined,\n upgrade_price_dif: undefined,\n };\n }\n\n public generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]) {\n return {\n event: 'view_item_list',\n currency: this.currency.original,\n ecommerce: {\n items: impressions.map((item, index) => {\n const { room, rate, quantity, promoCode, dateRange } = item;\n return this.generateRoomRateProductInfo(room, dateRange, rate, index, quantity, promoCode);\n }),\n },\n };\n }\n\n public generateProductClickMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'select_item',\n ecommerce: {\n currency: this.currency.original,\n item_list_name: this.itemListName,\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, undefined, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number | undefined) {\n return {\n event: 'select_dates',\n ecommerce: {\n currency: this.currency.original,\n arrival_date: dateRange.from.format(DATALAYER_DATE_FORMAT),\n departure_date: dateRange.to.format(DATALAYER_DATE_FORMAT),\n adult_count: adults,\n child_count: children,\n infant_count: infants || 0,\n },\n };\n }\n\n public generateAddToCartMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'add_to_cart',\n ecommerce: {\n currency: this.currency.original,\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, product.rate, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateAddonsAddToCartMessageObject(product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>): IAnalyticMessageEvent {\n return {\n event: 'add_to_cart',\n ecommerce: {\n currencyCode: this.currency.original,\n items: [this.generateAddonProductInfo(product.basketAddonRow)],\n },\n };\n }\n\n public generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation) {\n return {\n event: 'upsell_confirmed',\n ecommerce: {\n currency: this.currency.original,\n items: {\n old: this.generateRoomRateProductInfo(oldProduct.room, oldProduct.dateRange, oldProduct.rate, undefined, oldProduct.quantity, oldProduct.promoCode),\n new: this.generateRoomRateProductInfo(newProduct.room, newProduct.dateRange, newProduct.rate, undefined, newProduct.quantity, newProduct.promoCode, {\n upsell: { originalRoomRate: oldProduct.rate },\n }),\n },\n },\n };\n }\n\n public generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'upsell_cancelled',\n ecommerce: {\n currency: this.currency.original,\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, product.rate, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]) {\n const productItems = basketRows.map((row, index) => {\n return this.generateRoomRateProductInfo(row.getRoom(), { to: row.getStartDate(), from: row.getEndDate() }, row.getRate() ?? undefined, index, 1, row.getPromoCode(), {\n upsell: { originalRoomRate: row.getPreUpsellRoomRate() },\n });\n });\n\n addonRows?.forEach((row, index) => {\n productItems.push(this.generateAddonProductInfo(row, index));\n });\n\n return {\n event: 'begin_checkout',\n ecommerce: {\n currency: this.currency.original,\n items: productItems,\n page_type: 'conversionintent',\n },\n };\n }\n\n public generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO) {\n const productItems = basketRows.map((row, index) => {\n return this.generateRoomRateProductInfo(row.getRoom(), { to: row.getStartDate(), from: row.getEndDate() }, row.getRate() ?? undefined, index, 1, row.getPromoCode(), {\n upsell: { originalRoomRate: row.getPreUpsellRoomRate() },\n });\n });\n\n addonRows?.forEach((row, index) => {\n productItems.push(this.generateAddonProductInfo(row, index));\n });\n const guest = reservations.reservations[0]?.guest;\n\n return [\n {\n event: 'purchase',\n ecommerce: {\n currency: this.currency.original,\n transaction_id: reservations.itineraryNumber,\n value: reservations.total,\n tax: 0,\n coupon: undefined,\n payment_type: reservations.reservations[0].paymentMethod,\n page_type: 'conversion',\n\n items: productItems,\n },\n user_data: {\n email: guest?.email,\n phone_number: guest?.phone ? `+${guest.phone}` : undefined,\n first_name: guest?.firstName,\n last_name: guest?.lastName,\n },\n },\n ];\n }\n\n public generateRefundMessageObject(reservation: ReservationDTO) {\n const providerId = this.hotel?.providerHotelID;\n\n const nightKeys = Object.keys(reservation.nights);\n\n const startDate = dayjs(nightKeys[0]);\n const endDate = dayjs(nightKeys[nightKeys.length - 1]);\n\n const discount = nightKeys.reduce((acc, key) => {\n return acc + Number(reservation.nights[key].discount);\n });\n\n const idParts = [providerId, reservation.roomCode, reservation.rate];\n\n return {\n event: 'refund',\n ecommerce: {\n currency: this.currency.original,\n transaction_id: reservation.reservationNumber,\n value: reservation.total.afterTax,\n items: [\n {\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join('-'),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'Room',\n item_category2: reservation.rate,\n item_category3: reservation.roomType,\n item_category5: this.hotel?.name + ' Room',\n item_list_name: this.itemListName,\n coupon: undefined,\n discount,\n index: 0,\n price: reservation.total.afterTax,\n quantity: 1,\n selected_dates: this.formatDateRange({ from: startDate, to: endDate }) ?? undefined,\n upgrade: undefined,\n upgrade_price_dif: undefined,\n },\n ],\n },\n };\n }\n}\n\nconst ga4 = new GoogleAnalytics4();\n\nexport { ga4 as GoogleAnalytics4 };\n"]}
1
+ {"version":3,"file":"GoogleAnalytics4.js","sourceRoot":"/","sources":["src/util/Analytics/GoogleAnalytics4.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAS1B,2CAAwC;AAqBxC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEzC,MAAM,gBAAiB,SAAQ,qBAAS;IAC5B,eAAe,CAAC,SAAqB;QACzC,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAC1B,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IAC/F,CAAC;IAEO,2BAA2B,CAC/B,IAAU,EACV,SAAoB,EACpB,IAAe,EACf,YAAqB,EACrB,QAAiB,EACjB,MAAe,EACf,KAAoD;;QAEpD,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,eAAe,CAAC;QAE/C,0FAA0F;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpD,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,IAAI,EAAE;YACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;QAED,IAAI,OAAO,GAAG,SAAS,CAAC;QACxB,IAAI,iBAAiB,GAAG,SAAS,CAAC;QAElC,IAAI,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,gBAAgB,EAAE;YACjC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAE9C,OAAO,GAAG,GAAG,IAAI,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAChF,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,2FAA2F;SAC9I;QAED,OAAO;YACH,SAAS,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,IAAG,gBAAgB;YACvD,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5B,UAAU,EAAE,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YACtE,aAAa,EAAE,MAAM;YACrB,cAAc,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,KAAI,SAAS;YACvC,cAAc,EAAE,IAAI,CAAC,IAAI;YACzB,cAAc,EAAE,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,IAAG,OAAO;YAC1C,cAAc,EAAE,SAAS;YACzB,MAAM;YACN,QAAQ;YACR,KAAK,EAAE,YAAY,IAAI,CAAC;YACxB,KAAK;YACL,QAAQ,EAAE,QAAQ,IAAI,CAAC;YACvB,cAAc,EAAE,MAAA,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,mCAAI,SAAS;YAC7F,OAAO;YACP,iBAAiB;SACpB,CAAC;IACN,CAAC;IAEO,wBAAwB,CAAC,IAAoB,EAAE,YAAqB;;QACxE,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,eAAe,CAAC;QAE/C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAEnC,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;QAEnD,OAAO;YACH,kEAAkE;YAClE,SAAS,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,IAAG,gBAAgB;YACvD,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5B,UAAU,EAAE,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YACtE,aAAa,EAAE,OAAO;YACtB,cAAc,EAAE,SAAS;YACzB,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI;YACpC,cAAc,EAAE,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,IAAG,QAAQ;YAC3C,cAAc,EAAE,SAAS;YACzB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE,YAAY,IAAI,CAAC;YACxB,KAAK;YACL,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC;YACjC,cAAc,EAAE,SAAS;YACzB,OAAO,EAAE,SAAS;YAClB,iBAAiB,EAAE,SAAS;SAC/B,CAAC;IACN,CAAC;IAEM,mCAAmC,CAAC,WAA4C;QACnF,OAAO;YACH,KAAK,EAAE,gBAAgB;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAChC,SAAS,EAAE;gBACP,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACnC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;oBAC5D,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;gBAC/F,CAAC,CAAC;aACL;SACJ,CAAC;IACN,CAAC;IAEM,iCAAiC,CAAC,OAAsC;QAC3E,OAAO;YACH,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,cAAc,EAAE,SAAS;gBACzB,KAAK,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;aACxI;SACJ,CAAC;IACN,CAAC;IAEM,kCAAkC,CAAC,SAAoB,EAAE,MAAc,EAAE,QAAgB,EAAE,OAA4B;QAC1H,OAAO;YACH,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;gBAC1D,cAAc,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC;gBAC1D,WAAW,EAAE,MAAM;gBACnB,WAAW,EAAE,QAAQ;gBACrB,YAAY,EAAE,OAAO,IAAI,CAAC;aAC7B;SACJ,CAAC;IACN,CAAC;IAEM,8BAA8B,CAAC,OAAsC;QACxE,OAAO;YACH,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,KAAK,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;aAC3I;SACJ,CAAC;IACN,CAAC;IAEM,oCAAoC,CAAC,UAAyC,EAAE,UAAyC;QAC5H,OAAO;YACH,KAAK,EAAE,kBAAkB;YACzB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,KAAK,EAAE;oBACH,GAAG,EAAE,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC;oBACnJ,GAAG,EAAE,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,EAAE;wBAChJ,MAAM,EAAE,EAAE,gBAAgB,EAAE,UAAU,CAAC,IAAI,EAAE;qBAChD,CAAC;iBACL;aACJ;SACJ,CAAC;IACN,CAAC;IAEM,oCAAoC,CAAC,OAAsC;QAC9E,OAAO;YACH,KAAK,EAAE,kBAAkB;YACzB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,KAAK,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;aAC3I;SACJ,CAAC;IACN,CAAC;IAEM,iCAAiC,CAAC,UAAuB,EAAE,SAA2B;QACzF,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;;YAC/C,OAAO,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAA,GAAG,CAAC,OAAO,EAAE,mCAAI,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE;gBACjK,MAAM,EAAE,EAAE,gBAAgB,EAAE,GAAG,CAAC,oBAAoB,EAAE,EAAE;aAC3D,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,OAAO;YACH,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,KAAK,EAAE,YAAY;gBACnB,SAAS,EAAE,kBAAkB;aAChC;SACJ,CAAC;IACN,CAAC;IAEM,iCAAiC,CAAC,UAAuB,EAAE,SAA2B,EAAE,YAA6B;QACxH,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;;YAC/C,OAAO,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAA,GAAG,CAAC,OAAO,EAAE,mCAAI,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE;gBACjK,MAAM,EAAE,EAAE,gBAAgB,EAAE,GAAG,CAAC,oBAAoB,EAAE,EAAE;aAC3D,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,OAAO;YACH;gBACI,KAAK,EAAE,UAAU;gBACjB,SAAS,EAAE;oBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;oBAChC,cAAc,EAAE,YAAY,CAAC,eAAe;oBAC5C,KAAK,EAAE,YAAY,CAAC,KAAK;oBACzB,GAAG,EAAE,CAAC;oBACN,MAAM,EAAE,SAAS;oBACjB,YAAY,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa;oBACxD,SAAS,EAAE,YAAY;oBAEvB,KAAK,EAAE,YAAY;iBACtB;aACJ;SACJ,CAAC;IACN,CAAC;IAEM,2BAA2B,CAAC,WAA2B;;QAC1D,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,eAAe,CAAC;QAE/C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,SAAS,GAAG,IAAA,eAAK,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAA,eAAK,EAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC3C,OAAO,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAErE,OAAO;YACH,KAAK,EAAE,QAAQ;YACf,SAAS,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,cAAc,EAAE,WAAW,CAAC,iBAAiB;gBAC7C,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ;gBACjC,KAAK,EAAE;oBACH;wBACI,SAAS,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,IAAG,gBAAgB;wBACvD,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC1B,UAAU,EAAE,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;wBACtE,aAAa,EAAE,MAAM;wBACrB,cAAc,EAAE,WAAW,CAAC,IAAI;wBAChC,cAAc,EAAE,WAAW,CAAC,QAAQ;wBACpC,cAAc,EAAE,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,IAAG,OAAO;wBAC1C,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,SAAS;wBACjB,QAAQ;wBACR,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ;wBACjC,QAAQ,EAAE,CAAC;wBACX,cAAc,EAAE,MAAA,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,mCAAI,SAAS;wBACnF,OAAO,EAAE,SAAS;wBAClB,iBAAiB,EAAE,SAAS;qBAC/B;iBACJ;aACJ;SACJ,CAAC;IACN,CAAC;CACJ;AAED,MAAM,GAAG,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEnB,+BAAgB","sourcesContent":["import dayjs from 'dayjs';\n\nimport ReservationsDTO, { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { Room } from '@/models/Room/Room';\nimport { RoomRate } from '@/models/Room/RoomRate';\n\nimport { DateRange, GenericAnalyticsAccommodation as GenericAnalyticsAccommodation } from '../DataLayer';\nimport { Analytics } from './Analytics';\n\ninterface GA4Item {\n item_name: string;\n item_id: string;\n item_brand: string;\n item_category: string;\n item_category2?: string;\n item_category3?: string;\n item_category5?: string;\n item_list_name: string;\n coupon?: string;\n discount?: number;\n index: number;\n price: number;\n quantity: number;\n selected_dates?: string;\n upgrade?: string;\n upgrade_price_dif?: number;\n}\n\nconst DATALAYER_DATE_FORMAT = 'YYYY-M-D';\n\nclass GoogleAnalytics4 extends Analytics {\n private formatDateRange(dateRange?: DateRange): string {\n if (!dateRange) return '';\n return `ci:${dateRange.from.format('YYYY-MM-DD')} co:${dateRange.to.format('YYYY-MM-DD')}`;\n }\n\n private generateRoomRateProductInfo(\n room: Room,\n dateRange: DateRange,\n rate?: RoomRate,\n listPosition?: number,\n quantity?: number,\n coupon?: string,\n extra?: { upsell?: { originalRoomRate?: RoomRate } }\n ): GA4Item {\n const providerId = this.hotel?.providerHotelID;\n\n // For some reason GA4 seems to require pricing to be displayed as a whole, not per night.\n const price = rate ? rate.getTotalPrice() : room.getLowestTotalPrice();\n const discount = rate ? rate.getTotalDiscount() : 0;\n\n const idParts = [providerId, room.code];\n if (rate) {\n idParts.push(rate.code);\n }\n\n let upgrade = undefined;\n let upgrade_price_dif = undefined;\n\n if (extra?.upsell?.originalRoomRate) {\n const oldRate = extra.upsell.originalRoomRate;\n\n upgrade = `${room.name} to ${oldRate.name}`;\n const oldPrice = oldRate ? oldRate.getTotalPrice() : room.getLowestTotalPrice();\n upgrade_price_dif = Math.abs(price - oldPrice); // We're assuming that old is always cheaper, since Upsell is trying to make you spend more\n }\n\n return {\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join(' - '),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'Room',\n item_category2: rate?.name || undefined,\n item_category3: room.name,\n item_category5: this.hotel?.name + ' Room',\n item_list_name: 'BE List',\n coupon,\n discount,\n index: listPosition || 0,\n price,\n quantity: quantity || 1,\n selected_dates: this.formatDateRange({ from: dateRange.from, to: dateRange.to }) ?? undefined,\n upgrade,\n upgrade_price_dif,\n };\n }\n\n private generateAddonProductInfo(room: BasketAddonRow, listPosition?: number): GA4Item {\n const providerId = this.hotel?.providerHotelID;\n\n const price = room.getTotalPrice();\n\n const idParts = [providerId, room.getAddon().code];\n\n return {\n // This is still accommodation as it's part of a greater category.\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join(' - '),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'addon',\n item_category2: undefined,\n item_category3: room.getAddon().name,\n item_category5: this.hotel?.name + ' Addon',\n item_list_name: 'BE List',\n coupon: undefined,\n discount: 0,\n index: listPosition || 0,\n price,\n quantity: room.getQuantity() || 1,\n selected_dates: undefined,\n upgrade: undefined,\n upgrade_price_dif: undefined,\n };\n }\n\n public generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]) {\n return {\n event: 'view_item_list',\n currency: this.currency.original,\n ecommerce: {\n items: impressions.map((item, index) => {\n const { room, rate, quantity, promoCode, dateRange } = item;\n return this.generateRoomRateProductInfo(room, dateRange, rate, index, quantity, promoCode);\n }),\n },\n };\n }\n\n public generateProductClickMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'select_item',\n ecommerce: {\n currency: this.currency.original,\n item_list_name: 'BE List',\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, undefined, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number | undefined) {\n return {\n event: 'select_dates',\n ecommerce: {\n currency: this.currency.original,\n arrival_date: dateRange.from.format(DATALAYER_DATE_FORMAT),\n departure_date: dateRange.to.format(DATALAYER_DATE_FORMAT),\n adult_count: adults,\n child_count: children,\n infant_count: infants || 0,\n },\n };\n }\n\n public generateAddToCartMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'add_to_cart',\n ecommerce: {\n currency: this.currency.original,\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, product.rate, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation) {\n return {\n event: 'upsell_confirmed',\n ecommerce: {\n currency: this.currency.original,\n items: {\n old: this.generateRoomRateProductInfo(oldProduct.room, oldProduct.dateRange, oldProduct.rate, undefined, oldProduct.quantity, oldProduct.promoCode),\n new: this.generateRoomRateProductInfo(newProduct.room, newProduct.dateRange, newProduct.rate, undefined, newProduct.quantity, newProduct.promoCode, {\n upsell: { originalRoomRate: oldProduct.rate },\n }),\n },\n },\n };\n }\n\n public generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation) {\n return {\n event: 'upsell_cancelled',\n ecommerce: {\n currency: this.currency.original,\n items: [this.generateRoomRateProductInfo(product.room, product.dateRange, product.rate, undefined, product.quantity, product.promoCode)],\n },\n };\n }\n\n public generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]) {\n const productItems = basketRows.map((row, index) => {\n return this.generateRoomRateProductInfo(row.getRoom(), { to: row.getStartDate(), from: row.getEndDate() }, row.getRate() ?? undefined, index, 1, row.getPromoCode(), {\n upsell: { originalRoomRate: row.getPreUpsellRoomRate() },\n });\n });\n\n addonRows?.forEach((row, index) => {\n productItems.push(this.generateAddonProductInfo(row, index));\n });\n\n return {\n event: 'begin_checkout',\n ecommerce: {\n currency: this.currency.original,\n items: productItems,\n page_type: 'conversionintent',\n },\n };\n }\n\n public generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO) {\n const productItems = basketRows.map((row, index) => {\n return this.generateRoomRateProductInfo(row.getRoom(), { to: row.getStartDate(), from: row.getEndDate() }, row.getRate() ?? undefined, index, 1, row.getPromoCode(), {\n upsell: { originalRoomRate: row.getPreUpsellRoomRate() },\n });\n });\n\n addonRows?.forEach((row, index) => {\n productItems.push(this.generateAddonProductInfo(row, index));\n });\n\n return [\n {\n event: 'purchase',\n ecommerce: {\n currency: this.currency.original,\n transaction_id: reservations.itineraryNumber,\n value: reservations.total,\n tax: 0,\n coupon: undefined,\n payment_type: reservations.reservations[0].paymentMethod,\n page_type: 'conversion',\n\n items: productItems,\n },\n },\n ];\n }\n\n public generateRefundMessageObject(reservation: ReservationDTO) {\n const providerId = this.hotel?.providerHotelID;\n\n const nightKeys = Object.keys(reservation.nights);\n\n const startDate = dayjs(nightKeys[0]);\n const endDate = dayjs(nightKeys[nightKeys.length - 1]);\n\n const discount = nightKeys.reduce((acc, key) => {\n return acc + Number(reservation.nights[key].discount);\n });\n\n const idParts = [providerId, reservation.roomCode, reservation.rate];\n\n return {\n event: 'refund',\n ecommerce: {\n currency: this.currency.original,\n transaction_id: reservation.reservationNumber,\n value: reservation.total.afterTax,\n items: [\n {\n item_name: this.company?.brandSuffix + ' Accommodation',\n item_id: idParts.join('-'),\n item_brand: [this.hotel?.name, providerId].filter(Boolean).join(' - '),\n item_category: 'Room',\n item_category2: reservation.rate,\n item_category3: reservation.roomType,\n item_category5: this.hotel?.name + ' Room',\n item_list_name: 'BE List',\n coupon: undefined,\n discount,\n index: 0,\n price: reservation.total.afterTax,\n quantity: 1,\n selected_dates: this.formatDateRange({ from: startDate, to: endDate }) ?? undefined,\n upgrade: undefined,\n upgrade_price_dif: undefined,\n },\n ],\n },\n };\n }\n}\n\nconst ga4 = new GoogleAnalytics4();\n\nexport { ga4 as GoogleAnalytics4 };\n"]}
@@ -1,8 +1,8 @@
1
- import { ReservationDTO, ReservationsDTO } from '@roomstay/core';
1
+ import ReservationsDTO, { ReservationDTO } from '../../models/Api/ReservationsDTO';
2
2
  import BasketAddonRow from '../../models/BasketAddonRow';
3
3
  import BasketRow from '../../models/BasketRow';
4
4
  import { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';
5
- import { Analytics, IAnalyticMessageEvent } from './Analytics';
5
+ import { Analytics } from './Analytics';
6
6
  declare class UniversalAnalytics extends Analytics {
7
7
  private getProductInfo;
8
8
  private generateAddonProductInfo;
@@ -43,7 +43,6 @@ declare class UniversalAnalytics extends Analytics {
43
43
  EndDate: string;
44
44
  };
45
45
  };
46
- generateAddonsAddToCartMessageObject(product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>): IAnalyticMessageEvent;
47
46
  generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation): {
48
47
  event: string;
49
48
  priceDifference: number;
@@ -73,7 +72,27 @@ declare class UniversalAnalytics extends Analytics {
73
72
  PageType: string;
74
73
  };
75
74
  };
76
- generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): IAnalyticMessageEvent[];
75
+ generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO): ({
76
+ event: string;
77
+ ecommerce: {
78
+ checkoutUpsell?: any;
79
+ currencyCode: string;
80
+ purchase: {
81
+ actionField: {
82
+ id: string;
83
+ revenue: number;
84
+ tax: number;
85
+ coupon: string;
86
+ };
87
+ products: Product[];
88
+ };
89
+ StartDate: string;
90
+ EndDate: string;
91
+ BookingDate: string;
92
+ PageType: string;
93
+ paymentType: import("@roomstay/core").EBookingPaymentMethod | undefined;
94
+ };
95
+ } | undefined)[];
77
96
  generateRefundMessageObject(reservation: ReservationDTO): any;
78
97
  }
79
98
  declare const ua: UniversalAnalytics;
@@ -84,7 +103,6 @@ type Product = {
84
103
  price: number;
85
104
  brand: string;
86
105
  category: string;
87
- category2: 'Addons' | 'Rooms';
88
106
  variant?: string;
89
107
  list?: string;
90
108
  position?: number;
@@ -24,13 +24,12 @@ class UniversalAnalytics extends Analytics_1.Analytics {
24
24
  price: price,
25
25
  brand: [(_b = this.hotel) === null || _b === void 0 ? void 0 : _b.name, providerId, (_c = this.company) === null || _c === void 0 ? void 0 : _c.brandSuffix].filter(Boolean).join(' - '),
26
26
  category: room.name,
27
- category2: 'Rooms',
28
27
  };
29
28
  if (rate) {
30
29
  product.variant = rate.name;
31
30
  }
32
31
  if (listPosition !== undefined) {
33
- product.list = this.itemListName;
32
+ product.list = 'BE List';
34
33
  product.position = listPosition;
35
34
  }
36
35
  if (quantity !== undefined) {
@@ -47,7 +46,6 @@ class UniversalAnalytics extends Analytics_1.Analytics {
47
46
  price: addonRow.getTotalPrice(),
48
47
  brand: [(_a = this.hotel) === null || _a === void 0 ? void 0 : _a.name, (_b = this.hotel) === null || _b === void 0 ? void 0 : _b.providerHotelID, (_c = this.company) === null || _c === void 0 ? void 0 : _c.brandSuffix].filter(Boolean).join(' - '),
49
48
  category: addon.category,
50
- category2: 'Addons',
51
49
  quantity: addonRow.getTotalQuantity(),
52
50
  };
53
51
  }
@@ -101,19 +99,6 @@ class UniversalAnalytics extends Analytics_1.Analytics {
101
99
  },
102
100
  };
103
101
  }
104
- generateAddonsAddToCartMessageObject(product) {
105
- return {
106
- event: 'addToCart',
107
- ecommerce: {
108
- currencyCode: this.currency.original,
109
- add: {
110
- products: [this.generateAddonProductInfo(product.basketAddonRow)],
111
- },
112
- StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),
113
- EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),
114
- },
115
- };
116
- }
117
102
  generateUpsellConfirmedMessageObject(oldProduct, newProduct) {
118
103
  const newRate = newProduct.rate;
119
104
  const oldRate = oldProduct.rate;
@@ -169,8 +154,7 @@ class UniversalAnalytics extends Analytics_1.Analytics {
169
154
  }
170
155
  generateRoomPurchaseMessageObject(basketRows, addonRows, reservations) {
171
156
  let i = 0;
172
- return basketRows
173
- .map((row) => {
157
+ return basketRows.map((row) => {
174
158
  var _a;
175
159
  const products = [this.getProductInfo(row.getRoom(), row.getRate(), undefined, row.getNumberOfDays())];
176
160
  if (i === 0) {
@@ -203,13 +187,10 @@ class UniversalAnalytics extends Analytics_1.Analytics {
203
187
  };
204
188
  }
205
189
  catch (e) {
206
- return undefined;
207
- }
208
- finally {
209
- i++;
190
+ // test
210
191
  }
211
- })
212
- .filter((tmp) => tmp !== undefined);
192
+ i++;
193
+ });
213
194
  }
214
195
  generateRefundMessageObject(reservation) {
215
196
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalAnalytics.js","sourceRoot":"/","sources":["src/util/Analytics/UniversalAnalytics.ts"],"names":[],"mappings":"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","sourcesContent":["import { ReservationDTO, ReservationsDTO } from '@roomstay/core';\nimport dayjs, { Dayjs } from 'dayjs';\n\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { Room } from '@/models/Room/Room';\nimport { RoomRate } from '@/models/Room/RoomRate';\n\nimport { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';\nimport { Analytics, IAnalyticMessageEvent } from './Analytics';\n\nconst DATALAYER_DATE_FORMAT = 'YYYY-M-D';\n\nclass UniversalAnalytics extends Analytics {\n private getProductInfo(room: Room, rate?: RoomRate, listPosition?: number, quantity?: number): Product {\n const providerId = this.hotel?.providerHotelID;\n\n const price = rate ? rate.getAveragePrice() : room.getLowestPrice();\n const nameParts = [room.name];\n const idParts = [providerId, room.code];\n if (rate) {\n nameParts.push(rate.name);\n idParts.push(rate.code);\n }\n\n const product: Product = {\n name: nameParts.join(' - '),\n id: idParts.join(' - '),\n price: price,\n brand: [this.hotel?.name, providerId, this.company?.brandSuffix].filter(Boolean).join(' - '),\n category: room.name as string,\n category2: 'Rooms',\n };\n\n if (rate) {\n product.variant = rate.name;\n }\n\n if (listPosition !== undefined) {\n product.list = this.itemListName;\n product.position = listPosition;\n }\n\n if (quantity !== undefined) {\n product.quantity = quantity;\n }\n\n return product;\n }\n\n private generateAddonProductInfo(addonRow: BasketAddonRow): Product {\n const addon = addonRow.getAddon();\n return {\n name: addon.name,\n id: addon.code,\n price: addonRow.getTotalPrice(),\n brand: [this.hotel?.name, this.hotel?.providerHotelID, this.company?.brandSuffix].filter(Boolean).join(' - '),\n category: addon.category,\n category2: 'Addons',\n quantity: addonRow.getTotalQuantity(),\n };\n }\n\n public generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]) {\n return {\n event: 'Product impressions',\n ecommerce: {\n currencyCode: this.currency.original,\n impressions: impressions.map((item, index) => {\n const { room, quantity } = item;\n return this.getProductInfo(room, undefined, index, quantity);\n }),\n },\n };\n }\n\n public generateProductClickMessageObject(product: GenericAnalyticsAccommodation) {\n const { room, rate, quantity } = product;\n return {\n event: 'productClick',\n ecommerce: {\n currencyCode: this.currency.original,\n click: {\n products: [this.getProductInfo(room, rate, undefined, quantity)],\n },\n StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),\n EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),\n },\n };\n }\n\n public generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number | undefined) {\n return {\n event: 'dateSelection',\n arrivalDate: dateRange.from.format(DATALAYER_DATE_FORMAT),\n departureDate: dateRange.to.format(DATALAYER_DATE_FORMAT),\n adultQty: Number.isInteger(adults) ? `${adults}` : null,\n childQty: Number.isInteger(children) ? `${children}` : null,\n infantQty: Number.isInteger(infants) ? `${infants}` : null,\n };\n }\n\n public generateAddToCartMessageObject(product: GenericAnalyticsAccommodation) {\n const productInfo = this.getProductInfo(product.room, product.rate, undefined, product.quantity);\n\n return {\n event: 'addToCart',\n ecommerce: {\n currencyCode: this.currency.original,\n add: {\n products: [productInfo],\n },\n StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),\n EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),\n },\n };\n }\n\n public generateAddonsAddToCartMessageObject(product: Required<Pick<GenericAnalyticsAccommodation, 'quantity' | 'dateRange' | 'basketAddonRow'>>): IAnalyticMessageEvent {\n return {\n event: 'addToCart',\n ecommerce: {\n currencyCode: this.currency.original,\n add: {\n products: [this.generateAddonProductInfo(product.basketAddonRow!)],\n },\n StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),\n EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),\n },\n };\n }\n\n public generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation) {\n const newRate = newProduct.rate;\n const oldRate = oldProduct.rate;\n\n if (!newRate || !oldRate) {\n return null;\n }\n\n const oldConvertedProduct = this.getProductInfo(oldRate.getRoom(), oldRate);\n const newConvertedProduct = this.getProductInfo(newRate.getRoom(), newRate);\n\n return {\n event: 'upsellConfirmed',\n priceDifference: newRate.getTotalPrice() - oldRate.getTotalPrice(),\n old: {\n products: [oldConvertedProduct],\n },\n new: {\n products: [newConvertedProduct],\n },\n };\n }\n\n public generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation) {\n const { room, rate, quantity } = product;\n\n const productInfo = this.getProductInfo(room, rate, undefined, quantity);\n\n return {\n event: 'upsellCancelled',\n item: [productInfo],\n };\n }\n\n public generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]) {\n const products: Product[] = [];\n\n let startDate: Dayjs | undefined = undefined;\n let endDate: Dayjs | undefined = undefined;\n\n basketRows.forEach((row) => {\n startDate = row.getStartDate();\n endDate = row.getEndDate();\n products.push(this.getProductInfo(row.getRoom(), row.getRate() as RoomRate, undefined, row.getNumberOfDays()));\n });\n\n addonRows.forEach((row) => {\n products.push(this.generateAddonProductInfo(row));\n });\n\n return {\n event: 'checkout',\n ecommerce: {\n currencyCode: this.currency.original,\n checkout: {\n actionField: { step: 1 },\n products,\n },\n StartDate: (startDate as Dayjs | undefined)?.format(DATALAYER_DATE_FORMAT),\n EndDate: (endDate as Dayjs | undefined)?.format(DATALAYER_DATE_FORMAT),\n PageType: 'conversionintent',\n },\n };\n }\n\n public generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO) {\n let i = 0;\n return basketRows\n .map((row) => {\n const products = [this.getProductInfo(row.getRoom(), row.getRate() as RoomRate, undefined, row.getNumberOfDays())];\n\n if (i === 0) {\n addonRows.forEach((addonRow) => {\n products.push(this.generateAddonProductInfo(addonRow));\n });\n }\n\n try {\n const upsellPrevRoom = row.getPreUpsellRoomRate();\n\n const extraData: { checkoutUpsell?: any } = {};\n if (upsellPrevRoom) {\n extraData.checkoutUpsell = {\n active: true,\n oldRoom: upsellPrevRoom.getRoom().code,\n newRoom: row.getRoom().code,\n priceDifference: (row.getRate()?.getTotalPrice() || 0) - (upsellPrevRoom.getTotalPrice() || 0),\n };\n }\n return {\n event: 'roomPurchase',\n ecommerce: {\n currencyCode: this.currency.original,\n purchase: {\n actionField: {\n id: reservations.reservations[i].reservationNumber,\n revenue: reservations.reservations[i].total.afterTax,\n tax: reservations.reservations[i].total.afterTax - reservations.reservations[i].total.beforeTax,\n coupon: row.getPromoCode(),\n },\n products,\n },\n StartDate: row.getStartDate().format(DATALAYER_DATE_FORMAT),\n EndDate: row.getEndDate().format(DATALAYER_DATE_FORMAT),\n BookingDate: dayjs().format(DATALAYER_DATE_FORMAT),\n PageType: 'conversion',\n paymentType: reservations.reservations[i].paymentMethod,\n ...extraData,\n },\n } as IAnalyticMessageEvent;\n } catch (e) {\n return undefined;\n } finally {\n i++;\n }\n })\n .filter((tmp): tmp is IAnalyticMessageEvent => tmp !== undefined);\n }\n\n public generateRefundMessageObject(reservation: ReservationDTO): any {\n return {\n event: 'refund',\n ecommerce: {\n refund: {\n actionField: {\n id: reservation.reservationNumber,\n },\n },\n },\n };\n }\n}\n\nconst ua = new UniversalAnalytics();\n\nexport { ua as UniversalAnalytics };\n\ntype Product = {\n name: string; // <Put the Room Variant here example - ‘BAE - Best Available Everyday - Superoo’>\n id: string; // <Put the SKU for Room variant here example - ‘62991 - VEK - 04BAE’>\n price: number; // <Put the PER DAY price of room>\n brand: string; // <Put the hotel brand here example - ‘Australia - Ovolo Woolloomooloo - 62991’>\n category: string; // <Put the Category of room here example - ‘Superoo’>\n category2: 'Addons' | 'Rooms';\n variant?: string; // <Put the Variant of room here example - ‘BAE - Best Available Everyday - Prepaid Rate’>\n list?: string; // <Put ‘BE List’ if shown in Booking Engine else put ‘Hotel List’>\n position?: number; // <Put the position of hotel in the list here example 1’>\n quantity?: number; // <Put the rooms X nights>\n};\n"]}
1
+ {"version":3,"file":"UniversalAnalytics.js","sourceRoot":"/","sources":["src/util/Analytics/UniversalAnalytics.ts"],"names":[],"mappings":"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","sourcesContent":["import dayjs, { Dayjs } from 'dayjs';\n\nimport ReservationsDTO, { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketAddonRow from '@/models/BasketAddonRow';\nimport BasketRow from '@/models/BasketRow';\nimport { Room } from '@/models/Room/Room';\nimport { RoomRate } from '@/models/Room/RoomRate';\n\nimport { DateRange, GenericAnalyticsAccommodation } from '../DataLayer';\nimport { Analytics } from './Analytics';\n\nconst DATALAYER_DATE_FORMAT = 'YYYY-M-D';\n\nclass UniversalAnalytics extends Analytics {\n private getProductInfo(room: Room, rate?: RoomRate, listPosition?: number, quantity?: number): Product {\n const providerId = this.hotel?.providerHotelID;\n\n const price = rate ? rate.getAveragePrice() : room.getLowestPrice();\n const nameParts = [room.name];\n const idParts = [providerId, room.code];\n if (rate) {\n nameParts.push(rate.name);\n idParts.push(rate.code);\n }\n\n const product: Product = {\n name: nameParts.join(' - '),\n id: idParts.join(' - '),\n price: price,\n brand: [this.hotel?.name, providerId, this.company?.brandSuffix].filter(Boolean).join(' - '),\n category: room.name as string,\n };\n\n if (rate) {\n product.variant = rate.name;\n }\n\n if (listPosition !== undefined) {\n product.list = 'BE List';\n product.position = listPosition;\n }\n\n if (quantity !== undefined) {\n product.quantity = quantity;\n }\n\n return product;\n }\n\n private generateAddonProductInfo(addonRow: BasketAddonRow): Product {\n const addon = addonRow.getAddon();\n return {\n name: addon.name,\n id: addon.code,\n price: addonRow.getTotalPrice(),\n brand: [this.hotel?.name, this.hotel?.providerHotelID, this.company?.brandSuffix].filter(Boolean).join(' - '),\n category: addon.category,\n quantity: addonRow.getTotalQuantity(),\n };\n }\n\n public generateRoomImpressionMessageObject(impressions: GenericAnalyticsAccommodation[]) {\n return {\n event: 'Product impressions',\n ecommerce: {\n currencyCode: this.currency.original,\n impressions: impressions.map((item, index) => {\n const { room, quantity } = item;\n return this.getProductInfo(room, undefined, index, quantity);\n }),\n },\n };\n }\n\n public generateProductClickMessageObject(product: GenericAnalyticsAccommodation) {\n const { room, rate, quantity } = product;\n return {\n event: 'productClick',\n ecommerce: {\n currencyCode: this.currency.original,\n click: {\n products: [this.getProductInfo(room, rate, undefined, quantity)],\n },\n StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),\n EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),\n },\n };\n }\n\n public generateDateSelectionMessageObject(dateRange: DateRange, adults: number, children: number, infants?: number | undefined) {\n return {\n event: 'dateSelection',\n arrivalDate: dateRange.from.format(DATALAYER_DATE_FORMAT),\n departureDate: dateRange.to.format(DATALAYER_DATE_FORMAT),\n adultQty: Number.isInteger(adults) ? `${adults}` : null,\n childQty: Number.isInteger(children) ? `${children}` : null,\n infantQty: Number.isInteger(infants) ? `${infants}` : null,\n };\n }\n\n public generateAddToCartMessageObject(product: GenericAnalyticsAccommodation) {\n const productInfo = this.getProductInfo(product.room, product.rate, undefined, product.quantity);\n\n return {\n event: 'addToCart',\n ecommerce: {\n currencyCode: this.currency.original,\n add: {\n products: [productInfo],\n },\n StartDate: product.dateRange.from.format(DATALAYER_DATE_FORMAT),\n EndDate: product.dateRange.to.format(DATALAYER_DATE_FORMAT),\n },\n };\n }\n\n public generateUpsellConfirmedMessageObject(oldProduct: GenericAnalyticsAccommodation, newProduct: GenericAnalyticsAccommodation) {\n const newRate = newProduct.rate;\n const oldRate = oldProduct.rate;\n\n if (!newRate || !oldRate) {\n return null;\n }\n\n const oldConvertedProduct = this.getProductInfo(oldRate.getRoom(), oldRate);\n const newConvertedProduct = this.getProductInfo(newRate.getRoom(), newRate);\n\n return {\n event: 'upsellConfirmed',\n priceDifference: newRate.getTotalPrice() - oldRate.getTotalPrice(),\n old: {\n products: [oldConvertedProduct],\n },\n new: {\n products: [newConvertedProduct],\n },\n };\n }\n\n public generateUpsellCancelledMessageObject(product: GenericAnalyticsAccommodation) {\n const { room, rate, quantity } = product;\n\n const productInfo = this.getProductInfo(room, rate, undefined, quantity);\n\n return {\n event: 'upsellCancelled',\n item: [productInfo],\n };\n }\n\n public generateCheckoutViewMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[]) {\n const products: Product[] = [];\n\n let startDate: Dayjs | undefined = undefined;\n let endDate: Dayjs | undefined = undefined;\n\n basketRows.forEach((row) => {\n startDate = row.getStartDate();\n endDate = row.getEndDate();\n products.push(this.getProductInfo(row.getRoom(), row.getRate() as RoomRate, undefined, row.getNumberOfDays()));\n });\n\n addonRows.forEach((row) => {\n products.push(this.generateAddonProductInfo(row));\n });\n\n return {\n event: 'checkout',\n ecommerce: {\n currencyCode: this.currency.original,\n checkout: {\n actionField: { step: 1 },\n products,\n },\n StartDate: (startDate as Dayjs | undefined)?.format(DATALAYER_DATE_FORMAT),\n EndDate: (endDate as Dayjs | undefined)?.format(DATALAYER_DATE_FORMAT),\n PageType: 'conversionintent',\n },\n };\n }\n\n public generateRoomPurchaseMessageObject(basketRows: BasketRow[], addonRows: BasketAddonRow[], reservations: ReservationsDTO) {\n let i = 0;\n return basketRows.map((row) => {\n const products = [this.getProductInfo(row.getRoom(), row.getRate() as RoomRate, undefined, row.getNumberOfDays())];\n\n if (i === 0) {\n addonRows.forEach((addonRow) => {\n products.push(this.generateAddonProductInfo(addonRow));\n });\n }\n\n try {\n const upsellPrevRoom = row.getPreUpsellRoomRate();\n\n const extraData: { checkoutUpsell?: any } = {};\n if (upsellPrevRoom) {\n extraData.checkoutUpsell = {\n active: true,\n oldRoom: upsellPrevRoom.getRoom().code,\n newRoom: row.getRoom().code,\n priceDifference: (row.getRate()?.getTotalPrice() || 0) - (upsellPrevRoom.getTotalPrice() || 0),\n };\n }\n\n return {\n event: 'roomPurchase',\n ecommerce: {\n currencyCode: this.currency.original,\n purchase: {\n actionField: {\n id: reservations.reservations[i].reservationNumber,\n revenue: reservations.reservations[i].total.afterTax,\n tax: reservations.reservations[i].total.afterTax - reservations.reservations[i].total.beforeTax,\n coupon: row.getPromoCode(),\n },\n products,\n },\n StartDate: row.getStartDate().format(DATALAYER_DATE_FORMAT),\n EndDate: row.getEndDate().format(DATALAYER_DATE_FORMAT),\n BookingDate: dayjs().format(DATALAYER_DATE_FORMAT),\n PageType: 'conversion',\n paymentType: reservations.reservations[i].paymentMethod,\n ...extraData,\n },\n };\n } catch (e) {\n // test\n }\n\n i++;\n });\n }\n\n public generateRefundMessageObject(reservation: ReservationDTO): any {\n return {\n event: 'refund',\n ecommerce: {\n refund: {\n actionField: {\n id: reservation.reservationNumber,\n },\n },\n },\n };\n }\n}\n\nconst ua = new UniversalAnalytics();\n\nexport { ua as UniversalAnalytics };\n\ntype Product = {\n name: string; // <Put the Room Variant here example - ‘BAE - Best Available Everyday - Superoo’>\n id: string; // <Put the SKU for Room variant here example - ‘62991 - VEK - 04BAE’>\n price: number; // <Put the PER DAY price of room>\n brand: string; // <Put the hotel brand here example - ‘Australia - Ovolo Woolloomooloo - 62991’>\n category: string; // <Put the Category of room here example - ‘Superoo’>\n variant?: string; // <Put the Variant of room here example - ‘BAE - Best Available Everyday - Prepaid Rate’>\n list?: string; // <Put ‘BE List’ if shown in Booking Engine else put ‘Hotel List’>\n position?: number; // <Put the position of hotel in the list here example 1’>\n quantity?: number; // <Put the rooms X nights>\n};\n"]}
@@ -15,23 +15,13 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -1 +1 @@
1
- {"version":3,"file":"AsyncAuth.js","sourceRoot":"/","sources":["src/util/AsyncAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;GAEG;AACI,MAAM,OAAO,GAAG,GAA6B,EAAE;IAClD,MAAM,EAAE,IAAI,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;IACnD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAA,CAAC;AAHW,QAAA,OAAO,WAGlB","sourcesContent":["import { AuthClass } from '@aws-amplify/auth/lib-esm/Auth';\n\n/**\n * Async import Auth to split bundle code\n */\nexport const getAuth = async (): Promise<AuthClass> => {\n const { Auth } = await import('@aws-amplify/auth');\n return Auth;\n};\n"]}
1
+ {"version":3,"file":"AsyncAuth.js","sourceRoot":"/","sources":["src/util/AsyncAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;GAEG;AACI,MAAM,OAAO,GAAG,GAA6B,EAAE;IAClD,MAAM,EAAE,IAAI,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;IACnD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAA,CAAC;AAHW,QAAA,OAAO,WAGlB","sourcesContent":["import { AuthClass } from '@aws-amplify/auth/lib-esm/Auth';\n\n/**\n * Async import Auth to split bundle code\n */\nexport const getAuth = async (): Promise<AuthClass> => {\n const { Auth } = await import('@aws-amplify/auth');\n return Auth;\n};\n"]}
@@ -16,6 +16,7 @@ const getLetterDaysOfWeek = (startsWeekOnDay) => {
16
16
  exports.getLetterDaysOfWeek = getLetterDaysOfWeek;
17
17
  class CalendarHelper {
18
18
  }
19
+ exports.default = CalendarHelper;
19
20
  /**
20
21
  * Returns an array always divisible by 7,
21
22
  *
@@ -83,7 +84,6 @@ CalendarHelper.getDaysBetween = (startDate, endDate) => {
83
84
  }
84
85
  return days;
85
86
  };
86
- exports.default = CalendarHelper;
87
87
  const getQueryParamFromHash = (param) => {
88
88
  const currentUrl = window.location.href;
89
89
  const hashIndex = currentUrl.indexOf('#');