@mirai/core 0.3.225 → 0.3.231
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/components/Checkout/Checkout.module.css +1 -1
- package/build/components/Checkout/partials/Checkout.Details.js +2 -1
- package/build/components/Checkout/partials/Checkout.Details.js.map +1 -1
- package/build/components/Checkout/partials/Checkout.Summary.js +5 -1
- package/build/components/Checkout/partials/Checkout.Summary.js.map +1 -1
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Details.test.js.snap +5 -0
- package/build/components/Header/Header.js +5 -6
- package/build/components/Header/Header.js.map +1 -1
- package/build/components/Header/Header.module.css +4 -0
- package/build/components/Rates/Rates.Header.js +55 -17
- package/build/components/Rates/Rates.Header.js.map +1 -1
- package/build/components/Rates/Rates.RoomSelector.js +3 -8
- package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
- package/build/components/Rates/Rates.js +21 -4
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +12 -0
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/Rates.module.css +30 -18
- package/build/services/Rates/rates.js +11 -5
- package/build/services/Rates/rates.js.map +1 -1
- package/package.json +1 -1
|
@@ -53,7 +53,7 @@ body {
|
|
|
53
53
|
/* == PARTIALS ============================================================== */
|
|
54
54
|
/* -- <Items> --------------------------------------------------------------- */
|
|
55
55
|
.details {
|
|
56
|
-
height: calc(var(--mirai-ui-space-XXL) *
|
|
56
|
+
height: calc(var(--mirai-ui-space-XXL) * 5);
|
|
57
57
|
gap: var(--mirai-ui-space-M);
|
|
58
58
|
overflow: hidden;
|
|
59
59
|
position: relative;
|
|
@@ -83,7 +83,8 @@ const Details = _ref => {
|
|
|
83
83
|
headline: isDesktop
|
|
84
84
|
}, translate(_Checkout3.L10N.LABEL_BOOKING_DETAILS)), variant === 'A' && /*#__PURE__*/_react.default.createElement(_Checkout.Summary, {
|
|
85
85
|
dataSource: dataSource,
|
|
86
|
-
expanded: false
|
|
86
|
+
expanded: false,
|
|
87
|
+
variant: variant
|
|
87
88
|
}), details.map(function () {
|
|
88
89
|
var _variants$find;
|
|
89
90
|
let {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkout.Details.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_shared__","_helpers","_Checkout2","_Checkout3","style","_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","hasTracking","Details","_ref","dataSource","variant","others","isDesktop","isMobile","useDevice","translate","useLocale","track","useMetrics","value","config","accomodation","occupation","variants","id","locale","urlParams","idHotel","roomNumberBySelectedRoom","useStore","expanded","setExpanded","useState","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","handlePress","concat","TRACKING","currency","details","extras","roomNumber","getRoomNumber","propsTable","createElement","View","className","styles","box","Text","bold","headline","L10N","LABEL_BOOKING_DETAILS","Summary","map","_variants$find","amount","image","items","observations","adults","babies","children","rate","type","undefined","wide","row","item","backgroundImage","inline","small","upperCase","field","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","action","replace","trim","getRoomOccupationLabel","find","_ref2","Number","BookingTable","tracking","label","LABEL_EXTRAS","LABEL_OBSERVATIONS","index","LABEL_BOOKING_EXTRAS","ButtonMore","onPress","buttonMore","exports","displayName","propTypes","PropTypes","shape","string"],"sources":["../../../../src/components/Checkout/partials/Checkout.Details.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Summary } from './Checkout.Summary';\nimport { BookingTable, ButtonMore } from '../../__shared__';\nimport { getRoomOccupationLabel } from '../../helpers';\nimport { FEATURE_CHECKOUT_TRACKING, TRACKING } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getRoomNumber } from '../helpers';\n\nlet hasTracking = false;\n\nconst Details = ({ dataSource = {}, variant, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { translate } = useLocale();\n const { track } = useMetrics();\n const {\n value: {\n config: { accomodation: { occupation = [], variants = [] } = {} } = {},\n id,\n locale,\n urlParams: { idHotel, roomNumberBySelectedRoom } = {},\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = () => {\n hasTracking && track(`${TRACKING}:ACTION:DETAILS_EXPAND`, { locale, variant });\n setExpanded(true);\n };\n\n const { currency, details = [], extras = [] } = dataSource;\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const propsTable = { currency, expanded: true };\n\n return (\n <View {...others} className={styles(style.box, style.details, expanded && style.expanded, others.className)}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_DETAILS)}\n </Text>\n\n {variant === 'A' && <Summary dataSource={dataSource} expanded={false} />}\n\n {details.map(\n (\n {\n amount,\n extras = [],\n image,\n items = [],\n observations = [],\n occupation: { adults, babies, children } = {},\n rate,\n type,\n } = {},\n key,\n ) => (\n <View key={key} wide>\n <View row className={styles(style.box, style.item)}>\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n <View>\n <View row className={style.inline}>\n <Text bold small upperCase className={style.field}>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n <Text action={isMobile} bold>\n {rate.replace(`${type}:`, '').trim()}\n </Text>\n <Text small={isMobile} action={!isMobile}>\n {getRoomOccupationLabel({\n adults,\n babies,\n children,\n dataSource: variants.find(({ id }) => id === Number(idHotel))?.occupation || occupation,\n translate,\n })}\n </Text>\n </View>\n </View>\n\n <BookingTable {...propsTable} dataSource={items} tracking={TRACKING} />\n\n <BookingTable\n {...propsTable}\n dataSource={extras}\n label={translate(L10N.LABEL_EXTRAS)}\n tracking={TRACKING}\n />\n\n {observations.length > 0 && (\n <View>\n <Text bold small>\n {translate(L10N.LABEL_OBSERVATIONS)}\n </Text>\n {observations.map((item, index) => (\n <Text key={index} small>\n {item}\n </Text>\n ))}\n </View>\n )}\n </View>\n ),\n )}\n\n <BookingTable\n {...propsTable}\n dataSource={extras}\n label={translate(L10N.LABEL_BOOKING_EXTRAS)}\n tracking={TRACKING}\n />\n\n {!expanded && <ButtonMore onPress={handlePress} className={style.buttonMore} />}\n </View>\n );\n};\n\nDetails.displayName = 'Mirai:Core:Checkout:Details';\n\nDetails.propTypes = {\n dataSource: PropTypes.shape({}),\n variant: PropTypes.string,\n};\n\nexport { Details };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Checkout.Details.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_shared__","_helpers","_Checkout2","_Checkout3","style","_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","hasTracking","Details","_ref","dataSource","variant","others","isDesktop","isMobile","useDevice","translate","useLocale","track","useMetrics","value","config","accomodation","occupation","variants","id","locale","urlParams","idHotel","roomNumberBySelectedRoom","useStore","expanded","setExpanded","useState","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","handlePress","concat","TRACKING","currency","details","extras","roomNumber","getRoomNumber","propsTable","createElement","View","className","styles","box","Text","bold","headline","L10N","LABEL_BOOKING_DETAILS","Summary","map","_variants$find","amount","image","items","observations","adults","babies","children","rate","type","undefined","wide","row","item","backgroundImage","inline","small","upperCase","field","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","action","replace","trim","getRoomOccupationLabel","find","_ref2","Number","BookingTable","tracking","label","LABEL_EXTRAS","LABEL_OBSERVATIONS","index","LABEL_BOOKING_EXTRAS","ButtonMore","onPress","buttonMore","exports","displayName","propTypes","PropTypes","shape","string"],"sources":["../../../../src/components/Checkout/partials/Checkout.Details.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Summary } from './Checkout.Summary';\nimport { BookingTable, ButtonMore } from '../../__shared__';\nimport { getRoomOccupationLabel } from '../../helpers';\nimport { FEATURE_CHECKOUT_TRACKING, TRACKING } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getRoomNumber } from '../helpers';\n\nlet hasTracking = false;\n\nconst Details = ({ dataSource = {}, variant, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { translate } = useLocale();\n const { track } = useMetrics();\n const {\n value: {\n config: { accomodation: { occupation = [], variants = [] } = {} } = {},\n id,\n locale,\n urlParams: { idHotel, roomNumberBySelectedRoom } = {},\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = () => {\n hasTracking && track(`${TRACKING}:ACTION:DETAILS_EXPAND`, { locale, variant });\n setExpanded(true);\n };\n\n const { currency, details = [], extras = [] } = dataSource;\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const propsTable = { currency, expanded: true };\n\n return (\n <View {...others} className={styles(style.box, style.details, expanded && style.expanded, others.className)}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_DETAILS)}\n </Text>\n\n {variant === 'A' && <Summary dataSource={dataSource} expanded={false} variant={variant} />}\n\n {details.map(\n (\n {\n amount,\n extras = [],\n image,\n items = [],\n observations = [],\n occupation: { adults, babies, children } = {},\n rate,\n type,\n } = {},\n key,\n ) => (\n <View key={key} wide>\n <View row className={styles(style.box, style.item)}>\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n <View>\n <View row className={style.inline}>\n <Text bold small upperCase className={style.field}>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n <Text action={isMobile} bold>\n {rate.replace(`${type}:`, '').trim()}\n </Text>\n <Text small={isMobile} action={!isMobile}>\n {getRoomOccupationLabel({\n adults,\n babies,\n children,\n dataSource: variants.find(({ id }) => id === Number(idHotel))?.occupation || occupation,\n translate,\n })}\n </Text>\n </View>\n </View>\n\n <BookingTable {...propsTable} dataSource={items} tracking={TRACKING} />\n\n <BookingTable\n {...propsTable}\n dataSource={extras}\n label={translate(L10N.LABEL_EXTRAS)}\n tracking={TRACKING}\n />\n\n {observations.length > 0 && (\n <View>\n <Text bold small>\n {translate(L10N.LABEL_OBSERVATIONS)}\n </Text>\n {observations.map((item, index) => (\n <Text key={index} small>\n {item}\n </Text>\n ))}\n </View>\n )}\n </View>\n ),\n )}\n\n <BookingTable\n {...propsTable}\n dataSource={extras}\n label={translate(L10N.LABEL_BOOKING_EXTRAS)}\n tracking={TRACKING}\n />\n\n {!expanded && <ButtonMore onPress={handlePress} className={style.buttonMore} />}\n </View>\n );\n};\n\nDetails.displayName = 'Mirai:Core:Checkout:Details';\n\nDetails.propTypes = {\n dataSource: PropTypes.shape({}),\n variant: PropTypes.string,\n};\n\nexport { Details };\n"],"mappings":"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"}
|
|
@@ -145,7 +145,11 @@ const Summary = _ref => {
|
|
|
145
145
|
small: isMobile
|
|
146
146
|
}, translate(_Checkout2.L10N.LABEL_CHECKOUT_TIME, {
|
|
147
147
|
value: checkOutTime
|
|
148
|
-
}))))),
|
|
148
|
+
}))))), variant === 'A' && /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
149
|
+
action: true,
|
|
150
|
+
inline: true,
|
|
151
|
+
onPress: handleBack
|
|
152
|
+
}, translate(_Checkout2.L10N.ACTION_CHANGE_SELECTION)), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
149
153
|
small: true,
|
|
150
154
|
bold: true,
|
|
151
155
|
upperCase: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkout.Summary.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_toUrlParams","_Checkout","_Checkout2","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","hasTracking","Summary","_ref","dataSource","expanded","variant","others","isDesktop","isMobile","useDevice","track","useMetrics","dateFormat","translate","useLocale","value","id","locale","urlParams","applyClubDiscount","checkin","clientCodeStrictSearch","device","deviceType","env","home","hsri","idtokenprovider","lang","parties","roomNumberBySelectedRoom","useStore","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","checkIn","checkInTime","checkOut","checkOutTime","currency","details","hotel","address","city","country","name","hotelName","nights","roomNumber","getRoomNumber","handleBack","concat","TRACKING","document","location","href","process","SERVICE_BOOKING","REDIRECT_PATH","toUrlParams","items","filter","type","undefined","createElement","View","className","styles","summary","section","box","Text","bold","headline","L10N","LABEL_BOOKING_SUMMARY","row","wide","group","small","upperCase","field","LABEL_CHECK_IN","action","parseDate","FORMAT_DATE","LABEL_CHECKIN_TIME","divider","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","LABEL_ACCOMODATION","LABEL_YOUR_RESERVATION","LABEL_NIGHT_COUNT","LABEL_ROOM_COUNT","reduce","total","amount","map","index","info","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","Action","inline","onPress","ACTION_CHANGE_SELECTION","PriceBreakdown","exports","displayName","propTypes","PropTypes","shape","bool","string"],"sources":["../../../../src/components/Checkout/partials/Checkout.Summary.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Action, Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { PriceBreakdown } from '../../__shared__';\nimport { toUrlParams } from '../../helpers/toUrlParams';\nimport { FEATURE_CHECKOUT_TRACKING, FORMAT_DATE, REDIRECT_PATH, TRACKING } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getRoomNumber } from '../helpers';\n\nlet hasTracking = false;\n\nconst Summary = ({ dataSource = {}, expanded = true, variant, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { track } = useMetrics();\n const { dateFormat, translate } = useLocale();\n const {\n value: {\n id,\n locale,\n urlParams: {\n applyClubDiscount,\n checkin,\n clientCodeStrictSearch,\n device: deviceType,\n env,\n home,\n hsri,\n idtokenprovider,\n lang,\n parties,\n roomNumberBySelectedRoom,\n } = {},\n },\n } = useStore();\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const {\n checkIn,\n checkInTime = '15:00', // !TODO = '16:00'\n checkOut,\n checkOutTime = '11:00', // !TODO = '11:00'\n currency,\n details = [],\n hotel: { address, city, country, name: hotelName } = {},\n nights,\n } = dataSource;\n\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n\n const handleBack = () => {\n hasTracking && track(`${TRACKING}:ACTION:CHANGE_SELECTION`, { locale, variant });\n\n document.location.href = `${process.env.SERVICE_BOOKING}/${REDIRECT_PATH}${toUrlParams({\n applyClubDiscount,\n checkin,\n clientCodeStrictSearch,\n currency,\n deviceType,\n env,\n home,\n hsri,\n idtokenprovider,\n lang,\n nights,\n parties,\n })}`;\n };\n\n const items = details.filter(({ type } = {}) => !!type) || [];\n\n return (\n <View {...others} className={styles(style.summary, others.className)}>\n <View className={isDesktop ? style.section : style.box}>\n {(isDesktop || (variant === 'B' && !isDesktop)) && (\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_SUMMARY)}\n </Text>\n )}\n\n <View row wide className={style.group}>\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_CHECK_IN)}\n </Text>\n <View>\n <Text action={isMobile} bold>\n {dateFormat(parseDate(checkIn), FORMAT_DATE)}\n </Text>\n {checkInTime && (\n <Text action={isDesktop} small={isMobile}>\n {translate(L10N.LABEL_CHECKIN_TIME, { value: checkInTime })}\n </Text>\n )}\n </View>\n </View>\n\n <View className={style.divider} />\n\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_CHECK_OUT)}\n </Text>\n <View>\n <Text action={isMobile} bold>\n {dateFormat(parseDate(checkOut), FORMAT_DATE)}\n </Text>\n {checkOutTime && (\n <Text action={isDesktop} small={isMobile}>\n {translate(L10N.LABEL_CHECKOUT_TIME, { value: checkOutTime })}\n </Text>\n )}\n </View>\n </View>\n </View>\n\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_ACCOMODATION)}\n </Text>\n <Text action={isMobile} bold>\n {hotelName}\n </Text>\n <Text action={!isMobile} small={isMobile}>\n {`${address}, ${city}, ${country}`}\n </Text>\n </View>\n\n {expanded && (\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_YOUR_RESERVATION)}\n </Text>\n <Text action={isMobile} bold>\n {`${translate(L10N.LABEL_NIGHT_COUNT, { value: nights })}, ${translate(L10N.LABEL_ROOM_COUNT, {\n value: items.reduce((total, { amount = 1 } = {}) => total + amount, 0),\n })}`}\n </Text>\n {items.map(({ amount, type } = {}, index) => (\n <View key={index} row className={style.info}>\n <Text action={!isMobile} small={isMobile}>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n ))}\n <Action action inline onPress={handleBack} className={style.action}>\n {translate(L10N.ACTION_CHANGE_SELECTION)}\n </Action>\n </View>\n )}\n </View>\n\n <PriceBreakdown dataSource={dataSource} className={style.section} />\n </View>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Checkout:Summary';\n\nSummary.propTypes = {\n dataSource: PropTypes.shape({}),\n expanded: PropTypes.bool,\n variant: PropTypes.string,\n};\n\nexport { Summary };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Checkout.Summary.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_toUrlParams","_Checkout","_Checkout2","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","hasTracking","Summary","_ref","dataSource","expanded","variant","others","isDesktop","isMobile","useDevice","track","useMetrics","dateFormat","translate","useLocale","value","id","locale","urlParams","applyClubDiscount","checkin","clientCodeStrictSearch","device","deviceType","env","home","hsri","idtokenprovider","lang","parties","roomNumberBySelectedRoom","useStore","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","checkIn","checkInTime","checkOut","checkOutTime","currency","details","hotel","address","city","country","name","hotelName","nights","roomNumber","getRoomNumber","handleBack","concat","TRACKING","document","location","href","process","SERVICE_BOOKING","REDIRECT_PATH","toUrlParams","items","filter","type","undefined","createElement","View","className","styles","summary","section","box","Text","bold","headline","L10N","LABEL_BOOKING_SUMMARY","row","wide","group","small","upperCase","field","LABEL_CHECK_IN","action","parseDate","FORMAT_DATE","LABEL_CHECKIN_TIME","divider","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","Action","inline","onPress","ACTION_CHANGE_SELECTION","LABEL_ACCOMODATION","LABEL_YOUR_RESERVATION","LABEL_NIGHT_COUNT","LABEL_ROOM_COUNT","reduce","total","amount","map","index","info","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","PriceBreakdown","exports","displayName","propTypes","PropTypes","shape","bool","string"],"sources":["../../../../src/components/Checkout/partials/Checkout.Summary.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Action, Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { PriceBreakdown } from '../../__shared__';\nimport { toUrlParams } from '../../helpers/toUrlParams';\nimport { FEATURE_CHECKOUT_TRACKING, FORMAT_DATE, REDIRECT_PATH, TRACKING } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getRoomNumber } from '../helpers';\n\nlet hasTracking = false;\n\nconst Summary = ({ dataSource = {}, expanded = true, variant, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { track } = useMetrics();\n const { dateFormat, translate } = useLocale();\n const {\n value: {\n id,\n locale,\n urlParams: {\n applyClubDiscount,\n checkin,\n clientCodeStrictSearch,\n device: deviceType,\n env,\n home,\n hsri,\n idtokenprovider,\n lang,\n parties,\n roomNumberBySelectedRoom,\n } = {},\n },\n } = useStore();\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const {\n checkIn,\n checkInTime = '15:00', // !TODO = '16:00'\n checkOut,\n checkOutTime = '11:00', // !TODO = '11:00'\n currency,\n details = [],\n hotel: { address, city, country, name: hotelName } = {},\n nights,\n } = dataSource;\n\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n\n const handleBack = () => {\n hasTracking && track(`${TRACKING}:ACTION:CHANGE_SELECTION`, { locale, variant });\n\n document.location.href = `${process.env.SERVICE_BOOKING}/${REDIRECT_PATH}${toUrlParams({\n applyClubDiscount,\n checkin,\n clientCodeStrictSearch,\n currency,\n deviceType,\n env,\n home,\n hsri,\n idtokenprovider,\n lang,\n nights,\n parties,\n })}`;\n };\n\n const items = details.filter(({ type } = {}) => !!type) || [];\n\n return (\n <View {...others} className={styles(style.summary, others.className)}>\n <View className={isDesktop ? style.section : style.box}>\n {(isDesktop || (variant === 'B' && !isDesktop)) && (\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_SUMMARY)}\n </Text>\n )}\n\n <View row wide className={style.group}>\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_CHECK_IN)}\n </Text>\n <View>\n <Text action={isMobile} bold>\n {dateFormat(parseDate(checkIn), FORMAT_DATE)}\n </Text>\n {checkInTime && (\n <Text action={isDesktop} small={isMobile}>\n {translate(L10N.LABEL_CHECKIN_TIME, { value: checkInTime })}\n </Text>\n )}\n </View>\n </View>\n\n <View className={style.divider} />\n\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_CHECK_OUT)}\n </Text>\n <View>\n <Text action={isMobile} bold>\n {dateFormat(parseDate(checkOut), FORMAT_DATE)}\n </Text>\n {checkOutTime && (\n <Text action={isDesktop} small={isMobile}>\n {translate(L10N.LABEL_CHECKOUT_TIME, { value: checkOutTime })}\n </Text>\n )}\n </View>\n </View>\n </View>\n\n {variant === 'A' && (\n <Action action inline onPress={handleBack}>\n {translate(L10N.ACTION_CHANGE_SELECTION)}\n </Action>\n )}\n\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_ACCOMODATION)}\n </Text>\n <Text action={isMobile} bold>\n {hotelName}\n </Text>\n <Text action={!isMobile} small={isMobile}>\n {`${address}, ${city}, ${country}`}\n </Text>\n </View>\n\n {expanded && (\n <View>\n <Text small bold upperCase className={style.field}>\n {translate(L10N.LABEL_YOUR_RESERVATION)}\n </Text>\n <Text action={isMobile} bold>\n {`${translate(L10N.LABEL_NIGHT_COUNT, { value: nights })}, ${translate(L10N.LABEL_ROOM_COUNT, {\n value: items.reduce((total, { amount = 1 } = {}) => total + amount, 0),\n })}`}\n </Text>\n {items.map(({ amount, type } = {}, index) => (\n <View key={index} row className={style.info}>\n <Text action={!isMobile} small={isMobile}>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n ))}\n <Action action inline onPress={handleBack} className={style.action}>\n {translate(L10N.ACTION_CHANGE_SELECTION)}\n </Action>\n </View>\n )}\n </View>\n\n <PriceBreakdown dataSource={dataSource} className={style.section} />\n </View>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Checkout:Summary';\n\nSummary.propTypes = {\n dataSource: PropTypes.shape({}),\n expanded: PropTypes.bool,\n variant: PropTypes.string,\n};\n\nexport { Summary };\n"],"mappings":"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"}
|
|
@@ -105,19 +105,18 @@ const Header = _ref => {
|
|
|
105
105
|
src: logo,
|
|
106
106
|
className: style.image
|
|
107
107
|
}) : /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, nameProps, {
|
|
108
|
-
bold: true
|
|
109
|
-
className: style.name
|
|
108
|
+
bold: true
|
|
110
109
|
}), name)), isDesktop && /*#__PURE__*/_react.default.createElement(_components.BookingProcess, null)), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
111
110
|
row: true,
|
|
112
111
|
className: style.options
|
|
113
|
-
},
|
|
112
|
+
}, showLocale && /*#__PURE__*/_react.default.createElement(_shared__.SelectEnvironment, {
|
|
114
113
|
compacted: isMobile,
|
|
115
114
|
headerMode: true,
|
|
116
|
-
name: "
|
|
117
|
-
}),
|
|
115
|
+
name: "locale"
|
|
116
|
+
}), showCurrency && /*#__PURE__*/_react.default.createElement(_shared__.SelectEnvironment, {
|
|
118
117
|
compacted: isMobile,
|
|
119
118
|
headerMode: true,
|
|
120
|
-
name: "
|
|
119
|
+
name: "currency"
|
|
121
120
|
}), showLogin && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
122
121
|
onPress: handleLogin,
|
|
123
122
|
className: style.login
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Header","_Header2","style","_shared__","_helpers","_SessionLogin","_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","hasTracking","Header","_ref","currency","showCurrency","locale","showLocale","login","showLogin","ghost","name","showName","others","isMobile","isDesktop","useDevice","track","useMetrics","translate","useLocale","value","finder","place","id","placeId","isHotel","title","placeName","hotel","features","url","useStore","modal","setModal","useState","useEffect","ServiceFeatures","FEATURE_HEADER_TRACKING","handleLogin","concat","TRACKING","handleUrl","window","location","logo","largeName","nameProps","action","small","createElement","Fragment","View","wide","testId","className","styles","header","row","content","main","Pressable","onPress","undefined","dangerouslySetInnerHTML","__html","outerHTML","tag","src","image","Text","bold","BookingProcess","options","SelectEnvironment","compacted","headerMode","Icon","role","ICON","ACCOUNT","L10N","ACTION_LOGIN","Modal","visible","onClose","extra","exports","displayName","propTypes","PropTypes","bool","any","skeleton"],"sources":["../../../src/components/Header/Header.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Icon, Pressable, Text, useDevice, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BookingProcess } from './components';\nimport { FEATURE_HEADER_TRACKING, TRACKING } from './Header.constants';\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { SelectEnvironment } from '../__shared__';\nimport { ICON } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet hasTracking = false;\n\nconst Header = ({\n currency: showCurrency = false,\n locale: showLocale = false,\n login: showLogin = false,\n ghost,\n name: showName,\n ...others\n}) => {\n const { isMobile, isDesktop } = useDevice();\n const { track } = useMetrics();\n const { translate } = useLocale();\n const {\n value: {\n finder: { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = {},\n hotel: { features = {}, url } = {},\n id,\n } = {},\n locale,\n } = useStore();\n\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_HEADER_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleLogin = () => {\n hasTracking && track(`${TRACKING}:ACTION:SHOW_LOGIN`, { locale });\n setModal(true);\n };\n\n const handleUrl = () => {\n window.location = url;\n };\n\n const { logo, name } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[id]) || {};\n const largeName = name?.length > 32;\n const nameProps = { action: (largeName && !isMobile) || (isMobile && !largeName), small: largeName && isMobile };\n\n return (\n <>\n <View wide testId={others.testId} className={styles(style.header, others.className)}>\n <View row wide className={style.content}>\n <View row className={style.main}>\n {(logo || ghost || (!logo && name)) && (\n <Pressable onPress={url ? handleUrl : undefined}>\n {ghost ? (\n <View dangerouslySetInnerHTML={{ __html: ghost.outerHTML }} />\n ) : logo ? (\n <View tag=\"img\" src={logo} className={style.image} />\n ) : (\n <Text {...nameProps} bold className={style.name}>\n {name}\n </Text>\n )}\n </Pressable>\n )}\n\n {isDesktop && <BookingProcess />}\n </View>\n\n <View row className={style.options}>\n {showCurrency && <SelectEnvironment compacted={isMobile} headerMode name=\"currency\" />}\n {showLocale && <SelectEnvironment compacted={isMobile} headerMode name=\"locale\" />}\n {showLogin && (\n <>\n <Pressable onPress={handleLogin} className={style.login}>\n <View row>\n <Icon role=\"content\" value={ICON.ACCOUNT} />\n <Text action={!isMobile} bold small={isMobile}>\n {translate(L10N.ACTION_LOGIN)}\n </Text>\n </View>\n </Pressable>\n <ModalLogin visible={modal} onClose={() => setModal(false)} />\n </>\n )}\n </View>\n </View>\n </View>\n\n {showName && logo && name && (\n <View className={styles(style.header, style.extra, others.className)}>\n <View row wide className={style.content}>\n <Text {...nameProps}>{name}</Text>\n </View>\n </View>\n )}\n\n {!isDesktop && <BookingProcess />}\n </>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Header';\n\nHeader.propTypes = {\n currency: PropTypes.bool,\n ghost: PropTypes.any,\n locale: PropTypes.bool,\n login: PropTypes.bool,\n name: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Header };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Header.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Header","_Header2","style","_shared__","_helpers","_SessionLogin","_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","hasTracking","Header","_ref","currency","showCurrency","locale","showLocale","login","showLogin","ghost","name","showName","others","isMobile","isDesktop","useDevice","track","useMetrics","translate","useLocale","value","finder","place","id","placeId","isHotel","title","placeName","hotel","features","url","useStore","modal","setModal","useState","useEffect","ServiceFeatures","FEATURE_HEADER_TRACKING","handleLogin","concat","TRACKING","handleUrl","window","location","logo","largeName","nameProps","action","small","createElement","Fragment","View","wide","testId","className","styles","header","row","content","main","Pressable","onPress","undefined","dangerouslySetInnerHTML","__html","outerHTML","tag","src","image","Text","bold","BookingProcess","options","SelectEnvironment","compacted","headerMode","Icon","role","ICON","ACCOUNT","L10N","ACTION_LOGIN","Modal","visible","onClose","extra","exports","displayName","propTypes","PropTypes","bool","any","skeleton"],"sources":["../../../src/components/Header/Header.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Icon, Pressable, Text, useDevice, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BookingProcess } from './components';\nimport { FEATURE_HEADER_TRACKING, TRACKING } from './Header.constants';\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { SelectEnvironment } from '../__shared__';\nimport { ICON } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet hasTracking = false;\n\nconst Header = ({\n currency: showCurrency = false,\n locale: showLocale = false,\n login: showLogin = false,\n ghost,\n name: showName,\n ...others\n}) => {\n const { isMobile, isDesktop } = useDevice();\n const { track } = useMetrics();\n const { translate } = useLocale();\n const {\n value: {\n finder: { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = {},\n hotel: { features = {}, url } = {},\n id,\n } = {},\n locale,\n } = useStore();\n\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n hasTracking = ServiceFeatures.get(FEATURE_HEADER_TRACKING, id);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleLogin = () => {\n hasTracking && track(`${TRACKING}:ACTION:SHOW_LOGIN`, { locale });\n setModal(true);\n };\n\n const handleUrl = () => {\n window.location = url;\n };\n\n const { logo, name } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[id]) || {};\n const largeName = name?.length > 32;\n const nameProps = { action: (largeName && !isMobile) || (isMobile && !largeName), small: largeName && isMobile };\n\n return (\n <>\n <View wide testId={others.testId} className={styles(style.header, others.className)}>\n <View row wide className={style.content}>\n <View row className={style.main}>\n {(logo || ghost || (!logo && name)) && (\n <Pressable onPress={url ? handleUrl : undefined}>\n {ghost ? (\n <View dangerouslySetInnerHTML={{ __html: ghost.outerHTML }} />\n ) : logo ? (\n <View tag=\"img\" src={logo} className={style.image} />\n ) : (\n <Text {...nameProps} bold>\n {name}\n </Text>\n )}\n </Pressable>\n )}\n\n {isDesktop && <BookingProcess />}\n </View>\n\n <View row className={style.options}>\n {showLocale && <SelectEnvironment compacted={isMobile} headerMode name=\"locale\" />}\n {showCurrency && <SelectEnvironment compacted={isMobile} headerMode name=\"currency\" />}\n {showLogin && (\n <>\n <Pressable onPress={handleLogin} className={style.login}>\n <View row>\n <Icon role=\"content\" value={ICON.ACCOUNT} />\n <Text action={!isMobile} bold small={isMobile}>\n {translate(L10N.ACTION_LOGIN)}\n </Text>\n </View>\n </Pressable>\n <ModalLogin visible={modal} onClose={() => setModal(false)} />\n </>\n )}\n </View>\n </View>\n </View>\n\n {showName && logo && name && (\n <View className={styles(style.header, style.extra, others.className)}>\n <View row wide className={style.content}>\n <Text {...nameProps}>{name}</Text>\n </View>\n </View>\n )}\n\n {!isDesktop && <BookingProcess />}\n </>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Header';\n\nHeader.propTypes = {\n currency: PropTypes.bool,\n ghost: PropTypes.any,\n locale: PropTypes.bool,\n login: PropTypes.bool,\n name: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Header };\n"],"mappings":"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"}
|
|
@@ -30,8 +30,11 @@ const Header = _ref => {
|
|
|
30
30
|
showClubDiscount = false
|
|
31
31
|
} = {},
|
|
32
32
|
multiRoom,
|
|
33
|
+
showStrictSearch,
|
|
34
|
+
strictSearch = false,
|
|
33
35
|
onClubDiscount = () => {},
|
|
34
36
|
onSelect = () => {},
|
|
37
|
+
onStrictSearch = () => {},
|
|
35
38
|
...others
|
|
36
39
|
} = _ref;
|
|
37
40
|
const {
|
|
@@ -46,14 +49,49 @@ const Header = _ref => {
|
|
|
46
49
|
discount,
|
|
47
50
|
name
|
|
48
51
|
} = {},
|
|
49
|
-
session
|
|
52
|
+
session,
|
|
53
|
+
urlParams: {
|
|
54
|
+
clientCode,
|
|
55
|
+
idoffers,
|
|
56
|
+
roomTypeId
|
|
57
|
+
}
|
|
50
58
|
} = {}
|
|
51
59
|
} = (0, _dataSources.useStore)();
|
|
52
60
|
const {
|
|
53
61
|
contentBackground
|
|
54
62
|
} = _ui.Theme.get();
|
|
55
|
-
const hasItems = items.length > 0;
|
|
56
63
|
const expandClubDiscount = clubConditions !== undefined || showClubDiscount || clubDiscount === false || false;
|
|
64
|
+
const hasItems = items.length > 0;
|
|
65
|
+
const filters = [clientCode, idoffers, roomTypeId];
|
|
66
|
+
|
|
67
|
+
// eslint-disable-next-line react/prop-types
|
|
68
|
+
const InputFilter = _ref2 => {
|
|
69
|
+
let {
|
|
70
|
+
checked,
|
|
71
|
+
children,
|
|
72
|
+
name,
|
|
73
|
+
text,
|
|
74
|
+
onChange
|
|
75
|
+
} = _ref2;
|
|
76
|
+
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
77
|
+
row: true,
|
|
78
|
+
className: [style.tag, style.filter]
|
|
79
|
+
}, !isMobile && /*#__PURE__*/_react.default.createElement(_ui.InputOption, {
|
|
80
|
+
checked,
|
|
81
|
+
name,
|
|
82
|
+
onChange
|
|
83
|
+
}), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
84
|
+
row: true,
|
|
85
|
+
className: style.text
|
|
86
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
87
|
+
action: true
|
|
88
|
+
}, text), children), isMobile && /*#__PURE__*/_react.default.createElement(_ui.Switch, {
|
|
89
|
+
checked,
|
|
90
|
+
name,
|
|
91
|
+
onChange,
|
|
92
|
+
className: style.switch
|
|
93
|
+
}));
|
|
94
|
+
};
|
|
57
95
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
58
96
|
row: true,
|
|
59
97
|
className: (0, _ui.styles)(style.header, style.blur, multiRoom && !isMobile && style.sticky, others.className),
|
|
@@ -66,15 +104,17 @@ const Header = _ref => {
|
|
|
66
104
|
onSelect
|
|
67
105
|
}, others, {
|
|
68
106
|
className: [style.tag, style.highlight]
|
|
69
|
-
})),
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
107
|
+
})), showStrictSearch && /*#__PURE__*/_react.default.createElement(InputFilter, {
|
|
108
|
+
checked: strictSearch,
|
|
109
|
+
name: "strictSearch",
|
|
110
|
+
text: translate(filters.filter(filter => !!filter).length > 1 ? _Rates.L10N.LABEL_SHOW_FILTERED_RESULTS : clientCode ? _Rates.L10N.LABEL_SHOW_ONLY_PROMOS : idoffers ? _Rates.L10N.LABEL_SHOW_ONLY_DEALS : _Rates.L10N.LABEL_SHOW_ONLY_ROOM),
|
|
111
|
+
onChange: onStrictSearch
|
|
112
|
+
}), discount !== undefined && !session && hasItems && /*#__PURE__*/_react.default.createElement(InputFilter, {
|
|
113
|
+
checked: clubDiscount,
|
|
114
|
+
name: "clubDiscount",
|
|
115
|
+
text: translate(_Rates.L10N.LABEL_APPLY_DISCOUNTS),
|
|
116
|
+
onChange: onClubDiscount
|
|
117
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
|
|
78
118
|
pressable: true,
|
|
79
119
|
Template: () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
80
120
|
bold: true,
|
|
@@ -97,12 +137,7 @@ const Header = _ref => {
|
|
|
97
137
|
className: style.tooltip
|
|
98
138
|
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
99
139
|
value: _helpers.ICON.INFO
|
|
100
|
-
})))
|
|
101
|
-
checked: clubDiscount,
|
|
102
|
-
name: "clubDiscount",
|
|
103
|
-
onChange: onClubDiscount,
|
|
104
|
-
className: style.switch
|
|
105
|
-
})));
|
|
140
|
+
}))));
|
|
106
141
|
};
|
|
107
142
|
exports.Header = Header;
|
|
108
143
|
Header.displayName = 'Mirai:Core:Rates:Header';
|
|
@@ -112,7 +147,10 @@ Header.propTypes = {
|
|
|
112
147
|
dataSource: _propTypes.default.shape({}),
|
|
113
148
|
features: _propTypes.default.shape({}),
|
|
114
149
|
multiRoom: _propTypes.default.bool,
|
|
150
|
+
showStrictSearch: _propTypes.default.bool,
|
|
151
|
+
strictSearch: _propTypes.default.bool,
|
|
115
152
|
onClubDiscount: _propTypes.default.func,
|
|
153
|
+
onStrictSearch: _propTypes.default.func,
|
|
116
154
|
onSelect: _propTypes.default.func
|
|
117
155
|
};
|
|
118
156
|
//# sourceMappingURL=Rates.Header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Rates","style","_interopRequireWildcard","_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","Header","_ref","children","clubDiscount","dataSource","clubConditions","items","features","showClubDiscount","multiRoom","onClubDiscount","onSelect","others","isMobile","useDevice","translate","useLocale","value","club","discount","name","session","useStore","contentBackground","Theme","hasItems","expandClubDiscount","undefined","createElement","View","row","className","styles","header","blur","sticky","backgroundColor","opacity","Hotelverse","tag","highlight","Text","action","bold","L10N","LABEL_APPLY_DISCOUNTS","Tooltip","pressable","Template","Fragment","LABEL_CLUB_MEMBERS_EXCLUSIVE","small","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","visible","tooltip","Icon","ICON","INFO","Switch","checked","onChange","switch","exports","displayName","propTypes","PropTypes","node","bool","shape","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Icon, styles, Switch, Text, Theme, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Hotelverse } from './components';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n children,\n clubDiscount = false,\n dataSource: { clubConditions, items = [], ...dataSource } = {},\n features: { showClubDiscount = false } = {},\n multiRoom,\n onClubDiscount = () => {},\n onSelect = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, session } = {} } = useStore();\n\n const { contentBackground } = Theme.get();\n const hasItems = items.length > 0;\n const expandClubDiscount = clubConditions !== undefined || showClubDiscount || clubDiscount === false || false;\n\n return (\n <View\n row\n className={styles(style.header, style.blur, multiRoom && !isMobile && style.sticky, others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {hasItems && (\n <Hotelverse\n {...{ ...dataSource, items, multiRoom, onSelect, ...others }}\n className={[style.tag, style.highlight]}\n />\n )}\n\n {discount !== undefined && !session && hasItems && (\n <View row className={[style.tag, style.clubDiscount, clubDiscount && style.highlight]}>\n <View row>\n <Text action bold>\n {translate(L10N.LABEL_APPLY_DISCOUNTS)}\n </Text>\n\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold action>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n\n {clubConditions ? (\n <Text small>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n visible={expandClubDiscount}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n </View>\n\n <Switch checked={clubDiscount} name=\"clubDiscount\" onChange={onClubDiscount} className={style.switch} />\n </View>\n )}\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates:Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n clubDiscount: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n features: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n onClubDiscount: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Rates","style","_interopRequireWildcard","_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","Header","_ref","children","clubDiscount","dataSource","clubConditions","items","features","showClubDiscount","multiRoom","showStrictSearch","strictSearch","onClubDiscount","onSelect","onStrictSearch","others","isMobile","useDevice","translate","useLocale","value","club","discount","name","session","urlParams","clientCode","idoffers","roomTypeId","useStore","contentBackground","Theme","expandClubDiscount","undefined","hasItems","filters","InputFilter","_ref2","checked","text","onChange","createElement","View","row","className","tag","filter","InputOption","Text","action","Switch","switch","styles","header","blur","sticky","backgroundColor","opacity","Hotelverse","highlight","L10N","LABEL_SHOW_FILTERED_RESULTS","LABEL_SHOW_ONLY_PROMOS","LABEL_SHOW_ONLY_DEALS","LABEL_SHOW_ONLY_ROOM","LABEL_APPLY_DISCOUNTS","Tooltip","pressable","Template","Fragment","bold","LABEL_CLUB_MEMBERS_EXCLUSIVE","small","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","visible","tooltip","Icon","ICON","INFO","exports","displayName","propTypes","PropTypes","node","bool","shape","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Icon, InputOption, styles, Switch, Text, Theme, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Hotelverse } from './components';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n children,\n clubDiscount = false,\n dataSource: { clubConditions, items = [], ...dataSource } = {},\n features: { showClubDiscount = false } = {},\n multiRoom,\n showStrictSearch,\n strictSearch = false,\n onClubDiscount = () => {},\n onSelect = () => {},\n onStrictSearch = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, session, urlParams: { clientCode, idoffers, roomTypeId } } = {} } =\n useStore();\n\n const { contentBackground } = Theme.get();\n const expandClubDiscount = clubConditions !== undefined || showClubDiscount || clubDiscount === false || false;\n const hasItems = items.length > 0;\n const filters = [clientCode, idoffers, roomTypeId];\n\n // eslint-disable-next-line react/prop-types\n const InputFilter = ({ checked, children, name, text, onChange }) => (\n <View row className={[style.tag, style.filter]}>\n {!isMobile && <InputOption {...{ checked, name, onChange }} />}\n <View row className={style.text}>\n <Text action>{text}</Text>\n {children}\n </View>\n {isMobile && <Switch {...{ checked, name, onChange }} className={style.switch} />}\n </View>\n );\n\n return (\n <View\n row\n className={styles(style.header, style.blur, multiRoom && !isMobile && style.sticky, others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {hasItems && (\n <Hotelverse\n {...{ ...dataSource, items, multiRoom, onSelect, ...others }}\n className={[style.tag, style.highlight]}\n />\n )}\n\n {showStrictSearch && (\n <InputFilter\n checked={strictSearch}\n name=\"strictSearch\"\n text={translate(\n filters.filter((filter) => !!filter).length > 1\n ? L10N.LABEL_SHOW_FILTERED_RESULTS\n : clientCode\n ? L10N.LABEL_SHOW_ONLY_PROMOS\n : idoffers\n ? L10N.LABEL_SHOW_ONLY_DEALS\n : L10N.LABEL_SHOW_ONLY_ROOM,\n )}\n onChange={onStrictSearch}\n />\n )}\n\n {discount !== undefined && !session && hasItems && (\n <InputFilter\n checked={clubDiscount}\n name=\"clubDiscount\"\n text={translate(L10N.LABEL_APPLY_DISCOUNTS)}\n onChange={onClubDiscount}\n >\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold action>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n\n {clubConditions ? (\n <Text small>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n visible={expandClubDiscount}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n </InputFilter>\n )}\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates:Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n clubDiscount: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n features: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n showStrictSearch: PropTypes.bool,\n strictSearch: PropTypes.bool,\n onClubDiscount: PropTypes.func,\n onStrictSearch: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAD,sBAAA,CAAAJ,OAAA;AAEA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAC,uBAAA,CAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAA2C,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAE3C,MAAMK,MAAM,GAAGC,IAAA,IAYT;EAAA,IAZU;IACdC,QAAQ;IACRC,YAAY,GAAG,KAAK;IACpBC,UAAU,EAAE;MAAEC,cAAc;MAAEC,KAAK,GAAG,EAAE;MAAE,GAAGF;IAAW,CAAC,GAAG,CAAC,CAAC;IAC9DG,QAAQ,EAAE;MAAEC,gBAAgB,GAAG;IAAM,CAAC,GAAG,CAAC,CAAC;IAC3CC,SAAS;IACTC,gBAAgB;IAChBC,YAAY,GAAG,KAAK;IACpBC,cAAc,GAAGA,CAAA,KAAM,CAAC,CAAC;IACzBC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IACnBC,cAAc,GAAGA,CAAA,KAAM,CAAC,CAAC;IACzB,GAAGC;EACL,CAAC,GAAAd,IAAA;EACC,MAAM;IAAEe;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IAAEC,KAAK,EAAE;MAAEC,IAAI,EAAE;QAAEC,QAAQ;QAAEC;MAAK,CAAC,GAAG,CAAC,CAAC;MAAEC,OAAO;MAAEC,SAAS,EAAE;QAAEC,UAAU;QAAEC,QAAQ;QAAEC;MAAW;IAAE,CAAC,GAAG,CAAC;EAAE,CAAC,GAC/G,IAAAC,qBAAQ,EAAC,CAAC;EAEZ,MAAM;IAAEC;EAAkB,CAAC,GAAGC,SAAK,CAACtD,GAAG,CAAC,CAAC;EACzC,MAAMuD,kBAAkB,GAAG3B,cAAc,KAAK4B,SAAS,IAAIzB,gBAAgB,IAAIL,YAAY,KAAK,KAAK,IAAI,KAAK;EAC9G,MAAM+B,QAAQ,GAAG5B,KAAK,CAACV,MAAM,GAAG,CAAC;EACjC,MAAMuC,OAAO,GAAG,CAACT,UAAU,EAAEC,QAAQ,EAAEC,UAAU,CAAC;;EAElD;EACA,MAAMQ,WAAW,GAAGC,KAAA;IAAA,IAAC;MAAEC,OAAO;MAAEpC,QAAQ;MAAEqB,IAAI;MAAEgB,IAAI;MAAEC;IAAS,CAAC,GAAAH,KAAA;IAAA,oBAC9D1E,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAkF,IAAI;MAACC,GAAG;MAACC,SAAS,EAAE,CAAC9E,KAAK,CAAC+E,GAAG,EAAE/E,KAAK,CAACgF,MAAM;IAAE,GAC5C,CAAC9B,QAAQ,iBAAIrD,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAuF,WAAW;MAAOT,OAAO;MAAEf,IAAI;MAAEiB;IAAQ,CAAK,CAAC,eAC9D7E,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAkF,IAAI;MAACC,GAAG;MAACC,SAAS,EAAE9E,KAAK,CAACyE;IAAK,gBAC9B5E,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAwF,IAAI;MAACC,MAAM;IAAA,GAAEV,IAAW,CAAC,EACzBrC,QACG,CAAC,EACNc,QAAQ,iBAAIrD,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAA0F,MAAM;MAAOZ,OAAO;MAAEf,IAAI;MAAEiB,QAAQ;MAAII,SAAS,EAAE9E,KAAK,CAACqF;IAAO,CAAE,CAC5E,CAAC;EAAA,CACR;EAED,oBACExF,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAkF,IAAI;IACHC,GAAG;IACHC,SAAS,EAAE,IAAAQ,UAAM,EAACtF,KAAK,CAACuF,MAAM,EAAEvF,KAAK,CAACwF,IAAI,EAAE7C,SAAS,IAAI,CAACO,QAAQ,IAAIlD,KAAK,CAACyF,MAAM,EAAExC,MAAM,CAAC6B,SAAS,CAAE;IACtG9E,KAAK,EAAE;MAAE0F,eAAe,EAAE,IAAAC,gBAAO,EAAC3B,iBAAiB,EAAE,IAAI;IAAE;EAAE,GAE5D5B,QAAQ,EAERgC,QAAQ,iBACPvE,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAAC7E,WAAA,CAAA8F,UAAU,EAAAnE,QAAA,KACAa,UAAU;IAAEE,KAAK;IAAEG,SAAS;IAAEI;EAAQ,GAAKE,MAAM;IAC1D6B,SAAS,EAAE,CAAC9E,KAAK,CAAC+E,GAAG,EAAE/E,KAAK,CAAC6F,SAAS;EAAE,EACzC,CACF,EAEAjD,gBAAgB,iBACf/C,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACL,WAAW;IACVE,OAAO,EAAE3B,YAAa;IACtBY,IAAI,EAAC,cAAc;IACnBgB,IAAI,EAAErB,SAAS,CACbiB,OAAO,CAACW,MAAM,CAAEA,MAAM,IAAK,CAAC,CAACA,MAAM,CAAC,CAAClD,MAAM,GAAG,CAAC,GAC3CgE,WAAI,CAACC,2BAA2B,GAChCnC,UAAU,GACVkC,WAAI,CAACE,sBAAsB,GAC3BnC,QAAQ,GACRiC,WAAI,CAACG,qBAAqB,GAC1BH,WAAI,CAACI,oBACX,CAAE;IACFxB,QAAQ,EAAE1B;EAAe,CAC1B,CACF,EAEAQ,QAAQ,KAAKW,SAAS,IAAI,CAACT,OAAO,IAAIU,QAAQ,iBAC7CvE,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACL,WAAW;IACVE,OAAO,EAAEnC,YAAa;IACtBoB,IAAI,EAAC,cAAc;IACnBgB,IAAI,EAAErB,SAAS,CAAC0C,WAAI,CAACK,qBAAqB,CAAE;IAC5CzB,QAAQ,EAAE5B;EAAe,gBAEzBjD,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAA0G,OAAO;IACNC,SAAS;IACTC,QAAQ,EAAEA,CAAA,kBACRzG,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAAA9E,MAAA,CAAAY,OAAA,CAAA8F,QAAA,qBACE1G,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAwF,IAAI;MAACsB,IAAI;MAACrB,MAAM;IAAA,GACd/B,SAAS,CAAC0C,WAAI,CAACW,4BAA4B,EAAE;MAAElD,IAAI,EAAEE;IAAK,CAAC,CACxD,CAAC,EAENlB,cAAc,gBACb1C,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAwF,IAAI;MAACwB,KAAK;IAAA,GACRtD,SAAS,CAAC0C,WAAI,CAACa,qBAAqB,EAAE;MACrCC,UAAU,eACR/G,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAmH,MAAM;QAACC,IAAI,EAAEvE,cAAe;QAACwE,MAAM;QAACnF,MAAM,EAAC,QAAQ;QAACkD,SAAS,EAAE9E,KAAK,CAACmF;MAAO,GAC1E/B,SAAS,CAAC0C,WAAI,CAACkB,2BAA2B,CACrC;IAEZ,CAAC,CACG,CAAC,gBAEPnH,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAAwF,IAAI;MAACwB,KAAK;IAAA,GAAEtD,SAAS,CAAC0C,WAAI,CAACmB,mBAAmB,CAAQ,CAEzD,CACF;IACFC,OAAO,EAAEhD,kBAAmB;IAC5BY,SAAS,EAAE9E,KAAK,CAACmH;EAAQ,gBAEzBtH,MAAA,CAAAY,OAAA,CAAAkE,aAAA,CAACjF,GAAA,CAAA0H,IAAI;IAAC9D,KAAK,EAAE+D,aAAI,CAACC;EAAK,CAAE,CAClB,CACE,CAEX,CAAC;AAEX,CAAC;AAACC,OAAA,CAAArF,MAAA,GAAAA,MAAA;AAEFA,MAAM,CAACsF,WAAW,GAAG,yBAAyB;AAE9CtF,MAAM,CAACuF,SAAS,GAAG;EACjBrF,QAAQ,EAAEsF,kBAAS,CAACC,IAAI;EACxBtF,YAAY,EAAEqF,kBAAS,CAACE,IAAI;EAC5BtF,UAAU,EAAEoF,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC/BpF,QAAQ,EAAEiF,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7BlF,SAAS,EAAE+E,kBAAS,CAACE,IAAI;EACzBhF,gBAAgB,EAAE8E,kBAAS,CAACE,IAAI;EAChC/E,YAAY,EAAE6E,kBAAS,CAACE,IAAI;EAC5B9E,cAAc,EAAE4E,kBAAS,CAACI,IAAI;EAC9B9E,cAAc,EAAE0E,kBAAS,CAACI,IAAI;EAC9B/E,QAAQ,EAAE2E,kBAAS,CAACI;AACtB,CAAC"}
|
|
@@ -72,7 +72,6 @@ const RoomSelector = _ref => {
|
|
|
72
72
|
return total + amount;
|
|
73
73
|
}, 0);
|
|
74
74
|
const textProps = {
|
|
75
|
-
bold: index <= roomIndex,
|
|
76
75
|
action: !isMobile,
|
|
77
76
|
small: isMobile
|
|
78
77
|
};
|
|
@@ -83,10 +82,8 @@ const RoomSelector = _ref => {
|
|
|
83
82
|
}, /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
84
83
|
disabled: !hasCart,
|
|
85
84
|
onPress: () => onPress(index),
|
|
86
|
-
className: [style.tag, style.room, index === roomIndex ? style.active : hasCart ? style.highlight :
|
|
87
|
-
}, index === roomIndex && !cart[index] && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
|
|
88
|
-
bold: false
|
|
89
|
-
}), translate(_Rates.L10N.LABEL_SELECT)), /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
|
|
85
|
+
className: [style.tag, style.room, index === roomIndex ? style.active : hasCart ? style.highlight : style.disabled]
|
|
86
|
+
}, index === roomIndex && !cart[index] && /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, translate(_Rates.L10N.LABEL_SELECT)), /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
|
|
90
87
|
capitalize: true
|
|
91
88
|
}), "".concat(translate(_Rates.L10N.LABEL_ACCOMMODATION_TYPE, {
|
|
92
89
|
type: accommodationType
|
|
@@ -97,9 +94,7 @@ const RoomSelector = _ref => {
|
|
|
97
94
|
headline: true,
|
|
98
95
|
level: isMobile ? 3 : 2,
|
|
99
96
|
value: guests === 1 || guests > 3 ? _helpers.ICON.PERSON : guests === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
|
|
100
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.Text,
|
|
101
|
-
bold: true
|
|
102
|
-
}), guests)));
|
|
97
|
+
}), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, guests)));
|
|
103
98
|
})) : null;
|
|
104
99
|
};
|
|
105
100
|
exports.RoomSelector = RoomSelector;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Rates","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","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","itemsRef","useRef","value","finder","hotel","accommodationType","hotelAccommodationType","variants","useStore","scrollTo","setScrollTo","useState","useEffect","_itemsRef$current$roo","next","current","offsetLeft","place","id","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","bold","action","small","hasCart","View","ref","el","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n const {\n value: { finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} },\n } = useStore();\n\n const [scrollTo, setScrollTo] = useState();\n\n useEffect(() => {\n setScrollTo(0);\n }, []);\n\n useEffect(() => {\n const next = roomIndex === 0 ? 0 : itemsRef.current[roomIndex]?.offsetLeft;\n if (next) setScrollTo(next - (isMobile ? 8 : 0));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [roomIndex]);\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal scrollTo={scrollTo} snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { bold: index <= roomIndex, action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined || cart[index - 1] !== undefined;\n\n return (\n <View key={index} ref={(el) => (itemsRef.current[index] = el)}>\n <Pressable\n disabled={!hasCart}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : undefined,\n ]}\n >\n {index === roomIndex && !cart[index] && (\n <Text {...textProps} bold={false}>\n {translate(L10N.LABEL_SELECT)}\n </Text>\n )}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps} bold>\n {guests}\n </Text>\n </Pressable>\n </View>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates:RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Rates","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","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","itemsRef","useRef","value","finder","hotel","accommodationType","hotelAccommodationType","variants","useStore","scrollTo","setScrollTo","useState","useEffect","_itemsRef$current$roo","next","current","offsetLeft","place","id","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","action","small","hasCart","View","ref","el","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n const {\n value: { finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} },\n } = useStore();\n\n const [scrollTo, setScrollTo] = useState();\n\n useEffect(() => {\n setScrollTo(0);\n }, []);\n\n useEffect(() => {\n const next = roomIndex === 0 ? 0 : itemsRef.current[roomIndex]?.offsetLeft;\n if (next) setScrollTo(next - (isMobile ? 8 : 0));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [roomIndex]);\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal scrollTo={scrollTo} snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined || cart[index - 1] !== undefined;\n\n return (\n <View key={index} ref={(el) => (itemsRef.current[index] = el)}>\n <Pressable\n disabled={!hasCart}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : style.disabled,\n ]}\n >\n {index === roomIndex && !cart[index] && <Text {...textProps}>{translate(L10N.LABEL_SELECT)}</Text>}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps}>{guests}</Text>\n </Pressable>\n </View>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates:RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
|
|
@@ -78,6 +78,7 @@ const Rates = _ref => {
|
|
|
78
78
|
const [login, setLogin] = (0, _react.useState)(false);
|
|
79
79
|
const [responseError, setResponseError] = (0, _react.useState)();
|
|
80
80
|
const [room, setRoom] = (0, _react.useState)();
|
|
81
|
+
const [strictSearch, setStrictSearch] = (0, _react.useState)(true);
|
|
81
82
|
const {
|
|
82
83
|
calendar = [],
|
|
83
84
|
occupation = [],
|
|
@@ -110,7 +111,15 @@ const Rates = _ref => {
|
|
|
110
111
|
setRoom(undefined);
|
|
111
112
|
debounceFetch();
|
|
112
113
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
113
|
-
}, [clubDiscount, currency, session]);
|
|
114
|
+
}, [clubDiscount, currency, strictSearch, session]);
|
|
115
|
+
(0, _react.useEffect)(() => {
|
|
116
|
+
const {
|
|
117
|
+
clientCode,
|
|
118
|
+
idoffers,
|
|
119
|
+
roomTypeId
|
|
120
|
+
} = urlParams || {};
|
|
121
|
+
setStrictSearch(!!clientCode || !!idoffers || !!roomTypeId);
|
|
122
|
+
}, [urlParams]);
|
|
114
123
|
(0, _react.useEffect)(() => {
|
|
115
124
|
if (!locale) return;
|
|
116
125
|
debounceFetch(room);
|
|
@@ -172,7 +181,8 @@ const Rates = _ref => {
|
|
|
172
181
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
173
182
|
return id;
|
|
174
183
|
}).join(','),
|
|
175
|
-
session
|
|
184
|
+
session,
|
|
185
|
+
strictSearch
|
|
176
186
|
};
|
|
177
187
|
if (room !== undefined) params.parties = (0, _helpers3.parseToParties)([nextOccupation[room || 0]]);
|
|
178
188
|
const nextDataSource = await _services2.ServiceRates.get(params).catch(setResponseError);
|
|
@@ -202,6 +212,9 @@ const Rates = _ref => {
|
|
|
202
212
|
setClubDiscount(next);
|
|
203
213
|
login && setLogin(false);
|
|
204
214
|
};
|
|
215
|
+
const handleStrictSearch = () => {
|
|
216
|
+
setStrictSearch(!strictSearch);
|
|
217
|
+
};
|
|
205
218
|
const handleFinder = function () {
|
|
206
219
|
let values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
207
220
|
setCart([]);
|
|
@@ -300,6 +313,7 @@ const Rates = _ref => {
|
|
|
300
313
|
room,
|
|
301
314
|
onPress: setRoom
|
|
302
315
|
};
|
|
316
|
+
const showStrictSearch = (urlParams === null || urlParams === void 0 ? void 0 : urlParams.clientCode) || !!(urlParams !== null && urlParams !== void 0 && urlParams.idoffers) || (urlParams === null || urlParams === void 0 ? void 0 : urlParams.roomTypeId);
|
|
303
317
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Header.Header, {
|
|
304
318
|
currency: true,
|
|
305
319
|
locale: true,
|
|
@@ -326,13 +340,16 @@ const Rates = _ref => {
|
|
|
326
340
|
className: (0, _ui.styles)(style.container, others.className)
|
|
327
341
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
328
342
|
className: [style.wrapper, style.content]
|
|
329
|
-
},
|
|
343
|
+
}, !responseError && /*#__PURE__*/_react.default.createElement(_Rates2.Content, _extends({}, dataSource, others)), (response || multiRoom && !responseError) && /*#__PURE__*/_react.default.createElement(_Rates4.Header, {
|
|
330
344
|
clubDiscount,
|
|
331
345
|
dataSource,
|
|
332
346
|
features,
|
|
333
347
|
multiRoom,
|
|
348
|
+
showStrictSearch,
|
|
349
|
+
strictSearch,
|
|
334
350
|
onClubDiscount: handleClubDiscount,
|
|
335
|
-
onSelect: handleSelect
|
|
351
|
+
onSelect: handleSelect,
|
|
352
|
+
onStrictSearch: handleStrictSearch
|
|
336
353
|
}, !isMobile && /*#__PURE__*/_react.default.createElement(_Rates6.RoomSelector, roomSelectorProps)), response ? /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
337
354
|
row: !isMobile,
|
|
338
355
|
className: style.items
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","_Rates5","style","_Rates6","_Rates7","_Rates8","_helpers2","_services2","_Finder","_Header","_helpers3","_SessionLogin","_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","loginShown","Rates","_ref","_dataSource$items","_dataSource$hotels","_dataSource$items2","skeleton","others","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","occupation","maxRooms","session","urlParams","useStore","cart","setCart","useState","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","login","setLogin","responseError","setResponseError","room","setRoom","calendar","place","useEffect","debounceFetch","multiRoom","current","offsetHeight","offsetTop","document","documentElement","scrollTo","top","behavior","trackDataSource","fetchUrlParams","location","search","fetch","nextOccupation","Event","publish","EVENT","FINDER","params","selectedIds","map","join","parties","parseToParties","nextDataSource","ServiceRates","catch","externalSignout","signout","debounce","saveCartInUrl","replaceUrlParams","rates","JSON","stringify","handleClubDiscount","next","handleFinder","values","window","getFinderParams","handleSelect","board","nextCart","trackSelectItem","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","getOccupationTotals","infantAge","hotelCurrency","selectableExtras","some","included","handleCheckout","href","getForwarderUrl","contentBackground","Theme","features","getFeatures","nights","dateDiff","days","response","roomSelectorProps","onPress","createElement","Fragment","Header","name","View","ref","className","styles","blur","sticky","backgroundColor","opacity","Finder","assisted","compacted","text","L10N","ACTION_SEARCH","onSubmit","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","onClubDiscount","onSelect","row","items","_ref2","index","item","Item","concat","taxesType","selected","onMoreInfo","onRateInfo","rate","onViewUrl","info","hotels","CardHotel","Unavailability","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","ModalExtras","onCancel","active","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { CardHotel, ClubRate, Item, ModalExtras, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport {\n getCheckoutParams,\n getFeatures,\n getFinderParams,\n getForwarderUrl,\n signout,\n trackDataSource,\n trackSelectItem,\n} from './helpers';\nimport { FEATURES } from './Rates.constants';\nimport { Content } from './Rates.Content';\nimport { Footer } from './Rates.Footer';\nimport { Header as RatesHeader } from './Rates.Header';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { RoomSelector } from './Rates.RoomSelector';\nimport Skeleton from './Rates.Skeleton';\nimport { Unavailability } from './Rates.Unavailability';\nimport { debounce, fetchUrlParams } from '../../helpers';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder';\nimport { Header } from '../Header';\nimport { EVENT, getOccupationTotals, opacity, parseToParties, replaceUrlParams } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet loginShown = false;\n\nconst Rates = ({ skeleton, ...others }) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const {\n value: {\n club: { discount, ...club } = {},\n currency,\n finder = {},\n forwarder,\n hotel = {},\n id,\n language,\n locale,\n occupation: { maxRooms } = {},\n // rates: { cart: storeCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const [cart, setCart] = useState([]);\n const [clubDiscount, setClubDiscount] = useState(discount);\n const [dataSource, setDataSource] = useState();\n const [extras, setExtras] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [login, setLogin] = useState(false);\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n\n const { calendar = [], occupation = [], place = {} } = finder;\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n // Hook: store cart\n // useEffect(() => {\n // if (!storeCart.length || !dataSource || cart.length) return;\n\n // const boards = dataSource.items\n // .map(({ boards = [], name: roomName }) => boards.map((board) => ({ ...board, roomName })))\n // .flat();\n // const nextCart = storeCart.map((id) => boards.find((board) => board.id === id)).filter((board) => !!board);\n\n // // eslint-disable-next-line no-console\n // console.log('::cart from url::', nextCart);\n\n // // if (storeCart.length === nextCart.length) setCart(nextCart);\n // // eslint-disable-next-line react-hooks/exhaustive-deps\n // }, [cart, dataSource, storeCart]);\n\n // -- hooks ----------------------------------------------------------------------------------------------------------\n useEffect(() => {\n if (!clubDiscount && !currency && !session) return;\n setCart([]);\n setRoom(undefined);\n debounceFetch();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clubDiscount, currency, session]);\n\n useEffect(() => {\n if (!locale) return;\n debounceFetch(room);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n useEffect(() => {\n if (multiRoom) {\n if (room > 0) {\n const { current: { offsetHeight = 0, offsetTop = 0 } = {} } = refRoomSelector || {};\n document.documentElement.scrollTo({ top: offsetTop + (isMobile ? offsetHeight : 0), behavior: 'smooth' });\n }\n setDataSource();\n }\n\n debounceFetch(room);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [room]);\n\n useEffect(() => {\n if (!dataSource || room) return;\n trackDataSource({ ...dataSource, ...fetchUrlParams(location.search), isMobile, occupation, place });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n // -- methods --------------------------------------------------------------------------------------------------------\n const fetch = async (room, nextOccupation = occupation) => {\n if (skeleton) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n setFetching(true);\n setResponseError();\n\n const urlParams = fetchUrlParams(location.search);\n const params = {\n ...urlParams,\n club,\n clubDiscount,\n id,\n locale,\n maxRooms,\n occupation: nextOccupation,\n place,\n selectedIds: cart.map(({ id } = {}) => id).join(','),\n session,\n };\n if (room !== undefined) params.parties = parseToParties([nextOccupation[room || 0]]);\n\n const nextDataSource = await ServiceRates.get(params).catch(setResponseError);\n if (nextDataSource?.externalSignout) signout({ club, language });\n else setDataSource(nextDataSource);\n\n if (nextDataSource && nextOccupation?.length > 1 && room === undefined) setRoom(0);\n\n setFetching(false);\n };\n\n const debounceFetch = debounce(fetch, 60);\n\n const saveCartInUrl = (cart = []) => {\n // * DISABLED\n replaceUrlParams({ rates: cart.length ? JSON.stringify(cart.map(({ id } = {}) => id)) : undefined });\n };\n\n // -- handlers -------------------------------------------------------------------------------------------------------\n const handleClubDiscount = async (next) => {\n setClubDiscount(next);\n login && setLogin(false);\n };\n\n const handleFinder = (values = {}) => {\n setCart([]);\n setDataSource(undefined);\n window.scrollTo({ top: 0, behavior: 'smooth' });\n\n replaceUrlParams(getFinderParams({ ...values, hotel }));\n debounceFetch(undefined, values.occupation);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n if (board) {\n trackSelectItem({\n ...dataSource,\n ...fetchUrlParams(location.search),\n board,\n cart: nextCart,\n isMobile,\n occupation,\n });\n }\n\n setCart(nextCart);\n setExtras();\n login && setLogin(false);\n\n if (!multiRoom && !!board) handleSubmit(nextCart);\n if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);\n if (!board) saveCartInUrl(nextCart);\n };\n\n // eslint-disable-next-line no-unused-vars\n const handleSubmit = async (cart) => {\n const isPestana = ServiceFeatures.get(FEATURES.PESTANA, id) || false;\n setLogin(false);\n\n if (!isPestana && clubDiscount && !session && !loginShown) {\n loginShown = true;\n return setLogin(true);\n }\n\n saveCartInUrl(cart);\n\n const { extras = [] } = await ServiceRates.extras({\n ...getCheckoutParams({ cart, clubDiscount, currency, forwarder, urlParams: fetchUrlParams(location.search) }),\n ...getOccupationTotals({ infantAge: dataSource.infantAge, occupation }),\n hotelCurrency: dataSource.currency,\n locale,\n }).catch(() => {});\n const selectableExtras = extras.some(({ included } = {}) => !included);\n\n if (selectableExtras) setExtras(extras);\n else handleCheckout(cart, extras);\n };\n\n const handleCheckout = (cart = [], extras = []) => {\n document.location.href = getForwarderUrl({\n cart,\n clubDiscount,\n currency,\n extras,\n forwarder,\n session,\n urlParams: fetchUrlParams(location.search),\n });\n };\n\n const { contentBackground } = Theme.get();\n const features = getFeatures(id, urlParams);\n const multiRoom = occupation?.length > 1;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n\n return (\n <>\n <Header currency locale login={!isMobile} name />\n\n <View\n ref={refRoomSelector}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder assisted={!isMobile} compacted text={translate(L10N.ACTION_SEARCH)} onSubmit={handleFinder} />\n </View>\n\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n {isMobile && !responseError && <RoomSelector {...roomSelectorProps} />}\n\n <View role=\"rates\" testId={others.testId} className={styles(style.container, others.className)}>\n <View className={[style.wrapper, style.content]}>\n {response && !responseError && <Content {...dataSource} {...others} />}\n\n {(response || (multiRoom && !responseError)) && (\n <RatesHeader\n {...{\n clubDiscount,\n dataSource,\n features,\n multiRoom,\n onClubDiscount: handleClubDiscount,\n onSelect: handleSelect,\n }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </RatesHeader>\n )}\n\n {response ? (\n <View row={!isMobile} className={style.items}>\n {dataSource.items?.map(({ id, ...item }, index) => (\n <Item\n key={`${id || index}:${fetching}:${width}`}\n {...{ id, cart, ...item, features, multiRoom, nights, room, taxesType: dataSource.taxesType }}\n selected={cart[room || 0]}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo({ ...rate, name: item.name })}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} />\n ))}\n </View>\n ) : responseError ? (\n <Unavailability {...responseError} />\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n {multiRoom && (\n <Footer {...{ cart, dataSource, extras, login, occupation }} onSubmit={() => handleSubmit(cart)} />\n )}\n </View>\n\n {response && (\n <>\n <ModalItemInfo\n {...{ ...itemInfo, features, room }}\n visible={!!itemInfo}\n onClose={() => setItemInfo()}\n onViewUrl={(info) => setItemUrl(info)}\n />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\n {club.active && dataSource.items?.length > 0 && (\n <ModalLogin\n showSignup={false}\n title={translate(L10N.LABEL_FARE_EXCLUSIVE_MEMBERS)}\n visible={login}\n onClose={() => (multiRoom ? setLogin(false) : handleSelect())}\n onSuccess={() => handleSubmit(cart)}\n >\n <ClubRate onCancel={() => handleClubDiscount(false)} onSubmit={() => handleSubmit(cart)} />\n </ModalLogin>\n )}\n </>\n )}\n </>\n );\n};\n\nRates.displayName = 'Mirai:Core:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,WAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AASA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AACA,IAAAc,OAAA,GAAAd,OAAA;AACA,IAAAe,KAAA,GAAAR,uBAAA,CAAAP,OAAA;AACA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,OAAA,GAAAZ,sBAAA,CAAAL,OAAA;AACA,IAAAkB,OAAA,GAAAlB,OAAA;AACA,IAAAmB,SAAA,GAAAnB,OAAA;AACA,IAAAoB,UAAA,GAAApB,OAAA;AACA,IAAAqB,OAAA,GAAArB,OAAA;AACA,IAAAsB,OAAA,GAAAtB,OAAA;AACA,IAAAuB,SAAA,GAAAvB,OAAA;AACA,IAAAwB,aAAA,GAAAxB,OAAA;AAAqE,SAAAyB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAnB,wBAAAmB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAA7B,uBAAAyC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAErE,IAAIK,UAAU,GAAG,KAAK;AAEtB,MAAMC,KAAK,GAAGC,IAAA,IAA6B;EAAA,IAAAC,iBAAA,EAAAC,kBAAA,EAAAC,kBAAA;EAAA,IAA5B;IAAEC,QAAQ;IAAE,GAAGC;EAAO,CAAC,GAAAL,IAAA;EACpC,MAAM;IAAEM,QAAQ;IAAEC;EAAM,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EACvC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAMC,eAAe,GAAG,IAAAC,aAAM,EAAC,CAAC;EAChC,MAAM;IACJC,KAAK,EAAE;MACLC,IAAI,EAAE;QAAEC,QAAQ;QAAE,GAAGD;MAAK,CAAC,GAAG,CAAC,CAAC;MAChCE,QAAQ;MACRC,MAAM,GAAG,CAAC,CAAC;MACXC,SAAS;MACTC,KAAK,GAAG,CAAC,CAAC;MACVC,EAAE;MACFC,QAAQ;MACRC,MAAM;MACNC,UAAU,EAAE;QAAEC;MAAS,CAAC,GAAG,CAAC,CAAC;MAC7B;MACAC,OAAO;MACPC;IACF;EACF,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,EAAE,CAAC;EACpC,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAF,eAAQ,EAACf,QAAQ,CAAC;EAC1D,MAAM,CAACkB,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAJ,eAAQ,EAAC,CAAC;EAC9C,MAAM,CAACK,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAN,eAAQ,EAAC,CAAC;EACtC,MAAM,CAACO,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAR,eAAQ,EAACS,SAAS,CAAC;EACnD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAX,eAAQ,EAAC,CAAC;EAC1C,MAAM,CAACY,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAb,eAAQ,EAAC,CAAC;EAClD,MAAM,CAACc,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAf,eAAQ,EAAC,CAAC;EACxC,MAAM,CAACgB,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAjB,eAAQ,EAAC,KAAK,CAAC;EACzC,MAAM,CAACkB,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAnB,eAAQ,EAAC,CAAC;EACpD,MAAM,CAACoB,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAArB,eAAQ,EAAC,CAAC;EAElC,MAAM;IAAEsB,QAAQ,GAAG,EAAE;IAAE7B,UAAU,GAAG,EAAE;IAAE8B,KAAK,GAAG,CAAC;EAAE,CAAC,GAAGpC,MAAM;;EAE7D;EACA,IAAAqC,gBAAS,EAAC,MAAMlD,QAAQ,IAAIkC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAClC,QAAQ,CAAC,CAAC;;EAE1D;EACA;EACA;;EAEA;EACA;EACA;EACA;;EAEA;EACA;;EAEA;EACA;EACA;;EAEA;EACA,IAAAkD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACvB,YAAY,IAAI,CAACf,QAAQ,IAAI,CAACS,OAAO,EAAE;IAC5CI,OAAO,CAAC,EAAE,CAAC;IACXsB,OAAO,CAACZ,SAAS,CAAC;IAClBgB,aAAa,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAACxB,YAAY,EAAEf,QAAQ,EAAES,OAAO,CAAC,CAAC;EAErC,IAAA6B,gBAAS,EAAC,MAAM;IACd,IAAI,CAAChC,MAAM,EAAE;IACbiC,aAAa,CAACL,IAAI,CAAC;IACnB;EACF,CAAC,EAAE,CAAC5B,MAAM,CAAC,CAAC;EAEZ,IAAAgC,gBAAS,EAAC,MAAM;IACd,IAAIE,SAAS,EAAE;MACb,IAAIN,IAAI,GAAG,CAAC,EAAE;QACZ,MAAM;UAAEO,OAAO,EAAE;YAAEC,YAAY,GAAG,CAAC;YAAEC,SAAS,GAAG;UAAE,CAAC,GAAG,CAAC;QAAE,CAAC,GAAGhD,eAAe,IAAI,CAAC,CAAC;QACnFiD,QAAQ,CAACC,eAAe,CAACC,QAAQ,CAAC;UAAEC,GAAG,EAAEJ,SAAS,IAAIrD,QAAQ,GAAGoD,YAAY,GAAG,CAAC,CAAC;UAAEM,QAAQ,EAAE;QAAS,CAAC,CAAC;MAC3G;MACA9B,aAAa,CAAC,CAAC;IACjB;IAEAqB,aAAa,CAACL,IAAI,CAAC;IACnB;EACF,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAAI,gBAAS,EAAC,MAAM;IACd,IAAI,CAACrB,UAAU,IAAIiB,IAAI,EAAE;IACzB,IAAAe,wBAAe,EAAC;MAAE,GAAGhC,UAAU;MAAE,GAAG,IAAAiC,wBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;MAAE9D,QAAQ;MAAEiB,UAAU;MAAE8B;IAAM,CAAC,CAAC;IACnG;EACF,CAAC,EAAE,CAACpB,UAAU,CAAC,CAAC;;EAEhB;EACA,MAAMoC,KAAK,GAAG,eAAAA,CAAOnB,IAAI,EAAkC;IAAA,IAAhCoB,cAAc,GAAA7E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG8B,UAAU;IACpD,IAAInB,QAAQ,EAAE;IAEdmE,kBAAK,CAACC,OAAO,CAACC,eAAK,CAACC,MAAM,EAAE;MAAEtB,QAAQ,EAAEb;IAAU,CAAC,CAAC;IACpDD,WAAW,CAAC,IAAI,CAAC;IACjBW,gBAAgB,CAAC,CAAC;IAElB,MAAMvB,SAAS,GAAG,IAAAwC,wBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;IACjD,MAAMO,MAAM,GAAG;MACb,GAAGjD,SAAS;MACZZ,IAAI;MACJiB,YAAY;MACZX,EAAE;MACFE,MAAM;MACNE,QAAQ;MACRD,UAAU,EAAE+C,cAAc;MAC1BjB,KAAK;MACLuB,WAAW,EAAEhD,IAAI,CAACiD,GAAG,CAAC;QAAA,IAAC;UAAEzD;QAAG,CAAC,GAAA3B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;QAAA,OAAK2B,EAAE;MAAA,EAAC,CAAC0D,IAAI,CAAC,GAAG,CAAC;MACpDrD;IACF,CAAC;IACD,IAAIyB,IAAI,KAAKX,SAAS,EAAEoC,MAAM,CAACI,OAAO,GAAG,IAAAC,wBAAc,EAAC,CAACV,cAAc,CAACpB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAEpF,MAAM+B,cAAc,GAAG,MAAMC,uBAAY,CAAC3G,GAAG,CAACoG,MAAM,CAAC,CAACQ,KAAK,CAAClC,gBAAgB,CAAC;IAC7E,IAAIgC,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEG,eAAe,EAAE,IAAAC,gBAAO,EAAC;MAAEvE,IAAI;MAAEO;IAAS,CAAC,CAAC,CAAC,KAC5Da,aAAa,CAAC+C,cAAc,CAAC;IAElC,IAAIA,cAAc,IAAI,CAAAX,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAE5E,MAAM,IAAG,CAAC,IAAIwD,IAAI,KAAKX,SAAS,EAAEY,OAAO,CAAC,CAAC,CAAC;IAElFb,WAAW,CAAC,KAAK,CAAC;EACpB,CAAC;EAED,MAAMiB,aAAa,GAAG,IAAA+B,kBAAQ,EAACjB,KAAK,EAAE,EAAE,CAAC;EAEzC,MAAMkB,aAAa,GAAG,SAAAA,CAAA,EAAe;IAAA,IAAd3D,IAAI,GAAAnC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,EAAE;IAC9B;IACA,IAAA+F,0BAAgB,EAAC;MAAEC,KAAK,EAAE7D,IAAI,CAAClC,MAAM,GAAGgG,IAAI,CAACC,SAAS,CAAC/D,IAAI,CAACiD,GAAG,CAAC;QAAA,IAAC;UAAEzD;QAAG,CAAC,GAAA3B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;QAAA,OAAK2B,EAAE;MAAA,EAAC,CAAC,GAAGmB;IAAU,CAAC,CAAC;EACtG,CAAC;;EAED;EACA,MAAMqD,kBAAkB,GAAG,MAAOC,IAAI,IAAK;IACzC7D,eAAe,CAAC6D,IAAI,CAAC;IACrB/C,KAAK,IAAIC,QAAQ,CAAC,KAAK,CAAC;EAC1B,CAAC;EAED,MAAM+C,YAAY,GAAG,SAAAA,CAAA,EAAiB;IAAA,IAAhBC,MAAM,GAAAtG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;IAC/BoC,OAAO,CAAC,EAAE,CAAC;IACXK,aAAa,CAACK,SAAS,CAAC;IACxByD,MAAM,CAAClC,QAAQ,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,QAAQ,EAAE;IAAS,CAAC,CAAC;IAE/C,IAAAwB,0BAAgB,EAAC,IAAAS,wBAAe,EAAC;MAAE,GAAGF,MAAM;MAAE5E;IAAM,CAAC,CAAC,CAAC;IACvDoC,aAAa,CAAChB,SAAS,EAAEwD,MAAM,CAACxE,UAAU,CAAC;EAC7C,CAAC;EAED,MAAM2E,YAAY,GAAGA,CAACC,KAAK,EAAE9F,MAAM,KAAK;IACtC,MAAM+F,QAAQ,GAAG,CAAC,GAAGxE,IAAI,CAAC;IAC1BwE,QAAQ,CAAClD,IAAI,IAAI,CAAC,CAAC,GAAGiD,KAAK,GAAG;MAAE,GAAGA,KAAK;MAAE,GAAG9F;IAAO,CAAC,GAAGkC,SAAS;IAEjE,IAAI4D,KAAK,EAAE;MACT,IAAAE,wBAAe,EAAC;QACd,GAAGpE,UAAU;QACb,GAAG,IAAAiC,wBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;QAClC+B,KAAK;QACLvE,IAAI,EAAEwE,QAAQ;QACd9F,QAAQ;QACRiB;MACF,CAAC,CAAC;IACJ;IAEAM,OAAO,CAACuE,QAAQ,CAAC;IACjBhE,SAAS,CAAC,CAAC;IACXU,KAAK,IAAIC,QAAQ,CAAC,KAAK,CAAC;IAExB,IAAI,CAACS,SAAS,IAAI,CAAC,CAAC2C,KAAK,EAAEG,YAAY,CAACF,QAAQ,CAAC;IACjD,IAAI5C,SAAS,IAAI2C,KAAK,IAAIjD,IAAI,GAAG3B,UAAU,CAAC7B,MAAM,GAAG,CAAC,EAAE,OAAOyD,OAAO,CAACD,IAAI,GAAG,CAAC,CAAC;IAChF,IAAI,CAACiD,KAAK,EAAEZ,aAAa,CAACa,QAAQ,CAAC;EACrC,CAAC;;EAED;EACA,MAAME,YAAY,GAAG,MAAO1E,IAAI,IAAK;IACnC,MAAM2E,SAAS,GAAGC,yBAAe,CAACjI,GAAG,CAACkI,eAAQ,CAACC,OAAO,EAAEtF,EAAE,CAAC,IAAI,KAAK;IACpE2B,QAAQ,CAAC,KAAK,CAAC;IAEf,IAAI,CAACwD,SAAS,IAAIxE,YAAY,IAAI,CAACN,OAAO,IAAI,CAAC3B,UAAU,EAAE;MACzDA,UAAU,GAAG,IAAI;MACjB,OAAOiD,QAAQ,CAAC,IAAI,CAAC;IACvB;IAEAwC,aAAa,CAAC3D,IAAI,CAAC;IAEnB,MAAM;MAAEO,MAAM,GAAG;IAAG,CAAC,GAAG,MAAM+C,uBAAY,CAAC/C,MAAM,CAAC;MAChD,GAAG,IAAAwE,0BAAiB,EAAC;QAAE/E,IAAI;QAAEG,YAAY;QAAEf,QAAQ;QAAEE,SAAS;QAAEQ,SAAS,EAAE,IAAAwC,wBAAc,EAACC,QAAQ,CAACC,MAAM;MAAE,CAAC,CAAC;MAC7G,GAAG,IAAAwC,6BAAmB,EAAC;QAAEC,SAAS,EAAE5E,UAAU,CAAC4E,SAAS;QAAEtF;MAAW,CAAC,CAAC;MACvEuF,aAAa,EAAE7E,UAAU,CAACjB,QAAQ;MAClCM;IACF,CAAC,CAAC,CAAC6D,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClB,MAAM4B,gBAAgB,GAAG5E,MAAM,CAAC6E,IAAI,CAAC;MAAA,IAAC;QAAEC;MAAS,CAAC,GAAAxH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;MAAA,OAAK,CAACwH,QAAQ;IAAA,EAAC;IAEtE,IAAIF,gBAAgB,EAAE3E,SAAS,CAACD,MAAM,CAAC,CAAC,KACnC+E,cAAc,CAACtF,IAAI,EAAEO,MAAM,CAAC;EACnC,CAAC;EAED,MAAM+E,cAAc,GAAG,SAAAA,CAAA,EAA4B;IAAA,IAA3BtF,IAAI,GAAAnC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,EAAE;IAAA,IAAE0C,MAAM,GAAA1C,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,EAAE;IAC5CmE,QAAQ,CAACO,QAAQ,CAACgD,IAAI,GAAG,IAAAC,wBAAe,EAAC;MACvCxF,IAAI;MACJG,YAAY;MACZf,QAAQ;MACRmB,MAAM;MACNjB,SAAS;MACTO,OAAO;MACPC,SAAS,EAAE,IAAAwC,wBAAc,EAACC,QAAQ,CAACC,MAAM;IAC3C,CAAC,CAAC;EACJ,CAAC;EAED,MAAM;IAAEiD;EAAkB,CAAC,GAAGC,SAAK,CAAC/I,GAAG,CAAC,CAAC;EACzC,MAAMgJ,QAAQ,GAAG,IAAAC,oBAAW,EAACpG,EAAE,EAAEM,SAAS,CAAC;EAC3C,MAAM8B,SAAS,GAAG,CAAAjC,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE7B,MAAM,IAAG,CAAC;EACxC,MAAM+H,MAAM,GAAG,IAAAC,gBAAQ,EAACtE,QAAQ,CAAC,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,CAAC,CAAC,CAACuE,IAAI;EACtD,MAAMC,QAAQ,GAAG3F,UAAU,KAAKM,SAAS;EACzC,MAAMsF,iBAAiB,GAAG;IAAEjG,IAAI;IAAEL,UAAU;IAAE2B,IAAI;IAAE4E,OAAO,EAAE3E;EAAQ,CAAC;EAEtE,oBACEvG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAAAnL,MAAA,CAAAyB,OAAA,CAAA2J,QAAA,qBACEpL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACnK,OAAA,CAAAqK,MAAM;IAACjH,QAAQ;IAACM,MAAM;IAACwB,KAAK,EAAE,CAACxC,QAAS;IAAC4H,IAAI;EAAA,CAAE,CAAC,eAEjDtL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACtL,GAAA,CAAA0L,IAAI;IACHC,GAAG,EAAEzH,eAAgB;IACrB0H,SAAS,EAAE,IAAAC,UAAM,EAACjL,KAAK,CAAC4D,MAAM,EAAE5D,KAAK,CAACkL,IAAI,EAAE,CAAC,CAAC/E,SAAS,IAAIR,aAAa,KAAK3F,KAAK,CAACmL,MAAM,CAAE;IAC3FnL,KAAK,EAAE,CAACiD,QAAQ,GAAG;MAAEmI,eAAe,EAAE,IAAAC,iBAAO,EAACrB,iBAAiB,EAAE,IAAI;IAAE,CAAC,GAAG9E;EAAU,gBAErF3F,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACpK,OAAA,CAAAgL,MAAM;IAACC,QAAQ,EAAE,CAACtI,QAAS;IAACuI,SAAS;IAACC,IAAI,EAAErI,SAAS,CAACsI,YAAI,CAACC,aAAa,CAAE;IAACC,QAAQ,EAAEnD;EAAa,CAAE,CACjG,CAAC,eAEPlJ,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACtL,GAAA,CAAAyM,QAAQ;IAACC,aAAa;IAACC,OAAO,EAAE/G,QAAQ,IAAI,CAACW,aAAc;IAACqF,SAAS,EAAEhL,KAAK,CAACgM;EAAS,CAAE,CAAC,EAEzF/I,QAAQ,IAAI,CAAC0C,aAAa,iBAAIpG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACzK,OAAA,CAAAgM,YAAY,EAAKzB,iBAAoB,CAAC,eAEtEjL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACtL,GAAA,CAAA0L,IAAI;IAACoB,IAAI,EAAC,OAAO;IAACC,MAAM,EAAEnJ,MAAM,CAACmJ,MAAO;IAACnB,SAAS,EAAE,IAAAC,UAAM,EAACjL,KAAK,CAACoM,SAAS,EAAEpJ,MAAM,CAACgI,SAAS;EAAE,gBAC7FzL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACtL,GAAA,CAAA0L,IAAI;IAACE,SAAS,EAAE,CAAChL,KAAK,CAACqM,OAAO,EAAErM,KAAK,CAACsM,OAAO;EAAE,GAC7C/B,QAAQ,IAAI,CAAC5E,aAAa,iBAAIpG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAAC9K,OAAA,CAAA2M,OAAO,EAAAvK,QAAA,KAAK4C,UAAU,EAAM5B,MAAM,CAAG,CAAC,EAErE,CAACuH,QAAQ,IAAKpE,SAAS,IAAI,CAACR,aAAc,kBACzCpG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAAC5K,OAAA,CAAA8K,MAAW;IAERlG,YAAY;IACZE,UAAU;IACVsF,QAAQ;IACR/D,SAAS;IACTqG,cAAc,EAAEjE,kBAAkB;IAClCkE,QAAQ,EAAE5D;EAAY,GAGvB,CAAC5F,QAAQ,iBAAI1D,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACzK,OAAA,CAAAgM,YAAY,EAAKzB,iBAAoB,CACzC,CACd,EAEAD,QAAQ,gBACPhL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACtL,GAAA,CAAA0L,IAAI;IAAC4B,GAAG,EAAE,CAACzJ,QAAS;IAAC+H,SAAS,EAAEhL,KAAK,CAAC2M;EAAM,IAAA/J,iBAAA,GAC1CgC,UAAU,CAAC+H,KAAK,cAAA/J,iBAAA,uBAAhBA,iBAAA,CAAkB4E,GAAG,CAAC,CAAAoF,KAAA,EAAkBC,KAAK;IAAA,IAAtB;MAAE9I,EAAE;MAAE,GAAG+I;IAAK,CAAC,GAAAF,KAAA;IAAA,oBACrCrN,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAsN,IAAI,EAAA/K,QAAA;MACHO,GAAG,KAAAyK,MAAA,CAAKjJ,EAAE,IAAI8I,KAAK,OAAAG,MAAA,CAAIhI,QAAQ,OAAAgI,MAAA,CAAI9J,KAAK,CAAG;MACrCa,EAAE;MAAEQ;IAAI,GAAKuI,IAAI;MAAE5C,QAAQ;MAAE/D,SAAS;MAAEiE,MAAM;MAAEvE,IAAI;MAAEoH,SAAS,EAAErI,UAAU,CAACqI,SAAS;MAC3FC,QAAQ,EAAE3I,IAAI,CAACsB,IAAI,IAAI,CAAC,CAAE;MAC1BsH,UAAU,EAAEA,CAAA,KAAM/H,WAAW,CAAC0H,IAAI,CAAE;MACpCM,UAAU,EAAGC,IAAI,IAAK/H,eAAe,CAAC;QAAE,GAAG+H,IAAI;QAAExC,IAAI,EAAEiC,IAAI,CAACjC;MAAK,CAAC,CAAE;MACpE4B,QAAQ,EAAE5D,YAAa;MACvByE,SAAS,EAAGC,IAAI,IAAK/H,UAAU,CAAC+H,IAAI;IAAE,EACvC,CAAC;EAAA,CACH,CAAC,GAAA1K,kBAAA,GAED+B,UAAU,CAAC4I,MAAM,cAAA3K,kBAAA,uBAAjBA,kBAAA,CAAmB2E,GAAG,CAAC;IAAA,IAACsF,IAAI,GAAA1K,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;IAAA,oBAChC7C,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAgO,SAAS,EAAAzL,QAAA;MAACO,GAAG,EAAEuK,IAAI,CAAC/I;IAAG,GAAK+I,IAAI,CAAG,CAAC;EAAA,CACtC,CACG,CAAC,GACLnH,aAAa,gBACfpG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACvK,OAAA,CAAAuN,cAAc,EAAK/H,aAAgB,CAAC,gBAErCpG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACxK,OAAA,CAAAc,OAAQ;IAACmF,SAAS,EAAEA;EAAU,CAAE,CAE/B,CAAC,EAENA,SAAS,iBACR5G,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAAC7K,OAAA,CAAA8N,MAAM;IAAOpJ,IAAI;IAAEK,UAAU;IAAEE,MAAM;IAAEW,KAAK;IAAEvB,UAAU;IAAI0H,QAAQ,EAAEA,CAAA,KAAM3C,YAAY,CAAC1E,IAAI;EAAE,CAAE,CAEhG,CAAC,EAENgG,QAAQ,iBACPhL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAAAnL,MAAA,CAAAyB,OAAA,CAAA2J,QAAA,qBACEpL,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAmO,aAAa,EAAA5L,QAAA,KACHmD,QAAQ;IAAE+E,QAAQ;IAAErE,IAAI;IACjCkG,OAAO,EAAE,CAAC,CAAC5G,QAAS;IACpB0I,OAAO,EAAEA,CAAA,KAAMzI,WAAW,CAAC,CAAE;IAC7BkI,SAAS,EAAGC,IAAI,IAAK/H,UAAU,CAAC+H,IAAI;EAAE,EACvC,CAAC,eACFhO,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAqO,iBAAiB,EAAA9L,QAAA,KAAKqD,YAAY;IAAE0G,OAAO,EAAE,CAAC,CAAC1G,YAAa;IAACwI,OAAO,EAAEA,CAAA,KAAMvI,eAAe,CAAC;EAAE,EAAE,CAAC,eAClG/F,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAsO,YAAY,EAAA/L,QAAA,KAAKuD,OAAO;IAAEwG,OAAO,EAAE,CAAC,CAACxG,OAAQ;IAACsI,OAAO,EAAEA,CAAA,KAAMrI,UAAU,CAAC;EAAE,EAAE,CAAC,eAC9EjG,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAAuO,WAAW,EAAAhM,QAAA,KACD4C,UAAU;IAAEL,IAAI;IAAEO,MAAM;IACjCiH,OAAO,EAAE,CAAC,CAACjH,MAAO;IAClBmJ,QAAQ,EAAEA,CAAA,KAAO9H,SAAS,GAAGpB,SAAS,CAAC,CAAC,GAAG8D,YAAY,CAAC,CAAG;IAC3D+C,QAAQ,EAAG9G,MAAM,IAAK+E,cAAc,CAACtF,IAAI,EAAEO,MAAM;EAAE,EACpD,CAAC,EACDrB,IAAI,CAACyK,MAAM,IAAI,EAAApL,kBAAA,GAAA8B,UAAU,CAAC+H,KAAK,cAAA7J,kBAAA,uBAAhBA,kBAAA,CAAkBT,MAAM,IAAG,CAAC,iBAC1C9C,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjK,aAAA,CAAA0N,KAAU;IACTC,UAAU,EAAE,KAAM;IAClBC,KAAK,EAAEjL,SAAS,CAACsI,YAAI,CAAC4C,4BAA4B,CAAE;IACpDvC,OAAO,EAAEtG,KAAM;IACfoI,OAAO,EAAEA,CAAA,KAAO1H,SAAS,GAAGT,QAAQ,CAAC,KAAK,CAAC,GAAGmD,YAAY,CAAC,CAAG;IAC9D0F,SAAS,EAAEA,CAAA,KAAMtF,YAAY,CAAC1E,IAAI;EAAE,gBAEpChF,MAAA,CAAAyB,OAAA,CAAA0J,aAAA,CAACjL,WAAA,CAAA+O,QAAQ;IAACP,QAAQ,EAAEA,CAAA,KAAM1F,kBAAkB,CAAC,KAAK,CAAE;IAACqD,QAAQ,EAAEA,CAAA,KAAM3C,YAAY,CAAC1E,IAAI;EAAE,CAAE,CAChF,CAEd,CAEJ,CAAC;AAEP,CAAC;AAACkK,OAAA,CAAA/L,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAACgM,WAAW,GAAG,kBAAkB;AAEtChM,KAAK,CAACiM,SAAS,GAAG;EAChB5L,QAAQ,EAAE6L,kBAAS,CAACC;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","_Rates5","style","_Rates6","_Rates7","_Rates8","_helpers2","_services2","_Finder","_Header","_helpers3","_SessionLogin","_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","loginShown","Rates","_ref","_dataSource$items","_dataSource$hotels","_dataSource$items2","skeleton","others","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","occupation","maxRooms","session","urlParams","useStore","cart","setCart","useState","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","login","setLogin","responseError","setResponseError","room","setRoom","strictSearch","setStrictSearch","calendar","place","useEffect","debounceFetch","clientCode","idoffers","roomTypeId","multiRoom","current","offsetHeight","offsetTop","document","documentElement","scrollTo","top","behavior","trackDataSource","fetchUrlParams","location","search","fetch","nextOccupation","Event","publish","EVENT","FINDER","params","selectedIds","map","join","parties","parseToParties","nextDataSource","ServiceRates","catch","externalSignout","signout","debounce","saveCartInUrl","replaceUrlParams","rates","JSON","stringify","handleClubDiscount","next","handleStrictSearch","handleFinder","values","window","getFinderParams","handleSelect","board","nextCart","trackSelectItem","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","getOccupationTotals","infantAge","hotelCurrency","selectableExtras","some","included","handleCheckout","href","getForwarderUrl","contentBackground","Theme","features","getFeatures","nights","dateDiff","days","response","roomSelectorProps","onPress","showStrictSearch","createElement","Fragment","Header","name","View","ref","className","styles","blur","sticky","backgroundColor","opacity","Finder","assisted","compacted","text","L10N","ACTION_SEARCH","onSubmit","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","onClubDiscount","onSelect","onStrictSearch","row","items","_ref2","index","item","Item","concat","taxesType","selected","onMoreInfo","onRateInfo","rate","onViewUrl","info","hotels","CardHotel","Unavailability","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","ModalExtras","onCancel","active","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { CardHotel, ClubRate, Item, ModalExtras, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport {\n getCheckoutParams,\n getFeatures,\n getFinderParams,\n getForwarderUrl,\n signout,\n trackDataSource,\n trackSelectItem,\n} from './helpers';\nimport { FEATURES } from './Rates.constants';\nimport { Content } from './Rates.Content';\nimport { Footer } from './Rates.Footer';\nimport { Header as RatesHeader } from './Rates.Header';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { RoomSelector } from './Rates.RoomSelector';\nimport Skeleton from './Rates.Skeleton';\nimport { Unavailability } from './Rates.Unavailability';\nimport { debounce, fetchUrlParams } from '../../helpers';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder';\nimport { Header } from '../Header';\nimport { EVENT, getOccupationTotals, opacity, parseToParties, replaceUrlParams } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet loginShown = false;\n\nconst Rates = ({ skeleton, ...others }) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const {\n value: {\n club: { discount, ...club } = {},\n currency,\n finder = {},\n forwarder,\n hotel = {},\n id,\n language,\n locale,\n occupation: { maxRooms } = {},\n // rates: { cart: storeCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const [cart, setCart] = useState([]);\n const [clubDiscount, setClubDiscount] = useState(discount);\n const [dataSource, setDataSource] = useState();\n const [extras, setExtras] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [login, setLogin] = useState(false);\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n const [strictSearch, setStrictSearch] = useState(true);\n\n const { calendar = [], occupation = [], place = {} } = finder;\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n // Hook: store cart\n // useEffect(() => {\n // if (!storeCart.length || !dataSource || cart.length) return;\n\n // const boards = dataSource.items\n // .map(({ boards = [], name: roomName }) => boards.map((board) => ({ ...board, roomName })))\n // .flat();\n // const nextCart = storeCart.map((id) => boards.find((board) => board.id === id)).filter((board) => !!board);\n\n // // eslint-disable-next-line no-console\n // console.log('::cart from url::', nextCart);\n\n // // if (storeCart.length === nextCart.length) setCart(nextCart);\n // // eslint-disable-next-line react-hooks/exhaustive-deps\n // }, [cart, dataSource, storeCart]);\n\n // -- hooks ----------------------------------------------------------------------------------------------------------\n useEffect(() => {\n if (!clubDiscount && !currency && !session) return;\n setCart([]);\n setRoom(undefined);\n debounceFetch();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clubDiscount, currency, strictSearch, session]);\n\n useEffect(() => {\n const { clientCode, idoffers, roomTypeId } = urlParams || {};\n\n setStrictSearch(!!clientCode || !!idoffers || !!roomTypeId);\n }, [urlParams]);\n\n useEffect(() => {\n if (!locale) return;\n debounceFetch(room);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n useEffect(() => {\n if (multiRoom) {\n if (room > 0) {\n const { current: { offsetHeight = 0, offsetTop = 0 } = {} } = refRoomSelector || {};\n document.documentElement.scrollTo({ top: offsetTop + (isMobile ? offsetHeight : 0), behavior: 'smooth' });\n }\n setDataSource();\n }\n\n debounceFetch(room);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [room]);\n\n useEffect(() => {\n if (!dataSource || room) return;\n trackDataSource({ ...dataSource, ...fetchUrlParams(location.search), isMobile, occupation, place });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n // -- methods --------------------------------------------------------------------------------------------------------\n const fetch = async (room, nextOccupation = occupation) => {\n if (skeleton) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n setFetching(true);\n setResponseError();\n\n const urlParams = fetchUrlParams(location.search);\n const params = {\n ...urlParams,\n club,\n clubDiscount,\n id,\n locale,\n maxRooms,\n occupation: nextOccupation,\n place,\n selectedIds: cart.map(({ id } = {}) => id).join(','),\n session,\n strictSearch,\n };\n if (room !== undefined) params.parties = parseToParties([nextOccupation[room || 0]]);\n\n const nextDataSource = await ServiceRates.get(params).catch(setResponseError);\n if (nextDataSource?.externalSignout) signout({ club, language });\n else setDataSource(nextDataSource);\n\n if (nextDataSource && nextOccupation?.length > 1 && room === undefined) setRoom(0);\n\n setFetching(false);\n };\n\n const debounceFetch = debounce(fetch, 60);\n\n const saveCartInUrl = (cart = []) => {\n // * DISABLED\n replaceUrlParams({ rates: cart.length ? JSON.stringify(cart.map(({ id } = {}) => id)) : undefined });\n };\n\n // -- handlers -------------------------------------------------------------------------------------------------------\n const handleClubDiscount = async (next) => {\n setClubDiscount(next);\n login && setLogin(false);\n };\n\n const handleStrictSearch = () => {\n setStrictSearch(!strictSearch);\n };\n\n const handleFinder = (values = {}) => {\n setCart([]);\n setDataSource(undefined);\n window.scrollTo({ top: 0, behavior: 'smooth' });\n\n replaceUrlParams(getFinderParams({ ...values, hotel }));\n debounceFetch(undefined, values.occupation);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n if (board) {\n trackSelectItem({\n ...dataSource,\n ...fetchUrlParams(location.search),\n board,\n cart: nextCart,\n isMobile,\n occupation,\n });\n }\n\n setCart(nextCart);\n setExtras();\n login && setLogin(false);\n\n if (!multiRoom && !!board) handleSubmit(nextCart);\n if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);\n if (!board) saveCartInUrl(nextCart);\n };\n\n // eslint-disable-next-line no-unused-vars\n const handleSubmit = async (cart) => {\n const isPestana = ServiceFeatures.get(FEATURES.PESTANA, id) || false;\n setLogin(false);\n\n if (!isPestana && clubDiscount && !session && !loginShown) {\n loginShown = true;\n return setLogin(true);\n }\n\n saveCartInUrl(cart);\n\n const { extras = [] } = await ServiceRates.extras({\n ...getCheckoutParams({ cart, clubDiscount, currency, forwarder, urlParams: fetchUrlParams(location.search) }),\n ...getOccupationTotals({ infantAge: dataSource.infantAge, occupation }),\n hotelCurrency: dataSource.currency,\n locale,\n }).catch(() => {});\n const selectableExtras = extras.some(({ included } = {}) => !included);\n\n if (selectableExtras) setExtras(extras);\n else handleCheckout(cart, extras);\n };\n\n const handleCheckout = (cart = [], extras = []) => {\n document.location.href = getForwarderUrl({\n cart,\n clubDiscount,\n currency,\n extras,\n forwarder,\n session,\n urlParams: fetchUrlParams(location.search),\n });\n };\n\n const { contentBackground } = Theme.get();\n const features = getFeatures(id, urlParams);\n const multiRoom = occupation?.length > 1;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n const showStrictSearch = urlParams?.clientCode || !!urlParams?.idoffers || urlParams?.roomTypeId;\n\n return (\n <>\n <Header currency locale login={!isMobile} name />\n\n <View\n ref={refRoomSelector}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder assisted={!isMobile} compacted text={translate(L10N.ACTION_SEARCH)} onSubmit={handleFinder} />\n </View>\n\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n {isMobile && !responseError && <RoomSelector {...roomSelectorProps} />}\n\n <View role=\"rates\" testId={others.testId} className={styles(style.container, others.className)}>\n <View className={[style.wrapper, style.content]}>\n {!responseError && <Content {...dataSource} {...others} />}\n\n {(response || (multiRoom && !responseError)) && (\n <RatesHeader\n {...{\n clubDiscount,\n dataSource,\n features,\n multiRoom,\n showStrictSearch,\n strictSearch,\n onClubDiscount: handleClubDiscount,\n onSelect: handleSelect,\n onStrictSearch: handleStrictSearch,\n }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </RatesHeader>\n )}\n\n {response ? (\n <View row={!isMobile} className={style.items}>\n {dataSource.items?.map(({ id, ...item }, index) => (\n <Item\n key={`${id || index}:${fetching}:${width}`}\n {...{ id, cart, ...item, features, multiRoom, nights, room, taxesType: dataSource.taxesType }}\n selected={cart[room || 0]}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo({ ...rate, name: item.name })}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} />\n ))}\n </View>\n ) : responseError ? (\n <Unavailability {...responseError} />\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n {multiRoom && (\n <Footer {...{ cart, dataSource, extras, login, occupation }} onSubmit={() => handleSubmit(cart)} />\n )}\n </View>\n\n {response && (\n <>\n <ModalItemInfo\n {...{ ...itemInfo, features, room }}\n visible={!!itemInfo}\n onClose={() => setItemInfo()}\n onViewUrl={(info) => setItemUrl(info)}\n />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\n {club.active && dataSource.items?.length > 0 && (\n <ModalLogin\n showSignup={false}\n title={translate(L10N.LABEL_FARE_EXCLUSIVE_MEMBERS)}\n visible={login}\n onClose={() => (multiRoom ? setLogin(false) : handleSelect())}\n onSuccess={() => handleSubmit(cart)}\n >\n <ClubRate onCancel={() => handleClubDiscount(false)} onSubmit={() => handleSubmit(cart)} />\n </ModalLogin>\n )}\n </>\n )}\n </>\n );\n};\n\nRates.displayName = 'Mirai:Core:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":"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"}
|
|
@@ -39,6 +39,18 @@ const L10N = exports.L10N = {
|
|
|
39
39
|
LABEL_APPLY_DISCOUNTS: {
|
|
40
40
|
id: 'common.label.apply_discounts'
|
|
41
41
|
},
|
|
42
|
+
LABEL_SHOW_FILTERED_RESULTS: {
|
|
43
|
+
id: 'common.label.show_filtered_results'
|
|
44
|
+
},
|
|
45
|
+
LABEL_SHOW_ONLY_DEALS: {
|
|
46
|
+
id: 'common.label.show_only_deals'
|
|
47
|
+
},
|
|
48
|
+
LABEL_SHOW_ONLY_PROMOS: {
|
|
49
|
+
id: 'common.label.show_only_promos'
|
|
50
|
+
},
|
|
51
|
+
LABEL_SHOW_ONLY_ROOM: {
|
|
52
|
+
id: 'common.label.show_only_room'
|
|
53
|
+
},
|
|
42
54
|
LABEL_AVAILABLE_ALTERNATIVES: {
|
|
43
55
|
id: 'finder.label.available_alternatives'
|
|
44
56
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_3D_EXPERIENCE","id","ACTION_CLUB_VIEW_CONDITIONS","ACTION_HIDE_CART","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SEARCH","ACTION_VIEW_CART","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_APPLY_DISCOUNTS","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CLUB_CONDITIONS","LABEL_CLUB_MEMBERS_EXCLUSIVE","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FARE_EXCLUSIVE_MEMBERS","LABEL_FROM","LABEL_INCLUDES_TAXES_FEES","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"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { TAXES_TYPE } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_3D_EXPERIENCE: { id: 'finder.action.3d_experience' },\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_HIDE_CART: { id: 'finder.action.hide_cart' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SEARCH: { id: 'common.action.search' },\n ACTION_VIEW_CART: { id: 'finder.action.view_cart' },\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_APPLY_DISCOUNTS: { id: 'common.label.apply_discounts' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CLUB_CONDITIONS: { id: 'finder.label.club_conditions' },\n LABEL_CLUB_MEMBERS_EXCLUSIVE: { id: 'finder.label.club_members_exclusive' },\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_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"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,oBAAoB,EAAE;IAAEC,EAAE,EAAE;EAA8B,CAAC;EAC3DC,2BAA2B,EAAE;IAAED,EAAE,EAAE;EAAqC,CAAC;EACzEE,gBAAgB,EAAE;IAAEF,EAAE,EAAE;EAA0B,CAAC;EACnDG,oBAAoB,EAAE;IAAEH,EAAE,EAAE;EAA8B,CAAC;EAC3DI,cAAc,EAAE;IAAEJ,EAAE,EAAE;EAAwB,CAAC;EAC/CK,aAAa,EAAE;IAAEL,EAAE,EAAE;EAAuB,CAAC;EAC7CM,gBAAgB,EAAE;IAAEN,EAAE,EAAE;EAA0B,CAAC;EACnDO,gBAAgB,EAAE;IAAEP,EAAE,EAAE;EAA0B,CAAC;EAEnDQ,wBAAwB,EAAE;IAAER,EAAE,EAAE;EAAkC,CAAC;EACnES,mCAAmC,EAAE;IAAET,EAAE,EAAE;EAA6C,CAAC;EACzFU,qBAAqB,EAAE;IAAEV,EAAE,EAAE;EAA+B,CAAC;EAC7DW,
|
|
1
|
+
{"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_3D_EXPERIENCE","id","ACTION_CLUB_VIEW_CONDITIONS","ACTION_HIDE_CART","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SEARCH","ACTION_VIEW_CART","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_APPLY_DISCOUNTS","LABEL_SHOW_FILTERED_RESULTS","LABEL_SHOW_ONLY_DEALS","LABEL_SHOW_ONLY_PROMOS","LABEL_SHOW_ONLY_ROOM","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CLUB_CONDITIONS","LABEL_CLUB_MEMBERS_EXCLUSIVE","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FARE_EXCLUSIVE_MEMBERS","LABEL_FROM","LABEL_INCLUDES_TAXES_FEES","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"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { TAXES_TYPE } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_3D_EXPERIENCE: { id: 'finder.action.3d_experience' },\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_HIDE_CART: { id: 'finder.action.hide_cart' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SEARCH: { id: 'common.action.search' },\n ACTION_VIEW_CART: { id: 'finder.action.view_cart' },\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_APPLY_DISCOUNTS: { id: 'common.label.apply_discounts' },\n LABEL_SHOW_FILTERED_RESULTS: { id: 'common.label.show_filtered_results' },\n LABEL_SHOW_ONLY_DEALS: { id: 'common.label.show_only_deals' },\n LABEL_SHOW_ONLY_PROMOS: { id: 'common.label.show_only_promos' },\n LABEL_SHOW_ONLY_ROOM: { id: 'common.label.show_only_room' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CLUB_CONDITIONS: { id: 'finder.label.club_conditions' },\n LABEL_CLUB_MEMBERS_EXCLUSIVE: { id: 'finder.label.club_members_exclusive' },\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_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"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,oBAAoB,EAAE;IAAEC,EAAE,EAAE;EAA8B,CAAC;EAC3DC,2BAA2B,EAAE;IAAED,EAAE,EAAE;EAAqC,CAAC;EACzEE,gBAAgB,EAAE;IAAEF,EAAE,EAAE;EAA0B,CAAC;EACnDG,oBAAoB,EAAE;IAAEH,EAAE,EAAE;EAA8B,CAAC;EAC3DI,cAAc,EAAE;IAAEJ,EAAE,EAAE;EAAwB,CAAC;EAC/CK,aAAa,EAAE;IAAEL,EAAE,EAAE;EAAuB,CAAC;EAC7CM,gBAAgB,EAAE;IAAEN,EAAE,EAAE;EAA0B,CAAC;EACnDO,gBAAgB,EAAE;IAAEP,EAAE,EAAE;EAA0B,CAAC;EAEnDQ,wBAAwB,EAAE;IAAER,EAAE,EAAE;EAAkC,CAAC;EACnES,mCAAmC,EAAE;IAAET,EAAE,EAAE;EAA6C,CAAC;EACzFU,qBAAqB,EAAE;IAAEV,EAAE,EAAE;EAA+B,CAAC;EAC7DW,2BAA2B,EAAE;IAAEX,EAAE,EAAE;EAAqC,CAAC;EACzEY,qBAAqB,EAAE;IAAEZ,EAAE,EAAE;EAA+B,CAAC;EAC7Da,sBAAsB,EAAE;IAAEb,EAAE,EAAE;EAAgC,CAAC;EAC/Dc,oBAAoB,EAAE;IAAEd,EAAE,EAAE;EAA8B,CAAC;EAC3De,4BAA4B,EAAE;IAAEf,EAAE,EAAE;EAAsC,CAAC;EAC3EgB,mBAAmB,EAAE;IAAEhB,EAAE,EAAE;EAA6B,CAAC;EACzDiB,qBAAqB,EAAE;IAAEjB,EAAE,EAAE;EAA+B,CAAC;EAC7DkB,4BAA4B,EAAE;IAAElB,EAAE,EAAE;EAAsC,CAAC;EAC3EmB,kBAAkB,EAAE;IAAEnB,EAAE,EAAE;EAA4B,CAAC;EACvDoB,yBAAyB,EAAE;IAAEpB,EAAE,EAAE;EAAmC,CAAC;EACrEqB,4BAA4B,EAAE;IAAErB,EAAE,EAAE;EAAoC,CAAC;EACzEsB,UAAU,EAAE;IAAEtB,EAAE,EAAE;EAAoB,CAAC;EACvCuB,yBAAyB,EAAE;IAAEvB,EAAE,EAAE;EAAmC,CAAC;EACrEwB,YAAY,EAAE;IAAExB,EAAE,EAAE;EAAsB,CAAC;EAC3CyB,8BAA8B,EAAE;IAAEzB,EAAE,EAAE;EAAwC,CAAC;EAC/E0B,gCAAgC,EAAE;IAAE1B,EAAE,EAAE;EAA0C,CAAC;EACnF2B,YAAY,EAAE;IAAE3B,EAAE,EAAE;EAAsB,CAAC;EAC3C4B,gBAAgB,EAAE;IAChB,CAACC,gBAAU,CAACC,YAAY,GAAG;MAAE9B,EAAE,EAAE;IAAmC,CAAC;IACrE,CAAC6B,gBAAU,CAACE,YAAY,GAAG;MAAE/B,EAAE,EAAE;IAAmC,CAAC;IACrE,CAAC6B,gBAAU,CAACG,aAAa,GAAG;MAAEhC,EAAE,EAAE;IAA6B,CAAC;IAChE,CAAC6B,gBAAU,CAACI,4BAA4B,GAAG;MAAEjC,EAAE,EAAE;IAA4C,CAAC;IAC9F,CAAC6B,gBAAU,CAACK,aAAa,GAAG;MAAElC,EAAE,EAAE;IAA6B,CAAC;IAChE,CAAC6B,gBAAU,CAACM,cAAc,GAAG;MAAEnC,EAAE,EAAE;IAA8B,CAAC;IAClE,CAAC6B,gBAAU,CAACO,4BAA4B,GAAG;MAAEpC,EAAE,EAAE;IAA4C,CAAC;IAC9F,CAAC6B,gBAAU,CAACQ,cAAc,GAAG;MAAErC,EAAE,EAAE;IAA8B;EACnE,CAAC;EACDsC,eAAe,EAAE;IAAEtC,EAAE,EAAE;EAAyB;AAClD,CAAC"}
|
|
@@ -84,20 +84,15 @@ body {
|
|
|
84
84
|
.tag {
|
|
85
85
|
align-items: center;
|
|
86
86
|
background-color: var(--mirai-ui-base);
|
|
87
|
-
|
|
87
|
+
box-shadow: inset 0 0 0 var(--mirai-ui-border-width) var(--mirai-ui-content-border);
|
|
88
88
|
border-radius: var(--mirai-ui-input-text-radius);
|
|
89
89
|
display: flex;
|
|
90
90
|
gap: var(--mirai-ui-space-XS);
|
|
91
|
-
min-height: var(--mirai-ui-
|
|
91
|
+
min-height: calc(var(--mirai-ui-space-XL) + calc(var(--mirai-ui-border-width) * 2));
|
|
92
92
|
padding-left: var(--mirai-ui-input-text-padding-x);
|
|
93
93
|
padding-right: var(--mirai-ui-input-text-padding-x);
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
-
.tag > [data-role],
|
|
97
|
-
.tag > * > [data-role] {
|
|
98
|
-
color: var(--mirai-ui-content-light);
|
|
99
|
-
}
|
|
100
|
-
|
|
101
96
|
.tag.active {
|
|
102
97
|
background-color: var(--mirai-ui-accent);
|
|
103
98
|
}
|
|
@@ -108,11 +103,32 @@ body {
|
|
|
108
103
|
|
|
109
104
|
.tag.active,
|
|
110
105
|
.tag.pressable:hover {
|
|
111
|
-
|
|
106
|
+
box-shadow: inset 0 0 0 var(--mirai-ui-border-width) var(--mirai-ui-accent);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.tag.disabled {
|
|
110
|
+
background-color: var(--mirai-ui-content-border);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.tag.disabled * {
|
|
114
|
+
color: var(--mirai-ui-content-light);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
.tag.filter > * {
|
|
118
|
+
flex: 0;
|
|
119
|
+
margin-bottom: 0;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.tag.filter > .text {
|
|
123
|
+
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.tag.filter > .text > [data-role='text'] {
|
|
127
|
+
min-width: max-content;
|
|
112
128
|
}
|
|
113
129
|
|
|
114
130
|
.tag.highlight {
|
|
115
|
-
|
|
131
|
+
box-shadow: inset 0 0 0 var(--mirai-ui-border-width) var(--mirai-ui-accent);
|
|
116
132
|
}
|
|
117
133
|
|
|
118
134
|
.tag.highlight > [data-role],
|
|
@@ -120,10 +136,6 @@ body {
|
|
|
120
136
|
color: var(--mirai-ui-accent);
|
|
121
137
|
}
|
|
122
138
|
|
|
123
|
-
.tag.clubDiscount > * {
|
|
124
|
-
gap: var(--mirai-ui-space-XS);
|
|
125
|
-
}
|
|
126
|
-
|
|
127
139
|
.tag.room {
|
|
128
140
|
min-width: max-content;
|
|
129
141
|
}
|
|
@@ -299,12 +311,12 @@ body {
|
|
|
299
311
|
@media only screen and (max-width: 430px) {
|
|
300
312
|
.container {
|
|
301
313
|
min-height: 100svh;
|
|
302
|
-
padding: 0 var(--mirai-ui-space-
|
|
314
|
+
padding: 0 var(--mirai-ui-space-S) var(--mirai-ui-space-M) var(--mirai-ui-space-S);
|
|
303
315
|
}
|
|
304
316
|
|
|
305
317
|
.container .content {
|
|
306
|
-
padding-top: var(--mirai-ui-space-S);
|
|
307
318
|
gap: var(--mirai-ui-space-M);
|
|
319
|
+
padding-top: var(--mirai-ui-space-S);
|
|
308
320
|
}
|
|
309
321
|
|
|
310
322
|
.container .extraContent {
|
|
@@ -315,7 +327,7 @@ body {
|
|
|
315
327
|
.finder {
|
|
316
328
|
background-color: var(--mirai-ui-base);
|
|
317
329
|
border-bottom: solid 1px var(--mirai-ui-content-border);
|
|
318
|
-
padding: var(--mirai-ui-space-
|
|
330
|
+
padding: var(--mirai-ui-space-S);
|
|
319
331
|
}
|
|
320
332
|
|
|
321
333
|
/* -- <Header> ---------------------------------------------------------------------------------------------------- */
|
|
@@ -328,7 +340,7 @@ body {
|
|
|
328
340
|
flex-grow: 1;
|
|
329
341
|
}
|
|
330
342
|
|
|
331
|
-
.tag.
|
|
343
|
+
.tag.filter {
|
|
332
344
|
flex-grow: 1;
|
|
333
345
|
}
|
|
334
346
|
|
|
@@ -337,7 +349,7 @@ body {
|
|
|
337
349
|
background-color: var(--mirai-ui-base);
|
|
338
350
|
border-bottom: solid 1px var(--mirai-ui-content-border);
|
|
339
351
|
left: 0;
|
|
340
|
-
padding: var(--mirai-ui-space-
|
|
352
|
+
padding: var(--mirai-ui-space-S);
|
|
341
353
|
position: sticky;
|
|
342
354
|
right: 0;
|
|
343
355
|
top: 0;
|
|
@@ -17,26 +17,29 @@ const FEATURE = {
|
|
|
17
17
|
};
|
|
18
18
|
const rates = function () {
|
|
19
19
|
let {
|
|
20
|
-
session: {
|
|
21
|
-
authorization
|
|
22
|
-
} = {},
|
|
23
20
|
clubDiscount,
|
|
24
21
|
locale,
|
|
25
22
|
occupation,
|
|
23
|
+
session: {
|
|
24
|
+
authorization
|
|
25
|
+
} = {},
|
|
26
|
+
strictSearch,
|
|
26
27
|
userCurrency,
|
|
27
28
|
...others
|
|
28
29
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
29
30
|
return new Promise(async (resolve, reject) => {
|
|
30
31
|
var _club$clubLogin;
|
|
31
32
|
const {
|
|
32
|
-
idtokenprovider: id,
|
|
33
33
|
checkin,
|
|
34
|
-
nights,
|
|
35
34
|
club: {
|
|
36
35
|
authentication: {
|
|
37
36
|
type
|
|
38
37
|
} = {}
|
|
39
38
|
} = {},
|
|
39
|
+
idoffers,
|
|
40
|
+
idtokenprovider: id,
|
|
41
|
+
nights,
|
|
42
|
+
roomTypeId,
|
|
40
43
|
...rest
|
|
41
44
|
} = others || {};
|
|
42
45
|
const language = locale === null || locale === void 0 ? void 0 : locale.split('-')[0];
|
|
@@ -44,8 +47,11 @@ const rates = function () {
|
|
|
44
47
|
applyClubDiscount: clubDiscount,
|
|
45
48
|
checkin,
|
|
46
49
|
cid: (0, _jsSha.default)("".concat(_constants.KEY_HASH, "-").concat(id, "-").concat(checkin, "-").concat(nights)),
|
|
50
|
+
clientCodeStrictSearch: strictSearch,
|
|
47
51
|
currency: userCurrency,
|
|
48
52
|
idtokenprovider: id,
|
|
53
|
+
idoffers: strictSearch ? idoffers : undefined,
|
|
54
|
+
roomTypeId: strictSearch ? roomTypeId : undefined,
|
|
49
55
|
nights,
|
|
50
56
|
...rest,
|
|
51
57
|
accessClubToken: authorization,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rates.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","FEATURE","PESTANA","rates","
|
|
1
|
+
{"version":3,"file":"rates.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","FEATURE","PESTANA","rates","clubDiscount","locale","occupation","session","authorization","strictSearch","userCurrency","others","arguments","length","undefined","Promise","resolve","reject","_club$clubLogin","checkin","club","authentication","type","idoffers","idtokenprovider","id","nights","roomTypeId","rest","language","split","params","Object","entries","applyClubDiscount","cid","sha1","concat","KEY_HASH","clientCodeStrictSearch","currency","accessClubToken","lang","parseExternalToken","filter","_ref","value","response","request","hostname","process","env","SERVICE_BOOKING","endpoint","URLSearchParams","headers","catch","result","error","unavailability","parseUnavailability","checkIn","currencyCode","hotelCurrency","firstChildInterval","hotelverse","messages","availabilityMessage","increments","showLocalTaxes","fees","userCountry","country","vatIncluded","taxes","ServiceCurrency","exchange","infantAge","lowerBound","items","getItems","boards","hasFees","hasTaxes","clubConditions","ServiceFeatures","get","EXTERNAL","URL","DEFAULT_LANGUAGE","externalSignout","TYPE","clubLogin","status","VALID","taxesType","getTaxesType","tracking","parseTracking","exports"],"sources":["../../../src/services/Rates/rates.js"],"sourcesContent":["/* eslint-disable no-async-promise-executor */\nimport { request } from '@mirai/data-sources';\nimport { ServiceCurrency, ServiceFeatures } from '@mirai/services';\nimport sha1 from 'js-sha1';\n\nimport { DEFAULT_LANGUAGE, EXTERNAL, KEY_HASH, VALID } from './constants';\nimport { getItems, getTaxesType, parseExternalToken, parseTracking, parseUnavailability } from './helpers';\n\nconst FEATURE = { PESTANA: 'pestana' };\n\nexport const rates = ({\n clubDiscount,\n locale,\n occupation,\n session: { authorization } = {},\n strictSearch,\n userCurrency,\n ...others\n} = {}) =>\n new Promise(async (resolve, reject) => {\n const {\n checkin,\n club: { authentication: { type } = {} } = {},\n idoffers,\n idtokenprovider: id,\n nights,\n roomTypeId,\n ...rest\n } = others || {};\n\n const language = locale?.split('-')[0];\n\n const params = Object.entries({\n applyClubDiscount: clubDiscount,\n checkin,\n cid: sha1(`${KEY_HASH}-${id}-${checkin}-${nights}`),\n clientCodeStrictSearch: strictSearch,\n currency: userCurrency,\n idtokenprovider: id,\n idoffers: strictSearch ? idoffers : undefined,\n roomTypeId: strictSearch ? roomTypeId : undefined,\n nights,\n ...rest,\n accessClubToken: authorization,\n lang: language,\n ...parseExternalToken(rest),\n }).filter(([, value]) => value !== undefined);\n\n const response = await request({\n hostname: process.env.SERVICE_BOOKING,\n endpoint: `/request_availability_v2.json?${new URLSearchParams(params)}`,\n headers: { 'Content-Type': undefined, 'X-Requested-With': undefined },\n }).catch(reject);\n\n if (!response || response.result === 'EXCEPTION') return reject({ error: 'Upss, something bad happened!' }); //TODO\n\n const unavailability = parseUnavailability({ ...response, checkIn: checkin, nights, occupation, ...others });\n if (unavailability) return reject(unavailability);\n\n const {\n club,\n currencyCode: hotelCurrency,\n firstChildInterval = {},\n hotelverse,\n messages: { availabilityMessage: { increments } = {} } = {},\n showLocalTaxes: fees,\n userCountry: country,\n vatIncluded: taxes,\n } = response;\n\n const currency = userCurrency || hotelCurrency;\n await ServiceCurrency.exchange(currency);\n\n const infantAge = firstChildInterval?.lowerBound;\n const items = getItems({ ...response, currency, ...others });\n\n const [{ boards: [{ fees: hasFees, taxes: hasTaxes } = {}] = [] } = {}] = items || [];\n\n resolve({\n clubConditions: ServiceFeatures.get(FEATURE.PESTANA, id)\n ? EXTERNAL.URL[language] || EXTERNAL.URL[DEFAULT_LANGUAGE]\n : undefined,\n country,\n currency: hotelCurrency,\n externalSignout: authorization && type === EXTERNAL.TYPE && club?.clubLogin?.status !== VALID,\n hotelverse,\n increments: increments || undefined,\n infantAge: infantAge !== null ? infantAge : undefined,\n items,\n taxesType: getTaxesType({ fees, hasFees, hasTaxes, taxes }),\n tracking: parseTracking({ ...response, userCurrency }),\n });\n });\n"],"mappings":"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"}
|