@roomstay/frontend 2.1.33 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/dist/201.bundle.js +1 -1
  2. package/dist/213.bundle.js +1 -0
  3. package/dist/279.bundle.js +1 -1
  4. package/dist/370.bundle.js +1 -1
  5. package/dist/423.bundle.js +1 -1
  6. package/dist/449.bundle.js +1 -1
  7. package/dist/535.bundle.js +1 -1
  8. package/dist/548.bundle.js +1 -0
  9. package/dist/686.bundle.js +1 -0
  10. package/dist/855.bundle.js +1 -1
  11. package/dist/873.bundle.js +1 -1
  12. package/dist/882.bundle.js +1 -1
  13. package/dist/93.bundle.js +1 -0
  14. package/dist/972.bundle.js +1 -1
  15. package/dist/main.bundle.js +1 -2
  16. package/dist/src/api/HotelAPI.d.ts +1 -1
  17. package/dist/src/api/HotelAPI.js.map +1 -1
  18. package/dist/src/api/ReservationAPI.d.ts +0 -6
  19. package/dist/src/api/ReservationAPI.js.map +1 -1
  20. package/dist/src/api/events-service/EventsServiceAPI.d.ts +3 -0
  21. package/dist/src/api/events-service/EventsServiceAPI.js +62 -0
  22. package/dist/src/api/events-service/EventsServiceAPI.js.map +1 -0
  23. package/dist/src/components/Event/EventCarouselContainer.d.ts +8 -0
  24. package/dist/src/components/Event/EventCarouselContainer.js +97 -0
  25. package/dist/src/components/Event/EventCarouselContainer.js.map +1 -0
  26. package/dist/src/components/User/Forms/ForgotPasswordForm.d.ts +1 -0
  27. package/dist/src/components/User/Forms/ForgotPasswordForm.js +38 -24
  28. package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
  29. package/dist/src/components/User/Forms/SignInForm.d.ts +4 -3
  30. package/dist/src/components/User/Forms/SignInForm.js +32 -14
  31. package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
  32. package/dist/src/components/User/Forms/SignUpForm.d.ts +1 -0
  33. package/dist/src/components/User/Forms/SignUpForm.js +30 -26
  34. package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
  35. package/dist/src/components/generic/BookingWizard/BookingWizard.js +5 -2
  36. package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
  37. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +6 -3
  38. package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
  39. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +8 -5
  40. package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
  41. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +15 -9
  42. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
  43. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +4 -1
  44. package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
  45. package/dist/src/components/generic/Currency.js +5 -5
  46. package/dist/src/components/generic/Currency.js.map +1 -1
  47. package/dist/src/components/generic/Event/EventCard.d.ts +8 -0
  48. package/dist/src/components/generic/Event/EventCard.js +70 -0
  49. package/dist/src/components/generic/Event/EventCard.js.map +1 -0
  50. package/dist/src/components/generic/Event/EventCarousel.d.ts +9 -0
  51. package/dist/src/components/generic/Event/EventCarousel.js +72 -0
  52. package/dist/src/components/generic/Event/EventCarousel.js.map +1 -0
  53. package/dist/src/components/generic/Headline.d.ts +2 -2
  54. package/dist/src/components/generic/Headline.js +8 -4
  55. package/dist/src/components/generic/Headline.js.map +1 -1
  56. package/dist/src/components/generic/Icon/Icon.d.ts +5 -1
  57. package/dist/src/components/generic/Icon/Icon.js +4 -0
  58. package/dist/src/components/generic/Icon/Icon.js.map +1 -1
  59. package/dist/src/components/generic/Overlay/Overlay.d.ts +2 -1
  60. package/dist/src/components/generic/Overlay/Overlay.js +50 -7
  61. package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
  62. package/dist/src/components/generic/PasswordBox/PasswordBox.js +2 -2
  63. package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
  64. package/dist/src/components/generic/PaymentCard/InlinePaymentCard.d.ts +8 -0
  65. package/dist/src/components/generic/PaymentCard/InlinePaymentCard.js +16 -0
  66. package/dist/src/components/generic/PaymentCard/InlinePaymentCard.js.map +1 -0
  67. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.d.ts +8 -0
  68. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js +61 -0
  69. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js.map +1 -0
  70. package/dist/src/components/generic/PaymentCard/PaymentCard.js +6 -3
  71. package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -1
  72. package/dist/src/components/generic/PaymentCard/PaymentCardInput.d.ts +2 -3
  73. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +34 -28
  74. package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
  75. package/dist/src/components/generic/PromoCodeInput.js +15 -18
  76. package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
  77. package/dist/src/components/generic/RadioButtonGroup/RadioButton.d.ts +5 -4
  78. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +33 -10
  79. package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
  80. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.d.ts +14 -11
  81. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +69 -11
  82. package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  83. package/dist/src/components/generic/RatioImage/RatioImage.d.ts +11 -0
  84. package/dist/src/components/generic/RatioImage/RatioImage.js +12 -0
  85. package/dist/src/components/generic/RatioImage/RatioImage.js.map +1 -0
  86. package/dist/src/components/generic/RecentSearchesCard.js +6 -5
  87. package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
  88. package/dist/src/components/generic/Tabs/TabLink.js +28 -3
  89. package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
  90. package/dist/src/components/generic/TextBox.js +1 -1
  91. package/dist/src/components/generic/TextBox.js.map +1 -1
  92. package/dist/src/components/generic/badging/SSLSecureBadge.js +4 -1
  93. package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
  94. package/dist/src/components/generic/buttons/NextStepButton.d.ts +0 -3
  95. package/dist/src/components/generic/buttons/NextStepButton.js +4 -1
  96. package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
  97. package/dist/src/components/generic/loader/LargeLoader.js +31 -6
  98. package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
  99. package/dist/src/components/generic/modal/ConfirmationModal.js +6 -3
  100. package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
  101. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.d.ts +14 -2
  102. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +34 -26
  103. package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
  104. package/dist/src/components/generic/modal/SigninModal/FormContent/ForgotPasswordFormContent.d.ts +7 -0
  105. package/dist/src/components/generic/modal/SigninModal/FormContent/ForgotPasswordFormContent.js +14 -0
  106. package/dist/src/components/generic/modal/SigninModal/FormContent/ForgotPasswordFormContent.js.map +1 -0
  107. package/dist/src/components/generic/modal/SigninModal/FormContent/SignInFormContent.d.ts +8 -0
  108. package/dist/src/components/generic/modal/SigninModal/FormContent/SignInFormContent.js +25 -0
  109. package/dist/src/components/generic/modal/SigninModal/FormContent/SignInFormContent.js.map +1 -0
  110. package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.d.ts +7 -0
  111. package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js +49 -0
  112. package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js.map +1 -0
  113. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +5 -2
  114. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +30 -39
  115. package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
  116. package/dist/src/components/generic/print/NoPrint.d.ts +3 -0
  117. package/dist/src/components/generic/print/NoPrint.js +11 -0
  118. package/dist/src/components/generic/print/NoPrint.js.map +1 -0
  119. package/dist/src/components/generic/print/PrintOnly.d.ts +3 -0
  120. package/dist/src/components/generic/print/PrintOnly.js +11 -0
  121. package/dist/src/components/generic/print/PrintOnly.js.map +1 -0
  122. package/dist/src/components/graphics/AddCard.d.ts +7 -0
  123. package/dist/src/components/graphics/AddCard.js +28 -0
  124. package/dist/src/components/graphics/AddCard.js.map +1 -0
  125. package/dist/src/components/graphics/HomeEmptyCard.d.ts +7 -0
  126. package/dist/src/components/graphics/HomeEmptyCard.js +53 -0
  127. package/dist/src/components/graphics/HomeEmptyCard.js.map +1 -0
  128. package/dist/src/components/graphics/HomeEmptyReservation.d.ts +7 -0
  129. package/dist/src/components/graphics/HomeEmptyReservation.js +136 -0
  130. package/dist/src/components/graphics/HomeEmptyReservation.js.map +1 -0
  131. package/dist/src/components/iconComponents/CreditCardOff.d.ts +6 -0
  132. package/dist/src/components/iconComponents/CreditCardOff.js +16 -0
  133. package/dist/src/components/iconComponents/CreditCardOff.js.map +1 -0
  134. package/dist/src/components/members/EditMyProfile.js +19 -21
  135. package/dist/src/components/members/EditMyProfile.js.map +1 -1
  136. package/dist/src/components/navigation/Header.js +29 -9
  137. package/dist/src/components/navigation/Header.js.map +1 -1
  138. package/dist/src/components/navigation/StepSelector.js +2 -1
  139. package/dist/src/components/navigation/StepSelector.js.map +1 -1
  140. package/dist/src/components/pages/Account/Card/MemberCardItem.js +5 -2
  141. package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
  142. package/dist/src/components/reservation/EmptyReservation.js +3 -3
  143. package/dist/src/components/reservation/EmptyReservation.js.map +1 -1
  144. package/dist/src/components/reservation/ReservationItem.d.ts +4 -3
  145. package/dist/src/components/reservation/ReservationItem.js +45 -33
  146. package/dist/src/components/reservation/ReservationItem.js.map +1 -1
  147. package/dist/src/components/reservation/ReservationList.d.ts +2 -2
  148. package/dist/src/components/reservation/ReservationList.js +1 -1
  149. package/dist/src/components/reservation/ReservationList.js.map +1 -1
  150. package/dist/src/components/steps/DaysSelectedInformer.js +15 -10
  151. package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
  152. package/dist/src/components/steps/addons/AddonCard.js +10 -12
  153. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  154. package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
  155. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +26 -7
  156. package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
  157. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.d.ts +1 -2
  158. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +36 -44
  159. package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
  160. package/dist/src/components/steps/confirmation/PaymentInformation.d.ts +7 -0
  161. package/dist/src/components/steps/confirmation/PaymentInformation.js +119 -0
  162. package/dist/src/components/steps/confirmation/PaymentInformation.js.map +1 -0
  163. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +12 -10
  164. package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
  165. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +43 -80
  166. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  167. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +7 -5
  168. package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
  169. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +10 -12
  170. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
  171. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +8 -2
  172. package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
  173. package/dist/src/components/steps/date/PeoplePicker.js +9 -9
  174. package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
  175. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  176. package/dist/src/components/steps/date/StepOneNextStepButton.d.ts +1 -1
  177. package/dist/src/components/steps/date/StepOneNextStepButton.js +2 -4
  178. package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
  179. package/dist/src/components/steps/hotel/HotelCard.js +5 -11
  180. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  181. package/dist/src/components/steps/hotel/HotelCardModal.js +5 -6
  182. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  183. package/dist/src/components/steps/hotel/HotelSearchParameters.js +8 -8
  184. package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
  185. package/dist/src/components/steps/room/AvailableUpgradesModal.js +8 -9
  186. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  187. package/dist/src/components/steps/room/InactivityWindow.js +3 -5
  188. package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
  189. package/dist/src/components/steps/room/LargeRoomCard.js +5 -4
  190. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  191. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +42 -40
  192. package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
  193. package/dist/src/components/steps/room/NoRoomsFoundBlock.js +7 -9
  194. package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
  195. package/dist/src/components/steps/room/RatesNotFound.js +6 -3
  196. package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
  197. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +3 -3
  198. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  199. package/dist/src/components/steps/room/StepRoomNextStepButton.d.ts +2 -1
  200. package/dist/src/components/steps/room/StepRoomNextStepButton.js +3 -3
  201. package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
  202. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +2 -6
  203. package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
  204. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +1 -0
  205. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
  206. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +16 -18
  207. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  208. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +2 -2
  209. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  210. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +6 -3
  211. package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
  212. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +3 -1
  213. package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
  214. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +7 -8
  215. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  216. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +4 -6
  217. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  218. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +4 -5
  219. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  220. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +7 -5
  221. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
  222. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +4 -1
  223. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
  224. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +5 -2
  225. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  226. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +11 -10
  227. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  228. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +1 -1
  229. package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
  230. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +7 -8
  231. package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
  232. package/dist/src/components/summary/BEMobileSummaryModal.js +1 -1
  233. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  234. package/dist/src/components/summary/BESummaryPerkBlock.js +4 -1
  235. package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
  236. package/dist/src/components/summary/BESummaryPrivacyPolicy.js +5 -10
  237. package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
  238. package/dist/src/components/summary/BESummaryRoomRow.js +4 -6
  239. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  240. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +5 -1
  241. package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
  242. package/dist/src/contexts/BasketContext/BasketContextType.d.ts +1 -0
  243. package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
  244. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +36 -13
  245. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  246. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +26 -2
  247. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  248. package/dist/src/contexts/ConfirmationFormContext.d.ts +0 -2
  249. package/dist/src/contexts/ConfirmationFormContext.js +0 -3
  250. package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
  251. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +13 -8
  252. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  253. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.d.ts +1 -6
  254. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +24 -18
  255. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  256. package/dist/src/contexts/HotelOverridesContext.js +4 -0
  257. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  258. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +10 -6
  259. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -1
  260. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +76 -26
  261. package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
  262. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +8 -5
  263. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.js.map +1 -1
  264. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +35 -4
  265. package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
  266. package/dist/src/engines/BaseEngine.d.ts +2 -1
  267. package/dist/src/engines/BaseEngine.js +1 -1
  268. package/dist/src/engines/BaseEngine.js.map +1 -1
  269. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
  270. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +24 -25
  271. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  272. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.d.ts +22 -0
  273. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js +33 -0
  274. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js.map +1 -0
  275. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.d.ts +6 -0
  276. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js +116 -0
  277. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js.map +1 -0
  278. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +11 -10
  279. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  280. package/dist/src/errors/GetAvailabilityError.d.ts +2 -1
  281. package/dist/src/errors/GetAvailabilityError.js +10 -3
  282. package/dist/src/errors/GetAvailabilityError.js.map +1 -1
  283. package/dist/src/hooks/HistoryConsistentPush.d.ts +1 -0
  284. package/dist/src/hooks/HistoryConsistentPush.js +12 -0
  285. package/dist/src/hooks/HistoryConsistentPush.js.map +1 -0
  286. package/dist/src/hooks/LoggedInUserHook.d.ts +3 -3
  287. package/dist/src/hooks/Query.js +2 -6
  288. package/dist/src/hooks/Query.js.map +1 -1
  289. package/dist/src/hooks/UpdateQueryParameters.d.ts +1 -0
  290. package/dist/src/hooks/UpdateQueryParameters.js +16 -0
  291. package/dist/src/hooks/UpdateQueryParameters.js.map +1 -0
  292. package/dist/src/hooks/VGSHooks.d.ts +11 -1
  293. package/dist/src/hooks/VGSHooks.js +26 -11
  294. package/dist/src/hooks/VGSHooks.js.map +1 -1
  295. package/dist/src/index.d.ts +2 -3
  296. package/dist/src/index.js +2 -0
  297. package/dist/src/index.js.map +1 -1
  298. package/dist/src/mockApi/HotelAPI.d.ts +1 -1
  299. package/dist/src/mockApi/HotelAPI.js.map +1 -1
  300. package/dist/src/models/Api/HotelDTO.d.ts +11 -3
  301. package/dist/src/models/Api/HotelDTO.js +17 -8
  302. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  303. package/dist/src/models/Api/HotelOverrideDTO.d.ts +1 -0
  304. package/dist/src/models/Api/HotelOverrideDTO.js.map +1 -1
  305. package/dist/src/models/Api/ReservationsDTO.d.ts +2 -0
  306. package/dist/src/models/Api/ReservationsDTO.js.map +1 -1
  307. package/dist/src/models/AppQueryParameters.d.ts +14 -0
  308. package/dist/src/models/AppQueryParameters.js +19 -0
  309. package/dist/src/models/AppQueryParameters.js.map +1 -0
  310. package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +2 -2
  311. package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -1
  312. package/dist/src/models/Client/Hotel/ColorProfile.d.ts +3 -0
  313. package/dist/src/models/Client/Hotel/ColorProfile.js.map +1 -1
  314. package/dist/src/models/Client/Hotel/Company.d.ts +2 -2
  315. package/dist/src/models/Client/Hotel/Company.js.map +1 -1
  316. package/dist/src/models/Client/Hotel/Hotel.d.ts +15 -5
  317. package/dist/src/models/Client/Hotel/Hotel.js +3 -1
  318. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  319. package/dist/src/models/Confirmation.d.ts +1 -1
  320. package/dist/src/models/Confirmation.js.map +1 -1
  321. package/dist/src/models/Room/Filters/Filter.d.ts +2 -1
  322. package/dist/src/models/Room/Filters/Filter.js.map +1 -1
  323. package/dist/src/models/Room/Filters/RateTypeFilter.d.ts +2 -1
  324. package/dist/src/models/Room/Filters/RateTypeFilter.js +3 -2
  325. package/dist/src/models/Room/Filters/RateTypeFilter.js.map +1 -1
  326. package/dist/src/models/Room/Filters/RoomTypeFilter.d.ts +2 -1
  327. package/dist/src/models/Room/Filters/RoomTypeFilter.js +3 -2
  328. package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
  329. package/dist/src/pages/account/AccountHome/AccountHomePage.js +9 -10
  330. package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
  331. package/dist/src/pages/account/AccountRouter.js +7 -9
  332. package/dist/src/pages/account/AccountRouter.js.map +1 -1
  333. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +19 -32
  334. package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
  335. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +9 -7
  336. package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
  337. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +25 -38
  338. package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
  339. package/dist/src/pages/account/Help/AccountHelpPage.js +16 -25
  340. package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
  341. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +68 -52
  342. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  343. package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
  344. package/dist/src/pages/findReservation/FindReservation.js +40 -23
  345. package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
  346. package/dist/src/pages/findReservation/ReservationRow.js +10 -9
  347. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  348. package/dist/src/pages/findReservation/ReservationRowModal.js +3 -3
  349. package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
  350. package/dist/src/pages/hotel/HotelInfo.js +6 -6
  351. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  352. package/dist/src/pages/steps/Step.d.ts +2 -2
  353. package/dist/src/pages/steps/Step.js.map +1 -1
  354. package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +2 -2
  355. package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
  356. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.d.ts +2 -2
  357. package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
  358. package/dist/src/pages/steps/StepDate/StepDate.d.ts +2 -2
  359. package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
  360. package/dist/src/pages/steps/StepDate/StepDateComponent.js +1 -1
  361. package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
  362. package/dist/src/pages/steps/StepHotel/StepHotel.d.ts +2 -2
  363. package/dist/src/pages/steps/StepHotel/StepHotel.js.map +1 -1
  364. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +10 -7
  365. package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
  366. package/dist/src/pages/steps/StepRoom/StepRoom.d.ts +2 -2
  367. package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
  368. package/dist/src/pages/steps/StepThanks/StepThanks.d.ts +2 -2
  369. package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
  370. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +5 -0
  371. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  372. package/dist/src/providers/FeatureProvider.js +2 -0
  373. package/dist/src/providers/FeatureProvider.js.map +1 -1
  374. package/dist/src/providers/RoomstayThemeEngine.d.ts +3 -3
  375. package/dist/src/providers/RoomstayThemeEngine.js +4 -18
  376. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  377. package/dist/src/providers/feature/ModifyBookingFeature.d.ts +6 -0
  378. package/dist/src/providers/feature/ModifyBookingFeature.js +10 -0
  379. package/dist/src/providers/feature/ModifyBookingFeature.js.map +1 -0
  380. package/dist/src/stories/EventCarousel.stories.d.ts +6 -0
  381. package/dist/src/stories/EventCarousel.stories.js +236 -0
  382. package/dist/src/stories/EventCarousel.stories.js.map +1 -0
  383. package/dist/src/stories/RadioButton.stories.d.ts +3 -3
  384. package/dist/src/stories/RadioButtonGroup.stories.d.ts +4 -1
  385. package/dist/src/stories/RadioButtonGroup.stories.js +73 -1
  386. package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
  387. package/dist/src/translations/Translation.d.ts +196 -8
  388. package/dist/src/translations/Translation.js +198 -10
  389. package/dist/src/translations/Translation.js.map +1 -1
  390. package/dist/src/translations/languages/en-gb.js +198 -10
  391. package/dist/src/translations/languages/en-gb.js.map +1 -1
  392. package/dist/src/util/Color.d.ts +3 -0
  393. package/dist/src/util/Color.js +21 -1
  394. package/dist/src/util/Color.js.map +1 -1
  395. package/dist/src/util/CurrencyHelper.d.ts +11 -3
  396. package/dist/src/util/CurrencyHelper.js +306 -5
  397. package/dist/src/util/CurrencyHelper.js.map +1 -1
  398. package/dist/src/util/EventsHelper.d.ts +11 -0
  399. package/dist/src/util/EventsHelper.js +43 -0
  400. package/dist/src/util/EventsHelper.js.map +1 -0
  401. package/dist/src/util/StringHelper.d.ts +2 -2
  402. package/dist/src/util/StringHelper.js +5 -4
  403. package/dist/src/util/StringHelper.js.map +1 -1
  404. package/dist/src/util/TextAlignment.d.ts +2 -1
  405. package/dist/src/util/TextAlignment.js +1 -0
  406. package/dist/src/util/TextAlignment.js.map +1 -1
  407. package/dist/src/util/Validation.d.ts +17 -13
  408. package/dist/src/util/Validation.js +34 -18
  409. package/dist/src/util/Validation.js.map +1 -1
  410. package/dist/test.bundle.js +1 -2
  411. package/dist/tests/jest/engines/RoomstayThemeEngine.test.d.ts +1 -0
  412. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js +41 -0
  413. package/dist/tests/jest/engines/RoomstayThemeEngine.test.js.map +1 -0
  414. package/dist/tests/jest/events/EventManager.test.d.ts +1 -0
  415. package/dist/tests/jest/events/EventManager.test.js +101 -0
  416. package/dist/tests/jest/events/EventManager.test.js.map +1 -0
  417. package/dist/tests/jest/helpers/ObjectHelper.test.d.ts +1 -0
  418. package/dist/tests/jest/helpers/ObjectHelper.test.js +72 -0
  419. package/dist/tests/jest/helpers/ObjectHelper.test.js.map +1 -0
  420. package/dist/tests/jest/models/RoomRate.test.d.ts +1 -0
  421. package/dist/tests/jest/models/RoomRate.test.js +133 -0
  422. package/dist/tests/jest/models/RoomRate.test.js.map +1 -0
  423. package/dist/tests/jest/providers/LanguageProvider.test.d.ts +1 -0
  424. package/dist/tests/jest/providers/LanguageProvider.test.js +32 -0
  425. package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -0
  426. package/dist/tests/jest/providers/SessionProvider.test.d.ts +1 -0
  427. package/dist/tests/jest/providers/SessionProvider.test.js +230 -0
  428. package/dist/tests/jest/providers/SessionProvider.test.js.map +1 -0
  429. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.d.ts +1 -0
  430. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.js +126 -0
  431. package/dist/tests/jest/providers/storage/LocalStorageProvider.test.js.map +1 -0
  432. package/dist/tests/jest/reducers/BasketReducer.test.d.ts +1 -0
  433. package/dist/tests/jest/reducers/BasketReducer.test.js +103 -0
  434. package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -0
  435. package/dist/tests/offline/RoomstayBestRateAlert.d.ts +1 -0
  436. package/dist/tests/offline/RoomstayBestRateAlert.js +48 -0
  437. package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -0
  438. package/dist/tests/offline/entry/RSCompany.js +7 -2
  439. package/dist/tests/offline/entry/RSCompany.js.map +1 -1
  440. package/dist/tests/offline/entry/ReactWrapper.d.ts +1 -0
  441. package/dist/tests/offline/entry/ReactWrapper.js +140 -0
  442. package/dist/tests/offline/entry/ReactWrapper.js.map +1 -0
  443. package/dist/tests/offline/entry/allEngines.d.ts +1 -0
  444. package/dist/tests/offline/entry/allEngines.js +50 -0
  445. package/dist/tests/offline/entry/allEngines.js.map +1 -0
  446. package/dist/tests/offline/entry/components/TestPicker.d.ts +1 -0
  447. package/dist/tests/offline/entry/components/TestPicker.js +214 -0
  448. package/dist/tests/offline/entry/components/TestPicker.js.map +1 -0
  449. package/dist/tests/offline/entry/context/EngineContext.d.ts +9 -0
  450. package/dist/tests/offline/entry/context/EngineContext.js +37 -0
  451. package/dist/tests/offline/entry/context/EngineContext.js.map +1 -0
  452. package/dist/tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.d.ts +1 -0
  453. package/dist/tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.js +68 -0
  454. package/dist/tests/offline/entry/engineRenderer/memberPortalWidgetRenderer.js.map +1 -0
  455. package/dist/tests/setupTests.d.ts +0 -0
  456. package/dist/tests/setupTests.js +12 -0
  457. package/dist/tests/setupTests.js.map +1 -0
  458. package/dist/vendors.bundle.js +1 -1
  459. package/package.json +3 -3
  460. package/dist/14.bundle.js +0 -1
  461. package/dist/559.bundle.js +0 -1
  462. package/dist/848.bundle.js +0 -1
  463. package/dist/962.bundle.js +0 -1
  464. package/dist/main.bundle.js.LICENSE.txt +0 -5
  465. package/dist/src/components/temp/Login.d.ts +0 -2
  466. package/dist/src/components/temp/Login.js +0 -79
  467. package/dist/src/components/temp/Login.js.map +0 -1
  468. package/dist/test.bundle.js.LICENSE.txt +0 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventCarousel.js","sourceRoot":"/","sources":["src/components/generic/Event/EventCarousel.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { FC, PropsWithChildren, useMemo, useState } from 'react';\nimport { Swiper, SwiperSlide } from 'swiper/react';\nimport { Navigation } from 'swiper';\nimport EventCard from '@/components/generic/Event/EventCard';\nimport styles from './EventCarousel.module.scss';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport Headline from '@/components/generic/Headline';\nimport { Color } from '@/util/Color';\nimport AutoAutoHeight from '@/animations/AutoAutoHeight';\nimport Text, { TextType } from '@/components/generic/Text';\nimport classNames from 'classnames';\nimport { IRoomstayEvent } from '@roomstay/core';\n\nexport interface EventCarouselProps {\n small?: boolean;\n data?: IRoomstayEvent[];\n defaultExpanded?: boolean;\n}\n\nconst EventCarousel: FC<EventCarouselProps> = ({ small = false, data = [], defaultExpanded = false }) => {\n const [expanded, setExpanded] = useState<boolean>(defaultExpanded);\n const commonTitleProps = useMemo(\n () => ({\n color: Color.Accent,\n className: classNames({\n [styles.titleWidthLimited]: small,\n }),\n }),\n [small]\n );\n const headlineProps = useMemo(\n () =>\n small\n ? {\n ...commonTitleProps,\n type: TextType.Body,\n bold: true,\n }\n : {\n ...commonTitleProps,\n size: 'large',\n },\n [small]\n );\n\n const [TitleComponent, titleProps]: [FC, PropsWithChildren<any>] = useMemo(() => [small ? Text : Headline, headlineProps], [small]);\n\n return (\n <div className=\"u-w-fluid u-pad-bottom\">\n <div className=\"container\">\n <div\n className={styles.headline}\n onClick={() => {\n setExpanded(!expanded);\n }}\n >\n <div\n className={classNames('u-flex u-w-100', 'u-flex-nowrap', 'u-flex-gap', 'u-flex-align-center', {\n 'u-flex-justify-flex-start': !small,\n 'u-flex-justify-space-between': small,\n })}\n >\n <TitleComponent {...titleProps}>We recommend during your stay</TitleComponent>\n <Icon icon={!expanded ? IconType.ArrowDown3 : IconType.ArrowUp3} color={Color.Accent} size={small ? '18px' : '32px'} />\n </div>\n </div>\n </div>\n <AutoAutoHeight open={expanded} startOpen={expanded}>\n <div className=\"u-pad-top--medium\">\n <div className={styles.swiperContainer}>\n <div className=\"container\">\n <Swiper navigation={!small} modules={[Navigation]} spaceBetween={small ? 20 : 30} slidesPerView={small ? 1.2 : 'auto'}>\n {data.map((event, index) => (\n <SwiperSlide\n style={{\n width: small ? undefined : 524,\n }}\n key={index}\n >\n <EventCard ratio={small ? 380 / 345 : 380 / 524} event={event} />\n </SwiperSlide>\n ))}\n </Swiper>\n </div>\n </div>\n </div>\n </AutoAutoHeight>\n </div>\n );\n};\n\nexport default EventCarousel;\n"]}
@@ -5,11 +5,11 @@ import { PropsWithChildren } from 'react';
5
5
  export interface HeadlineProps extends PropsWithChildren<any> {
6
6
  bold?: boolean;
7
7
  lineThrough?: boolean;
8
- size?: 'extra-large' | 'large' | 'normal';
8
+ size?: 'extra-large' | 'large' | 'normal' | 'larger';
9
9
  lineHeight?: '1em' | 'normal';
10
10
  color?: Color;
11
- [x: string]: React.ReactNode;
12
11
  align?: TextAlign;
13
12
  className?: string;
13
+ [x: string]: React.ReactNode;
14
14
  }
15
15
  export default function Headline(props: HeadlineProps): JSX.Element;
@@ -18,13 +18,17 @@ function Headline(props) {
18
18
  if (props.color) {
19
19
  styles.color = props.color;
20
20
  }
21
+ let Component = 'h4';
21
22
  if (defaultedProps.size === 'extra-large') {
22
- return (react_1.default.createElement("h1", { className: classes, style: styles }, props.children));
23
+ Component = 'h1';
23
24
  }
24
- if (defaultedProps.size === 'large') {
25
- return (react_1.default.createElement("h2", { className: classes, style: styles }, props.children));
25
+ else if (defaultedProps.size === 'larger') {
26
+ Component = 'h2';
26
27
  }
27
- return (react_1.default.createElement("h3", { className: classes, style: styles }, props.children));
28
+ else if (defaultedProps.size === 'large') {
29
+ Component = 'h3';
30
+ }
31
+ return (react_1.default.createElement(Component, { className: classes, style: styles }, props.children));
28
32
  }
29
33
  exports.default = Headline;
30
34
  //# sourceMappingURL=Headline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Headline.js","sourceRoot":"/","sources":["src/components/generic/Headline.tsx"],"names":[],"mappings":";;;;;AAEA,kDAA0B;AAC1B,4DAAoC;AAepC,SAAwB,QAAQ,CAAC,KAAoB;IACjD,MAAM,cAAc,mBAChB,IAAI,EAAE,QAAQ,IACX,KAAK,CACX,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE;QACrD,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,cAAc,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;QAC7D,gBAAgB,EAAE,cAAc,CAAC,WAAW;QAC5C,CAAC,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,cAAc,CAAC,IAAI;QACjD,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,KAAK;KACzC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,IAAI,KAAK,CAAC,KAAK,EAAE;QACb,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KAC9B;IAED,IAAI,cAAc,CAAC,IAAI,KAAK,aAAa,EAAE;QACvC,OAAO,CACH,sCAAI,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IAChC,KAAK,CAAC,QAAQ,CACd,CACR,CAAC;KACL;IAED,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE;QACjC,OAAO,CACH,sCAAI,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IAChC,KAAK,CAAC,QAAQ,CACd,CACR,CAAC;KACL;IAED,OAAO,CACH,sCAAI,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IAChC,KAAK,CAAC,QAAQ,CACd,CACR,CAAC;AACN,CAAC;AAzCD,2BAyCC","sourcesContent":["import { TextAlign } from '@/util/TextAlignment';\nimport { Color } from '@/util/Color';\nimport React from 'react';\nimport classNames from 'classnames';\nimport { PropsWithChildren } from 'react';\n\nexport interface HeadlineProps extends PropsWithChildren<any> {\n bold?: boolean;\n lineThrough?: boolean;\n size?: 'extra-large' | 'large' | 'normal';\n lineHeight?: '1em' | 'normal';\n color?: Color;\n [x: string]: React.ReactNode;\n align?: TextAlign;\n\n className?: string;\n}\n\nexport default function Headline(props: HeadlineProps) {\n const defaultedProps: HeadlineProps = {\n size: 'normal',\n ...props,\n };\n\n const classes = classNames(props.className, props.align, {\n headline: true,\n '--bold': defaultedProps.bold || props.size === 'extra-large',\n '--line-through': defaultedProps.lineThrough,\n [`--${defaultedProps.size}`]: defaultedProps.size,\n 'u-lh-1em': props.lineHeight === '1em',\n });\n\n const styles: any = {};\n\n if (props.color) {\n styles.color = props.color;\n }\n\n if (defaultedProps.size === 'extra-large') {\n return (\n <h1 className={classes} style={styles}>\n {props.children}\n </h1>\n );\n }\n\n if (defaultedProps.size === 'large') {\n return (\n <h2 className={classes} style={styles}>\n {props.children}\n </h2>\n );\n }\n\n return (\n <h3 className={classes} style={styles}>\n {props.children}\n </h3>\n );\n}\n"]}
1
+ {"version":3,"file":"Headline.js","sourceRoot":"/","sources":["src/components/generic/Headline.tsx"],"names":[],"mappings":";;;;;AAEA,kDAAkC;AAClC,4DAAoC;AAepC,SAAwB,QAAQ,CAAC,KAAoB;IACjD,MAAM,cAAc,mBAChB,IAAI,EAAE,QAAQ,IACX,KAAK,CACX,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE;QACrD,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,cAAc,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;QAC7D,gBAAgB,EAAE,cAAc,CAAC,WAAW;QAC5C,CAAC,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,cAAc,CAAC,IAAI;QACjD,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,KAAK;KACzC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,IAAI,KAAK,CAAC,KAAK,EAAE;QACb,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KAC9B;IAED,IAAI,SAAS,GAAgC,IAAI,CAAC;IAElD,IAAI,cAAc,CAAC,IAAI,KAAK,aAAa,EAAE;QACvC,SAAS,GAAG,IAAI,CAAC;KACpB;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE;QACzC,SAAS,GAAG,IAAI,CAAC;KACpB;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE;QACxC,SAAS,GAAG,IAAI,CAAC;KACpB;IAED,OAAO,CACH,8BAAC,SAAS,IAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IACvC,KAAK,CAAC,QAAQ,CACP,CACf,CAAC;AACN,CAAC;AAnCD,2BAmCC","sourcesContent":["import { TextAlign } from '@/util/TextAlignment';\nimport { Color } from '@/util/Color';\nimport React, { FC } from 'react';\nimport classNames from 'classnames';\nimport { PropsWithChildren } from 'react';\n\nexport interface HeadlineProps extends PropsWithChildren<any> {\n bold?: boolean;\n lineThrough?: boolean;\n size?: 'extra-large' | 'large' | 'normal' | 'larger';\n lineHeight?: '1em' | 'normal';\n color?: Color;\n align?: TextAlign;\n className?: string;\n\n [x: string]: React.ReactNode;\n}\n\nexport default function Headline(props: HeadlineProps) {\n const defaultedProps: HeadlineProps = {\n size: 'normal',\n ...props,\n };\n\n const classes = classNames(props.className, props.align, {\n headline: true,\n '--bold': defaultedProps.bold || props.size === 'extra-large',\n '--line-through': defaultedProps.lineThrough,\n [`--${defaultedProps.size}`]: defaultedProps.size,\n 'u-lh-1em': props.lineHeight === '1em',\n });\n\n const styles: any = {};\n\n if (props.color) {\n styles.color = props.color;\n }\n\n let Component: keyof JSX.IntrinsicElements = 'h4';\n\n if (defaultedProps.size === 'extra-large') {\n Component = 'h1';\n } else if (defaultedProps.size === 'larger') {\n Component = 'h2';\n } else if (defaultedProps.size === 'large') {\n Component = 'h3';\n }\n\n return (\n <Component className={classes} style={styles}>\n {props.children}\n </Component>\n );\n}\n"]}
@@ -65,7 +65,11 @@ export declare enum IconType {
65
65
  Champagne = "Champagne",
66
66
  Eye = "Eye",
67
67
  EyeBlocked = "EyeBlocked",
68
- Delete = "Delete"
68
+ Delete = "Delete",
69
+ ArrowLeft3 = "Arrow-3-Left",
70
+ ArrowUp3 = "Arrow-3-Up",
71
+ ArrowRight3 = "Arrow-3-Right",
72
+ ArrowDown3 = "Arrow-3-Down"
69
73
  }
70
74
  export interface IconProps {
71
75
  icon: IconType;
@@ -76,6 +76,10 @@ var IconType;
76
76
  IconType["Eye"] = "Eye";
77
77
  IconType["EyeBlocked"] = "EyeBlocked";
78
78
  IconType["Delete"] = "Delete";
79
+ IconType["ArrowLeft3"] = "Arrow-3-Left";
80
+ IconType["ArrowUp3"] = "Arrow-3-Up";
81
+ IconType["ArrowRight3"] = "Arrow-3-Right";
82
+ IconType["ArrowDown3"] = "Arrow-3-Down";
79
83
  })(IconType = exports.IconType || (exports.IconType = {}));
80
84
  function IconDropdown() {
81
85
  return react_1.default.createElement(Icon, { icon: IconType.ArrowDown2, size: "1em", color: Color_1.Color.DarkGrey });
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sourceRoot":"/","sources":["src/components/generic/Icon/Icon.tsx"],"names":[],"mappings":";;;;;;AAAA,wCAAqC;AACrC,kDAA0B;AAE1B,4DAAoC;AAEpC,0EAAwC;AAExC,IAAY,QAmEX;AAnED,WAAY,QAAQ;IAChB,2BAAe,CAAA;IACf,+BAAmB,CAAA;IACnB,2BAAe,CAAA;IACf,8BAAkB,CAAA;IAClB,uBAAW,CAAA;IACX,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,0CAA8B,CAAA;IAC9B,uBAAW,CAAA;IACX,kCAAsB,CAAA;IACtB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,4CAAgC,CAAA;IAChC,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;IACnB,uBAAW,CAAA;IACX,uBAAW,CAAA;IACX,+BAAmB,CAAA;IACnB,mCAAuB,CAAA;IACvB,6BAAiB,CAAA;IACjB,2BAAe,CAAA;IACf,oCAAwB,CAAA;IACxB,2BAAe,CAAA;IACf,kCAAsB,CAAA;IACtB,8BAAkB,CAAA;IAClB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,sCAA0B,CAAA;IAC1B,+BAAmB,CAAA;IACnB,qCAAyB,CAAA;IACzB,yBAAa,CAAA;IACb,sCAA0B,CAAA;IAC1B,oCAAwB,CAAA;IACxB,gCAAoB,CAAA;IACpB,oCAAwB,CAAA;IACxB,uCAA2B,CAAA;IAC3B,mCAAuB,CAAA;IACvB,yCAA6B,CAAA;IAC7B,uCAA2B,CAAA;IAC3B,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,iCAAqB,CAAA;IACrB,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,8BAAkB,CAAA;IAClB,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,uBAAW,CAAA;IACX,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,gCAAoB,CAAA;IACpB,0CAA8B,CAAA;IAC9B,kCAAsB,CAAA;IACtB,wCAA4B,CAAA;IAC5B,mCAAuB,CAAA;IACvB,uBAAW,CAAA;IACX,qCAAyB,CAAA;IACzB,6BAAiB,CAAA;AACrB,CAAC,EAnEW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAmEnB;AAkBD,SAAgB,YAAY;IACxB,OAAO,8BAAC,IAAI,IAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAC,KAAK,EAAC,KAAK,EAAE,aAAK,CAAC,QAAQ,GAAI,CAAC;AACjF,CAAC;AAFD,oCAEC;AAED,SAAgB,kBAAkB;IAC9B,OAAO,8BAAC,IAAI,IAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAC,KAAK,EAAC,KAAK,EAAE,aAAK,CAAC,QAAQ,GAAI,CAAC;AAC/E,CAAC;AAFD,gDAEC;AAED,SAAwB,IAAI,CAAC,KAAgB;IACzC,MAAM,YAAY,mBACd,IAAI,EAAE,MAAM,IACT,KAAK,CACX,CAAC;IAEF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC;IAE7C,2DAA2D;IAC3D,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,0BAAM,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,EAAG,0BAAc,CAAC,YAAY,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE;QAC5H,CAAC,0BAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,eAAe;QACpD,CAAC,0BAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,YAAY,CAAC,oBAAoB;QAC9D,CAAC,0BAAM,CAAC,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO;QAC7C,YAAY,EAAE,KAAK,CAAC,SAAS;QAC7B,CAAE,0BAAc,CAAC,YAAY,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,YAAY;KACxF,CAAC,CAAC;IAEH,MAAM,UAAU,GAAQ,EAAE,CAAC;IAE3B,IAAI,YAAY,CAAC,OAAO,EAAE;QACtB,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;KAC7C;IAED,MAAM,KAAK,GAAQ;QACf,QAAQ,EAAE,YAAY,CAAC,IAAI;KAC9B,CAAC;IAEF,IAAI,YAAY,CAAC,KAAK,EAAE;QACpB,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;KACpC;IAED,IAAI,YAAY,CAAC,eAAe,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE;QACpE,KAAK,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;KACxD;IAED,IAAI,YAAY,CAAC,oBAAoB,EAAE;QACnC,KAAK,CAAC,mBAAmB,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC;KACnD;IAED,OAAO,mDAAG,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,IAAM,UAAU,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC;AAC/E,CAAC;AAxCD,uBAwCC","sourcesContent":["import { Color } from '@/util/Color';\nimport React from 'react';\n\nimport classNames from 'classnames';\n\nimport styles from './Icon.module.scss';\n\nexport enum IconType {\n Email = 'Email',\n Degrees = 'Degrees',\n Hotel = 'Hotel',\n Hotel2 = 'Hotel-2',\n Map = 'Map',\n Info = 'Info',\n Deal = 'Deal',\n Money = 'Money',\n Lock = 'Lock',\n Check = 'Check',\n CheckCircled = 'Check-Circled',\n Bed = 'Bed',\n ApplePay = 'Apple-Pay',\n PayPal = 'PayPal',\n Person = 'Person',\n ChildFriendly = 'Child-Friendly',\n Fridge = 'Fridge',\n Smoking = 'Smoking',\n Gym = 'Gym',\n Bar = 'Bar',\n Laundry = 'Laundry',\n Breakfast = 'Breakfast',\n Snacks = 'Snacks',\n Phone = 'Phone',\n ViewMonth = 'View-Month',\n Ovolo = 'Ovolo',\n ViewWeek = 'View-Week',\n AirCon = 'Air-Con',\n WiFi = 'Wifi',\n Time = 'Time',\n People = 'People',\n Calendar = 'Calendar',\n CreditCard = 'Credit-Card',\n Spinner = 'Spinner',\n Fullscreen = 'Fullscreen',\n Star = 'Star',\n ArrowRight = 'Arrow-Right',\n ArrowLeft = 'Arrow-Left',\n ArrowUp = 'Arrow-Up',\n ArrowDown = 'Arrow-Down',\n ArrowLeft2 = 'Arrow-2-Left',\n ArrowUp2 = 'Arrow-2-Up',\n ArrowRight2 = 'Arrow-2-Right',\n ArrowDown2 = 'Arrow-2-Down',\n Close = 'Close',\n Remove = 'Remove',\n Add = 'Add',\n Dropdown = 'Dropdown',\n Train = 'Train',\n Taxi = 'Taxi',\n Share = 'Share',\n Print = 'Print',\n LogOut = 'Log-Out',\n Error = 'Error',\n Edit = 'Edit',\n Bus = 'Bus',\n Airplane = 'Airplane',\n Menu = 'Menu',\n LootBag = 'loot-bag',\n LateCheckout = 'Late-Checkout',\n RoomSize = 'Room-Size',\n RoomUpgrade = 'Room-Upgrade',\n Champagne = 'Champagne',\n Eye = 'Eye',\n EyeBlocked = 'EyeBlocked',\n Delete = 'Delete',\n}\n\nexport interface IconProps {\n icon: IconType;\n size?: string;\n name?: string;\n\n color?: Color;\n useColorAsBackground?: boolean;\n backgroundColor?: Color;\n\n noPadding?: boolean;\n\n onClick?: () => void;\n borderRadius?: 'oval' | 'round';\n className?: string;\n}\n\nexport function IconDropdown() {\n return <Icon icon={IconType.ArrowDown2} size=\"1em\" color={Color.DarkGrey} />;\n}\n\nexport function IconDropdownFilled() {\n return <Icon icon={IconType.Dropdown} size=\"1em\" color={Color.DarkGrey} />;\n}\n\nexport default function Icon(props: IconProps) {\n const defaultProps: IconProps = {\n size: '18px',\n ...props,\n };\n\n const name = props.name || defaultProps.icon;\n\n // TODO: remove the diji-icon class from all external uses.\n const classes = classNames(styles['diji-icon'], props.className, (styles as any)[`diji-icon${defaultProps.icon}`], 'diji-icon', {\n [styles['--has-bg']]: !!defaultProps.backgroundColor,\n [styles['--has-custom-bg']]: defaultProps.useColorAsBackground,\n [styles['--clickable']]: defaultProps.onClick,\n 'u-pad-none': props.noPadding,\n [(styles as any)[`--border-${defaultProps.borderRadius}`]]: defaultProps.borderRadius,\n });\n\n const extraProps: any = {};\n\n if (defaultProps.onClick) {\n extraProps.onClick = defaultProps.onClick;\n }\n\n const style: any = {\n fontSize: defaultProps.size,\n };\n\n if (defaultProps.color) {\n style.color = defaultProps.color;\n }\n\n if (defaultProps.backgroundColor && !defaultProps.useColorAsBackground) {\n style.backgroundColor = defaultProps.backgroundColor;\n }\n\n if (defaultProps.useColorAsBackground) {\n style['--custom-bg-color'] = defaultProps.color;\n }\n\n return <i className={classes} style={style} {...extraProps} name={name} />;\n}\n"]}
1
+ {"version":3,"file":"Icon.js","sourceRoot":"/","sources":["src/components/generic/Icon/Icon.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Color } from '@/util/Color';\nimport React from 'react';\n\nimport classNames from 'classnames';\n\nimport styles from './Icon.module.scss';\n\nexport enum IconType {\n Email = 'Email',\n Degrees = 'Degrees',\n Hotel = 'Hotel',\n Hotel2 = 'Hotel-2',\n Map = 'Map',\n Info = 'Info',\n Deal = 'Deal',\n Money = 'Money',\n Lock = 'Lock',\n Check = 'Check',\n CheckCircled = 'Check-Circled',\n Bed = 'Bed',\n ApplePay = 'Apple-Pay',\n PayPal = 'PayPal',\n Person = 'Person',\n ChildFriendly = 'Child-Friendly',\n Fridge = 'Fridge',\n Smoking = 'Smoking',\n Gym = 'Gym',\n Bar = 'Bar',\n Laundry = 'Laundry',\n Breakfast = 'Breakfast',\n Snacks = 'Snacks',\n Phone = 'Phone',\n ViewMonth = 'View-Month',\n Ovolo = 'Ovolo',\n ViewWeek = 'View-Week',\n AirCon = 'Air-Con',\n WiFi = 'Wifi',\n Time = 'Time',\n People = 'People',\n Calendar = 'Calendar',\n CreditCard = 'Credit-Card',\n Spinner = 'Spinner',\n Fullscreen = 'Fullscreen',\n Star = 'Star',\n ArrowRight = 'Arrow-Right',\n ArrowLeft = 'Arrow-Left',\n ArrowUp = 'Arrow-Up',\n ArrowDown = 'Arrow-Down',\n ArrowLeft2 = 'Arrow-2-Left',\n ArrowUp2 = 'Arrow-2-Up',\n ArrowRight2 = 'Arrow-2-Right',\n ArrowDown2 = 'Arrow-2-Down',\n Close = 'Close',\n Remove = 'Remove',\n Add = 'Add',\n Dropdown = 'Dropdown',\n Train = 'Train',\n Taxi = 'Taxi',\n Share = 'Share',\n Print = 'Print',\n LogOut = 'Log-Out',\n Error = 'Error',\n Edit = 'Edit',\n Bus = 'Bus',\n Airplane = 'Airplane',\n Menu = 'Menu',\n LootBag = 'loot-bag',\n LateCheckout = 'Late-Checkout',\n RoomSize = 'Room-Size',\n RoomUpgrade = 'Room-Upgrade',\n Champagne = 'Champagne',\n Eye = 'Eye',\n EyeBlocked = 'EyeBlocked',\n Delete = 'Delete',\n ArrowLeft3 = 'Arrow-3-Left',\n ArrowUp3 = 'Arrow-3-Up',\n ArrowRight3 = 'Arrow-3-Right',\n ArrowDown3 = 'Arrow-3-Down',\n}\n\nexport interface IconProps {\n icon: IconType;\n size?: string;\n name?: string;\n\n color?: Color;\n useColorAsBackground?: boolean;\n backgroundColor?: Color;\n\n noPadding?: boolean;\n\n onClick?: () => void;\n borderRadius?: 'oval' | 'round';\n className?: string;\n}\n\nexport function IconDropdown() {\n return <Icon icon={IconType.ArrowDown2} size=\"1em\" color={Color.DarkGrey} />;\n}\n\nexport function IconDropdownFilled() {\n return <Icon icon={IconType.Dropdown} size=\"1em\" color={Color.DarkGrey} />;\n}\n\nexport default function Icon(props: IconProps) {\n const defaultProps: IconProps = {\n size: '18px',\n ...props,\n };\n\n const name = props.name || defaultProps.icon;\n\n // TODO: remove the diji-icon class from all external uses.\n const classes = classNames(styles['diji-icon'], props.className, (styles as any)[`diji-icon${defaultProps.icon}`], 'diji-icon', {\n [styles['--has-bg']]: !!defaultProps.backgroundColor,\n [styles['--has-custom-bg']]: defaultProps.useColorAsBackground,\n [styles['--clickable']]: defaultProps.onClick,\n 'u-pad-none': props.noPadding,\n [(styles as any)[`--border-${defaultProps.borderRadius}`]]: defaultProps.borderRadius,\n });\n\n const extraProps: any = {};\n\n if (defaultProps.onClick) {\n extraProps.onClick = defaultProps.onClick;\n }\n\n const style: any = {\n fontSize: defaultProps.size,\n };\n\n if (defaultProps.color) {\n style.color = defaultProps.color;\n }\n\n if (defaultProps.backgroundColor && !defaultProps.useColorAsBackground) {\n style.backgroundColor = defaultProps.backgroundColor;\n }\n\n if (defaultProps.useColorAsBackground) {\n style['--custom-bg-color'] = defaultProps.color;\n }\n\n return <i className={classes} style={style} {...extraProps} name={name} />;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ReactNode, LegacyRef } from 'react';
1
+ import { LegacyRef, ReactNode } from 'react';
2
2
  import { Placement, PositioningStrategy } from '@popperjs/core';
3
3
  export type OverlayProps = {
4
4
  children: ReactNode | ReactNode[];
@@ -15,6 +15,7 @@ export type OverlayProps = {
15
15
  onClose?: (e: Event) => void;
16
16
  offset?: [number, number];
17
17
  overlayRef?: LegacyRef<HTMLDivElement>;
18
+ preventScroll?: boolean;
18
19
  isAboveNav?: boolean;
19
20
  };
20
21
  export declare const Overlay: (props: OverlayProps) => JSX.Element;
@@ -1,11 +1,33 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
29
  exports.Overlay = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const react_2 = require("react");
30
+ const react_1 = __importStar(require("react"));
9
31
  const react_popper_1 = require("react-popper");
10
32
  const Overlay_module_scss_1 = __importDefault(require("./Overlay.module.scss"));
11
33
  const Portal_1 = require("../Portal/Portal");
@@ -14,12 +36,12 @@ const Fade_1 = __importDefault(require("../../../animations/Fade"));
14
36
  const classnames_1 = __importDefault(require("classnames"));
15
37
  const Overlay = (props) => {
16
38
  var _a, _b, _c;
17
- const [referenceElement, setReferenceElement] = (0, react_2.useState)(null);
18
- const [popperElement, setPopperElement] = (0, react_2.useState)(null);
19
- const [isOpen, setIsOpen] = (0, react_2.useState)(props.open);
39
+ const [referenceElement, setReferenceElement] = (0, react_1.useState)(null);
40
+ const [popperElement, setPopperElement] = (0, react_1.useState)(null);
41
+ const [isOpen, setIsOpen] = (0, react_1.useState)(props.open);
20
42
  const { onBodyClickExcept } = (0, hooks_1.useBodyClick)();
21
43
  // Used to prevent premature closing of window before it gets a chance to open
22
- (0, react_2.useEffect)(() => {
44
+ (0, react_1.useEffect)(() => {
23
45
  let timeout;
24
46
  let cancelled = false;
25
47
  if (props.open) {
@@ -38,7 +60,7 @@ const Overlay = (props) => {
38
60
  clearTimeout(timeout);
39
61
  };
40
62
  }, [props.open]);
41
- (0, react_2.useLayoutEffect)(() => {
63
+ (0, react_1.useLayoutEffect)(() => {
42
64
  const { remove } = onBodyClickExcept((e) => {
43
65
  var _a;
44
66
  if (isOpen) {
@@ -51,6 +73,16 @@ const Overlay = (props) => {
51
73
  remove();
52
74
  };
53
75
  }, [isOpen, popperElement]);
76
+ (0, react_1.useEffect)(() => {
77
+ if (props.strategy === 'fixed' && props.open && props.preventScroll) {
78
+ document.body.style.setProperty('overflow', 'hidden');
79
+ }
80
+ return () => {
81
+ if (props.strategy === 'fixed' && props.open && props.preventScroll) {
82
+ document.body.style.removeProperty('overflow');
83
+ }
84
+ };
85
+ }, [props.open, props.preventScroll, props.strategy]);
54
86
  const modifiers = [
55
87
  {
56
88
  name: 'flip',
@@ -59,6 +91,17 @@ const Overlay = (props) => {
59
91
  fallbackPlacements: props.fallbackPlacements,
60
92
  },
61
93
  },
94
+ {
95
+ name: 'preventOverflow',
96
+ enabled: true,
97
+ options: {
98
+ altAxis: false,
99
+ altBoundary: false,
100
+ tether: false,
101
+ rootBoundary: 'body',
102
+ padding: 8,
103
+ },
104
+ },
62
105
  ];
63
106
  if (props.offset) {
64
107
  modifiers.push({
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","sourceRoot":"/","sources":["src/components/generic/Overlay/Overlay.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { useState, ReactNode, useEffect, useLayoutEffect, LegacyRef } from 'react';\nimport { Modifier, usePopper } from 'react-popper';\n\nimport styles from './Overlay.module.scss';\nimport { RoomstayPortal } from '@/components/generic/Portal/Portal';\nimport { useBodyClick } from '@frontend/hooks';\nimport FadeAnimation from '@/animations/Fade';\nimport classNames from 'classnames';\nimport { Placement, PositioningStrategy } from '@popperjs/core';\n\nexport type OverlayProps = {\n children: ReactNode | ReactNode[];\n open: boolean;\n\n usePortal?: boolean;\n container?: HTMLElement | null;\n\n followElement?: Element | null;\n className?: string;\n containerClassName?: string;\n\n hideStyles?: boolean;\n\n placement?: Placement;\n fallbackPlacements?: Placement;\n strategy?: PositioningStrategy;\n\n onClose?: (e: Event) => void;\n offset?: [number, number];\n overlayRef?: LegacyRef<HTMLDivElement>;\n isAboveNav?: boolean;\n};\n\nexport const Overlay = (props: OverlayProps) => {\n const [referenceElement, setReferenceElement] = useState<Element | null>(null);\n const [popperElement, setPopperElement] = useState<HTMLElement | null>(null);\n\n const [isOpen, setIsOpen] = useState(props.open);\n\n const { onBodyClickExcept } = useBodyClick();\n\n // Used to prevent premature closing of window before it gets a chance to open\n useEffect(() => {\n let timeout: NodeJS.Timeout;\n let cancelled = false;\n\n if (props.open) {\n setIsOpen(props.open);\n } else {\n // Allow for fade out animation to run before removing element\n timeout = setTimeout(() => {\n if (!cancelled) {\n setIsOpen(false);\n }\n }, 500);\n }\n\n return () => {\n cancelled = true;\n clearTimeout(timeout);\n };\n }, [props.open]);\n\n useLayoutEffect(() => {\n const { remove } = onBodyClickExcept((e: Event) => {\n if (isOpen) {\n e.preventDefault();\n e.stopPropagation();\n props.onClose?.(e);\n }\n }, popperElement as HTMLDivElement);\n\n return () => {\n remove();\n };\n }, [isOpen, popperElement]);\n\n const modifiers: Modifier<any>[] = [\n {\n name: 'flip',\n options: {\n flipVariations: false,\n fallbackPlacements: props.fallbackPlacements,\n },\n },\n ];\n if (props.offset) {\n modifiers.push({\n name: 'offset',\n options: {\n offset: props.offset,\n },\n });\n }\n\n const { styles: popperStyles, attributes } = usePopper(props.followElement ?? referenceElement, popperElement, {\n placement: props.placement ?? 'bottom',\n strategy: props.strategy ?? 'absolute',\n modifiers,\n });\n\n const overlayClasses = classNames(props.className, {\n [styles['rs-overlay']]: !props.hideStyles,\n });\n\n const overlayElement = (\n // Here we depend on the props.open as that's the \"intended\" state. Fade animation will handle it going in and out.\n\n <>\n {!props.followElement && <span ref={setReferenceElement}></span>}\n\n <div\n ref={setPopperElement}\n style={popperStyles.popper}\n {...attributes.popper}\n className={classNames(styles['rs-popper-container'], props.containerClassName, { [styles['--above-nav']]: props.isAboveNav })}\n >\n <FadeAnimation open={props.open}>\n <div ref={props.overlayRef} className={overlayClasses}>\n {props.children}\n </div>\n </FadeAnimation>\n </div>\n </>\n );\n\n if (!isOpen) {\n return <></>;\n }\n\n if (props.usePortal || props.container) {\n // PreventZIndex is only enabled if container is not specified, since modal will be appended to body, Roomstay engine by default will overlay it\n return (\n <RoomstayPortal target={props.container || document.body} preventZIndex={!!props.container}>\n {overlayElement}\n </RoomstayPortal>\n );\n }\n\n return overlayElement;\n};\n"]}
1
+ {"version":3,"file":"Overlay.js","sourceRoot":"/","sources":["src/components/generic/Overlay/Overlay.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { LegacyRef, ReactNode, useEffect, useLayoutEffect, useState } from 'react';\nimport { Modifier, usePopper } from 'react-popper';\n\nimport styles from './Overlay.module.scss';\nimport { RoomstayPortal } from '@/components/generic/Portal/Portal';\nimport { useBodyClick } from '@frontend/hooks';\nimport FadeAnimation from '@/animations/Fade';\nimport classNames from 'classnames';\nimport { Placement, PositioningStrategy } from '@popperjs/core';\n\nexport type OverlayProps = {\n children: ReactNode | ReactNode[];\n open: boolean;\n\n usePortal?: boolean;\n container?: HTMLElement | null;\n\n followElement?: Element | null;\n className?: string;\n containerClassName?: string;\n\n hideStyles?: boolean;\n\n placement?: Placement;\n fallbackPlacements?: Placement;\n strategy?: PositioningStrategy;\n\n onClose?: (e: Event) => void;\n offset?: [number, number];\n overlayRef?: LegacyRef<HTMLDivElement>;\n preventScroll?: boolean;\n isAboveNav?: boolean;\n};\n\nexport const Overlay = (props: OverlayProps) => {\n const [referenceElement, setReferenceElement] = useState<Element | null>(null);\n const [popperElement, setPopperElement] = useState<HTMLElement | null>(null);\n\n const [isOpen, setIsOpen] = useState(props.open);\n\n const { onBodyClickExcept } = useBodyClick();\n\n // Used to prevent premature closing of window before it gets a chance to open\n useEffect(() => {\n let timeout: NodeJS.Timeout;\n let cancelled = false;\n\n if (props.open) {\n setIsOpen(props.open);\n } else {\n // Allow for fade out animation to run before removing element\n timeout = setTimeout(() => {\n if (!cancelled) {\n setIsOpen(false);\n }\n }, 500);\n }\n\n return () => {\n cancelled = true;\n clearTimeout(timeout);\n };\n }, [props.open]);\n\n useLayoutEffect(() => {\n const { remove } = onBodyClickExcept((e: Event) => {\n if (isOpen) {\n e.preventDefault();\n e.stopPropagation();\n props.onClose?.(e);\n }\n }, popperElement as HTMLDivElement);\n\n return () => {\n remove();\n };\n }, [isOpen, popperElement]);\n\n useEffect(() => {\n if (props.strategy === 'fixed' && props.open && props.preventScroll) {\n document.body.style.setProperty('overflow', 'hidden');\n }\n return () => {\n if (props.strategy === 'fixed' && props.open && props.preventScroll) {\n document.body.style.removeProperty('overflow');\n }\n };\n }, [props.open, props.preventScroll, props.strategy]);\n\n const modifiers: Modifier<any>[] = [\n {\n name: 'flip',\n options: {\n flipVariations: false,\n fallbackPlacements: props.fallbackPlacements,\n },\n },\n {\n name: 'preventOverflow',\n enabled: true,\n options: {\n altAxis: false,\n altBoundary: false,\n tether: false,\n rootBoundary: 'body',\n padding: 8,\n },\n },\n ];\n if (props.offset) {\n modifiers.push({\n name: 'offset',\n options: {\n offset: props.offset,\n },\n });\n }\n\n const { styles: popperStyles, attributes } = usePopper(props.followElement ?? referenceElement, popperElement, {\n placement: props.placement ?? 'bottom',\n strategy: props.strategy ?? 'absolute',\n modifiers,\n });\n\n const overlayClasses = classNames(props.className, {\n [styles['rs-overlay']]: !props.hideStyles,\n });\n\n const overlayElement = (\n // Here we depend on the props.open as that's the \"intended\" state. Fade animation will handle it going in and out.\n\n <>\n {!props.followElement && <span ref={setReferenceElement}></span>}\n\n <div\n ref={setPopperElement}\n style={popperStyles.popper}\n {...attributes.popper}\n className={classNames(styles['rs-popper-container'], props.containerClassName, { [styles['--above-nav']]: props.isAboveNav })}\n >\n <FadeAnimation open={props.open}>\n <div ref={props.overlayRef} className={overlayClasses}>\n {props.children}\n </div>\n </FadeAnimation>\n </div>\n </>\n );\n\n if (!isOpen) {\n return <></>;\n }\n\n if (props.usePortal || props.container) {\n // PreventZIndex is only enabled if container is not specified, since modal will be appended to body, Roomstay engine by default will overlay it\n return (\n <RoomstayPortal target={props.container || document.body} preventZIndex={!!props.container}>\n {overlayElement}\n </RoomstayPortal>\n );\n }\n\n return overlayElement;\n};\n"]}
@@ -33,7 +33,7 @@ const Icon_1 = __importStar(require("../Icon/Icon"));
33
33
  const TextBox_1 = __importDefault(require("../TextBox"));
34
34
  const PasswordBox_module_scss_1 = __importDefault(require("./PasswordBox.module.scss"));
35
35
  exports.PasswordBox = (0, react_2.forwardRef)(function PasswordBox(props, ref) {
36
- const [canSeePassword, setCanSeePassword] = (0, react_2.useState)(true);
36
+ const [canSeePassword, setCanSeePassword] = (0, react_2.useState)(false);
37
37
  const inputProperties = Object.assign(Object.assign({}, props), { type: canSeePassword ? 'text' : 'password' });
38
38
  const onSwitch = () => {
39
39
  setCanSeePassword(!canSeePassword);
@@ -41,6 +41,6 @@ exports.PasswordBox = (0, react_2.forwardRef)(function PasswordBox(props, ref) {
41
41
  return (react_1.default.createElement(react_1.default.Fragment, null,
42
42
  react_1.default.createElement("div", { className: PasswordBox_module_scss_1.default.passwordbox },
43
43
  react_1.default.createElement(TextBox_1.default, Object.assign({ ref: ref }, inputProperties)),
44
- react_1.default.createElement(Icon_1.default, { className: PasswordBox_module_scss_1.default['suffix-icon'], icon: canSeePassword ? Icon_1.IconType.Eye : Icon_1.IconType.EyeBlocked, onClick: onSwitch }))));
44
+ react_1.default.createElement(Icon_1.default, { className: PasswordBox_module_scss_1.default['suffix-icon'], icon: canSeePassword ? Icon_1.IconType.EyeBlocked : Icon_1.IconType.Eye, onClick: onSwitch }))));
45
45
  });
46
46
  //# sourceMappingURL=PasswordBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordBox.js","sourceRoot":"/","sources":["src/components/generic/PasswordBox/PasswordBox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iCAA6C;AAC7C,uEAAgE;AAChE,yDAAmD;AACnD,wFAA+C;AAElC,QAAA,WAAW,GAAG,IAAA,kBAAU,EAAiC,SAAS,WAAW,CAAC,KAAK,EAAE,GAAG;IACjG,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IAE3D,MAAM,eAAe,mCACd,KAAK,KACR,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAC7C,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;QAClB,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,OAAO,CACH;QACI,uCAAK,SAAS,EAAE,iCAAM,CAAC,WAAW;YAC9B,8BAAC,iBAAO,kBAAC,GAAG,EAAE,GAAG,IAAM,eAAe,EAAI;YAC1C,8BAAC,cAAI,IAAC,SAAS,EAAE,iCAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,eAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,eAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,GAAI,CACtH,CACP,CACN,CAAC;AACN,CAAC,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { forwardRef, useState } from 'react';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport TextBox, { TextBoxProps } from '../TextBox';\nimport styles from './PasswordBox.module.scss';\n\nexport const PasswordBox = forwardRef<HTMLInputElement, TextBoxProps>(function PasswordBox(props, ref) {\n const [canSeePassword, setCanSeePassword] = useState(true);\n\n const inputProperties: TextBoxProps = {\n ...props,\n type: canSeePassword ? 'text' : 'password',\n };\n\n const onSwitch = () => {\n setCanSeePassword(!canSeePassword);\n };\n\n return (\n <>\n <div className={styles.passwordbox}>\n <TextBox ref={ref} {...inputProperties} />\n <Icon className={styles['suffix-icon']} icon={canSeePassword ? IconType.Eye : IconType.EyeBlocked} onClick={onSwitch} />\n </div>\n </>\n );\n});\n"]}
1
+ {"version":3,"file":"PasswordBox.js","sourceRoot":"/","sources":["src/components/generic/PasswordBox/PasswordBox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iCAA6C;AAC7C,uEAAgE;AAChE,yDAAmD;AACnD,wFAA+C;AAElC,QAAA,WAAW,GAAG,IAAA,kBAAU,EAAiC,SAAS,WAAW,CAAC,KAAK,EAAE,GAAG;IACjG,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAE5D,MAAM,eAAe,mCACd,KAAK,KACR,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAC7C,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;QAClB,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,OAAO,CACH;QACI,uCAAK,SAAS,EAAE,iCAAM,CAAC,WAAW;YAC9B,8BAAC,iBAAO,kBAAC,GAAG,EAAE,GAAG,IAAM,eAAe,EAAI;YAC1C,8BAAC,cAAI,IAAC,SAAS,EAAE,iCAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,eAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,eAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,GAAI,CACtH,CACP,CACN,CAAC;AACN,CAAC,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { forwardRef, useState } from 'react';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport TextBox, { TextBoxProps } from '../TextBox';\nimport styles from './PasswordBox.module.scss';\n\nexport const PasswordBox = forwardRef<HTMLInputElement, TextBoxProps>(function PasswordBox(props, ref) {\n const [canSeePassword, setCanSeePassword] = useState(false);\n\n const inputProperties: TextBoxProps = {\n ...props,\n type: canSeePassword ? 'text' : 'password',\n };\n\n const onSwitch = () => {\n setCanSeePassword(!canSeePassword);\n };\n\n return (\n <>\n <div className={styles.passwordbox}>\n <TextBox ref={ref} {...inputProperties} />\n <Icon className={styles['suffix-icon']} icon={canSeePassword ? IconType.EyeBlocked : IconType.Eye} onClick={onSwitch} />\n </div>\n </>\n );\n});\n"]}
@@ -0,0 +1,8 @@
1
+ import { FC } from 'react';
2
+ import { VGSCardName } from '../../../models/Api/HotelDTO';
3
+ interface InlinePaymentCardProps {
4
+ vgsCardName?: VGSCardName;
5
+ large?: boolean;
6
+ }
7
+ declare const InlinePaymentCard: FC<InlinePaymentCardProps>;
8
+ export default InlinePaymentCard;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const RoomstayThemeEngine_1 = __importDefault(require("../../../providers/RoomstayThemeEngine"));
8
+ const InlinePaymentCard_module_scss_1 = __importDefault(require("./InlinePaymentCard.module.scss"));
9
+ const classnames_1 = __importDefault(require("classnames"));
10
+ const InlinePaymentCard = ({ vgsCardName, large }) => {
11
+ return (react_1.default.createElement("div", { className: (0, classnames_1.default)(InlinePaymentCard_module_scss_1.default.root, {
12
+ [InlinePaymentCard_module_scss_1.default['--large']]: large,
13
+ }), style: { backgroundImage: `url('${RoomstayThemeEngine_1.default.getImageAssetUrl() + vgsCardName + '.png'}')` } }));
14
+ };
15
+ exports.default = InlinePaymentCard;
16
+ //# sourceMappingURL=InlinePaymentCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlinePaymentCard.js","sourceRoot":"/","sources":["src/components/generic/PaymentCard/InlinePaymentCard.tsx"],"names":[],"mappings":";;;;;AAAA,kDAAkC;AAClC,0FAAkE;AAClE,oGAAqD;AAErD,4DAAoC;AAOpC,MAAM,iBAAiB,GAA+B,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE;IAC7E,OAAO,CACH,uCACI,SAAS,EAAE,IAAA,oBAAU,EAAC,uCAAM,CAAC,IAAI,EAAE;YAC/B,CAAE,uCAAc,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK;SACtC,CAAC,EACF,KAAK,EAAE,EAAE,eAAe,EAAE,QAAQ,6BAAmB,CAAC,gBAAgB,EAAE,GAAG,WAAW,GAAG,MAAM,IAAI,EAAE,GACvG,CACL,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC","sourcesContent":["import React, { FC } from 'react';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\nimport styles from './InlinePaymentCard.module.scss';\nimport { VGSCardName } from '@/models/Api/HotelDTO';\nimport classNames from 'classnames';\n\ninterface InlinePaymentCardProps {\n vgsCardName?: VGSCardName;\n large?: boolean;\n}\n\nconst InlinePaymentCard: FC<InlinePaymentCardProps> = ({ vgsCardName, large }) => {\n return (\n <div\n className={classNames(styles.root, {\n [(styles as any)['--large']]: large,\n })}\n style={{ backgroundImage: `url('${RoomstayThemeEngine.getImageAssetUrl() + vgsCardName + '.png'}')` }}\n />\n );\n};\n\nexport default InlinePaymentCard;\n"]}
@@ -0,0 +1,8 @@
1
+ import { FC } from 'react';
2
+ import { IRoomstayMemberCards } from '@roomstay/core';
3
+ interface InlinePaymentOptionProps {
4
+ card?: IRoomstayMemberCards;
5
+ active?: boolean;
6
+ }
7
+ declare const InlinePaymentOption: FC<InlinePaymentOptionProps>;
8
+ export default InlinePaymentOption;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const react_1 = __importDefault(require("react"));
30
+ const InlinePaymentCard_1 = __importDefault(require("./InlinePaymentCard"));
31
+ const Text_1 = __importStar(require("../Text"));
32
+ const Color_1 = require("../../../util/Color");
33
+ const AcceptablePaymentCard_1 = __importDefault(require("../../steps/confirmation/PaymentDetails/AcceptablePaymentCard"));
34
+ const TextAlignment_1 = require("../../../util/TextAlignment");
35
+ const InlinePaymentOption_module_scss_1 = __importDefault(require("./InlinePaymentOption.module.scss"));
36
+ const react_i18next_1 = require("react-i18next");
37
+ const Translation_1 = require("../../../translations/Translation");
38
+ const contexts_1 = require("../../../contexts");
39
+ const Pill_1 = __importStar(require("../Pill"));
40
+ const InlinePaymentOption = ({ card, active }) => {
41
+ const { t } = (0, react_i18next_1.useTranslation)();
42
+ const { roomstayMember } = (0, contexts_1.useMemberContext)();
43
+ const displayExpiry = (expiry) => {
44
+ return expiry.slice(0, 2) + ' / ' + expiry.slice(2);
45
+ };
46
+ return (react_1.default.createElement("div", { className: InlinePaymentOption_module_scss_1.default.root },
47
+ react_1.default.createElement("div", { className: "flex-shrink-0" }, card ? react_1.default.createElement(InlinePaymentCard_1.default, { vgsCardName: card.type, large: true }) : null),
48
+ react_1.default.createElement("div", null,
49
+ react_1.default.createElement(Text_1.default, { align: TextAlignment_1.TextAlign.Left, type: Text_1.TextType.Small, color: Color_1.Color.Navy }, card ? `**** **** **** ${card.cardNumber.slice(-4)}` : t(Translation_1.Translation.Step.Confirmation.CardLabel)),
50
+ react_1.default.createElement(Text_1.default, { className: "u-marg-top--lighter", align: TextAlignment_1.TextAlign.Left, type: Text_1.TextType.Caption, color: Color_1.Color.DarkGrey }, card ? `Expires ${displayExpiry(card.expiry)}` : t(Translation_1.Translation.Step.Confirmation.CardSubLabel))),
51
+ !card && (react_1.default.createElement("div", null,
52
+ react_1.default.createElement(AcceptablePaymentCard_1.default, { style: {
53
+ width: 24,
54
+ height: 16,
55
+ borderRadius: 1.5,
56
+ border: '0.5px solid #DFE1E5',
57
+ }, isCurrent: () => true }))),
58
+ (roomstayMember === null || roomstayMember === void 0 ? void 0 : roomstayMember.defaultCard) && card && card.cardId === roomstayMember.defaultCard && (react_1.default.createElement(Pill_1.default, { size: "small", type: Pill_1.PillType.Primary }, "DEFAULT CARD"))));
59
+ };
60
+ exports.default = InlinePaymentOption;
61
+ //# sourceMappingURL=InlinePaymentOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlinePaymentOption.js","sourceRoot":"/","sources":["src/components/generic/PaymentCard/InlinePaymentOption.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAkC;AAElC,2GAAmF;AACnF,kEAA2D;AAC3D,wCAAqC;AACrC,iIAAyG;AAEzG,wDAAiD;AACjD,wGAAuD;AACvD,iDAA+C;AAC/C,4DAAyD;AACzD,yCAA8C;AAC9C,kEAA2D;AAO3D,MAAM,mBAAmB,GAAiC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IAC3E,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAC/B,MAAM,EAAE,cAAc,EAAE,GAAG,IAAA,2BAAgB,GAAE,CAAC;IAC9C,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE;QACrC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC;IACF,OAAO,CACH,uCAAK,SAAS,EAAE,yCAAM,CAAC,IAAI;QACvB,uCAAK,SAAS,EAAC,eAAe,IAAE,IAAI,CAAC,CAAC,CAAC,8BAAC,2BAAiB,IAAC,WAAW,EAAE,IAAI,CAAC,IAAmB,EAAE,KAAK,SAAG,CAAC,CAAC,CAAC,IAAI,CAAO;QACvH;YACI,8BAAC,cAAI,IAAC,KAAK,EAAE,yBAAS,CAAC,IAAI,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,aAAK,CAAC,IAAI,IAC/D,IAAI,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAC/F;YACP,8BAAC,cAAI,IAAC,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,yBAAS,CAAC,IAAI,EAAE,IAAI,EAAE,eAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,aAAK,CAAC,QAAQ,IACrG,IAAI,CAAC,CAAC,CAAC,WAAW,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAC5F,CACL;QACL,CAAC,IAAI,IAAI,CACN;YACI,8BAAC,+BAAqB,IAClB,KAAK,EAAE;oBACH,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;oBACV,YAAY,EAAE,GAAG;oBACjB,MAAM,EAAE,qBAAqB;iBAChC,EACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,GACvB,CACA,CACT;QACA,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,KAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,WAAW,IAAI,CAClF,8BAAC,cAAI,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,eAAQ,CAAC,OAAO,mBAElC,CACV,CACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC","sourcesContent":["import React, { FC } from 'react';\nimport { IRoomstayMemberCards } from '@roomstay/core';\nimport InlinePaymentCard from '@/components/generic/PaymentCard/InlinePaymentCard';\nimport Text, { TextType } from '@/components/generic/Text';\nimport { Color } from '@/util/Color';\nimport AcceptablePaymentCard from '@/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard';\nimport { VGSCardName } from '@/models/Api/HotelDTO';\nimport { TextAlign } from '@/util/TextAlignment';\nimport styles from './InlinePaymentOption.module.scss';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from '@/translations/Translation';\nimport { useMemberContext } from '@/contexts';\nimport Pill, { PillType } from '@/components/generic/Pill';\n\ninterface InlinePaymentOptionProps {\n card?: IRoomstayMemberCards;\n active?: boolean;\n}\n\nconst InlinePaymentOption: FC<InlinePaymentOptionProps> = ({ card, active }) => {\n const { t } = useTranslation();\n const { roomstayMember } = useMemberContext();\n const displayExpiry = (expiry: string) => {\n return expiry.slice(0, 2) + ' / ' + expiry.slice(2);\n };\n return (\n <div className={styles.root}>\n <div className=\"flex-shrink-0\">{card ? <InlinePaymentCard vgsCardName={card.type as VGSCardName} large /> : null}</div>\n <div>\n <Text align={TextAlign.Left} type={TextType.Small} color={Color.Navy}>\n {card ? `**** **** **** ${card.cardNumber.slice(-4)}` : t(Translation.Step.Confirmation.CardLabel)}\n </Text>\n <Text className=\"u-marg-top--lighter\" align={TextAlign.Left} type={TextType.Caption} color={Color.DarkGrey}>\n {card ? `Expires ${displayExpiry(card.expiry)}` : t(Translation.Step.Confirmation.CardSubLabel)}\n </Text>\n </div>\n {!card && (\n <div>\n <AcceptablePaymentCard\n style={{\n width: 24,\n height: 16,\n borderRadius: 1.5,\n border: '0.5px solid #DFE1E5',\n }}\n isCurrent={() => true}\n />\n </div>\n )}\n {roomstayMember?.defaultCard && card && card.cardId === roomstayMember.defaultCard && (\n <Pill size=\"small\" type={PillType.Primary}>\n DEFAULT CARD\n </Pill>\n )}\n </div>\n );\n};\n\nexport default InlinePaymentOption;\n"]}
@@ -10,7 +10,10 @@ const RoomstayThemeEngine_1 = __importDefault(require("../../../providers/Roomst
10
10
  const VGSHooks_1 = require("../../../hooks/VGSHooks");
11
11
  const SmallSpinner_1 = __importDefault(require("../loader/SmallSpinner"));
12
12
  const PaymentCardHelper_1 = require("../../../util/PaymentCardHelper");
13
+ const react_i18next_1 = require("react-i18next");
14
+ const Translation_1 = require("../../../translations/Translation");
13
15
  const PaymentCard = ({ card }) => {
16
+ const { t } = (0, react_i18next_1.useTranslation)();
14
17
  const labelStyles = {
15
18
  '@font-face': {
16
19
  src: `url(${RoomstayThemeEngine_1.default.wrapAssetUrl('assets/fonts/cadiz/Cadiz-Bold.otf')})`,
@@ -45,12 +48,12 @@ const PaymentCard = ({ card }) => {
45
48
  isCardNumberLoading && react_1.default.createElement(SmallSpinner_1.default, null),
46
49
  react_1.default.createElement("span", { ref: cardNumberTargetElement })),
47
50
  react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.name },
48
- react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.label }, "Card Holder Name"),
49
- react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.cardholderName },
51
+ react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.label }, t(Translation_1.Translation.Step.Confirmation.PaymentCard.CardHolderName)),
52
+ react_1.default.createElement("div", null,
50
53
  isCardholderNameLoading && react_1.default.createElement(SmallSpinner_1.default, null),
51
54
  react_1.default.createElement("span", { ref: cardholderNameTargetElement }))),
52
55
  react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.date },
53
- react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.label }, "Expiry Date"),
56
+ react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.label }, t(Translation_1.Translation.Step.Confirmation.PaymentCard.ExpiryDate)),
54
57
  card.expiry ? react_1.default.createElement("div", { className: PaymentCard_module_scss_1.default.value }, card.expiry) : react_1.default.createElement("br", { className: PaymentCard_module_scss_1.default.value }))));
55
58
  };
56
59
  exports.PaymentCard = PaymentCard;
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentCard.js","sourceRoot":"/","sources":["src/components/generic/PaymentCard/PaymentCard.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,wFAA+C;AAC/C,0FAAkE;AAClE,+CAA8C;AAE9C,0EAAkD;AAClD,gEAAgE;AAOzD,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;IACtD,MAAM,WAAW,GAAG;QAChB,YAAY,EAAE;YACV,GAAG,EAAE,OAAO,6BAAmB,CAAC,YAAY,CAAC,mCAAmC,CAAC,GAAG;YACpF,aAAa,EAAE,MAAM;YACrB,cAAc,EAAE,MAAM;YACtB,aAAa,EAAE,OAAO;SACzB;QACD,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,OAAO;QACtB,KAAK,EAAE,OAAO;KACjB,CAAC;IAEF,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,IAAA,qBAAU,EAAC;QACtF,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,IAAI,CAAC,UAAU;QACtB,MAAM,kCAAO,WAAW,KAAE,cAAc,EAAE,MAAM,GAAE;KACrD,CAAC,CAAC;IAEH,MAAM,EAAE,SAAS,EAAE,2BAA2B,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,IAAA,qBAAU,EAAC;QAC9F,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,MAAM,EAAE,WAAW;KACtB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAA,wCAAoB,EAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;IAEjE,OAAO,CACH,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;QACvB,uCAAK,SAAS,EAAC,SAAS,EAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,GAAG,EAAC,+BAA+B,GAAG;QAC/F,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,GAAG,EAAE,6BAAmB,CAAC,gBAAgB,EAAE,GAAG,UAAU,EAAE,GAAG,EAAC,MAAM,GAAG,CAC1E;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,GAAG,EAAE,WAAW,CAAC,eAAe,EAAE,GAAG,EAAE,qBAAqB,IAAI,CAAC,IAAI,EAAE,GAAI,CAC9E;QAEN,uCAAK,SAAS,EAAE,iCAAM,CAAC,MAAM;YACxB,mBAAmB,IAAI,8BAAC,sBAAY,OAAG;YACxC,wCAAM,GAAG,EAAE,uBAAuB,GAAS,CACzC;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,uBAAwB;YACpD,uCAAK,SAAS,EAAE,iCAAM,CAAC,cAAc;gBAChC,uBAAuB,IAAI,8BAAC,sBAAY,OAAG;gBAC5C,wCAAM,GAAG,EAAE,2BAA2B,GAAS,CAC7C,CACJ;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,kBAAmB;YAC9C,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,IAAG,IAAI,CAAC,MAAM,CAAO,CAAC,CAAC,CAAC,sCAAI,SAAS,EAAE,iCAAM,CAAC,KAAK,GAAI,CAChG,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAxDW,QAAA,WAAW,eAwDtB","sourcesContent":["import React from 'react';\nimport styles from './PaymentCard.module.scss';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\nimport { useVgsShow } from '@/hooks/VGSHooks';\nimport { IRoomstayMemberCardFormInput } from '@/models/RoomstayMembers/IRoomstayMemberCard';\nimport SmallSpinner from '../loader/SmallSpinner';\nimport { mapCardTypeToGraphic } from '@/util/PaymentCardHelper';\nimport { ECardType } from '@/models/PaymentCard';\n\nexport interface PaymentCardProps {\n card: IRoomstayMemberCardFormInput;\n}\n\nexport const PaymentCard = ({ card }: PaymentCardProps) => {\n const labelStyles = {\n '@font-face': {\n src: `url(${RoomstayThemeEngine.wrapAssetUrl('assets/fonts/cadiz/Cadiz-Bold.otf')})`,\n 'font-weight': 'bold',\n 'font-display': 'swap',\n 'font-family': 'Cadiz',\n },\n 'font-size': '18px',\n 'line-height': '24px',\n 'font-weight': 'bold',\n 'font-family': 'Cadiz',\n color: 'white',\n };\n\n const { targetRef: cardNumberTargetElement, isLoading: isCardNumberLoading } = useVgsShow({\n name: 'credit-card',\n value: card.cardNumber,\n styles: { ...labelStyles, 'word-spacing': '16px' },\n });\n\n const { targetRef: cardholderNameTargetElement, isLoading: isCardholderNameLoading } = useVgsShow({\n name: 'card-name',\n value: card.name,\n styles: labelStyles,\n });\n\n const cardGraphic = mapCardTypeToGraphic(card.type as ECardType);\n\n return (\n <div className={styles.card}>\n <img className=\"u-w-100\" src={cardGraphic.backgroundUrl} alt=\"Payment card background color\" />\n <div className={styles.chip}>\n <img src={RoomstayThemeEngine.getImageAssetUrl() + 'chip.svg'} alt=\"Chip\" />\n </div>\n <div className={styles.type}>\n <img src={cardGraphic.cardNameIconUrl} alt={`Payment card type ${card.type}`} />\n </div>\n\n <div className={styles.number}>\n {isCardNumberLoading && <SmallSpinner />}\n <span ref={cardNumberTargetElement}></span>\n </div>\n <div className={styles.name}>\n <div className={styles.label}>Card Holder Name</div>\n <div className={styles.cardholderName}>\n {isCardholderNameLoading && <SmallSpinner />}\n <span ref={cardholderNameTargetElement}></span>\n </div>\n </div>\n <div className={styles.date}>\n <div className={styles.label}>Expiry Date</div>\n {card.expiry ? <div className={styles.value}>{card.expiry}</div> : <br className={styles.value} />}\n </div>\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"PaymentCard.js","sourceRoot":"/","sources":["src/components/generic/PaymentCard/PaymentCard.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,wFAA+C;AAC/C,0FAAkE;AAClE,+CAA8C;AAE9C,0EAAkD;AAClD,gEAAgE;AAEhE,iDAA+C;AAC/C,4DAAyD;AAMlD,MAAM,WAAW,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;IACtD,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAC/B,MAAM,WAAW,GAAG;QAChB,YAAY,EAAE;YACV,GAAG,EAAE,OAAO,6BAAmB,CAAC,YAAY,CAAC,mCAAmC,CAAC,GAAG;YACpF,aAAa,EAAE,MAAM;YACrB,cAAc,EAAE,MAAM;YACtB,aAAa,EAAE,OAAO;SACzB;QACD,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,OAAO;QACtB,KAAK,EAAE,OAAO;KACjB,CAAC;IAEF,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,IAAA,qBAAU,EAAC;QACtF,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,IAAI,CAAC,UAAU;QACtB,MAAM,kCAAO,WAAW,KAAE,cAAc,EAAE,MAAM,GAAE;KACrD,CAAC,CAAC;IAEH,MAAM,EAAE,SAAS,EAAE,2BAA2B,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,IAAA,qBAAU,EAAC;QAC9F,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,MAAM,EAAE,WAAW;KACtB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAA,wCAAoB,EAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;IAEjE,OAAO,CACH,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;QACvB,uCAAK,SAAS,EAAC,SAAS,EAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,GAAG,EAAC,+BAA+B,GAAG;QAC/F,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,GAAG,EAAE,6BAAmB,CAAC,gBAAgB,EAAE,GAAG,UAAU,EAAE,GAAG,EAAC,MAAM,GAAG,CAC1E;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,GAAG,EAAE,WAAW,CAAC,eAAe,EAAE,GAAG,EAAE,qBAAqB,IAAI,CAAC,IAAI,EAAE,GAAI,CAC9E;QAEN,uCAAK,SAAS,EAAE,iCAAM,CAAC,MAAM;YACxB,mBAAmB,IAAI,8BAAC,sBAAY,OAAG;YACxC,wCAAM,GAAG,EAAE,uBAAuB,GAAS,CACzC;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,IAAG,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,cAAc,CAAC,CAAO;YACjG;gBACK,uBAAuB,IAAI,8BAAC,sBAAY,OAAG;gBAC5C,wCAAM,GAAG,EAAE,2BAA2B,GAAS,CAC7C,CACJ;QACN,uCAAK,SAAS,EAAE,iCAAM,CAAC,IAAI;YACvB,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,IAAG,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC,CAAO;YAC5F,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,uCAAK,SAAS,EAAE,iCAAM,CAAC,KAAK,IAAG,IAAI,CAAC,MAAM,CAAO,CAAC,CAAC,CAAC,sCAAI,SAAS,EAAE,iCAAM,CAAC,KAAK,GAAI,CAChG,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAzDW,QAAA,WAAW,eAyDtB","sourcesContent":["import React from 'react';\nimport styles from './PaymentCard.module.scss';\nimport RoomstayThemeEngine from '@/providers/RoomstayThemeEngine';\nimport { useVgsShow } from '@/hooks/VGSHooks';\nimport { IRoomstayMemberCardFormInput } from '@/models/RoomstayMembers/IRoomstayMemberCard';\nimport SmallSpinner from '../loader/SmallSpinner';\nimport { mapCardTypeToGraphic } from '@/util/PaymentCardHelper';\nimport { ECardType } from '@/models/PaymentCard';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from '@/translations/Translation';\n\nexport interface PaymentCardProps {\n card: IRoomstayMemberCardFormInput;\n}\n\nexport const PaymentCard = ({ card }: PaymentCardProps) => {\n const { t } = useTranslation();\n const labelStyles = {\n '@font-face': {\n src: `url(${RoomstayThemeEngine.wrapAssetUrl('assets/fonts/cadiz/Cadiz-Bold.otf')})`,\n 'font-weight': 'bold',\n 'font-display': 'swap',\n 'font-family': 'Cadiz',\n },\n 'font-size': '18px',\n 'line-height': '24px',\n 'font-weight': 'bold',\n 'font-family': 'Cadiz',\n color: 'white',\n };\n\n const { targetRef: cardNumberTargetElement, isLoading: isCardNumberLoading } = useVgsShow({\n name: 'credit-card',\n value: card.cardNumber,\n styles: { ...labelStyles, 'word-spacing': '16px' },\n });\n\n const { targetRef: cardholderNameTargetElement, isLoading: isCardholderNameLoading } = useVgsShow({\n name: 'card-name',\n value: card.name,\n styles: labelStyles,\n });\n\n const cardGraphic = mapCardTypeToGraphic(card.type as ECardType);\n\n return (\n <div className={styles.card}>\n <img className=\"u-w-100\" src={cardGraphic.backgroundUrl} alt=\"Payment card background color\" />\n <div className={styles.chip}>\n <img src={RoomstayThemeEngine.getImageAssetUrl() + 'chip.svg'} alt=\"Chip\" />\n </div>\n <div className={styles.type}>\n <img src={cardGraphic.cardNameIconUrl} alt={`Payment card type ${card.type}`} />\n </div>\n\n <div className={styles.number}>\n {isCardNumberLoading && <SmallSpinner />}\n <span ref={cardNumberTargetElement}></span>\n </div>\n <div className={styles.name}>\n <div className={styles.label}>{t(Translation.Step.Confirmation.PaymentCard.CardHolderName)}</div>\n <div>\n {isCardholderNameLoading && <SmallSpinner />}\n <span ref={cardholderNameTargetElement}></span>\n </div>\n </div>\n <div className={styles.date}>\n <div className={styles.label}>{t(Translation.Step.Confirmation.PaymentCard.ExpiryDate)}</div>\n {card.expiry ? <div className={styles.value}>{card.expiry}</div> : <br className={styles.value} />}\n </div>\n </div>\n );\n};\n"]}
@@ -1,9 +1,8 @@
1
1
  import { FC } from 'react';
2
2
  import { IRoomstayMemberCards } from '@roomstay/core';
3
- import { IRoomstayMemberCardFormInput } from '../../../models/RoomstayMembers/IRoomstayMemberCard';
4
3
  export interface PaymentCardInputProps {
5
- card: IRoomstayMemberCardFormInput;
6
- onSubmit?: (card: IRoomstayMemberCards) => Promise<void>;
4
+ card: IRoomstayMemberCards;
5
+ onSubmit?: (card: IRoomstayMemberCards) => Promise<IRoomstayMemberCards>;
7
6
  onDeleteClicked: (card: IRoomstayMemberCards) => Promise<void>;
8
7
  onMarkedAsDefaultClicked: (card: IRoomstayMemberCards) => Promise<void>;
9
8
  }