@mirai/core 0.3.396 → 0.3.398
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.
- package/build/Core.constants.js +6 -1
- package/build/Core.constants.js.map +1 -1
- package/build/Core.provider.js +1 -2
- package/build/Core.provider.js.map +1 -1
- package/build/components/BannerLoyalty/BannerLoyalty.skeleton.js +7 -3
- package/build/components/BannerLoyalty/BannerLoyalty.skeleton.js.map +1 -1
- package/build/components/BannerLoyalty/__tests__/__snapshots__/BannerLoyalty.skeleton.test.js.snap +290 -0
- package/build/components/BannerLoyalty/__tests__/__snapshots__/BannerLoyalty.test.js.snap +4 -4
- package/build/components/Booking/__tests__/__snapshots__/Booking.test.js.snap +5 -5
- package/build/components/Booking/components/Field/Field.js +1 -1
- package/build/components/Booking/components/Field/Field.js.map +1 -1
- package/build/components/Booking/components/Field/__tests__/__snapshots__/Field.test.js.snap +10 -10
- package/build/components/Booking/components/Hotelverse/Hotelverse.js +15 -14
- package/build/components/Booking/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/Booking/components/Hotelverse/__tests__/__snapshots__/Hotelverse.test.js.snap +108 -0
- package/build/components/Booking/helpers/getButtonPaymentKey.js +2 -7
- package/build/components/Booking/helpers/getButtonPaymentKey.js.map +1 -1
- package/build/components/Booking/helpers/getButtonPaymentKey.l10n.js +0 -3
- package/build/components/Booking/helpers/getButtonPaymentKey.l10n.js.map +1 -1
- package/build/components/Booking/partials/Booking.FormCancel.js +4 -3
- package/build/components/Booking/partials/Booking.FormCancel.js.map +1 -1
- package/build/components/Booking/partials/Booking.FormEdit.js +2 -2
- package/build/components/Booking/partials/Booking.FormEdit.js.map +1 -1
- package/build/components/Booking/partials/Booking.FormResend.js +4 -3
- package/build/components/Booking/partials/Booking.FormResend.js.map +1 -1
- package/build/components/Booking/partials/Booking.Information.js +5 -4
- package/build/components/Booking/partials/Booking.Information.js.map +1 -1
- package/build/components/Booking/partials/Booking.Payment.js +4 -3
- package/build/components/Booking/partials/Booking.Payment.js.map +1 -1
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormCancel.test.js.snap +546 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormEdit.test.js.snap +46 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormResend.test.js.snap +166 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Information.test.js.snap +110 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Menu.test.js.snap +4 -4
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Modal.test.js.snap +4 -4
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.ModalAgency.test.js.snap +319 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Payment.test.js.snap +178 -0
- package/build/components/BookingQuery/BookingQuery.js +1 -0
- package/build/components/BookingQuery/BookingQuery.js.map +1 -1
- package/build/components/BookingQuery/__tests__/__snapshots__/BookingQuery.test.js.snap +10 -10
- package/build/components/ButtonFinder/__tests__/__snapshots__/ButtonFinder.test.js.snap +5 -5
- package/build/components/Chat/Chat.js +7 -4
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/__tests__/__snapshots__/Chat.constants.test.js.snap +27 -0
- package/build/components/Chat/__tests__/__snapshots__/Chat.test.js.snap +634 -0
- package/build/components/Chat/components/Avatar/__tests__/__snapshots__/Avatar.test.jsx.snap +5 -5
- package/build/components/Chat/components/Input/__tests__/__snapshots__/Input.test.jsx.snap +4 -4
- package/build/components/Chat/components/InputRich/__tests__/__snapshots__/InputRich.test.jsx.snap +4 -4
- package/build/components/Chat/components/Message/__tests__/__snapshots__/Message.test.jsx.snap +10 -10
- package/build/components/Chat/components/Message/components/Booking.js +3 -2
- package/build/components/Chat/components/Message/components/Booking.js.map +1 -1
- package/build/components/Chat/components/Message/components/Card.js +3 -2
- package/build/components/Chat/components/Message/components/Card.js.map +1 -1
- package/build/components/Chat/components/Message/components/Environment.js +5 -4
- package/build/components/Chat/components/Message/components/Environment.js.map +1 -1
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Booking.test.js.snap +53 -0
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Card.test.js.snap +29 -0
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Environment.test.js.snap +44 -0
- package/build/components/Chat/components/Offline/Offline.js +5 -4
- package/build/components/Chat/components/Offline/Offline.js.map +1 -1
- package/build/components/Chat/components/Offline/__tests__/__snapshots__/Offline.test.js.snap +162 -0
- package/build/components/Chat/helpers/__tests__/__snapshots__/getVerboseDate.test.js.snap +9 -0
- package/build/components/Checkout/__tests__/__snapshots__/Checkout.test.js.snap +8 -8
- package/build/components/Checkout/components/InputRadio/__tests__/__snapshots__/InputRadio.test.js.snap +4 -4
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Confirmation.test.js.snap +6 -6
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Form.test.js.snap +4 -4
- package/build/components/Deals/__tests__/__snapshots__/Deals.Calendar.test.js.snap +3 -3
- package/build/components/Deals/__tests__/__snapshots__/Deals.constants.js.snap +15 -0
- package/build/components/Deals/__tests__/__snapshots__/Deals.test.js.snap +4 -4
- package/build/components/Environment/Environment.State.js +7 -5
- package/build/components/Environment/Environment.State.js.map +1 -1
- package/build/components/Environment/__tests__/__snapshots__/Environment.State.test.js.snap +120 -0
- package/build/components/Environment/__tests__/__snapshots__/Environment.test.js.snap +988 -0
- package/build/components/Finder/__tests__/__snapshots__/Finder.constants.test.js.snap +39 -0
- package/build/components/Finder/__tests__/__snapshots__/Finder.test.js.snap +14 -14
- package/build/components/Finder/components/Calendar/__tests__/__snapshots__/Calendar.test.js.snap +9 -9
- package/build/components/Finder/components/Places/__tests__/__snapshots__/Places.test.js.snap +5 -5
- package/build/components/Finder/helpers/__tests__/__snapshots__/getForwarderUrl.test.js.snap +7 -0
- package/build/components/Header/__tests__/__snapshots__/Header.test.js.snap +1187 -0
- package/build/components/Profile/components/Bookings/__tests__/__snapshots__/Bookings.test.js.snap +1 -1
- package/build/components/Rates/Rates.Content.js +3 -2
- package/build/components/Rates/Rates.Content.js.map +1 -1
- package/build/components/Rates/Rates.Footer.js +5 -4
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/Rates.RoomSelector.js +6 -4
- package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
- package/build/components/Rates/Rates.constants.js +1 -0
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.js +4 -2
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/__tests__/__snapshots__/Rates.Content.test.js.snap +26 -0
- package/build/components/Rates/__tests__/__snapshots__/Rates.Footer.test.js.snap +50 -0
- package/build/components/Rates/__tests__/__snapshots__/Rates.Header.test.js.snap +10 -0
- package/build/components/Rates/__tests__/__snapshots__/Rates.RoomSelector.test.js.snap +3 -0
- package/build/components/Rates/__tests__/__snapshots__/Rates.Unavailability.test.js.snap +63 -0
- package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +11091 -0
- package/build/components/Rates/components/CardHotel/CardHotel.js +3 -3
- package/build/components/Rates/components/CardHotel/CardHotel.js.map +1 -1
- package/build/components/Rates/components/CardHotel/__tests__/__snapshots__/CardHotel.test.js.snap +85 -0
- package/build/components/Rates/components/ClubRate/__tests__/__snapshots__/ClubRate.test.js.snap +38 -0
- package/build/components/Rates/components/Filters/Filters.js +1 -1
- package/build/components/Rates/components/Filters/Filters.js.map +1 -1
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/FIlters.Button.test.js.snap +33 -0
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.Amenity.test.js.snap +21 -0
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.BookingOption.test.js.snap +32 -0
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.test.js.snap +168 -0
- package/build/components/Rates/components/Hotelverse/Hotelverse.js +8 -12
- package/build/components/Rates/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/Rates/components/Hotelverse/__tests__/__snapshots__/Hotelverse.test.js.snap +3 -0
- package/build/components/Rates/components/Item/Item.Preview.js +2 -2
- package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Rates.js +6 -9
- package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Summary.js +33 -8
- package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
- package/build/components/Rates/components/Item/Item.js +2 -0
- package/build/components/Rates/components/Item/Item.js.map +1 -1
- package/build/components/Rates/components/Item/Item.module.css +11 -0
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Preview.test.js.snap +93 -0
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Rates.test.js.snap +9 -0
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Summary.test.js.snap +53 -0
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.test.js.snap +151 -0
- package/build/components/Rates/components/Item/components/Amenities/__tests__/__snapshots__/Amenities.test.js.snap +3 -0
- package/build/components/Rates/components/Item/components/Features/__tests__/__snapshots__/Features.test.js.snap +40 -0
- package/build/components/Rates/components/Item/components/ModalCancellationInfo/__tests__/__snapshots__/ModalCancellationInfo.test.js.snap +35 -0
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/__tests__/__snapshots__/ModalInfo.test.js.snap +72 -0
- package/build/components/Rates/components/Item/components/ModalOfferInfo/__tests__/__snapshots__/ModalOfferInfo.test.js.snap +49 -0
- package/build/components/Rates/components/Item/components/ModalUrl/__tests__/__snapshots__/ModalUrl.test.js.snap +50 -0
- package/build/components/Rates/components/Item/components/Option/__tests__/__snapshots__/Option.test.js.snap +18 -0
- package/build/components/Rates/components/Item/components/PriceDetails/__tests__/__snapshots__/PriceDetails.test.js.snap +23 -0
- package/build/components/Rates/components/Item/components/RateDetails/__tests__/__snapshots__/RateDetails.Countdown.test.js.snap +3 -0
- package/build/components/Rates/components/Item/components/RateDetails/__tests__/__snapshots__/RateDetails.test.js.snap +3 -0
- package/build/components/Rates/components/Item/components/Slider/__tests__/__snapshots__/Slider.test.js.snap +27 -0
- package/build/components/Rates/components/Item/components/TooltipDates/__tests__/__snapshots__/TooltipDates.test.js.snap +3 -0
- package/build/components/Rates/components/ModalExtras/__tests__/__snapshots__/ModalExtras.test.js.snap +68 -0
- package/build/components/Rates/components/ModalMapView/__tests__/__snapshots__/ModalMapView.test.js.snap +66 -0
- package/build/components/Rates/helpers/getCheckoutParams.js +2 -2
- package/build/components/Rates/helpers/getCheckoutParams.js.map +1 -1
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +7 -7
- package/build/components/Signup/__tests__/__snapshots__/Signup.test.js.snap +3 -3
- package/build/components/__shared__/BookingDates/__tests__/__snapshots__/BookingDates.test.js.snap +7 -7
- package/build/components/__shared__/BookingDetails/__tests__/__snapshots__/BookingDetails.test.js.snap +6 -6
- package/build/components/__shared__/BookingSummary/_tests__/BookingSummary.constants.test.js +25 -0
- package/build/components/__shared__/BookingSummary/_tests__/BookingSummary.constants.test.js.map +1 -0
- package/build/components/__shared__/BookingSummary/_tests__/BookingSummary.test.js +5 -5
- package/build/components/__shared__/BookingSummary/_tests__/BookingSummary.test.js.map +1 -1
- package/build/components/__shared__/BookingSummary/_tests__/__snapshots__/BookingSummary.test.js.snap +4 -4
- package/build/components/__shared__/BookingTable/__tests__/__snapshots__/BookingTable.Row.test.js.snap +10 -10
- package/build/components/__shared__/BookingTable/__tests__/__snapshots__/BookingTable.test.js.snap +6 -6
- package/build/components/__shared__/BookingTerms/__tests__/__snapshots__/BookingTerms.test.js.snap +4 -4
- package/build/components/__shared__/ButtonMore/__tests__/__snapshots__/ButtonMore.test.js.snap +3 -3
- package/build/components/__shared__/ButtonPayment/__tests__/__snapshots__/ButtonPayment.test.js.snap +4 -4
- package/build/components/__shared__/ButtonPayment/components/Form/Form.js +4 -2
- package/build/components/__shared__/ButtonPayment/components/Form/Form.js.map +1 -1
- package/build/components/__shared__/ButtonPayment/components/Form/__tests__/__snapshots__/Form.test.js.snap +65 -0
- package/build/components/__shared__/ButtonPayment/components/FormAddon/__tests__/__snapshots__/FormAddon.test.js.snap +3 -3
- package/build/components/__shared__/ButtonPayment/components/FormCheckout/__tests__/__snapshots__/FormCheckout.test.js.snap +3 -3
- package/build/components/__shared__/ButtonPayment/components/FormCheckout/helpers/__tests__/__snapshots__/getStyle.test.js.snap +23 -0
- package/build/components/__shared__/ButtonPayment/components/FormPaycomet/__tests__/__snapshots__/FormPaycomet.test.js.snap +1 -1
- package/build/components/__shared__/ButtonPayment/components/FormSipay/__tests__/__snapshots__/FormSipay.test.js.snap +3 -3
- package/build/components/__shared__/ButtonPayment/components/InputField/__tests__/__snapshots__/InputField.test.js.snap +6 -6
- package/build/components/__shared__/Card/__tests__/__snapshots__/Card.test.js.snap +34 -0
- package/build/components/__shared__/Countdown/__tests__/__snapshots__/Countdown.test.js.snap +4 -4
- package/build/components/__shared__/Field/__tests__/__snapshots__/Field.test.js.snap +17 -17
- package/build/components/__shared__/FieldOccupation/__tests__/__snapshots__/FieldOccupation.test.js.snap +8 -8
- package/build/components/__shared__/FieldPromocode/__tests__/__snapshots__/FieldPromocode.test.jsx.snap +5 -5
- package/build/components/__shared__/Footer/__tests__/__snapshots__/Footer.test.js.snap +4 -4
- package/build/components/__shared__/NotificationRequiredFields/__tests__/__snapshots__/NotificationRequiredFields.test.js.snap +118 -0
- package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap +10 -10
- package/build/components/__shared__/Payment/__tests__/__snapshots__/Payment.test.js.snap +5 -5
- package/build/components/__shared__/Payment/components/AmazonPay/__tests__/__snapshots__/AmazonPay.test.js.snap +2 -2
- package/build/components/__shared__/Payment/components/Aplazame/__tests__/__snapshots__/Aplazame.test.js.snap +1 -1
- package/build/components/__shared__/Payment/components/Card/__tests__/__snapshots__/Card.test.js.snap +6 -6
- package/build/components/__shared__/Payment/components/PCI/__tests__/__snapshots__/PCI.test.js.snap +4 -4
- package/build/components/__shared__/Payment/components/Tpv/__tests__/__snapshots__/Tpv.test.js.snap +3 -3
- package/build/components/__shared__/PriceBreakdown/PriceBreakdown.js +1 -1
- package/build/components/__shared__/PriceBreakdown/PriceBreakdown.js.map +1 -1
- package/build/components/__shared__/PriceBreakdown/__tests__/__snapshots__/PriceBreakdown.Line.test.js.snap +49 -0
- package/build/components/__shared__/PriceBreakdown/__tests__/__snapshots__/PriceBreakdown.test.js.snap +337 -0
- package/build/components/__shared__/SelectEnvironment/__tests__/__snapshots__/SelectEnvironment.test.js.snap +6 -6
- package/build/components/__shared__/Skeleton/__tests__/__snapshots__/Skeleton.test.js.snap +66 -0
- package/build/components/__shared__/TextRequiredFields/__tests__/__snapshots__/TextRequiredFields.test.js.snap +3 -3
- package/build/components/helpers/addScript.js +2 -2
- package/build/components/helpers/addScript.js.map +1 -1
- package/build/components/helpers/parseHtml.js +0 -1
- package/build/components/helpers/parseHtml.js.map +1 -1
- package/build/contexts/PerfomanceManager/providers/gtm/ratesResponse.js +0 -1
- package/build/contexts/PerfomanceManager/providers/gtm/ratesResponse.js.map +1 -1
- package/build/helpers/checkSession.js.map +1 -1
- package/build/helpers/debounce.js +2 -1
- package/build/helpers/debounce.js.map +1 -1
- package/build/helpers/fetchCookies.js +2 -2
- package/build/helpers/fetchCookies.js.map +1 -1
- package/build/helpers/loadSentry.js +1 -4
- package/build/helpers/loadSentry.js.map +1 -1
- package/build/helpers/toOccupation.js +1 -1
- package/build/helpers/toOccupation.js.map +1 -1
- package/build/index.js +1 -2
- package/build/index.js.map +1 -1
- package/package.json +1 -1
- package/build/Core.definition.js +0 -10
- package/build/Core.definition.js.map +0 -1
package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.test.js.snap
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`<Rates> <Filters> renders 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<ui-button
|
|
6
|
+
class="pressable button secondary"
|
|
7
|
+
tabindex="0"
|
|
8
|
+
>
|
|
9
|
+
<ui-icon
|
|
10
|
+
class="icon headline-3"
|
|
11
|
+
>
|
|
12
|
+
<svg
|
|
13
|
+
fill="currentColor"
|
|
14
|
+
height="1em"
|
|
15
|
+
stroke="currentColor"
|
|
16
|
+
stroke-width="0"
|
|
17
|
+
viewBox="0 0 24 24"
|
|
18
|
+
width="1em"
|
|
19
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
20
|
+
>
|
|
21
|
+
<path
|
|
22
|
+
d="M0 0h24v24H0V0z"
|
|
23
|
+
fill="none"
|
|
24
|
+
/>
|
|
25
|
+
<path
|
|
26
|
+
d="M3 17v2h6v-2H3zM3 5v2h10V5H3zm10 16v-2h8v-2h-8v-2h-2v6h2zM7 9v2H3v2h4v2h2V9H7zm14 4v-2H11v2h10zm-6-4h2V7h4V5h-4V3h-2v6z"
|
|
27
|
+
/>
|
|
28
|
+
</svg>
|
|
29
|
+
</ui-icon>
|
|
30
|
+
common.label.filters
|
|
31
|
+
</ui-button>
|
|
32
|
+
<ui-modal-overflow
|
|
33
|
+
class="pressable container overflow"
|
|
34
|
+
style="height: 768px;"
|
|
35
|
+
tabindex="0"
|
|
36
|
+
>
|
|
37
|
+
<ui-modal
|
|
38
|
+
class="view fit modal"
|
|
39
|
+
>
|
|
40
|
+
<ui-view
|
|
41
|
+
class="view row header hideBack"
|
|
42
|
+
>
|
|
43
|
+
<ui-text
|
|
44
|
+
class="text headline-3 title"
|
|
45
|
+
>
|
|
46
|
+
common.label.filters
|
|
47
|
+
</ui-text>
|
|
48
|
+
<ui-button
|
|
49
|
+
class="pressable button small squared transparent"
|
|
50
|
+
tabindex="0"
|
|
51
|
+
>
|
|
52
|
+
<ui-icon
|
|
53
|
+
class="icon headline-3 icon"
|
|
54
|
+
>
|
|
55
|
+
<svg
|
|
56
|
+
fill="currentColor"
|
|
57
|
+
height="1em"
|
|
58
|
+
stroke="currentColor"
|
|
59
|
+
stroke-width="0"
|
|
60
|
+
viewBox="0 0 24 24"
|
|
61
|
+
width="1em"
|
|
62
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
63
|
+
>
|
|
64
|
+
<path
|
|
65
|
+
d="M0 0h24v24H0V0z"
|
|
66
|
+
fill="none"
|
|
67
|
+
/>
|
|
68
|
+
<path
|
|
69
|
+
d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
|
|
70
|
+
/>
|
|
71
|
+
</svg>
|
|
72
|
+
</ui-icon>
|
|
73
|
+
</ui-button>
|
|
74
|
+
</ui-view>
|
|
75
|
+
<ui-scrollview
|
|
76
|
+
class="scrollview vertical"
|
|
77
|
+
>
|
|
78
|
+
<ui-view
|
|
79
|
+
class="view"
|
|
80
|
+
>
|
|
81
|
+
<ui-text
|
|
82
|
+
class="text bold headline-3"
|
|
83
|
+
>
|
|
84
|
+
finder.label.booking_options
|
|
85
|
+
</ui-text>
|
|
86
|
+
<ui-view
|
|
87
|
+
class="view row"
|
|
88
|
+
>
|
|
89
|
+
<ui-view
|
|
90
|
+
class="view"
|
|
91
|
+
>
|
|
92
|
+
<ui-text
|
|
93
|
+
class="text action"
|
|
94
|
+
>
|
|
95
|
+
finder.label.free_cancellation
|
|
96
|
+
</ui-text>
|
|
97
|
+
</ui-view>
|
|
98
|
+
<ui-switch
|
|
99
|
+
class="switch"
|
|
100
|
+
>
|
|
101
|
+
<input
|
|
102
|
+
name="switch:freeCancellation"
|
|
103
|
+
type="checkbox"
|
|
104
|
+
/>
|
|
105
|
+
<ui-primitive
|
|
106
|
+
class="area"
|
|
107
|
+
>
|
|
108
|
+
<ui-primitive
|
|
109
|
+
class="toggle"
|
|
110
|
+
/>
|
|
111
|
+
</ui-primitive>
|
|
112
|
+
</ui-switch>
|
|
113
|
+
</ui-view>
|
|
114
|
+
</ui-view>
|
|
115
|
+
<ui-view
|
|
116
|
+
class="view"
|
|
117
|
+
>
|
|
118
|
+
<ui-text
|
|
119
|
+
class="text bold headline-3 wide"
|
|
120
|
+
>
|
|
121
|
+
finder.label.amenities
|
|
122
|
+
</ui-text>
|
|
123
|
+
<ui-view
|
|
124
|
+
class="view"
|
|
125
|
+
>
|
|
126
|
+
<ui-view
|
|
127
|
+
class="view row"
|
|
128
|
+
/>
|
|
129
|
+
<ui-action
|
|
130
|
+
class="pressable action underline"
|
|
131
|
+
tabindex="0"
|
|
132
|
+
>
|
|
133
|
+
common.action.view_more
|
|
134
|
+
</ui-action>
|
|
135
|
+
</ui-view>
|
|
136
|
+
</ui-view>
|
|
137
|
+
</ui-scrollview>
|
|
138
|
+
<ui-view
|
|
139
|
+
class="view row"
|
|
140
|
+
>
|
|
141
|
+
<ui-button
|
|
142
|
+
class="pressable button transparent"
|
|
143
|
+
tabindex="0"
|
|
144
|
+
>
|
|
145
|
+
common.action.clear_all
|
|
146
|
+
</ui-button>
|
|
147
|
+
<ui-button
|
|
148
|
+
class="pressable disabled button disabled"
|
|
149
|
+
disabled="true"
|
|
150
|
+
>
|
|
151
|
+
<ui-view
|
|
152
|
+
class="view busyContainer"
|
|
153
|
+
>
|
|
154
|
+
<ui-view
|
|
155
|
+
class="view spinner"
|
|
156
|
+
/>
|
|
157
|
+
</ui-view>
|
|
158
|
+
<ui-view
|
|
159
|
+
class="view row children"
|
|
160
|
+
>
|
|
161
|
+
finder.label.no_exact_matches
|
|
162
|
+
</ui-view>
|
|
163
|
+
</ui-button>
|
|
164
|
+
</ui-view>
|
|
165
|
+
</ui-modal>
|
|
166
|
+
</ui-modal-overflow>
|
|
167
|
+
</DocumentFragment>
|
|
168
|
+
`;
|
|
@@ -16,7 +16,7 @@ var _helpers = require("../../../helpers");
|
|
|
16
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
const Hotelverse =
|
|
19
|
+
const Hotelverse = function () {
|
|
20
20
|
let {
|
|
21
21
|
country,
|
|
22
22
|
hotelverse: {
|
|
@@ -28,7 +28,7 @@ const Hotelverse = _ref => {
|
|
|
28
28
|
multiRoom,
|
|
29
29
|
taxes,
|
|
30
30
|
onSelect = () => {}
|
|
31
|
-
} =
|
|
31
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
32
32
|
const {
|
|
33
33
|
isMobile
|
|
34
34
|
} = (0, _ui.useDevice)();
|
|
@@ -41,7 +41,7 @@ const Hotelverse = _ref => {
|
|
|
41
41
|
language,
|
|
42
42
|
finder: {
|
|
43
43
|
calendar: [checkIn, checkOut] = [],
|
|
44
|
-
occupation: [occupation] = [],
|
|
44
|
+
occupation: [occupation = []] = [],
|
|
45
45
|
promocode = ''
|
|
46
46
|
} = {},
|
|
47
47
|
urlParams: {
|
|
@@ -50,12 +50,10 @@ const Hotelverse = _ref => {
|
|
|
50
50
|
} = {}
|
|
51
51
|
} = (0, _dataSources.useStore)();
|
|
52
52
|
const [open, setOpen] = (0, _react.useState)(false);
|
|
53
|
-
const container = (0, _react.useRef)(null);
|
|
54
53
|
(0, _react.useEffect)(() => {
|
|
55
|
-
const el = container.current;
|
|
56
54
|
const cdn = process.env.HOTELVERSE_CDN;
|
|
57
|
-
const scriptEmbed = open && (0, _helpers.addScript)(
|
|
58
|
-
const scriptListener = open && (0, _helpers.addScript)(
|
|
55
|
+
const scriptEmbed = open && (0, _helpers.addScript)("".concat(cdn, "/scripts/embed.js"));
|
|
56
|
+
const scriptListener = open && (0, _helpers.addScript)("".concat(cdn, "/scripts/interfaceListener.js"));
|
|
59
57
|
if (open) {
|
|
60
58
|
document.body.classList.add('hotelverse-open');
|
|
61
59
|
window.callbackSelectRoom = function () {
|
|
@@ -87,8 +85,8 @@ const Hotelverse = _ref => {
|
|
|
87
85
|
}
|
|
88
86
|
return () => {
|
|
89
87
|
document.body.classList.remove('hotelverse-open');
|
|
90
|
-
if (scriptEmbed)
|
|
91
|
-
if (scriptListener)
|
|
88
|
+
if (scriptEmbed) document.head.removeChild(scriptEmbed);
|
|
89
|
+
if (scriptListener) document.head.removeChild(scriptListener);
|
|
92
90
|
window.callbackSelectRoom = undefined;
|
|
93
91
|
};
|
|
94
92
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -154,9 +152,7 @@ const Hotelverse = _ref => {
|
|
|
154
152
|
onClose: () => setOpen(false),
|
|
155
153
|
"data-testid": "hv-modal",
|
|
156
154
|
className: style.modal
|
|
157
|
-
}, open && /*#__PURE__*/_react.default.createElement("div", {
|
|
158
|
-
ref: container
|
|
159
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
155
|
+
}, open && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
|
|
160
156
|
id: "hv",
|
|
161
157
|
"data-hvaccesstokenhv": token,
|
|
162
158
|
"data-hvclientid": "6",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Hotelverse","_ref","country","hotelverse","hash","token","infantAge","items","multiRoom","taxes","onSelect","isMobile","useDevice","translate","useLocale","value","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","urlParams","idtokenprovider","idHotel","useStore","open","setOpen","useState","container","useRef","useEffect","el","current","cdn","process","env","HOTELVERSE_CDN","scriptEmbed","addScript","concat","scriptListener","document","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","arguments","length","undefined","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","removeChild","dateFormat","date","dateFormatBase","delimiter","format","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","createElement","Fragment","Button","secondary","wide","onPress","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","className","modal","ref","toUpperCase","exports","displayName","propTypes","PropTypes","string","shape","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { Button, Modal, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { addScript } from '../../../helpers';\n\nconst Hotelverse = ({\n country,\n hotelverse: { hash, token } = {},\n infantAge,\n items = [],\n multiRoom,\n taxes,\n onSelect = () => {},\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation] = [], promocode = '' } = {},\n urlParams: { idtokenprovider: idHotel } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n\n const container = useRef(null);\n\n useEffect(() => {\n const el = container.current;\n const cdn = process.env.HOTELVERSE_CDN;\n const scriptEmbed = open && addScript(el, `${cdn}/scripts/embed.js`);\n const scriptListener = open && addScript(el, `${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) el?.removeChild(scriptEmbed);\n if (scriptListener) el?.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return !multiRoom && hash && token ? (\n <>\n <Button secondary wide={isMobile} onPress={() => setOpen(!open)}>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Button>\n\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div ref={container}>\n <div\n id=\"hv\"\n data-hvaccesstokenhv={token}\n data-hvclientid=\"6\"\n data-hvcommandsinterface={commandInterface}\n data-hvcurrency={currency}\n data-hvexthotelid={idHotel}\n data-hvhash={hash}\n data-hvlanguage={language.toUpperCase()}\n data-hvproduct=\"BookYourRoom\"\n data-hvsearch={search}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n hotelverse: PropTypes.shape({\n hash: PropTypes.string,\n token: PropTypes.string,\n }),\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Hotelverse","country","hotelverse","hash","token","infantAge","items","multiRoom","taxes","onSelect","arguments","length","undefined","isMobile","useDevice","translate","useLocale","value","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","urlParams","idtokenprovider","idHotel","useStore","open","setOpen","useState","useEffect","cdn","process","env","HOTELVERSE_CDN","scriptEmbed","addScript","concat","scriptListener","document","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","head","removeChild","dateFormat","date","dateFormatBase","delimiter","format","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","createElement","Fragment","Button","secondary","wide","onPress","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","className","modal","toUpperCase","exports","displayName","propTypes","PropTypes","string","shape","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { Button, Modal, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { addScript } from '../../../helpers';\n\nconst Hotelverse = ({\n country,\n hotelverse: { hash, token } = {},\n infantAge,\n items = [],\n multiRoom,\n taxes,\n onSelect = () => {},\n} = {}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation = []] = [], promocode = '' } = {},\n urlParams: { idtokenprovider: idHotel } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n const cdn = process.env.HOTELVERSE_CDN;\n const scriptEmbed = open && addScript(`${cdn}/scripts/embed.js`);\n const scriptListener = open && addScript(`${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) document.head.removeChild(scriptEmbed);\n if (scriptListener) document.head.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return !multiRoom && hash && token ? (\n <>\n <Button secondary wide={isMobile} onPress={() => setOpen(!open)}>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Button>\n\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div>\n <div\n id=\"hv\"\n data-hvaccesstokenhv={token}\n data-hvclientid=\"6\"\n data-hvcommandsinterface={commandInterface}\n data-hvcurrency={currency}\n data-hvexthotelid={idHotel}\n data-hvhash={hash}\n data-hvlanguage={language.toUpperCase()}\n data-hvproduct=\"BookYourRoom\"\n data-hvsearch={search}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n hotelverse: PropTypes.shape({\n hash: PropTypes.string,\n token: PropTypes.string,\n }),\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
@@ -34,7 +34,7 @@ const Preview = _ref => {
|
|
|
34
34
|
highlightStandaloneOption = false,
|
|
35
35
|
rowMode = false,
|
|
36
36
|
...features
|
|
37
|
-
},
|
|
37
|
+
} = {},
|
|
38
38
|
images = [],
|
|
39
39
|
isSoldOut = false,
|
|
40
40
|
media,
|
|
@@ -62,7 +62,7 @@ const Preview = _ref => {
|
|
|
62
62
|
value: {
|
|
63
63
|
hotel: {
|
|
64
64
|
warningAvailability = 9999
|
|
65
|
-
}
|
|
65
|
+
} = {}
|
|
66
66
|
} = {}
|
|
67
67
|
} = (0, _dataSources.useStore)();
|
|
68
68
|
(0, _react.useEffect)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_helpers2","_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","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","filter","rate","isClubRate","board","rateId","undefined","id","uniqueBoard","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","slider","row","offset","spaceBetween","details","Features","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","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 { 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 { ICON } from '../../../helpers';\nimport { isClubRate } 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 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: { 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 [uniqueRate] =\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length === 0 &&\n cancellations.length === availableRates.length &&\n !highlightStandaloneOption\n ? rates\n : [];\n const [uniqueBoard] =\n boards.length === 1 ||\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length\n ? boards\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 ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\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 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","_helpers2","_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","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","filter","rate","isClubRate","board","rateId","undefined","id","uniqueBoard","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","slider","row","offset","spaceBetween","details","Features","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","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 { 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 { ICON } from '../../../helpers';\nimport { isClubRate } 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 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: { 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 [uniqueRate] =\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length === 0 &&\n cancellations.length === availableRates.length &&\n !highlightStandaloneOption\n ? rates\n : [];\n const [uniqueBoard] =\n boards.length === 1 ||\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length\n ? boards\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 ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\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 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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"}
|
|
@@ -34,6 +34,7 @@ const Rates = _ref => {
|
|
|
34
34
|
} = {},
|
|
35
35
|
rates = [],
|
|
36
36
|
selectedBoard = {},
|
|
37
|
+
valueFactor = 1,
|
|
37
38
|
onBoard,
|
|
38
39
|
onCancellation,
|
|
39
40
|
onCancellationInfo,
|
|
@@ -106,7 +107,7 @@ const Rates = _ref => {
|
|
|
106
107
|
checked: id === cancellationId,
|
|
107
108
|
inline: has.inlineCancellations,
|
|
108
109
|
outlined: hideRadio,
|
|
109
|
-
value: !showOffersFirst ? price : undefined,
|
|
110
|
+
value: !showOffersFirst ? price / valueFactor : undefined,
|
|
110
111
|
onPress: () => onCancellation(id)
|
|
111
112
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
112
113
|
action: !isMobile,
|
|
@@ -188,7 +189,7 @@ const Rates = _ref => {
|
|
|
188
189
|
checked: id === rateId,
|
|
189
190
|
disabled: disabled,
|
|
190
191
|
outlined: hideRadio,
|
|
191
|
-
value: price,
|
|
192
|
+
value: price / valueFactor,
|
|
192
193
|
onPress: rates.length > 0 ? () => onRate({
|
|
193
194
|
id,
|
|
194
195
|
cancellationId
|
|
@@ -201,12 +202,7 @@ const Rates = _ref => {
|
|
|
201
202
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
202
203
|
row: true,
|
|
203
204
|
className: style.tags
|
|
204
|
-
},
|
|
205
|
-
action: !isMobile,
|
|
206
|
-
medium: true,
|
|
207
|
-
small: isMobile,
|
|
208
|
-
className: [style.tag, style.highlight]
|
|
209
|
-
}, translate(_Item.L10N.LABEL_ONLY_MEMBERS)), isPromocode && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
205
|
+
}, isPromocode && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
210
206
|
action: !isMobile,
|
|
211
207
|
medium: true,
|
|
212
208
|
small: isMobile,
|
|
@@ -251,7 +247,7 @@ const Rates = _ref => {
|
|
|
251
247
|
inline: has.inlineBoards,
|
|
252
248
|
outlined: hideRadio,
|
|
253
249
|
title: name,
|
|
254
|
-
value: has.boards ? increment : undefined,
|
|
250
|
+
value: has.boards ? increment / valueFactor : undefined,
|
|
255
251
|
onPress: () => onBoard(board)
|
|
256
252
|
}, variants.length > 0 && /*#__PURE__*/_react.default.createElement(_components.TooltipDates, {
|
|
257
253
|
captions: variants.map(function () {
|
|
@@ -285,6 +281,7 @@ Rates.propTypes = {
|
|
|
285
281
|
}),
|
|
286
282
|
rates: _propTypes.default.arrayOf(_propTypes.default.any),
|
|
287
283
|
selectedBoard: _propTypes.default.shape({}),
|
|
284
|
+
valueFactor: _propTypes.default.number,
|
|
288
285
|
onBoard: _propTypes.default.func,
|
|
289
286
|
onCancellation: _propTypes.default.func,
|
|
290
287
|
onCancellationInfo: _propTypes.default.func,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item.Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_helpers2","_Rates","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","availableRates","boards","cancellations","features","columnMode","hideRadio","highlightStandaloneOption","rowMode","showOffersFirst","showRateIncluded","rates","selectedBoard","onBoard","onCancellation","onCancellationInfo","onRate","onOfferInfo","isMobile","useDevice","translate","useLocale","value","finder","promocode","useStore","cancellationId","rateId","id","boardId","length","filter","name","arguments","undefined","inlineBoards","inlineCancellations","rate","isClubRate","board","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","_ref2","map","_ref3","highlight","caption","price","cancellation","Option","key","checked","inline","outlined","onPress","medium","small","optionText","styles","tag","Pressable","Icon","paragraph","ICON","INFO","LABEL_OFFER","_ref4","countdown","description","disabled","included","restrictions","find","discount","breakdown","percentage","isClub","isPromocode","_ref5","type","DISCOUNT_TYPE","DEAL","PROMOTION","includes","discountPercentage","RateDetails","tags","LABEL_ONLY_MEMBERS","DISCOUNT","toUpperCase","LABEL_DISCOUNT","concat","LABEL_ACCOMMODATION_PLAN","increment","variants","title","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","bool","hideStandaloneBoard","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Option, RateDetails, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\nimport { isClubRate } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Rates = ({\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode,\n hideRadio = false,\n highlightStandaloneOption = false,\n rowMode,\n showOffersFirst = false,\n showRateIncluded = false,\n } = {},\n rates = [],\n selectedBoard = {},\n onBoard,\n onCancellation,\n onCancellationInfo,\n onRate,\n onOfferInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { value: { finder: { promocode } = {} } = {} } = useStore();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1 || highlightStandaloneOption,\n boards:\n (boards.length > 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length !==\n availableBoards.length) ||\n highlightStandaloneOption,\n inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),\n inlineCancellations:\n hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),\n rates:\n cancellations.length !== availableRates.length ||\n highlightStandaloneOption ||\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length > 0,\n };\n\n const renderCancellations = () =>\n has.cancellations && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_CANCELLATION_POLICY)}\n </Text>\n\n {React.createElement(\n has.inlineCancellations ? View : React.Fragment,\n has.inlineCancellations ? { row: true, className: style.inlineOptions } : undefined,\n cancellations\n .filter(({ id }) => !showOffersFirst || (showOffersFirst && id === cancellationId))\n .map(({ highlight, id, name, caption, price, ...cancellation }) => (\n <Option\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={has.inlineCancellations}\n outlined={hideRadio}\n value={!showOffersFirst ? price : undefined}\n onPress={() => onCancellation(id)}\n >\n <Text action={!isMobile} medium={highlight} small={isMobile} className={style.optionText}>\n {highlight ? (\n <Text\n action={!isMobile}\n medium={highlight}\n small={isMobile}\n className={styles(highlight && style.tag)}\n >\n {name}\n </Text>\n ) : (\n name\n )}\n\n <Pressable onPress={() => onCancellationInfo({ ...selectedBoard, cancellation })}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </Text>\n </Option>\n )),\n )}\n </View>\n );\n\n return (\n <>\n {!showOffersFirst && renderCancellations()}\n\n {has.rates && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_OFFER)}\n </Text>\n {rates.map(\n ({ id, cancellationId, countdown, description, disabled, included, name, price, restrictions }) => {\n const rate = rates.find((rate) => rate.id === id);\n const board = availableBoards.filter(({ rateId } = {}) => rateId === id)[0];\n const { discount: { breakdown = [], percentage } = {} } = board || {};\n const isClub = isClubRate({ board, rate });\n const isPromocode =\n promocode && breakdown.find(({ type }) => [DISCOUNT_TYPE.DEAL, DISCOUNT_TYPE.PROMOTION].includes(type));\n const discountPercentage = ((isClub || isPromocode) && percentage) || undefined;\n\n return (\n <Option\n key={id}\n caption={\n <RateDetails\n {...{\n countdown,\n discountPercentage,\n included: showRateIncluded ? included : undefined,\n isClub,\n restrictions,\n selectedBoard:\n selectedBoard.rateId === id\n ? selectedBoard\n : availableBoards.filter(({ rateId } = {}) => rateId === id)[0],\n onOfferInfo: () => onOfferInfo(rate),\n }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price}\n onPress={rates.length > 0 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 0 && (\n <Text medium={hideRadio} action={!isMobile} small={isMobile} className={style.optionText}>\n <View row className={style.tags}>\n {isClub && (\n <Text action={!isMobile} medium small={isMobile} className={[style.tag, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n {isPromocode && (\n <Text action={!isMobile} medium small={isMobile} className={[style.tag, style.highlight]}>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n {discountPercentage && (\n <Text action={!isMobile} medium small={isMobile} className={style.tag}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n {name}\n\n {(description || included.length > 0) && (\n <Pressable onPress={() => onOfferInfo(rate)}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n )}\n </Text>\n )}\n </Option>\n );\n },\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {has.boards && (\n <View className={styles(style.offset, style.gap)}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n {React.createElement(\n has.inlineBoards ? View : React.Fragment,\n has.inlineBoards ? { row: true, className: style.inlineOptions } : undefined,\n boards.map((board = {}) => {\n const { disabled, id, increment, name, variants = [] } = board;\n\n return (\n <Option\n key={id}\n checked={id === boardId}\n disabled={disabled}\n inline={has.inlineBoards}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment : undefined}\n onPress={() => onBoard(board)}\n >\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </Option>\n );\n }),\n )}\n </View>\n )}\n\n <View />\n </>\n );\n};\n\nRates.propTypes = {\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 showOffersFirst: PropTypes.bool,\n showRateIncluded: PropTypes.bool,\n }),\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onCancellationInfo: PropTypes.func,\n onChange: PropTypes.func,\n onOfferInfo: PropTypes.func,\n onRate: PropTypes.func,\n};\n\nRates.displayName = 'Mirai:Core:Rates:Item:Rates';\n\nexport { Rates };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Item.Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_helpers2","_Rates","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","availableRates","boards","cancellations","features","columnMode","hideRadio","highlightStandaloneOption","rowMode","showOffersFirst","showRateIncluded","rates","selectedBoard","valueFactor","onBoard","onCancellation","onCancellationInfo","onRate","onOfferInfo","isMobile","useDevice","translate","useLocale","value","finder","promocode","useStore","cancellationId","rateId","id","boardId","length","filter","name","arguments","undefined","inlineBoards","inlineCancellations","rate","isClubRate","board","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","_ref2","map","_ref3","highlight","caption","price","cancellation","Option","key","checked","inline","outlined","onPress","medium","small","optionText","styles","tag","Pressable","Icon","paragraph","ICON","INFO","LABEL_OFFER","_ref4","countdown","description","disabled","included","restrictions","find","discount","breakdown","percentage","isClub","isPromocode","_ref5","type","DISCOUNT_TYPE","DEAL","PROMOTION","includes","discountPercentage","RateDetails","tags","DISCOUNT","toUpperCase","LABEL_DISCOUNT","concat","LABEL_ACCOMMODATION_PLAN","increment","variants","title","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","bool","hideStandaloneBoard","number","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Option, RateDetails, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\nimport { isClubRate } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Rates = ({\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode,\n hideRadio = false,\n highlightStandaloneOption = false,\n rowMode,\n showOffersFirst = false,\n showRateIncluded = false,\n } = {},\n rates = [],\n selectedBoard = {},\n valueFactor = 1,\n onBoard,\n onCancellation,\n onCancellationInfo,\n onRate,\n onOfferInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { value: { finder: { promocode } = {} } = {} } = useStore();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1 || highlightStandaloneOption,\n boards:\n (boards.length > 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length !==\n availableBoards.length) ||\n highlightStandaloneOption,\n inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),\n inlineCancellations:\n hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),\n rates:\n cancellations.length !== availableRates.length ||\n highlightStandaloneOption ||\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length > 0,\n };\n\n const renderCancellations = () =>\n has.cancellations && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_CANCELLATION_POLICY)}\n </Text>\n\n {React.createElement(\n has.inlineCancellations ? View : React.Fragment,\n has.inlineCancellations ? { row: true, className: style.inlineOptions } : undefined,\n cancellations\n .filter(({ id }) => !showOffersFirst || (showOffersFirst && id === cancellationId))\n .map(({ highlight, id, name, caption, price, ...cancellation }) => (\n <Option\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={has.inlineCancellations}\n outlined={hideRadio}\n value={!showOffersFirst ? price / valueFactor : undefined}\n onPress={() => onCancellation(id)}\n >\n <Text action={!isMobile} medium={highlight} small={isMobile} className={style.optionText}>\n {highlight ? (\n <Text\n action={!isMobile}\n medium={highlight}\n small={isMobile}\n className={styles(highlight && style.tag)}\n >\n {name}\n </Text>\n ) : (\n name\n )}\n\n <Pressable onPress={() => onCancellationInfo({ ...selectedBoard, cancellation })}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </Text>\n </Option>\n )),\n )}\n </View>\n );\n\n return (\n <>\n {!showOffersFirst && renderCancellations()}\n\n {has.rates && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_OFFER)}\n </Text>\n {rates.map(\n ({ id, cancellationId, countdown, description, disabled, included, name, price, restrictions }) => {\n const rate = rates.find((rate) => rate.id === id);\n const board = availableBoards.filter(({ rateId } = {}) => rateId === id)[0];\n const { discount: { breakdown = [], percentage } = {} } = board || {};\n const isClub = isClubRate({ board, rate });\n const isPromocode =\n promocode && breakdown.find(({ type }) => [DISCOUNT_TYPE.DEAL, DISCOUNT_TYPE.PROMOTION].includes(type));\n const discountPercentage = ((isClub || isPromocode) && percentage) || undefined;\n\n return (\n <Option\n key={id}\n caption={\n <RateDetails\n {...{\n countdown,\n discountPercentage,\n included: showRateIncluded ? included : undefined,\n isClub,\n restrictions,\n selectedBoard:\n selectedBoard.rateId === id\n ? selectedBoard\n : availableBoards.filter(({ rateId } = {}) => rateId === id)[0],\n onOfferInfo: () => onOfferInfo(rate),\n }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price / valueFactor}\n onPress={rates.length > 0 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 0 && (\n <Text medium={hideRadio} action={!isMobile} small={isMobile} className={style.optionText}>\n <View row className={style.tags}>\n {isPromocode && (\n <Text action={!isMobile} medium small={isMobile} className={[style.tag, style.highlight]}>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n {discountPercentage && (\n <Text action={!isMobile} medium small={isMobile} className={style.tag}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n {name}\n\n {(description || included.length > 0) && (\n <Pressable onPress={() => onOfferInfo(rate)}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n )}\n </Text>\n )}\n </Option>\n );\n },\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {has.boards && (\n <View className={styles(style.offset, style.gap)}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n {React.createElement(\n has.inlineBoards ? View : React.Fragment,\n has.inlineBoards ? { row: true, className: style.inlineOptions } : undefined,\n boards.map((board = {}) => {\n const { disabled, id, increment, name, variants = [] } = board;\n\n return (\n <Option\n key={id}\n checked={id === boardId}\n disabled={disabled}\n inline={has.inlineBoards}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment / valueFactor : undefined}\n onPress={() => onBoard(board)}\n >\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </Option>\n );\n }),\n )}\n </View>\n )}\n\n <View />\n </>\n );\n};\n\nRates.propTypes = {\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 showOffersFirst: PropTypes.bool,\n showRateIncluded: PropTypes.bool,\n }),\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n valueFactor: PropTypes.number,\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onCancellationInfo: PropTypes.func,\n onChange: PropTypes.func,\n onOfferInfo: PropTypes.func,\n onRate: PropTypes.func,\n};\n\nRates.displayName = 'Mirai:Core:Rates:Item:Rates';\n\nexport { Rates };\n"],"mappings":"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"}
|