@mirai/core 0.3.60 → 0.3.61
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/Finder/helpers/getForwarderUrl.js +4 -2
- package/build/components/Finder/helpers/getForwarderUrl.js.map +1 -1
- package/build/components/Rates/Rates.Footer.js +65 -77
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/{Rates.Filter.js → Rates.Header.js} +53 -80
- package/build/components/Rates/Rates.Header.js.map +1 -0
- package/build/components/Rates/Rates.RoomSelector.js +96 -0
- package/build/components/Rates/Rates.RoomSelector.js.map +1 -0
- package/build/components/Rates/Rates.Skeleton.js +116 -40
- package/build/components/Rates/Rates.Skeleton.js.map +1 -1
- package/build/components/Rates/Rates.constants.js +7 -1
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.js +90 -47
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +16 -7
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/Rates.module.css +149 -67
- package/build/components/Rates/components/Item/Item.Preview.js +46 -29
- package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Rates.js +112 -143
- package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Summary.js +141 -0
- package/build/components/Rates/components/Item/Item.Summary.js.map +1 -0
- package/build/components/Rates/components/Item/Item.js +67 -64
- package/build/components/Rates/components/Item/Item.js.map +1 -1
- package/build/components/Rates/components/Item/Item.l10n.js +22 -0
- package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/Item.module.css +80 -104
- package/build/components/Rates/components/Item/components/Amenities/Amenities.js +15 -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 +11 -3
- package/build/components/Rates/components/Item/components/Discount/Discount.js +14 -13
- package/build/components/Rates/components/Item/components/Discount/Discount.js.map +1 -1
- package/build/components/Rates/components/Item/components/Discount/Discount.module.css +4 -3
- package/build/components/Rates/components/Item/components/Features/Features.js +4 -10
- package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
- package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -5
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +34 -6
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.module.css +7 -0
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js +18 -9
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.module.css +17 -1
- package/build/components/Rates/components/Item/components/ModalUrl/ModalUrl.module.css +1 -1
- package/build/components/Rates/components/Item/components/Option/Option.js +72 -0
- package/build/components/Rates/components/Item/components/Option/Option.js.map +1 -0
- package/build/components/Rates/components/Item/components/Option/Option.module.css +24 -0
- package/build/components/Rates/components/Item/components/Option/index.js +17 -0
- package/build/components/Rates/components/Item/components/Option/index.js.map +1 -0
- package/build/components/Rates/components/Item/components/index.js +11 -0
- package/build/components/Rates/components/Item/components/index.js.map +1 -1
- package/build/components/Rates/helpers/getForwarderUrl.js +23 -12
- package/build/components/Rates/helpers/getForwarderUrl.js.map +1 -1
- package/build/components/helpers/ICON.js +10 -2
- package/build/components/helpers/ICON.js.map +1 -1
- package/build/components/helpers/index.js +11 -0
- package/build/components/helpers/index.js.map +1 -1
- package/build/components/helpers/opacity.js +17 -0
- package/build/components/helpers/opacity.js.map +1 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +1662 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +296 -510
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +895 -1795
- package/build/services/Rates/__tests__/__mocks__/rates-response.json +197 -369
- package/build/services/Rates/__tests__/__mocks__/rates-success-cancel-types.json +32481 -0
- package/build/services/Rates/constants.js +18 -1
- package/build/services/Rates/constants.js.map +1 -1
- package/build/services/Rates/get.js +41 -112
- package/build/services/Rates/get.js.map +1 -1
- package/build/services/Rates/helpers/getIncrements.js +69 -0
- package/build/services/Rates/helpers/getIncrements.js.map +1 -0
- package/build/services/Rates/helpers/index.js +22 -0
- package/build/services/Rates/helpers/index.js.map +1 -1
- package/build/services/Rates/helpers/parseBoards.js +156 -0
- package/build/services/Rates/helpers/parseBoards.js.map +1 -0
- package/build/services/Rates/helpers/parseExternalToken.js +24 -0
- package/build/services/Rates/helpers/parseExternalToken.js.map +1 -0
- package/package.json +1 -1
- package/public/App.module.css +5 -0
- package/public/themes/monalisa.theme.css +3 -0
- package/build/components/Rates/Rates.Filter.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","style","_Rates5","_services","_Finder","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Rates","_ref","skeleton","others","translate","useLocale","value","club","discount","currency","finder","occupation","hotel","locale","session","urlParams","useStore","compact","setCompact","useState","dataSource","setDataSource","fetching","setFetching","undefined","filter","setFilter","clubDiscount","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","responseError","setResponseError","selected","setSelected","storage","Storage","adapter","LocalAdapter","cache","RATES_STORAGE_CACHE","useEffect","nextSelected","handleScroll","window","addEventListener","removeEventListener","fetch","params","nextParams","ServiceRates","catch","concat","RATES_STORAGE_KEY","generateId","JSON","stringify","handleChange","amount","id","standalone","next","handleChangeCurrency","nextCurrency","handleChangeFilter","nextFilter","handleFinderSubmit","values","getFinderParams","history","replaceState","toUrlParams","response","createElement","Fragment","View","className","Finder","assisted","text","L10N","ACTION_SEARCH","onExpand","onSubmit","role","styles","container","Progress","indeterminate","visible","progress","wrapper","content","Filter","onChange","onCurrency","items","map","_ref2","index","item","Item","taxes","onMoreInfo","onRateInfo","rate","onViewUrl","info","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Progress, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Item, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getFinderParams } from './helpers';\nimport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY } from './Rates.constants';\nimport { Filter } from './Rates.Filter';\nimport { Footer } from './Rates.Footer';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport Skeleton from './Rates.Skeleton';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder/Finder';\nimport { generateId, toUrlParams } from '../helpers';\n\nconst Rates = ({ skeleton, ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: { club: { discount } = {}, currency, finder: { occupation } = {}, hotel = {}, locale, session, urlParams },\n } = useStore();\n\n const [compact, setCompact] = useState(true);\n const [dataSource, setDataSource] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [filter, setFilter] = useState({ clubDiscount: discount });\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [responseError, setResponseError] = useState();\n const [selected, setSelected] = useState({});\n\n const storage = new Storage({ adapter: LocalAdapter, cache: RATES_STORAGE_CACHE });\n\n useEffect(() => {\n if (skeleton) return setFetching(true);\n\n if (urlParams) {\n const nextSelected = storage.get(key(urlParams));\n if (nextSelected) setSelected(nextSelected);\n }\n\n const handleScroll = () => setCompact(true);\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n fetch(currency);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, locale, session]);\n\n const fetch = async (currency, clubDiscount = filter.clubDiscount, params = urlParams) => {\n if (skeleton) return;\n setFetching(true);\n const nextParams = { ...params, currency, locale, session, clubDiscount };\n setDataSource(await ServiceRates.get(nextParams).catch(setResponseError));\n setFetching(false);\n };\n\n const key = (dataSource) => `${RATES_STORAGE_KEY}:${generateId(JSON.stringify(dataSource))}`;\n\n const handleChange = ({ amount = 0, id, standalone = false, ...others } = {}) => {\n const next = standalone ? {} : { ...selected };\n if (amount === 0) delete next[id];\n else next[id] = { amount, ...others };\n\n setSelected(next);\n storage.set(key(urlParams), next);\n };\n\n const handleChangeCurrency = async (nextCurrency) => {\n await fetch(nextCurrency);\n set({ currency: nextCurrency });\n };\n\n const handleChangeFilter = async (nextFilter) => {\n setFilter(nextFilter);\n if (nextFilter.clubDiscount !== filter.clubDiscount) await fetch(currency, nextFilter.clubDiscount);\n };\n\n const handleFinderSubmit = (values) => {\n setCompact(true);\n setDataSource(undefined);\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n\n history.replaceState({}, '', toUrlParams(params));\n fetch(currency, filter.clubDiscount, params);\n };\n\n const response = dataSource !== undefined;\n\n return (\n <>\n <View className={style.finder}>\n <Finder\n assisted={false}\n compact={compact}\n text={translate(L10N.ACTION_SEARCH)}\n onExpand={() => setCompact(false)}\n onSubmit={handleFinderSubmit}\n />\n </View>\n <View {...others} role=\"rates\" className={styles(style.container, others.className)}>\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n <View className={[style.wrapper, style.content]}>\n {response ? (\n <>\n <Filter\n dataSource={dataSource}\n value={filter}\n onChange={handleChangeFilter}\n onCurrency={handleChangeCurrency}\n />\n {dataSource.items.map(({ id, ...item }, index) => (\n <Item\n key={id || index}\n {...{ id, ...item, filter, occupation, selected, taxes: dataSource.taxes }}\n onChange={handleChange}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo(rate)}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n </>\n ) : (\n <Skeleton />\n )}\n </View>\n\n {response && (\n <Footer {...{ dataSource, filter, occupation, selected, taxes: dataSource?.taxes }} onChange={handleChange} />\n )}\n </View>\n\n <ModalItemInfo {...itemInfo} visible={!!itemInfo} onClose={() => setItemInfo()} />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n </>\n );\n};\n\nRates.displayName = 'Mirai:User:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","style","_Rates5","_Rates6","_services","_Finder","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Rates","_ref","skeleton","others","isMobile","useDevice","translate","useLocale","refRoomSelector","useRef","value","club","discount","currency","finder","occupation","hotel","language","locale","session","urlParams","useStore","cart","setCart","useState","compact","setCompact","dataSource","setDataSource","fetching","setFetching","undefined","filter","setFilter","clubDiscount","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","responseError","setResponseError","room","setRoom","storage","Storage","adapter","LocalAdapter","cache","RATES_STORAGE_CACHE","useEffect","handleScroll","window","addEventListener","removeEventListener","externalLogoff","id","document","location","href","concat","process","env","SERVICE_USER","EXPIRATION_ENDPOINT","multiRoom","current","offsetHeight","offsetTop","documentElement","scrollTo","top","behavior","fetch","params","nextParams","parties","parseToParties","ServiceRates","catch","RATES_STORAGE_KEY","generateId","JSON","stringify","handleChange","board","nextCart","handleChangeCurrency","nextCurrency","handleChangeFilter","nextFilter","handleFinderSubmit","values","getFinderParams","history","replaceState","toUrlParams","response","roomSelectorProps","onPress","createElement","Fragment","View","ref","className","styles","sticky","Finder","assisted","text","L10N","ACTION_SEARCH","onExpand","onSubmit","Progress","indeterminate","visible","progress","RoomSelector","role","container","wrapper","content","Header","onChange","onCurrency","row","items","map","_ref2","index","item","Item","taxes","onMoreInfo","onRateInfo","rate","onViewUrl","info","Notification","error","large","Text","align","markdown","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","exports","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Notification, Progress, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Item, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getFinderParams } from './helpers';\nimport { EXPIRATION_ENDPOINT, RATES_STORAGE_CACHE, RATES_STORAGE_KEY } from './Rates.constants';\nimport { Footer } from './Rates.Footer';\nimport { Header } from './Rates.Header';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { RoomSelector } from './Rates.RoomSelector';\nimport Skeleton from './Rates.Skeleton';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder/Finder';\nimport { generateId, parseToParties, toUrlParams } from '../helpers';\n\nconst Rates = ({ skeleton, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const {\n set,\n value: {\n club: { discount, ...club } = {},\n currency,\n finder: { occupation = [] } = {},\n hotel = {},\n language,\n locale,\n session,\n urlParams,\n },\n } = useStore();\n\n const [cart, setCart] = useState([]);\n const [compact, setCompact] = useState(true);\n const [dataSource, setDataSource] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [filter, setFilter] = useState({ clubDiscount: discount });\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n\n const storage = new Storage({ adapter: LocalAdapter, cache: RATES_STORAGE_CACHE });\n\n useEffect(() => {\n if (skeleton) return setFetching(true);\n\n const handleScroll = () => setCompact(true);\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!urlParams || !dataSource) return;\n\n // ! Should know if didnt expire the storage\n // const storedCart = storage.get(key(urlParams));\n // if (storedCart) setCart(storedCart.map((item) => (item !== null ? item : undefined)));\n if (dataSource?.externalLogoff && club?.id)\n document.location.href = `${process.env.SERVICE_USER}/${EXPIRATION_ENDPOINT}?idClub=${club.id}&lang=${language}`;\n\n if (room == undefined && occupation.length > 1) setRoom(0);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n useEffect(() => {\n if (multiRoom && room > 0) {\n const { current: { offsetHeight = 0, offsetTop = 0 } = {} } = refRoomSelector || {};\n document.documentElement.scrollTo({ top: offsetTop + (isMobile ? offsetHeight : 0), behavior: 'smooth' });\n setDataSource();\n }\n fetch(currency, undefined, undefined, room);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale, room, session]);\n\n const fetch = async (currency, clubDiscount = filter.clubDiscount, params = urlParams, room) => {\n if (skeleton) return;\n\n setFetching(true);\n\n setResponseError();\n const nextParams = { ...params, club, clubDiscount, currency, locale, session };\n if (room !== undefined) nextParams.parties = parseToParties([occupation[room]]);\n setDataSource(await ServiceRates.get(nextParams).catch(setResponseError));\n setFetching(false);\n };\n\n const key = (dataSource) => `${RATES_STORAGE_KEY}:${generateId(JSON.stringify(dataSource))}`;\n\n const handleChange = (board) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board;\n\n setCart(nextCart);\n storage.set(key(urlParams), nextCart);\n\n if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);\n };\n\n const handleChangeCurrency = async (nextCurrency) => {\n await fetch(nextCurrency, undefined, undefined, room);\n setCart([]);\n set({ currency: nextCurrency });\n };\n\n const handleChangeFilter = async (nextFilter) => {\n setFilter(nextFilter);\n if (nextFilter.clubDiscount !== filter.clubDiscount)\n await fetch(currency, nextFilter.clubDiscount, undefined, room);\n };\n\n const handleFinderSubmit = (values) => {\n setCompact(true);\n setDataSource(undefined);\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n\n history.replaceState({}, '', toUrlParams(params));\n // ! TODO: Restart the process?\n setCart([]);\n setRoom(undefined);\n fetch(currency, filter.clubDiscount, params);\n };\n\n const multiRoom = occupation?.length > 1;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n\n return (\n <>\n <View ref={refRoomSelector} className={styles(style.finder, !multiRoom && style.sticky)}>\n <Finder\n assisted={false}\n compact={compact}\n text={translate(L10N.ACTION_SEARCH)}\n onExpand={() => setCompact(false)}\n onSubmit={handleFinderSubmit}\n />\n </View>\n\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n {isMobile && <RoomSelector {...roomSelectorProps} />}\n\n <View {...others} role=\"rates\" className={styles(style.container, others.className)}>\n <View className={[style.wrapper, style.content]}>\n {response && (\n <Header\n {...{ dataSource, occupation }}\n value={filter}\n onChange={handleChangeFilter}\n onCurrency={handleChangeCurrency}\n className={multiRoom ? style.sticky : undefined}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </Header>\n )}\n\n {response ? (\n <>\n <View row={!isMobile} className={style.items}>\n {dataSource.items.map(({ id, ...item }, index) => (\n <Item\n key={id || index}\n {...{ id, ...item, filter, multiRoom, taxes: dataSource.taxes }}\n cart={cart[room || 0]}\n onChange={handleChange}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo(rate)}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n </View>\n </>\n ) : responseError ? (\n <Notification error large>\n <Text align=\"center\" markdown={false}>\n {JSON.stringify(responseError)}\n </Text>\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n\n <Footer {...{ cart, dataSource, filter, multiRoom, occupation }} onChange={handleChange} />\n </View>\n\n <ModalItemInfo {...itemInfo} visible={!!itemInfo} onClose={() => setItemInfo()} />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n </>\n );\n};\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":"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"}
|
|
@@ -5,11 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.L10N = void 0;
|
|
7
7
|
const L10N = exports.L10N = {
|
|
8
|
+
ACTION_CLUB_VIEW_CONDITIONS: {
|
|
9
|
+
id: 'finder.action.club_view_conditions'
|
|
10
|
+
},
|
|
8
11
|
ACTION_HIDE_CART: {
|
|
9
12
|
id: 'finder.action.hide_cart'
|
|
10
13
|
},
|
|
11
|
-
|
|
12
|
-
id: '
|
|
14
|
+
ACTION_RESERVE: {
|
|
15
|
+
id: 'common.action.reserve'
|
|
13
16
|
},
|
|
14
17
|
ACTION_SEARCH: {
|
|
15
18
|
id: 'common.action.search'
|
|
@@ -17,20 +20,26 @@ const L10N = exports.L10N = {
|
|
|
17
20
|
ACTION_VIEW_CART: {
|
|
18
21
|
id: 'finder.action.view_cart'
|
|
19
22
|
},
|
|
20
|
-
|
|
21
|
-
id: '
|
|
23
|
+
LABEL_ACCOMMODATION_TYPE: {
|
|
24
|
+
id: 'common.label.accommodation_type'
|
|
22
25
|
},
|
|
23
26
|
LABEL_CLUB_BENEFITS: {
|
|
24
27
|
id: 'finder.label.club_benefits'
|
|
25
28
|
},
|
|
29
|
+
LABEL_CLUB_CONDITIONS: {
|
|
30
|
+
id: 'finder.label.club_conditions'
|
|
31
|
+
},
|
|
32
|
+
LABEL_CLUB_DISCOUNT: {
|
|
33
|
+
id: 'finder.label.discount_club'
|
|
34
|
+
},
|
|
26
35
|
LABEL_CLUB_MEMBERS_EXCLUSIVE: {
|
|
27
36
|
id: 'finder.label.club_members_exclusive'
|
|
28
37
|
},
|
|
29
|
-
LABEL_SELECT_TYPE_ACCOMMODATION: {
|
|
30
|
-
id: 'finder.label.select_type_accommodation'
|
|
31
|
-
},
|
|
32
38
|
LABEL_INCLUDES_TAXES_FEES: {
|
|
33
39
|
id: 'finder.label.includes_taxes_fees'
|
|
40
|
+
},
|
|
41
|
+
LABEL_SELECT: {
|
|
42
|
+
id: 'common.label.select'
|
|
34
43
|
}
|
|
35
44
|
};
|
|
36
45
|
//# sourceMappingURL=Rates.l10n.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.l10n.js","names":["L10N","exports","
|
|
1
|
+
{"version":3,"file":"Rates.l10n.js","names":["L10N","exports","ACTION_CLUB_VIEW_CONDITIONS","id","ACTION_HIDE_CART","ACTION_RESERVE","ACTION_SEARCH","ACTION_VIEW_CART","LABEL_ACCOMMODATION_TYPE","LABEL_CLUB_BENEFITS","LABEL_CLUB_CONDITIONS","LABEL_CLUB_DISCOUNT","LABEL_CLUB_MEMBERS_EXCLUSIVE","LABEL_INCLUDES_TAXES_FEES","LABEL_SELECT"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_HIDE_CART: { id: 'finder.action.hide_cart' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SEARCH: { id: 'common.action.search' },\n ACTION_VIEW_CART: { id: 'finder.action.view_cart' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CLUB_CONDITIONS: { id: 'finder.label.club_conditions' },\n LABEL_CLUB_DISCOUNT: { id: 'finder.label.discount_club' },\n LABEL_CLUB_MEMBERS_EXCLUSIVE: { id: 'finder.label.club_members_exclusive' },\n LABEL_INCLUDES_TAXES_FEES: { id: 'finder.label.includes_taxes_fees' },\n LABEL_SELECT: { id: 'common.label.select' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,2BAA2B,EAAE;IAAEC,EAAE,EAAE;EAAqC,CAAC;EACzEC,gBAAgB,EAAE;IAAED,EAAE,EAAE;EAA0B,CAAC;EACnDE,cAAc,EAAE;IAAEF,EAAE,EAAE;EAAwB,CAAC;EAC/CG,aAAa,EAAE;IAAEH,EAAE,EAAE;EAAuB,CAAC;EAC7CI,gBAAgB,EAAE;IAAEJ,EAAE,EAAE;EAA0B,CAAC;EAEnDK,wBAAwB,EAAE;IAAEL,EAAE,EAAE;EAAkC,CAAC;EACnEM,mBAAmB,EAAE;IAAEN,EAAE,EAAE;EAA6B,CAAC;EACzDO,qBAAqB,EAAE;IAAEP,EAAE,EAAE;EAA+B,CAAC;EAC7DQ,mBAAmB,EAAE;IAAER,EAAE,EAAE;EAA6B,CAAC;EACzDS,4BAA4B,EAAE;IAAET,EAAE,EAAE;EAAsC,CAAC;EAC3EU,yBAAyB,EAAE;IAAEV,EAAE,EAAE;EAAmC,CAAC;EACrEW,YAAY,EAAE;IAAEX,EAAE,EAAE;EAAsB;AAC5C,CAAC"}
|
|
@@ -10,16 +10,20 @@ body {
|
|
|
10
10
|
border-bottom: solid 1px var(--mirai-ui-content-border);
|
|
11
11
|
border-top: solid 1px var(--mirai-ui-content-border);
|
|
12
12
|
padding: var(--mirai-ui-space-XS);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.finder.sticky {
|
|
13
16
|
position: sticky;
|
|
14
17
|
top: 0;
|
|
15
18
|
z-index: var(--mirai-ui-layer-M);
|
|
16
19
|
}
|
|
17
20
|
|
|
18
21
|
.progress {
|
|
19
|
-
position:
|
|
22
|
+
position: absolute;
|
|
20
23
|
top: 0;
|
|
21
24
|
left: 0;
|
|
22
25
|
right: 0;
|
|
26
|
+
z-index: 1;
|
|
23
27
|
}
|
|
24
28
|
|
|
25
29
|
.container {
|
|
@@ -41,21 +45,26 @@ body {
|
|
|
41
45
|
width: 100%;
|
|
42
46
|
}
|
|
43
47
|
|
|
44
|
-
/* --
|
|
45
|
-
.
|
|
46
|
-
|
|
48
|
+
/* -- <Header> ------------------------------------------------------------------------------------------------------ */
|
|
49
|
+
.header {
|
|
50
|
+
gap: var(--mirai-ui-space-XS);
|
|
51
|
+
justify-content: flex-end;
|
|
47
52
|
}
|
|
48
53
|
|
|
49
|
-
.
|
|
50
|
-
|
|
54
|
+
.header.sticky {
|
|
55
|
+
backdrop-filter: blur(8px);
|
|
56
|
+
background-color: var(--mirai-ui-content-background);
|
|
57
|
+
position: sticky;
|
|
58
|
+
top: 0;
|
|
59
|
+
z-index: var(--mirai-ui-layer-M);
|
|
51
60
|
}
|
|
52
61
|
|
|
53
|
-
.
|
|
62
|
+
.header .input {
|
|
54
63
|
margin-bottom: 0;
|
|
55
64
|
align-self: center;
|
|
56
65
|
}
|
|
57
66
|
|
|
58
|
-
.
|
|
67
|
+
.header .currencyValue {
|
|
59
68
|
background-color: var(--mirai-ui-base);
|
|
60
69
|
bottom: calc(var(--mirai-ui-border-width) * 2);
|
|
61
70
|
font-family: var(--mirai-ui-input-font);
|
|
@@ -75,45 +84,91 @@ body {
|
|
|
75
84
|
-moz-appearance: none;
|
|
76
85
|
}
|
|
77
86
|
|
|
78
|
-
.
|
|
87
|
+
.header .selectCurrencies {
|
|
79
88
|
max-width: calc(var(--mirai-ui-space-XL) * 1.8);
|
|
80
89
|
min-width: calc(var(--mirai-ui-space-XL) * 1.8);
|
|
81
90
|
}
|
|
82
91
|
|
|
83
|
-
.
|
|
92
|
+
.header .selectCurrencies [data-role='select'] {
|
|
84
93
|
color: transparent;
|
|
85
94
|
}
|
|
86
95
|
|
|
87
|
-
.
|
|
88
|
-
|
|
96
|
+
.header .tooltip [data-role='text'] {
|
|
97
|
+
color: var(--mirai-ui-tooltip-color);
|
|
89
98
|
}
|
|
90
99
|
|
|
91
|
-
.
|
|
100
|
+
.header .action {
|
|
101
|
+
display: inline;
|
|
102
|
+
font-size: inherit;
|
|
103
|
+
pointer-events: auto;
|
|
104
|
+
overflow: auto;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.header .action:hover {
|
|
108
|
+
color: var(--mirai-ui-tooltip-color);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.tag {
|
|
92
112
|
align-items: center;
|
|
93
113
|
background-color: var(--mirai-ui-base);
|
|
94
114
|
border: var(--mirai-ui-input-text-border);
|
|
95
115
|
border-radius: var(--mirai-ui-input-text-radius);
|
|
96
116
|
display: flex;
|
|
97
|
-
gap: var(--mirai-ui-space-
|
|
117
|
+
gap: var(--mirai-ui-space-XS);
|
|
98
118
|
min-height: var(--mirai-ui-input-min-height);
|
|
99
119
|
padding-left: var(--mirai-ui-input-text-padding-x);
|
|
100
120
|
padding-right: var(--mirai-ui-input-text-padding-x);
|
|
101
121
|
}
|
|
102
122
|
|
|
103
|
-
.
|
|
123
|
+
.tag > [data-role] {
|
|
124
|
+
color: var(--mirai-ui-content-light);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.tag.active {
|
|
104
128
|
background-color: var(--mirai-ui-accent);
|
|
105
129
|
}
|
|
106
130
|
|
|
107
|
-
.
|
|
131
|
+
.tag.active > [data-role] {
|
|
108
132
|
color: var(--mirai-ui-base);
|
|
109
133
|
}
|
|
110
134
|
|
|
111
|
-
.
|
|
112
|
-
.
|
|
135
|
+
.tag.active,
|
|
136
|
+
.tag.pressable:hover {
|
|
113
137
|
border-color: var(--mirai-ui-accent);
|
|
114
138
|
}
|
|
115
139
|
|
|
116
|
-
|
|
140
|
+
.tag.highlight {
|
|
141
|
+
border-color: var(--mirai-ui-accent);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.tag.highlight > [data-role] {
|
|
145
|
+
color: var(--mirai-ui-accent);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.tag.room {
|
|
149
|
+
min-width: fit-content;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.tag.room .guests {
|
|
153
|
+
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.tag.room .separator {
|
|
157
|
+
opacity: 0.33;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/* -- <RoomSelector> ------------------------------------------------------------------------------------------------ */
|
|
161
|
+
.roomSelector {
|
|
162
|
+
flex: 1;
|
|
163
|
+
gap: var(--mirai-ui-space-XS);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
/* -- <Items> ------------------------------------------------------------------------------------------------------- */
|
|
167
|
+
.items {
|
|
168
|
+
gap: var(--mirai-ui-space-M);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/* -- <Footer> ------------------------------------------------------------------------------------------------------ */
|
|
117
172
|
.footer {
|
|
118
173
|
background-color: var(--mirai-ui-base);
|
|
119
174
|
bottom: 0;
|
|
@@ -129,48 +184,37 @@ body {
|
|
|
129
184
|
transform: translateY(0%);
|
|
130
185
|
}
|
|
131
186
|
|
|
132
|
-
.footer .
|
|
133
|
-
flex: 1;
|
|
134
|
-
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
.footer .price .line {
|
|
138
|
-
gap: var(--mirai-ui-space-XS);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
.footer .expanded {
|
|
142
|
-
padding-bottom: var(--mirai-ui-space-S);
|
|
143
|
-
margin-bottom: var(--mirai-ui-space-M);
|
|
144
|
-
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
187
|
+
.footer .cartItem {
|
|
145
188
|
box-shadow: inset 0 -1px 0 var(--mirai-ui-content-border);
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
.footer .item {
|
|
149
|
-
background-color: var(--mirai-ui-content-background);
|
|
150
|
-
border-radius: var(--mirai-ui-border-radius);
|
|
151
189
|
gap: var(--mirai-ui-space-XS);
|
|
152
|
-
padding: calc(var(--mirai-ui-space-XS) / 2) var(--mirai-ui-space-XS) calc(var(--mirai-ui-space-XS) / 2)
|
|
153
|
-
var(--mirai-ui-space-XS);
|
|
154
190
|
}
|
|
155
191
|
|
|
156
|
-
.
|
|
192
|
+
.cartItem .room {
|
|
157
193
|
background-color: var(--mirai-ui-content-border);
|
|
158
|
-
border-radius: var(--mirai-ui-border-radius);
|
|
194
|
+
border-radius: calc(var(--mirai-ui-border-radius) / 2);
|
|
159
195
|
height: var(--mirai-ui-space-L);
|
|
160
196
|
line-height: var(--mirai-ui-space-L);
|
|
161
|
-
|
|
162
|
-
width: var(--mirai-ui-space-L);
|
|
197
|
+
padding: 0 var(--mirai-ui-space-XS);
|
|
163
198
|
}
|
|
164
199
|
|
|
165
|
-
.
|
|
200
|
+
.cartItem .description {
|
|
166
201
|
flex: 1;
|
|
167
202
|
overflow: hidden;
|
|
168
203
|
text-overflow: ellipsis;
|
|
169
204
|
white-space: nowrap;
|
|
170
205
|
}
|
|
171
206
|
|
|
172
|
-
.
|
|
173
|
-
|
|
207
|
+
.cartItem .buttonClose {
|
|
208
|
+
background-color: var(--mirai-ui-content-background);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.footer .summary {
|
|
212
|
+
gap: var(--mirai-ui-space-S);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.footer .totalPrice {
|
|
216
|
+
flex: 1;
|
|
217
|
+
gap: calc(var(--mirai-ui-space-XS) / 2);
|
|
174
218
|
}
|
|
175
219
|
|
|
176
220
|
/* -- common ---------------------------------------------------------------- */
|
|
@@ -181,48 +225,86 @@ body {
|
|
|
181
225
|
padding: var(--mirai-ui-space-M);
|
|
182
226
|
}
|
|
183
227
|
|
|
184
|
-
/* S
|
|
185
|
-
@media only screen and (max-width:
|
|
228
|
+
/* S */
|
|
229
|
+
@media only screen and (max-width: 430px) {
|
|
186
230
|
.container {
|
|
187
|
-
padding: var(--mirai-ui-space-
|
|
231
|
+
padding: 0 var(--mirai-ui-space-XS) var(--mirai-ui-space-M) var(--mirai-ui-space-XS);
|
|
188
232
|
}
|
|
189
233
|
|
|
190
|
-
.
|
|
191
|
-
|
|
234
|
+
.header {
|
|
235
|
+
padding: var(--mirai-ui-space-M) 0;
|
|
192
236
|
}
|
|
193
237
|
|
|
194
|
-
.
|
|
195
|
-
|
|
238
|
+
.header .tag {
|
|
239
|
+
justify-content: space-between;
|
|
196
240
|
}
|
|
197
241
|
|
|
198
|
-
|
|
199
|
-
|
|
242
|
+
/* -- <RoomSelector> ---------------------------------------------------------------------------------------------- */
|
|
243
|
+
.roomSelector {
|
|
244
|
+
background-color: var(--mirai-ui-base);
|
|
245
|
+
border-bottom: solid 1px var(--mirai-ui-content-border);
|
|
246
|
+
left: 0;
|
|
247
|
+
padding: var(--mirai-ui-space-XS);
|
|
248
|
+
position: sticky;
|
|
249
|
+
right: 0;
|
|
250
|
+
top: 0;
|
|
251
|
+
width: auto;
|
|
252
|
+
z-index: var(--mirai-ui-layer-M);
|
|
200
253
|
}
|
|
201
254
|
|
|
202
|
-
.
|
|
203
|
-
|
|
255
|
+
.roomSelector .tag {
|
|
256
|
+
min-height: calc(var(--mirai-ui-space-L) + var(--mirai-ui-space-M));
|
|
257
|
+
padding-left: calc(var(--mirai-ui-input-text-padding-x) / 2);
|
|
258
|
+
padding-right: calc(var(--mirai-ui-input-text-padding-x) / 2);
|
|
204
259
|
}
|
|
205
260
|
|
|
206
|
-
|
|
207
|
-
|
|
261
|
+
/* -- <Footer> ---------------------------------------------------------------------------------------------------- */
|
|
262
|
+
.footer .cartItem {
|
|
263
|
+
padding: var(--mirai-ui-space-XS) var(--mirai-ui-space-S);
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.footer .summary {
|
|
267
|
+
align-items: flex-end;
|
|
268
|
+
padding: var(--mirai-ui-space-S);
|
|
208
269
|
}
|
|
209
270
|
}
|
|
210
271
|
|
|
211
|
-
/* L */
|
|
212
|
-
@media only screen and (min-width:
|
|
272
|
+
/* M & L */
|
|
273
|
+
@media only screen and (min-width: 431px) {
|
|
213
274
|
.container {
|
|
214
|
-
padding: var(--mirai-ui-space-
|
|
275
|
+
padding: 0 var(--mirai-ui-space-M) var(--mirai-ui-space-M) var(--mirai-ui-space-M);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/* -- <Header> ---------------------------------------------------------------------------------------------------- */
|
|
279
|
+
.header {
|
|
280
|
+
padding: var(--mirai-ui-space-M) 0;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
/* -- <Items> ----------------------------------------------------------------------------------------------------- */
|
|
284
|
+
.items {
|
|
285
|
+
align-items: stretch;
|
|
286
|
+
flex-wrap: wrap;
|
|
215
287
|
}
|
|
216
288
|
|
|
217
|
-
.
|
|
218
|
-
|
|
289
|
+
.items > * {
|
|
290
|
+
box-sizing: border-box;
|
|
291
|
+
flex-basis: calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3));
|
|
219
292
|
}
|
|
220
293
|
|
|
294
|
+
/* -- <Footer> ---------------------------------------------------------------------------------------------------- */
|
|
221
295
|
.footer {
|
|
222
|
-
padding: var(--mirai-ui-space-M);
|
|
296
|
+
padding: 0 var(--mirai-ui-space-M);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.footer .cartItem {
|
|
300
|
+
padding: var(--mirai-ui-space-S) 0;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
.footer .summary {
|
|
304
|
+
padding: var(--mirai-ui-space-M) 0;
|
|
223
305
|
}
|
|
224
306
|
|
|
225
|
-
.footer .
|
|
226
|
-
|
|
307
|
+
.footer .buttons {
|
|
308
|
+
gap: var(--mirai-ui-space-M);
|
|
227
309
|
}
|
|
228
310
|
}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Preview = void 0;
|
|
7
7
|
var _locale = require("@mirai/locale");
|
|
8
8
|
var _ui = require("@mirai/ui");
|
|
9
|
-
var _Slider = require("@mirai/ui/build/components/Slider");
|
|
10
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
11
|
var _components = require("./components");
|
|
@@ -19,57 +18,49 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
19
18
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
20
19
|
const Preview = _ref => {
|
|
21
20
|
let {
|
|
21
|
+
cancellations = [],
|
|
22
22
|
images = [],
|
|
23
23
|
media: {
|
|
24
24
|
url3D,
|
|
25
25
|
urlVideo
|
|
26
26
|
} = {},
|
|
27
|
+
name: title,
|
|
28
|
+
selectedBoard = {},
|
|
27
29
|
onMoreInfo,
|
|
30
|
+
onRateInfo,
|
|
28
31
|
onViewUrl = () => {},
|
|
29
32
|
...others
|
|
30
33
|
} = _ref;
|
|
31
34
|
const {
|
|
32
|
-
|
|
35
|
+
isMobile,
|
|
33
36
|
width
|
|
34
37
|
} = (0, _ui.useDevice)();
|
|
35
38
|
const {
|
|
36
39
|
translate
|
|
37
40
|
} = (0, _locale.useLocale)();
|
|
38
41
|
const ref = (0, _react.useRef)(null);
|
|
42
|
+
const [sliderIndex, setSliderIndex] = (0, _react.useState)(0);
|
|
39
43
|
const [sliderWidth, setSliderWidth] = (0, _react.useState)(320);
|
|
40
44
|
(0, _react.useEffect)(() => {
|
|
41
45
|
var _ref$current;
|
|
42
46
|
if (ref.current) setSliderWidth((_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.clientWidth);
|
|
43
47
|
}, [width]);
|
|
44
48
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
45
|
-
ref: ref
|
|
46
|
-
className: style.preview
|
|
49
|
+
ref: ref
|
|
47
50
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
48
51
|
className: style.slider
|
|
49
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
alt
|
|
53
|
-
} = _ref2;
|
|
54
|
-
return alt;
|
|
55
|
-
}),
|
|
56
|
-
height: 220,
|
|
57
|
-
images: images.map(_ref3 => {
|
|
52
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Slider, {
|
|
53
|
+
height: 210,
|
|
54
|
+
images: images.map(_ref2 => {
|
|
58
55
|
let {
|
|
59
56
|
large
|
|
60
|
-
} =
|
|
57
|
+
} = _ref2;
|
|
61
58
|
return large;
|
|
62
59
|
}),
|
|
63
|
-
thumbnails: images.map(_ref4 => {
|
|
64
|
-
let {
|
|
65
|
-
thumbnail
|
|
66
|
-
} = _ref4;
|
|
67
|
-
return thumbnail;
|
|
68
|
-
}),
|
|
69
60
|
width: sliderWidth,
|
|
70
|
-
onChange:
|
|
61
|
+
onChange: setSliderIndex,
|
|
71
62
|
className: style.slider
|
|
72
|
-
}), (url3D || urlVideo) && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
63
|
+
}), (url3D || urlVideo) && sliderIndex === 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
73
64
|
row: true,
|
|
74
65
|
className: style.buttons
|
|
75
66
|
}, urlVideo && /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
@@ -100,17 +91,41 @@ const Preview = _ref => {
|
|
|
100
91
|
headline: true,
|
|
101
92
|
level: 2,
|
|
102
93
|
value: _helpers.ICON.THREE_D
|
|
103
|
-
})))), /*#__PURE__*/_react.default.createElement(
|
|
104
|
-
|
|
105
|
-
},
|
|
106
|
-
|
|
107
|
-
}, others)), /*#__PURE__*/_react.default.createElement(_ui.
|
|
94
|
+
})))), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
95
|
+
className: [style.offset, style.anchor]
|
|
96
|
+
}, /*#__PURE__*/_react.default.createElement(_components.Features, _extends({
|
|
97
|
+
_box: true
|
|
98
|
+
}, others))), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
99
|
+
className: [style.offset, style.gap, style.anchor]
|
|
100
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
101
|
+
bold: true,
|
|
102
|
+
headline: !isMobile,
|
|
103
|
+
level: 3
|
|
104
|
+
}, title), /*#__PURE__*/_react.default.createElement(_components.Amenities, _extends({
|
|
105
|
+
highlight: true,
|
|
106
|
+
preview: true
|
|
107
|
+
}, others)), cancellations.length === 1 && /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
108
|
+
onPress: () => onRateInfo({
|
|
109
|
+
...selectedBoard,
|
|
110
|
+
cancellation: cancellations[0]
|
|
111
|
+
}),
|
|
112
|
+
className: style.row
|
|
113
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
114
|
+
action: true
|
|
115
|
+
}, cancellations[0].name), /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
116
|
+
value: _helpers.ICON.INFO
|
|
117
|
+
})), cancellations[0].caption && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
118
|
+
small: true
|
|
119
|
+
}, cancellations[0].caption)), /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
108
120
|
inline: true,
|
|
121
|
+
small: isMobile,
|
|
109
122
|
onPress: onMoreInfo
|
|
110
|
-
}, translate(_Item.L10N.ACTION_MORE_INFO)));
|
|
123
|
+
}, "".concat(translate(_Item.L10N.ACTION_MORE_INFO), " >"))));
|
|
111
124
|
};
|
|
112
125
|
exports.Preview = Preview;
|
|
126
|
+
Preview.displayName = 'Mirai:Core:Rates:Item.Preview';
|
|
113
127
|
Preview.propTypes = {
|
|
128
|
+
cancellations: _propTypes.default.arrayOf(_propTypes.default.any),
|
|
114
129
|
images: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
115
130
|
alt: _propTypes.default.string,
|
|
116
131
|
large: _propTypes.default.string,
|
|
@@ -120,8 +135,10 @@ Preview.propTypes = {
|
|
|
120
135
|
url3D: _propTypes.default.string,
|
|
121
136
|
urlVideo: _propTypes.default.string
|
|
122
137
|
}),
|
|
138
|
+
name: _propTypes.default.string,
|
|
139
|
+
selectedBoard: _propTypes.default.shape({}),
|
|
123
140
|
onMoreInfo: _propTypes.default.func,
|
|
141
|
+
onRateInfo: _propTypes.default.func,
|
|
124
142
|
onViewUrl: _propTypes.default.func
|
|
125
143
|
};
|
|
126
|
-
Preview.displayName = 'Mirai:Core:Rates:Item.Preview';
|
|
127
144
|
//# sourceMappingURL=Item.Preview.js.map
|