@mirai/core 0.4.13 → 0.4.14

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 (148) hide show
  1. package/build/Core.constants.js +1 -2
  2. package/build/Core.constants.js.map +1 -1
  3. package/build/components/BannerLoyalty/BannerLoyalty.js +27 -8
  4. package/build/components/BannerLoyalty/BannerLoyalty.js.map +1 -1
  5. package/build/components/BannerLoyalty/BannerLoyalty.l10n.js +1 -1
  6. package/build/components/BannerLoyalty/BannerLoyalty.l10n.js.map +1 -1
  7. package/build/components/BannerLoyalty/BannerLoyalty.module.css +13 -0
  8. package/build/components/Chat/Chat.constants.js +4 -1
  9. package/build/components/Chat/Chat.constants.js.map +1 -1
  10. package/build/components/Chat/Chat.js +4 -5
  11. package/build/components/Chat/Chat.js.map +1 -1
  12. package/build/components/Chat/Chat.theme.module.css +1 -1
  13. package/build/components/Chat/__tests__/__snapshots__/Chat.constants.test.js.snap +3 -0
  14. package/build/components/Chat/components/Message/Message.constants.js +4 -7
  15. package/build/components/Chat/components/Message/Message.constants.js.map +1 -1
  16. package/build/components/Finder/Finder.js +6 -11
  17. package/build/components/Finder/Finder.js.map +1 -1
  18. package/build/components/Finder/components/Calendar/Calendar.js +1 -1
  19. package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
  20. package/build/components/Rates/Rates.Content.js +3 -1
  21. package/build/components/Rates/Rates.Content.js.map +1 -1
  22. package/build/components/Rates/Rates.Footer.js +3 -3
  23. package/build/components/Rates/Rates.Footer.js.map +1 -1
  24. package/build/components/Rates/Rates.Unavailability.js +10 -10
  25. package/build/components/Rates/Rates.Unavailability.js.map +1 -1
  26. package/build/components/Rates/Rates.constants.js +3 -2
  27. package/build/components/Rates/Rates.constants.js.map +1 -1
  28. package/build/components/Rates/Rates.js +38 -42
  29. package/build/components/Rates/Rates.js.map +1 -1
  30. package/build/components/Rates/Rates.l10n.js +0 -3
  31. package/build/components/Rates/Rates.l10n.js.map +1 -1
  32. package/build/components/Rates/Rates.module.css +1 -1
  33. package/build/components/Rates/__tests__/__snapshots__/Rates.Content.test.js.snap +18 -3
  34. package/build/components/Rates/__tests__/__snapshots__/Rates.Unavailability.test.js.snap +0 -10
  35. package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +22 -3
  36. package/build/components/Rates/components/Filters/Filters.js +2 -2
  37. package/build/components/Rates/components/Filters/Filters.js.map +1 -1
  38. package/build/components/Rates/components/Item/Item.Preview.js +23 -2
  39. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  40. package/build/components/Rates/components/Item/Item.Rates.js +12 -1
  41. package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
  42. package/build/components/Rates/components/Item/Item.js +3 -2
  43. package/build/components/Rates/components/Item/Item.js.map +1 -1
  44. package/build/components/Rates/components/Item/Item.l10n.js +3 -0
  45. package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
  46. package/build/components/Rates/components/Item/components/{RateDetails/RateDetails.Countdown.js → Countdown/Countdown.js} +5 -3
  47. package/build/components/Rates/components/Item/components/Countdown/Countdown.js.map +1 -0
  48. package/build/components/Rates/components/Item/components/Countdown/Countdown.module.css +8 -0
  49. package/build/components/Rates/components/Item/components/Countdown/__tests__/__snapshots__/Countdown.test.js.snap +3 -0
  50. package/build/components/Rates/components/{ClubRate → Item/components/Countdown}/index.js +4 -4
  51. package/build/components/Rates/components/Item/components/Countdown/index.js.map +1 -0
  52. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js +3 -3
  53. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js.map +1 -1
  54. package/build/components/Rates/components/Item/components/Slider/Slider.js +50 -16
  55. package/build/components/Rates/components/Item/components/Slider/Slider.js.map +1 -1
  56. package/build/components/Rates/components/Item/components/Slider/Slider.l10n.js +3 -0
  57. package/build/components/Rates/components/Item/components/Slider/Slider.l10n.js.map +1 -1
  58. package/build/components/Rates/components/Item/components/index.js +11 -0
  59. package/build/components/Rates/components/Item/components/index.js.map +1 -1
  60. package/build/components/Rates/components/ModalClubRate/ModalClubRate.js +128 -0
  61. package/build/components/Rates/components/ModalClubRate/ModalClubRate.js.map +1 -0
  62. package/build/components/Rates/components/{ClubRate/ClubRate.l10n.js → ModalClubRate/ModalClubRate.l10n.js} +12 -3
  63. package/build/components/Rates/components/ModalClubRate/ModalClubRate.l10n.js.map +1 -0
  64. package/build/components/Rates/components/{ClubRate/ClubRate.module.css → ModalClubRate/ModalClubRate.module.css} +9 -16
  65. package/build/components/Rates/components/ModalClubRate/__tests__/__snapshots__/ModalClubRate.test.js.snap +257 -0
  66. package/build/components/Rates/components/ModalClubRate/helpers/getDiscount.js +45 -0
  67. package/build/components/Rates/components/ModalClubRate/helpers/getDiscount.js.map +1 -0
  68. package/build/components/Rates/components/ModalClubRate/helpers/index.js +17 -0
  69. package/build/components/Rates/components/ModalClubRate/helpers/index.js.map +1 -0
  70. package/build/components/Rates/components/ModalClubRate/index.js +17 -0
  71. package/build/components/Rates/components/ModalClubRate/index.js.map +1 -0
  72. package/build/components/Rates/components/index.js +11 -11
  73. package/build/components/Rates/components/index.js.map +1 -1
  74. package/build/components/Rates/helpers/{getMetaBoard.js → getBoard.js} +8 -8
  75. package/build/components/Rates/helpers/getBoard.js.map +1 -0
  76. package/build/components/Rates/helpers/index.js +11 -11
  77. package/build/components/Rates/helpers/index.js.map +1 -1
  78. package/build/components/Session/Session.Account.js +5 -3
  79. package/build/components/Session/Session.Account.js.map +1 -1
  80. package/build/components/Session/Session.Login.Modal.js +18 -8
  81. package/build/components/Session/Session.Login.Modal.js.map +1 -1
  82. package/build/components/Session/Session.Login.js +1 -0
  83. package/build/components/Session/Session.Login.js.map +1 -1
  84. package/build/components/Session/Session.js +2 -4
  85. package/build/components/Session/Session.js.map +1 -1
  86. package/build/components/Session/Session.l10n.js +4 -1
  87. package/build/components/Session/Session.l10n.js.map +1 -1
  88. package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +117 -1072
  89. package/build/components/__shared__/BookingSummary/BookingSummary.js +2 -0
  90. package/build/components/__shared__/BookingSummary/BookingSummary.js.map +1 -1
  91. package/build/components/helpers/ICON.js +3 -1
  92. package/build/components/helpers/ICON.js.map +1 -1
  93. package/build/contexts/PerformanceManager/PerformanceManager.constants.js +66 -2
  94. package/build/contexts/PerformanceManager/PerformanceManager.constants.js.map +1 -1
  95. package/build/contexts/PerformanceManager/PerformanceManager.js +27 -21
  96. package/build/contexts/PerformanceManager/PerformanceManager.js.map +1 -1
  97. package/build/contexts/PerformanceManager/helpers/getConsentMode.js +9 -5
  98. package/build/contexts/PerformanceManager/helpers/getConsentMode.js.map +1 -1
  99. package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js +0 -4
  100. package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js.map +1 -1
  101. package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js +16 -5
  102. package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js.map +1 -1
  103. package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js +23 -6
  104. package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js.map +1 -1
  105. package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js +1 -1
  106. package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js.map +1 -1
  107. package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js +10 -1
  108. package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js.map +1 -1
  109. package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js +6 -0
  110. package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js.map +1 -1
  111. package/build/contexts/PerformanceManager/providers/gtm/duetto/bookingResponse.js +41 -0
  112. package/build/contexts/PerformanceManager/providers/gtm/duetto/bookingResponse.js.map +1 -0
  113. package/build/contexts/PerformanceManager/providers/gtm/duetto/index.js +28 -0
  114. package/build/contexts/PerformanceManager/providers/gtm/duetto/index.js.map +1 -0
  115. package/build/contexts/PerformanceManager/providers/gtm/duetto/ratesResponse.js +70 -0
  116. package/build/contexts/PerformanceManager/providers/gtm/duetto/ratesResponse.js.map +1 -0
  117. package/build/contexts/PerformanceManager/providers/gtm/finderReady.js +10 -26
  118. package/build/contexts/PerformanceManager/providers/gtm/finderReady.js.map +1 -1
  119. package/build/contexts/PerformanceManager/providers/gtm/helpers/getInitEvent.js +33 -0
  120. package/build/contexts/PerformanceManager/providers/gtm/helpers/getInitEvent.js.map +1 -0
  121. package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js +11 -0
  122. package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js.map +1 -1
  123. package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js +24 -3
  124. package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js.map +1 -1
  125. package/build/helpers/consolidateStore.js +8 -2
  126. package/build/helpers/consolidateStore.js.map +1 -1
  127. package/build/helpers/getPerformance.js +4 -0
  128. package/build/helpers/getPerformance.js.map +1 -1
  129. package/package.json +1 -1
  130. package/public/index.html +1 -1
  131. package/build/components/Chat/services/Lisa/action.js +0 -28
  132. package/build/components/Chat/services/Lisa/action.js.map +0 -1
  133. package/build/components/Chat/services/Lisa/index.js +0 -17
  134. package/build/components/Chat/services/Lisa/index.js.map +0 -1
  135. package/build/components/Chat/services/Lisa/message.js +0 -26
  136. package/build/components/Chat/services/Lisa/message.js.map +0 -1
  137. package/build/components/Chat/services/Lisa/status.js +0 -13
  138. package/build/components/Chat/services/Lisa/status.js.map +0 -1
  139. package/build/components/Chat/services/Lisa/welcome.js +0 -25
  140. package/build/components/Chat/services/Lisa/welcome.js.map +0 -1
  141. package/build/components/Rates/components/ClubRate/ClubRate.js +0 -100
  142. package/build/components/Rates/components/ClubRate/ClubRate.js.map +0 -1
  143. package/build/components/Rates/components/ClubRate/ClubRate.l10n.js.map +0 -1
  144. package/build/components/Rates/components/ClubRate/__tests__/__snapshots__/ClubRate.test.js.snap +0 -38
  145. package/build/components/Rates/components/ClubRate/index.js.map +0 -1
  146. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.Countdown.js.map +0 -1
  147. package/build/components/Rates/components/Item/components/RateDetails/__tests__/__snapshots__/RateDetails.Countdown.test.js.snap +0 -3
  148. package/build/components/Rates/helpers/getMetaBoard.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_CLUB_VIEW_CONDITIONS","id","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SHOW_ON_MAP","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FARE_EXCLUSIVE_MEMBERS","LABEL_FROM","LABEL_INCLUDES_TAXES_FEES","LABEL_MEMBER_DISCOUNT","LABEL_MEMBER_EXCLUSIVE","LABEL_NIGHTS","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_SELECT","LABEL_TAXES_FEES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","FEES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TAXES_INCLUDED","LABEL_YEARS_OLD","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","NOTIFICATION_ROOM_NOT_FOUND","NOTIFICATION_OFFER_NOT_FOUND"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { TAXES_TYPE } from '../../Core.constants';\nimport { ERROR } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SHOW_ON_MAP: { id: 'finder.action.show_on_map' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS: { id: 'finder.label.alternative_hotel_suggestions' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CONTACT_INFO: { id: 'finder.label.contact_info' },\n LABEL_EXCLUDES_TAXES_FEES: { id: 'finder.label.excludes_taxes_fees' },\n LABEL_FARE_EXCLUSIVE_MEMBERS: { id: 'user.label.fare_exclusive_members' },\n LABEL_FROM: { id: 'common.label.from' },\n LABEL_INCLUDES_TAXES_FEES: { id: 'finder.label.includes_taxes_fees' },\n LABEL_MEMBER_DISCOUNT: { id: 'finder.label.member_discount' },\n LABEL_MEMBER_EXCLUSIVE: { id: 'finder.label.member_exclusive' },\n LABEL_NIGHTS: { id: 'common.label.nights' },\n LABEL_NO_AVAILABILITY_CALENDAR: { id: 'common.label.no_availability_calendar' },\n LABEL_NO_AVAILABILITY_OCCUPATION: { id: 'common.label.no_availability_occupation' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_TAXES_FEES: {\n [TAXES_TYPE.ALL_EXCLUDED]: { id: 'finder.label.excludes_taxes_fees' },\n [TAXES_TYPE.ALL_INCLUDED]: { id: 'finder.label.includes_taxes_fees' },\n [TAXES_TYPE.FEES_EXCLUDED]: { id: 'finder.label.excludes_fees' },\n [TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED]: { id: 'finder.label.includes_fees_excludes_taxes' },\n [TAXES_TYPE.FEES_INCLUDED]: { id: 'finder.label.includes_fees' },\n [TAXES_TYPE.TAXES_EXCLUDED]: { id: 'finder.label.excludes_taxes' },\n [TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED]: { id: 'finder.label.includes_taxes_excludes_fees' },\n [TAXES_TYPE.TAXES_INCLUDED]: { id: 'finder.label.includes_taxes' },\n },\n LABEL_YEARS_OLD: { id: 'common.label.years_old' },\n\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_META_RATE_FOUND: { id: 'finder.notification.meta_rate_found' },\n NOTIFICATION_META_RATE_NOT_FOUND: { id: 'finder.notification.meta_rate_not_found' },\n NOTIFICATION_PROMOCODE_NOT_FOUND: { id: 'finder.notification.promocode_not_found' },\n NOTIFICATION_ROOM_NOT_FOUND: { id: 'finder.notification.room_not_found' },\n NOTIFICATION_OFFER_NOT_FOUND: { id: 'finder.notification.offer_not_found' },\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_CLUB_VIEW_CONDITIONS","id","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SHOW_ON_MAP","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FROM","LABEL_INCLUDES_TAXES_FEES","LABEL_MEMBER_DISCOUNT","LABEL_MEMBER_EXCLUSIVE","LABEL_NIGHTS","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_SELECT","LABEL_TAXES_FEES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","FEES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TAXES_INCLUDED","LABEL_YEARS_OLD","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","NOTIFICATION_ROOM_NOT_FOUND","NOTIFICATION_OFFER_NOT_FOUND"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { TAXES_TYPE } from '../../Core.constants';\nimport { ERROR } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SHOW_ON_MAP: { id: 'finder.action.show_on_map' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS: { id: 'finder.label.alternative_hotel_suggestions' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CONTACT_INFO: { id: 'finder.label.contact_info' },\n LABEL_EXCLUDES_TAXES_FEES: { id: 'finder.label.excludes_taxes_fees' },\n LABEL_FROM: { id: 'common.label.from' },\n LABEL_INCLUDES_TAXES_FEES: { id: 'finder.label.includes_taxes_fees' },\n LABEL_MEMBER_DISCOUNT: { id: 'finder.label.member_discount' },\n LABEL_MEMBER_EXCLUSIVE: { id: 'finder.label.member_exclusive' },\n LABEL_NIGHTS: { id: 'common.label.nights' },\n LABEL_NO_AVAILABILITY_CALENDAR: { id: 'common.label.no_availability_calendar' },\n LABEL_NO_AVAILABILITY_OCCUPATION: { id: 'common.label.no_availability_occupation' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_TAXES_FEES: {\n [TAXES_TYPE.ALL_EXCLUDED]: { id: 'finder.label.excludes_taxes_fees' },\n [TAXES_TYPE.ALL_INCLUDED]: { id: 'finder.label.includes_taxes_fees' },\n [TAXES_TYPE.FEES_EXCLUDED]: { id: 'finder.label.excludes_fees' },\n [TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED]: { id: 'finder.label.includes_fees_excludes_taxes' },\n [TAXES_TYPE.FEES_INCLUDED]: { id: 'finder.label.includes_fees' },\n [TAXES_TYPE.TAXES_EXCLUDED]: { id: 'finder.label.excludes_taxes' },\n [TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED]: { id: 'finder.label.includes_taxes_excludes_fees' },\n [TAXES_TYPE.TAXES_INCLUDED]: { id: 'finder.label.includes_taxes' },\n },\n LABEL_YEARS_OLD: { id: 'common.label.years_old' },\n\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_META_RATE_FOUND: { id: 'finder.notification.meta_rate_found' },\n NOTIFICATION_META_RATE_NOT_FOUND: { id: 'finder.notification.meta_rate_not_found' },\n NOTIFICATION_PROMOCODE_NOT_FOUND: { id: 'finder.notification.promocode_not_found' },\n NOTIFICATION_ROOM_NOT_FOUND: { id: 'finder.notification.room_not_found' },\n NOTIFICATION_OFFER_NOT_FOUND: { id: 'finder.notification.offer_not_found' },\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGO,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,2BAA2B,EAAE;IAAEC,EAAE,EAAE;EAAqC,CAAC;EACzEC,oBAAoB,EAAE;IAAED,EAAE,EAAE;EAA8B,CAAC;EAC3DE,cAAc,EAAE;IAAEF,EAAE,EAAE;EAAwB,CAAC;EAC/CG,kBAAkB,EAAE;IAAEH,EAAE,EAAE;EAA4B,CAAC;EACvDI,gBAAgB,EAAE;IAAEJ,EAAE,EAAE;EAA0B,CAAC;EAEnDK,wBAAwB,EAAE;IAAEL,EAAE,EAAE;EAAkC,CAAC;EACnEM,mCAAmC,EAAE;IAAEN,EAAE,EAAE;EAA6C,CAAC;EACzFO,4BAA4B,EAAE;IAAEP,EAAE,EAAE;EAAsC,CAAC;EAC3EQ,mBAAmB,EAAE;IAAER,EAAE,EAAE;EAA6B,CAAC;EACzDS,kBAAkB,EAAE;IAAET,EAAE,EAAE;EAA4B,CAAC;EACvDU,yBAAyB,EAAE;IAAEV,EAAE,EAAE;EAAmC,CAAC;EACrEW,UAAU,EAAE;IAAEX,EAAE,EAAE;EAAoB,CAAC;EACvCY,yBAAyB,EAAE;IAAEZ,EAAE,EAAE;EAAmC,CAAC;EACrEa,qBAAqB,EAAE;IAAEb,EAAE,EAAE;EAA+B,CAAC;EAC7Dc,sBAAsB,EAAE;IAAEd,EAAE,EAAE;EAAgC,CAAC;EAC/De,YAAY,EAAE;IAAEf,EAAE,EAAE;EAAsB,CAAC;EAC3CgB,8BAA8B,EAAE;IAAEhB,EAAE,EAAE;EAAwC,CAAC;EAC/EiB,gCAAgC,EAAE;IAAEjB,EAAE,EAAE;EAA0C,CAAC;EACnFkB,YAAY,EAAE;IAAElB,EAAE,EAAE;EAAsB,CAAC;EAC3CmB,gBAAgB,EAAE;IAChB,CAACC,gBAAU,CAACC,YAAY,GAAG;MAAErB,EAAE,EAAE;IAAmC,CAAC;IACrE,CAACoB,gBAAU,CAACE,YAAY,GAAG;MAAEtB,EAAE,EAAE;IAAmC,CAAC;IACrE,CAACoB,gBAAU,CAACG,aAAa,GAAG;MAAEvB,EAAE,EAAE;IAA6B,CAAC;IAChE,CAACoB,gBAAU,CAACI,4BAA4B,GAAG;MAAExB,EAAE,EAAE;IAA4C,CAAC;IAC9F,CAACoB,gBAAU,CAACK,aAAa,GAAG;MAAEzB,EAAE,EAAE;IAA6B,CAAC;IAChE,CAACoB,gBAAU,CAACM,cAAc,GAAG;MAAE1B,EAAE,EAAE;IAA8B,CAAC;IAClE,CAACoB,gBAAU,CAACO,4BAA4B,GAAG;MAAE3B,EAAE,EAAE;IAA4C,CAAC;IAC9F,CAACoB,gBAAU,CAACQ,cAAc,GAAG;MAAE5B,EAAE,EAAE;IAA8B;EACnE,CAAC;EACD6B,eAAe,EAAE;IAAE7B,EAAE,EAAE;EAAyB,CAAC;EAEjD8B,kBAAkB,EAAE;IAClB,CAACC,WAAK,CAACC,aAAa,GAAG;MAAEhC,EAAE,EAAE;IAA0C,CAAC;IACxE,CAAC+B,WAAK,CAACE,eAAe,GAAG;MAAEjC,EAAE,EAAE;IAAsC,CAAC;IACtE,CAAC+B,WAAK,CAACG,OAAO,GAAG;MAAElC,EAAE,EAAE;IAAoC;EAC7D,CAAC;EACDmC,4BAA4B,EAAE;IAAEnC,EAAE,EAAE;EAAsC,CAAC;EAC3EoC,gCAAgC,EAAE;IAAEpC,EAAE,EAAE;EAA0C,CAAC;EACnFqC,gCAAgC,EAAE;IAAErC,EAAE,EAAE;EAA0C,CAAC;EACnFsC,2BAA2B,EAAE;IAAEtC,EAAE,EAAE;EAAqC,CAAC;EACzEuC,4BAA4B,EAAE;IAAEvC,EAAE,EAAE;EAAsC;AAC5E,CAAC"}
@@ -155,7 +155,7 @@ body {
155
155
  }
156
156
 
157
157
  .unavailability .banner {
158
- align-items: flex-start;
158
+ align-items: center;
159
159
  background-color: var(--mirai-ui-accent-background);
160
160
  border: solid 1px var(--mirai-ui-accent-border);
161
161
  margin: var(--mirai-ui-space-S) 0;
@@ -4,7 +4,12 @@ exports[`<Rates.Content> inherit:className 1`] = `
4
4
  <DocumentFragment>
5
5
  <ui-view
6
6
  class="view"
7
- />
7
+ >
8
+ <ui-view
9
+ class="view"
10
+ id="123-compare-plugin"
11
+ />
12
+ </ui-view>
8
13
  </DocumentFragment>
9
14
  `;
10
15
 
@@ -12,7 +17,12 @@ exports[`<Rates.Content> renders 1`] = `
12
17
  <DocumentFragment>
13
18
  <ui-view
14
19
  class="view"
15
- />
20
+ >
21
+ <ui-view
22
+ class="view"
23
+ id="123-compare-plugin"
24
+ />
25
+ </ui-view>
16
26
  </DocumentFragment>
17
27
  `;
18
28
 
@@ -21,6 +31,11 @@ exports[`<Rates.Content> testID 1`] = `
21
31
  <ui-view
22
32
  class="view"
23
33
  data-testid="mirai"
24
- />
34
+ >
35
+ <ui-view
36
+ class="view"
37
+ id="123-compare-plugin"
38
+ />
39
+ </ui-view>
25
40
  </DocumentFragment>
26
41
  `;
@@ -37,11 +37,6 @@ exports[`<Rates.Unavailability> renders 1`] = `
37
37
  >
38
38
  common.label.no_availability_calendar
39
39
  </ui-text>
40
- <ui-text
41
- class="text action"
42
- >
43
- finder.label.contact_info
44
- </ui-text>
45
40
  </ui-view>
46
41
  <ui-button
47
42
  class="pressable button"
@@ -50,11 +45,6 @@ exports[`<Rates.Unavailability> renders 1`] = `
50
45
  common.action.refine_search
51
46
  </ui-button>
52
47
  </ui-view>
53
- <ui-text
54
- class="text bold headline-3"
55
- >
56
- finder.label.available_alternatives
57
- </ui-text>
58
48
  <ui-view
59
49
  class="view row"
60
50
  />
@@ -2076,7 +2076,12 @@ exports[`<Rates> inherit:className 1`] = `
2076
2076
  >
2077
2077
  <ui-view
2078
2078
  class="view"
2079
- />
2079
+ >
2080
+ <ui-view
2081
+ class="view"
2082
+ id="123-compare-plugin"
2083
+ />
2084
+ </ui-view>
2080
2085
  <ui-view
2081
2086
  class="view row"
2082
2087
  style="align-items: stretch; flex-wrap: wrap; gap: 1rem; justify-content: space-between; margin-top: 0.75rem;"
@@ -4841,7 +4846,12 @@ exports[`<Rates> renders 1`] = `
4841
4846
  >
4842
4847
  <ui-view
4843
4848
  class="view"
4844
- />
4849
+ >
4850
+ <ui-view
4851
+ class="view"
4852
+ id="123-compare-plugin"
4853
+ />
4854
+ </ui-view>
4845
4855
  <ui-view
4846
4856
  class="view row"
4847
4857
  style="align-items: stretch; flex-wrap: wrap; gap: 1rem; justify-content: space-between; margin-top: 0.75rem;"
@@ -7608,6 +7618,10 @@ exports[`<Rates> renders:skeleton 1`] = `
7608
7618
  class="view"
7609
7619
  skeleton="true"
7610
7620
  >
7621
+ <ui-view
7622
+ class="view"
7623
+ id="123-compare-plugin"
7624
+ />
7611
7625
  <ui-view
7612
7626
  class="view row"
7613
7627
  style="align-items: stretch;"
@@ -10475,7 +10489,12 @@ exports[`<Rates> testID 1`] = `
10475
10489
  >
10476
10490
  <ui-view
10477
10491
  class="view"
10478
- />
10492
+ >
10493
+ <ui-view
10494
+ class="view"
10495
+ id="123-compare-plugin"
10496
+ />
10497
+ </ui-view>
10479
10498
  <ui-view
10480
10499
  class="view row"
10481
10500
  style="align-items: stretch; flex-wrap: wrap; gap: 1rem; justify-content: space-between; margin-top: 0.75rem;"
@@ -243,12 +243,12 @@ const Filters = _ref => {
243
243
  const inlineBoards = !isMobile || isMobile && boardsLength <= _Filters4.MAX_BOARDS - 1;
244
244
  const {
245
245
  name: roomTypeName
246
- } = items.find(function () {
246
+ } = (items === null || items === void 0 ? void 0 : items.find(function () {
247
247
  let {
248
248
  id
249
249
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
250
250
  return id === parseInt(roomTypeId);
251
- }) || {};
251
+ })) || {};
252
252
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Filters3.Button, {
253
253
  counter,
254
254
  onPress: handleModal
@@ -1 +1 @@
1
- {"version":3,"file":"Filters.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Filters","_Filters2","_Filters3","_Filters4","_Filters5","style","_helpers","_helpers2","_helpers3","_components2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","memoizeForm","timeoutRange","Filters","_ref","clubConditions","items","propItems","priceFactor","onSubmit","others","isMobile","useDevice","translate","useLocale","value","currency","club","finder","hotel","id","locale","occupation","maxRooms","session","urlParams","idoffers","roomTypeId","useStore","discount","promocode","allAmenities","setAllAmenities","useState","busy","setBusy","counter","setCounter","filters","setFilters","getAvailableFilters","form","setForm","DEFAULT_FORM","setItems","visible","setVisible","useEffect","nextForm","clubDiscount","undefined","offer","roomType","countFilters","priceRange","callback","Event","subscribe","EVENT","RATES_FILTER_CLUB","unsubscribe","JSON","stringify","nextFilters","handleModal","next","publish","METRICS","handleAmenity","amenities","filter","item","amenity","handleOption","field","concat","handleRange","clearTimeout","setTimeout","SUBMIT_DELAY","handleBookingOption","fetch","handleClearAll","handleSubmit","nextCounter","strictSearch","getStrictSearch","cart","params","nextItems","fetchRates","catch","freeCancellation","filteredItems","select","availability","arguments","length","boardsLength","boards","inlineBoards","MAX_BOARDS","name","roomTypeName","find","parseInt","createElement","Fragment","Button","onPress","Modal","fit","portal","title","L10N","LABEL_FILTERS","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","section","Text","bold","headline","LABEL_BOOKING_OPTIONS","BookingOption","caption","LABEL_CLUB_CONDITIONS","conditions","Action","small","href","target","textInline","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","checked","LABEL_CLUB_MEMBERS_EXCLUSIVE","onChange","BOOKING_OPTIONS","map","key","roomName","toUpperCase","LABEL_ACCOMMODATION_PLAN","row","styles","inline","_ref2","text","type","Option","board","outlined","option","prices","InputRange","LABEL_SET_PRICE_RANGE","LABEL_NIGHTLY_PRICES","dataSource","resolution","LABEL_PRICE_RANGE","unit","currencySymbol","wide","LABEL_AMENITIES","highlight","_ref3","Amenity","includes","label","action","textOthers","LABEL_OTHERS","_ref4","underline","ACTION_VIEW_MORE","bedTypes","LABEL_BED_TYPE","bedType","icon","ICON","BED_SINGLE","BED_DOUBLE","LABEL_BED_TYPE_SINGLE","LABEL_BED_TYPE_DOUBLE","sizes","LABEL_ROOM_SIZE","sizeUnit","sizeRange","footer","spaceBetween","transparent","ACTION_CLEAR_ALL","disabled","LABEL_SHOW_COUNT_RESULTS","LABEL_NO_EXACT_MATCHES","count","exports","displayName","propTypes","PropTypes","bool","string","arrayOf","shape","number","func"],"sources":["../../../../../src/components/Rates/components/Filters/Filters.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencySymbol, useLocale } from '@mirai/locale';\nimport { Action, Button, Modal, ScrollView, styles, useDevice, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { InputRange } from './components';\nimport { Amenity } from './Filters.Amenity';\nimport { BookingOption } from './Filters.BookingOption';\nimport { Button as ButtonFilters } from './Filters.Button';\nimport { BOOKING_OPTIONS, DEFAULT_FORM, MAX_BOARDS } from './Filters.constants';\nimport { L10N } from './Filters.l10n';\nimport * as style from './Filters.module.css';\nimport { countFilters, getAvailableFilters, getStrictSearch } from './helpers';\nimport { EVENT, ICON, SUBMIT_DELAY } from '../../../helpers';\nimport { fetchRates, select } from '../../helpers';\nimport { Option } from '../Item/components';\n\nlet memoizeForm;\nlet timeoutRange;\n\nconst Filters = ({ clubConditions, items: propItems = [], priceFactor = 1, onSubmit = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n club = {},\n finder = {},\n hotel,\n id,\n locale,\n occupation: { maxRooms } = {},\n session,\n urlParams: { idoffers, roomTypeId } = {},\n } = {},\n } = useStore();\n\n const { discount } = club;\n const { promocode } = finder;\n\n const [allAmenities, setAllAmenities] = useState(false);\n const [busy, setBusy] = useState(false);\n const [counter, setCounter] = useState(0);\n const [filters, setFilters] = useState(getAvailableFilters(propItems, { priceFactor }));\n const [form, setForm] = useState(DEFAULT_FORM);\n const [items, setItems] = useState(propItems);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const nextForm = memoizeForm || {\n ...DEFAULT_FORM,\n clubDiscount: !session && discount !== undefined ? !!discount : undefined,\n offer: idoffers ? !!idoffers : undefined,\n promocode: promocode ? !!promocode : undefined,\n roomType: roomTypeId ? !!roomTypeId : undefined,\n };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!form.priceRange) return;\n const nextForm = { ...form, priceRange: undefined };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency]);\n\n useEffect(() => {\n const callback = (clubDiscount) => {\n const nextForm = { ...form, clubDiscount };\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n };\n\n Event.subscribe(EVENT.RATES_FILTER_CLUB, callback);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, callback);\n }, [form]);\n\n useEffect(() => {\n if (JSON.stringify(propItems) !== JSON.stringify(items)) setItems(propItems);\n\n const nextFilters = getAvailableFilters(propItems, { priceFactor });\n if (JSON.stringify(nextFilters) !== JSON.stringify(filters)) setFilters(nextFilters);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [propItems]);\n\n const handleModal = () => {\n let next = !visible;\n\n setVisible(next);\n if (next) Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS', counter });\n };\n\n const handleAmenity = (id, value) => {\n setForm({ ...form, amenities: value ? [...form.amenities, id] : form.amenities.filter((item) => item !== id) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:AMENITY', amenity: id, value });\n };\n\n const handleOption = (field, id) => {\n setForm({ ...form, [field]: form[field] === id ? undefined : id });\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}` });\n };\n\n const handleRange = (field, value) => {\n setForm({ ...form, [field]: value });\n\n clearTimeout(timeoutRange);\n timeoutRange = setTimeout(\n () => Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value }),\n SUBMIT_DELAY / 2,\n );\n };\n\n const handleBookingOption = async (field, value) => {\n const next = { ...form, [field]: value };\n setForm(next);\n\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value });\n if (field !== 'freeCancellation') await fetch(next);\n };\n\n const handleClearAll = () => {\n const { clubDiscount, offer, promocode, roomType } = form || {};\n setAllAmenities(false);\n setForm(DEFAULT_FORM);\n\n (clubDiscount || offer || promocode || roomType) && fetch(DEFAULT_FORM);\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:CLEAR_ALL' });\n };\n\n const handleSubmit = () => {\n memoizeForm = form;\n setVisible(false);\n const nextCounter = countFilters(form);\n setCounter(nextCounter);\n onSubmit({ ...form, strictSearch: getStrictSearch(form) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:SUBMIT', counter: nextCounter });\n };\n\n const fetch = async (next) => {\n setBusy(true);\n\n const { clubDiscount } = next;\n const strictSearch = getStrictSearch(next);\n const cart = []; // ! TODO: [MF-2006] Store should get the current cart of <Rates>\n const params = { cart, club, clubDiscount, finder, hotel, id, locale, maxRooms, session, strictSearch };\n const { items: nextItems } = (await fetchRates(params).catch(() => {})) || {};\n setItems(nextItems);\n if (nextItems) setFilters(getAvailableFilters(nextItems, { priceFactor }));\n\n setBusy(false);\n };\n\n const has = {\n clubDiscount: (discount !== undefined || clubConditions !== undefined) && !session,\n freeCancellation: true || !!filters.freeCancellation, // * We'll activate freeCancellation filter always.\n offer: !!idoffers,\n promocode: !!promocode,\n roomType: !!roomTypeId,\n };\n\n const filteredItems = select(items, form, { priceFactor }).filter(({ availability = 0 } = {}) => availability > 0);\n const { length: boardsLength } = filters.boards;\n const inlineBoards = !isMobile || (isMobile && boardsLength <= MAX_BOARDS - 1);\n const { name: roomTypeName } = items.find(({ id } = {}) => id === parseInt(roomTypeId)) || {};\n\n return (\n <>\n <ButtonFilters {...{ counter }} onPress={handleModal} />\n\n <Modal\n fit\n portal\n title={translate(L10N.LABEL_FILTERS)}\n visible={visible}\n onClose={handleModal}\n className={[style.modal, others.className]}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_BOOKING_OPTIONS)}\n </Text>\n\n {has.clubDiscount && (\n <BookingOption\n caption={\n clubConditions\n ? translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action small href={clubConditions} target=\"_blank\" className={style.textInline}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })\n : translate(L10N.LABEL_CLUB_BENEFITS)\n }\n checked={form.clubDiscount}\n club={club.name}\n field=\"clubDiscount\"\n title={L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE}\n onChange={handleBookingOption}\n />\n )}\n\n {BOOKING_OPTIONS.filter(({ field } = {}) => has[field]).map(({ field, title } = {}) => (\n <BookingOption\n key={field}\n checked={form[field]}\n {...{ field, title, roomName: roomTypeName, promocode: promocode?.toUpperCase() }}\n onChange={handleBookingOption}\n />\n ))}\n </View>\n\n {boardsLength > 1 && (\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n <View row={inlineBoards} className={styles(style.boards, inlineBoards && style.inline)}>\n {filters.boards.map(({ id, text, type }) => (\n <Option\n checked={form.board === type}\n key={`board:${id}`}\n inline={inlineBoards}\n outlined\n title={text}\n onPress={() => handleOption('board', type)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.prices.length > 1 && (\n <InputRange\n caption={translate(priceFactor === 1 ? L10N.LABEL_SET_PRICE_RANGE : L10N.LABEL_NIGHTLY_PRICES)}\n dataSource={filters.prices}\n resolution={isMobile ? 12 : 24}\n title={translate(L10N.LABEL_PRICE_RANGE)}\n unit={currencySymbol(currency, { locale })}\n value={form.priceRange}\n onChange={(value) => handleRange('priceRange', value)}\n className={style.section}\n />\n )}\n\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_AMENITIES)}\n </Text>\n\n <View>\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n\n {allAmenities ? (\n <>\n <Text action bold wide className={style.textOthers}>\n {translate(L10N.LABEL_OTHERS)}\n </Text>\n\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => !item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n </>\n ) : (\n <Action underline onPress={() => setAllAmenities(true)}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Action>\n )}\n </View>\n </View>\n\n {filters.bedTypes.length > 1 && (\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_BED_TYPE)}\n </Text>\n\n <View row>\n {filters.bedTypes.map((bedType) => (\n <Option\n key={`bedType:${bedType}`}\n checked={form.bedType === bedType}\n icon={bedType === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE}\n inline\n outlined\n title={translate(bedType === 1 ? L10N.LABEL_BED_TYPE_SINGLE : L10N.LABEL_BED_TYPE_DOUBLE)}\n onPress={() => handleOption('bedType', bedType)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.sizes.length > 1 && (\n <InputRange\n dataSource={filters.sizes}\n resolution={isMobile ? 4 : 6}\n title={translate(L10N.LABEL_ROOM_SIZE)}\n unit={filters.sizeUnit}\n value={form.sizeRange}\n onChange={(value) => handleRange('sizeRange', value)}\n className={style.section}\n />\n )}\n </ScrollView>\n\n <View row className={[style.footer, style.spaceBetween]}>\n <Button transparent onPress={handleClearAll}>\n {translate(L10N.ACTION_CLEAR_ALL)}\n </Button>\n <Button busy={busy} disabled={!filteredItems.length} onPress={handleSubmit}>\n {translate(filteredItems.length ? L10N.LABEL_SHOW_COUNT_RESULTS : L10N.LABEL_NO_EXACT_MATCHES, {\n count: filteredItems.length,\n })}\n </Button>\n </View>\n </Modal>\n </>\n );\n};\n\nFilters.displayName = 'Mirai:Core:Rates:Filters';\n\nFilters.propTypes = {\n clubDiscount: PropTypes.bool,\n clubConditions: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n priceFactor: PropTypes.number,\n onSubmit: PropTypes.func,\n};\n\nexport { Filters };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Filters.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Filters","_Filters2","_Filters3","_Filters4","_Filters5","style","_helpers","_helpers2","_helpers3","_components2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","memoizeForm","timeoutRange","Filters","_ref","clubConditions","items","propItems","priceFactor","onSubmit","others","isMobile","useDevice","translate","useLocale","value","currency","club","finder","hotel","id","locale","occupation","maxRooms","session","urlParams","idoffers","roomTypeId","useStore","discount","promocode","allAmenities","setAllAmenities","useState","busy","setBusy","counter","setCounter","filters","setFilters","getAvailableFilters","form","setForm","DEFAULT_FORM","setItems","visible","setVisible","useEffect","nextForm","clubDiscount","undefined","offer","roomType","countFilters","priceRange","callback","Event","subscribe","EVENT","RATES_FILTER_CLUB","unsubscribe","JSON","stringify","nextFilters","handleModal","next","publish","METRICS","handleAmenity","amenities","filter","item","amenity","handleOption","field","concat","handleRange","clearTimeout","setTimeout","SUBMIT_DELAY","handleBookingOption","fetch","handleClearAll","handleSubmit","nextCounter","strictSearch","getStrictSearch","cart","params","nextItems","fetchRates","catch","freeCancellation","filteredItems","select","availability","arguments","length","boardsLength","boards","inlineBoards","MAX_BOARDS","name","roomTypeName","find","parseInt","createElement","Fragment","Button","onPress","Modal","fit","portal","title","L10N","LABEL_FILTERS","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","section","Text","bold","headline","LABEL_BOOKING_OPTIONS","BookingOption","caption","LABEL_CLUB_CONDITIONS","conditions","Action","small","href","target","textInline","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","checked","LABEL_CLUB_MEMBERS_EXCLUSIVE","onChange","BOOKING_OPTIONS","map","key","roomName","toUpperCase","LABEL_ACCOMMODATION_PLAN","row","styles","inline","_ref2","text","type","Option","board","outlined","option","prices","InputRange","LABEL_SET_PRICE_RANGE","LABEL_NIGHTLY_PRICES","dataSource","resolution","LABEL_PRICE_RANGE","unit","currencySymbol","wide","LABEL_AMENITIES","highlight","_ref3","Amenity","includes","label","action","textOthers","LABEL_OTHERS","_ref4","underline","ACTION_VIEW_MORE","bedTypes","LABEL_BED_TYPE","bedType","icon","ICON","BED_SINGLE","BED_DOUBLE","LABEL_BED_TYPE_SINGLE","LABEL_BED_TYPE_DOUBLE","sizes","LABEL_ROOM_SIZE","sizeUnit","sizeRange","footer","spaceBetween","transparent","ACTION_CLEAR_ALL","disabled","LABEL_SHOW_COUNT_RESULTS","LABEL_NO_EXACT_MATCHES","count","exports","displayName","propTypes","PropTypes","bool","string","arrayOf","shape","number","func"],"sources":["../../../../../src/components/Rates/components/Filters/Filters.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencySymbol, useLocale } from '@mirai/locale';\nimport { Action, Button, Modal, ScrollView, styles, useDevice, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { InputRange } from './components';\nimport { Amenity } from './Filters.Amenity';\nimport { BookingOption } from './Filters.BookingOption';\nimport { Button as ButtonFilters } from './Filters.Button';\nimport { BOOKING_OPTIONS, DEFAULT_FORM, MAX_BOARDS } from './Filters.constants';\nimport { L10N } from './Filters.l10n';\nimport * as style from './Filters.module.css';\nimport { countFilters, getAvailableFilters, getStrictSearch } from './helpers';\nimport { EVENT, ICON, SUBMIT_DELAY } from '../../../helpers';\nimport { fetchRates, select } from '../../helpers';\nimport { Option } from '../Item/components';\n\nlet memoizeForm;\nlet timeoutRange;\n\nconst Filters = ({ clubConditions, items: propItems = [], priceFactor = 1, onSubmit = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n club = {},\n finder = {},\n hotel,\n id,\n locale,\n occupation: { maxRooms } = {},\n session,\n urlParams: { idoffers, roomTypeId } = {},\n } = {},\n } = useStore();\n\n const { discount } = club;\n const { promocode } = finder;\n\n const [allAmenities, setAllAmenities] = useState(false);\n const [busy, setBusy] = useState(false);\n const [counter, setCounter] = useState(0);\n const [filters, setFilters] = useState(getAvailableFilters(propItems, { priceFactor }));\n const [form, setForm] = useState(DEFAULT_FORM);\n const [items, setItems] = useState(propItems);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const nextForm = memoizeForm || {\n ...DEFAULT_FORM,\n clubDiscount: !session && discount !== undefined ? !!discount : undefined,\n offer: idoffers ? !!idoffers : undefined,\n promocode: promocode ? !!promocode : undefined,\n roomType: roomTypeId ? !!roomTypeId : undefined,\n };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!form.priceRange) return;\n const nextForm = { ...form, priceRange: undefined };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency]);\n\n useEffect(() => {\n const callback = (clubDiscount) => {\n const nextForm = { ...form, clubDiscount };\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n };\n\n Event.subscribe(EVENT.RATES_FILTER_CLUB, callback);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, callback);\n }, [form]);\n\n useEffect(() => {\n if (JSON.stringify(propItems) !== JSON.stringify(items)) setItems(propItems);\n\n const nextFilters = getAvailableFilters(propItems, { priceFactor });\n if (JSON.stringify(nextFilters) !== JSON.stringify(filters)) setFilters(nextFilters);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [propItems]);\n\n const handleModal = () => {\n let next = !visible;\n\n setVisible(next);\n if (next) Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS', counter });\n };\n\n const handleAmenity = (id, value) => {\n setForm({ ...form, amenities: value ? [...form.amenities, id] : form.amenities.filter((item) => item !== id) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:AMENITY', amenity: id, value });\n };\n\n const handleOption = (field, id) => {\n setForm({ ...form, [field]: form[field] === id ? undefined : id });\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}` });\n };\n\n const handleRange = (field, value) => {\n setForm({ ...form, [field]: value });\n\n clearTimeout(timeoutRange);\n timeoutRange = setTimeout(\n () => Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value }),\n SUBMIT_DELAY / 2,\n );\n };\n\n const handleBookingOption = async (field, value) => {\n const next = { ...form, [field]: value };\n setForm(next);\n\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value });\n if (field !== 'freeCancellation') await fetch(next);\n };\n\n const handleClearAll = () => {\n const { clubDiscount, offer, promocode, roomType } = form || {};\n setAllAmenities(false);\n setForm(DEFAULT_FORM);\n\n (clubDiscount || offer || promocode || roomType) && fetch(DEFAULT_FORM);\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:CLEAR_ALL' });\n };\n\n const handleSubmit = () => {\n memoizeForm = form;\n setVisible(false);\n const nextCounter = countFilters(form);\n setCounter(nextCounter);\n onSubmit({ ...form, strictSearch: getStrictSearch(form) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:SUBMIT', counter: nextCounter });\n };\n\n const fetch = async (next) => {\n setBusy(true);\n\n const { clubDiscount } = next;\n const strictSearch = getStrictSearch(next);\n const cart = []; // ! TODO: [MF-2006] Store should get the current cart of <Rates>\n const params = { cart, club, clubDiscount, finder, hotel, id, locale, maxRooms, session, strictSearch };\n const { items: nextItems } = (await fetchRates(params).catch(() => {})) || {};\n setItems(nextItems);\n if (nextItems) setFilters(getAvailableFilters(nextItems, { priceFactor }));\n\n setBusy(false);\n };\n\n const has = {\n clubDiscount: (discount !== undefined || clubConditions !== undefined) && !session,\n freeCancellation: true || !!filters.freeCancellation, // * We'll activate freeCancellation filter always.\n offer: !!idoffers,\n promocode: !!promocode,\n roomType: !!roomTypeId,\n };\n\n const filteredItems = select(items, form, { priceFactor }).filter(({ availability = 0 } = {}) => availability > 0);\n const { length: boardsLength } = filters.boards;\n const inlineBoards = !isMobile || (isMobile && boardsLength <= MAX_BOARDS - 1);\n const { name: roomTypeName } = items?.find(({ id } = {}) => id === parseInt(roomTypeId)) || {};\n\n return (\n <>\n <ButtonFilters {...{ counter }} onPress={handleModal} />\n\n <Modal\n fit\n portal\n title={translate(L10N.LABEL_FILTERS)}\n visible={visible}\n onClose={handleModal}\n className={[style.modal, others.className]}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_BOOKING_OPTIONS)}\n </Text>\n\n {has.clubDiscount && (\n <BookingOption\n caption={\n clubConditions\n ? translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action small href={clubConditions} target=\"_blank\" className={style.textInline}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })\n : translate(L10N.LABEL_CLUB_BENEFITS)\n }\n checked={form.clubDiscount}\n club={club.name}\n field=\"clubDiscount\"\n title={L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE}\n onChange={handleBookingOption}\n />\n )}\n\n {BOOKING_OPTIONS.filter(({ field } = {}) => has[field]).map(({ field, title } = {}) => (\n <BookingOption\n key={field}\n checked={form[field]}\n {...{ field, title, roomName: roomTypeName, promocode: promocode?.toUpperCase() }}\n onChange={handleBookingOption}\n />\n ))}\n </View>\n\n {boardsLength > 1 && (\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n <View row={inlineBoards} className={styles(style.boards, inlineBoards && style.inline)}>\n {filters.boards.map(({ id, text, type }) => (\n <Option\n checked={form.board === type}\n key={`board:${id}`}\n inline={inlineBoards}\n outlined\n title={text}\n onPress={() => handleOption('board', type)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.prices.length > 1 && (\n <InputRange\n caption={translate(priceFactor === 1 ? L10N.LABEL_SET_PRICE_RANGE : L10N.LABEL_NIGHTLY_PRICES)}\n dataSource={filters.prices}\n resolution={isMobile ? 12 : 24}\n title={translate(L10N.LABEL_PRICE_RANGE)}\n unit={currencySymbol(currency, { locale })}\n value={form.priceRange}\n onChange={(value) => handleRange('priceRange', value)}\n className={style.section}\n />\n )}\n\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_AMENITIES)}\n </Text>\n\n <View>\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n\n {allAmenities ? (\n <>\n <Text action bold wide className={style.textOthers}>\n {translate(L10N.LABEL_OTHERS)}\n </Text>\n\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => !item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n </>\n ) : (\n <Action underline onPress={() => setAllAmenities(true)}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Action>\n )}\n </View>\n </View>\n\n {filters.bedTypes.length > 1 && (\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_BED_TYPE)}\n </Text>\n\n <View row>\n {filters.bedTypes.map((bedType) => (\n <Option\n key={`bedType:${bedType}`}\n checked={form.bedType === bedType}\n icon={bedType === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE}\n inline\n outlined\n title={translate(bedType === 1 ? L10N.LABEL_BED_TYPE_SINGLE : L10N.LABEL_BED_TYPE_DOUBLE)}\n onPress={() => handleOption('bedType', bedType)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.sizes.length > 1 && (\n <InputRange\n dataSource={filters.sizes}\n resolution={isMobile ? 4 : 6}\n title={translate(L10N.LABEL_ROOM_SIZE)}\n unit={filters.sizeUnit}\n value={form.sizeRange}\n onChange={(value) => handleRange('sizeRange', value)}\n className={style.section}\n />\n )}\n </ScrollView>\n\n <View row className={[style.footer, style.spaceBetween]}>\n <Button transparent onPress={handleClearAll}>\n {translate(L10N.ACTION_CLEAR_ALL)}\n </Button>\n <Button busy={busy} disabled={!filteredItems.length} onPress={handleSubmit}>\n {translate(filteredItems.length ? L10N.LABEL_SHOW_COUNT_RESULTS : L10N.LABEL_NO_EXACT_MATCHES, {\n count: filteredItems.length,\n })}\n </Button>\n </View>\n </Modal>\n </>\n );\n};\n\nFilters.displayName = 'Mirai:Core:Rates:Filters';\n\nFilters.propTypes = {\n clubDiscount: PropTypes.bool,\n clubConditions: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n priceFactor: PropTypes.number,\n onSubmit: PropTypes.func,\n};\n\nexport { Filters };\n"],"mappings":"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"}
@@ -80,7 +80,23 @@ const Preview = _ref => {
80
80
  id: 'RATES:ITEM:SLIDER:COUNTER'
81
81
  });
82
82
  };
83
- const [uniqueRate] = cancellations.length === availableRates.length && !highlightStandaloneOption ? rates : [];
83
+ const countdownRates = availableRates.filter(function () {
84
+ let {
85
+ countdown
86
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
87
+ return countdown > 0;
88
+ });
89
+ const [uniqueRate] = cancellations.length === availableRates.length && (countdownRates === 0 || availableRates.filter(function () {
90
+ let {
91
+ countdown
92
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
93
+ return countdown > 0;
94
+ }).length === availableRates.length) && !availableRates.find(function () {
95
+ let {
96
+ description
97
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
98
+ return !!description;
99
+ }) && !highlightStandaloneOption ? rates : [];
84
100
  const [uniqueBoard] = boards.length === 1 && availableBoards.filter(function () {
85
101
  let {
86
102
  name
@@ -108,6 +124,8 @@ const Preview = _ref => {
108
124
  return large;
109
125
  }),
110
126
  media: media,
127
+ roomId: others.id,
128
+ title: title,
111
129
  width: memoizedWidth,
112
130
  onCounter: !isMobile ? handleSliderCounter : undefined,
113
131
  onViewUrl: onViewUrl,
@@ -145,7 +163,10 @@ const Preview = _ref => {
145
163
  }, title), !isMobile && /*#__PURE__*/_react.default.createElement(_components.Amenities, _extends({
146
164
  highlight: true,
147
165
  preview: true
148
- }, others)), uniqueRate && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, uniqueRate.included.map((item, index) => /*#__PURE__*/_react.default.createElement(_ui.View, {
166
+ }, others)), uniqueRate && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, uniqueRate.countdown && /*#__PURE__*/_react.default.createElement(_components.Countdown, {
167
+ offer: true,
168
+ timestamp: uniqueRate.countdown
169
+ }), uniqueRate.included.map((item, index) => /*#__PURE__*/_react.default.createElement(_ui.View, {
149
170
  key: index,
150
171
  row: true,
151
172
  className: style.row
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","GAP_TABLET","GAP_NOT_TABLET","memoizedWidth","Preview","_ref","availability","availableBoards","availableRates","boards","cancellations","features","columnMode","hideStandaloneBoard","highlightStandaloneOption","rowMode","images","isSoldOut","media","name","title","promocodeForAll","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","finder","promocode","hotel","warningAvailability","useStore","useEffect","clientWidth","current","handleSliderCounter","Event","publish","EVENT","METRICS","id","uniqueRate","uniqueBoard","filter","undefined","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","slider","row","tags","Text","bold","Icon","ICON","DISCOUNT","toUpperCase","offset","spaceBetween","details","Features","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","included","item","index","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","paragraph","INFO","light","restrictions","variableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","bool","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Features, Slider, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { EVENT, ICON } from '../../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode = false,\n hideStandaloneBoard = false,\n highlightStandaloneOption = false,\n rowMode = false,\n ...features\n } = {},\n images = [],\n isSoldOut = false,\n media,\n name: title,\n promocodeForAll,\n rates = [],\n selectedBoard = {},\n onCancellationInfo,\n onMoreInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { height, isDesktop, isMobile, isPortrait, isTablet, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { finder: { promocode } = {}, hotel: { warningAvailability = 9999 } = {} } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - (isTablet && !isDesktop ? GAP_TABLET : GAP_NOT_TABLET);\n }, [isDesktop, isTablet, width]);\n\n const handleSliderCounter = () => {\n onMoreInfo && onMoreInfo();\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:SLIDER:COUNTER' });\n };\n\n const [uniqueRate] = cancellations.length === availableRates.length && !highlightStandaloneOption ? rates : [];\n\n const [uniqueBoard] =\n boards.length === 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length\n ? boards\n : [];\n\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n const { offerDates, variants = [] } = selectedBoard;\n\n return (\n <View ref={ref} className={style.preview}>\n <Slider\n height={columnMode || rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? handleSliderCounter : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={style.tags}>\n {promocode && promocodeForAll && (\n <Text bold small>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...{ features, ...others }} />\n\n {isSoldOut === false && availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold brand headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n </>\n )}\n\n {uniqueBoard && !hideStandaloneBoard && !highlightStandaloneOption && (\n <View row className={style.row}>\n <Text {...caption}>{boards[0].name}</Text>\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </View>\n )}\n\n {cancellations.length === 1 && !highlightStandaloneOption && (\n <View>\n <View row>\n <Pressable\n onPress={() => onCancellationInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text light small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ variableOffer, value } = {}, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {value}\n </Text>\n {variableOffer && offerDates.length > 0 && (\n <TooltipDates\n captions={offerDates.map(() => translate(L10N.LABEL_INCLUDED))}\n values={offerDates.map((date) => parseDate(date))}\n warning\n />\n )}\n </View>\n ))}\n\n <View row>\n <Action small={isMobile} onPress={onMoreInfo}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n }),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n isSoldOut: PropTypes.bool,\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n promocodeForAll: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onCancellationInfo: PropTypes.func,\n onMoreInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","GAP_TABLET","GAP_NOT_TABLET","memoizedWidth","Preview","_ref","availability","availableBoards","availableRates","boards","cancellations","features","columnMode","hideStandaloneBoard","highlightStandaloneOption","rowMode","images","isSoldOut","media","name","title","promocodeForAll","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","finder","promocode","hotel","warningAvailability","useStore","useEffect","clientWidth","current","handleSliderCounter","Event","publish","EVENT","METRICS","id","countdownRates","filter","countdown","undefined","uniqueRate","find","description","uniqueBoard","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","roomId","onCounter","slider","row","tags","Text","bold","Icon","ICON","DISCOUNT","toUpperCase","offset","spaceBetween","details","Features","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","Countdown","offer","timestamp","included","item","index","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","paragraph","INFO","light","restrictions","variableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","bool","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Countdown, Features, Slider, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { EVENT, ICON } from '../../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode = false,\n hideStandaloneBoard = false,\n highlightStandaloneOption = false,\n rowMode = false,\n ...features\n } = {},\n images = [],\n isSoldOut = false,\n media,\n name: title,\n promocodeForAll,\n rates = [],\n selectedBoard = {},\n onCancellationInfo,\n onMoreInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { height, isDesktop, isMobile, isPortrait, isTablet, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { finder: { promocode } = {}, hotel: { warningAvailability = 9999 } = {} } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - (isTablet && !isDesktop ? GAP_TABLET : GAP_NOT_TABLET);\n }, [isDesktop, isTablet, width]);\n\n const handleSliderCounter = () => {\n onMoreInfo && onMoreInfo();\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:SLIDER:COUNTER' });\n };\n\n const countdownRates = availableRates.filter(({ countdown } = {}) => countdown > 0);\n\n const [uniqueRate] =\n cancellations.length === availableRates.length &&\n (countdownRates === 0 ||\n availableRates.filter(({ countdown } = {}) => countdown > 0).length === availableRates.length) &&\n !availableRates.find(({ description } = {}) => !!description) &&\n !highlightStandaloneOption\n ? rates\n : [];\n\n const [uniqueBoard] =\n boards.length === 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length\n ? boards\n : [];\n\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n const { offerDates, variants = [] } = selectedBoard;\n\n return (\n <View ref={ref} className={style.preview}>\n <Slider\n height={columnMode || rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n roomId={others.id}\n title={title}\n width={memoizedWidth}\n onCounter={!isMobile ? handleSliderCounter : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={style.tags}>\n {promocode && promocodeForAll && (\n <Text bold small>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...{ features, ...others }} />\n\n {isSoldOut === false && availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold brand headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.countdown && <Countdown offer timestamp={uniqueRate.countdown} />}\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n </>\n )}\n\n {uniqueBoard && !hideStandaloneBoard && !highlightStandaloneOption && (\n <View row className={style.row}>\n <Text {...caption}>{boards[0].name}</Text>\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </View>\n )}\n\n {cancellations.length === 1 && !highlightStandaloneOption && (\n <View>\n <View row>\n <Pressable\n onPress={() => onCancellationInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text light small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ variableOffer, value } = {}, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {value}\n </Text>\n {variableOffer && offerDates.length > 0 && (\n <TooltipDates\n captions={offerDates.map(() => translate(L10N.LABEL_INCLUDED))}\n values={offerDates.map((date) => parseDate(date))}\n warning\n />\n )}\n </View>\n ))}\n\n <View row>\n <Action small={isMobile} onPress={onMoreInfo}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n }),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n isSoldOut: PropTypes.bool,\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n promocodeForAll: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onCancellationInfo: PropTypes.func,\n onMoreInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
@@ -59,6 +59,12 @@ const Rates = _ref => {
59
59
  rateId,
60
60
  id: boardId
61
61
  } = selectedBoard;
62
+ const countdownRates = availableRates.filter(function () {
63
+ let {
64
+ countdown
65
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
66
+ return countdown > 0;
67
+ });
62
68
  const has = {
63
69
  cancellations: cancellations.length > 1 || highlightStandaloneOption,
64
70
  boards: boards.length > 1 || availableBoards.filter(function () {
@@ -69,7 +75,12 @@ const Rates = _ref => {
69
75
  }).length !== availableBoards.length || highlightStandaloneOption,
70
76
  inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),
71
77
  inlineCancellations: hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),
72
- rates: cancellations.length !== availableRates.length || highlightStandaloneOption
78
+ rates: cancellations.length !== availableRates.length || countdownRates.length > 0 && countdownRates.length !== availableRates.length || availableRates.find(function () {
79
+ let {
80
+ description
81
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
82
+ return !!description;
83
+ }) || highlightStandaloneOption
73
84
  };
74
85
  const renderCancellations = () => has.cancellations && /*#__PURE__*/_react.default.createElement(_ui.View, {
75
86
  className: [style.offset, style.gap]