@mirai/core 0.3.141 → 0.3.143
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/components/Item/Item.Preview.js +2 -1
- package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
- package/build/components/Rates/components/Item/Item.l10n.js +3 -0
- package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/Item.module.css +5 -0
- package/build/components/Rates/components/Item/components/Amenities/Amenities.js +13 -9
- package/build/components/Rates/components/Item/components/Amenities/Amenities.js.map +1 -1
- package/build/components/Rates/components/Item/components/Amenities/Amenities.module.css +17 -16
- package/build/components/Rates/components/Item/components/Features/Features.js +20 -5
- package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
- package/build/components/Rates/components/Item/components/Features/Features.module.css +2 -2
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +48 -22
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.module.css +9 -10
- package/build/components/Rates/components/Item/components/Slider/Slider.js +3 -2
- package/build/components/Rates/components/Item/components/Slider/Slider.js.map +1 -1
- package/build/components/Rates/components/Item/components/Slider/Slider.module.css +0 -2
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +7 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +6 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +4 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response.json +3 -1
- package/build/services/Rates/helpers/getOccupationSuggestions.js +28 -5
- package/build/services/Rates/helpers/getOccupationSuggestions.js.map +1 -1
- package/build/services/Rates/helpers/getRooms.js +3 -3
- package/build/services/Rates/helpers/getRooms.js.map +1 -1
- package/build/services/Rates/rates.js +16 -1
- package/build/services/Rates/rates.js.map +1 -1
- package/package.json +1 -1
|
@@ -73,7 +73,8 @@ const Preview = _ref => {
|
|
|
73
73
|
media: media,
|
|
74
74
|
width: memoizedWidth,
|
|
75
75
|
onCounter: !isMobile ? onMoreInfo : undefined,
|
|
76
|
-
onViewUrl: onViewUrl
|
|
76
|
+
onViewUrl: onViewUrl,
|
|
77
|
+
className: style.slider
|
|
77
78
|
}), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
78
79
|
row: true,
|
|
79
80
|
className: [style.offset, style.spaceBetween, style.preview],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","memoizedWidth","Preview","_ref","availability","boards","cancellations","images","media","name","title","rates","selectedBoard","onMoreInfo","onRateInfo","onViewUrl","others","isMobile","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","caption","capitalize","action","small","createElement","View","Slider","height","map","_ref2","large","onCounter","undefined","row","className","offset","spaceBetween","preview","Features","compact","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","AMENITY","Pressable","onPress","cancellation","INFO","lighten","isClub","rate","LABEL_ONLY_MEMBERS","restrictions","warning","WARNING","Action","inline","concat","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Features, Slider } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\n\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n boards = [],\n cancellations = [],\n images = [],\n media,\n name: title,\n rates = [],\n selectedBoard = {},\n onMoreInfo,\n onRateInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { hotel: { warningAvailability = 9999 } } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - 1;\n }, [width]);\n\n const [uniqueRate] = rates.length === 1 ? rates : [];\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n\n return (\n <View ref={ref}>\n <Slider\n height={208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n />\n\n <View row className={[style.offset, style.spaceBetween, style.preview]} style={{ width: memoizedWidth }}>\n <Features {...others} compact />\n\n {availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n {boards.length === 1 && <Text {...caption}>{boards[0].name}</Text>}\n </>\n )}\n\n {cancellations.length === 1 && (\n <View>\n <View row>\n <Pressable\n onPress={() => onRateInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text capitalize lighten small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.isClub && (\n <View row>\n <Text bold action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n </View>\n )}\n\n {uniqueRate?.restrictions.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {item}\n </Text>\n </View>\n ))}\n\n <View row>\n <Action inline small={isMobile} onPress={onMoreInfo}>\n {`${translate(L10N.ACTION_MORE_INFO)} >`}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onMoreInfo: PropTypes.func,\n onRateInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","memoizedWidth","Preview","_ref","availability","boards","cancellations","images","media","name","title","rates","selectedBoard","onMoreInfo","onRateInfo","onViewUrl","others","isMobile","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","caption","capitalize","action","small","createElement","View","Slider","height","map","_ref2","large","onCounter","undefined","className","slider","row","offset","spaceBetween","preview","Features","compact","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","AMENITY","Pressable","onPress","cancellation","INFO","lighten","isClub","rate","LABEL_ONLY_MEMBERS","restrictions","warning","WARNING","Action","inline","concat","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Features, Slider } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\n\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n boards = [],\n cancellations = [],\n images = [],\n media,\n name: title,\n rates = [],\n selectedBoard = {},\n onMoreInfo,\n onRateInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { hotel: { warningAvailability = 9999 } } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - 1;\n }, [width]);\n\n const [uniqueRate] = rates.length === 1 ? rates : [];\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n\n return (\n <View ref={ref}>\n <Slider\n height={208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={[style.offset, style.spaceBetween, style.preview]} style={{ width: memoizedWidth }}>\n <Features {...others} compact />\n\n {availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n {boards.length === 1 && <Text {...caption}>{boards[0].name}</Text>}\n </>\n )}\n\n {cancellations.length === 1 && (\n <View>\n <View row>\n <Pressable\n onPress={() => onRateInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text capitalize lighten small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.isClub && (\n <View row>\n <Text bold action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n </View>\n )}\n\n {uniqueRate?.restrictions.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {item}\n </Text>\n </View>\n ))}\n\n <View row>\n <Action inline small={isMobile} onPress={onMoreInfo}>\n {`${translate(L10N.ACTION_MORE_INFO)} >`}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onMoreInfo: PropTypes.func,\n onRateInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item.l10n.js","names":["L10N","exports","ACTION_MORE_INFO","id","ACTION_RESERVE","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_PLAN","LABEL_BASE_PRICE","LABEL_BED_DISPOSITION","LABEL_BED_TYPE","LABEL_CANCELLATION_POLICY","LABEL_CLUB_MEMBERS","LABEL_DESELECT","LABEL_DISCOUNT","LABEL_DISCOUNT_INCLUDED","LABEL_DISCOUNT_TYPE","LABEL_EXTRAS","LABEL_FEES","LABEL_INCLUDED","LABEL_LIMITED_OFFER","LABEL_MORE_SERVICES","LABEL_OFFER","LABEL_ONLY_MEMBERS","LABEL_OR","LABEL_PAYMENT_TERMS","LABEL_PER_NIGHT","LABEL_PRICE_DETAILS","LABEL_REMAINING_ITEMS","LABEL_SELECT","LABEL_TAXES","LABEL_TOP_AMENITIES","LABEL_TOTAL","LABEL_WHATS_INCLUDED"],"sources":["../../../../../src/components/Rates/components/Item/Item.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_MORE_INFO: { id: 'common.action.more_info' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_PLAN: { id: 'finder.label.accommodation_plan' },\n LABEL_BASE_PRICE: { id: 'common.label.base_price' },\n LABEL_BED_DISPOSITION: { id: 'finder.label.bed_disposition' },\n LABEL_BED_TYPE: {\n 1: { id: 'finder.label.bed_type_single' },\n 2: { id: 'finder.label.bed_type_double' },\n },\n LABEL_CANCELLATION_POLICY: { id: 'common.label.cancellation_policy' },\n LABEL_CLUB_MEMBERS: { id: 'finder.label.club_members' },\n LABEL_DESELECT: { id: 'common.label.deselect' },\n LABEL_DISCOUNT: { id: 'finder.label.discount' },\n LABEL_DISCOUNT_INCLUDED: { id: 'finder.label.discount_included' },\n LABEL_DISCOUNT_TYPE: {\n 0: { id: 'finder.label.discount_club' },\n 1: { id: 'finder.label.discount_deal' },\n 2: { id: 'finder.label.discount_promotion' },\n },\n LABEL_EXTRAS: { id: 'common.label.extras' },\n LABEL_FEES: { id: 'finder.label.fees' },\n LABEL_INCLUDED: { id: 'common.label.included' },\n LABEL_LIMITED_OFFER: { id: 'finder.label.limited_offer' },\n LABEL_MORE_SERVICES: { id: 'finder.label.more_services' },\n LABEL_OFFER: { id: 'common.label.offer' },\n LABEL_ONLY_MEMBERS: { id: 'finder.label.only_members' },\n LABEL_OR: { id: 'common.label.or' },\n LABEL_PAYMENT_TERMS: { id: 'common.label.payment_terms' },\n LABEL_PER_NIGHT: { id: 'finder.label.per_night' },\n LABEL_PRICE_DETAILS: { id: 'finder.label.price_details' },\n LABEL_REMAINING_ITEMS: { id: 'finder.label.remaining_items' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_TAXES: { id: 'finder.label.taxes' },\n LABEL_TOP_AMENITIES: { id: 'finder.label.top_amenities' },\n LABEL_TOTAL: { id: 'common.label.total' },\n LABEL_WHATS_INCLUDED: { id: 'finder.label.whats_included' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,gBAAgB,EAAE;IAAEC,EAAE,EAAE;EAA0B,CAAC;EACnDC,cAAc,EAAE;IAAED,EAAE,EAAE;EAAwB,CAAC;EAC/CE,gBAAgB,EAAE;IAAEF,EAAE,EAAE;EAA0B,CAAC;EAEnDG,wBAAwB,EAAE;IAAEH,EAAE,EAAE;EAAkC,CAAC;EACnEI,gBAAgB,EAAE;IAAEJ,EAAE,EAAE;EAA0B,CAAC;EACnDK,qBAAqB,EAAE;IAAEL,EAAE,EAAE;EAA+B,CAAC;EAC7DM,cAAc,EAAE;IACd,CAAC,EAAE;MAAEN,EAAE,EAAE;IAA+B,CAAC;IACzC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAA+B;EAC1C,CAAC;EACDO,yBAAyB,EAAE;IAAEP,EAAE,EAAE;EAAmC,CAAC;EACrEQ,kBAAkB,EAAE;IAAER,EAAE,EAAE;EAA4B,CAAC;EACvDS,cAAc,EAAE;IAAET,EAAE,EAAE;EAAwB,CAAC;EAC/CU,cAAc,EAAE;IAAEV,EAAE,EAAE;EAAwB,CAAC;EAC/CW,uBAAuB,EAAE;IAAEX,EAAE,EAAE;EAAiC,CAAC;EACjEY,mBAAmB,EAAE;IACnB,CAAC,EAAE;MAAEZ,EAAE,EAAE;IAA6B,CAAC;IACvC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAA6B,CAAC;IACvC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAAkC;EAC7C,CAAC;EACDa,YAAY,EAAE;IAAEb,EAAE,EAAE;EAAsB,CAAC;EAC3Cc,UAAU,EAAE;IAAEd,EAAE,EAAE;EAAoB,CAAC;EACvCe,
|
|
1
|
+
{"version":3,"file":"Item.l10n.js","names":["L10N","exports","ACTION_MORE_INFO","id","ACTION_RESERVE","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_PLAN","LABEL_BASE_PRICE","LABEL_BED_DISPOSITION","LABEL_BED_TYPE","LABEL_CANCELLATION_POLICY","LABEL_CLUB_MEMBERS","LABEL_DESELECT","LABEL_DISCOUNT","LABEL_DISCOUNT_INCLUDED","LABEL_DISCOUNT_TYPE","LABEL_EXTRAS","LABEL_FEES","LABEL_GUEST_TYPES","LABEL_INCLUDED","LABEL_LIMITED_OFFER","LABEL_MORE_SERVICES","LABEL_OFFER","LABEL_ONLY_MEMBERS","LABEL_OR","LABEL_PAYMENT_TERMS","LABEL_PER_NIGHT","LABEL_PRICE_DETAILS","LABEL_REMAINING_ITEMS","LABEL_SELECT","LABEL_TAXES","LABEL_TOP_AMENITIES","LABEL_TOTAL","LABEL_WHATS_INCLUDED"],"sources":["../../../../../src/components/Rates/components/Item/Item.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_MORE_INFO: { id: 'common.action.more_info' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_PLAN: { id: 'finder.label.accommodation_plan' },\n LABEL_BASE_PRICE: { id: 'common.label.base_price' },\n LABEL_BED_DISPOSITION: { id: 'finder.label.bed_disposition' },\n LABEL_BED_TYPE: {\n 1: { id: 'finder.label.bed_type_single' },\n 2: { id: 'finder.label.bed_type_double' },\n },\n LABEL_CANCELLATION_POLICY: { id: 'common.label.cancellation_policy' },\n LABEL_CLUB_MEMBERS: { id: 'finder.label.club_members' },\n LABEL_DESELECT: { id: 'common.label.deselect' },\n LABEL_DISCOUNT: { id: 'finder.label.discount' },\n LABEL_DISCOUNT_INCLUDED: { id: 'finder.label.discount_included' },\n LABEL_DISCOUNT_TYPE: {\n 0: { id: 'finder.label.discount_club' },\n 1: { id: 'finder.label.discount_deal' },\n 2: { id: 'finder.label.discount_promotion' },\n },\n LABEL_EXTRAS: { id: 'common.label.extras' },\n LABEL_FEES: { id: 'finder.label.fees' },\n LABEL_GUEST_TYPES: { id: 'common.label.guest_types' },\n LABEL_INCLUDED: { id: 'common.label.included' },\n LABEL_LIMITED_OFFER: { id: 'finder.label.limited_offer' },\n LABEL_MORE_SERVICES: { id: 'finder.label.more_services' },\n LABEL_OFFER: { id: 'common.label.offer' },\n LABEL_ONLY_MEMBERS: { id: 'finder.label.only_members' },\n LABEL_OR: { id: 'common.label.or' },\n LABEL_PAYMENT_TERMS: { id: 'common.label.payment_terms' },\n LABEL_PER_NIGHT: { id: 'finder.label.per_night' },\n LABEL_PRICE_DETAILS: { id: 'finder.label.price_details' },\n LABEL_REMAINING_ITEMS: { id: 'finder.label.remaining_items' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_TAXES: { id: 'finder.label.taxes' },\n LABEL_TOP_AMENITIES: { id: 'finder.label.top_amenities' },\n LABEL_TOTAL: { id: 'common.label.total' },\n LABEL_WHATS_INCLUDED: { id: 'finder.label.whats_included' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,gBAAgB,EAAE;IAAEC,EAAE,EAAE;EAA0B,CAAC;EACnDC,cAAc,EAAE;IAAED,EAAE,EAAE;EAAwB,CAAC;EAC/CE,gBAAgB,EAAE;IAAEF,EAAE,EAAE;EAA0B,CAAC;EAEnDG,wBAAwB,EAAE;IAAEH,EAAE,EAAE;EAAkC,CAAC;EACnEI,gBAAgB,EAAE;IAAEJ,EAAE,EAAE;EAA0B,CAAC;EACnDK,qBAAqB,EAAE;IAAEL,EAAE,EAAE;EAA+B,CAAC;EAC7DM,cAAc,EAAE;IACd,CAAC,EAAE;MAAEN,EAAE,EAAE;IAA+B,CAAC;IACzC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAA+B;EAC1C,CAAC;EACDO,yBAAyB,EAAE;IAAEP,EAAE,EAAE;EAAmC,CAAC;EACrEQ,kBAAkB,EAAE;IAAER,EAAE,EAAE;EAA4B,CAAC;EACvDS,cAAc,EAAE;IAAET,EAAE,EAAE;EAAwB,CAAC;EAC/CU,cAAc,EAAE;IAAEV,EAAE,EAAE;EAAwB,CAAC;EAC/CW,uBAAuB,EAAE;IAAEX,EAAE,EAAE;EAAiC,CAAC;EACjEY,mBAAmB,EAAE;IACnB,CAAC,EAAE;MAAEZ,EAAE,EAAE;IAA6B,CAAC;IACvC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAA6B,CAAC;IACvC,CAAC,EAAE;MAAEA,EAAE,EAAE;IAAkC;EAC7C,CAAC;EACDa,YAAY,EAAE;IAAEb,EAAE,EAAE;EAAsB,CAAC;EAC3Cc,UAAU,EAAE;IAAEd,EAAE,EAAE;EAAoB,CAAC;EACvCe,iBAAiB,EAAE;IAAEf,EAAE,EAAE;EAA2B,CAAC;EACrDgB,cAAc,EAAE;IAAEhB,EAAE,EAAE;EAAwB,CAAC;EAC/CiB,mBAAmB,EAAE;IAAEjB,EAAE,EAAE;EAA6B,CAAC;EACzDkB,mBAAmB,EAAE;IAAElB,EAAE,EAAE;EAA6B,CAAC;EACzDmB,WAAW,EAAE;IAAEnB,EAAE,EAAE;EAAqB,CAAC;EACzCoB,kBAAkB,EAAE;IAAEpB,EAAE,EAAE;EAA4B,CAAC;EACvDqB,QAAQ,EAAE;IAAErB,EAAE,EAAE;EAAkB,CAAC;EACnCsB,mBAAmB,EAAE;IAAEtB,EAAE,EAAE;EAA6B,CAAC;EACzDuB,eAAe,EAAE;IAAEvB,EAAE,EAAE;EAAyB,CAAC;EACjDwB,mBAAmB,EAAE;IAAExB,EAAE,EAAE;EAA6B,CAAC;EACzDyB,qBAAqB,EAAE;IAAEzB,EAAE,EAAE;EAA+B,CAAC;EAC7D0B,YAAY,EAAE;IAAE1B,EAAE,EAAE;EAAsB,CAAC;EAC3C2B,WAAW,EAAE;IAAE3B,EAAE,EAAE;EAAqB,CAAC;EACzC4B,mBAAmB,EAAE;IAAE5B,EAAE,EAAE;EAA6B,CAAC;EACzD6B,WAAW,EAAE;IAAE7B,EAAE,EAAE;EAAqB,CAAC;EACzC8B,oBAAoB,EAAE;IAAE9B,EAAE,EAAE;EAA8B;AAC5D,CAAC"}
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
overflow: hidden;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
+
.slider {
|
|
48
|
+
border-top-left-radius: var(--mirai-ui-border-radius);
|
|
49
|
+
border-top-right-radius: var(--mirai-ui-border-radius);
|
|
50
|
+
}
|
|
51
|
+
|
|
47
52
|
/* -- <Item.Rates> -------------------------------------------------------------------------------------------------- */
|
|
48
53
|
.card > *:nth-last-child(2) {
|
|
49
54
|
flex: 1;
|
|
@@ -14,6 +14,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
const Amenities = _ref => {
|
|
16
16
|
let {
|
|
17
|
+
accent = false,
|
|
17
18
|
amenities = [],
|
|
18
19
|
highlight = false,
|
|
19
20
|
preview = false,
|
|
@@ -26,9 +27,10 @@ const Amenities = _ref => {
|
|
|
26
27
|
let item = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
27
28
|
return !highlight && !item.highlight || highlight && item.highlight;
|
|
28
29
|
}).slice(0, preview ? 3 : undefined);
|
|
30
|
+
const oversized = highlight && !preview && !isMobile;
|
|
29
31
|
return values.length ? /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
30
|
-
row:
|
|
31
|
-
className: (0, _ui.styles)(highlight ?
|
|
32
|
+
row: oversized,
|
|
33
|
+
className: (0, _ui.styles)(highlight ? oversized ? style.oversized : style.list : style.columns, others.className)
|
|
32
34
|
}, values.map(function () {
|
|
33
35
|
let {
|
|
34
36
|
id,
|
|
@@ -37,24 +39,26 @@ const Amenities = _ref => {
|
|
|
37
39
|
let index = arguments.length > 1 ? arguments[1] : undefined;
|
|
38
40
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
39
41
|
key: index,
|
|
40
|
-
row:
|
|
42
|
+
row: !oversized,
|
|
41
43
|
className: style.content
|
|
42
44
|
}, highlight || preview ? /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
45
|
+
accent: accent,
|
|
43
46
|
value: _helpers.ICON[id] || _helpers.ICON.AMENITY,
|
|
44
47
|
headline: true,
|
|
45
|
-
level:
|
|
48
|
+
level: oversized ? 1 : 3
|
|
46
49
|
}) : /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
47
50
|
small: true
|
|
48
51
|
}, "\u2022"), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
49
|
-
|
|
50
|
-
small: !
|
|
51
|
-
|
|
52
|
-
className: (0, _ui.styles)(style.text, !
|
|
53
|
-
}, text.substring(0,
|
|
52
|
+
action: !oversized && !isMobile,
|
|
53
|
+
small: !oversized && isMobile,
|
|
54
|
+
tiny: oversized,
|
|
55
|
+
className: (0, _ui.styles)(style.text, !oversized && preview && style.textSingleLine)
|
|
56
|
+
}, text.substring(0, oversized ? 24 : undefined).trim()));
|
|
54
57
|
})) : null;
|
|
55
58
|
};
|
|
56
59
|
exports.Amenities = Amenities;
|
|
57
60
|
Amenities.propTypes = {
|
|
61
|
+
accent: _propTypes.default.bool,
|
|
58
62
|
amenities: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
59
63
|
exclusive: _propTypes.default.bool,
|
|
60
64
|
highlight: _propTypes.default.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Amenities.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","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","Amenities","_ref","amenities","highlight","preview","others","isMobile","useDevice","values","filter","item","arguments","length","undefined","slice","createElement","View","row","className","styles","columns","map","id","text","index","key","content","Icon","value","ICON","AMENITY","headline","level","Text","small","
|
|
1
|
+
{"version":3,"file":"Amenities.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","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","Amenities","_ref","accent","amenities","highlight","preview","others","isMobile","useDevice","values","filter","item","arguments","length","undefined","slice","oversized","createElement","View","row","className","styles","list","columns","map","id","text","index","key","content","Icon","value","ICON","AMENITY","headline","level","Text","small","action","tiny","textSingleLine","substring","trim","exports","propTypes","PropTypes","bool","arrayOf","shape","exclusive","number","string","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Amenities/Amenities.jsx"],"sourcesContent":["import { Icon, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './Amenities.module.css';\nimport { ICON } from '../../../../../helpers';\n\nconst Amenities = ({ accent = false, amenities = [], highlight = false, preview = false, ...others }) => {\n const { isMobile } = useDevice();\n\n const values = amenities\n .filter((item = {}) => (!highlight && !item.highlight) || (highlight && item.highlight))\n .slice(0, preview ? 3 : undefined);\n\n const oversized = highlight && !preview && !isMobile;\n\n return values.length ? (\n <View\n row={oversized}\n className={styles(highlight ? (oversized ? style.oversized : style.list) : style.columns, others.className)}\n >\n {values.map(({ id, text } = {}, index) => (\n <View key={index} row={!oversized} className={style.content}>\n {highlight || preview ? (\n <Icon accent={accent} value={ICON[id] || ICON.AMENITY} headline level={oversized ? 1 : 3} />\n ) : (\n <Text small>•</Text>\n )}\n <Text\n action={!oversized && !isMobile}\n small={!oversized && isMobile}\n tiny={oversized}\n className={styles(style.text, !oversized && preview && style.textSingleLine)}\n >\n {text.substring(0, oversized ? 24 : undefined).trim()}\n </Text>\n </View>\n ))}\n </View>\n ) : null;\n};\n\nAmenities.propTypes = {\n accent: PropTypes.bool,\n amenities: PropTypes.arrayOf(\n PropTypes.shape({\n exclusive: PropTypes.bool,\n highlight: PropTypes.bool,\n id: PropTypes.number,\n text: PropTypes.string,\n }),\n ),\n highlight: PropTypes.bool,\n preview: PropTypes.bool,\n};\n\nAmenities.displayName = 'Mirai:Core:Rates:Item:Amenities';\n\nexport { Amenities };\n"],"mappings":"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"}
|
|
@@ -9,16 +9,6 @@
|
|
|
9
9
|
gap: var(--mirai-ui-space-XS);
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
.highlight {
|
|
13
|
-
gap: var(--mirai-ui-space-S) 3.3%;
|
|
14
|
-
padding: 0 var(--mirai-ui-space-XS);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.highlight > * {
|
|
18
|
-
align-items: center;
|
|
19
|
-
flex-basis: 22.5%;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
12
|
.content {
|
|
23
13
|
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
24
14
|
}
|
|
@@ -31,10 +21,6 @@
|
|
|
31
21
|
-webkit-line-clamp: 2;
|
|
32
22
|
}
|
|
33
23
|
|
|
34
|
-
.highlight .text {
|
|
35
|
-
text-align: center;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
24
|
.textSingleLine {
|
|
39
25
|
-webkit-line-clamp: 1;
|
|
40
26
|
}
|
|
@@ -44,7 +30,7 @@
|
|
|
44
30
|
flex-basis: 47.5%;
|
|
45
31
|
}
|
|
46
32
|
|
|
47
|
-
.
|
|
33
|
+
.list {
|
|
48
34
|
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
49
35
|
}
|
|
50
36
|
}
|
|
@@ -55,7 +41,22 @@
|
|
|
55
41
|
flex-basis: 30%;
|
|
56
42
|
}
|
|
57
43
|
|
|
58
|
-
.
|
|
44
|
+
.oversized {
|
|
45
|
+
align-items: flex-start;
|
|
46
|
+
gap: var(--mirai-ui-space-S) 2%;
|
|
47
|
+
flex-wrap: wrap;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.oversized > * {
|
|
51
|
+
align-items: center;
|
|
52
|
+
flex-basis: 15%;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.oversized .text {
|
|
56
|
+
text-align: center;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.list {
|
|
59
60
|
gap: var(--mirai-ui-space-XS);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
@@ -20,6 +20,7 @@ const Features = _ref => {
|
|
|
20
20
|
bedTypes = [],
|
|
21
21
|
compact = false,
|
|
22
22
|
maxOccupation = 2,
|
|
23
|
+
occupation = [],
|
|
23
24
|
size,
|
|
24
25
|
...others
|
|
25
26
|
} = _ref;
|
|
@@ -38,15 +39,24 @@ const Features = _ref => {
|
|
|
38
39
|
row: true,
|
|
39
40
|
className: (0, _ui.styles)(style.features, others.className)
|
|
40
41
|
}, size && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
41
|
-
row: true
|
|
42
|
+
row: true,
|
|
43
|
+
className: style.item
|
|
42
44
|
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
|
|
43
45
|
value: _helpers.ICON.SIZE
|
|
44
|
-
})), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, size)), maxOccupation > 0 && /*#__PURE__*/_react.default.createElement(_ui.
|
|
45
|
-
|
|
46
|
+
})), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, size)), maxOccupation > 0 && /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
|
|
47
|
+
text: occupation.map(item => (0, _helpers.getOccupationLabel)({
|
|
48
|
+
...item,
|
|
49
|
+
ages: []
|
|
50
|
+
}, translate)).join(' + '),
|
|
51
|
+
className: style.item
|
|
52
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
53
|
+
row: true,
|
|
54
|
+
className: style.item
|
|
46
55
|
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
|
|
47
56
|
value: maxOccupation === 1 ? _helpers.ICON.PERSON : maxOccupation === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
|
|
48
|
-
})), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, maxOccupation)), bedTypes.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
49
|
-
row: true
|
|
57
|
+
})), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, maxOccupation))), bedTypes.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
58
|
+
row: true,
|
|
59
|
+
className: style.item
|
|
50
60
|
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
|
|
51
61
|
value: _helpers.ICON.BED_DOUBLE
|
|
52
62
|
})), /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, bedTypes.map(type => translate(_Item.L10N.LABEL_BED_TYPE[type])).join(" ".concat(translate(_Item.L10N.LABEL_OR), " ")))));
|
|
@@ -56,6 +66,11 @@ Features.propTypes = {
|
|
|
56
66
|
bedTypes: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
57
67
|
compact: _propTypes.default.bool,
|
|
58
68
|
maxOccupation: _propTypes.default.number,
|
|
69
|
+
occupation: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
70
|
+
ages: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
71
|
+
amount: _propTypes.default.number,
|
|
72
|
+
type: _propTypes.default.number
|
|
73
|
+
})),
|
|
59
74
|
size: _propTypes.default.string
|
|
60
75
|
};
|
|
61
76
|
Features.displayName = 'Mirai:Core:Rates:Item:Features';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Features.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_helpers","_Item","_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","Features","_ref","bedTypes","compact","maxOccupation","size","others","translate","useLocale","iconProps","headline","level","textProps","small","className","textCompact","undefined","createElement","View","row","styles","features","Icon","value","ICON","SIZE","Text","PERSON","GROUP","GROUPS","BED_DOUBLE","
|
|
1
|
+
{"version":3,"file":"Features.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_helpers","_Item","_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","Features","_ref","bedTypes","compact","maxOccupation","occupation","size","others","translate","useLocale","iconProps","headline","level","textProps","small","className","textCompact","undefined","createElement","View","row","styles","features","item","Icon","value","ICON","SIZE","Text","Tooltip","text","map","getOccupationLabel","ages","join","PERSON","GROUP","GROUPS","BED_DOUBLE","type","L10N","LABEL_BED_TYPE","concat","LABEL_OR","exports","propTypes","PropTypes","arrayOf","number","bool","shape","amount","string","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Features/Features.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Icon, styles, Text, Tooltip, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './Features.module.css';\nimport { getOccupationLabel, ICON } from '../../../../../helpers';\nimport { L10N } from '../../Item.l10n';\n\nconst Features = ({ bedTypes = [], compact = false, maxOccupation = 2, occupation = [], size, ...others }) => {\n const { translate } = useLocale();\n\n const iconProps = { headline: true, level: 3 };\n const textProps = { small: true, className: compact ? style.textCompact : undefined };\n\n return (\n <View row className={styles(style.features, others.className)}>\n {size && (\n <View row className={style.item}>\n <Icon {...iconProps} value={ICON.SIZE} />\n <Text {...textProps}>{size}</Text>\n </View>\n )}\n\n {maxOccupation > 0 && (\n <Tooltip\n text={occupation.map((item) => getOccupationLabel({ ...item, ages: [] }, translate)).join(' + ')}\n className={style.item}\n >\n <View row className={style.item}>\n <Icon\n {...iconProps}\n value={maxOccupation === 1 ? ICON.PERSON : maxOccupation === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps}>{maxOccupation}</Text>\n </View>\n </Tooltip>\n )}\n\n {bedTypes.length > 0 && (\n <View row className={style.item}>\n <Icon {...iconProps} value={ICON.BED_DOUBLE} />\n <Text {...textProps}>\n {bedTypes.map((type) => translate(L10N.LABEL_BED_TYPE[type])).join(` ${translate(L10N.LABEL_OR)} `)}\n </Text>\n </View>\n )}\n </View>\n );\n};\n\nFeatures.propTypes = {\n bedTypes: PropTypes.arrayOf(PropTypes.number),\n compact: PropTypes.bool,\n maxOccupation: PropTypes.number,\n occupation: PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n size: PropTypes.string,\n};\n\nFeatures.displayName = 'Mirai:Core:Rates:Item:Features';\n\nexport { Features };\n"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ exports.ModalInfo = void 0;
|
|
|
7
7
|
var _locale = require("@mirai/locale");
|
|
8
8
|
var _ui = require("@mirai/ui");
|
|
9
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var style = _interopRequireWildcard(require("./ModalInfo.module.css"));
|
|
12
12
|
var _helpers = require("../../../../../helpers");
|
|
13
13
|
var _Item = require("../../Item.l10n");
|
|
@@ -25,7 +25,10 @@ const ModalInfo = _ref => {
|
|
|
25
25
|
images = [],
|
|
26
26
|
media,
|
|
27
27
|
name,
|
|
28
|
+
occupation = [],
|
|
29
|
+
onClose = () => {},
|
|
28
30
|
onViewUrl,
|
|
31
|
+
visible: propVisible,
|
|
29
32
|
...others
|
|
30
33
|
} = _ref;
|
|
31
34
|
const {
|
|
@@ -34,11 +37,17 @@ const ModalInfo = _ref => {
|
|
|
34
37
|
const {
|
|
35
38
|
translate
|
|
36
39
|
} = (0, _locale.useLocale)();
|
|
40
|
+
const [visible, setVisible] = (0, _react.useState)(propVisible);
|
|
41
|
+
(0, _react.useEffect)(() => {
|
|
42
|
+
setVisible(propVisible);
|
|
43
|
+
}, [propVisible]);
|
|
44
|
+
const handleClose = () => {
|
|
45
|
+
setVisible(false);
|
|
46
|
+
setTimeout(onClose, 300);
|
|
47
|
+
};
|
|
37
48
|
const {
|
|
38
49
|
amenities: baseAmenities = [],
|
|
39
|
-
|
|
40
|
-
title,
|
|
41
|
-
onClose
|
|
50
|
+
title
|
|
42
51
|
} = others;
|
|
43
52
|
const highlightAmenities = [];
|
|
44
53
|
const amenities = [];
|
|
@@ -53,12 +62,11 @@ const ModalInfo = _ref => {
|
|
|
53
62
|
return /*#__PURE__*/_react.default.createElement(_ui.Modal, {
|
|
54
63
|
title,
|
|
55
64
|
visible,
|
|
56
|
-
onClose,
|
|
57
65
|
fit: true,
|
|
58
66
|
title: name,
|
|
67
|
+
onClose: handleClose,
|
|
59
68
|
className: style.modal
|
|
60
69
|
}, /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
|
|
61
|
-
className: style.content,
|
|
62
70
|
scrollTo: visible ? 0 : undefined
|
|
63
71
|
}, !isMobile && /*#__PURE__*/_react.default.createElement(_Slider.Slider, {
|
|
64
72
|
captions: images.map(_ref2 => {
|
|
@@ -75,12 +83,26 @@ const ModalInfo = _ref => {
|
|
|
75
83
|
return large;
|
|
76
84
|
}),
|
|
77
85
|
media: media,
|
|
78
|
-
width:
|
|
79
|
-
onViewUrl: onViewUrl
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
86
|
+
width: 738,
|
|
87
|
+
onViewUrl: onViewUrl,
|
|
88
|
+
className: style.slider
|
|
89
|
+
}), /*#__PURE__*/_react.default.createElement(_Features.Features, _extends({}, others, {
|
|
90
|
+
className: style.section
|
|
91
|
+
})), description && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
92
|
+
wide: true,
|
|
93
|
+
className: style.section
|
|
94
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, description)), occupation.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
95
|
+
wide: true,
|
|
96
|
+
className: style.section
|
|
97
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
98
|
+
bold: true
|
|
99
|
+
}, translate(_Item.L10N.LABEL_GUEST_TYPES)), occupation.map((item, index) => /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
|
|
100
|
+
key: index
|
|
101
|
+
}), (0, _helpers.getOccupationLabel)(item, translate)))), bedDisposition.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
102
|
+
wide: true,
|
|
103
|
+
className: style.section
|
|
104
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
105
|
+
bold: true
|
|
84
106
|
}, translate(_Item.L10N.LABEL_BED_DISPOSITION)), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
85
107
|
row: true
|
|
86
108
|
}, bedDisposition.map(function () {
|
|
@@ -107,21 +129,19 @@ const ModalInfo = _ref => {
|
|
|
107
129
|
}, "x".concat(amount)));
|
|
108
130
|
}));
|
|
109
131
|
}))), highlightAmenities.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
110
|
-
wide: true
|
|
132
|
+
wide: true,
|
|
133
|
+
className: style.section
|
|
111
134
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
112
|
-
bold: true
|
|
113
|
-
upperCase: true,
|
|
114
|
-
className: style.title
|
|
135
|
+
bold: true
|
|
115
136
|
}, translate(_Item.L10N.LABEL_TOP_AMENITIES)), /*#__PURE__*/_react.default.createElement(_Amenities.Amenities, {
|
|
137
|
+
accent: true,
|
|
116
138
|
amenities: highlightAmenities,
|
|
117
|
-
highlight: true
|
|
118
|
-
className: style.box
|
|
139
|
+
highlight: true
|
|
119
140
|
})), amenities.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
120
|
-
wide: true
|
|
141
|
+
wide: true,
|
|
142
|
+
className: style.section
|
|
121
143
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
122
|
-
bold: true
|
|
123
|
-
upperCase: true,
|
|
124
|
-
className: style.title
|
|
144
|
+
bold: true
|
|
125
145
|
}, translate(_Item.L10N.LABEL_MORE_SERVICES)), /*#__PURE__*/_react.default.createElement(_Amenities.Amenities, _extends({
|
|
126
146
|
amenities: amenities
|
|
127
147
|
}, others)))));
|
|
@@ -144,7 +164,13 @@ ModalInfo.propTypes = {
|
|
|
144
164
|
urlVideo: _propTypes.default.string
|
|
145
165
|
}),
|
|
146
166
|
name: _propTypes.default.string,
|
|
167
|
+
occupation: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
168
|
+
ages: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
169
|
+
amount: _propTypes.default.number,
|
|
170
|
+
type: _propTypes.default.number
|
|
171
|
+
})),
|
|
147
172
|
visible: _propTypes.default.bool,
|
|
173
|
+
onClose: _propTypes.default.func.isRequired,
|
|
148
174
|
onViewUrl: _propTypes.default.func
|
|
149
175
|
};
|
|
150
176
|
//# sourceMappingURL=ModalInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalInfo.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_helpers","_Item","_Amenities","_Features","_Slider","_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","ModalInfo","_ref","bedDisposition","description","images","media","name","onViewUrl","others","isMobile","useDevice","translate","useLocale","amenities","baseAmenities","visible","title","onClose","highlightAmenities","textProps","action","small","forEach","item","undefined","highlight","push","createElement","Modal","fit","className","modal","ScrollView","content","scrollTo","Slider","captions","map","_ref2","alt","height","_ref3","large","width","Features","Text","View","bold","upperCase","L10N","LABEL_BED_DISPOSITION","row","arrangments","index","box","_ref4","amount","type","concat","Icon","headline","level","value","ICON","BED_SINGLE","BED_DOUBLE","wide","LABEL_TOP_AMENITIES","Amenities","LABEL_MORE_SERVICES","exports","displayName","propTypes","PropTypes","arrayOf","shape","number","string","thumbnail","url3D","urlVideo","bool","func"],"sources":["../../../../../../../src/components/Rates/components/Item/components/ModalInfo/ModalInfo.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Modal, Icon, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './ModalInfo.module.css';\nimport { ICON } from '../../../../../helpers';\nimport { L10N } from '../../Item.l10n';\nimport { Amenities } from '../Amenities';\nimport { Features } from '../Features';\nimport { Slider } from '../Slider';\n\nconst ModalInfo = ({ bedDisposition = [], description, images = [], media, name, onViewUrl, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { amenities: baseAmenities = [], visible, title, onClose } = others;\n const highlightAmenities = [];\n const amenities = [];\n const textProps = { action: !isMobile, small: isMobile };\n\n baseAmenities.forEach((item = {}) => {\n item.highlight ? highlightAmenities.push(item) : amenities.push(item);\n });\n\n return (\n <Modal {...{ title, visible, onClose }} fit title={name} className={style.modal}>\n <ScrollView className={style.content} scrollTo={visible ? 0 : undefined}>\n {!isMobile && (\n <Slider\n captions={images.map(({ alt }) => alt)}\n height={400}\n images={images.map(({ large }) => large)}\n media={media}\n width={706}\n onViewUrl={onViewUrl} // !TODO\n />\n )}\n\n <Features {...others} />\n <Text {...textProps}>{description}</Text>\n {bedDisposition.length > 0 && (\n <View>\n <Text bold upperCase className={style.title}>\n {translate(L10N.LABEL_BED_DISPOSITION)}\n </Text>\n <View row>\n {bedDisposition.map((arrangments = [], index) => (\n <View key={index} row className={[style.box, style.bedDisposition]}>\n {arrangments.map(({ amount, type }) => (\n <View key={`${index}-${type}`} row>\n <Icon headline level={2} value={type === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE} />\n <Text action>{`x${amount}`}</Text>\n </View>\n ))}\n </View>\n ))}\n </View>\n </View>\n )}\n {highlightAmenities.length > 0 && (\n <View wide>\n <Text bold upperCase className={style.title}>\n {translate(L10N.LABEL_TOP_AMENITIES)}\n </Text>\n <Amenities amenities={highlightAmenities} highlight className={style.box} />\n </View>\n )}\n {amenities.length > 0 && (\n <View wide>\n <Text bold upperCase className={style.title}>\n {translate(L10N.LABEL_MORE_SERVICES)}\n </Text>\n <Amenities amenities={amenities} {...others} />\n </View>\n )}\n </ScrollView>\n </Modal>\n );\n};\n\nModalInfo.displayName = 'Mirai:Core:Rates:Item:ModalInfo';\n\nModalInfo.propTypes = {\n bedDisposition: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n description: PropTypes.string,\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n visible: PropTypes.bool,\n onViewUrl: PropTypes.func,\n};\n\nexport { ModalInfo };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalInfo.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_helpers","_Item","_Amenities","_Features","_Slider","_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","ModalInfo","_ref","bedDisposition","description","images","media","name","occupation","onClose","onViewUrl","visible","propVisible","others","isMobile","useDevice","translate","useLocale","setVisible","useState","useEffect","handleClose","setTimeout","amenities","baseAmenities","title","highlightAmenities","textProps","action","small","forEach","item","undefined","highlight","push","createElement","Modal","fit","className","modal","ScrollView","scrollTo","Slider","captions","map","_ref2","alt","height","_ref3","large","width","slider","Features","section","View","wide","Text","bold","L10N","LABEL_GUEST_TYPES","index","getOccupationLabel","LABEL_BED_DISPOSITION","row","arrangments","box","_ref4","amount","type","concat","Icon","headline","level","value","ICON","BED_SINGLE","BED_DOUBLE","LABEL_TOP_AMENITIES","Amenities","accent","LABEL_MORE_SERVICES","exports","displayName","propTypes","PropTypes","arrayOf","shape","number","string","thumbnail","url3D","urlVideo","ages","bool","func","isRequired"],"sources":["../../../../../../../src/components/Rates/components/Item/components/ModalInfo/ModalInfo.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Modal, Icon, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './ModalInfo.module.css';\nimport { getOccupationLabel, ICON } from '../../../../../helpers';\nimport { L10N } from '../../Item.l10n';\nimport { Amenities } from '../Amenities';\nimport { Features } from '../Features';\nimport { Slider } from '../Slider';\n\nconst ModalInfo = ({\n bedDisposition = [],\n description,\n images = [],\n media,\n name,\n occupation = [],\n onClose = () => {},\n onViewUrl,\n visible: propVisible,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const [visible, setVisible] = useState(propVisible);\n\n useEffect(() => {\n setVisible(propVisible);\n }, [propVisible]);\n\n const handleClose = () => {\n setVisible(false);\n setTimeout(onClose, 300);\n };\n\n const { amenities: baseAmenities = [], title } = others;\n const highlightAmenities = [];\n const amenities = [];\n const textProps = { action: !isMobile, small: isMobile };\n\n baseAmenities.forEach((item = {}) => {\n item.highlight ? highlightAmenities.push(item) : amenities.push(item);\n });\n\n return (\n <Modal {...{ title, visible }} fit title={name} onClose={handleClose} className={style.modal}>\n <ScrollView scrollTo={visible ? 0 : undefined}>\n {!isMobile && (\n <Slider\n captions={images.map(({ alt }) => alt)}\n height={400}\n images={images.map(({ large }) => large)}\n media={media}\n width={738}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n )}\n\n <Features {...others} className={style.section} />\n\n {description && (\n <View wide className={style.section}>\n <Text {...textProps}>{description}</Text>\n </View>\n )}\n\n {occupation.length > 0 && (\n <View wide className={style.section}>\n <Text bold>{translate(L10N.LABEL_GUEST_TYPES)}</Text>\n {occupation.map((item, index) => (\n <Text {...textProps} key={index}>\n {getOccupationLabel(item, translate)}\n </Text>\n ))}\n </View>\n )}\n\n {bedDisposition.length > 0 && (\n <View wide className={style.section}>\n <Text bold>{translate(L10N.LABEL_BED_DISPOSITION)}</Text>\n <View row>\n {bedDisposition.map((arrangments = [], index) => (\n <View key={index} row className={[style.box, style.bedDisposition]}>\n {arrangments.map(({ amount, type }) => (\n <View key={`${index}-${type}`} row>\n <Icon headline level={2} value={type === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE} />\n <Text action>{`x${amount}`}</Text>\n </View>\n ))}\n </View>\n ))}\n </View>\n </View>\n )}\n\n {highlightAmenities.length > 0 && (\n <View wide className={style.section}>\n <Text bold>{translate(L10N.LABEL_TOP_AMENITIES)}</Text>\n <Amenities accent amenities={highlightAmenities} highlight />\n </View>\n )}\n\n {amenities.length > 0 && (\n <View wide className={style.section}>\n <Text bold>{translate(L10N.LABEL_MORE_SERVICES)}</Text>\n <Amenities amenities={amenities} {...others} />\n </View>\n )}\n </ScrollView>\n </Modal>\n );\n};\n\nModalInfo.displayName = 'Mirai:Core:Rates:Item:ModalInfo';\n\nModalInfo.propTypes = {\n bedDisposition: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n description: PropTypes.string,\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n occupation: PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n visible: PropTypes.bool,\n onClose: PropTypes.func.isRequired,\n onViewUrl: PropTypes.func,\n};\n\nexport { ModalInfo };\n"],"mappings":"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"}
|
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
max-height: 100svh;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
|
-
.
|
|
6
|
-
gap: var(--mirai-ui-space-
|
|
7
|
-
|
|
5
|
+
.section {
|
|
6
|
+
gap: var(--mirai-ui-space-XS);
|
|
7
|
+
padding: var(--mirai-ui-space-S) var(--mirai-ui-space-M);
|
|
8
|
+
width: 100%;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.section:not(:last-child) {
|
|
12
|
+
border-bottom: solid 1px var(--mirai-ui-content-border);
|
|
8
13
|
}
|
|
9
14
|
|
|
10
15
|
.box {
|
|
@@ -18,15 +23,9 @@
|
|
|
18
23
|
margin-right: var(--mirai-ui-space-M);
|
|
19
24
|
}
|
|
20
25
|
|
|
21
|
-
.title {
|
|
22
|
-
margin-bottom: var(--mirai-ui-space-XS);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
26
|
.slider {
|
|
26
|
-
border-radius: var(--mirai-ui-border-radius);
|
|
27
|
-
/* min-height: 400px; */
|
|
28
27
|
min-height: 400px;
|
|
29
|
-
min-width:
|
|
28
|
+
min-width: 738px;
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
/* S & M */
|
|
@@ -27,14 +27,15 @@ const Slider = _ref => {
|
|
|
27
27
|
} = {},
|
|
28
28
|
width,
|
|
29
29
|
onCounter,
|
|
30
|
-
onViewUrl = () => {}
|
|
30
|
+
onViewUrl = () => {},
|
|
31
|
+
...others
|
|
31
32
|
} = _ref;
|
|
32
33
|
const {
|
|
33
34
|
translate
|
|
34
35
|
} = (0, _locale.useLocale)();
|
|
35
36
|
const [sliderIndex, setSliderIndex] = (0, _react.useState)(0);
|
|
36
37
|
const sliderProps = {
|
|
37
|
-
className: style.slider,
|
|
38
|
+
className: [style.slider, others.className],
|
|
38
39
|
style: {
|
|
39
40
|
height
|
|
40
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Slider","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","Slider","_ref","captions","children","height","images","media","url3D","urlVideo","width","onCounter","onViewUrl","translate","useLocale","sliderIndex","setSliderIndex","useState","sliderProps","className","slider","createElement","View","onChange","row","buttons","Button","rounded","squared","tooltip","L10N","LABEL_VIEW_VIDEO","transparent","onPress","title","url","Icon","headline","level","value","ICON","PLAY","LABEL_3D_VIEW","THREE_D","exports","displayName","propTypes","PropTypes","arrayOf","string","node","number","shape","func"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Slider/Slider.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Slider as SliderBase, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { L10N } from './Slider.l10n';\nimport * as style from './Slider.module.css';\nimport { ICON } from '../../../../../helpers';\n\nconst Slider = ({\n captions = [],\n children,\n height,\n images = [],\n media: { url3D, urlVideo } = {},\n width,\n onCounter,\n onViewUrl = () => {},\n}) => {\n const { translate } = useLocale();\n\n const [sliderIndex, setSliderIndex] = useState(0);\n\n const sliderProps = { className: style.slider, style: { height } };\n\n return (\n <View {...sliderProps}>\n <SliderBase {...{ captions, height, images, width, onCounter }} onChange={setSliderIndex} {...sliderProps} />\n\n {children}\n\n {(url3D || urlVideo) && sliderIndex === 0 && (\n <View row className={style.buttons}>\n {urlVideo && (\n <Button\n rounded\n squared\n tooltip={translate(L10N.LABEL_VIEW_VIDEO)}\n transparent\n onPress={() => onViewUrl({ title: translate(L10N.LABEL_VIEW_VIDEO), url: urlVideo })}\n >\n <Icon headline level={2} value={ICON.PLAY} />\n </Button>\n )}\n\n {url3D && (\n <Button\n rounded\n squared\n tooltip={translate(L10N.LABEL_3D_VIEW)}\n transparent\n onPress={() => onViewUrl({ title: translate(L10N.LABEL_3D_VIEW), url: url3D })}\n >\n <Icon headline level={2} value={ICON.THREE_D} />\n </Button>\n )}\n </View>\n )}\n </View>\n );\n};\n\nSlider.displayName = 'Mirai:Core:Rates:Item:Slider';\n\nSlider.propTypes = {\n captions: PropTypes.arrayOf(PropTypes.string),\n children: PropTypes.node,\n height: PropTypes.number,\n images: PropTypes.arrayOf(PropTypes.string),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n width: PropTypes.number,\n onCounter: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Slider };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AAEA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAF,uBAAA,CAAAL,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAA8C,SAAAS,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,SAAAL,wBAAAK,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,SAAAf,uBAAA2B,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;AAE9C,MAAMK,MAAM,GAAGC,IAAA,
|
|
1
|
+
{"version":3,"file":"Slider.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Slider","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","Slider","_ref","captions","children","height","images","media","url3D","urlVideo","width","onCounter","onViewUrl","others","translate","useLocale","sliderIndex","setSliderIndex","useState","sliderProps","className","slider","createElement","View","onChange","row","buttons","Button","rounded","squared","tooltip","L10N","LABEL_VIEW_VIDEO","transparent","onPress","title","url","Icon","headline","level","value","ICON","PLAY","LABEL_3D_VIEW","THREE_D","exports","displayName","propTypes","PropTypes","arrayOf","string","node","number","shape","func"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Slider/Slider.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Slider as SliderBase, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { L10N } from './Slider.l10n';\nimport * as style from './Slider.module.css';\nimport { ICON } from '../../../../../helpers';\n\nconst Slider = ({\n captions = [],\n children,\n height,\n images = [],\n media: { url3D, urlVideo } = {},\n width,\n onCounter,\n onViewUrl = () => {},\n ...others\n}) => {\n const { translate } = useLocale();\n\n const [sliderIndex, setSliderIndex] = useState(0);\n\n const sliderProps = { className: [style.slider, others.className], style: { height } };\n\n return (\n <View {...sliderProps}>\n <SliderBase {...{ captions, height, images, width, onCounter }} onChange={setSliderIndex} {...sliderProps} />\n\n {children}\n\n {(url3D || urlVideo) && sliderIndex === 0 && (\n <View row className={style.buttons}>\n {urlVideo && (\n <Button\n rounded\n squared\n tooltip={translate(L10N.LABEL_VIEW_VIDEO)}\n transparent\n onPress={() => onViewUrl({ title: translate(L10N.LABEL_VIEW_VIDEO), url: urlVideo })}\n >\n <Icon headline level={2} value={ICON.PLAY} />\n </Button>\n )}\n\n {url3D && (\n <Button\n rounded\n squared\n tooltip={translate(L10N.LABEL_3D_VIEW)}\n transparent\n onPress={() => onViewUrl({ title: translate(L10N.LABEL_3D_VIEW), url: url3D })}\n >\n <Icon headline level={2} value={ICON.THREE_D} />\n </Button>\n )}\n </View>\n )}\n </View>\n );\n};\n\nSlider.displayName = 'Mirai:Core:Rates:Item:Slider';\n\nSlider.propTypes = {\n captions: PropTypes.arrayOf(PropTypes.string),\n children: PropTypes.node,\n height: PropTypes.number,\n images: PropTypes.arrayOf(PropTypes.string),\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n width: PropTypes.number,\n onCounter: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Slider };\n"],"mappings":"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"}
|
|
@@ -263,6 +263,7 @@
|
|
|
263
263
|
],
|
|
264
264
|
"name": "Doble Económica",
|
|
265
265
|
"maxOccupation": 2,
|
|
266
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
266
267
|
"size": "22 m²"
|
|
267
268
|
},
|
|
268
269
|
{
|
|
@@ -525,6 +526,7 @@
|
|
|
525
526
|
],
|
|
526
527
|
"name": "Doble Estándar",
|
|
527
528
|
"maxOccupation": 2,
|
|
529
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
528
530
|
"size": "22 m²"
|
|
529
531
|
},
|
|
530
532
|
{
|
|
@@ -793,6 +795,7 @@
|
|
|
793
795
|
],
|
|
794
796
|
"name": "Doble Vista Mar",
|
|
795
797
|
"maxOccupation": 2,
|
|
798
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
796
799
|
"size": "22 m²"
|
|
797
800
|
},
|
|
798
801
|
{
|
|
@@ -1056,6 +1059,7 @@
|
|
|
1056
1059
|
],
|
|
1057
1060
|
"name": "Doble Vista Piscina",
|
|
1058
1061
|
"maxOccupation": 2,
|
|
1062
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
1059
1063
|
"size": "22 m²"
|
|
1060
1064
|
},
|
|
1061
1065
|
{
|
|
@@ -1325,6 +1329,7 @@
|
|
|
1325
1329
|
],
|
|
1326
1330
|
"name": "Doble Vista Mar/Piscina",
|
|
1327
1331
|
"maxOccupation": 2,
|
|
1332
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
1328
1333
|
"size": "22 m²"
|
|
1329
1334
|
},
|
|
1330
1335
|
{
|
|
@@ -1596,6 +1601,7 @@
|
|
|
1596
1601
|
],
|
|
1597
1602
|
"name": "Junior Suite Vista Piscina",
|
|
1598
1603
|
"maxOccupation": 2,
|
|
1604
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
1599
1605
|
"size": "33 m²"
|
|
1600
1606
|
},
|
|
1601
1607
|
{
|
|
@@ -1868,6 +1874,7 @@
|
|
|
1868
1874
|
],
|
|
1869
1875
|
"name": "Suite",
|
|
1870
1876
|
"maxOccupation": 2,
|
|
1877
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
1871
1878
|
"size": "44 m²"
|
|
1872
1879
|
}
|
|
1873
1880
|
],
|
|
@@ -89,6 +89,7 @@
|
|
|
89
89
|
],
|
|
90
90
|
"name": "Habitación Clásica",
|
|
91
91
|
"maxOccupation": 2,
|
|
92
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
92
93
|
"size": "16 m²"
|
|
93
94
|
},
|
|
94
95
|
{
|
|
@@ -183,6 +184,7 @@
|
|
|
183
184
|
"name": "Habitación Superior",
|
|
184
185
|
"nightsDeal": 4,
|
|
185
186
|
"maxOccupation": 2,
|
|
187
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
186
188
|
"size": "16 m²"
|
|
187
189
|
},
|
|
188
190
|
{
|
|
@@ -277,6 +279,7 @@
|
|
|
277
279
|
"name": "Habitación Superior - Para personas con movilidad reducida",
|
|
278
280
|
"nightsDeal": 4,
|
|
279
281
|
"maxOccupation": 2,
|
|
282
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
280
283
|
"size": "16 m²"
|
|
281
284
|
},
|
|
282
285
|
{
|
|
@@ -371,6 +374,7 @@
|
|
|
371
374
|
"name": "Habitación Superior, Vista de la ciudad",
|
|
372
375
|
"nightsDeal": 4,
|
|
373
376
|
"maxOccupation": 2,
|
|
377
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
374
378
|
"size": "16 m²"
|
|
375
379
|
},
|
|
376
380
|
{
|
|
@@ -466,6 +470,7 @@
|
|
|
466
470
|
"name": "Habitación con Balcón",
|
|
467
471
|
"nightsDeal": 4,
|
|
468
472
|
"maxOccupation": 2,
|
|
473
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
469
474
|
"size": "18 m²"
|
|
470
475
|
},
|
|
471
476
|
{
|
|
@@ -560,6 +565,7 @@
|
|
|
560
565
|
"name": "Junior Suite - Para personas con movilidad reducida",
|
|
561
566
|
"nightsDeal": 4,
|
|
562
567
|
"maxOccupation": 2,
|
|
568
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
563
569
|
"size": "35 m²"
|
|
564
570
|
}
|
|
565
571
|
],
|
|
@@ -329,6 +329,7 @@
|
|
|
329
329
|
"name": "Deluxe Twin Room",
|
|
330
330
|
"nightsDeal": 5,
|
|
331
331
|
"maxOccupation": 2,
|
|
332
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
332
333
|
"size": "20 m²"
|
|
333
334
|
},
|
|
334
335
|
{
|
|
@@ -659,6 +660,7 @@
|
|
|
659
660
|
"name": "Deluxe Room",
|
|
660
661
|
"nightsDeal": 5,
|
|
661
662
|
"maxOccupation": 2,
|
|
663
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
662
664
|
"size": "20 m²"
|
|
663
665
|
},
|
|
664
666
|
{
|
|
@@ -995,6 +997,7 @@
|
|
|
995
997
|
],
|
|
996
998
|
"name": "Penthouse with Terrace (one queen bed)",
|
|
997
999
|
"maxOccupation": 2,
|
|
1000
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
998
1001
|
"size": "25 m²"
|
|
999
1002
|
},
|
|
1000
1003
|
{
|
|
@@ -1331,6 +1334,7 @@
|
|
|
1331
1334
|
],
|
|
1332
1335
|
"name": "Premium Room with Balcony",
|
|
1333
1336
|
"maxOccupation": 2,
|
|
1337
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
1334
1338
|
"size": "25 m²"
|
|
1335
1339
|
}
|
|
1336
1340
|
],
|
|
@@ -149,7 +149,8 @@
|
|
|
149
149
|
}
|
|
150
150
|
],
|
|
151
151
|
"name": "Double/Twin Comfort Room",
|
|
152
|
-
"maxOccupation": 2
|
|
152
|
+
"maxOccupation": 2,
|
|
153
|
+
"occupation": [{ "type": 2, "amount": 2 }]
|
|
153
154
|
},
|
|
154
155
|
{
|
|
155
156
|
"amenities": [
|
|
@@ -314,6 +315,7 @@
|
|
|
314
315
|
],
|
|
315
316
|
"name": "Superior Double Room",
|
|
316
317
|
"maxOccupation": 2,
|
|
318
|
+
"occupation": [{ "type": 2, "amount": 2 }],
|
|
317
319
|
"size": "25 m²"
|
|
318
320
|
}
|
|
319
321
|
],
|
|
@@ -111,20 +111,43 @@ const getOccupationSuggestions = _ref => {
|
|
|
111
111
|
for (let index = startIndex; index < rooms.length; index++) {
|
|
112
112
|
const room = rooms[index];
|
|
113
113
|
if (room.adults <= adults && room.children <= children && room.babies <= babies) {
|
|
114
|
+
const totalRooms = rooms.filter(function () {
|
|
115
|
+
let {
|
|
116
|
+
id
|
|
117
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
118
|
+
return id === room.id;
|
|
119
|
+
}).length;
|
|
120
|
+
const totalAvailability = rooms.filter(function () {
|
|
121
|
+
let {
|
|
122
|
+
id
|
|
123
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
124
|
+
return id === room.id;
|
|
125
|
+
}).reduce(function (total) {
|
|
126
|
+
let {
|
|
127
|
+
availability
|
|
128
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
129
|
+
return total + availability;
|
|
130
|
+
}, 0);
|
|
131
|
+
const occupied = suggestion.filter(function () {
|
|
132
|
+
let {
|
|
133
|
+
id
|
|
134
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
135
|
+
return id === room.id;
|
|
136
|
+
}).length;
|
|
114
137
|
search({
|
|
115
|
-
rooms,
|
|
116
138
|
adults: adults - room.adults,
|
|
117
|
-
availability:
|
|
118
|
-
children: children - room.children,
|
|
139
|
+
availability: totalAvailability - totalRooms - occupied,
|
|
119
140
|
babies: babies - room.babies,
|
|
141
|
+
children: children - room.children,
|
|
142
|
+
rooms,
|
|
143
|
+
startIndex: index + 1,
|
|
120
144
|
suggestion: [...suggestion, {
|
|
121
145
|
id: room.id,
|
|
122
146
|
adults: room.adults,
|
|
123
147
|
children: room.children,
|
|
124
148
|
babies: room.babies,
|
|
125
149
|
price: room.price
|
|
126
|
-
}]
|
|
127
|
-
startIndex: index + 1
|
|
150
|
+
}]
|
|
128
151
|
});
|
|
129
152
|
}
|
|
130
153
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOccupationSuggestions.js","names":["_compareSuggestions","require","_getRooms","_shared__","ADULT","CHILD","GUEST","TYPE_OCCUPATION","getOccupationSuggestions","_ref","infantAge","occupation","others","isGuest","flat","some","type","arguments","length","undefined","adults","reduce","total","amount","children","ages","agesChildren","filter","totalAges","ageBaby","find","age","rooms","getRooms","suggestions","search","_ref2","availability","babies","startIndex","suggestion","compareSuggestions","initAges","push","map","Array","fill","pop","price","index","room","id","sort","a","b","exports"],"sources":["../../../../src/services/Rates/helpers/getOccupationSuggestions.js"],"sourcesContent":["import { compareSuggestions } from './compareSuggestions';\nimport { getRooms } from './getRooms';\nimport { TYPE_OCCUPATION } from '../../../components/__shared__';\n\nconst { ADULT, CHILD, GUEST } = TYPE_OCCUPATION;\n\nexport const getOccupationSuggestions = ({ infantAge, occupation = [], ...others }) => {\n const isGuest = occupation.flat().some(({ type } = {}) => type === GUEST);\n const adults = occupation.flat().reduce((total, { amount, type } = {}) => total + (type !== CHILD ? amount : 0), 0);\n const { amount: children, ages: agesChildren } = occupation\n .flat()\n .filter(({ type } = {}) => type === CHILD)\n .reduce(\n ({ ages: totalAges, amount: total } = {}, { ages, amount } = {}) => ({\n amount: total + amount,\n ages: [...totalAges, ...ages],\n }),\n { amount: 0, ages: [] },\n );\n const ageBaby = agesChildren.find((age) => age < infantAge);\n const rooms = getRooms(others);\n
|
|
1
|
+
{"version":3,"file":"getOccupationSuggestions.js","names":["_compareSuggestions","require","_getRooms","_shared__","ADULT","CHILD","GUEST","TYPE_OCCUPATION","getOccupationSuggestions","_ref","infantAge","occupation","others","isGuest","flat","some","type","arguments","length","undefined","adults","reduce","total","amount","children","ages","agesChildren","filter","totalAges","ageBaby","find","age","rooms","getRooms","suggestions","search","_ref2","availability","babies","startIndex","suggestion","compareSuggestions","initAges","push","map","Array","fill","pop","price","index","room","totalRooms","id","totalAvailability","occupied","sort","a","b","exports"],"sources":["../../../../src/services/Rates/helpers/getOccupationSuggestions.js"],"sourcesContent":["import { compareSuggestions } from './compareSuggestions';\nimport { getRooms } from './getRooms';\nimport { TYPE_OCCUPATION } from '../../../components/__shared__';\n\nconst { ADULT, CHILD, GUEST } = TYPE_OCCUPATION;\n\nexport const getOccupationSuggestions = ({ infantAge, occupation = [], ...others }) => {\n const isGuest = occupation.flat().some(({ type } = {}) => type === GUEST);\n const adults = occupation.flat().reduce((total, { amount, type } = {}) => total + (type !== CHILD ? amount : 0), 0);\n const { amount: children, ages: agesChildren } = occupation\n .flat()\n .filter(({ type } = {}) => type === CHILD)\n .reduce(\n ({ ages: totalAges, amount: total } = {}, { ages, amount } = {}) => ({\n amount: total + amount,\n ages: [...totalAges, ...ages],\n }),\n { amount: 0, ages: [] },\n );\n const ageBaby = agesChildren.find((age) => age < infantAge);\n const rooms = getRooms(others);\n const suggestions = [];\n\n const search = ({ adults, availability, babies, children, rooms, startIndex = 0, suggestion = [] }) => {\n if (\n adults === 0 &&\n children === 0 &&\n babies === 0 &&\n availability >= 0 &&\n !compareSuggestions({ suggestion, suggestions })\n ) {\n const initAges = [...agesChildren].filter((age) => age !== ageBaby);\n suggestions.push({\n occupation: suggestion.map(({ adults, babies, children } = {}) => {\n const occupation = [];\n if (adults > 0) {\n occupation.push({ ages: Array(adults).fill(undefined), amount: adults, type: isGuest ? GUEST : ADULT });\n }\n\n const ages = Array(children)\n .fill(undefined)\n .map(() => initAges.pop());\n if (babies > 0) ages.push(ageBaby);\n if (children + babies > 0) occupation.push({ ages, amount: children + babies, type: CHILD });\n\n return occupation;\n }),\n price: suggestion.reduce((total, { price } = {}) => total + price, 0),\n suggestion,\n });\n\n return;\n }\n\n for (let index = startIndex; index < rooms.length; index++) {\n const room = rooms[index];\n if (room.adults <= adults && room.children <= children && room.babies <= babies) {\n const totalRooms = rooms.filter(({ id } = {}) => id === room.id).length;\n const totalAvailability = rooms\n .filter(({ id } = {}) => id === room.id)\n .reduce((total, { availability } = {}) => total + availability, 0);\n const occupied = suggestion.filter(({ id } = {}) => id === room.id).length;\n\n search({\n adults: adults - room.adults,\n availability: totalAvailability - totalRooms - occupied,\n babies: babies - room.babies,\n children: children - room.children,\n rooms,\n startIndex: index + 1,\n suggestion: [\n ...suggestion,\n { id: room.id, adults: room.adults, children: room.children, babies: room.babies, price: room.price },\n ],\n });\n }\n }\n };\n\n search({ adults, babies: ageBaby >= 0 ? 1 : 0, children: ageBaby >= 0 ? children - 1 : children, rooms });\n\n if (suggestions.length === 0) {\n search({\n adults: ageBaby >= 0 ? adults + children - 1 : adults + children,\n babies: ageBaby >= 0 ? 1 : 0,\n children: 0,\n rooms,\n });\n }\n\n return suggestions.map(({ occupation, price } = {}) => ({ occupation, price })).sort((a, b) => a.price - b.price);\n};\n"],"mappings":"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"}
|
|
@@ -17,12 +17,12 @@ const getRooms = _ref => {
|
|
|
17
17
|
return Object.values(Object.values(roomTypes).flatMap(function () {
|
|
18
18
|
let {
|
|
19
19
|
amountAvailable: availability,
|
|
20
|
+
id,
|
|
20
21
|
occupationOptions
|
|
21
22
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
22
23
|
return Object.values(occupationOptions).map(function () {
|
|
23
24
|
var _parseBoards, _parseBoards$boards, _parseBoards$boards$;
|
|
24
25
|
let {
|
|
25
|
-
idWithBaby: id,
|
|
26
26
|
occupationQuantities: {
|
|
27
27
|
numAdults,
|
|
28
28
|
numBabies,
|
|
@@ -31,11 +31,11 @@ const getRooms = _ref => {
|
|
|
31
31
|
rates
|
|
32
32
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
33
33
|
return {
|
|
34
|
-
availability,
|
|
35
|
-
id,
|
|
36
34
|
adults: numAdults,
|
|
35
|
+
availability,
|
|
37
36
|
babies: numBabies,
|
|
38
37
|
children: totalChildren,
|
|
38
|
+
id,
|
|
39
39
|
price: (_parseBoards = (0, _parseBoards2.parseBoards)({
|
|
40
40
|
currency,
|
|
41
41
|
fees,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRooms.js","names":["_parseBoards2","require","MAX_ROOM_AVAILABILITY","getRooms","_ref","currency","fees","hotelCurrency","roomTypes","taxes","Object","values","flatMap","amountAvailable","availability","occupationOptions","arguments","length","undefined","map","_parseBoards","_parseBoards$boards","_parseBoards$boards$","
|
|
1
|
+
{"version":3,"file":"getRooms.js","names":["_parseBoards2","require","MAX_ROOM_AVAILABILITY","getRooms","_ref","currency","fees","hotelCurrency","roomTypes","taxes","Object","values","flatMap","amountAvailable","availability","id","occupationOptions","arguments","length","undefined","map","_parseBoards","_parseBoards$boards","_parseBoards$boards$","occupationQuantities","numAdults","numBabies","totalChildren","rates","adults","babies","children","price","parseBoards","boards","sort","a","b","reduce","result","current","key","concat","room","Array","fill","exports"],"sources":["../../../../src/services/Rates/helpers/getRooms.js"],"sourcesContent":["import { parseBoards } from './parseBoards';\n\nconst MAX_ROOM_AVAILABILITY = 5;\n\nexport const getRooms = ({ currency, fees, hotelCurrency, roomTypes, taxes }) =>\n Object.values(\n Object.values(roomTypes)\n .flatMap(({ amountAvailable: availability, id, occupationOptions } = {}) =>\n Object.values(occupationOptions).map(\n ({ occupationQuantities: { numAdults, numBabies, totalChildren } = {}, rates } = {}) => ({\n adults: numAdults,\n availability,\n babies: numBabies,\n children: totalChildren,\n id,\n price: parseBoards({ currency, fees, hotelCurrency, rates, taxes })?.boards?.[0]?.price,\n }),\n ),\n )\n .sort((a, b) => a.price - b.price)\n .reduce((result, current) => {\n const key = `${current.adults}-${current.babies}-${current.children}`;\n if (!result[key]) result[key] = current;\n\n return result;\n }, {}),\n ).flatMap((room) =>\n Array(room.availability > MAX_ROOM_AVAILABILITY ? MAX_ROOM_AVAILABILITY : room.availability)\n .fill(undefined)\n .map(() => room),\n );\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAEA,MAAMC,qBAAqB,GAAG,CAAC;AAExB,MAAMC,QAAQ,GAAGC,IAAA;EAAA,IAAC;IAAEC,QAAQ;IAAEC,IAAI;IAAEC,aAAa;IAAEC,SAAS;IAAEC;EAAM,CAAC,GAAAL,IAAA;EAAA,OAC1EM,MAAM,CAACC,MAAM,CACXD,MAAM,CAACC,MAAM,CAACH,SAAS,CAAC,CACrBI,OAAO,CAAC;IAAA,IAAC;MAAEC,eAAe,EAAEC,YAAY;MAAEC,EAAE;MAAEC;IAAkB,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OACrEP,MAAM,CAACC,MAAM,CAACK,iBAAiB,CAAC,CAACI,GAAG,CAClC;MAAA,IAAAC,YAAA,EAAAC,mBAAA,EAAAC,oBAAA;MAAA,IAAC;QAAEC,oBAAoB,EAAE;UAAEC,SAAS;UAAEC,SAAS;UAAEC;QAAc,CAAC,GAAG,CAAC,CAAC;QAAEC;MAAM,CAAC,GAAAX,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAM;QACvFY,MAAM,EAAEJ,SAAS;QACjBX,YAAY;QACZgB,MAAM,EAAEJ,SAAS;QACjBK,QAAQ,EAAEJ,aAAa;QACvBZ,EAAE;QACFiB,KAAK,GAAAX,YAAA,GAAE,IAAAY,yBAAW,EAAC;UAAE5B,QAAQ;UAAEC,IAAI;UAAEC,aAAa;UAAEqB,KAAK;UAAEnB;QAAM,CAAC,CAAC,cAAAY,YAAA,wBAAAC,mBAAA,GAA5DD,YAAA,CAA8Da,MAAM,cAAAZ,mBAAA,wBAAAC,oBAAA,GAApED,mBAAA,CAAuE,CAAC,CAAC,cAAAC,oBAAA,uBAAzEA,oBAAA,CAA2ES;MACpF,CAAC;IAAA,CACH,CAAC;EAAA,CACH,CAAC,CACAG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACJ,KAAK,GAAGK,CAAC,CAACL,KAAK,CAAC,CACjCM,MAAM,CAAC,CAACC,MAAM,EAAEC,OAAO,KAAK;IAC3B,MAAMC,GAAG,MAAAC,MAAA,CAAMF,OAAO,CAACX,MAAM,OAAAa,MAAA,CAAIF,OAAO,CAACV,MAAM,OAAAY,MAAA,CAAIF,OAAO,CAACT,QAAQ,CAAE;IACrE,IAAI,CAACQ,MAAM,CAACE,GAAG,CAAC,EAAEF,MAAM,CAACE,GAAG,CAAC,GAAGD,OAAO;IAEvC,OAAOD,MAAM;EACf,CAAC,EAAE,CAAC,CAAC,CACT,CAAC,CAAC3B,OAAO,CAAE+B,IAAI,IACbC,KAAK,CAACD,IAAI,CAAC7B,YAAY,GAAGZ,qBAAqB,GAAGA,qBAAqB,GAAGyC,IAAI,CAAC7B,YAAY,CAAC,CACzF+B,IAAI,CAAC1B,SAAS,CAAC,CACfC,GAAG,CAAC,MAAMuB,IAAI,CACnB,CAAC;AAAA;AAACG,OAAA,CAAA3C,QAAA,GAAAA,QAAA"}
|
|
@@ -119,7 +119,10 @@ const rates = function () {
|
|
|
119
119
|
} = info;
|
|
120
120
|
const {
|
|
121
121
|
occupationQuantities: {
|
|
122
|
+
numFirstRangeChildren: minRange = 0,
|
|
123
|
+
numSecondRangeChildren: maxRange = 0,
|
|
122
124
|
numAdults: adults = 0,
|
|
125
|
+
numBabies: babies = 0,
|
|
123
126
|
totalChildren: children = 0
|
|
124
127
|
} = {},
|
|
125
128
|
posibilities: [{
|
|
@@ -127,6 +130,7 @@ const rates = function () {
|
|
|
127
130
|
} = {}] = [],
|
|
128
131
|
rates
|
|
129
132
|
} = Object.values(occupationOptions)[0] || {};
|
|
133
|
+
const maxOccupation = adults + children;
|
|
130
134
|
return {
|
|
131
135
|
amenities: (0, _helpers.parseAmenities)(info),
|
|
132
136
|
availability,
|
|
@@ -163,11 +167,22 @@ const rates = function () {
|
|
|
163
167
|
}),
|
|
164
168
|
name,
|
|
165
169
|
nightsDeal,
|
|
166
|
-
maxOccupation
|
|
170
|
+
maxOccupation,
|
|
167
171
|
media: url3D || urlVideo ? {
|
|
168
172
|
url3D,
|
|
169
173
|
urlVideo
|
|
170
174
|
} : undefined,
|
|
175
|
+
occupation: maxOccupation ? [adults > 0 ? {
|
|
176
|
+
type: 2,
|
|
177
|
+
amount: adults
|
|
178
|
+
} : undefined, children > 0 ? {
|
|
179
|
+
type: 3,
|
|
180
|
+
ages: [minRange, maxRange],
|
|
181
|
+
amount: children
|
|
182
|
+
} : undefined, babies > 0 ? {
|
|
183
|
+
type: 4,
|
|
184
|
+
amount: babies
|
|
185
|
+
} : undefined].filter(item => !!item) : [],
|
|
171
186
|
size: size ? "".concat(size, " ").concat(_constants.UNIT[unit].size) : undefined
|
|
172
187
|
};
|
|
173
188
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rates.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","DOUBLE","SINGLE","BED_TYPE","FEATURE","PESTANA","rates","session","authorization","clubDiscount","locale","occupation","userCurrency","others","arguments","length","undefined","Promise","resolve","reject","_club$clubLogin","idtokenprovider","id","checkin","nights","club","authentication","type","rest","language","split","params","Object","entries","applyClubDiscount","cid","sha1","concat","KEY_HASH","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","measureUnit","unit","roomTypes","showLocalTaxes","fees","userCountry","country","vatIncluded","taxes","ServiceCurrency","exchange","items","values","infantAge","lowerBound","clubConditions","ServiceFeatures","get","EXTERNAL","URL","DEFAULT_LANGUAGE","externalSignout","TYPE","clubLogin","status","VALID","map","amountAvailable","availability","name","newInfoRoom","info","occupationOptions","description","roomTypeInfo","bedDistributions","bedType","galleryMedia","url3D","video","urlVideo","photos","roomSize","size","occupationQuantities","numAdults","adults","totalChildren","children","posibilities","nightsDeal","amenities","parseAmenities","bedDisposition","BED_DISPOSITION","bedTypes","reduce","next","forEach","amount","includes","parseBoards","images","photoAltDescription","alt","urlLarge","large","urlMediumRect","thumbnail","maxOccupation","media","UNIT","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 { BED_DISPOSITION, BED_TYPE, DEFAULT_LANGUAGE, EXTERNAL, KEY_HASH, UNIT, VALID } from './constants';\nimport {\n getTaxesType,\n parseAmenities,\n parseBoards,\n parseExternalToken,\n parseTracking,\n parseUnavailability,\n} from './helpers';\n\nconst { DOUBLE, SINGLE } = BED_TYPE;\n\nconst FEATURE = { PESTANA: 'pestana' };\n\nexport const rates = ({\n session: { authorization } = {},\n clubDiscount,\n locale,\n occupation,\n userCurrency,\n ...others\n} = {}) =>\n new Promise(async (resolve, reject) => {\n const {\n idtokenprovider: id,\n checkin,\n nights,\n club: { authentication: { type } = {} } = {},\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 currency: userCurrency,\n idtokenprovider: id,\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 });\n if (unavailability) return reject(unavailability);\n\n const {\n club,\n currencyCode: hotelCurrency,\n firstChildInterval = {},\n measureUnit: unit,\n roomTypes,\n showLocalTaxes: fees,\n userCountry: country,\n vatIncluded: taxes,\n } = response;\n\n const currency = userCurrency || hotelCurrency;\n await ServiceCurrency.exchange(currency);\n const items = Object.values(roomTypes);\n const infantAge = firstChildInterval?.lowerBound;\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 infantAge: infantAge !== null ? infantAge : undefined,\n items: items.map(\n ({ amountAvailable: availability, name, newInfoRoom: info = {}, occupationOptions = {} } = {}) => {\n const {\n description,\n roomTypeInfo: {\n bedDistributions: bedType = [],\n galleryMedia: { url3D, video: urlVideo } = {},\n photos,\n roomSize: size,\n } = {},\n } = info;\n const {\n occupationQuantities: { numAdults: adults = 0, totalChildren: children = 0 } = {},\n posibilities: [{ nights: nightsDeal } = {}] = [],\n rates,\n } = Object.values(occupationOptions)[0] || {};\n\n return {\n amenities: parseAmenities(info),\n availability,\n bedDisposition: bedType.map((type) => BED_DISPOSITION[type]),\n bedTypes: bedType.reduce((result, next) => {\n BED_DISPOSITION[next].forEach(({ amount, type } = {}) => {\n if ([DOUBLE, SINGLE].includes(type) && amount > 0) result[result.length ? 1 : 0] = type;\n });\n\n return result;\n }, []),\n ...parseBoards({ currency, fees, hotelCurrency, rates, taxes }),\n description,\n images: photos?.map(({ photoAltDescription: alt, urlLarge: large, urlMediumRect: thumbnail } = {}) => ({\n alt,\n large,\n thumbnail,\n })),\n name,\n nightsDeal,\n maxOccupation: adults + children,\n media: url3D || urlVideo ? { url3D, urlVideo } : undefined,\n size: size ? `${size} ${UNIT[unit].size}` : undefined,\n };\n },\n ),\n taxesType: getTaxesType(response),\n tracking: parseTracking(response),\n });\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rates.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","DOUBLE","SINGLE","BED_TYPE","FEATURE","PESTANA","rates","session","authorization","clubDiscount","locale","occupation","userCurrency","others","arguments","length","undefined","Promise","resolve","reject","_club$clubLogin","idtokenprovider","id","checkin","nights","club","authentication","type","rest","language","split","params","Object","entries","applyClubDiscount","cid","sha1","concat","KEY_HASH","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","measureUnit","unit","roomTypes","showLocalTaxes","fees","userCountry","country","vatIncluded","taxes","ServiceCurrency","exchange","items","values","infantAge","lowerBound","clubConditions","ServiceFeatures","get","EXTERNAL","URL","DEFAULT_LANGUAGE","externalSignout","TYPE","clubLogin","status","VALID","map","amountAvailable","availability","name","newInfoRoom","info","occupationOptions","description","roomTypeInfo","bedDistributions","bedType","galleryMedia","url3D","video","urlVideo","photos","roomSize","size","occupationQuantities","numFirstRangeChildren","minRange","numSecondRangeChildren","maxRange","numAdults","adults","numBabies","babies","totalChildren","children","posibilities","nightsDeal","maxOccupation","amenities","parseAmenities","bedDisposition","BED_DISPOSITION","bedTypes","reduce","next","forEach","amount","includes","parseBoards","images","photoAltDescription","alt","urlLarge","large","urlMediumRect","thumbnail","media","ages","item","UNIT","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 { BED_DISPOSITION, BED_TYPE, DEFAULT_LANGUAGE, EXTERNAL, KEY_HASH, UNIT, VALID } from './constants';\nimport {\n getTaxesType,\n parseAmenities,\n parseBoards,\n parseExternalToken,\n parseTracking,\n parseUnavailability,\n} from './helpers';\n\nconst { DOUBLE, SINGLE } = BED_TYPE;\n\nconst FEATURE = { PESTANA: 'pestana' };\n\nexport const rates = ({\n session: { authorization } = {},\n clubDiscount,\n locale,\n occupation,\n userCurrency,\n ...others\n} = {}) =>\n new Promise(async (resolve, reject) => {\n const {\n idtokenprovider: id,\n checkin,\n nights,\n club: { authentication: { type } = {} } = {},\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 currency: userCurrency,\n idtokenprovider: id,\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 });\n if (unavailability) return reject(unavailability);\n\n const {\n club,\n currencyCode: hotelCurrency,\n firstChildInterval = {},\n measureUnit: unit,\n roomTypes,\n showLocalTaxes: fees,\n userCountry: country,\n vatIncluded: taxes,\n } = response;\n\n const currency = userCurrency || hotelCurrency;\n await ServiceCurrency.exchange(currency);\n const items = Object.values(roomTypes);\n const infantAge = firstChildInterval?.lowerBound;\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 infantAge: infantAge !== null ? infantAge : undefined,\n items: items.map(\n ({ amountAvailable: availability, name, newInfoRoom: info = {}, occupationOptions = {} } = {}) => {\n const {\n description,\n roomTypeInfo: {\n bedDistributions: bedType = [],\n galleryMedia: { url3D, video: urlVideo } = {},\n photos,\n roomSize: size,\n } = {},\n } = info;\n\n const {\n occupationQuantities: {\n numFirstRangeChildren: minRange = 0,\n numSecondRangeChildren: maxRange = 0,\n numAdults: adults = 0,\n numBabies: babies = 0,\n totalChildren: children = 0,\n } = {},\n posibilities: [{ nights: nightsDeal } = {}] = [],\n rates,\n } = Object.values(occupationOptions)[0] || {};\n\n const maxOccupation = adults + children;\n\n return {\n amenities: parseAmenities(info),\n availability,\n bedDisposition: bedType.map((type) => BED_DISPOSITION[type]),\n bedTypes: bedType.reduce((result, next) => {\n BED_DISPOSITION[next].forEach(({ amount, type } = {}) => {\n if ([DOUBLE, SINGLE].includes(type) && amount > 0) result[result.length ? 1 : 0] = type;\n });\n\n return result;\n }, []),\n ...parseBoards({ currency, fees, hotelCurrency, rates, taxes }),\n description,\n images: photos?.map(({ photoAltDescription: alt, urlLarge: large, urlMediumRect: thumbnail } = {}) => ({\n alt,\n large,\n thumbnail,\n })),\n name,\n nightsDeal,\n maxOccupation,\n media: url3D || urlVideo ? { url3D, urlVideo } : undefined,\n occupation: maxOccupation\n ? [\n adults > 0 ? { type: 2, amount: adults } : undefined,\n children > 0 ? { type: 3, ages: [minRange, maxRange], amount: children } : undefined,\n babies > 0 ? { type: 4, amount: babies } : undefined,\n ].filter((item) => !!item)\n : [],\n size: size ? `${size} ${UNIT[unit].size}` : undefined,\n };\n },\n ),\n taxesType: getTaxesType(response),\n tracking: parseTracking(response),\n });\n });\n"],"mappings":"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"}
|