@mirai/core 0.3.171 → 0.3.172
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/.env +7 -4
- package/build/components/Booking/components/Hotelverse/Hotelverse.js +1 -1
- package/build/components/Booking/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/Chat/Chat.constants.js +28 -0
- package/build/components/Chat/Chat.constants.js.map +1 -0
- package/build/components/Chat/Chat.js +231 -0
- package/build/components/Chat/Chat.js.map +1 -0
- package/build/components/Chat/Chat.l10n.js +24 -0
- package/build/components/Chat/Chat.l10n.js.map +1 -0
- package/build/components/Chat/Chat.module.css +90 -0
- package/build/components/Chat/Chat.theme.module.css +49 -0
- package/build/components/Chat/components/Avatar/Avatar.js +68 -0
- package/build/components/Chat/components/Avatar/Avatar.js.map +1 -0
- package/build/components/Chat/components/Avatar/Avatar.module.css +81 -0
- package/build/components/Chat/components/Avatar/__tests__/__snapshots__/Avatar.test.jsx.snap +97 -0
- package/build/components/Chat/components/Avatar/index.js +17 -0
- package/build/components/Chat/components/Avatar/index.js.map +1 -0
- package/build/components/Chat/components/Input/Input.js +72 -0
- package/build/components/Chat/components/Input/Input.js.map +1 -0
- package/build/components/Chat/components/Input/Input.l10n.js +15 -0
- package/build/components/Chat/components/Input/Input.l10n.js.map +1 -0
- package/build/components/Chat/components/Input/Input.module.css +19 -0
- package/build/components/Chat/components/Input/__tests__/__snapshots__/Input.test.jsx.snap +175 -0
- package/build/components/Chat/components/Input/index.js +17 -0
- package/build/components/Chat/components/Input/index.js.map +1 -0
- package/build/components/Chat/components/InputRich/InputRich.List.js +52 -0
- package/build/components/Chat/components/InputRich/InputRich.List.js.map +1 -0
- package/build/components/Chat/components/InputRich/InputRich.js +182 -0
- package/build/components/Chat/components/InputRich/InputRich.js.map +1 -0
- package/build/components/Chat/components/InputRich/InputRich.l10n.js +12 -0
- package/build/components/Chat/components/InputRich/InputRich.l10n.js.map +1 -0
- package/build/components/Chat/components/InputRich/InputRich.module.css +73 -0
- package/build/components/Chat/components/InputRich/__tests__/__snapshots__/InputRich.test.jsx.snap +275 -0
- package/build/components/Chat/components/InputRich/helpers/getVerboseList.js +20 -0
- package/build/components/Chat/components/InputRich/helpers/getVerboseList.js.map +1 -0
- package/build/components/Chat/components/InputRich/helpers/getVerboseOccupation.js +27 -0
- package/build/components/Chat/components/InputRich/helpers/getVerboseOccupation.js.map +1 -0
- package/build/components/Chat/components/InputRich/helpers/index.js +28 -0
- package/build/components/Chat/components/InputRich/helpers/index.js.map +1 -0
- package/build/components/Chat/components/InputRich/index.js +17 -0
- package/build/components/Chat/components/InputRich/index.js.map +1 -0
- package/build/components/Chat/components/Message/Message.constants.js +18 -0
- package/build/components/Chat/components/Message/Message.constants.js.map +1 -0
- package/build/components/Chat/components/Message/Message.js +104 -0
- package/build/components/Chat/components/Message/Message.js.map +1 -0
- package/build/components/Chat/components/Message/Message.module.css +126 -0
- package/build/components/Chat/components/Message/__tests__/__snapshots__/Message.test.jsx.snap +211 -0
- package/build/components/Chat/components/Message/components/Booking.js +63 -0
- package/build/components/Chat/components/Message/components/Booking.js.map +1 -0
- package/build/components/Chat/components/Message/components/Card.js +67 -0
- package/build/components/Chat/components/Message/components/Card.js.map +1 -0
- package/build/components/Chat/components/Message/components/Card.module.css +41 -0
- package/build/components/Chat/components/Message/components/Environment.js +58 -0
- package/build/components/Chat/components/Message/components/Environment.js.map +1 -0
- package/build/components/Chat/components/Message/components/Environment.module.css +22 -0
- package/build/components/Chat/components/Message/components/index.js +39 -0
- package/build/components/Chat/components/Message/components/index.js.map +1 -0
- package/build/components/Chat/components/Message/helpers/getActionIcon.js +13 -0
- package/build/components/Chat/components/Message/helpers/getActionIcon.js.map +1 -0
- package/build/components/Chat/components/Message/helpers/getTime.js +28 -0
- package/build/components/Chat/components/Message/helpers/getTime.js.map +1 -0
- package/build/components/Chat/components/Message/helpers/index.js +28 -0
- package/build/components/Chat/components/Message/helpers/index.js.map +1 -0
- package/build/components/Chat/components/Message/index.js +17 -0
- package/build/components/Chat/components/Message/index.js.map +1 -0
- package/build/components/Chat/components/Message/intents/BookingQuery.js +66 -0
- package/build/components/Chat/components/Message/intents/BookingQuery.js.map +1 -0
- package/build/components/Chat/components/Message/intents/HotelInfo.js +73 -0
- package/build/components/Chat/components/Message/intents/HotelInfo.js.map +1 -0
- package/build/components/Chat/components/Message/intents/Offers.js +57 -0
- package/build/components/Chat/components/Message/intents/Offers.js.map +1 -0
- package/build/components/Chat/components/Message/intents/Unknown.js +67 -0
- package/build/components/Chat/components/Message/intents/Unknown.js.map +1 -0
- package/build/components/Chat/components/Message/intents/index.js +50 -0
- package/build/components/Chat/components/Message/intents/index.js.map +1 -0
- package/build/components/Chat/components/Offline/Offline.js +22 -0
- package/build/components/Chat/components/Offline/Offline.js.map +1 -0
- package/build/components/Chat/components/Offline/Offline.module.css +3 -0
- package/build/components/Chat/components/Offline/index.js +17 -0
- package/build/components/Chat/components/Offline/index.js.map +1 -0
- package/build/components/Chat/components/index.js +61 -0
- package/build/components/Chat/components/index.js.map +1 -0
- package/build/components/Chat/helpers/getVerboseDate.js +18 -0
- package/build/components/Chat/helpers/getVerboseDate.js.map +1 -0
- package/build/components/Chat/helpers/index.js +17 -0
- package/build/components/Chat/helpers/index.js.map +1 -0
- package/build/components/Chat/index.js +17 -0
- package/build/components/Chat/index.js.map +1 -0
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Form.test.js.snap +440 -16
- package/build/components/Rates/Rates.constants.js +1 -0
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.js +2 -0
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/components/Hotelverse/Hotelverse.js +1 -1
- package/build/components/Rates/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/Rates/components/Item/components/Features/Features.js +27 -2
- package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +5 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js +1 -1
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js.map +1 -1
- package/build/components/__shared__/Payment/Payment.js +1 -1
- package/build/components/__shared__/Payment/Payment.js.map +1 -1
- package/build/components/__shared__/Payment/__tests__/__snapshots__/Payment.test.js.snap +290 -8
- package/build/components/__shared__/Payment/components/PCI/PCI.constants.js +1 -2
- package/build/components/__shared__/Payment/components/PCI/PCI.constants.js.map +1 -1
- package/build/components/__shared__/Payment/components/PCI/PCI.js +59 -56
- package/build/components/__shared__/Payment/components/PCI/PCI.js.map +1 -1
- package/build/components/__shared__/Payment/components/PCI/__tests__/__snapshots__/PCI.test.js.snap +15 -0
- package/build/components/helpers/ICON.js +13 -0
- package/build/components/helpers/ICON.js.map +1 -1
- package/build/components/index.js +2 -0
- package/build/components/index.js.map +1 -1
- package/build/services/Lisa/action.js +28 -0
- package/build/services/Lisa/action.js.map +1 -0
- package/build/services/Lisa/index.js +17 -0
- package/build/services/Lisa/index.js.map +1 -0
- package/build/services/Lisa/message.js +26 -0
- package/build/services/Lisa/message.js.map +1 -0
- package/build/services/Lisa/status.js +13 -0
- package/build/services/Lisa/status.js.map +1 -0
- package/build/services/Lisa/welcome.js +25 -0
- package/build/services/Lisa/welcome.js.map +1 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +21 -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 +6 -0
- package/build/services/Rates/extras.js +1 -1
- package/build/services/Rates/extras.js.map +1 -1
- package/build/services/Rates/helpers/getItems.js +1 -1
- package/build/services/Rates/helpers/getItems.js.map +1 -1
- package/build/services/Rates/helpers/parseBoards.js +1 -0
- package/build/services/Rates/helpers/parseBoards.js.map +1 -1
- package/build/services/index.js +11 -0
- package/build/services/index.js.map +1 -1
- package/package.json +1 -1
- package/public/App.Container.jsx +2 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","_Rates5","style","_Rates6","_Rates7","_Rates8","_services2","_Finder","_helpers2","_SessionLogin","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","loginShown","Rates","_ref","_dataSource$items","_dataSource$hotels","_dataSource$items2","skeleton","others","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","rates","cart","storeCart","session","urlParams","useStore","calendar","occupation","place","setCart","useState","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","login","setLogin","responseError","setResponseError","room","setRoom","useEffect","callback","fetch","Event","subscribe","EVENT","INTENT_CURRENCY","unsubscribe","boards","items","map","_ref2","name","roomName","board","flat","nextCart","find","filter","console","log","replaceHistory","multiRoom","current","offsetHeight","offsetTop","document","documentElement","scrollTo","top","behavior","getNextUrlParams","trackDataSource","nextClubDiscount","params","publish","FINDER","nextParams","parties","parseToParties","nextDataSource","ServiceRates","catch","externalSignout","signout","JSON","stringify","history","replaceState","toUrlParams","lang","getFinderParams","handleFinder","values","handleClubDiscount","next","handleSelect","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","hotelCurrency","selectableExtras","some","included","handleCheckout","location","href","getForwarderUrl","contentBackground","Theme","features","getFeatures","nights","dateDiff","days","response","roomSelectorProps","onPress","createElement","Fragment","View","ref","className","styles","blur","sticky","backgroundColor","opacity","Finder","assisted","compacted","text","L10N","ACTION_SEARCH","onSubmit","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","Header","onClubDiscount","onSelect","row","_ref3","index","item","Item","concat","taxesType","onMoreInfo","onRateInfo","rate","onViewUrl","info","hotels","CardHotel","Unavailability","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","ModalExtras","onCancel","active","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { CardHotel, ClubRate, Item, ModalExtras, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getCheckoutParams, getFeatures, getFinderParams, getForwarderUrl, signout, trackDataSource } from './helpers';\nimport { FEATURES } from './Rates.constants';\nimport { Content } from './Rates.Content';\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 { Unavailability } from './Rates.Unavailability';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder';\nimport { EVENT, opacity, parseToParties, toUrlParams } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet loginShown = false;\n\nconst Rates = ({ skeleton, ...others }) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const {\n set,\n value: {\n club: { discount, ...club } = {},\n currency,\n finder = {},\n forwarder,\n hotel = {},\n id,\n language,\n locale,\n rates: { cart: storeCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const { calendar = [], occupation = [], place = {} } = finder;\n\n const [cart, setCart] = useState([]);\n const [clubDiscount, setClubDiscount] = useState(discount);\n const [dataSource, setDataSource] = useState();\n const [extras, setExtras] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [login, setLogin] = useState(false);\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n\n useEffect(() => {\n const callback = async ({ currency } = {}) => {\n set({ currency });\n // ! TODO: Here locale is not correct\n await fetch(currency, clubDiscount, undefined, room);\n };\n\n Event.subscribe(EVENT.INTENT_CURRENCY, callback);\n return () => Event.unsubscribe(EVENT.INTENT_CURRENCY, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n useEffect(() => {\n if (!storeCart.length || !dataSource || cart.length) return;\n\n const boards = dataSource.items\n .map(({ boards = [], name: roomName }) => boards.map((board) => ({ ...board, roomName })))\n .flat();\n const nextCart = storeCart.map((id) => boards.find((board) => board.id === id)).filter((board) => !!board);\n\n // eslint-disable-next-line no-console\n console.log('::cart from url::', nextCart);\n\n // if (storeCart.length === nextCart.length) setCart(nextCart);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [cart, dataSource, storeCart]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => currency && locale && replaceHistory(), [currency, locale]);\n\n useEffect(() => {\n if (multiRoom) {\n if (room > 0) {\n const { current: { offsetHeight = 0, offsetTop = 0 } = {} } = refRoomSelector || {};\n document.documentElement.scrollTo({ top: offsetTop + (isMobile ? offsetHeight : 0), behavior: 'smooth' });\n }\n setDataSource();\n }\n\n fetch(currency, undefined, getNextUrlParams(), room);\n replaceHistory();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [finder, locale, room, session]);\n\n useEffect(() => {\n if (!dataSource || room) return;\n\n trackDataSource({ ...dataSource, ...urlParams, isMobile, occupation, place });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n const fetch = async (currency, nextClubDiscount = clubDiscount, params = urlParams, room) => {\n if (skeleton || (!multiRoom && room !== undefined)) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n\n setFetching(true);\n setResponseError();\n\n const nextParams = {\n ...params,\n club,\n clubDiscount: nextClubDiscount,\n currency,\n id,\n locale,\n occupation,\n place,\n session,\n };\n if (room !== undefined) nextParams.parties = parseToParties([occupation[room]]);\n\n const nextDataSource = await ServiceRates.get(nextParams).catch(setResponseError);\n if (nextDataSource?.externalSignout) signout({ club, language });\n else setDataSource(nextDataSource);\n\n if (nextDataSource && multiRoom && room === undefined) setRoom(0);\n\n setFetching(false);\n };\n\n const replaceHistory = (nextParams = getNextUrlParams() || {}, nextCart = cart || []) => {\n if (nextCart.length) nextParams.rates = JSON.stringify(nextCart.map(({ id } = {}) => id));\n else if (nextParams.rates) nextParams.rates = undefined;\n\n history.replaceState({}, '', toUrlParams({ ...nextParams, currency, lang: language, locale }));\n };\n\n const getNextUrlParams = () => getFinderParams({ ...urlParams, ...finder, currency, locale, hotel });\n\n const handleFinder = (values) => {\n setCart([]);\n setDataSource(undefined);\n setRoom(undefined);\n\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n replaceHistory(params);\n };\n\n const handleClubDiscount = async (next) => {\n setCart([]);\n setClubDiscount(next);\n login && setLogin(false);\n\n await fetch(currency, next, undefined, room);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n setCart(nextCart);\n setExtras();\n login && setLogin(false);\n\n if (!multiRoom && !!board) handleSubmit(nextCart);\n if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);\n if (!board) replaceHistory(undefined, nextCart);\n };\n\n // eslint-disable-next-line no-unused-vars\n const handleSubmit = async (cart) => {\n const isPestana = ServiceFeatures.get(FEATURES.PESTANA, id) || false;\n setLogin(false);\n\n if (!isPestana && clubDiscount && !session && !loginShown) {\n loginShown = true;\n return setLogin(true);\n }\n\n replaceHistory(undefined, cart);\n\n const { extras = [] } = await ServiceRates.extras({\n ...getCheckoutParams({ cart, clubDiscount, currency, forwarder, urlParams: getNextUrlParams() }),\n hotelCurrency: dataSource.currency,\n locale,\n }).catch(() => {});\n const selectableExtras = extras.some(({ included } = {}) => !included);\n\n if (selectableExtras) setExtras(extras);\n else handleCheckout(cart, extras);\n };\n\n const handleCheckout = (cart = [], extras = []) => {\n const urlParams = getNextUrlParams();\n document.location.href = getForwarderUrl({ cart, clubDiscount, currency, extras, forwarder, session, urlParams });\n };\n\n const { contentBackground } = Theme.get();\n const features = getFeatures(id, urlParams);\n const multiRoom = occupation?.length > 1;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n\n return (\n <>\n <View\n ref={refRoomSelector}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder assisted={!isMobile} compacted text={translate(L10N.ACTION_SEARCH)} onSubmit={handleFinder} />\n </View>\n\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n {isMobile && !responseError && <RoomSelector {...roomSelectorProps} />}\n\n <View role=\"rates\" testId={others.testId} className={styles(style.container, others.className)}>\n <View className={[style.wrapper, style.content]}>\n {response && !responseError && <Content {...dataSource} {...others} />}\n\n {(response || (multiRoom && !responseError)) && (\n <Header\n {...{\n clubDiscount,\n dataSource,\n features,\n multiRoom,\n onClubDiscount: handleClubDiscount,\n onSelect: handleSelect,\n }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </Header>\n )}\n\n {response ? (\n <View row={!isMobile} className={style.items}>\n {dataSource.items?.map(({ id, ...item }, index) => (\n <Item\n key={`${id || index}:${fetching}:${width}`}\n {...{ id, ...item, features, multiRoom, nights, taxesType: dataSource.taxesType }}\n cart={cart[room || 0]}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo({ ...rate, name: item.name })}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} />\n ))}\n </View>\n ) : responseError ? (\n <Unavailability {...responseError} />\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n {multiRoom && <Footer {...{ cart, dataSource, extras, occupation }} onSubmit={() => handleSubmit(cart)} />}\n </View>\n\n {response && (\n <>\n <ModalItemInfo\n {...itemInfo}\n visible={!!itemInfo}\n onClose={() => setItemInfo()}\n onViewUrl={(info) => setItemUrl(info)}\n />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\n {club.active && dataSource.items?.length > 0 && (\n <ModalLogin\n showSignup={false}\n title={translate(L10N.LABEL_FARE_EXCLUSIVE_MEMBERS)}\n visible={login}\n onClose={() => handleSelect()}\n onSuccess={() => handleSubmit(cart)}\n >\n <ClubRate onCancel={() => handleClubDiscount(false)} onSubmit={() => handleSubmit(cart)} />\n </ModalLogin>\n )}\n </>\n )}\n </>\n );\n};\n\nRates.displayName = 'Mirai:Core:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,WAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AACA,IAAAc,OAAA,GAAAd,OAAA;AACA,IAAAe,KAAA,GAAAR,uBAAA,CAAAP,OAAA;AACA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,OAAA,GAAAZ,sBAAA,CAAAL,OAAA;AACA,IAAAkB,OAAA,GAAAlB,OAAA;AACA,IAAAmB,UAAA,GAAAnB,OAAA;AACA,IAAAoB,OAAA,GAAApB,OAAA;AACA,IAAAqB,SAAA,GAAArB,OAAA;AACA,IAAAsB,aAAA,GAAAtB,OAAA;AAAqE,SAAAuB,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,SAAAjB,wBAAAiB,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,SAAA3B,uBAAAuC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAErE,IAAIK,UAAU,GAAG,KAAK;AAEtB,MAAMC,KAAK,GAAGC,IAAA,IAA6B;EAAA,IAAAC,iBAAA,EAAAC,kBAAA,EAAAC,kBAAA;EAAA,IAA5B;IAAEC,QAAQ;IAAE,GAAGC;EAAO,CAAC,GAAAL,IAAA;EACpC,MAAM;IAAEM,QAAQ;IAAEC;EAAM,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EACvC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAMC,eAAe,GAAG,IAAAC,aAAM,EAAC,CAAC;EAChC,MAAM;IACJzB,GAAG;IACH0B,KAAK,EAAE;MACLC,IAAI,EAAE;QAAEC,QAAQ;QAAE,GAAGD;MAAK,CAAC,GAAG,CAAC,CAAC;MAChCE,QAAQ;MACRC,MAAM,GAAG,CAAC,CAAC;MACXC,SAAS;MACTC,KAAK,GAAG,CAAC,CAAC;MACVC,EAAE;MACFC,QAAQ;MACRC,MAAM;MACNC,KAAK,EAAE;QAAEC,IAAI,EAAEC,SAAS,GAAG;MAAG,CAAC,GAAG,CAAC,CAAC;MACpCC,OAAO;MACPC;IACF;EACF,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM;IAAEC,QAAQ,GAAG,EAAE;IAAEC,UAAU,GAAG,EAAE;IAAEC,KAAK,GAAG,CAAC;EAAE,CAAC,GAAGd,MAAM;EAE7D,MAAM,CAACO,IAAI,EAAEQ,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,EAAE,CAAC;EACpC,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAF,eAAQ,EAAClB,QAAQ,CAAC;EAC1D,MAAM,CAACqB,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAJ,eAAQ,EAAC,CAAC;EAC9C,MAAM,CAACK,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAN,eAAQ,EAAC,CAAC;EACtC,MAAM,CAACO,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAR,eAAQ,EAACS,SAAS,CAAC;EACnD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAX,eAAQ,EAAC,CAAC;EAC1C,MAAM,CAACY,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAb,eAAQ,EAAC,CAAC;EAClD,MAAM,CAACc,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAf,eAAQ,EAAC,CAAC;EACxC,MAAM,CAACgB,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAjB,eAAQ,EAAC,KAAK,CAAC;EACzC,MAAM,CAACkB,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAnB,eAAQ,EAAC,CAAC;EACpD,MAAM,CAACoB,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAArB,eAAQ,EAAC,CAAC;EAElC,IAAAsB,gBAAS,EAAC,MAAM;IACd,MAAMC,QAAQ,GAAG,eAAAA,CAAA,EAA6B;MAAA,IAAtB;QAAExC;MAAS,CAAC,GAAAvB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,CAAC,CAAC;MACvCN,GAAG,CAAC;QAAE6B;MAAS,CAAC,CAAC;MACjB;MACA,MAAMyC,KAAK,CAACzC,QAAQ,EAAEkB,YAAY,EAAEQ,SAAS,EAAEW,IAAI,CAAC;IACtD,CAAC;IAEDK,kBAAK,CAACC,SAAS,CAACC,eAAK,CAACC,eAAe,EAAEL,QAAQ,CAAC;IAChD,OAAO,MAAME,kBAAK,CAACI,WAAW,CAACF,eAAK,CAACC,eAAe,EAAEL,QAAQ,CAAC;IAC/D;EACF,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,IAAAD,gBAAS,EAAC,MAAMnD,QAAQ,IAAIqC,WAAW,CAAC,IAAI,CAAC,EAAE,CAACrC,QAAQ,CAAC,CAAC;EAE1D,IAAAmD,gBAAS,EAAC,MAAM;IACd,IAAI,CAAC9B,SAAS,CAAC/B,MAAM,IAAI,CAAC0C,UAAU,IAAIZ,IAAI,CAAC9B,MAAM,EAAE;IAErD,MAAMqE,MAAM,GAAG3B,UAAU,CAAC4B,KAAK,CAC5BC,GAAG,CAACC,KAAA;MAAA,IAAC;QAAEH,MAAM,GAAG,EAAE;QAAEI,IAAI,EAAEC;MAAS,CAAC,GAAAF,KAAA;MAAA,OAAKH,MAAM,CAACE,GAAG,CAAEI,KAAK,KAAM;QAAE,GAAGA,KAAK;QAAED;MAAS,CAAC,CAAC,CAAC;IAAA,EAAC,CACzFE,IAAI,CAAC,CAAC;IACT,MAAMC,QAAQ,GAAG9C,SAAS,CAACwC,GAAG,CAAE7C,EAAE,IAAK2C,MAAM,CAACS,IAAI,CAAEH,KAAK,IAAKA,KAAK,CAACjD,EAAE,KAAKA,EAAE,CAAC,CAAC,CAACqD,MAAM,CAAEJ,KAAK,IAAK,CAAC,CAACA,KAAK,CAAC;;IAE1G;IACAK,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEJ,QAAQ,CAAC;;IAE1C;IACA;EACF,CAAC,EAAE,CAAC/C,IAAI,EAAEY,UAAU,EAAEX,SAAS,CAAC,CAAC;;EAEjC;EACA,IAAA8B,gBAAS,EAAC,MAAMvC,QAAQ,IAAIM,MAAM,IAAIsD,cAAc,CAAC,CAAC,EAAE,CAAC5D,QAAQ,EAAEM,MAAM,CAAC,CAAC;EAE3E,IAAAiC,gBAAS,EAAC,MAAM;IACd,IAAIsB,SAAS,EAAE;MACb,IAAIxB,IAAI,GAAG,CAAC,EAAE;QACZ,MAAM;UAAEyB,OAAO,EAAE;YAAEC,YAAY,GAAG,CAAC;YAAEC,SAAS,GAAG;UAAE,CAAC,GAAG,CAAC;QAAE,CAAC,GAAGrE,eAAe,IAAI,CAAC,CAAC;QACnFsE,QAAQ,CAACC,eAAe,CAACC,QAAQ,CAAC;UAAEC,GAAG,EAAEJ,SAAS,IAAI1E,QAAQ,GAAGyE,YAAY,GAAG,CAAC,CAAC;UAAEM,QAAQ,EAAE;QAAS,CAAC,CAAC;MAC3G;MACAhD,aAAa,CAAC,CAAC;IACjB;IAEAoB,KAAK,CAACzC,QAAQ,EAAE0B,SAAS,EAAE4C,gBAAgB,CAAC,CAAC,EAAEjC,IAAI,CAAC;IACpDuB,cAAc,CAAC,CAAC;IAChB;EACF,CAAC,EAAE,CAAC3D,MAAM,EAAEK,MAAM,EAAE+B,IAAI,EAAE3B,OAAO,CAAC,CAAC;EAEnC,IAAA6B,gBAAS,EAAC,MAAM;IACd,IAAI,CAACnB,UAAU,IAAIiB,IAAI,EAAE;IAEzB,IAAAkC,wBAAe,EAAC;MAAE,GAAGnD,UAAU;MAAE,GAAGT,SAAS;MAAErB,QAAQ;MAAEwB,UAAU;MAAEC;IAAM,CAAC,CAAC;IAC7E;EACF,CAAC,EAAE,CAACK,UAAU,CAAC,CAAC;EAEhB,MAAMqB,KAAK,GAAG,eAAAA,CAAOzC,QAAQ,EAAgE;IAAA,IAA9DwE,gBAAgB,GAAA/F,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAGyC,YAAY;IAAA,IAAEuD,MAAM,GAAAhG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAGkC,SAAS;IAAA,IAAE0B,IAAI,GAAA5D,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAiD,SAAA;IACtF,IAAItC,QAAQ,IAAK,CAACyE,SAAS,IAAIxB,IAAI,KAAKX,SAAU,EAAE;IAEpDgB,kBAAK,CAACgC,OAAO,CAAC9B,eAAK,CAAC+B,MAAM,EAAE;MAAE9D,QAAQ,EAAEa;IAAU,CAAC,CAAC;IAEpDD,WAAW,CAAC,IAAI,CAAC;IACjBW,gBAAgB,CAAC,CAAC;IAElB,MAAMwC,UAAU,GAAG;MACjB,GAAGH,MAAM;MACT3E,IAAI;MACJoB,YAAY,EAAEsD,gBAAgB;MAC9BxE,QAAQ;MACRI,EAAE;MACFE,MAAM;MACNQ,UAAU;MACVC,KAAK;MACLL;IACF,CAAC;IACD,IAAI2B,IAAI,KAAKX,SAAS,EAAEkD,UAAU,CAACC,OAAO,GAAG,IAAAC,wBAAc,EAAC,CAAChE,UAAU,CAACuB,IAAI,CAAC,CAAC,CAAC;IAE/E,MAAM0C,cAAc,GAAG,MAAMC,uBAAY,CAACzH,GAAG,CAACqH,UAAU,CAAC,CAACK,KAAK,CAAC7C,gBAAgB,CAAC;IACjF,IAAI2C,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAEG,eAAe,EAAE,IAAAC,gBAAO,EAAC;MAAErF,IAAI;MAAEO;IAAS,CAAC,CAAC,CAAC,KAC5DgB,aAAa,CAAC0D,cAAc,CAAC;IAElC,IAAIA,cAAc,IAAIlB,SAAS,IAAIxB,IAAI,KAAKX,SAAS,EAAEY,OAAO,CAAC,CAAC,CAAC;IAEjEb,WAAW,CAAC,KAAK,CAAC;EACpB,CAAC;EAED,MAAMmC,cAAc,GAAG,SAAAA,CAAA,EAAkE;IAAA,IAAjEgB,UAAU,GAAAnG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG6F,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;IAAA,IAAEf,QAAQ,GAAA9E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG+B,IAAI,IAAI,EAAE;IAClF,IAAI+C,QAAQ,CAAC7E,MAAM,EAAEkG,UAAU,CAACrE,KAAK,GAAG6E,IAAI,CAACC,SAAS,CAAC9B,QAAQ,CAACN,GAAG,CAAC;MAAA,IAAC;QAAE7C;MAAG,CAAC,GAAA3B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,CAAC,CAAC;MAAA,OAAK2B,EAAE;IAAA,EAAC,CAAC,CAAC,KACrF,IAAIwE,UAAU,CAACrE,KAAK,EAAEqE,UAAU,CAACrE,KAAK,GAAGmB,SAAS;IAEvD4D,OAAO,CAACC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAAC,qBAAW,EAAC;MAAE,GAAGZ,UAAU;MAAE5E,QAAQ;MAAEyF,IAAI,EAAEpF,QAAQ;MAAEC;IAAO,CAAC,CAAC,CAAC;EAChG,CAAC;EAED,MAAMgE,gBAAgB,GAAGA,CAAA,KAAM,IAAAoB,wBAAe,EAAC;IAAE,GAAG/E,SAAS;IAAE,GAAGV,MAAM;IAAED,QAAQ;IAAEM,MAAM;IAAEH;EAAM,CAAC,CAAC;EAEpG,MAAMwF,YAAY,GAAIC,MAAM,IAAK;IAC/B5E,OAAO,CAAC,EAAE,CAAC;IACXK,aAAa,CAACK,SAAS,CAAC;IACxBY,OAAO,CAACZ,SAAS,CAAC;IAElB,MAAM+C,MAAM,GAAG,IAAAiB,wBAAe,EAAC;MAAE,GAAG/E,SAAS;MAAE,GAAGiF,MAAM;MAAE5F,QAAQ;MAAEM,MAAM;MAAEH;IAAM,CAAC,CAAC;IACpFyD,cAAc,CAACa,MAAM,CAAC;EACxB,CAAC;EAED,MAAMoB,kBAAkB,GAAG,MAAOC,IAAI,IAAK;IACzC9E,OAAO,CAAC,EAAE,CAAC;IACXG,eAAe,CAAC2E,IAAI,CAAC;IACrB7D,KAAK,IAAIC,QAAQ,CAAC,KAAK,CAAC;IAExB,MAAMO,KAAK,CAACzC,QAAQ,EAAE8F,IAAI,EAAEpE,SAAS,EAAEW,IAAI,CAAC;EAC9C,CAAC;EAED,MAAM0D,YAAY,GAAGA,CAAC1C,KAAK,EAAEhE,MAAM,KAAK;IACtC,MAAMkE,QAAQ,GAAG,CAAC,GAAG/C,IAAI,CAAC;IAC1B+C,QAAQ,CAAClB,IAAI,IAAI,CAAC,CAAC,GAAGgB,KAAK,GAAG;MAAE,GAAGA,KAAK;MAAE,GAAGhE;IAAO,CAAC,GAAGqC,SAAS;IAEjEV,OAAO,CAACuC,QAAQ,CAAC;IACjBhC,SAAS,CAAC,CAAC;IACXU,KAAK,IAAIC,QAAQ,CAAC,KAAK,CAAC;IAExB,IAAI,CAAC2B,SAAS,IAAI,CAAC,CAACR,KAAK,EAAE2C,YAAY,CAACzC,QAAQ,CAAC;IACjD,IAAIM,SAAS,IAAIR,KAAK,IAAIhB,IAAI,GAAGvB,UAAU,CAACpC,MAAM,GAAG,CAAC,EAAE,OAAO4D,OAAO,CAACD,IAAI,GAAG,CAAC,CAAC;IAChF,IAAI,CAACgB,KAAK,EAAEO,cAAc,CAAClC,SAAS,EAAE6B,QAAQ,CAAC;EACjD,CAAC;;EAED;EACA,MAAMyC,YAAY,GAAG,MAAOxF,IAAI,IAAK;IACnC,MAAMyF,SAAS,GAAGC,yBAAe,CAAC3I,GAAG,CAAC4I,eAAQ,CAACC,OAAO,EAAEhG,EAAE,CAAC,IAAI,KAAK;IACpE8B,QAAQ,CAAC,KAAK,CAAC;IAEf,IAAI,CAAC+D,SAAS,IAAI/E,YAAY,IAAI,CAACR,OAAO,IAAI,CAAC5B,UAAU,EAAE;MACzDA,UAAU,GAAG,IAAI;MACjB,OAAOoD,QAAQ,CAAC,IAAI,CAAC;IACvB;IAEA0B,cAAc,CAAClC,SAAS,EAAElB,IAAI,CAAC;IAE/B,MAAM;MAAEc,MAAM,GAAG;IAAG,CAAC,GAAG,MAAM0D,uBAAY,CAAC1D,MAAM,CAAC;MAChD,GAAG,IAAA+E,0BAAiB,EAAC;QAAE7F,IAAI;QAAEU,YAAY;QAAElB,QAAQ;QAAEE,SAAS;QAAES,SAAS,EAAE2D,gBAAgB,CAAC;MAAE,CAAC,CAAC;MAChGgC,aAAa,EAAElF,UAAU,CAACpB,QAAQ;MAClCM;IACF,CAAC,CAAC,CAAC2E,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClB,MAAMsB,gBAAgB,GAAGjF,MAAM,CAACkF,IAAI,CAAC;MAAA,IAAC;QAAEC;MAAS,CAAC,GAAAhI,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,CAAC,CAAC;MAAA,OAAK,CAACgI,QAAQ;IAAA,EAAC;IAEtE,IAAIF,gBAAgB,EAAEhF,SAAS,CAACD,MAAM,CAAC,CAAC,KACnCoF,cAAc,CAAClG,IAAI,EAAEc,MAAM,CAAC;EACnC,CAAC;EAED,MAAMoF,cAAc,GAAG,SAAAA,CAAA,EAA4B;IAAA,IAA3BlG,IAAI,GAAA/B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,EAAE;IAAA,IAAE6C,MAAM,GAAA7C,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,EAAE;IAC5C,MAAMkC,SAAS,GAAG2D,gBAAgB,CAAC,CAAC;IACpCL,QAAQ,CAAC0C,QAAQ,CAACC,IAAI,GAAG,IAAAC,wBAAe,EAAC;MAAErG,IAAI;MAAEU,YAAY;MAAElB,QAAQ;MAAEsB,MAAM;MAAEpB,SAAS;MAAEQ,OAAO;MAAEC;IAAU,CAAC,CAAC;EACnH,CAAC;EAED,MAAM;IAAEmG;EAAkB,CAAC,GAAGC,SAAK,CAACxJ,GAAG,CAAC,CAAC;EACzC,MAAMyJ,QAAQ,GAAG,IAAAC,oBAAW,EAAC7G,EAAE,EAAEO,SAAS,CAAC;EAC3C,MAAMkD,SAAS,GAAG,CAAA/C,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEpC,MAAM,IAAG,CAAC;EACxC,MAAMwI,MAAM,GAAG,IAAAC,gBAAQ,EAACtG,QAAQ,CAAC,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,CAAC,CAAC,CAACuG,IAAI;EACtD,MAAMC,QAAQ,GAAGjG,UAAU,KAAKM,SAAS;EACzC,MAAM4F,iBAAiB,GAAG;IAAE9G,IAAI;IAAEM,UAAU;IAAEuB,IAAI;IAAEkF,OAAO,EAAEjF;EAAQ,CAAC;EAEtE,oBACExG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAA1L,MAAA,CAAAuB,OAAA,CAAAoK,QAAA,qBACE3L,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC7L,GAAA,CAAA+L,IAAI;IACHC,GAAG,EAAEhI,eAAgB;IACrBiI,SAAS,EAAE,IAAAC,UAAM,EAACtL,KAAK,CAAC0D,MAAM,EAAE1D,KAAK,CAACuL,IAAI,EAAE,CAAC,CAACjE,SAAS,IAAI1B,aAAa,KAAK5F,KAAK,CAACwL,MAAM,CAAE;IAC3FxL,KAAK,EAAE,CAAC+C,QAAQ,GAAG;MAAE0I,eAAe,EAAE,IAAAC,iBAAO,EAACnB,iBAAiB,EAAE,IAAI;IAAE,CAAC,GAAGpF;EAAU,gBAErF5F,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC5K,OAAA,CAAAsL,MAAM;IAACC,QAAQ,EAAE,CAAC7I,QAAS;IAAC8I,SAAS;IAACC,IAAI,EAAE5I,SAAS,CAAC6I,YAAI,CAACC,aAAa,CAAE;IAACC,QAAQ,EAAE7C;EAAa,CAAE,CACjG,CAAC,eAEP7J,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC7L,GAAA,CAAA8M,QAAQ;IAACC,aAAa;IAACC,OAAO,EAAEnH,QAAQ,IAAI,CAACW,aAAc;IAACyF,SAAS,EAAErL,KAAK,CAACqM;EAAS,CAAE,CAAC,EAEzFtJ,QAAQ,IAAI,CAAC6C,aAAa,iBAAIrG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAChL,OAAA,CAAAqM,YAAY,EAAKvB,iBAAoB,CAAC,eAEtExL,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC7L,GAAA,CAAA+L,IAAI;IAACoB,IAAI,EAAC,OAAO;IAACC,MAAM,EAAE1J,MAAM,CAAC0J,MAAO;IAACnB,SAAS,EAAE,IAAAC,UAAM,EAACtL,KAAK,CAACyM,SAAS,EAAE3J,MAAM,CAACuI,SAAS;EAAE,gBAC7F9L,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC7L,GAAA,CAAA+L,IAAI;IAACE,SAAS,EAAE,CAACrL,KAAK,CAAC0M,OAAO,EAAE1M,KAAK,CAAC2M,OAAO;EAAE,GAC7C7B,QAAQ,IAAI,CAAClF,aAAa,iBAAIrG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACrL,OAAA,CAAAgN,OAAO,EAAA9K,QAAA,KAAK+C,UAAU,EAAM/B,MAAM,CAAG,CAAC,EAErE,CAACgI,QAAQ,IAAKxD,SAAS,IAAI,CAAC1B,aAAc,kBACzCrG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACnL,OAAA,CAAA+M,MAAM;IAEHlI,YAAY;IACZE,UAAU;IACV4F,QAAQ;IACRnD,SAAS;IACTwF,cAAc,EAAExD,kBAAkB;IAClCyD,QAAQ,EAAEvD;EAAY,GAGvB,CAACzG,QAAQ,iBAAIxD,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAChL,OAAA,CAAAqM,YAAY,EAAKvB,iBAAoB,CAC9C,CACT,EAEAD,QAAQ,gBACPvL,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC7L,GAAA,CAAA+L,IAAI;IAAC6B,GAAG,EAAE,CAACjK,QAAS;IAACsI,SAAS,EAAErL,KAAK,CAACyG;EAAM,IAAA/D,iBAAA,GAC1CmC,UAAU,CAAC4B,KAAK,cAAA/D,iBAAA,uBAAhBA,iBAAA,CAAkBgE,GAAG,CAAC,CAAAuG,KAAA,EAAkBC,KAAK;IAAA,IAAtB;MAAErJ,EAAE;MAAE,GAAGsJ;IAAK,CAAC,GAAAF,KAAA;IAAA,oBACrC1N,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAA2N,IAAI,EAAAtL,QAAA;MACHO,GAAG,KAAAgL,MAAA,CAAKxJ,EAAE,IAAIqJ,KAAK,OAAAG,MAAA,CAAIpI,QAAQ,OAAAoI,MAAA,CAAIrK,KAAK,CAAG;MACrCa;IAAE,GAAKsJ,IAAI;MAAE1C,QAAQ;MAAEnD,SAAS;MAAEqD,MAAM;MAAE2C,SAAS,EAAEzI,UAAU,CAACyI,SAAS;MAC/ErJ,IAAI,EAAEA,IAAI,CAAC6B,IAAI,IAAI,CAAC,CAAE;MACtByH,UAAU,EAAEA,CAAA,KAAMlI,WAAW,CAAC8H,IAAI,CAAE;MACpCK,UAAU,EAAGC,IAAI,IAAKlI,eAAe,CAAC;QAAE,GAAGkI,IAAI;QAAE7G,IAAI,EAAEuG,IAAI,CAACvG;MAAK,CAAC,CAAE;MACpEmG,QAAQ,EAAEvD,YAAa;MACvBkE,SAAS,EAAGC,IAAI,IAAKlI,UAAU,CAACkI,IAAI;IAAE,EACvC,CAAC;EAAA,CACH,CAAC,GAAAhL,kBAAA,GAEDkC,UAAU,CAAC+I,MAAM,cAAAjL,kBAAA,uBAAjBA,kBAAA,CAAmB+D,GAAG,CAAC;IAAA,IAACyG,IAAI,GAAAjL,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiD,SAAA,GAAAjD,SAAA,MAAG,CAAC,CAAC;IAAA,oBAChC3C,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAAoO,SAAS,EAAA/L,QAAA;MAACO,GAAG,EAAE8K,IAAI,CAACtJ;IAAG,GAAKsJ,IAAI,CAAG,CAAC;EAAA,CACtC,CACG,CAAC,GACLvH,aAAa,gBACfrG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC9K,OAAA,CAAA2N,cAAc,EAAKlI,aAAgB,CAAC,gBAErCrG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC/K,OAAA,CAAAY,OAAQ;IAACwG,SAAS,EAAEA;EAAU,CAAE,CAE/B,CAAC,EAENA,SAAS,iBAAI/H,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACpL,OAAA,CAAAkO,MAAM;IAAO9J,IAAI;IAAEY,UAAU;IAAEE,MAAM;IAAER,UAAU;IAAI0H,QAAQ,EAAEA,CAAA,KAAMxC,YAAY,CAACxF,IAAI;EAAE,CAAE,CACrG,CAAC,EAEN6G,QAAQ,iBACPvL,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAA1L,MAAA,CAAAuB,OAAA,CAAAoK,QAAA,qBACE3L,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAAuO,aAAa,EAAAlM,QAAA,KACRsD,QAAQ;IACZgH,OAAO,EAAE,CAAC,CAAChH,QAAS;IACpB6I,OAAO,EAAEA,CAAA,KAAM5I,WAAW,CAAC,CAAE;IAC7BqI,SAAS,EAAGC,IAAI,IAAKlI,UAAU,CAACkI,IAAI;EAAE,EACvC,CAAC,eACFpO,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAAyO,iBAAiB,EAAApM,QAAA,KAAKwD,YAAY;IAAE8G,OAAO,EAAE,CAAC,CAAC9G,YAAa;IAAC2I,OAAO,EAAEA,CAAA,KAAM1I,eAAe,CAAC;EAAE,EAAE,CAAC,eAClGhG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAA0O,YAAY,EAAArM,QAAA,KAAK0D,OAAO;IAAE4G,OAAO,EAAE,CAAC,CAAC5G,OAAQ;IAACyI,OAAO,EAAEA,CAAA,KAAMxI,UAAU,CAAC;EAAE,EAAE,CAAC,eAC9ElG,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAA2O,WAAW,EAAAtM,QAAA,KACD+C,UAAU;IAAEZ,IAAI;IAAEc,MAAM;IACjCqH,OAAO,EAAE,CAAC,CAACrH,MAAO;IAClBsJ,QAAQ,EAAEA,CAAA,KAAO/G,SAAS,GAAGtC,SAAS,CAAC,CAAC,GAAGwE,YAAY,CAAC,CAAG;IAC3DyC,QAAQ,EAAGlH,MAAM,IAAKoF,cAAc,CAAClG,IAAI,EAAEc,MAAM;EAAE,EACpD,CAAC,EACDxB,IAAI,CAAC+K,MAAM,IAAI,EAAA1L,kBAAA,GAAAiC,UAAU,CAAC4B,KAAK,cAAA7D,kBAAA,uBAAhBA,kBAAA,CAAkBT,MAAM,IAAG,CAAC,iBAC1C5C,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAAC1K,aAAA,CAAAgO,KAAU;IACTC,UAAU,EAAE,KAAM;IAClBC,KAAK,EAAEvL,SAAS,CAAC6I,YAAI,CAAC2C,4BAA4B,CAAE;IACpDtC,OAAO,EAAE1G,KAAM;IACfuI,OAAO,EAAEA,CAAA,KAAMzE,YAAY,CAAC,CAAE;IAC9BmF,SAAS,EAAEA,CAAA,KAAMlF,YAAY,CAACxF,IAAI;EAAE,gBAEpC1E,MAAA,CAAAuB,OAAA,CAAAmK,aAAA,CAACxL,WAAA,CAAAmP,QAAQ;IAACP,QAAQ,EAAEA,CAAA,KAAM/E,kBAAkB,CAAC,KAAK,CAAE;IAAC2C,QAAQ,EAAEA,CAAA,KAAMxC,YAAY,CAACxF,IAAI;EAAE,CAAE,CAChF,CAEd,CAEJ,CAAC;AAEP,CAAC;AAAC4K,OAAA,CAAArM,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAACsM,WAAW,GAAG,kBAAkB;AAEtCtM,KAAK,CAACuM,SAAS,GAAG;EAChBlM,QAAQ,EAAEmM,kBAAS,CAACC;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","_Rates5","style","_Rates6","_Rates7","_Rates8","_services2","_Finder","_helpers2","_SessionLogin","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","loginShown","Rates","_ref","_dataSource$items","_dataSource$hotels","_dataSource$items2","skeleton","others","isMobile","width","useDevice","translate","useLocale","refRoomSelector","useRef","value","club","discount","currency","finder","forwarder","hotel","id","language","locale","rates","cart","storeCart","session","urlParams","useStore","calendar","occupation","place","setCart","useState","clubDiscount","setClubDiscount","dataSource","setDataSource","extras","setExtras","fetching","setFetching","undefined","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","login","setLogin","responseError","setResponseError","room","setRoom","useEffect","callback","fetch","Event","subscribe","EVENT","INTENT_CURRENCY","unsubscribe","boards","items","map","_ref2","name","roomName","board","flat","nextCart","find","filter","console","log","replaceHistory","multiRoom","current","offsetHeight","offsetTop","document","documentElement","scrollTo","top","behavior","getNextUrlParams","trackDataSource","nextClubDiscount","params","publish","FINDER","nextParams","parties","parseToParties","nextDataSource","ServiceRates","catch","externalSignout","signout","JSON","stringify","history","replaceState","toUrlParams","lang","getFinderParams","handleFinder","values","handleClubDiscount","next","handleSelect","handleSubmit","isPestana","ServiceFeatures","FEATURES","PESTANA","getCheckoutParams","hotelCurrency","selectableExtras","some","included","handleCheckout","location","href","getForwarderUrl","contentBackground","Theme","features","getFeatures","nights","dateDiff","days","response","roomSelectorProps","onPress","createElement","Fragment","View","ref","className","styles","blur","sticky","backgroundColor","opacity","Finder","assisted","compacted","text","L10N","ACTION_SEARCH","onSubmit","Progress","indeterminate","visible","progress","RoomSelector","role","testId","container","wrapper","content","Content","Header","onClubDiscount","onSelect","row","_ref3","index","item","Item","concat","taxesType","onMoreInfo","onRateInfo","rate","onViewUrl","info","hotels","CardHotel","Unavailability","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","ModalExtras","onCancel","active","Modal","showSignup","title","LABEL_FARE_EXCLUSIVE_MEMBERS","onSuccess","ClubRate","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceFeatures } from '@mirai/services';\nimport { Progress, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { CardHotel, ClubRate, Item, ModalExtras, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getCheckoutParams, getFeatures, getFinderParams, getForwarderUrl, signout, trackDataSource } from './helpers';\nimport { FEATURES } from './Rates.constants';\nimport { Content } from './Rates.Content';\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 { Unavailability } from './Rates.Unavailability';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder';\nimport { EVENT, opacity, parseToParties, toUrlParams } from '../helpers';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nlet loginShown = false;\n\nconst Rates = ({ skeleton, ...others }) => {\n const { isMobile, width } = useDevice();\n const { translate } = useLocale();\n const refRoomSelector = useRef();\n const {\n set,\n value: {\n club: { discount, ...club } = {},\n currency,\n finder = {},\n forwarder,\n hotel = {},\n id,\n language,\n locale,\n rates: { cart: storeCart = [] } = {},\n session,\n urlParams,\n },\n } = useStore();\n\n const { calendar = [], occupation = [], place = {} } = finder;\n\n const [cart, setCart] = useState([]);\n const [clubDiscount, setClubDiscount] = useState(discount);\n const [dataSource, setDataSource] = useState();\n const [extras, setExtras] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [login, setLogin] = useState(false);\n const [responseError, setResponseError] = useState();\n const [room, setRoom] = useState();\n\n useEffect(() => {\n const callback = async ({ currency } = {}) => {\n set({ currency });\n // ! TODO: Here locale is not correct\n await fetch(currency, clubDiscount, undefined, room);\n };\n\n Event.subscribe(EVENT.INTENT_CURRENCY, callback);\n return () => Event.unsubscribe(EVENT.INTENT_CURRENCY, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => skeleton && setFetching(true), [skeleton]);\n\n useEffect(() => {\n if (!storeCart.length || !dataSource || cart.length) return;\n\n const boards = dataSource.items\n .map(({ boards = [], name: roomName }) => boards.map((board) => ({ ...board, roomName })))\n .flat();\n const nextCart = storeCart.map((id) => boards.find((board) => board.id === id)).filter((board) => !!board);\n\n // eslint-disable-next-line no-console\n console.log('::cart from url::', nextCart);\n\n // if (storeCart.length === nextCart.length) setCart(nextCart);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [cart, dataSource, storeCart]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => currency && locale && replaceHistory(), [currency, locale]);\n\n useEffect(() => {\n if (multiRoom) {\n if (room > 0) {\n const { current: { offsetHeight = 0, offsetTop = 0 } = {} } = refRoomSelector || {};\n document.documentElement.scrollTo({ top: offsetTop + (isMobile ? offsetHeight : 0), behavior: 'smooth' });\n }\n setDataSource();\n }\n\n fetch(currency, undefined, getNextUrlParams(), room);\n replaceHistory();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [finder, locale, room, session]);\n\n useEffect(() => {\n if (!dataSource || room) return;\n\n trackDataSource({ ...dataSource, ...urlParams, isMobile, occupation, place });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n const fetch = async (currency, nextClubDiscount = clubDiscount, params = urlParams, room) => {\n if (skeleton || (!multiRoom && room !== undefined)) return;\n\n Event.publish(EVENT.FINDER, { calendar: undefined });\n\n setFetching(true);\n setResponseError();\n\n const nextParams = {\n ...params,\n club,\n clubDiscount: nextClubDiscount,\n currency,\n id,\n locale,\n occupation,\n place,\n session,\n };\n if (room !== undefined) nextParams.parties = parseToParties([occupation[room]]);\n\n const nextDataSource = await ServiceRates.get(nextParams).catch(setResponseError);\n if (nextDataSource?.externalSignout) signout({ club, language });\n else setDataSource(nextDataSource);\n\n if (nextDataSource && multiRoom && room === undefined) setRoom(0);\n\n setFetching(false);\n };\n\n const replaceHistory = (nextParams = getNextUrlParams() || {}, nextCart = cart || []) => {\n if (nextCart.length) nextParams.rates = JSON.stringify(nextCart.map(({ id } = {}) => id));\n else if (nextParams.rates) nextParams.rates = undefined;\n\n history.replaceState({}, '', toUrlParams({ ...nextParams, currency, lang: language, locale }));\n };\n\n const getNextUrlParams = () => getFinderParams({ ...urlParams, ...finder, currency, locale, hotel });\n\n const handleFinder = (values) => {\n setCart([]);\n setDataSource(undefined);\n setRoom(undefined);\n\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n replaceHistory(params);\n };\n\n const handleClubDiscount = async (next) => {\n setCart([]);\n setClubDiscount(next);\n login && setLogin(false);\n\n await fetch(currency, next, undefined, room);\n };\n\n const handleSelect = (board, others) => {\n const nextCart = [...cart];\n nextCart[room || 0] = board ? { ...board, ...others } : undefined;\n\n setCart(nextCart);\n setExtras();\n login && setLogin(false);\n\n if (!multiRoom && !!board) handleSubmit(nextCart);\n if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);\n if (!board) replaceHistory(undefined, nextCart);\n };\n\n // eslint-disable-next-line no-unused-vars\n const handleSubmit = async (cart) => {\n const isPestana = ServiceFeatures.get(FEATURES.PESTANA, id) || false;\n setLogin(false);\n\n if (!isPestana && clubDiscount && !session && !loginShown) {\n loginShown = true;\n return setLogin(true);\n }\n\n replaceHistory(undefined, cart);\n\n const { extras = [] } = await ServiceRates.extras({\n ...getCheckoutParams({ cart, clubDiscount, currency, forwarder, urlParams: getNextUrlParams() }),\n hotelCurrency: dataSource.currency,\n locale,\n }).catch(() => {});\n const selectableExtras = extras.some(({ included } = {}) => !included);\n\n if (selectableExtras) setExtras(extras);\n else handleCheckout(cart, extras);\n };\n\n const handleCheckout = (cart = [], extras = []) => {\n const urlParams = getNextUrlParams();\n document.location.href = getForwarderUrl({ cart, clubDiscount, currency, extras, forwarder, session, urlParams });\n };\n\n const { contentBackground } = Theme.get();\n const features = getFeatures(id, urlParams);\n const multiRoom = occupation?.length > 1;\n const nights = dateDiff(calendar[0], calendar[1]).days;\n const response = dataSource !== undefined;\n const roomSelectorProps = { cart, occupation, room, onPress: setRoom };\n\n return (\n <>\n <View\n ref={refRoomSelector}\n className={styles(style.finder, style.blur, (!multiRoom || responseError) && style.sticky)}\n style={!isMobile ? { backgroundColor: opacity(contentBackground, 0.66) } : undefined}\n >\n <Finder assisted={!isMobile} compacted text={translate(L10N.ACTION_SEARCH)} onSubmit={handleFinder} />\n </View>\n\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n {isMobile && !responseError && <RoomSelector {...roomSelectorProps} />}\n\n <View role=\"rates\" testId={others.testId} className={styles(style.container, others.className)}>\n <View className={[style.wrapper, style.content]}>\n {response && !responseError && <Content {...dataSource} {...others} />}\n\n {(response || (multiRoom && !responseError)) && (\n <Header\n {...{\n clubDiscount,\n dataSource,\n features,\n multiRoom,\n onClubDiscount: handleClubDiscount,\n onSelect: handleSelect,\n }}\n >\n {!isMobile && <RoomSelector {...roomSelectorProps} />}\n </Header>\n )}\n\n {response ? (\n <View row={!isMobile} className={style.items}>\n {dataSource.items?.map(({ id, ...item }, index) => (\n <Item\n key={`${id || index}:${fetching}:${width}`}\n {...{ id, ...item, features, multiRoom, nights, room, taxesType: dataSource.taxesType }}\n cart={cart[room || 0]}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo({ ...rate, name: item.name })}\n onSelect={handleSelect}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n\n {dataSource.hotels?.map((item = {}) => (\n <CardHotel key={item.id} {...item} />\n ))}\n </View>\n ) : responseError ? (\n <Unavailability {...responseError} />\n ) : (\n <Skeleton multiRoom={multiRoom} />\n )}\n </View>\n\n {multiRoom && <Footer {...{ cart, dataSource, extras, occupation }} onSubmit={() => handleSubmit(cart)} />}\n </View>\n\n {response && (\n <>\n <ModalItemInfo\n {...itemInfo}\n features={features}\n visible={!!itemInfo}\n onClose={() => setItemInfo()}\n onViewUrl={(info) => setItemUrl(info)}\n />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n <ModalExtras\n {...{ ...dataSource, cart, extras }}\n visible={!!extras}\n onCancel={() => (multiRoom ? setExtras() : handleSelect())}\n onSubmit={(extras) => handleCheckout(cart, extras)}\n />\n {club.active && dataSource.items?.length > 0 && (\n <ModalLogin\n showSignup={false}\n title={translate(L10N.LABEL_FARE_EXCLUSIVE_MEMBERS)}\n visible={login}\n onClose={() => handleSelect()}\n onSuccess={() => handleSubmit(cart)}\n >\n <ClubRate onCancel={() => handleClubDiscount(false)} onSubmit={() => handleSubmit(cart)} />\n </ModalLogin>\n )}\n </>\n )}\n </>\n );\n};\n\nRates.displayName = 'Mirai:Core:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":"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"}
|
|
@@ -73,7 +73,7 @@ const Hotelverse = _ref => {
|
|
|
73
73
|
}, [checkIn, checkOut, multiRoom]);
|
|
74
74
|
(0, _react.useEffect)(() => {
|
|
75
75
|
const el = container.current;
|
|
76
|
-
const cdn = process.env.
|
|
76
|
+
const cdn = process.env.HOTELVERSE_CDN;
|
|
77
77
|
const scriptEmbed = open && (0, _helpers.addScript)(el, "".concat(cdn, "/scripts/embed.js"));
|
|
78
78
|
const scriptListener = open && (0, _helpers.addScript)(el, "".concat(cdn, "/scripts/interfaceListener.js"));
|
|
79
79
|
if (open) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","FEATURE","HOTELVERSE","Hotelverse","_ref","country","infantAge","items","multiRoom","taxes","onSelect","others","isMobile","useDevice","translate","useLocale","value","club","discount","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","session","urlParams","idtokenprovider","idHotel","showBanner","show","useStore","open","setOpen","useState","token","setToken","container","useRef","useEffect","ServiceFeatures","ServiceHotelverse","getToken","checkin","dateFormatBase","format","CALENDAR_FORMAT","el","current","cdn","process","env","CDN_HOTELVERSE","scriptEmbed","addScript","concat","scriptListener","document","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","arguments","length","undefined","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","removeChild","dateFormat","date","delimiter","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","createElement","Fragment","Pressable","onPress","className","pressable","center","wide","Icon","ICON","THREE_D","Text","action","bold","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","modal","ref","toUpperCase","exports","displayName","propTypes","PropTypes","string","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceHotelVerse as ServiceHotelverse } from '@mirai/services';\nimport { Icon, Modal, Pressable, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { addScript, CALENDAR_FORMAT, ICON } from '../../../helpers';\n\nconst FEATURE = { HOTELVERSE: 'hotelverse' };\n\nconst Hotelverse = ({ country, infantAge, items = [], multiRoom, taxes, onSelect = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n club: { discount } = {},\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation] = [], promocode = '' } = {},\n session,\n urlParams: { idtokenprovider: idHotel, showBanner: show } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n const [token, setToken] = useState();\n\n const container = useRef(null);\n\n useEffect(() => {\n if ((show === 'true' || ServiceFeatures.get(FEATURE.HOTELVERSE, idHotel)) && checkIn && !multiRoom) {\n (async () => {\n setToken(\n await ServiceHotelverse.getToken({ checkin: dateFormatBase(checkIn, { format: CALENDAR_FORMAT }), idHotel }),\n );\n })();\n } else setToken();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checkIn, checkOut, multiRoom]);\n\n useEffect(() => {\n const el = container.current;\n const cdn = process.env.CDN_HOTELVERSE;\n const scriptEmbed = open && addScript(el, `${cdn}/scripts/embed.js`);\n const scriptListener = open && addScript(el, `${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) el?.removeChild(scriptEmbed);\n if (scriptListener) el?.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return token ? (\n <>\n <Pressable\n onPress={() => setOpen(!open)}\n className={[style.pressable, style.center, others.className, isMobile && discount && !session && style.wide]}\n >\n <Icon value={ICON.THREE_D} />\n <Text action bold>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Text>\n </Pressable>\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div ref={container}>\n <div\n id=\"hv\"\n data-hvexthotelid={idHotel}\n data-hvclientid=\"6\"\n data-hvproduct=\"BookYourRoom\"\n data-hvaccesstokenhv={token}\n data-hvcommandsinterface={commandInterface}\n data-hvlanguage={language.toUpperCase()}\n data-hvsearch={search}\n data-hvcurrency={currency}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","FEATURE","HOTELVERSE","Hotelverse","_ref","country","infantAge","items","multiRoom","taxes","onSelect","others","isMobile","useDevice","translate","useLocale","value","club","discount","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","session","urlParams","idtokenprovider","idHotel","showBanner","show","useStore","open","setOpen","useState","token","setToken","container","useRef","useEffect","ServiceFeatures","ServiceHotelverse","getToken","checkin","dateFormatBase","format","CALENDAR_FORMAT","el","current","cdn","process","env","HOTELVERSE_CDN","scriptEmbed","addScript","concat","scriptListener","document","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","arguments","length","undefined","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","removeChild","dateFormat","date","delimiter","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","createElement","Fragment","Pressable","onPress","className","pressable","center","wide","Icon","ICON","THREE_D","Text","action","bold","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","modal","ref","toUpperCase","exports","displayName","propTypes","PropTypes","string","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceHotelVerse as ServiceHotelverse } from '@mirai/services';\nimport { Icon, Modal, Pressable, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { addScript, CALENDAR_FORMAT, ICON } from '../../../helpers';\n\nconst FEATURE = { HOTELVERSE: 'hotelverse' };\n\nconst Hotelverse = ({ country, infantAge, items = [], multiRoom, taxes, onSelect = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n club: { discount } = {},\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation] = [], promocode = '' } = {},\n session,\n urlParams: { idtokenprovider: idHotel, showBanner: show } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n const [token, setToken] = useState();\n\n const container = useRef(null);\n\n useEffect(() => {\n if ((show === 'true' || ServiceFeatures.get(FEATURE.HOTELVERSE, idHotel)) && checkIn && !multiRoom) {\n (async () => {\n setToken(\n await ServiceHotelverse.getToken({ checkin: dateFormatBase(checkIn, { format: CALENDAR_FORMAT }), idHotel }),\n );\n })();\n } else setToken();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checkIn, checkOut, multiRoom]);\n\n useEffect(() => {\n const el = container.current;\n const cdn = process.env.HOTELVERSE_CDN;\n const scriptEmbed = open && addScript(el, `${cdn}/scripts/embed.js`);\n const scriptListener = open && addScript(el, `${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) el?.removeChild(scriptEmbed);\n if (scriptListener) el?.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return token ? (\n <>\n <Pressable\n onPress={() => setOpen(!open)}\n className={[style.pressable, style.center, others.className, isMobile && discount && !session && style.wide]}\n >\n <Icon value={ICON.THREE_D} />\n <Text action bold>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Text>\n </Pressable>\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div ref={container}>\n <div\n id=\"hv\"\n data-hvexthotelid={idHotel}\n data-hvclientid=\"6\"\n data-hvproduct=\"BookYourRoom\"\n data-hvaccesstokenhv={token}\n data-hvcommandsinterface={commandInterface}\n data-hvlanguage={language.toUpperCase()}\n data-hvsearch={search}\n data-hvcurrency={currency}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Features = void 0;
|
|
7
|
+
var _dataSources = require("@mirai/data-sources");
|
|
7
8
|
var _locale = require("@mirai/locale");
|
|
8
9
|
var _ui = require("@mirai/ui");
|
|
9
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -19,14 +20,25 @@ const Features = _ref => {
|
|
|
19
20
|
let {
|
|
20
21
|
bedTypes = [],
|
|
21
22
|
compact = false,
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
features: {
|
|
24
|
+
showSelectedOccupation = false
|
|
25
|
+
} = {},
|
|
26
|
+
maxOccupation: roomMaxOccupation = 2,
|
|
27
|
+
occupation: roomOccupation = [],
|
|
28
|
+
room = 0,
|
|
24
29
|
size,
|
|
25
30
|
...others
|
|
26
31
|
} = _ref;
|
|
27
32
|
const {
|
|
28
33
|
translate
|
|
29
34
|
} = (0, _locale.useLocale)();
|
|
35
|
+
const {
|
|
36
|
+
value: {
|
|
37
|
+
finder: {
|
|
38
|
+
occupation: finderOccupation = []
|
|
39
|
+
} = {}
|
|
40
|
+
}
|
|
41
|
+
} = (0, _dataSources.useStore)();
|
|
30
42
|
const iconProps = {
|
|
31
43
|
headline: true,
|
|
32
44
|
level: 3
|
|
@@ -35,6 +47,17 @@ const Features = _ref => {
|
|
|
35
47
|
small: true,
|
|
36
48
|
className: compact ? style.textCompact : undefined
|
|
37
49
|
};
|
|
50
|
+
let occupation = roomOccupation;
|
|
51
|
+
let maxOccupation = roomMaxOccupation;
|
|
52
|
+
if (showSelectedOccupation && finderOccupation[room]) {
|
|
53
|
+
occupation = finderOccupation[room];
|
|
54
|
+
maxOccupation = occupation.reduce(function (total) {
|
|
55
|
+
let {
|
|
56
|
+
amount
|
|
57
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
58
|
+
return total += amount;
|
|
59
|
+
}, 0);
|
|
60
|
+
}
|
|
38
61
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
39
62
|
row: true,
|
|
40
63
|
className: (0, _ui.styles)(style.features, others.className)
|
|
@@ -65,12 +88,14 @@ exports.Features = Features;
|
|
|
65
88
|
Features.propTypes = {
|
|
66
89
|
bedTypes: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
67
90
|
compact: _propTypes.default.bool,
|
|
91
|
+
features: _propTypes.default.shape({}),
|
|
68
92
|
maxOccupation: _propTypes.default.number,
|
|
69
93
|
occupation: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
70
94
|
ages: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
71
95
|
amount: _propTypes.default.number,
|
|
72
96
|
type: _propTypes.default.number
|
|
73
97
|
})),
|
|
98
|
+
room: _propTypes.default.number,
|
|
74
99
|
size: _propTypes.default.string
|
|
75
100
|
};
|
|
76
101
|
Features.displayName = 'Mirai:Core:Rates:Item:Features';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Features.js","names":["
|
|
1
|
+
{"version":3,"file":"Features.js","names":["_dataSources","require","_locale","_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","features","showSelectedOccupation","maxOccupation","roomMaxOccupation","occupation","roomOccupation","room","size","others","translate","useLocale","value","finder","finderOccupation","useStore","iconProps","headline","level","textProps","small","className","textCompact","undefined","reduce","total","amount","createElement","View","row","styles","item","Icon","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","string","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Features/Features.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { 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 = ({\n bedTypes = [],\n compact = false,\n features: { showSelectedOccupation = false } = {},\n maxOccupation: roomMaxOccupation = 2,\n occupation: roomOccupation = [],\n room = 0,\n size,\n ...others\n}) => {\n const { translate } = useLocale();\n const {\n value: { finder: { occupation: finderOccupation = [] } = {} },\n } = useStore();\n\n const iconProps = { headline: true, level: 3 };\n const textProps = { small: true, className: compact ? style.textCompact : undefined };\n\n let occupation = roomOccupation;\n let maxOccupation = roomMaxOccupation;\n\n if (showSelectedOccupation && finderOccupation[room]) {\n occupation = finderOccupation[room];\n maxOccupation = occupation.reduce((total, { amount } = {}) => (total += amount), 0);\n }\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 features: PropTypes.shape({}),\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 room: PropTypes.number,\n size: PropTypes.string,\n};\n\nFeatures.displayName = 'Mirai:Core:Rates:Item:Features';\n\nexport { Features };\n"],"mappings":"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"}
|
|
@@ -22,6 +22,9 @@ const ModalInfo = _ref => {
|
|
|
22
22
|
let {
|
|
23
23
|
bedDisposition = [],
|
|
24
24
|
description,
|
|
25
|
+
features: {
|
|
26
|
+
showSelectedOccupation = false
|
|
27
|
+
} = {},
|
|
25
28
|
images = [],
|
|
26
29
|
media,
|
|
27
30
|
name,
|
|
@@ -91,7 +94,7 @@ const ModalInfo = _ref => {
|
|
|
91
94
|
})), description && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
92
95
|
wide: true,
|
|
93
96
|
className: style.section
|
|
94
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, description)), occupation.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
97
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, textProps, description)), occupation.length > 0 && !showSelectedOccupation && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
95
98
|
wide: true,
|
|
96
99
|
className: style.section
|
|
97
100
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
@@ -154,6 +157,7 @@ ModalInfo.propTypes = {
|
|
|
154
157
|
type: _propTypes.default.number
|
|
155
158
|
}))),
|
|
156
159
|
description: _propTypes.default.string,
|
|
160
|
+
features: _propTypes.default.shape({}),
|
|
157
161
|
images: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
158
162
|
alt: _propTypes.default.string,
|
|
159
163
|
large: _propTypes.default.string,
|
|
@@ -1 +1 @@
|
|
|
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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"}
|
|
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","features","showSelectedOccupation","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 features: { showSelectedOccupation = false } = {},\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 && !showSelectedOccupation && (\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 features: PropTypes.shape({}),\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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"}
|
|
@@ -17,11 +17,11 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
17
17
|
const ModalRateInfo = _ref => {
|
|
18
18
|
let {
|
|
19
19
|
cancellation: {
|
|
20
|
+
paymentConditions,
|
|
20
21
|
title,
|
|
21
22
|
text
|
|
22
23
|
} = {},
|
|
23
24
|
name,
|
|
24
|
-
paymentConditions,
|
|
25
25
|
visible,
|
|
26
26
|
onClose
|
|
27
27
|
} = _ref;
|
package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalRateInfo.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_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","ModalRateInfo","_ref","cancellation","title","text","name","
|
|
1
|
+
{"version":3,"file":"ModalRateInfo.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_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","ModalRateInfo","_ref","cancellation","paymentConditions","title","text","name","visible","onClose","isMobile","useDevice","translate","useLocale","textProps","action","small","createElement","Modal","fit","className","modal","View","content","section","Text","bold","upperCase","L10N","LABEL_PAYMENT_TERMS","LABEL_CANCELLATION_POLICY","exports","propTypes","PropTypes","shape","string","bool","func","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Modal, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './ModalRateInfo.module.css';\nimport { L10N } from '../../Item.l10n';\n\nconst ModalRateInfo = ({ cancellation: { paymentConditions, title, text } = {}, name, visible, onClose }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const textProps = { action: !isMobile, small: isMobile };\n\n return (\n <Modal fit title={name} visible={visible} onClose={onClose} className={style.modal}>\n <View className={style.content}>\n {paymentConditions && (\n <View className={style.section}>\n <Text bold upperCase>\n {translate(L10N.LABEL_PAYMENT_TERMS)}\n </Text>\n <Text {...textProps}>{paymentConditions}</Text>\n </View>\n )}\n\n <View className={style.section}>\n <Text bold upperCase>\n {translate(L10N.LABEL_CANCELLATION_POLICY)}\n </Text>\n <Text bold {...textProps}>\n {title}\n </Text>\n <Text {...textProps}>{text}</Text>\n </View>\n </View>\n </Modal>\n );\n};\n\nModalRateInfo.propTypes = {\n cancellation: PropTypes.shape({\n text: PropTypes.string,\n title: PropTypes.string,\n }),\n name: PropTypes.string,\n paymentConditions: PropTypes.string,\n visible: PropTypes.bool,\n onClose: PropTypes.func,\n};\n\nModalRateInfo.displayName = 'Mirai:Core:Rates:Item:ModalRateInfo';\n\nexport { ModalRateInfo };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,KAAA,GAAAC,uBAAA,CAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AAAuC,SAAAQ,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAd,uBAAA0B,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;AAEvC,MAAMK,aAAa,GAAGC,IAAA,IAAuF;EAAA,IAAtF;IAAEC,YAAY,EAAE;MAAEC,iBAAiB;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAG,CAAC,CAAC;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAQ,CAAC,GAAAP,IAAA;EACtG,MAAM;IAAEQ;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEjC,MAAMC,SAAS,GAAG;IAAEC,MAAM,EAAE,CAACL,QAAQ;IAAEM,KAAK,EAAEN;EAAS,CAAC;EAExD,oBACE5C,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAAuD,KAAK;IAACC,GAAG;IAACd,KAAK,EAAEE,IAAK;IAACC,OAAO,EAAEA,OAAQ;IAACC,OAAO,EAAEA,OAAQ;IAACW,SAAS,EAAErD,KAAK,CAACsD;EAAM,gBACjFvD,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA2D,IAAI;IAACF,SAAS,EAAErD,KAAK,CAACwD;EAAQ,GAC5BnB,iBAAiB,iBAChBtC,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA2D,IAAI;IAACF,SAAS,EAAErD,KAAK,CAACyD;EAAQ,gBAC7B1D,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA8D,IAAI;IAACC,IAAI;IAACC,SAAS;EAAA,GACjBf,SAAS,CAACgB,UAAI,CAACC,mBAAmB,CAC/B,CAAC,eACP/D,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA8D,IAAI,EAAKX,SAAS,EAAGV,iBAAwB,CAC1C,CACP,eAEDtC,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA2D,IAAI;IAACF,SAAS,EAAErD,KAAK,CAACyD;EAAQ,gBAC7B1D,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA8D,IAAI;IAACC,IAAI;IAACC,SAAS;EAAA,GACjBf,SAAS,CAACgB,UAAI,CAACE,yBAAyB,CACrC,CAAC,eACPhE,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA8D,IAAI,EAAAjC,QAAA;IAACkC,IAAI;EAAA,GAAKZ,SAAS,GACrBT,KACG,CAAC,eACPvC,MAAA,CAAAU,OAAA,CAAAyC,aAAA,CAACtD,GAAA,CAAA8D,IAAI,EAAKX,SAAS,EAAGR,IAAW,CAC7B,CACF,CACD,CAAC;AAEZ,CAAC;AAACyB,OAAA,CAAA9B,aAAA,GAAAA,aAAA;AAEFA,aAAa,CAAC+B,SAAS,GAAG;EACxB7B,YAAY,EAAE8B,kBAAS,CAACC,KAAK,CAAC;IAC5B5B,IAAI,EAAE2B,kBAAS,CAACE,MAAM;IACtB9B,KAAK,EAAE4B,kBAAS,CAACE;EACnB,CAAC,CAAC;EACF5B,IAAI,EAAE0B,kBAAS,CAACE,MAAM;EACtB/B,iBAAiB,EAAE6B,kBAAS,CAACE,MAAM;EACnC3B,OAAO,EAAEyB,kBAAS,CAACG,IAAI;EACvB3B,OAAO,EAAEwB,kBAAS,CAACI;AACrB,CAAC;AAEDpC,aAAa,CAACqC,WAAW,GAAG,qCAAqC"}
|
|
@@ -40,7 +40,7 @@ const Payment = _ref => {
|
|
|
40
40
|
set
|
|
41
41
|
} = (0, _dataSources.useStore)();
|
|
42
42
|
const [cardType, setCardType] = (0, _react.useState)();
|
|
43
|
-
const [method, setMethod] = (0, _react.useState)(methods.length
|
|
43
|
+
const [method, setMethod] = (0, _react.useState)(methods.length > 0 ? methods[0] : undefined);
|
|
44
44
|
(0, _react.useEffect)(() => {
|
|
45
45
|
onChange({
|
|
46
46
|
method
|