@mirai/core 0.3.350 → 0.3.351
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/Rates/Rates.Unavailability.js +2 -1
- package/build/components/Rates/Rates.Unavailability.js.map +1 -1
- package/build/components/Rates/Rates.js +6 -1
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/components/CardHotel/CardHotel.js +5 -3
- package/build/components/Rates/components/CardHotel/CardHotel.js.map +1 -1
- package/build/components/Rates/helpers/filterItem.js +2 -2
- package/build/components/Rates/helpers/filterItem.js.map +1 -1
- package/package.json +1 -1
|
@@ -273,7 +273,8 @@ const Unavailability = _ref => {
|
|
|
273
273
|
}, translate(_Rates2.L10N.ACTION_SHOW_ON_MAP))), /*#__PURE__*/_react.default.createElement(_shared__.Cards, null, hotels.map((item, index) => /*#__PURE__*/_react.default.createElement(_components.CardHotel, _extends({
|
|
274
274
|
key: "".concat(item.index || index, ":").concat(width)
|
|
275
275
|
}, item, {
|
|
276
|
-
nights: nights
|
|
276
|
+
nights: nights,
|
|
277
|
+
unavailability: true
|
|
277
278
|
})))));
|
|
278
279
|
};
|
|
279
280
|
exports.Unavailability = Unavailability;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_shared__","_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","Unavailability","_ref","calendar","hotel","email","phone","hotels","nights","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","onMapView","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","currency","finder","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","rooms","undefined","map","handleFinder","isCalendar","focus","renderPrice","price","onPress","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","light","getLabelTaxes","Button","ACTION_VIEW_MORE","renderContactInfo","action","contactInfo","LABEL_CONTACT_INFO","Action","href","concat","place","id","hasSuggestions","unavailability","banner","Icon","accent","ICON","CALENDAR_BUSY","PERSON_OFF","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","Cards","taxes","others","index","parseDate","Card","card","dateFormat","DATE_FORMAT","anchorDates","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","getAccommodationLabel","plural","type","distribution","name","roomIndex","room","_item$ages","item","itemIndex","getOccupationLabel","ages","OCCUPATION_TYPE","CHILD","LABEL_YEARS_OLD","amount","sort","join","spaceBetween","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","secondary","ACTION_SHOW_ON_MAP","CardHotel","exports","displayName","propTypes","PropTypes","shape","string","arrayOf","number","func"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { Card, Cards } from '../__shared__';\nimport { EVENT, OCCUPATION_TYPE } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotel: { email, phone } = {},\n hotels = [],\n nights = 1,\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n onMapView,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const { currency, finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} } = store;\n\n const handleCalendar = (from, to) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, calendar: [from, to] } });\n };\n\n const handleOccupation = (rooms = []) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, occupation: rooms.map(({ occupation } = {}) => occupation) } });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, isCalendar ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const renderContactInfo = () => (\n <Text action={!isMobile} small={isMobile} className={style.contactInfo}>\n {translate(L10N.LABEL_CONTACT_INFO, {\n email: (\n <Action href={`mailto:${email}`} small={isMobile} target=\"_blank\" className={style.action}>\n {email}\n </Action>\n ),\n phone: (\n <Action href={`tel:${phone}`} small={isMobile} target=\"_blank\" className={style.action}>\n {phone}\n </Action>\n ),\n })}\n </Text>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const hasSuggestions = calendarSuggestions.length > 0 || occupationSuggestions.length > 0;\n const isCalendar = calendarSuggestions.length > 0;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon accent value={isCalendar ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} />\n <View wide className={style.texts}>\n <Text accent bold headline>\n {isCalendar\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n {!isMobile && renderContactInfo()}\n </View>\n <Button wide={isMobile} onPress={handleFinder}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n {isMobile && renderContactInfo()}\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {isCalendar && (\n <Cards>\n {calendarSuggestions.map(({ price = 0, taxes, ...others } = {}, index) => {\n const from = parseDate(others?.from);\n const to = parseDate(others?.to);\n\n return (\n <Card key={`calendar:${index}`}>\n <View className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n </Card>\n );\n })}\n </Cards>\n )}\n\n {occupationSuggestions.length > 0 && (\n <Cards>\n {occupationSuggestions.map(({ rooms = [], price = 0, taxes }, index) => (\n <Card key={`rooms:${index}`}>\n <View className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${rooms.length} ${getAccommodationLabel(\n { plural: rooms.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {rooms.map(({ name, occupation = [] } = {}, roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>\n {name}\n </Text>\n {occupation.map((item = {}, itemIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${itemIndex}`} light small>\n {`${getOccupationLabel({ ...item, ages: [] }, translate)} ${\n item.type === OCCUPATION_TYPE.CHILD\n ? `(${translate(L10N.LABEL_YEARS_OLD, { amount: item.ages?.sort().join('-') })})`\n : ''\n }`}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(rooms) })}\n </View>\n </Card>\n ))}\n </Cards>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <View row={!isMobile} className={style.spaceBetween}>\n <Text bold headline>\n {translate(L10N.LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS, { value: hotels.length })}\n </Text>\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n </View>\n )}\n <Cards>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} nights={nights} />\n ))}\n </Cards>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotel: PropTypes.shape({\n email: PropTypes.string,\n phone: PropTypes.string,\n }),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n onMapView: PropTypes.func,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_shared__","_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","Unavailability","_ref","calendar","hotel","email","phone","hotels","nights","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","onMapView","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","currency","finder","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","rooms","undefined","map","handleFinder","isCalendar","focus","renderPrice","price","onPress","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","light","getLabelTaxes","Button","ACTION_VIEW_MORE","renderContactInfo","action","contactInfo","LABEL_CONTACT_INFO","Action","href","concat","place","id","hasSuggestions","unavailability","banner","Icon","accent","ICON","CALENDAR_BUSY","PERSON_OFF","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","Cards","taxes","others","index","parseDate","Card","card","dateFormat","DATE_FORMAT","anchorDates","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","getAccommodationLabel","plural","type","distribution","name","roomIndex","room","_item$ages","item","itemIndex","getOccupationLabel","ages","OCCUPATION_TYPE","CHILD","LABEL_YEARS_OLD","amount","sort","join","spaceBetween","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","secondary","ACTION_SHOW_ON_MAP","CardHotel","exports","displayName","propTypes","PropTypes","shape","string","arrayOf","number","func"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { Card, Cards } from '../__shared__';\nimport { EVENT, OCCUPATION_TYPE } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotel: { email, phone } = {},\n hotels = [],\n nights = 1,\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n onMapView,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const { currency, finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} } = store;\n\n const handleCalendar = (from, to) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, calendar: [from, to] } });\n };\n\n const handleOccupation = (rooms = []) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, occupation: rooms.map(({ occupation } = {}) => occupation) } });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, isCalendar ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const renderContactInfo = () => (\n <Text action={!isMobile} small={isMobile} className={style.contactInfo}>\n {translate(L10N.LABEL_CONTACT_INFO, {\n email: (\n <Action href={`mailto:${email}`} small={isMobile} target=\"_blank\" className={style.action}>\n {email}\n </Action>\n ),\n phone: (\n <Action href={`tel:${phone}`} small={isMobile} target=\"_blank\" className={style.action}>\n {phone}\n </Action>\n ),\n })}\n </Text>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const hasSuggestions = calendarSuggestions.length > 0 || occupationSuggestions.length > 0;\n const isCalendar = calendarSuggestions.length > 0;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon accent value={isCalendar ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} />\n <View wide className={style.texts}>\n <Text accent bold headline>\n {isCalendar\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n {!isMobile && renderContactInfo()}\n </View>\n <Button wide={isMobile} onPress={handleFinder}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n {isMobile && renderContactInfo()}\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {isCalendar && (\n <Cards>\n {calendarSuggestions.map(({ price = 0, taxes, ...others } = {}, index) => {\n const from = parseDate(others?.from);\n const to = parseDate(others?.to);\n\n return (\n <Card key={`calendar:${index}`}>\n <View className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n </Card>\n );\n })}\n </Cards>\n )}\n\n {occupationSuggestions.length > 0 && (\n <Cards>\n {occupationSuggestions.map(({ rooms = [], price = 0, taxes }, index) => (\n <Card key={`rooms:${index}`}>\n <View className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${rooms.length} ${getAccommodationLabel(\n { plural: rooms.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {rooms.map(({ name, occupation = [] } = {}, roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>\n {name}\n </Text>\n {occupation.map((item = {}, itemIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${itemIndex}`} light small>\n {`${getOccupationLabel({ ...item, ages: [] }, translate)} ${\n item.type === OCCUPATION_TYPE.CHILD\n ? `(${translate(L10N.LABEL_YEARS_OLD, { amount: item.ages?.sort().join('-') })})`\n : ''\n }`}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(rooms) })}\n </View>\n </Card>\n ))}\n </Cards>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <View row={!isMobile} className={style.spaceBetween}>\n <Text bold headline>\n {translate(L10N.LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS, { value: hotels.length })}\n </Text>\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n </View>\n )}\n <Cards>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} nights={nights} unavailability />\n ))}\n </Cards>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotel: PropTypes.shape({\n email: PropTypes.string,\n phone: PropTypes.string,\n }),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n onMapView: PropTypes.func,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
|
|
@@ -131,6 +131,7 @@ const Rates = _ref => {
|
|
|
131
131
|
}, [dataSource, metaCart]);
|
|
132
132
|
(0, _react.useEffect)(() => {
|
|
133
133
|
if (!clubDiscount && !currency && !session && strictSearch === undefined) return;
|
|
134
|
+
if (clubDiscount && loginShown) loginShown = false;
|
|
134
135
|
!login && setCart([]);
|
|
135
136
|
setRoom(undefined);
|
|
136
137
|
debounceFetch();
|
|
@@ -346,6 +347,10 @@ const Rates = _ref => {
|
|
|
346
347
|
urlParams: (0, _helpers2.fetchUrlParams)(location.search)
|
|
347
348
|
});
|
|
348
349
|
};
|
|
350
|
+
const handleCloseLogin = () => {
|
|
351
|
+
loginShown = false;
|
|
352
|
+
multiRoom ? setLogin(false) : handleSelect();
|
|
353
|
+
};
|
|
349
354
|
const scrollTo = function () {
|
|
350
355
|
let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
351
356
|
return window.scrollTo({
|
|
@@ -491,7 +496,7 @@ const Rates = _ref => {
|
|
|
491
496
|
showSignup: false,
|
|
492
497
|
title: translate(_Rates5.L10N.LABEL_FARE_EXCLUSIVE_MEMBERS),
|
|
493
498
|
visible: login,
|
|
494
|
-
onClose:
|
|
499
|
+
onClose: handleCloseLogin,
|
|
495
500
|
onSuccess: () => handleSubmit(cart)
|
|
496
501
|
}, /*#__PURE__*/_react.default.createElement(_components.ClubRate, {
|
|
497
502
|
onCancel: () => handleClubDiscount(false),
|
|
@@ -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","_Core","_helpers2","_services2","_shared__","_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","_select","_dataSource$hotels","_dataSource$items","skeleton","others","isDesktop","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","refItems","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","occupation","maxRooms","rates","meta","metaCart","session","urlParams","useStore","cancellationInfo","setCancellationInfo","useState","cart","setCart","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","filters","setFilters","itemInfo","setItemInfo","itemUrl","setItemUrl","itemPreview","setItemPreview","login","setLogin","mapView","setMapView","offerInfo","setOfferInfo","responseError","setResponseError","room","setRoom","strictSearch","setStrictSearch","calendar","place","useEffect","Event","subscribe","EVENT","RATES_FILTER_CLUB","handleClubDiscount","unsubscribe","getMetaBoard","then","board","notification","L10N","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","utm_source","publish","NOTIFICATION","contrast","defaultMessage","UTM_SOURCE_NAME","handleSelect","catch","debounceFetch","multiRoom","current","offsetHeight","offsetTop","scrollTo","tracking","trackDataSource","fetchUrlParams","location","search","fetch","nextOccupation","nextPromocode","promocode","FINDER","checkin","nights","parties","getFinderParams","replaceUrlParams","params","selectedIds","map","join","parseToParties","nextDataSource","ServiceRates","externalSignout","signout","notifications","includes","PROMOCODE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","debounce","next","handleFilters","nextClubDiscount","nextStrictSearch","handleFinder","values","nextCart","scrollToRoom","roomId","trackSelectItem","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","getOccupationTotals","infantAge","hotelCurrency","selectableExtras","some","included","handleCheckout","document","href","getForwarderUrl","window","top","behavior","_refItems$current$roo","getBoundingClientRect","scrollY","contentBackground","Theme","dateDiff","days","response","roomSelectorProps","onPress","showPreviewPrice","features","getFeatures","createElement","Fragment","Header","active","name","SHOW_NAME_IN_HEADER","View","ref","row","className","styles","blur","sticky","backgroundColor","opacity","Finder","compacted","icon","storage","onSubmit","Filters","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","onFilters","onMapView","onSelect","Cards","select","items","_ref2","index","item","Item","filterItem","taxesType","concat","el","selected","onCancellationInfo","rate","onMoreInfo","onOfferInfo","onPreview","onViewUrl","info","hotels","CardHotel","Unavailability","Notification","error","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","Footer","ModalItemInfo","onClose","ModalCancellationInfo","ModalItemUrl","ModalOfferInfo","ModalExtras","onCancel","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","ModalMapView","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 { Notification, Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport {\n CardHotel,\n ClubRate,\n Filters,\n Item,\n ModalCancellationInfo,\n ModalExtras,\n ModalItemInfo,\n ModalItemUrl,\n ModalMapView,\n ModalOfferInfo,\n} from './components';\nimport {\n filterItem,\n getCheckoutParams,\n getFeatures,\n getFinderParams,\n getForwarderUrl,\n getMetaBoard,\n select,\n signout,\n trackDataSource,\n trackSelectItem,\n} from './helpers';\nimport { FEATURES, NOTIFICATION, UTM_SOURCE_NAME } from './Rates.constants';\nimport { Content } from './Rates.Content';\nimport { Footer as RatesFooter } 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 { ERROR } from '../../Core.constants';\nimport { debounce, fetchUrlParams } from '../../helpers';\nimport { ServiceRates } from '../../services';\nimport { Cards, Footer } from '../__shared__';\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 { isDesktop, isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const refItems = useRef({});\n const {\n set,\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: { meta: metaCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const [cancellationInfo, setCancellationInfo] = useState();\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 [filters, setFilters] = useState({});\n const [itemInfo, setItemInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [itemPreview, setItemPreview] = useState();\n const [login, setLogin] = useState(false);\n const [mapView, setMapView] = useState();\n const [offerInfo, setOfferInfo] = useState();\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n const [strictSearch, setStrictSearch] = useState();\n\n const { calendar = [], occupation = [], place } = finder;\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => {\n Event.subscribe(EVENT.RATES_FILTER_CLUB, handleClubDiscount);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, handleClubDiscount);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [login]);\n\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n // -- hooks ----------------------------------------------------------------------------------------------------------\n useEffect(() => {\n if (!dataSource || !metaCart.length) return;\n\n getMetaBoard({ cart, dataSource, metaCart })\n .then((board) => {\n const notification = board ? L10N.NOTIFICATION_META_RATE_FOUND : L10N.NOTIFICATION_META_RATE_NOT_FOUND;\n const { utm_source } = urlParams;\n\n Event.publish(EVENT.NOTIFICATION, {\n contrast: true,\n defaultMessage: translate(notification, { utm_source: UTM_SOURCE_NAME[utm_source] || utm_source }),\n });\n if (board) handleSelect(board);\n })\n .catch(() => set({ rates: undefined }));\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, metaCart]);\n\n useEffect(() => {\n if (!clubDiscount && !currency && !session && strictSearch === undefined) return;\n\n !login && setCart([]);\n setRoom(undefined);\n debounceFetch();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clubDiscount, currency, session, strictSearch]);\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 scrollTo(offsetTop + (isMobile ? offsetHeight : 0));\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 && (!responseError || !responseError.tracking)) || room) return;\n\n trackDataSource({\n ...(dataSource || responseError),\n isMobile,\n occupation,\n place,\n urlParams: fetchUrlParams(location.search),\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, responseError]);\n\n // -- methods --------------------------------------------------------------------------------------------------------\n const fetch = async (room, nextOccupation = occupation, nextPromocode = finder.promocode) => {\n if (skeleton) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n setFetching(true);\n setResponseError();\n\n // ! TODO: [MF-2005] Use helper fetchRates() within <Rates>\n let urlParams = fetchUrlParams(location.search);\n if (!urlParams.checkin || !urlParams.nights || !urlParams.parties) {\n urlParams = { ...urlParams, ...getFinderParams({ ...finder, hotel }) };\n replaceUrlParams(urlParams);\n }\n\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) return signout({ club, language });\n\n if (nextDataSource) {\n const { notifications = [] } = nextDataSource;\n\n if (notifications.includes(NOTIFICATION.PROMOCODE_NOT_FOUND) && nextPromocode) {\n Event.publish(EVENT.NOTIFICATION, {\n contrast: true,\n defaultMessage: translate(L10N.NOTIFICATION_PROMOCODE_NOT_FOUND, { promocode: nextPromocode }),\n });\n set({ finder: { calendar, occupation, place, promocode: '' } });\n }\n if (nextOccupation?.length > 1 && room === undefined) setRoom(0);\n }\n\n setDataSource(nextDataSource);\n\n setFetching(false);\n };\n\n const debounceFetch = debounce(fetch, 60);\n\n // -- handlers -------------------------------------------------------------------------------------------------------\n const handleClubDiscount = async (next) => {\n setClubDiscount(next);\n login && setLogin(false);\n };\n\n const handleFilters = (next = {}) => {\n const { clubDiscount: nextClubDiscount, strictSearch: nextStrictSearch } = next;\n\n setCart([]);\n setRoom(undefined);\n setFilters(next);\n\n if (clubDiscount !== nextClubDiscount) setClubDiscount(nextClubDiscount);\n if (strictSearch !== nextStrictSearch) setStrictSearch(nextStrictSearch);\n };\n\n const handleFinder = (values = {}) => {\n setCart([]);\n setDataSource(undefined);\n setItemPreview(undefined);\n setRoom();\n scrollTo(0);\n\n replaceUrlParams(getFinderParams({ ...values, hotel }));\n debounceFetch(undefined, values.occupation, values.promocode);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n if (board) {\n scrollToRoom(board.roomId);\n\n trackSelectItem({\n ...dataSource,\n board,\n cart: nextCart,\n isMobile,\n occupation,\n urlParams: fetchUrlParams(location.search),\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 (multiRoom && !board) set({ rates: undefined });\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 const { extras = [] } =\n (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 scrollTo = (value = 0) => window.scrollTo({ top: value, behavior: 'smooth' });\n\n const scrollToRoom = (roomId) => {\n const { top } = refItems?.current[roomId]?.getBoundingClientRect() || {};\n\n if (top) scrollTo(top + window.scrollY - (isMobile ? 16 : 16 * 5));\n };\n\n const { contentBackground } = Theme.get();\n const multiRoom = occupation?.length > 1 || metaCart.length > 0;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n const { showPreviewPrice, ...features } = getFeatures(hotel.id, urlParams, { isDesktop, isMobile }, multiRoom);\n\n return (\n <>\n <Header currency login={club.active} name={ServiceFeatures.get(FEATURES.SHOW_NAME_IN_HEADER, hotel.id)} />\n\n <View\n ref={refRoomSelector}\n row={isMobile}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder compacted icon storage={false} onSubmit={handleFinder} />\n {isMobile && (response || (multiRoom && !responseError)) && (\n <Filters {...dataSource} onSubmit={handleFilters} />\n )}\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} skeleton={skeleton} />}\n\n {(response || (multiRoom && !responseError)) && (\n <RatesHeader\n {...{ dataSource, multiRoom, onFilters: handleFilters, onMapView: setMapView, onSelect: handleSelect }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </RatesHeader>\n )}\n\n {response ? (\n <Cards>\n {select(dataSource.items, filters)?.map(({ id, ...item }, index) => (\n <Item\n {...{\n ...filterItem(item, filters),\n cart,\n features,\n filters,\n id,\n multiRoom,\n nights,\n room,\n taxesType: dataSource.taxesType,\n }}\n key={`${id || index}:${fetching}:${width}`}\n ref={(el) => (refItems.current[id] = el)}\n selected={cart[room || 0]}\n onCancellationInfo={(rate) => setCancellationInfo({ ...rate, name: item.name })}\n onMoreInfo={() => setItemInfo(item)}\n onOfferInfo={(rate) => setOfferInfo(rate)}\n onPreview={showPreviewPrice && !multiRoom ? setItemPreview : undefined}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} nights={nights} />\n ))}\n </Cards>\n ) : responseError ? (\n responseError.hotel ? (\n <Unavailability {...responseError} nights={nights} onMapView={setMapView} />\n ) : (\n <Notification error large className={style.error}>\n {translate(L10N.NOTIFICATION_ERROR[responseError.code || ERROR.UNKNOWN])}\n </Notification>\n )\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n <RatesFooter\n {...{ cart: multiRoom ? cart : [itemPreview], dataSource, extras, login, multiRoom, occupation }}\n onSubmit={() => (multiRoom ? handleSubmit(cart) : handleSelect(itemPreview))}\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 <ModalCancellationInfo\n {...cancellationInfo}\n visible={!!cancellationInfo}\n onClose={() => setCancellationInfo()}\n />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalOfferInfo {...{ ...offerInfo }} visible={!!offerInfo} onClose={() => setOfferInfo()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\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 <ModalMapView items={mapView} nights={nights} visible={!!mapView} onClose={() => setMapView()} />\n\n <Footer />\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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"}
|
|
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","_Core","_helpers2","_services2","_shared__","_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","_select","_dataSource$hotels","_dataSource$items","skeleton","others","isDesktop","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","refItems","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","occupation","maxRooms","rates","meta","metaCart","session","urlParams","useStore","cancellationInfo","setCancellationInfo","useState","cart","setCart","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","filters","setFilters","itemInfo","setItemInfo","itemUrl","setItemUrl","itemPreview","setItemPreview","login","setLogin","mapView","setMapView","offerInfo","setOfferInfo","responseError","setResponseError","room","setRoom","strictSearch","setStrictSearch","calendar","place","useEffect","Event","subscribe","EVENT","RATES_FILTER_CLUB","handleClubDiscount","unsubscribe","getMetaBoard","then","board","notification","L10N","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","utm_source","publish","NOTIFICATION","contrast","defaultMessage","UTM_SOURCE_NAME","handleSelect","catch","debounceFetch","multiRoom","current","offsetHeight","offsetTop","scrollTo","tracking","trackDataSource","fetchUrlParams","location","search","fetch","nextOccupation","nextPromocode","promocode","FINDER","checkin","nights","parties","getFinderParams","replaceUrlParams","params","selectedIds","map","join","parseToParties","nextDataSource","ServiceRates","externalSignout","signout","notifications","includes","PROMOCODE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","debounce","next","handleFilters","nextClubDiscount","nextStrictSearch","handleFinder","values","nextCart","scrollToRoom","roomId","trackSelectItem","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","getOccupationTotals","infantAge","hotelCurrency","selectableExtras","some","included","handleCheckout","document","href","getForwarderUrl","handleCloseLogin","window","top","behavior","_refItems$current$roo","getBoundingClientRect","scrollY","contentBackground","Theme","dateDiff","days","response","roomSelectorProps","onPress","showPreviewPrice","features","getFeatures","createElement","Fragment","Header","active","name","SHOW_NAME_IN_HEADER","View","ref","row","className","styles","blur","sticky","backgroundColor","opacity","Finder","compacted","icon","storage","onSubmit","Filters","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","onFilters","onMapView","onSelect","Cards","select","items","_ref2","index","item","Item","filterItem","taxesType","concat","el","selected","onCancellationInfo","rate","onMoreInfo","onOfferInfo","onPreview","onViewUrl","info","hotels","CardHotel","Unavailability","Notification","error","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","Footer","ModalItemInfo","onClose","ModalCancellationInfo","ModalItemUrl","ModalOfferInfo","ModalExtras","onCancel","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","ModalMapView","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 { Notification, Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport {\n CardHotel,\n ClubRate,\n Filters,\n Item,\n ModalCancellationInfo,\n ModalExtras,\n ModalItemInfo,\n ModalItemUrl,\n ModalMapView,\n ModalOfferInfo,\n} from './components';\nimport {\n filterItem,\n getCheckoutParams,\n getFeatures,\n getFinderParams,\n getForwarderUrl,\n getMetaBoard,\n select,\n signout,\n trackDataSource,\n trackSelectItem,\n} from './helpers';\nimport { FEATURES, NOTIFICATION, UTM_SOURCE_NAME } from './Rates.constants';\nimport { Content } from './Rates.Content';\nimport { Footer as RatesFooter } 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 { ERROR } from '../../Core.constants';\nimport { debounce, fetchUrlParams } from '../../helpers';\nimport { ServiceRates } from '../../services';\nimport { Cards, Footer } from '../__shared__';\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 { isDesktop, isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const refItems = useRef({});\n const {\n set,\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: { meta: metaCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const [cancellationInfo, setCancellationInfo] = useState();\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 [filters, setFilters] = useState({});\n const [itemInfo, setItemInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [itemPreview, setItemPreview] = useState();\n const [login, setLogin] = useState(false);\n const [mapView, setMapView] = useState();\n const [offerInfo, setOfferInfo] = useState();\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n const [strictSearch, setStrictSearch] = useState();\n\n const { calendar = [], occupation = [], place } = finder;\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => {\n Event.subscribe(EVENT.RATES_FILTER_CLUB, handleClubDiscount);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, handleClubDiscount);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [login]);\n\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n // -- hooks ----------------------------------------------------------------------------------------------------------\n useEffect(() => {\n if (!dataSource || !metaCart.length) return;\n\n getMetaBoard({ cart, dataSource, metaCart })\n .then((board) => {\n const notification = board ? L10N.NOTIFICATION_META_RATE_FOUND : L10N.NOTIFICATION_META_RATE_NOT_FOUND;\n const { utm_source } = urlParams;\n\n Event.publish(EVENT.NOTIFICATION, {\n contrast: true,\n defaultMessage: translate(notification, { utm_source: UTM_SOURCE_NAME[utm_source] || utm_source }),\n });\n if (board) handleSelect(board);\n })\n .catch(() => set({ rates: undefined }));\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, metaCart]);\n\n useEffect(() => {\n if (!clubDiscount && !currency && !session && strictSearch === undefined) return;\n\n if (clubDiscount && loginShown) loginShown = false;\n !login && setCart([]);\n setRoom(undefined);\n debounceFetch();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clubDiscount, currency, session, strictSearch]);\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 scrollTo(offsetTop + (isMobile ? offsetHeight : 0));\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 && (!responseError || !responseError.tracking)) || room) return;\n\n trackDataSource({\n ...(dataSource || responseError),\n isMobile,\n occupation,\n place,\n urlParams: fetchUrlParams(location.search),\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, responseError]);\n\n // -- methods --------------------------------------------------------------------------------------------------------\n const fetch = async (room, nextOccupation = occupation, nextPromocode = finder.promocode) => {\n if (skeleton) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n setFetching(true);\n setResponseError();\n\n // ! TODO: [MF-2005] Use helper fetchRates() within <Rates>\n let urlParams = fetchUrlParams(location.search);\n if (!urlParams.checkin || !urlParams.nights || !urlParams.parties) {\n urlParams = { ...urlParams, ...getFinderParams({ ...finder, hotel }) };\n replaceUrlParams(urlParams);\n }\n\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) return signout({ club, language });\n\n if (nextDataSource) {\n const { notifications = [] } = nextDataSource;\n\n if (notifications.includes(NOTIFICATION.PROMOCODE_NOT_FOUND) && nextPromocode) {\n Event.publish(EVENT.NOTIFICATION, {\n contrast: true,\n defaultMessage: translate(L10N.NOTIFICATION_PROMOCODE_NOT_FOUND, { promocode: nextPromocode }),\n });\n set({ finder: { calendar, occupation, place, promocode: '' } });\n }\n if (nextOccupation?.length > 1 && room === undefined) setRoom(0);\n }\n\n setDataSource(nextDataSource);\n\n setFetching(false);\n };\n\n const debounceFetch = debounce(fetch, 60);\n\n // -- handlers -------------------------------------------------------------------------------------------------------\n const handleClubDiscount = async (next) => {\n setClubDiscount(next);\n login && setLogin(false);\n };\n\n const handleFilters = (next = {}) => {\n const { clubDiscount: nextClubDiscount, strictSearch: nextStrictSearch } = next;\n\n setCart([]);\n setRoom(undefined);\n setFilters(next);\n\n if (clubDiscount !== nextClubDiscount) setClubDiscount(nextClubDiscount);\n if (strictSearch !== nextStrictSearch) setStrictSearch(nextStrictSearch);\n };\n\n const handleFinder = (values = {}) => {\n setCart([]);\n setDataSource(undefined);\n setItemPreview(undefined);\n setRoom();\n scrollTo(0);\n\n replaceUrlParams(getFinderParams({ ...values, hotel }));\n debounceFetch(undefined, values.occupation, values.promocode);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n if (board) {\n scrollToRoom(board.roomId);\n\n trackSelectItem({\n ...dataSource,\n board,\n cart: nextCart,\n isMobile,\n occupation,\n urlParams: fetchUrlParams(location.search),\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 (multiRoom && !board) set({ rates: undefined });\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 const { extras = [] } =\n (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 handleCloseLogin = () => {\n loginShown = false;\n multiRoom ? setLogin(false) : handleSelect();\n };\n\n const scrollTo = (value = 0) => window.scrollTo({ top: value, behavior: 'smooth' });\n\n const scrollToRoom = (roomId) => {\n const { top } = refItems?.current[roomId]?.getBoundingClientRect() || {};\n\n if (top) scrollTo(top + window.scrollY - (isMobile ? 16 : 16 * 5));\n };\n\n const { contentBackground } = Theme.get();\n const multiRoom = occupation?.length > 1 || metaCart.length > 0;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n const { showPreviewPrice, ...features } = getFeatures(hotel.id, urlParams, { isDesktop, isMobile }, multiRoom);\n\n return (\n <>\n <Header currency login={club.active} name={ServiceFeatures.get(FEATURES.SHOW_NAME_IN_HEADER, hotel.id)} />\n\n <View\n ref={refRoomSelector}\n row={isMobile}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder compacted icon storage={false} onSubmit={handleFinder} />\n {isMobile && (response || (multiRoom && !responseError)) && (\n <Filters {...dataSource} onSubmit={handleFilters} />\n )}\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} skeleton={skeleton} />}\n\n {(response || (multiRoom && !responseError)) && (\n <RatesHeader\n {...{ dataSource, multiRoom, onFilters: handleFilters, onMapView: setMapView, onSelect: handleSelect }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </RatesHeader>\n )}\n\n {response ? (\n <Cards>\n {select(dataSource.items, filters)?.map(({ id, ...item }, index) => (\n <Item\n {...{\n ...filterItem(item, filters),\n cart,\n features,\n filters,\n id,\n multiRoom,\n nights,\n room,\n taxesType: dataSource.taxesType,\n }}\n key={`${id || index}:${fetching}:${width}`}\n ref={(el) => (refItems.current[id] = el)}\n selected={cart[room || 0]}\n onCancellationInfo={(rate) => setCancellationInfo({ ...rate, name: item.name })}\n onMoreInfo={() => setItemInfo(item)}\n onOfferInfo={(rate) => setOfferInfo(rate)}\n onPreview={showPreviewPrice && !multiRoom ? setItemPreview : undefined}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} nights={nights} />\n ))}\n </Cards>\n ) : responseError ? (\n responseError.hotel ? (\n <Unavailability {...responseError} nights={nights} onMapView={setMapView} />\n ) : (\n <Notification error large className={style.error}>\n {translate(L10N.NOTIFICATION_ERROR[responseError.code || ERROR.UNKNOWN])}\n </Notification>\n )\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n <RatesFooter\n {...{ cart: multiRoom ? cart : [itemPreview], dataSource, extras, login, multiRoom, occupation }}\n onSubmit={() => (multiRoom ? handleSubmit(cart) : handleSelect(itemPreview))}\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 <ModalCancellationInfo\n {...cancellationInfo}\n visible={!!cancellationInfo}\n onClose={() => setCancellationInfo()}\n />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalOfferInfo {...{ ...offerInfo }} visible={!!offerInfo} onClose={() => setOfferInfo()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\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={handleCloseLogin}\n onSuccess={() => handleSubmit(cart)}\n >\n <ClubRate onCancel={() => handleClubDiscount(false)} onSubmit={() => handleSubmit(cart)} />\n </ModalLogin>\n )}\n </>\n )}\n\n <ModalMapView items={mapView} nights={nights} visible={!!mapView} onClose={() => setMapView()} />\n\n <Footer />\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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"}
|
|
@@ -36,7 +36,8 @@ const CardHotel = _ref => {
|
|
|
36
36
|
nights = 1,
|
|
37
37
|
price,
|
|
38
38
|
stars,
|
|
39
|
-
taxes
|
|
39
|
+
taxes,
|
|
40
|
+
unavailability
|
|
40
41
|
} = _ref;
|
|
41
42
|
const {
|
|
42
43
|
isMobile,
|
|
@@ -154,7 +155,7 @@ const CardHotel = _ref => {
|
|
|
154
155
|
}, Array.from({
|
|
155
156
|
length: stars
|
|
156
157
|
}, () => '★')), /*#__PURE__*/_react.default.createElement(_ui.Text, caption, location), url && /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
157
|
-
href: (0, _helpers.getHotelUrl)(url),
|
|
158
|
+
href: unavailability ? (0, _helpers.getHotelUrl)(url) : url,
|
|
158
159
|
small: isMobile,
|
|
159
160
|
target: "_blank"
|
|
160
161
|
}, translate(_CardHotel.L10N.ACTION_VIEW_HOTEL))), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
@@ -205,6 +206,7 @@ CardHotel.propTypes = {
|
|
|
205
206
|
nights: _propTypes.default.number,
|
|
206
207
|
price: _propTypes.default.number,
|
|
207
208
|
stars: _propTypes.default.number,
|
|
208
|
-
taxes: _propTypes.default.number
|
|
209
|
+
taxes: _propTypes.default.number,
|
|
210
|
+
unavailability: _propTypes.default.bool
|
|
209
211
|
};
|
|
210
212
|
//# sourceMappingURL=CardHotel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardHotel.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_CardHotel","style","_helpers","_helpers2","_shared__","_helpers3","_helpers4","_components","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DEFAULT_WIDTH","CardHotel","_ref","discountPercentage","features","distance","location","url","hasDiscountClub","id","images","name","nights","price","stars","taxes","isMobile","width","useDevice","locale","translate","useLocale","ref","useRef","value","currency","finder","forwarder","hotel","hotelId","tags","options","places","useStore","sliderWidth","setSliderWidth","useState","useEffect","_ref$current","current","clientWidth","handlePress","find","isHotel","ids","arguments","length","undefined","includes","toString","window","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","place","idtokenprovider","caption","action","small","placeId","title","placeName","hotelName","createElement","Card","View","className","card","preview","Slider","height","slider","row","Text","bold","L10N","LABEL_CLUB_MEMBERS","offset","spaceBetween","Icon","ICON","LOCATION","LABEL_DISTANCE","Intl","NumberFormat","unit","minimumFractionDigits","maximumFractionDigits","format","headline","level","Array","from","Action","getHotelUrl","target","ACTION_VIEW_HOTEL","summary","accent","LABEL_DISCOUNT","currencyFormat","tiny","LABEL_PER_NIGHT","light","getLabelTaxes","Button","onPress","ACTION_VIEW_MORE","exports","displayName","propTypes","PropTypes","number","shape","string","bool","oneOfType","arrayOf"],"sources":["../../../../../src/components/Rates/components/CardHotel/CardHotel.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './CardHotel.l10n';\nimport * as style from './CardHotel.module.css';\nimport { getHotelUrl } from './helpers';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { ICON, toUrlParams } from '../../../helpers';\nimport { getFinderParams, getLabelTaxes } from '../../helpers';\nimport { Slider } from '../Item/components';\n\nconst DEFAULT_WIDTH = 374;\n\nconst CardHotel = ({\n discountPercentage = 0,\n features: { distance, location, url } = {},\n hasDiscountClub = false,\n id,\n images = [],\n name,\n nights = 1,\n price,\n stars,\n taxes,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const ref = useRef(null);\n const { value: { currency, finder, forwarder = {}, hotel, id: hotelId, tags: { options: places = [] } = {} } = {} } =\n useStore();\n\n const [sliderWidth, setSliderWidth] = useState(DEFAULT_WIDTH);\n\n useEffect(() => {\n if (ref.current) setSliderWidth(ref.current?.clientWidth - 1);\n }, [width]);\n\n const handlePress = () => {\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n\n window.location.href = `${forwarder.rates}${toUrlParams({\n ...fetchUrlParams(window.location.search),\n ...getFinderParams({ ...finder, ...{ place: { id: undefined, value } }, hotel }),\n idtokenprovider: id,\n })}`;\n };\n\n const caption = { action: !isMobile, small: isMobile };\n const { features } = hotel || {};\n const { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = finder || {};\n const { name: hotelName } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[hotelId]) || {};\n\n return (\n <Card>\n <View ref={ref} className={style.card}>\n <View className={style.preview}>\n <Slider height={208} images={images} width={sliderWidth} className={style.slider} />\n\n <View row className={style.tags}>\n {hasDiscountClub && (\n <Text bold small>\n {translate(L10N.LABEL_CLUB_MEMBERS)}\n </Text>\n )}\n </View>\n </View>\n\n {distance && (\n <View row className={[style.offset, style.spaceBetween]}>\n <View row className={style.row}>\n <Icon value={ICON.LOCATION} />\n <Text small>\n {translate(L10N.LABEL_DISTANCE, {\n distance: Intl.NumberFormat(locale, {\n style: 'unit',\n unit: 'kilometer',\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }).format(distance),\n name: hotelName,\n })}\n </Text>\n </View>\n </View>\n )}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {name}\n </Text>\n {stars > 0 && (\n <Text headline={!isMobile} level={3}>\n {Array.from({ length: stars }, () => '★')}\n </Text>\n )}\n\n <Text {...caption}>{location}</Text>\n\n {url && (\n <Action href={getHotelUrl(url)} small={isMobile} target=\"_blank\">\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.summary]}>\n <View>\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n\n <Text small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxes))}\n </Text>\n </View>\n\n <Button onPress={handlePress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n </View>\n </Card>\n );\n};\n\nCardHotel.displayName = 'Mirai:Core:Rates:CardHotel';\n\nCardHotel.propTypes = {\n discountPercentage: PropTypes.number,\n features: PropTypes.shape({\n distance: PropTypes.string,\n location: PropTypes.string,\n url: PropTypes.string,\n }),\n hasDiscountClub: PropTypes.bool,\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n images: PropTypes.arrayOf(PropTypes.string),\n name: PropTypes.string,\n nights: PropTypes.number,\n price: PropTypes.number,\n stars: PropTypes.number,\n taxes: PropTypes.number,\n};\n\nexport { CardHotel };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CardHotel.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_CardHotel","style","_helpers","_helpers2","_shared__","_helpers3","_helpers4","_components","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DEFAULT_WIDTH","CardHotel","_ref","discountPercentage","features","distance","location","url","hasDiscountClub","id","images","name","nights","price","stars","taxes","unavailability","isMobile","width","useDevice","locale","translate","useLocale","ref","useRef","value","currency","finder","forwarder","hotel","hotelId","tags","options","places","useStore","sliderWidth","setSliderWidth","useState","useEffect","_ref$current","current","clientWidth","handlePress","find","isHotel","ids","arguments","length","undefined","includes","toString","window","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","place","idtokenprovider","caption","action","small","placeId","title","placeName","hotelName","createElement","Card","View","className","card","preview","Slider","height","slider","row","Text","bold","L10N","LABEL_CLUB_MEMBERS","offset","spaceBetween","Icon","ICON","LOCATION","LABEL_DISTANCE","Intl","NumberFormat","unit","minimumFractionDigits","maximumFractionDigits","format","headline","level","Array","from","Action","getHotelUrl","target","ACTION_VIEW_HOTEL","summary","accent","LABEL_DISCOUNT","currencyFormat","tiny","LABEL_PER_NIGHT","light","getLabelTaxes","Button","onPress","ACTION_VIEW_MORE","exports","displayName","propTypes","PropTypes","number","shape","string","bool","oneOfType","arrayOf"],"sources":["../../../../../src/components/Rates/components/CardHotel/CardHotel.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './CardHotel.l10n';\nimport * as style from './CardHotel.module.css';\nimport { getHotelUrl } from './helpers';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { ICON, toUrlParams } from '../../../helpers';\nimport { getFinderParams, getLabelTaxes } from '../../helpers';\nimport { Slider } from '../Item/components';\n\nconst DEFAULT_WIDTH = 374;\n\nconst CardHotel = ({\n discountPercentage = 0,\n features: { distance, location, url } = {},\n hasDiscountClub = false,\n id,\n images = [],\n name,\n nights = 1,\n price,\n stars,\n taxes,\n unavailability,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const ref = useRef(null);\n const { value: { currency, finder, forwarder = {}, hotel, id: hotelId, tags: { options: places = [] } = {} } = {} } =\n useStore();\n\n const [sliderWidth, setSliderWidth] = useState(DEFAULT_WIDTH);\n\n useEffect(() => {\n if (ref.current) setSliderWidth(ref.current?.clientWidth - 1);\n }, [width]);\n\n const handlePress = () => {\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n\n window.location.href = `${forwarder.rates}${toUrlParams({\n ...fetchUrlParams(window.location.search),\n ...getFinderParams({ ...finder, ...{ place: { id: undefined, value } }, hotel }),\n idtokenprovider: id,\n })}`;\n };\n\n const caption = { action: !isMobile, small: isMobile };\n const { features } = hotel || {};\n const { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = finder || {};\n const { name: hotelName } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[hotelId]) || {};\n\n return (\n <Card>\n <View ref={ref} className={style.card}>\n <View className={style.preview}>\n <Slider height={208} images={images} width={sliderWidth} className={style.slider} />\n\n <View row className={style.tags}>\n {hasDiscountClub && (\n <Text bold small>\n {translate(L10N.LABEL_CLUB_MEMBERS)}\n </Text>\n )}\n </View>\n </View>\n\n {distance && (\n <View row className={[style.offset, style.spaceBetween]}>\n <View row className={style.row}>\n <Icon value={ICON.LOCATION} />\n <Text small>\n {translate(L10N.LABEL_DISTANCE, {\n distance: Intl.NumberFormat(locale, {\n style: 'unit',\n unit: 'kilometer',\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }).format(distance),\n name: hotelName,\n })}\n </Text>\n </View>\n </View>\n )}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {name}\n </Text>\n {stars > 0 && (\n <Text headline={!isMobile} level={3}>\n {Array.from({ length: stars }, () => '★')}\n </Text>\n )}\n\n <Text {...caption}>{location}</Text>\n\n {url && (\n <Action href={unavailability ? getHotelUrl(url) : url} small={isMobile} target=\"_blank\">\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.summary]}>\n <View>\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n\n <Text small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxes))}\n </Text>\n </View>\n\n <Button onPress={handlePress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n </View>\n </Card>\n );\n};\n\nCardHotel.displayName = 'Mirai:Core:Rates:CardHotel';\n\nCardHotel.propTypes = {\n discountPercentage: PropTypes.number,\n features: PropTypes.shape({\n distance: PropTypes.string,\n location: PropTypes.string,\n url: PropTypes.string,\n }),\n hasDiscountClub: PropTypes.bool,\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n images: PropTypes.arrayOf(PropTypes.string),\n name: PropTypes.string,\n nights: PropTypes.number,\n price: PropTypes.number,\n stars: PropTypes.number,\n taxes: PropTypes.number,\n unavailability: PropTypes.bool,\n};\n\nexport { CardHotel };\n"],"mappings":"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"}
|
|
@@ -44,13 +44,13 @@ const filterItem = function () {
|
|
|
44
44
|
return validate(cancellationId);
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
if (board || maxPrice || minPrice) {
|
|
47
|
+
if (board !== undefined || maxPrice || minPrice) {
|
|
48
48
|
boards = boards.filter(function () {
|
|
49
49
|
let {
|
|
50
50
|
price,
|
|
51
51
|
type
|
|
52
52
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
53
|
-
return (
|
|
53
|
+
return (board === undefined || type === board) && (!minPrice || price >= minPrice) && (!maxPrice || price <= maxPrice);
|
|
54
54
|
});
|
|
55
55
|
const cancellationIds = boards.map(function () {
|
|
56
56
|
let {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterItem.js","names":["_Rates","require","filterItem","item","arguments","length","undefined","board","freeCancellation","priceRange","max","maxPrice","min","minPrice","boards","cancellations","rates","validate","id","toLowerCase","includes","FREE_CANCELLATION","filter","cancellationId","price","type","cancellationIds","map","rateIds","rateId","exports"],"sources":["../../../../src/components/Rates/helpers/filterItem.js"],"sourcesContent":["import { FREE_CANCELLATION } from '../Rates.constants';\n\nexport const filterItem = (\n item = {},\n { board, freeCancellation = false, priceRange: { max: maxPrice, min: minPrice } = {} } = {},\n) => {\n let { boards = [], cancellations = [], rates = [] } = item;\n\n if (freeCancellation) {\n const validate = (id = '') => id.toLowerCase().includes(FREE_CANCELLATION);\n\n cancellations = cancellations.filter(({ id } = {}) => validate(id));\n rates = rates.filter(({ cancellationId } = {}) => validate(cancellationId));\n boards = boards.filter(({ cancellationId } = {}) => validate(cancellationId));\n }\n\n if (board || maxPrice || minPrice) {\n boards = boards.filter(\n ({ price, type } = {}) =>\n (
|
|
1
|
+
{"version":3,"file":"filterItem.js","names":["_Rates","require","filterItem","item","arguments","length","undefined","board","freeCancellation","priceRange","max","maxPrice","min","minPrice","boards","cancellations","rates","validate","id","toLowerCase","includes","FREE_CANCELLATION","filter","cancellationId","price","type","cancellationIds","map","rateIds","rateId","exports"],"sources":["../../../../src/components/Rates/helpers/filterItem.js"],"sourcesContent":["import { FREE_CANCELLATION } from '../Rates.constants';\n\nexport const filterItem = (\n item = {},\n { board, freeCancellation = false, priceRange: { max: maxPrice, min: minPrice } = {} } = {},\n) => {\n let { boards = [], cancellations = [], rates = [] } = item;\n\n if (freeCancellation) {\n const validate = (id = '') => id.toLowerCase().includes(FREE_CANCELLATION);\n\n cancellations = cancellations.filter(({ id } = {}) => validate(id));\n rates = rates.filter(({ cancellationId } = {}) => validate(cancellationId));\n boards = boards.filter(({ cancellationId } = {}) => validate(cancellationId));\n }\n\n if (board !== undefined || maxPrice || minPrice) {\n boards = boards.filter(\n ({ price, type } = {}) =>\n (board === undefined || type === board) && (!minPrice || price >= minPrice) && (!maxPrice || price <= maxPrice),\n );\n\n const cancellationIds = boards.map(({ cancellationId } = {}) => cancellationId);\n const rateIds = boards.map(({ rateId } = {}) => rateId);\n cancellations = cancellations.filter(({ id } = {}) => cancellationIds.includes(id));\n rates = rates.filter(({ id } = {}) => rateIds.includes(id));\n }\n\n return { ...item, boards, cancellations, rates };\n};\n"],"mappings":"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"}
|