@mirai/core 0.4.133 → 0.4.134
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/README.md
CHANGED
|
@@ -272,7 +272,9 @@ You can customize specific properties using HTML data attributes:
|
|
|
272
272
|
|
|
273
273
|
- `data-icon="true"`: Displays an icon on the button instead of the localized search text.
|
|
274
274
|
- `data-inline="false"`: Displays each input in the same format as an `<InputField>`.
|
|
275
|
-
- `data-layout="
|
|
275
|
+
- `data-layout="{type}}"`:
|
|
276
|
+
- `"column"`: Displays the component in a column layout.
|
|
277
|
+
- `"expand"`: Displays the component in an expand layout.
|
|
276
278
|
|
|
277
279
|
You can also adjust various visual properties using the CSS variables exposed by the component:
|
|
278
280
|
|
|
@@ -290,6 +290,7 @@ const Finder = _ref => {
|
|
|
290
290
|
const id = type !== HOTEL ? isHotel && ids.length === 1 ? ids[0] : undefined : idHotel;
|
|
291
291
|
const is = {
|
|
292
292
|
column: layout === 'column',
|
|
293
|
+
expand: !isMobile && layout === 'expand',
|
|
293
294
|
compacted: layout !== 'column' && (isMobile || compacted && !focus),
|
|
294
295
|
debug: (store === null || store === void 0 ? void 0 : store.id) === '500138',
|
|
295
296
|
rates: components.rates !== undefined
|
|
@@ -324,7 +325,7 @@ const Finder = _ref => {
|
|
|
324
325
|
row: !is.column,
|
|
325
326
|
tag: "finder",
|
|
326
327
|
testId: others.testId,
|
|
327
|
-
className: !is.compacted ? (0, _ui.styles)(style.finder, is.column && style.column, others.className) : undefined
|
|
328
|
+
className: !is.compacted ? (0, _ui.styles)(style.finder, is.column && style.column, is.expand && style.expand, others.className) : undefined
|
|
328
329
|
}, (dataSource.places || skeleton && type === CHAIN) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_shared__.Field, _extends({}, _Finder2.FIELD.PLACE, {
|
|
329
330
|
caption: (0, _helpers.getPlaceCaption)(place.value, (_dataSource$places = dataSource.places) === null || _dataSource$places === void 0 ? void 0 : _dataSource$places.options),
|
|
330
331
|
label: translate(_Finder3.L10N.LABEL_WHERE),
|
|
@@ -445,7 +446,7 @@ Finder.propTypes = {
|
|
|
445
446
|
compacted: _propTypes.default.bool,
|
|
446
447
|
icon: _propTypes.default.bool,
|
|
447
448
|
inline: _propTypes.default.bool,
|
|
448
|
-
layout: _propTypes.default.oneOf(['column']),
|
|
449
|
+
layout: _propTypes.default.oneOf(['column', 'expand']),
|
|
449
450
|
metrics: _propTypes.default.string,
|
|
450
451
|
storage: _propTypes.default.bool,
|
|
451
452
|
text: _propTypes.default.string,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Finder.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Finder","_Finder2","_Finder3","style","_helpers","_getAvailableWidth","_helpers2","_prepareRoom","_shared__","_Occupation","_helpers3","_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","CHAIN","HOTEL","TYPE","timeoutMetricChange","Finder","_ref","_dataSource$places","_dataSource$places2","_dataSource$places3","_dataSource$places4","compacted","icon","inline","layout","metrics","storage","text","onChange","onSubmit","others","isMobile","width","deviceWidth","useDevice","dateFormat","translate","useLocale","ref","useRef","value","components","currency","propCurrency","finder","storeFinder","forwarder","locale","skeleton","type","store","useStore","setCurrency","useState","error","setError","focus","setFocus","unavailability","setUnavailability","setValue","parseValue","visited","setVisited","warning","setWarning","setWidth","useEffect","occupation","prepareRoom","DATASOURCE","is","debug","console","log","window","addEventListener","handlePageShow","document","handleClickOutside","Event","publish","EVENT","METRICS","id","removeEventListener","current","el","column","observer","IntersectionObserver","isIntersecting","undefined","getAvailableWidth","threshold","observe","unobserve","disabledDates","place","_fetchUrlParams","isHotel","fetchUrlParams","location","search","fetchCurrency","FINDER_READY","event","handleFinder","calendar","handleSubmit","nextValue","subscribe","FINDER","unsubscribe","JSON","stringify","concat","handleChange","field","fieldValue","next","FINDER_FIELD_CHANGE","previousValue","clearTimeout","setTimeout","_ref$current","contains","persisted","handlePlaceChange","VIEW","PLACE","rates","assistant","_value$calendar","_nextValue","dataSource","places","CALENDAR","firstError","keys","filter","forwarderUrl","getForwarderUrl","setStorage","href","includes","promocode","ids","getDataSource","hotel","idHotel","fieldProps","hasPlaces","getFieldPosition","className","maxWidth","createElement","Fragment","Compact","onExpand","View","role","row","tag","testId","styles","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","Places","autoColumn","separator","getCalendarCaption","centered","LABEL_WHEN","Calendar","parseCalendarProps","variants","rangeMinDays","top","nextCalendar","onError","onValid","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","OCCUPATION","withWarning","onWarning","FieldPromocode","PROMOCODE","onEnter","onLeave","Skeleton","large","button","words","Button","disabled","tabindex","wide","withIcon","Icon","ICON","SEARCH","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Button, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar, Places } from './components';\nimport { Compact } from './Finder.compact';\nimport { FIELD, TYPE, VIEW } from './Finder.constants';\nimport { L10N } from './Finder.l10n';\nimport * as style from './Finder.module.css';\nimport {\n getDataSource,\n getFieldPosition,\n getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { setStorage } from './helpers';\nimport { getAvailableWidth } from './helpers/getAvailableWidth';\nimport { fetchCurrency, fetchUrlParams } from '../../helpers';\n// ! TODO: Why we don't publish prepareRoom in ../../helpers\nimport { prepareRoom } from '../../helpers/prepareRoom';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { Skeleton } from '../__shared__';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { EVENT, getCalendarCaption, ICON } from '../helpers';\n\nconst { CHAIN, HOTEL } = TYPE;\nlet timeoutMetricChange;\n\nconst Finder = ({\n compacted = false,\n icon = false,\n inline = true,\n layout,\n metrics = 'finder',\n storage = true,\n text,\n onChange = () => {},\n onSubmit,\n ...others\n}) => {\n const { isMobile, width: deviceWidth } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n currency: propCurrency,\n finder: storeFinder,\n forwarder,\n locale,\n skeleton = false,\n type = HOTEL,\n ...store\n },\n } = useStore();\n\n const [currency, setCurrency] = useState();\n const [error, setError] = useState({});\n const [focus, setFocus] = useState();\n const [unavailability, setUnavailability] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visited, setVisited] = useState({});\n const [warning, setWarning] = useState();\n const [width, setWidth] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n\n if (is.debug && !storeFinder?.occupation) {\n // eslint-disable-next-line no-console\n console.log({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n }\n window.addEventListener('pageshow', handlePageShow);\n !isMobile && document.addEventListener('click', handleClickOutside, true);\n\n if (metrics === 'finder') Event.publish(EVENT.METRICS, { id: 'FINDER:RENDER' });\n\n return () => {\n window.removeEventListener('pageshow', handlePageShow);\n !isMobile && document.removeEventListener('click', handleClickOutside, true);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const { current: el } = ref || {};\n if (!is.column || !el) return;\n\n const observer = new IntersectionObserver(\n ([{ isIntersecting } = {}] = []) => isIntersecting && setWidth(getAvailableWidth(el)),\n { threshold: 0.1 },\n );\n if (el) observer.observe(el);\n\n return () => {\n if (el) observer.unobserve(el);\n };\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [deviceWidth]);\n\n useEffect(() => {\n unavailability && setUnavailability({ disabledDates: [] });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value?.occupation, value?.place]);\n\n useEffect(() => {\n const { place: { id, isHotel } = {} } = value || {};\n if (isHotel && !fetchUrlParams(window.location.search)?.currency) {\n // ! TODO: Same here, this should be responsibility of <Core>...\n (async () => {\n setCurrency(await fetchCurrency(id[0]));\n })();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value?.place]);\n\n useEffect(() => {\n !onSubmit && !skeleton && Event.publish(EVENT.FINDER_READY, { event: EVENT.FINDER_READY });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const handleFinder = ({ calendar, finder, focus } = {}) => {\n if (finder) return handleSubmit({ nextValue: finder });\n\n setUnavailability(calendar);\n if (focus) setFocus(focus);\n };\n Event.subscribe(EVENT.FINDER, handleFinder);\n\n return () => Event.unsubscribe(EVENT.FINDER, handleFinder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale, propCurrency]);\n\n // ! TODO: Why this one? Is not responsibility of <Finder> change the currency when prop changes.\n useEffect(() => setCurrency(propCurrency), [propCurrency]);\n\n useEffect(\n () => {\n if (JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder))) setValue(parseValue(storeFinder));\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n focus && setVisited({ ...visited, [`${focus}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focus]);\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n\n Event.publish(EVENT.FINDER_FIELD_CHANGE, { field, previousValue: value[field], value: fieldValue });\n if (metrics) {\n clearTimeout(timeoutMetricChange);\n timeoutMetricChange = setTimeout(() => Event.publish(EVENT.METRICS, { id: `${metrics}:CHANGE:${field}` }), 500);\n }\n };\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setFocus(undefined);\n\n const handlePageShow = async ({ persisted } = {}) => {\n if (!persisted) return;\n\n setFocus();\n setVisited();\n setValue(parseValue(storeFinder));\n };\n\n const handlePlaceChange = async (place) => {\n setWarning(false);\n handleChange(VIEW.PLACE, place);\n !is.rates && assistant();\n };\n\n const handleSubmit = ({ nextValue = value } = {}) => {\n if (dataSource.places && value.place === undefined) return setFocus(VIEW.PLACE);\n\n if (value.calendar?.length !== 2) return setFocus(VIEW.CALENDAR);\n\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setWarning(false);\n setFocus(undefined);\n if (!nextValue?.occupation) {\n // eslint-disable-next-line no-console\n console.log('>>>> No occupation');\n nextValue = { ...nextValue, occupation: [prepareRoom(DATASOURCE)] };\n }\n set({ finder: nextValue });\n const forwarderUrl = getForwarderUrl({ ...nextValue, currency, forwarder, locale, store, type });\n\n storage && setStorage(nextValue, store?.id);\n if (onSubmit) onSubmit({ ...nextValue, forwarderUrl });\n else window.location.href = forwarderUrl;\n\n if (metrics) Event.publish(EVENT.METRICS, { id: `${metrics}:SUBMIT`, ...nextValue });\n };\n\n const assistant = () => {\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (!compacted || [VIEW.CALENDAR, VIEW.PLACE].includes(focus)) setFocus(undefined);\n };\n\n const { calendar = [], occupation, place = {}, promocode } = value;\n const { id: ids = [], isHotel } = place;\n const dataSource = getDataSource({ type, ...store });\n const { hotel: { id: idHotel } = {} } = store;\n const id = type !== HOTEL ? (isHotel && ids.length === 1 ? ids[0] : undefined) : idHotel;\n\n const is = {\n column: layout === 'column',\n compacted: layout !== 'column' && (isMobile || (compacted && !focus)),\n debug: store?.id === '500138',\n rates: components.rates !== undefined,\n };\n\n const fieldProps = {\n compacted: is.compacted,\n hasPlaces: !!dataSource.places,\n inline,\n ...(!is.compacted ? getFieldPosition(ref) : undefined),\n className: style.field,\n style: is.column && width ? { maxWidth: width, width } : undefined,\n };\n\n // eslint-disable-next-line no-console\n is.debug && console.log({ place, calendar, occupation });\n\n return (\n <>\n {is.compacted && (\n <Compact\n {...{ dataSource, skeleton, value }}\n onExpand={setFocus}\n onSubmit={!is.rates || (is.rates && !isMobile) ? handleSubmit : undefined}\n {...others}\n />\n )}\n\n <View\n ref={ref}\n role=\"finder\"\n row={!is.column}\n tag=\"finder\"\n testId={others.testId}\n className={!is.compacted ? styles(style.finder, is.column && style.column, others.className) : undefined}\n >\n {(dataSource.places || (skeleton && type === CHAIN)) && (\n <>\n <Field\n {...FIELD.PLACE}\n caption={getPlaceCaption(place.value, dataSource.places?.options)}\n label={translate(L10N.LABEL_WHERE)}\n placeholder={dataSource?.places?.placeholder || translate(L10N.LABEL_WHERE_PLACEHOLDER)}\n visible={focus === VIEW.PLACE}\n onPress={() => setFocus(focus !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n {...fieldProps}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource?.places?.options}\n text={compacted ? text : undefined}\n value={place.value}\n onChange={handlePlaceChange}\n onSubmit={is.rates ? handleSubmit : undefined}\n testId={others.testId ? `${others.testId}-places` : undefined}\n />\n </Field>\n\n {inline && <View className={style.separator} />}\n </>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL && !is.column}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={focus === VIEW.CALENDAR}\n onPress={() => setFocus(focus !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n testId={others.testId ? `${others.testId}-calendar-field` : undefined}\n {...fieldProps}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants)}\n id={id}\n currency={currency || propCurrency}\n locale={locale}\n rangeMinDays={1}\n text={compacted ? text : undefined}\n top={fieldProps?.top}\n skeleton={skeleton}\n unavailability={unavailability}\n value={calendar}\n onChange={(nextCalendar, event) => {\n handleChange(VIEW.CALENDAR, nextCalendar, event);\n if (nextCalendar.length === 2 && !is.rates) {\n setError({ ...error, calendar: undefined });\n assistant();\n }\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onSubmit={is.rates ? handleSubmit : undefined}\n onValid={() => setError({ ...error, calendar: undefined })}\n testId={others.testId ? `${others.testId}-calendar` : undefined}\n />\n </Field>\n\n {inline && <View className={style.separator} />}\n\n <FieldOccupation\n dataSource={getOccupationDataSource({\n ...dataSource,\n places: dataSource.places?.options,\n place: place?.value,\n })}\n hotels={getHotels(dataSource.placesSource, place.value)}\n maxRooms={dataSource.maxRooms}\n text={compacted ? text : undefined}\n value={occupation}\n visible={focus === VIEW.OCCUPATION}\n withWarning={warning}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setFocus(focus !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onSubmit={is.rates ? handleSubmit : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n onWarning={() => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n }}\n testId={others.testId ? `${others.testId}-occupation` : undefined}\n {...fieldProps}\n />\n\n {inline && <View className={style.separator} />}\n\n <FieldPromocode\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={!compacted ? () => setFocus(VIEW.PROMOCODE) : undefined}\n onLeave={!compacted ? () => setFocus(undefined) : undefined}\n onPress={\n isMobile && compacted ? () => setFocus(focus !== VIEW.PROMOCODE ? VIEW.PROMOCODE : undefined) : undefined\n }\n onSubmit={isMobile && compacted ? handleSubmit : undefined}\n testId={others.testId ? `${others.testId}-promocode` : undefined}\n {...fieldProps}\n />\n\n {!is.compacted ? (\n skeleton ? (\n <Skeleton large button words={1} />\n ) : (\n <Button\n disabled={skeleton}\n large\n tabindex={4}\n role=\"finder-button\"\n wide={is.column}\n onPress={handleSubmit}\n className={styles(style.button, icon && !is.column && style.withIcon)}\n testId={others.testId ? `${others.testId}-submit` : undefined}\n >\n {icon && !is.column ? <Icon value={ICON.SEARCH} /> : text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )\n ) : null}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n compacted: PropTypes.bool,\n icon: PropTypes.bool,\n inline: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n metrics: PropTypes.string,\n storage: PropTypes.bool,\n text: PropTypes.string,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Finder.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Finder","_Finder2","_Finder3","style","_helpers","_getAvailableWidth","_helpers2","_prepareRoom","_shared__","_Occupation","_helpers3","_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","CHAIN","HOTEL","TYPE","timeoutMetricChange","Finder","_ref","_dataSource$places","_dataSource$places2","_dataSource$places3","_dataSource$places4","compacted","icon","inline","layout","metrics","storage","text","onChange","onSubmit","others","isMobile","width","deviceWidth","useDevice","dateFormat","translate","useLocale","ref","useRef","value","components","currency","propCurrency","finder","storeFinder","forwarder","locale","skeleton","type","store","useStore","setCurrency","useState","error","setError","focus","setFocus","unavailability","setUnavailability","setValue","parseValue","visited","setVisited","warning","setWarning","setWidth","useEffect","occupation","prepareRoom","DATASOURCE","is","debug","console","log","window","addEventListener","handlePageShow","document","handleClickOutside","Event","publish","EVENT","METRICS","id","removeEventListener","current","el","column","observer","IntersectionObserver","isIntersecting","undefined","getAvailableWidth","threshold","observe","unobserve","disabledDates","place","_fetchUrlParams","isHotel","fetchUrlParams","location","search","fetchCurrency","FINDER_READY","event","handleFinder","calendar","handleSubmit","nextValue","subscribe","FINDER","unsubscribe","JSON","stringify","concat","handleChange","field","fieldValue","next","FINDER_FIELD_CHANGE","previousValue","clearTimeout","setTimeout","_ref$current","contains","persisted","handlePlaceChange","VIEW","PLACE","rates","assistant","_value$calendar","_nextValue","dataSource","places","CALENDAR","firstError","keys","filter","forwarderUrl","getForwarderUrl","setStorage","href","includes","promocode","ids","getDataSource","hotel","idHotel","expand","fieldProps","hasPlaces","getFieldPosition","className","maxWidth","createElement","Fragment","Compact","onExpand","View","role","row","tag","testId","styles","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","Places","autoColumn","separator","getCalendarCaption","centered","LABEL_WHEN","Calendar","parseCalendarProps","variants","rangeMinDays","top","nextCalendar","onError","onValid","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","OCCUPATION","withWarning","onWarning","FieldPromocode","PROMOCODE","onEnter","onLeave","Skeleton","large","button","words","Button","disabled","tabindex","wide","withIcon","Icon","ICON","SEARCH","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Button, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar, Places } from './components';\nimport { Compact } from './Finder.compact';\nimport { FIELD, TYPE, VIEW } from './Finder.constants';\nimport { L10N } from './Finder.l10n';\nimport * as style from './Finder.module.css';\nimport {\n getDataSource,\n getFieldPosition,\n getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { setStorage } from './helpers';\nimport { getAvailableWidth } from './helpers/getAvailableWidth';\nimport { fetchCurrency, fetchUrlParams } from '../../helpers';\n// ! TODO: Why we don't publish prepareRoom in ../../helpers\nimport { prepareRoom } from '../../helpers/prepareRoom';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { Skeleton } from '../__shared__';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { EVENT, getCalendarCaption, ICON } from '../helpers';\n\nconst { CHAIN, HOTEL } = TYPE;\nlet timeoutMetricChange;\n\nconst Finder = ({\n compacted = false,\n icon = false,\n inline = true,\n layout,\n metrics = 'finder',\n storage = true,\n text,\n onChange = () => {},\n onSubmit,\n ...others\n}) => {\n const { isMobile, width: deviceWidth } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n currency: propCurrency,\n finder: storeFinder,\n forwarder,\n locale,\n skeleton = false,\n type = HOTEL,\n ...store\n },\n } = useStore();\n\n const [currency, setCurrency] = useState();\n const [error, setError] = useState({});\n const [focus, setFocus] = useState();\n const [unavailability, setUnavailability] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visited, setVisited] = useState({});\n const [warning, setWarning] = useState();\n const [width, setWidth] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n\n if (is.debug && !storeFinder?.occupation) {\n // eslint-disable-next-line no-console\n console.log({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n }\n window.addEventListener('pageshow', handlePageShow);\n !isMobile && document.addEventListener('click', handleClickOutside, true);\n\n if (metrics === 'finder') Event.publish(EVENT.METRICS, { id: 'FINDER:RENDER' });\n\n return () => {\n window.removeEventListener('pageshow', handlePageShow);\n !isMobile && document.removeEventListener('click', handleClickOutside, true);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const { current: el } = ref || {};\n if (!is.column || !el) return;\n\n const observer = new IntersectionObserver(\n ([{ isIntersecting } = {}] = []) => isIntersecting && setWidth(getAvailableWidth(el)),\n { threshold: 0.1 },\n );\n if (el) observer.observe(el);\n\n return () => {\n if (el) observer.unobserve(el);\n };\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [deviceWidth]);\n\n useEffect(() => {\n unavailability && setUnavailability({ disabledDates: [] });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value?.occupation, value?.place]);\n\n useEffect(() => {\n const { place: { id, isHotel } = {} } = value || {};\n if (isHotel && !fetchUrlParams(window.location.search)?.currency) {\n // ! TODO: Same here, this should be responsibility of <Core>...\n (async () => {\n setCurrency(await fetchCurrency(id[0]));\n })();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value?.place]);\n\n useEffect(() => {\n !onSubmit && !skeleton && Event.publish(EVENT.FINDER_READY, { event: EVENT.FINDER_READY });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const handleFinder = ({ calendar, finder, focus } = {}) => {\n if (finder) return handleSubmit({ nextValue: finder });\n\n setUnavailability(calendar);\n if (focus) setFocus(focus);\n };\n Event.subscribe(EVENT.FINDER, handleFinder);\n\n return () => Event.unsubscribe(EVENT.FINDER, handleFinder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale, propCurrency]);\n\n // ! TODO: Why this one? Is not responsibility of <Finder> change the currency when prop changes.\n useEffect(() => setCurrency(propCurrency), [propCurrency]);\n\n useEffect(\n () => {\n if (JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder))) setValue(parseValue(storeFinder));\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n focus && setVisited({ ...visited, [`${focus}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focus]);\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n\n Event.publish(EVENT.FINDER_FIELD_CHANGE, { field, previousValue: value[field], value: fieldValue });\n if (metrics) {\n clearTimeout(timeoutMetricChange);\n timeoutMetricChange = setTimeout(() => Event.publish(EVENT.METRICS, { id: `${metrics}:CHANGE:${field}` }), 500);\n }\n };\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setFocus(undefined);\n\n const handlePageShow = async ({ persisted } = {}) => {\n if (!persisted) return;\n\n setFocus();\n setVisited();\n setValue(parseValue(storeFinder));\n };\n\n const handlePlaceChange = async (place) => {\n setWarning(false);\n handleChange(VIEW.PLACE, place);\n !is.rates && assistant();\n };\n\n const handleSubmit = ({ nextValue = value } = {}) => {\n if (dataSource.places && value.place === undefined) return setFocus(VIEW.PLACE);\n\n if (value.calendar?.length !== 2) return setFocus(VIEW.CALENDAR);\n\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setWarning(false);\n setFocus(undefined);\n if (!nextValue?.occupation) {\n // eslint-disable-next-line no-console\n console.log('>>>> No occupation');\n nextValue = { ...nextValue, occupation: [prepareRoom(DATASOURCE)] };\n }\n set({ finder: nextValue });\n const forwarderUrl = getForwarderUrl({ ...nextValue, currency, forwarder, locale, store, type });\n\n storage && setStorage(nextValue, store?.id);\n if (onSubmit) onSubmit({ ...nextValue, forwarderUrl });\n else window.location.href = forwarderUrl;\n\n if (metrics) Event.publish(EVENT.METRICS, { id: `${metrics}:SUBMIT`, ...nextValue });\n };\n\n const assistant = () => {\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (!compacted || [VIEW.CALENDAR, VIEW.PLACE].includes(focus)) setFocus(undefined);\n };\n\n const { calendar = [], occupation, place = {}, promocode } = value;\n const { id: ids = [], isHotel } = place;\n const dataSource = getDataSource({ type, ...store });\n const { hotel: { id: idHotel } = {} } = store;\n const id = type !== HOTEL ? (isHotel && ids.length === 1 ? ids[0] : undefined) : idHotel;\n\n const is = {\n column: layout === 'column',\n expand: !isMobile && layout === 'expand',\n compacted: layout !== 'column' && (isMobile || (compacted && !focus)),\n debug: store?.id === '500138',\n rates: components.rates !== undefined,\n };\n\n const fieldProps = {\n compacted: is.compacted,\n hasPlaces: !!dataSource.places,\n inline,\n ...(!is.compacted ? getFieldPosition(ref) : undefined),\n className: style.field,\n style: is.column && width ? { maxWidth: width, width } : undefined,\n };\n\n // eslint-disable-next-line no-console\n is.debug && console.log({ place, calendar, occupation });\n\n return (\n <>\n {is.compacted && (\n <Compact\n {...{ dataSource, skeleton, value }}\n onExpand={setFocus}\n onSubmit={!is.rates || (is.rates && !isMobile) ? handleSubmit : undefined}\n {...others}\n />\n )}\n\n <View\n ref={ref}\n role=\"finder\"\n row={!is.column}\n tag=\"finder\"\n testId={others.testId}\n className={\n !is.compacted\n ? styles(style.finder, is.column && style.column, is.expand && style.expand, others.className)\n : undefined\n }\n >\n {(dataSource.places || (skeleton && type === CHAIN)) && (\n <>\n <Field\n {...FIELD.PLACE}\n caption={getPlaceCaption(place.value, dataSource.places?.options)}\n label={translate(L10N.LABEL_WHERE)}\n placeholder={dataSource?.places?.placeholder || translate(L10N.LABEL_WHERE_PLACEHOLDER)}\n visible={focus === VIEW.PLACE}\n onPress={() => setFocus(focus !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n {...fieldProps}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource?.places?.options}\n text={compacted ? text : undefined}\n value={place.value}\n onChange={handlePlaceChange}\n onSubmit={is.rates ? handleSubmit : undefined}\n testId={others.testId ? `${others.testId}-places` : undefined}\n />\n </Field>\n\n {inline && <View className={style.separator} />}\n </>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL && !is.column}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={focus === VIEW.CALENDAR}\n onPress={() => setFocus(focus !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n testId={others.testId ? `${others.testId}-calendar-field` : undefined}\n {...fieldProps}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants)}\n id={id}\n currency={currency || propCurrency}\n locale={locale}\n rangeMinDays={1}\n text={compacted ? text : undefined}\n top={fieldProps?.top}\n skeleton={skeleton}\n unavailability={unavailability}\n value={calendar}\n onChange={(nextCalendar, event) => {\n handleChange(VIEW.CALENDAR, nextCalendar, event);\n if (nextCalendar.length === 2 && !is.rates) {\n setError({ ...error, calendar: undefined });\n assistant();\n }\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onSubmit={is.rates ? handleSubmit : undefined}\n onValid={() => setError({ ...error, calendar: undefined })}\n testId={others.testId ? `${others.testId}-calendar` : undefined}\n />\n </Field>\n\n {inline && <View className={style.separator} />}\n\n <FieldOccupation\n dataSource={getOccupationDataSource({\n ...dataSource,\n places: dataSource.places?.options,\n place: place?.value,\n })}\n hotels={getHotels(dataSource.placesSource, place.value)}\n maxRooms={dataSource.maxRooms}\n text={compacted ? text : undefined}\n value={occupation}\n visible={focus === VIEW.OCCUPATION}\n withWarning={warning}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setFocus(focus !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onSubmit={is.rates ? handleSubmit : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n onWarning={() => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n }}\n testId={others.testId ? `${others.testId}-occupation` : undefined}\n {...fieldProps}\n />\n\n {inline && <View className={style.separator} />}\n\n <FieldPromocode\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={!compacted ? () => setFocus(VIEW.PROMOCODE) : undefined}\n onLeave={!compacted ? () => setFocus(undefined) : undefined}\n onPress={\n isMobile && compacted ? () => setFocus(focus !== VIEW.PROMOCODE ? VIEW.PROMOCODE : undefined) : undefined\n }\n onSubmit={isMobile && compacted ? handleSubmit : undefined}\n testId={others.testId ? `${others.testId}-promocode` : undefined}\n {...fieldProps}\n />\n\n {!is.compacted ? (\n skeleton ? (\n <Skeleton large button words={1} />\n ) : (\n <Button\n disabled={skeleton}\n large\n tabindex={4}\n role=\"finder-button\"\n wide={is.column}\n onPress={handleSubmit}\n className={styles(style.button, icon && !is.column && style.withIcon)}\n testId={others.testId ? `${others.testId}-submit` : undefined}\n >\n {icon && !is.column ? <Icon value={ICON.SEARCH} /> : text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )\n ) : null}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n compacted: PropTypes.bool,\n icon: PropTypes.bool,\n inline: PropTypes.bool,\n layout: PropTypes.oneOf(['column', 'expand']),\n metrics: PropTypes.string,\n storage: PropTypes.bool,\n text: PropTypes.string,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
|
|
158
158
|
/* M & L */
|
|
159
159
|
@media only screen and (min-width: 481px) {
|
|
160
|
-
.finder:not(.column) {
|
|
160
|
+
.finder:not(.column):not(.expand) {
|
|
161
161
|
width: fit-content;
|
|
162
162
|
}
|
|
163
163
|
|
|
@@ -172,6 +172,19 @@
|
|
|
172
172
|
.compact.hasPlaces .caption {
|
|
173
173
|
max-width: 17.5vw;
|
|
174
174
|
}
|
|
175
|
+
|
|
176
|
+
[data-mirai-component='finder']:has(.finder.expand),
|
|
177
|
+
.finder.expand {
|
|
178
|
+
width: 100%;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.finder.expand > ui-layer {
|
|
182
|
+
flex: 1;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.finder.expand > ui-layer > ui-pressable {
|
|
186
|
+
width: 100%;
|
|
187
|
+
}
|
|
175
188
|
}
|
|
176
189
|
|
|
177
190
|
@media only screen and (min-width: 481px) and (max-width: 1179px) {
|