@mirai/core 0.4.338 → 0.4.340
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/BookingQuery/BookingQuery.js +1 -0
- package/build/components/BookingQuery/BookingQuery.js.map +1 -1
- package/build/components/ButtonFinder/ButtonFinder.js +1 -0
- package/build/components/ButtonFinder/ButtonFinder.js.map +1 -1
- package/build/components/Chat/Chat.js +1 -0
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/components/Input/Input.module.css +1 -1
- package/build/components/Profile/components/Settings/Settings.Signout.js +1 -0
- package/build/components/Profile/components/Settings/Settings.Signout.js.map +1 -1
- package/build/components/Rates/Rates.js +1 -1
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/components/Filters/Filters.js +2 -3
- package/build/components/Rates/components/Filters/Filters.js.map +1 -1
- package/build/components/Rates/components/Item/components/Option/Option.module.css +1 -1
- package/build/components/Rates/components/ModalTwin/ModalTwin.js +3 -5
- package/build/components/Rates/components/ModalTwin/ModalTwin.js.map +1 -1
- package/build/components/Rates/components/ModalTwin/helpers/getUrl.js +3 -4
- package/build/components/Rates/components/ModalTwin/helpers/getUrl.js.map +1 -1
- package/build/components/Rates/helpers/select.js +0 -3
- package/build/components/Rates/helpers/select.js.map +1 -1
- package/build/components/Session/Session.Login.Modal.js +1 -0
- package/build/components/Session/Session.Login.Modal.js.map +1 -1
- package/build/components/Session/Session.Login.js +3 -2
- package/build/components/Session/Session.Login.js.map +1 -1
- package/build/components/__shared__/Field/Field.module.css +1 -1
- package/build/helpers/consolidateStore.js +0 -1
- package/build/helpers/consolidateStore.js.map +1 -1
- package/build/theme.css +0 -7
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filters.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Filters","_Filters2","_Filters3","_Filters4","_Filters5","style","_helpers","_helpers2","_helpers3","_components2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","currentCurrency","currentPlace","memoizeForm","timeoutRange","Filters","_ref","_ref3","clubDiscount","items","propItems","priceFactor","values","onOpen","onSubmit","others","isMobile","useDevice","translate","useLocale","value","currency","club","finder","hotel","id","locale","occupation","maxRooms","session","urlParams","idoffers","roomTypeId","variant","useStore","place","promocode","allAmenities","setAllAmenities","useState","busy","setBusy","counter","setCounter","filters","setFilters","getAvailableFilters","form","setForm","DEFAULT_FORM","setItems","visible","setVisible","useEffect","nextForm","offer","undefined","roomType","countFilters","priceRange","strictSearch","getStrictSearch","JSON","stringify","setNextState","setClubPromocode","_ref2","Event","subscribe","EVENT","RATES_FILTER_PROMOCODE","unsubscribe","nextFilters","keys","length","handleModal","next","publish","METRICS","handleAmenity","amenities","filter","item","amenity","handleOption","field","concat","handleRange","clearTimeout","setTimeout","SUBMIT_DELAY","handleBookingOption","fetch","handleClearAll","handleSubmit","nextCounter","cart","params","nextItems","fetchRates","catch","freeCancellation","filteredItems","select","availability","arguments","boardsLength","boards","inlineBoards","MAX_BOARDS","name","roomTypeName","find","parseInt","offerName","map","rates","rateId","deals","includes","split","_ref4","createElement","Fragment","Button","onPress","Modal","fit","portal","title","L10N","LABEL_FILTERS","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","section","Text","bold","headline","LABEL_BOOKING_OPTIONS","getBookingOptions","BookingOption","key","checked","roomName","toUpperCase","onChange","LABEL_ACCOMMODATION_PLAN","row","styles","inline","_ref5","text","type","Option","board","outlined","option","prices","InputRange","caption","LABEL_SET_PRICE_RANGE","LABEL_NIGHTLY_PRICES","dataSource","resolution","LABEL_PRICE_RANGE","unit","currencySymbol","wide","LABEL_AMENITIES","highlight","_ref6","Amenity","label","action","textOthers","LABEL_OTHERS","_ref7","Action","ACTION_VIEW_MORE","bedTypes","LABEL_BED_TYPE","bedType","icon","ICON","BED_SINGLE","BED_DOUBLE","LABEL_BED_TYPE_SINGLE","LABEL_BED_TYPE_DOUBLE","sizes","LABEL_ROOM_SIZE","sizeUnit","sizeRange","footer","spaceBetween","transparent","ACTION_CLEAR_ALL","disabled","LABEL_SHOW_COUNT_RESULTS","LABEL_NO_EXACT_MATCHES","count","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","number","func"],"sources":["../../../../../src/components/Rates/components/Filters/Filters.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencySymbol, useLocale } from '@mirai/locale';\nimport { Action, Button, Modal, ScrollView, styles, useDevice, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { InputRange } from './components';\nimport { Amenity } from './Filters.Amenity';\nimport { BookingOption } from './Filters.BookingOption';\nimport { Button as ButtonFilters } from './Filters.Button';\nimport { DEFAULT_FORM, MAX_BOARDS } from './Filters.constants';\nimport { L10N } from './Filters.l10n';\nimport * as style from './Filters.module.css';\nimport { countFilters, getAvailableFilters, getBookingOptions, getStrictSearch } from './helpers';\nimport { EVENT, ICON, SUBMIT_DELAY } from '../../../helpers';\nimport { fetchRates, select } from '../../helpers';\nimport { Option } from '../Item/components';\n\nlet currentCurrency;\nlet currentPlace;\nlet memoizeForm;\nlet timeoutRange;\n\nconst Filters = ({\n clubDiscount,\n items: propItems = [],\n priceFactor = 1,\n values,\n onOpen = () => {},\n onSubmit = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n club = {},\n finder = {},\n hotel,\n id,\n locale,\n occupation: { maxRooms } = {},\n session,\n urlParams: { idoffers, roomTypeId } = {},\n variant,\n } = {},\n } = useStore();\n\n const { place, promocode } = finder;\n\n const [allAmenities, setAllAmenities] = useState(false);\n const [busy, setBusy] = useState(false);\n const [counter, setCounter] = useState(0);\n const [filters, setFilters] = useState(getAvailableFilters(propItems, { priceFactor }));\n const [form, setForm] = useState(DEFAULT_FORM);\n const [items, setItems] = useState(propItems);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const nextForm = memoizeForm || {\n ...DEFAULT_FORM,\n offer: idoffers ? !!idoffers : undefined,\n promocode: promocode ? !!promocode : undefined,\n roomType: roomTypeId ? !!roomTypeId : undefined,\n };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!form.priceRange || (currentCurrency !== undefined && currentCurrency === currency)) return;\n\n currentCurrency = currency;\n const nextForm = { ...form, priceRange: undefined };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n onSubmit({ ...nextForm, strictSearch: getStrictSearch(nextForm) });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency]);\n\n useEffect(() => {\n if (!place || (currentPlace !== undefined && JSON.stringify(currentPlace) === JSON.stringify(place))) return;\n\n if (currentPlace !== undefined) {\n setForm(DEFAULT_FORM);\n setCounter(countFilters(DEFAULT_FORM));\n onSubmit(DEFAULT_FORM);\n }\n currentPlace = place;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n const setNextState = (nextForm) => {\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n };\n\n const setClubPromocode = ({ promocode }) => setNextState({ ...form, promocode });\n\n Event.subscribe(EVENT.RATES_FILTER_PROMOCODE, setClubPromocode);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_PROMOCODE, setClubPromocode);\n }, [form]);\n\n useEffect(() => {\n if (JSON.stringify(propItems) !== JSON.stringify(items)) setItems(propItems);\n\n const nextFilters = getAvailableFilters(propItems, { priceFactor });\n if (JSON.stringify(nextFilters) !== JSON.stringify(filters)) setFilters(nextFilters);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [propItems]);\n\n useEffect(() => {\n if (!values || Object.keys(values).length === 0) return;\n\n if (JSON.stringify(values) !== JSON.stringify(form)) {\n setForm(values);\n setCounter(countFilters(values));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handleModal = () => {\n let next = !visible;\n\n setVisible(next);\n if (next) {\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS', counter });\n onOpen();\n }\n };\n\n const handleAmenity = (id, value) => {\n setForm({ ...form, amenities: value ? [...form.amenities, id] : form.amenities.filter((item) => item !== id) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:AMENITY', amenity: id, value });\n };\n\n const handleOption = (field, id) => {\n setForm({ ...form, [field]: form[field] === id ? undefined : id });\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}` });\n };\n\n const handleRange = (field, value) => {\n setForm({ ...form, [field]: value });\n\n clearTimeout(timeoutRange);\n timeoutRange = setTimeout(\n () => Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value }),\n SUBMIT_DELAY / 2,\n );\n };\n\n const handleBookingOption = async (field, value) => {\n const next = { ...form, [field]: value };\n setForm(next);\n\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value });\n if (field !== 'freeCancellation') await fetch(next);\n };\n\n const handleClearAll = () => {\n const { offer, promocode, roomType } = form || {};\n setAllAmenities(false);\n setForm({ ...DEFAULT_FORM });\n\n (offer || promocode || roomType) && fetch(DEFAULT_FORM);\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:CLEAR_ALL' });\n };\n\n const handleSubmit = () => {\n memoizeForm = form;\n setVisible(false);\n const nextCounter = countFilters(form);\n setCounter(nextCounter);\n onSubmit({ ...form, strictSearch: getStrictSearch(form) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:SUBMIT', counter: nextCounter });\n };\n\n const fetch = async (next) => {\n setBusy(true);\n\n const strictSearch = getStrictSearch(next);\n const cart = []; // ! TODO: [MF-2006] Store should get the current cart of <Rates>\n const params = { cart, club, clubDiscount, finder, hotel, id, locale, maxRooms, session, strictSearch };\n const { items: nextItems } = (await fetchRates(params).catch(() => {})) || {};\n setItems(nextItems);\n if (nextItems) setFilters(getAvailableFilters(nextItems, { priceFactor }));\n\n setBusy(false);\n };\n\n const has = {\n freeCancellation: true || !!filters.freeCancellation, // * We'll activate freeCancellation filter always.\n offer: !!idoffers,\n promocode: !!promocode,\n roomType: !!roomTypeId,\n };\n\n const filteredItems = select(items, form, { priceFactor }, variant).filter(\n ({ availability = 0 } = {}) => availability > 0,\n );\n const { length: boardsLength } = filters.boards;\n const inlineBoards = !isMobile || (isMobile && boardsLength <= MAX_BOARDS - 1);\n const { name: roomTypeName } = items?.find(({ id } = {}) => id === parseInt(roomTypeId)) || {};\n const { name: offerName } =\n (has.offer &&\n items?.map(({ boards = [], rates = [] } = {}) => {\n const { rateId } = boards.find(({ deals = [] } = {}) => deals.includes(idoffers.split(',')[0])) || {};\n\n return rates.find(({ id }) => id === rateId);\n }))?.[0] || {};\n\n return (\n <>\n <ButtonFilters {...{ counter }} onPress={handleModal} />\n\n <Modal\n fit\n portal\n title={translate(L10N.LABEL_FILTERS)}\n visible={visible}\n onClose={handleModal}\n className={[style.modal, others.className]}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_BOOKING_OPTIONS)}\n </Text>\n\n {getBookingOptions(!!idoffers && idoffers.split(',').length === 1)\n .filter(({ field } = {}) => has[field])\n .map(({ field, title } = {}) => (\n <BookingOption\n key={field}\n checked={form[field]}\n {...{ field, title, offerName, roomName: roomTypeName, promocode: promocode?.toUpperCase() }}\n onChange={handleBookingOption}\n />\n ))}\n </View>\n\n {boardsLength > 1 && (\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n <View row={inlineBoards} className={styles(style.boards, inlineBoards && style.inline)}>\n {filters.boards.map(({ id, text, type }) => (\n <Option\n checked={form.board === type}\n key={`board:${id}`}\n inline={inlineBoards}\n outlined\n title={text}\n onPress={() => handleOption('board', type)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.prices.length > 1 && (\n <InputRange\n caption={translate(priceFactor === 1 ? L10N.LABEL_SET_PRICE_RANGE : L10N.LABEL_NIGHTLY_PRICES)}\n dataSource={filters.prices}\n resolution={isMobile || filters.prices.length <= 8 ? 6 : 10}\n title={translate(L10N.LABEL_PRICE_RANGE)}\n unit={currencySymbol(currency, { locale })}\n value={form.priceRange}\n onChange={(value) => handleRange('priceRange', value)}\n className={style.section}\n />\n )}\n\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_AMENITIES)}\n </Text>\n\n <View>\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n\n {allAmenities ? (\n <>\n <Text action bold wide className={style.textOthers}>\n {translate(L10N.LABEL_OTHERS)}\n </Text>\n\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => !item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n </>\n ) : (\n <Action onPress={() => setAllAmenities(true)}>{translate(L10N.ACTION_VIEW_MORE)}</Action>\n )}\n </View>\n </View>\n\n {filters.bedTypes.length > 1 && (\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_BED_TYPE)}\n </Text>\n\n <View row>\n {filters.bedTypes.map((bedType) => (\n <Option\n key={`bedType:${bedType}`}\n checked={form.bedType === bedType}\n icon={bedType === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE}\n inline\n outlined\n title={translate(bedType === 1 ? L10N.LABEL_BED_TYPE_SINGLE : L10N.LABEL_BED_TYPE_DOUBLE)}\n onPress={() => handleOption('bedType', bedType)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.sizes.length > 1 && (\n <InputRange\n dataSource={filters.sizes}\n resolution={isMobile ? 4 : 6}\n title={translate(L10N.LABEL_ROOM_SIZE)}\n unit={filters.sizeUnit}\n value={form.sizeRange}\n onChange={(value) => handleRange('sizeRange', value)}\n className={style.section}\n />\n )}\n </ScrollView>\n\n <View row className={[style.footer, style.spaceBetween]}>\n <Button transparent onPress={handleClearAll}>\n {translate(L10N.ACTION_CLEAR_ALL)}\n </Button>\n <Button busy={busy} disabled={!filteredItems.length} onPress={handleSubmit}>\n {translate(filteredItems.length ? L10N.LABEL_SHOW_COUNT_RESULTS : L10N.LABEL_NO_EXACT_MATCHES, {\n count: filteredItems.length,\n })}\n </Button>\n </View>\n </Modal>\n </>\n );\n};\n\nFilters.displayName = 'Mirai:Core:Rates:Filters';\n\nFilters.propTypes = {\n clubDiscount: PropTypes.bool,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n priceFactor: PropTypes.number,\n values: PropTypes.shape({}),\n onOpen: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Filters };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Filters.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Filters","_Filters2","_Filters3","_Filters4","_Filters5","style","_helpers","_helpers2","_helpers3","_components2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","currentCurrency","currentPlace","memoizeForm","timeoutRange","Filters","_ref","_ref3","clubDiscount","items","propItems","priceFactor","values","onOpen","onSubmit","others","isMobile","useDevice","translate","useLocale","value","currency","club","finder","hotel","id","locale","occupation","maxRooms","session","urlParams","idoffers","roomTypeId","useStore","place","promocode","allAmenities","setAllAmenities","useState","busy","setBusy","counter","setCounter","filters","setFilters","getAvailableFilters","form","setForm","DEFAULT_FORM","setItems","visible","setVisible","useEffect","nextForm","offer","undefined","roomType","countFilters","priceRange","strictSearch","getStrictSearch","JSON","stringify","setNextState","setClubPromocode","_ref2","Event","subscribe","EVENT","RATES_FILTER_PROMOCODE","unsubscribe","nextFilters","keys","length","handleModal","next","publish","METRICS","handleAmenity","amenities","filter","item","amenity","handleOption","field","concat","handleRange","clearTimeout","setTimeout","SUBMIT_DELAY","handleBookingOption","fetch","handleClearAll","handleSubmit","nextCounter","cart","params","nextItems","fetchRates","catch","freeCancellation","filteredItems","select","availability","arguments","boardsLength","boards","inlineBoards","MAX_BOARDS","name","roomTypeName","find","parseInt","offerName","map","rates","rateId","deals","includes","split","_ref4","createElement","Fragment","Button","onPress","Modal","fit","portal","title","L10N","LABEL_FILTERS","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","section","Text","bold","headline","LABEL_BOOKING_OPTIONS","getBookingOptions","BookingOption","key","checked","roomName","toUpperCase","onChange","LABEL_ACCOMMODATION_PLAN","row","styles","inline","_ref5","text","type","Option","board","outlined","option","prices","InputRange","caption","LABEL_SET_PRICE_RANGE","LABEL_NIGHTLY_PRICES","dataSource","resolution","LABEL_PRICE_RANGE","unit","currencySymbol","wide","LABEL_AMENITIES","highlight","_ref6","Amenity","label","action","textOthers","LABEL_OTHERS","_ref7","Action","ACTION_VIEW_MORE","bedTypes","LABEL_BED_TYPE","bedType","icon","ICON","BED_SINGLE","BED_DOUBLE","LABEL_BED_TYPE_SINGLE","LABEL_BED_TYPE_DOUBLE","sizes","LABEL_ROOM_SIZE","sizeUnit","sizeRange","footer","spaceBetween","transparent","ACTION_CLEAR_ALL","disabled","LABEL_SHOW_COUNT_RESULTS","LABEL_NO_EXACT_MATCHES","count","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","number","func"],"sources":["../../../../../src/components/Rates/components/Filters/Filters.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencySymbol, useLocale } from '@mirai/locale';\nimport { Action, Button, Modal, ScrollView, styles, useDevice, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { InputRange } from './components';\nimport { Amenity } from './Filters.Amenity';\nimport { BookingOption } from './Filters.BookingOption';\nimport { Button as ButtonFilters } from './Filters.Button';\nimport { DEFAULT_FORM, MAX_BOARDS } from './Filters.constants';\nimport { L10N } from './Filters.l10n';\nimport * as style from './Filters.module.css';\nimport { countFilters, getAvailableFilters, getBookingOptions, getStrictSearch } from './helpers';\nimport { EVENT, ICON, SUBMIT_DELAY } from '../../../helpers';\nimport { fetchRates, select } from '../../helpers';\nimport { Option } from '../Item/components';\n\nlet currentCurrency;\nlet currentPlace;\nlet memoizeForm;\nlet timeoutRange;\n\nconst Filters = ({\n clubDiscount,\n items: propItems = [],\n priceFactor = 1,\n values,\n onOpen = () => {},\n onSubmit = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n currency,\n club = {},\n finder = {},\n hotel,\n id,\n locale,\n occupation: { maxRooms } = {},\n session,\n urlParams: { idoffers, roomTypeId } = {},\n } = {},\n } = useStore();\n\n const { place, promocode } = finder;\n\n const [allAmenities, setAllAmenities] = useState(false);\n const [busy, setBusy] = useState(false);\n const [counter, setCounter] = useState(0);\n const [filters, setFilters] = useState(getAvailableFilters(propItems, { priceFactor }));\n const [form, setForm] = useState(DEFAULT_FORM);\n const [items, setItems] = useState(propItems);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const nextForm = memoizeForm || {\n ...DEFAULT_FORM,\n offer: idoffers ? !!idoffers : undefined,\n promocode: promocode ? !!promocode : undefined,\n roomType: roomTypeId ? !!roomTypeId : undefined,\n };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!form.priceRange || (currentCurrency !== undefined && currentCurrency === currency)) return;\n\n currentCurrency = currency;\n const nextForm = { ...form, priceRange: undefined };\n\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n onSubmit({ ...nextForm, strictSearch: getStrictSearch(nextForm) });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency]);\n\n useEffect(() => {\n if (!place || (currentPlace !== undefined && JSON.stringify(currentPlace) === JSON.stringify(place))) return;\n\n if (currentPlace !== undefined) {\n setForm(DEFAULT_FORM);\n setCounter(countFilters(DEFAULT_FORM));\n onSubmit(DEFAULT_FORM);\n }\n currentPlace = place;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n const setNextState = (nextForm) => {\n setForm(nextForm);\n setCounter(countFilters(nextForm));\n };\n\n const setClubPromocode = ({ promocode }) => setNextState({ ...form, promocode });\n\n Event.subscribe(EVENT.RATES_FILTER_PROMOCODE, setClubPromocode);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_PROMOCODE, setClubPromocode);\n }, [form]);\n\n useEffect(() => {\n if (JSON.stringify(propItems) !== JSON.stringify(items)) setItems(propItems);\n\n const nextFilters = getAvailableFilters(propItems, { priceFactor });\n if (JSON.stringify(nextFilters) !== JSON.stringify(filters)) setFilters(nextFilters);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [propItems]);\n\n useEffect(() => {\n if (!values || Object.keys(values).length === 0) return;\n\n if (JSON.stringify(values) !== JSON.stringify(form)) {\n setForm(values);\n setCounter(countFilters(values));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handleModal = () => {\n let next = !visible;\n\n setVisible(next);\n if (next) {\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS', counter });\n onOpen();\n }\n };\n\n const handleAmenity = (id, value) => {\n setForm({ ...form, amenities: value ? [...form.amenities, id] : form.amenities.filter((item) => item !== id) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:AMENITY', amenity: id, value });\n };\n\n const handleOption = (field, id) => {\n setForm({ ...form, [field]: form[field] === id ? undefined : id });\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}` });\n };\n\n const handleRange = (field, value) => {\n setForm({ ...form, [field]: value });\n\n clearTimeout(timeoutRange);\n timeoutRange = setTimeout(\n () => Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value }),\n SUBMIT_DELAY / 2,\n );\n };\n\n const handleBookingOption = async (field, value) => {\n const next = { ...form, [field]: value };\n setForm(next);\n\n Event.publish(EVENT.METRICS, { id: `RATES:FILTERS:${field}`, value });\n if (field !== 'freeCancellation') await fetch(next);\n };\n\n const handleClearAll = () => {\n const { offer, promocode, roomType } = form || {};\n setAllAmenities(false);\n setForm({ ...DEFAULT_FORM });\n\n (offer || promocode || roomType) && fetch(DEFAULT_FORM);\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:CLEAR_ALL' });\n };\n\n const handleSubmit = () => {\n memoizeForm = form;\n setVisible(false);\n const nextCounter = countFilters(form);\n setCounter(nextCounter);\n onSubmit({ ...form, strictSearch: getStrictSearch(form) });\n Event.publish(EVENT.METRICS, { id: 'RATES:FILTERS:SUBMIT', counter: nextCounter });\n };\n\n const fetch = async (next) => {\n setBusy(true);\n\n const strictSearch = getStrictSearch(next);\n const cart = []; // ! TODO: [MF-2006] Store should get the current cart of <Rates>\n const params = { cart, club, clubDiscount, finder, hotel, id, locale, maxRooms, session, strictSearch };\n const { items: nextItems } = (await fetchRates(params).catch(() => {})) || {};\n setItems(nextItems);\n if (nextItems) setFilters(getAvailableFilters(nextItems, { priceFactor }));\n\n setBusy(false);\n };\n\n const has = {\n freeCancellation: true || !!filters.freeCancellation, // * We'll activate freeCancellation filter always.\n offer: !!idoffers,\n promocode: !!promocode,\n roomType: !!roomTypeId,\n };\n\n const filteredItems = select(items, form, { priceFactor }).filter(({ availability = 0 } = {}) => availability > 0);\n const { length: boardsLength } = filters.boards;\n const inlineBoards = !isMobile || (isMobile && boardsLength <= MAX_BOARDS - 1);\n const { name: roomTypeName } = items?.find(({ id } = {}) => id === parseInt(roomTypeId)) || {};\n const { name: offerName } =\n (has.offer &&\n items?.map(({ boards = [], rates = [] } = {}) => {\n const { rateId } = boards.find(({ deals = [] } = {}) => deals.includes(idoffers.split(',')[0])) || {};\n\n return rates.find(({ id }) => id === rateId);\n }))?.[0] || {};\n\n return (\n <>\n <ButtonFilters {...{ counter }} onPress={handleModal} />\n\n <Modal\n fit\n portal\n title={translate(L10N.LABEL_FILTERS)}\n visible={visible}\n onClose={handleModal}\n className={[style.modal, others.className]}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_BOOKING_OPTIONS)}\n </Text>\n\n {getBookingOptions(!!idoffers && idoffers.split(',').length === 1)\n .filter(({ field } = {}) => has[field])\n .map(({ field, title } = {}) => (\n <BookingOption\n key={field}\n checked={form[field]}\n {...{ field, title, offerName, roomName: roomTypeName, promocode: promocode?.toUpperCase() }}\n onChange={handleBookingOption}\n />\n ))}\n </View>\n\n {boardsLength > 1 && (\n <View className={style.section}>\n <Text bold headline>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n <View row={inlineBoards} className={styles(style.boards, inlineBoards && style.inline)}>\n {filters.boards.map(({ id, text, type }) => (\n <Option\n checked={form.board === type}\n key={`board:${id}`}\n inline={inlineBoards}\n outlined\n title={text}\n onPress={() => handleOption('board', type)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.prices.length > 1 && (\n <InputRange\n caption={translate(priceFactor === 1 ? L10N.LABEL_SET_PRICE_RANGE : L10N.LABEL_NIGHTLY_PRICES)}\n dataSource={filters.prices}\n resolution={isMobile || filters.prices.length <= 8 ? 6 : 10}\n title={translate(L10N.LABEL_PRICE_RANGE)}\n unit={currencySymbol(currency, { locale })}\n value={form.priceRange}\n onChange={(value) => handleRange('priceRange', value)}\n className={style.section}\n />\n )}\n\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_AMENITIES)}\n </Text>\n\n <View>\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n\n {allAmenities ? (\n <>\n <Text action bold wide className={style.textOthers}>\n {translate(L10N.LABEL_OTHERS)}\n </Text>\n\n <View row className={style.amenities}>\n {filters.amenities\n .filter((item) => !item.highlight)\n .map(({ id, text }) => (\n <Amenity\n checked={form.amenities.includes(id)}\n id={id}\n key={id}\n label={text}\n onChange={handleAmenity}\n />\n ))}\n </View>\n </>\n ) : (\n <Action onPress={() => setAllAmenities(true)}>{translate(L10N.ACTION_VIEW_MORE)}</Action>\n )}\n </View>\n </View>\n\n {filters.bedTypes.length > 1 && (\n <View className={style.section}>\n <Text bold headline wide>\n {translate(L10N.LABEL_BED_TYPE)}\n </Text>\n\n <View row>\n {filters.bedTypes.map((bedType) => (\n <Option\n key={`bedType:${bedType}`}\n checked={form.bedType === bedType}\n icon={bedType === 1 ? ICON.BED_SINGLE : ICON.BED_DOUBLE}\n inline\n outlined\n title={translate(bedType === 1 ? L10N.LABEL_BED_TYPE_SINGLE : L10N.LABEL_BED_TYPE_DOUBLE)}\n onPress={() => handleOption('bedType', bedType)}\n className={style.option}\n />\n ))}\n </View>\n </View>\n )}\n\n {filters.sizes.length > 1 && (\n <InputRange\n dataSource={filters.sizes}\n resolution={isMobile ? 4 : 6}\n title={translate(L10N.LABEL_ROOM_SIZE)}\n unit={filters.sizeUnit}\n value={form.sizeRange}\n onChange={(value) => handleRange('sizeRange', value)}\n className={style.section}\n />\n )}\n </ScrollView>\n\n <View row className={[style.footer, style.spaceBetween]}>\n <Button transparent onPress={handleClearAll}>\n {translate(L10N.ACTION_CLEAR_ALL)}\n </Button>\n <Button busy={busy} disabled={!filteredItems.length} onPress={handleSubmit}>\n {translate(filteredItems.length ? L10N.LABEL_SHOW_COUNT_RESULTS : L10N.LABEL_NO_EXACT_MATCHES, {\n count: filteredItems.length,\n })}\n </Button>\n </View>\n </Modal>\n </>\n );\n};\n\nFilters.displayName = 'Mirai:Core:Rates:Filters';\n\nFilters.propTypes = {\n clubDiscount: PropTypes.bool,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n priceFactor: PropTypes.number,\n values: PropTypes.shape({}),\n onOpen: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Filters };\n"],"mappings":"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"}
|
|
@@ -49,8 +49,7 @@ const ModalTwin = _ref => {
|
|
|
49
49
|
} = {}
|
|
50
50
|
} = {},
|
|
51
51
|
hotel = {},
|
|
52
|
-
language
|
|
53
|
-
variant
|
|
52
|
+
language
|
|
54
53
|
} = {}
|
|
55
54
|
} = (0, _dataSources.useStore)();
|
|
56
55
|
const iframeRef = (0, _react.useRef)();
|
|
@@ -220,7 +219,7 @@ const ModalTwin = _ref => {
|
|
|
220
219
|
} = dataSource || {};
|
|
221
220
|
const filteredItems = ((_select = (0, _helpers4.select)(items, filters, {
|
|
222
221
|
priceFactor
|
|
223
|
-
}
|
|
222
|
+
})) === null || _select === void 0 ? void 0 : _select.map(item => (0, _helpers4.filterItem)(item, filters, priceFactor))) || [];
|
|
224
223
|
const selectedIndex = selectedId ? filteredItems.findIndex(function () {
|
|
225
224
|
let {
|
|
226
225
|
id
|
|
@@ -233,8 +232,7 @@ const ModalTwin = _ref => {
|
|
|
233
232
|
hotelId,
|
|
234
233
|
isHotel,
|
|
235
234
|
items,
|
|
236
|
-
language
|
|
237
|
-
variant
|
|
235
|
+
language
|
|
238
236
|
}),
|
|
239
237
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
240
238
|
[hotel, hotelId, isHotel, language]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalTwin.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_ModalTwin","style","_ModalTwin2","_helpers2","_helpers3","_helpers4","_Filters","_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","ModalTwin","_ref","_select","dataSource","filters","priceFactor","selected","onClose","onFilter","onSelect","others","translate","useLocale","isMobile","useDevice","value","finder","place","id","hotelId","isHotel","hotel","language","variant","useStore","iframeRef","useRef","itemsRef","expanded","setExpanded","useState","loaded","setLoaded","scrollTo","setScrollTo","selectedId","setSelectedId","useEffect","callback","_ref2","displayName","Event","publish","EVENT","MODAL_VISIBLE","visible","subscribe","unsubscribe","event","undefined","data","isLoaded","roomId","origin","process","env","TWIN_URL","console","log","debounceSelectId","setTimeout","_itemsRef$current$sel","current","offsetTop","window","addEventListener","removeEventListener","METRICS","handleFilters","selectedIndex","filteredItems","findIndex","handleChange","index","_iframeRef$current","_iframeRef$current$co","fromMap","contentWindow","postMessage","handleClose","metrics","_iframeRef$current2","_iframeRef$current2$c","keys","rooms","filter","soldOut","map","soldOutRooms","handleOpenFilter","handleSelect","_filteredItems$find","find","item","boards","handleSubmitFilter","debounce","Number","items","select","filterItem","url","useMemo","getUrl","createElement","Modal","fit","preventDefault","title","L10N","LABEL_IMMERSIVE_BOOKING","onOverflow","className","modal","React","Fragment","View","container","row","panel","ScrollView","horizontal","scrollIndicator","snap","scrollview","ref","el","CardExpanded","styles","card","CardReduced","onPress","ModalTwinSkeleton","tag","src","iframe","Filters","values","onOpen","onSubmit","Slider","onChange","reduced","last","onReduce","exports","propTypes","PropTypes","object","number","func"],"sources":["../../../../../src/components/Rates/components/ModalTwin/ModalTwin.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Modal, ScrollView, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { useMemo } from 'react';\n\nimport { CardExpanded, CardReduced, Slider } from './components';\nimport { getUrl } from './helpers';\nimport { L10N } from './ModalTwin.l10n';\nimport * as style from './ModalTwin.module.css';\nimport { ModalTwinSkeleton } from './ModalTwin.Skeleton';\nimport { debounce } from '../../../../helpers';\nimport { EVENT } from '../../../helpers';\nimport { filterItem, select } from '../../helpers';\nimport { Filters } from '../Filters';\n\nconst ModalTwin = ({\n dataSource,\n filters,\n priceFactor,\n selected,\n onClose = () => {},\n onFilter = () => {},\n onSelect = () => {},\n ...others\n}) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n\n const {\n value: { finder: { place: { id: [hotelId] = [], isHotel } = {} } = {}, hotel = {}, language, variant } = {},\n } = useStore();\n\n const iframeRef = useRef();\n const itemsRef = useRef([]);\n\n const [expanded, setExpanded] = useState();\n const [loaded, setLoaded] = useState();\n const [scrollTo, setScrollTo] = useState();\n const [selectedId, setSelectedId] = useState();\n\n useEffect(() => {\n const callback = ({ displayName }) => {\n if (displayName !== ModalTwin.displayName) {\n selected && Event.publish(EVENT.MODAL_VISIBLE, { displayName: ModalTwin.displayName, visible: true });\n }\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, [selected]);\n\n useEffect(() => {\n const callback = (event = {}) => {\n const { data: { isLoaded, roomId } = {}, origin } = event;\n if (origin !== process.env.TWIN_URL) return;\n\n // eslint-disable-next-line no-console\n console.log('Mensaje recibido:', event);\n\n debounceSelectId(roomId);\n\n if (isLoaded) setLoaded(true);\n };\n\n if (!isMobile && selectedId) setTimeout(() => setScrollTo(itemsRef.current[selectedId]?.offsetTop - 74), 400);\n\n window.addEventListener('message', callback);\n\n return () => window.removeEventListener('message', callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedId]);\n\n useEffect(() => {\n setExpanded();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, selected]);\n\n useEffect(() => {\n if (!loaded) return;\n\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:LOADED' });\n\n setTimeout(() => {\n handleFilters();\n\n const selectedIndex = filteredItems.findIndex(({ id } = {}) => id === selected);\n handleChange(selectedIndex !== -1 ? selectedIndex : 0);\n }, 1500);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [loaded]);\n\n useEffect(() => {\n if (!handleFilters()) return;\n\n const selectedIndex = filteredItems.findIndex(({ id } = {}) => id === selectedId);\n if (selectedIndex === -1) handleChange(0);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n const handleChange = (index) => {\n if (index < 0 || index === selectedIndex || index >= filteredItems.length) return;\n\n const { id } = filteredItems[index];\n if (id !== selectedId) {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CHANGE_ROOM', fromMap: false });\n setSelectedId(id);\n iframeRef?.current?.contentWindow?.postMessage({ roomId: id }, process.env.TWIN_URL);\n }\n };\n\n const handleClose = (metrics = true) => {\n metrics && Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CLOSE' });\n\n setSelectedId();\n setLoaded();\n setExpanded();\n setScrollTo();\n onClose();\n };\n\n const handleFilters = () => {\n if (!filters || Object.keys(filters).length === 0) return;\n\n iframeRef?.current?.contentWindow?.postMessage(\n {\n rooms: filteredItems.filter(({ soldOut } = {}) => !soldOut).map(({ id } = {}) => id),\n soldOutRooms: filteredItems.filter(({ soldOut } = {}) => soldOut).map(({ id } = {}) => id),\n },\n process.env.TWIN_URL,\n );\n };\n\n const handleOpenFilter = () => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:OPEN_FILTER' });\n };\n\n const handleSelect = (id) => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:SELECT' });\n\n onSelect(filteredItems.find((item) => item.id === id)?.boards[0]);\n handleClose(false);\n };\n\n const handleSubmitFilter = () => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:SUBMIT_FILTER' });\n onFilter();\n };\n\n const debounceSelectId = debounce((roomId) => {\n if (roomId && Number(roomId) !== selectedId) {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CHANGE_ROOM', fromMap: true });\n setSelectedId(Number(roomId));\n }\n });\n\n const { items = [] } = dataSource || {};\n const filteredItems =\n select(items, filters, { priceFactor }, variant)?.map((item) => filterItem(item, filters, priceFactor)) || [];\n const selectedIndex = selectedId ? filteredItems.findIndex(({ id } = {}) => id === selectedId) : undefined;\n const url = useMemo(\n () => getUrl({ filteredItems, hotel, hotelId, isHotel, items, language, variant }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [hotel, hotelId, isHotel, language],\n );\n\n return (\n <Modal\n {...others}\n displayName={ModalTwin.displayName}\n fit\n preventDefault={false}\n title={translate(L10N.LABEL_IMMERSIVE_BOOKING)}\n visible={!!selected}\n onClose={handleClose}\n onOverflow={handleClose}\n className={style.modal}\n >\n {React.createElement(\n isMobile ? React.Fragment : View,\n !isMobile ? { className: style.container, row: true } : undefined,\n <>\n {!isMobile &&\n (loaded ? (\n <View className={style.panel}>\n <ScrollView\n horizontal={false}\n scrollIndicator\n scrollTo={scrollTo}\n snap={false}\n className={style.scrollview}\n >\n {filteredItems.map((item = {}, index) => (\n <View key={item.id} ref={(el) => (itemsRef.current[item.id] = el)}>\n {selectedId === item.id ? (\n <CardExpanded\n {...{ item, priceFactor, ...others }}\n onSelect={handleSelect}\n className={styles(style.card)}\n />\n ) : (\n <CardReduced {...{ item, priceFactor, ...others }} onPress={() => handleChange(index)} />\n )}\n </View>\n ))}\n </ScrollView>\n </View>\n ) : (\n <ModalTwinSkeleton />\n ))}\n <View tag=\"iframe\" ref={iframeRef} src={url} title=\"modal\" className={style.iframe} />\n </>,\n )}\n\n {loaded && (\n <View className={style.filters}>\n <Filters\n {...dataSource}\n {...{ values: filters, priceFactor, ...others }}\n onOpen={handleOpenFilter}\n onSubmit={handleSubmitFilter}\n />\n </View>\n )}\n\n {loaded && selectedId !== undefined && isMobile && (\n <Slider index={selectedIndex} onChange={handleChange} className={!expanded && style.reduced}>\n {filteredItems.map((item = {}, index) => {\n const last = index === filteredItems.length - 1;\n\n return (\n <View key={item.id} className={style.item}>\n <CardReduced\n {...{ item, last, priceFactor, ...others }}\n visible={!expanded}\n onPress={() => !expanded && setExpanded(true)}\n />\n <CardExpanded\n {...{ item, last, priceFactor, ...others }}\n visible={expanded}\n onReduce={() => setExpanded(false)}\n onSelect={handleSelect}\n />\n </View>\n );\n })}\n </Slider>\n )}\n </Modal>\n );\n};\n\nModalTwin.propTypes = {\n dataSource: PropTypes.object,\n filters: PropTypes.object,\n priceFactor: PropTypes.number,\n selected: PropTypes.number,\n onClose: PropTypes.func,\n onFilter: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nModalTwin.displayName = 'Mirai:Core:Rates:ModalTwin';\n\nexport { ModalTwin };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalTwin.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_ModalTwin","style","_ModalTwin2","_helpers2","_helpers3","_helpers4","_Filters","_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","ModalTwin","_ref","_select","dataSource","filters","priceFactor","selected","onClose","onFilter","onSelect","others","translate","useLocale","isMobile","useDevice","value","finder","place","id","hotelId","isHotel","hotel","language","useStore","iframeRef","useRef","itemsRef","expanded","setExpanded","useState","loaded","setLoaded","scrollTo","setScrollTo","selectedId","setSelectedId","useEffect","callback","_ref2","displayName","Event","publish","EVENT","MODAL_VISIBLE","visible","subscribe","unsubscribe","event","undefined","data","isLoaded","roomId","origin","process","env","TWIN_URL","console","log","debounceSelectId","setTimeout","_itemsRef$current$sel","current","offsetTop","window","addEventListener","removeEventListener","METRICS","handleFilters","selectedIndex","filteredItems","findIndex","handleChange","index","_iframeRef$current","_iframeRef$current$co","fromMap","contentWindow","postMessage","handleClose","metrics","_iframeRef$current2","_iframeRef$current2$c","keys","rooms","filter","soldOut","map","soldOutRooms","handleOpenFilter","handleSelect","_filteredItems$find","find","item","boards","handleSubmitFilter","debounce","Number","items","select","filterItem","url","useMemo","getUrl","createElement","Modal","fit","preventDefault","title","L10N","LABEL_IMMERSIVE_BOOKING","onOverflow","className","modal","React","Fragment","View","container","row","panel","ScrollView","horizontal","scrollIndicator","snap","scrollview","ref","el","CardExpanded","styles","card","CardReduced","onPress","ModalTwinSkeleton","tag","src","iframe","Filters","values","onOpen","onSubmit","Slider","onChange","reduced","last","onReduce","exports","propTypes","PropTypes","object","number","func"],"sources":["../../../../../src/components/Rates/components/ModalTwin/ModalTwin.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Modal, ScrollView, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { useMemo } from 'react';\n\nimport { CardExpanded, CardReduced, Slider } from './components';\nimport { getUrl } from './helpers';\nimport { L10N } from './ModalTwin.l10n';\nimport * as style from './ModalTwin.module.css';\nimport { ModalTwinSkeleton } from './ModalTwin.Skeleton';\nimport { debounce } from '../../../../helpers';\nimport { EVENT } from '../../../helpers';\nimport { filterItem, select } from '../../helpers';\nimport { Filters } from '../Filters';\n\nconst ModalTwin = ({\n dataSource,\n filters,\n priceFactor,\n selected,\n onClose = () => {},\n onFilter = () => {},\n onSelect = () => {},\n ...others\n}) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n\n const { value: { finder: { place: { id: [hotelId] = [], isHotel } = {} } = {}, hotel = {}, language } = {} } =\n useStore();\n\n const iframeRef = useRef();\n const itemsRef = useRef([]);\n\n const [expanded, setExpanded] = useState();\n const [loaded, setLoaded] = useState();\n const [scrollTo, setScrollTo] = useState();\n const [selectedId, setSelectedId] = useState();\n\n useEffect(() => {\n const callback = ({ displayName }) => {\n if (displayName !== ModalTwin.displayName) {\n selected && Event.publish(EVENT.MODAL_VISIBLE, { displayName: ModalTwin.displayName, visible: true });\n }\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, [selected]);\n\n useEffect(() => {\n const callback = (event = {}) => {\n const { data: { isLoaded, roomId } = {}, origin } = event;\n if (origin !== process.env.TWIN_URL) return;\n\n // eslint-disable-next-line no-console\n console.log('Mensaje recibido:', event);\n\n debounceSelectId(roomId);\n\n if (isLoaded) setLoaded(true);\n };\n\n if (!isMobile && selectedId) setTimeout(() => setScrollTo(itemsRef.current[selectedId]?.offsetTop - 74), 400);\n\n window.addEventListener('message', callback);\n\n return () => window.removeEventListener('message', callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedId]);\n\n useEffect(() => {\n setExpanded();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, selected]);\n\n useEffect(() => {\n if (!loaded) return;\n\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:LOADED' });\n\n setTimeout(() => {\n handleFilters();\n\n const selectedIndex = filteredItems.findIndex(({ id } = {}) => id === selected);\n handleChange(selectedIndex !== -1 ? selectedIndex : 0);\n }, 1500);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [loaded]);\n\n useEffect(() => {\n if (!handleFilters()) return;\n\n const selectedIndex = filteredItems.findIndex(({ id } = {}) => id === selectedId);\n if (selectedIndex === -1) handleChange(0);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n const handleChange = (index) => {\n if (index < 0 || index === selectedIndex || index >= filteredItems.length) return;\n\n const { id } = filteredItems[index];\n if (id !== selectedId) {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CHANGE_ROOM', fromMap: false });\n setSelectedId(id);\n iframeRef?.current?.contentWindow?.postMessage({ roomId: id }, process.env.TWIN_URL);\n }\n };\n\n const handleClose = (metrics = true) => {\n metrics && Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CLOSE' });\n\n setSelectedId();\n setLoaded();\n setExpanded();\n setScrollTo();\n onClose();\n };\n\n const handleFilters = () => {\n if (!filters || Object.keys(filters).length === 0) return;\n\n iframeRef?.current?.contentWindow?.postMessage(\n {\n rooms: filteredItems.filter(({ soldOut } = {}) => !soldOut).map(({ id } = {}) => id),\n soldOutRooms: filteredItems.filter(({ soldOut } = {}) => soldOut).map(({ id } = {}) => id),\n },\n process.env.TWIN_URL,\n );\n };\n\n const handleOpenFilter = () => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:OPEN_FILTER' });\n };\n\n const handleSelect = (id) => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:SELECT' });\n\n onSelect(filteredItems.find((item) => item.id === id)?.boards[0]);\n handleClose(false);\n };\n\n const handleSubmitFilter = () => {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:SUBMIT_FILTER' });\n onFilter();\n };\n\n const debounceSelectId = debounce((roomId) => {\n if (roomId && Number(roomId) !== selectedId) {\n Event.publish(EVENT.METRICS, { id: 'TWIN_RATES:MODAL_TWIN:CHANGE_ROOM', fromMap: true });\n setSelectedId(Number(roomId));\n }\n });\n\n const { items = [] } = dataSource || {};\n const filteredItems =\n select(items, filters, { priceFactor })?.map((item) => filterItem(item, filters, priceFactor)) || [];\n const selectedIndex = selectedId ? filteredItems.findIndex(({ id } = {}) => id === selectedId) : undefined;\n const url = useMemo(\n () => getUrl({ filteredItems, hotel, hotelId, isHotel, items, language }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [hotel, hotelId, isHotel, language],\n );\n\n return (\n <Modal\n {...others}\n displayName={ModalTwin.displayName}\n fit\n preventDefault={false}\n title={translate(L10N.LABEL_IMMERSIVE_BOOKING)}\n visible={!!selected}\n onClose={handleClose}\n onOverflow={handleClose}\n className={style.modal}\n >\n {React.createElement(\n isMobile ? React.Fragment : View,\n !isMobile ? { className: style.container, row: true } : undefined,\n <>\n {!isMobile &&\n (loaded ? (\n <View className={style.panel}>\n <ScrollView\n horizontal={false}\n scrollIndicator\n scrollTo={scrollTo}\n snap={false}\n className={style.scrollview}\n >\n {filteredItems.map((item = {}, index) => (\n <View key={item.id} ref={(el) => (itemsRef.current[item.id] = el)}>\n {selectedId === item.id ? (\n <CardExpanded\n {...{ item, priceFactor, ...others }}\n onSelect={handleSelect}\n className={styles(style.card)}\n />\n ) : (\n <CardReduced {...{ item, priceFactor, ...others }} onPress={() => handleChange(index)} />\n )}\n </View>\n ))}\n </ScrollView>\n </View>\n ) : (\n <ModalTwinSkeleton />\n ))}\n <View tag=\"iframe\" ref={iframeRef} src={url} title=\"modal\" className={style.iframe} />\n </>,\n )}\n\n {loaded && (\n <View className={style.filters}>\n <Filters\n {...dataSource}\n {...{ values: filters, priceFactor, ...others }}\n onOpen={handleOpenFilter}\n onSubmit={handleSubmitFilter}\n />\n </View>\n )}\n\n {loaded && selectedId !== undefined && isMobile && (\n <Slider index={selectedIndex} onChange={handleChange} className={!expanded && style.reduced}>\n {filteredItems.map((item = {}, index) => {\n const last = index === filteredItems.length - 1;\n\n return (\n <View key={item.id} className={style.item}>\n <CardReduced\n {...{ item, last, priceFactor, ...others }}\n visible={!expanded}\n onPress={() => !expanded && setExpanded(true)}\n />\n <CardExpanded\n {...{ item, last, priceFactor, ...others }}\n visible={expanded}\n onReduce={() => setExpanded(false)}\n onSelect={handleSelect}\n />\n </View>\n );\n })}\n </Slider>\n )}\n </Modal>\n );\n};\n\nModalTwin.propTypes = {\n dataSource: PropTypes.object,\n filters: PropTypes.object,\n priceFactor: PropTypes.number,\n selected: PropTypes.number,\n onClose: PropTypes.func,\n onFilter: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nModalTwin.displayName = 'Mirai:Core:Rates:ModalTwin';\n\nexport { ModalTwin };\n"],"mappings":"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"}
|
|
@@ -11,8 +11,7 @@ const getUrl = _ref => {
|
|
|
11
11
|
hotelId,
|
|
12
12
|
isHotel,
|
|
13
13
|
items,
|
|
14
|
-
language
|
|
15
|
-
variant
|
|
14
|
+
language
|
|
16
15
|
} = _ref;
|
|
17
16
|
if (!filteredItems || !hotel || !items || !language) return;
|
|
18
17
|
const rooms = filteredItems.filter(function () {
|
|
@@ -26,7 +25,7 @@ const getUrl = _ref => {
|
|
|
26
25
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
27
26
|
return id;
|
|
28
27
|
});
|
|
29
|
-
const soldOutRooms =
|
|
28
|
+
const soldOutRooms = items.filter(function () {
|
|
30
29
|
let {
|
|
31
30
|
soldOut
|
|
32
31
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -36,7 +35,7 @@ const getUrl = _ref => {
|
|
|
36
35
|
id
|
|
37
36
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
38
37
|
return id;
|
|
39
|
-
})
|
|
38
|
+
});
|
|
40
39
|
const params = {
|
|
41
40
|
id: isHotel ? hotelId : hotel.id,
|
|
42
41
|
lang: language,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUrl.js","names":["getUrl","_ref","filteredItems","hotel","hotelId","isHotel","items","language","
|
|
1
|
+
{"version":3,"file":"getUrl.js","names":["getUrl","_ref","filteredItems","hotel","hotelId","isHotel","items","language","rooms","filter","soldOut","arguments","length","undefined","map","id","soldOutRooms","params","lang","origin","window","location","concat","process","env","TWIN_URL","URLSearchParams","Object","entries","exports"],"sources":["../../../../../../src/components/Rates/components/ModalTwin/helpers/getUrl.js"],"sourcesContent":["export const getUrl = ({ filteredItems, hotel, hotelId, isHotel, items, language }) => {\n if (!filteredItems || !hotel || !items || !language) return;\n const rooms = filteredItems.filter(({ soldOut } = {}) => !soldOut).map(({ id } = {}) => id);\n const soldOutRooms = items.filter(({ soldOut } = {}) => soldOut).map(({ id } = {}) => id);\n const params = {\n id: isHotel ? hotelId : hotel.id,\n lang: language,\n origin: window.location.origin,\n ...(rooms.length ? { rooms } : undefined),\n ...(soldOutRooms.length ? { soldOutRooms } : undefined),\n };\n\n return `${process.env.TWIN_URL}/rates/index.html?${new URLSearchParams(Object.entries(params))}`;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,MAAM,GAAGC,IAAA,IAAiE;EAAA,IAAhE;IAAEC,aAAa;IAAEC,KAAK;IAAEC,OAAO;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAAN,IAAA;EAChF,IAAI,CAACC,aAAa,IAAI,CAACC,KAAK,IAAI,CAACG,KAAK,IAAI,CAACC,QAAQ,EAAE;EACrD,MAAMC,KAAK,GAAGN,aAAa,CAACO,MAAM,CAAC;IAAA,IAAC;MAAEC;IAAQ,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAAK,CAACD,OAAO;EAAA,EAAC,CAACI,GAAG,CAAC;IAAA,IAAC;MAAEC;IAAG,CAAC,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAAKI,EAAE;EAAA,EAAC;EAC3F,MAAMC,YAAY,GAAGV,KAAK,CAACG,MAAM,CAAC;IAAA,IAAC;MAAEC;IAAQ,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAAKD,OAAO;EAAA,EAAC,CAACI,GAAG,CAAC;IAAA,IAAC;MAAEC;IAAG,CAAC,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAAKI,EAAE;EAAA,EAAC;EACzF,MAAME,MAAM,GAAG;IACbF,EAAE,EAAEV,OAAO,GAAGD,OAAO,GAAGD,KAAK,CAACY,EAAE;IAChCG,IAAI,EAAEX,QAAQ;IACdY,MAAM,EAAEC,MAAM,CAACC,QAAQ,CAACF,MAAM;IAC9B,IAAIX,KAAK,CAACI,MAAM,GAAG;MAAEJ;IAAM,CAAC,GAAGK,SAAS,CAAC;IACzC,IAAIG,YAAY,CAACJ,MAAM,GAAG;MAAEI;IAAa,CAAC,GAAGH,SAAS;EACxD,CAAC;EAED,UAAAS,MAAA,CAAUC,OAAO,CAACC,GAAG,CAACC,QAAQ,wBAAAH,MAAA,CAAqB,IAAII,eAAe,CAACC,MAAM,CAACC,OAAO,CAACX,MAAM,CAAC,CAAC;AAChG,CAAC;AAACY,OAAA,CAAA7B,MAAA,GAAAA,MAAA"}
|
|
@@ -18,17 +18,14 @@ const select = function () {
|
|
|
18
18
|
let {
|
|
19
19
|
priceFactor = 1
|
|
20
20
|
} = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
21
|
-
let variant = arguments.length > 3 ? arguments[3] : undefined;
|
|
22
21
|
return items.filter(function () {
|
|
23
22
|
let {
|
|
24
23
|
amenities = [],
|
|
25
24
|
availability = 0,
|
|
26
25
|
bedTypes = [],
|
|
27
26
|
size: rawSize = '',
|
|
28
|
-
soldOut,
|
|
29
27
|
...item
|
|
30
28
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
31
|
-
if (soldOut && variant === 'B') return;
|
|
32
29
|
const hasAmenities = filterAmenities.length === 0 || filterAmenities.every(item => amenities.map(_ref => {
|
|
33
30
|
let {
|
|
34
31
|
id
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.js","names":["_filterItem","require","select","items","arguments","length","undefined","amenities","filterAmenities","bedType","board","freeCancellation","priceRange","sizeRange","priceFactor","
|
|
1
|
+
{"version":3,"file":"select.js","names":["_filterItem","require","select","items","arguments","length","undefined","amenities","filterAmenities","bedType","board","freeCancellation","priceRange","sizeRange","priceFactor","filter","availability","bedTypes","size","rawSize","item","hasAmenities","every","map","_ref","id","includes","hasBedTypes","hasSize","split","max","maxSize","min","minSize","parseInt","boards","cancellations","rates","filterItem","hasOptions","exports"],"sources":["../../../../src/components/Rates/helpers/select.js"],"sourcesContent":["import { filterItem } from './filterItem';\n\nexport const select = (\n items = [],\n { amenities: filterAmenities = [], bedType, board, freeCancellation, priceRange = {}, sizeRange = {} } = {},\n { priceFactor = 1 } = {},\n) =>\n items.filter(({ amenities = [], availability = 0, bedTypes = [], size: rawSize = '', ...item } = {}) => {\n const hasAmenities =\n filterAmenities.length === 0 || filterAmenities.every((item) => amenities.map(({ id }) => id).includes(item));\n\n const hasBedTypes = !bedType || bedTypes.includes(bedType);\n\n let hasSize = true;\n let [size] = rawSize.split(' ');\n if (size) {\n const { max: maxSize, min: minSize } = sizeRange;\n\n size = parseInt(size);\n hasSize = (!minSize || size >= minSize) && (!maxSize || size <= maxSize);\n }\n\n const {\n boards = [],\n cancellations = [],\n rates = [],\n } = filterItem(\n item,\n {\n board,\n freeCancellation,\n priceRange: { max: priceRange.max, min: priceRange.min },\n },\n priceFactor,\n );\n const hasOptions = availability === 0 || (boards.length > 0 && (cancellations.length > 0 || rates.length > 0));\n\n return hasAmenities && hasBedTypes && hasSize && hasOptions;\n });\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEO,MAAMC,MAAM,GAAG,SAAAA,CAAA;EAAA,IACpBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IACV;IAAEG,SAAS,EAAEC,eAAe,GAAG,EAAE;IAAEC,OAAO;IAAEC,KAAK;IAAEC,gBAAgB;IAAEC,UAAU,GAAG,CAAC,CAAC;IAAEC,SAAS,GAAG,CAAC;EAAE,CAAC,GAAAT,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,IAC3G;IAAEU,WAAW,GAAG;EAAE,CAAC,GAAAV,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OAExBD,KAAK,CAACY,MAAM,CAAC,YAA2F;IAAA,IAA1F;MAAER,SAAS,GAAG,EAAE;MAAES,YAAY,GAAG,CAAC;MAAEC,QAAQ,GAAG,EAAE;MAAEC,IAAI,EAAEC,OAAO,GAAG,EAAE;MAAE,GAAGC;IAAK,CAAC,GAAAhB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IACjG,MAAMiB,YAAY,GAChBb,eAAe,CAACH,MAAM,KAAK,CAAC,IAAIG,eAAe,CAACc,KAAK,CAAEF,IAAI,IAAKb,SAAS,CAACgB,GAAG,CAACC,IAAA;MAAA,IAAC;QAAEC;MAAG,CAAC,GAAAD,IAAA;MAAA,OAAKC,EAAE;IAAA,EAAC,CAACC,QAAQ,CAACN,IAAI,CAAC,CAAC;IAE/G,MAAMO,WAAW,GAAG,CAAClB,OAAO,IAAIQ,QAAQ,CAACS,QAAQ,CAACjB,OAAO,CAAC;IAE1D,IAAImB,OAAO,GAAG,IAAI;IAClB,IAAI,CAACV,IAAI,CAAC,GAAGC,OAAO,CAACU,KAAK,CAAC,GAAG,CAAC;IAC/B,IAAIX,IAAI,EAAE;MACR,MAAM;QAAEY,GAAG,EAAEC,OAAO;QAAEC,GAAG,EAAEC;MAAQ,CAAC,GAAGpB,SAAS;MAEhDK,IAAI,GAAGgB,QAAQ,CAAChB,IAAI,CAAC;MACrBU,OAAO,GAAG,CAAC,CAACK,OAAO,IAAIf,IAAI,IAAIe,OAAO,MAAM,CAACF,OAAO,IAAIb,IAAI,IAAIa,OAAO,CAAC;IAC1E;IAEA,MAAM;MACJI,MAAM,GAAG,EAAE;MACXC,aAAa,GAAG,EAAE;MAClBC,KAAK,GAAG;IACV,CAAC,GAAG,IAAAC,sBAAU,EACZlB,IAAI,EACJ;MACEV,KAAK;MACLC,gBAAgB;MAChBC,UAAU,EAAE;QAAEkB,GAAG,EAAElB,UAAU,CAACkB,GAAG;QAAEE,GAAG,EAAEpB,UAAU,CAACoB;MAAI;IACzD,CAAC,EACDlB,WACF,CAAC;IACD,MAAMyB,UAAU,GAAGvB,YAAY,KAAK,CAAC,IAAKmB,MAAM,CAAC9B,MAAM,GAAG,CAAC,KAAK+B,aAAa,CAAC/B,MAAM,GAAG,CAAC,IAAIgC,KAAK,CAAChC,MAAM,GAAG,CAAC,CAAE;IAE9G,OAAOgB,YAAY,IAAIM,WAAW,IAAIC,OAAO,IAAIW,UAAU;EAC7D,CAAC,CAAC;AAAA;AAACC,OAAA,CAAAtC,MAAA,GAAAA,MAAA"}
|
|
@@ -179,6 +179,7 @@ const Modal = _ref => {
|
|
|
179
179
|
const hasChildren = !!children;
|
|
180
180
|
return /*#__PURE__*/_react.default.createElement(_ui.Modal, {
|
|
181
181
|
fit: !isMobile && hasChildren,
|
|
182
|
+
portal: true,
|
|
182
183
|
visible: visible,
|
|
183
184
|
title: title || translate(!resetPassword ? showSignup ? _Session2.L10N.TITLE_WITH_SIGNUP : _Session2.L10N.TITLE : _Session2.L10N.TITLE_RESET),
|
|
184
185
|
onClose: handleClose,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.Login.Modal.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","ACTIVATE","ACTIVATE_ERROR","FINISH_SIGNUP","MODE","Modal","_ref","children","showSignup","title","visible","onClose","onSuccess","onVisible","others","isMobile","useDevice","translate","useLocale","value","club","cookies","forwarder","id","language","session","urlParams","useStore","busy","setBusy","useState","form","setForm","formError","setFormError","mode","setMode","resetPassword","setResetPassword","response","setResponse","responseError","setResponseError","useEffect","activate","touched","login","params","keys","URL_PARAMS","forEach","includes","userActivated","undefined","authentication","type","AUTH_TYPE","MIRAI","externalLogin","token","getExternalToken","ServiceUser","catch","error","handleClose","handleSubmit","props","idClub","idHotel","method","Event","publish","EVENT","METRICS","concat","LOGGED","event","handleSignup","url","getSignupUrl","document","location","href","handleResetPassword","hasChildren","createElement","fit","L10N","TITLE_WITH_SIGNUP","TITLE","TITLE_RESET","className","modal","ScrollView","scrollview","View","row","wide","styles","Form","validateOnMount","onChange","onError","onSubmit","offset","Notification","info","Text","bold","NOTIFICATION_FINISH_SIGNUP_TITLE","NOTIFICATION_FINISH_SIGNUP_DESCRIPTION","clubName","name","NOTIFICATION_FINISH_SIGNUP_ERROR","description","FORM_DESCRIPTION","FORM_RESET_DESCRIPTION","InputText","autoComplete","label","EMAIL_LABEL","required","email","PASSWORD_LABEL","password","actions","Action","tag","disabled","onPress","testId","ACTION_RESET","ACTION_BACK","notification","NOTIFICATION_ERROR","Button","large","button","CTA_RESET","CTA","success","NOTIFICATION_SUCCESS_RESET","transparent","buttonTransparent","ACTION_SIGNUP","exports","displayName","propTypes","PropTypes","bool","node","string","func"],"sources":["../../../src/components/Session/Session.Login.Modal.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport {\n Action,\n Button,\n Form,\n InputText,\n Modal as ModalBase,\n Notification,\n ScrollView,\n styles,\n useDevice,\n Text,\n View,\n} from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getExternalToken, getSignupUrl } from './helpers';\nimport { MODE, URL_PARAMS } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { EVENT } from '../helpers';\n\nconst { ACTIVATE, ACTIVATE_ERROR, FINISH_SIGNUP } = MODE;\n\nconst Modal = ({\n children,\n showSignup = true,\n title,\n visible,\n onClose,\n onSuccess = () => {},\n onVisible = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n set,\n value: { club = {}, cookies = {}, forwarder, id, language, session, urlParams = {} },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [form, setForm] = useState({});\n const [formError, setFormError] = useState({});\n const [mode, setMode] = useState();\n const [resetPassword, setResetPassword] = useState(false);\n const [response, setResponse] = useState();\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n activate();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (visible) {\n setResetPassword(false);\n setForm({});\n setFormError({ touched: false });\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n useEffect(() => {\n setResponse();\n setResponseError();\n }, [resetPassword]);\n\n useEffect(() => {\n setResponseError();\n set({ login: form });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n const activate = () => {\n const params = {};\n\n Object.keys(URL_PARAMS).forEach(\n (key) => URL_PARAMS[key].includes(urlParams[key]) && (params[key] = urlParams[key]),\n );\n\n if (params.login === FINISH_SIGNUP) {\n setMode(params.login);\n }\n\n if (urlParams.userActivated !== undefined) {\n setMode(urlParams.userActivated === 'true' ? ACTIVATE : ACTIVATE_ERROR);\n onVisible();\n }\n const { authentication: { type = AUTH_TYPE.MIRAI } = {} } = club;\n type !== AUTH_TYPE.MIRAI && externalLogin(type);\n };\n\n const externalLogin = async (type) => {\n const token = getExternalToken({ cookies, type });\n\n if (session) {\n !token && set({ session: undefined });\n return;\n }\n\n const response =\n token &&\n (await ServiceUser.externalLogin(token, type).catch((error) => {\n setResponseError(error);\n }));\n\n if (!response) return;\n\n set({ session: response });\n };\n\n const handleClose = () => {\n setMode();\n onClose();\n };\n\n const handleSubmit = async (value) => {\n setBusy(true);\n setResponseError(undefined);\n\n const props = { ...value, idClub: club.id, idHotel: id };\n const method = resetPassword ? 'resetPassword' : 'login';\n const response = await ServiceUser[method](props).catch((error) => {\n setResponseError(error);\n Event.publish(EVENT.METRICS, { id: `LOGIN:${resetPassword ? 'RESET_PASSWORD:' : ''}ERROR` });\n });\n\n if (response) {\n setResponse(response);\n if (!resetPassword) {\n set({ session: response });\n onSuccess();\n\n Event.publish(EVENT.LOGGED, { event: EVENT.LOGGED, response });\n }\n Event.publish(EVENT.METRICS, { id: `LOGIN:${resetPassword ? 'RESET_PASSWORD:' : ''}SUCCESS` });\n }\n setBusy(false);\n };\n\n const handleSignup = () => {\n const url = getSignupUrl({ forwarder, id, language, urlParams });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleResetPassword = () => {\n setResetPassword(!resetPassword);\n\n if (!resetPassword) Event.publish(EVENT.METRICS, { id: 'LOGIN:FORGOT_PASSWORD' });\n };\n\n const hasChildren = !!children;\n\n return (\n <ModalBase\n fit={!isMobile && hasChildren}\n visible={visible}\n title={title || translate(!resetPassword ? (showSignup ? L10N.TITLE_WITH_SIGNUP : L10N.TITLE) : L10N.TITLE_RESET)}\n onClose={handleClose}\n className={style.modal}\n >\n <ScrollView className={style.scrollview}>\n <View row={!isMobile} wide className={styles(hasChildren && style.children)}>\n {children}\n <View wide className={style.form}>\n {!(response && resetPassword) ? (\n <Form\n {...others}\n validateOnMount\n onChange={setForm}\n onError={setFormError}\n onSubmit={handleSubmit}\n className={style.offset}\n >\n {[ACTIVATE, FINISH_SIGNUP].includes(mode) && !resetPassword && (\n <Notification info className={style.info}>\n <Text bold>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_TITLE)}</Text>\n <Text>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_DESCRIPTION, { clubName: club.name })}</Text>\n </Notification>\n )}\n\n {mode === ACTIVATE_ERROR && (\n <Notification error className={style.info}>\n <Text bold>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_ERROR)}</Text>\n </Notification>\n )}\n\n {(mode !== FINISH_SIGNUP || resetPassword) && (\n <Text className={styles(style.description, style.wide)}>\n {translate(!resetPassword ? L10N.FORM_DESCRIPTION : L10N.FORM_RESET_DESCRIPTION)}\n </Text>\n )}\n <InputText\n autoComplete=\"true\"\n name=\"email\"\n label={translate(L10N.EMAIL_LABEL)}\n required\n type=\"email\"\n value={form.email}\n />\n\n {!resetPassword && (\n <InputText\n autoComplete=\"true\"\n name=\"password\"\n label={translate(L10N.PASSWORD_LABEL)}\n required\n type=\"password\"\n value={form.password}\n />\n )}\n\n {showSignup && !resetPassword && (\n <View wide className={style.actions}>\n <Action tag=\"div\" disabled={busy} onPress={handleResetPassword} testId=\"login-action\">\n {translate(!resetPassword ? L10N.ACTION_RESET : L10N.ACTION_BACK)}\n </Action>\n </View>\n )}\n\n {!busy && responseError && (\n <Notification error className={style.notification} testId=\"login-notification\">\n {translate(L10N.NOTIFICATION_ERROR)}\n </Notification>\n )}\n\n <Button\n busy={busy}\n disabled={Object.keys(formError).length !== 0}\n large\n type=\"submit\"\n wide\n onPress={() => {}}\n className={style.button}\n testId=\"login-button\"\n >\n {translate(resetPassword ? L10N.CTA_RESET : L10N.CTA)}\n </Button>\n </Form>\n ) : (\n <Notification large success className={style.offset}>\n {translate(L10N.NOTIFICATION_SUCCESS_RESET)}\n </Notification>\n )}\n\n {showSignup ? (\n (mode !== FINISH_SIGNUP || resetPassword) && (\n <Button\n disabled={busy}\n large\n transparent\n onPress={resetPassword ? handleResetPassword : handleSignup}\n className={style.buttonTransparent}\n testId=\"login-button-secondary\"\n >\n {translate(resetPassword ? L10N.ACTION_BACK : L10N.ACTION_SIGNUP)}\n </Button>\n )\n ) : (\n <Button\n disabled={busy}\n large\n transparent\n onPress={handleResetPassword}\n className={style.buttonTransparent}\n testId=\"login-button-secondary\"\n >\n {translate(!resetPassword ? L10N.ACTION_RESET : L10N.ACTION_BACK)}\n </Button>\n )}\n </View>\n </View>\n </ScrollView>\n </ModalBase>\n );\n};\n\nModal.displayName = 'Mirai:Core:Session:Login:Modal';\n\nModal.propTypes = {\n activate: PropTypes.bool,\n children: PropTypes.node,\n showSignup: PropTypes.bool,\n title: PropTypes.string,\n visible: PropTypes.bool,\n onClose: PropTypes.func,\n onVisible: PropTypes.func,\n onSuccess: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Session.Login.Modal.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","ACTIVATE","ACTIVATE_ERROR","FINISH_SIGNUP","MODE","Modal","_ref","children","showSignup","title","visible","onClose","onSuccess","onVisible","others","isMobile","useDevice","translate","useLocale","value","club","cookies","forwarder","id","language","session","urlParams","useStore","busy","setBusy","useState","form","setForm","formError","setFormError","mode","setMode","resetPassword","setResetPassword","response","setResponse","responseError","setResponseError","useEffect","activate","touched","login","params","keys","URL_PARAMS","forEach","includes","userActivated","undefined","authentication","type","AUTH_TYPE","MIRAI","externalLogin","token","getExternalToken","ServiceUser","catch","error","handleClose","handleSubmit","props","idClub","idHotel","method","Event","publish","EVENT","METRICS","concat","LOGGED","event","handleSignup","url","getSignupUrl","document","location","href","handleResetPassword","hasChildren","createElement","fit","portal","L10N","TITLE_WITH_SIGNUP","TITLE","TITLE_RESET","className","modal","ScrollView","scrollview","View","row","wide","styles","Form","validateOnMount","onChange","onError","onSubmit","offset","Notification","info","Text","bold","NOTIFICATION_FINISH_SIGNUP_TITLE","NOTIFICATION_FINISH_SIGNUP_DESCRIPTION","clubName","name","NOTIFICATION_FINISH_SIGNUP_ERROR","description","FORM_DESCRIPTION","FORM_RESET_DESCRIPTION","InputText","autoComplete","label","EMAIL_LABEL","required","email","PASSWORD_LABEL","password","actions","Action","tag","disabled","onPress","testId","ACTION_RESET","ACTION_BACK","notification","NOTIFICATION_ERROR","Button","large","button","CTA_RESET","CTA","success","NOTIFICATION_SUCCESS_RESET","transparent","buttonTransparent","ACTION_SIGNUP","exports","displayName","propTypes","PropTypes","bool","node","string","func"],"sources":["../../../src/components/Session/Session.Login.Modal.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport {\n Action,\n Button,\n Form,\n InputText,\n Modal as ModalBase,\n Notification,\n ScrollView,\n styles,\n useDevice,\n Text,\n View,\n} from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getExternalToken, getSignupUrl } from './helpers';\nimport { MODE, URL_PARAMS } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { EVENT } from '../helpers';\n\nconst { ACTIVATE, ACTIVATE_ERROR, FINISH_SIGNUP } = MODE;\n\nconst Modal = ({\n children,\n showSignup = true,\n title,\n visible,\n onClose,\n onSuccess = () => {},\n onVisible = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n set,\n value: { club = {}, cookies = {}, forwarder, id, language, session, urlParams = {} },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [form, setForm] = useState({});\n const [formError, setFormError] = useState({});\n const [mode, setMode] = useState();\n const [resetPassword, setResetPassword] = useState(false);\n const [response, setResponse] = useState();\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n activate();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (visible) {\n setResetPassword(false);\n setForm({});\n setFormError({ touched: false });\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n useEffect(() => {\n setResponse();\n setResponseError();\n }, [resetPassword]);\n\n useEffect(() => {\n setResponseError();\n set({ login: form });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n const activate = () => {\n const params = {};\n\n Object.keys(URL_PARAMS).forEach(\n (key) => URL_PARAMS[key].includes(urlParams[key]) && (params[key] = urlParams[key]),\n );\n\n if (params.login === FINISH_SIGNUP) {\n setMode(params.login);\n }\n\n if (urlParams.userActivated !== undefined) {\n setMode(urlParams.userActivated === 'true' ? ACTIVATE : ACTIVATE_ERROR);\n onVisible();\n }\n const { authentication: { type = AUTH_TYPE.MIRAI } = {} } = club;\n type !== AUTH_TYPE.MIRAI && externalLogin(type);\n };\n\n const externalLogin = async (type) => {\n const token = getExternalToken({ cookies, type });\n\n if (session) {\n !token && set({ session: undefined });\n return;\n }\n\n const response =\n token &&\n (await ServiceUser.externalLogin(token, type).catch((error) => {\n setResponseError(error);\n }));\n\n if (!response) return;\n\n set({ session: response });\n };\n\n const handleClose = () => {\n setMode();\n onClose();\n };\n\n const handleSubmit = async (value) => {\n setBusy(true);\n setResponseError(undefined);\n\n const props = { ...value, idClub: club.id, idHotel: id };\n const method = resetPassword ? 'resetPassword' : 'login';\n const response = await ServiceUser[method](props).catch((error) => {\n setResponseError(error);\n Event.publish(EVENT.METRICS, { id: `LOGIN:${resetPassword ? 'RESET_PASSWORD:' : ''}ERROR` });\n });\n\n if (response) {\n setResponse(response);\n if (!resetPassword) {\n set({ session: response });\n onSuccess();\n\n Event.publish(EVENT.LOGGED, { event: EVENT.LOGGED, response });\n }\n Event.publish(EVENT.METRICS, { id: `LOGIN:${resetPassword ? 'RESET_PASSWORD:' : ''}SUCCESS` });\n }\n setBusy(false);\n };\n\n const handleSignup = () => {\n const url = getSignupUrl({ forwarder, id, language, urlParams });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleResetPassword = () => {\n setResetPassword(!resetPassword);\n\n if (!resetPassword) Event.publish(EVENT.METRICS, { id: 'LOGIN:FORGOT_PASSWORD' });\n };\n\n const hasChildren = !!children;\n\n return (\n <ModalBase\n fit={!isMobile && hasChildren}\n portal\n visible={visible}\n title={title || translate(!resetPassword ? (showSignup ? L10N.TITLE_WITH_SIGNUP : L10N.TITLE) : L10N.TITLE_RESET)}\n onClose={handleClose}\n className={style.modal}\n >\n <ScrollView className={style.scrollview}>\n <View row={!isMobile} wide className={styles(hasChildren && style.children)}>\n {children}\n <View wide className={style.form}>\n {!(response && resetPassword) ? (\n <Form\n {...others}\n validateOnMount\n onChange={setForm}\n onError={setFormError}\n onSubmit={handleSubmit}\n className={style.offset}\n >\n {[ACTIVATE, FINISH_SIGNUP].includes(mode) && !resetPassword && (\n <Notification info className={style.info}>\n <Text bold>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_TITLE)}</Text>\n <Text>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_DESCRIPTION, { clubName: club.name })}</Text>\n </Notification>\n )}\n\n {mode === ACTIVATE_ERROR && (\n <Notification error className={style.info}>\n <Text bold>{translate(L10N.NOTIFICATION_FINISH_SIGNUP_ERROR)}</Text>\n </Notification>\n )}\n\n {(mode !== FINISH_SIGNUP || resetPassword) && (\n <Text className={styles(style.description, style.wide)}>\n {translate(!resetPassword ? L10N.FORM_DESCRIPTION : L10N.FORM_RESET_DESCRIPTION)}\n </Text>\n )}\n <InputText\n autoComplete=\"true\"\n name=\"email\"\n label={translate(L10N.EMAIL_LABEL)}\n required\n type=\"email\"\n value={form.email}\n />\n\n {!resetPassword && (\n <InputText\n autoComplete=\"true\"\n name=\"password\"\n label={translate(L10N.PASSWORD_LABEL)}\n required\n type=\"password\"\n value={form.password}\n />\n )}\n\n {showSignup && !resetPassword && (\n <View wide className={style.actions}>\n <Action tag=\"div\" disabled={busy} onPress={handleResetPassword} testId=\"login-action\">\n {translate(!resetPassword ? L10N.ACTION_RESET : L10N.ACTION_BACK)}\n </Action>\n </View>\n )}\n\n {!busy && responseError && (\n <Notification error className={style.notification} testId=\"login-notification\">\n {translate(L10N.NOTIFICATION_ERROR)}\n </Notification>\n )}\n\n <Button\n busy={busy}\n disabled={Object.keys(formError).length !== 0}\n large\n type=\"submit\"\n wide\n onPress={() => {}}\n className={style.button}\n testId=\"login-button\"\n >\n {translate(resetPassword ? L10N.CTA_RESET : L10N.CTA)}\n </Button>\n </Form>\n ) : (\n <Notification large success className={style.offset}>\n {translate(L10N.NOTIFICATION_SUCCESS_RESET)}\n </Notification>\n )}\n\n {showSignup ? (\n (mode !== FINISH_SIGNUP || resetPassword) && (\n <Button\n disabled={busy}\n large\n transparent\n onPress={resetPassword ? handleResetPassword : handleSignup}\n className={style.buttonTransparent}\n testId=\"login-button-secondary\"\n >\n {translate(resetPassword ? L10N.ACTION_BACK : L10N.ACTION_SIGNUP)}\n </Button>\n )\n ) : (\n <Button\n disabled={busy}\n large\n transparent\n onPress={handleResetPassword}\n className={style.buttonTransparent}\n testId=\"login-button-secondary\"\n >\n {translate(!resetPassword ? L10N.ACTION_RESET : L10N.ACTION_BACK)}\n </Button>\n )}\n </View>\n </View>\n </ScrollView>\n </ModalBase>\n );\n};\n\nModal.displayName = 'Mirai:Core:Session:Login:Modal';\n\nModal.propTypes = {\n activate: PropTypes.bool,\n children: PropTypes.node,\n showSignup: PropTypes.bool,\n title: PropTypes.string,\n visible: PropTypes.bool,\n onClose: PropTypes.func,\n onVisible: PropTypes.func,\n onSuccess: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":"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"}
|
|
@@ -78,11 +78,12 @@ const Login = _ref => {
|
|
|
78
78
|
role: "content",
|
|
79
79
|
className: style.color
|
|
80
80
|
}, translate(_Session2.L10N.ACTION_MODAL))) : undefined), !skeleton && /*#__PURE__*/_react.default.createElement(_SessionLogin.Modal, {
|
|
81
|
-
|
|
81
|
+
portal: true,
|
|
82
82
|
visible: modal,
|
|
83
83
|
onClose: () => setModal(false),
|
|
84
84
|
onVisible: () => setModal(true),
|
|
85
|
-
className: others.className
|
|
85
|
+
className: others.className,
|
|
86
|
+
testId: others.testId
|
|
86
87
|
}));
|
|
87
88
|
};
|
|
88
89
|
exports.Login = Login;
|