@mirai/core 0.3.39 → 0.3.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +1 -0
- package/build/components/Finder/Finder.js +14 -2
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.constants.js +2 -1
- package/build/components/Finder/components/Calendar/Calendar.constants.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js +70 -40
- package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.l10n.js +5 -12
- package/build/components/Finder/components/Calendar/Calendar.l10n.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.module.css +4 -3
- package/build/components/Finder/components/Calendar/__tests__/__snapshots__/Calendar.test.js.snap +1921 -2042
- package/build/components/Finder/components/Calendar/helpers/fetchPrices.js +2 -2
- package/build/components/Finder/components/Calendar/helpers/fetchPrices.js.map +1 -1
- package/build/components/Finder/components/Calendar/helpers/getVisibleDate.js +5 -3
- package/build/components/Finder/components/Calendar/helpers/getVisibleDate.js.map +1 -1
- package/build/components/Finder/components/Calendar/helpers/index.js +22 -0
- package/build/components/Finder/components/Calendar/helpers/index.js.map +1 -1
- package/build/components/Finder/components/Calendar/helpers/parseValue.js +14 -0
- package/build/components/Finder/components/Calendar/helpers/parseValue.js.map +1 -0
- package/build/components/Finder/components/Calendar/helpers/valueFormat.js +18 -0
- package/build/components/Finder/components/Calendar/helpers/valueFormat.js.map +1 -0
- package/build/components/Finder/helpers/parseCalendarProps.js +11 -2
- package/build/components/Finder/helpers/parseCalendarProps.js.map +1 -1
- package/package.json +1 -1
package/.env
CHANGED
|
@@ -8,6 +8,7 @@ SERVICE_CURRENCY=https://api.mirai.com/MiraiWebService
|
|
|
8
8
|
SERVICE_DEALS=https://index-deal-pre.mirai.com
|
|
9
9
|
SERVICE_ENGINE=https://engine.mirai.com
|
|
10
10
|
SERVICE_HOTEL=https://engine.mirai.com/HOTEL
|
|
11
|
+
SERVICE_PRICING=https://index-price.mirai.com
|
|
11
12
|
SERVICE_STATIC=https://static.mirai.com
|
|
12
13
|
SERVICE_USER=https://api.mirai.com
|
|
13
14
|
|
|
@@ -139,6 +139,18 @@ const Finder = _ref => {
|
|
|
139
139
|
type,
|
|
140
140
|
...store
|
|
141
141
|
});
|
|
142
|
+
const {
|
|
143
|
+
place: {
|
|
144
|
+
id: ids = [],
|
|
145
|
+
isHotel
|
|
146
|
+
} = {}
|
|
147
|
+
} = value || {};
|
|
148
|
+
const {
|
|
149
|
+
hotel: {
|
|
150
|
+
id: idHotel
|
|
151
|
+
} = {}
|
|
152
|
+
} = store;
|
|
153
|
+
const id = type !== HOTEL ? isHotel && ids.length === 1 ? ids[0] : undefined : idHotel;
|
|
142
154
|
return compact && !visible ? /*#__PURE__*/_react.default.createElement(_Finder.Compact, {
|
|
143
155
|
value,
|
|
144
156
|
dataSource,
|
|
@@ -172,10 +184,10 @@ const Finder = _ref => {
|
|
|
172
184
|
placeholder: (0, _helpers3.getCalendarCaption)(undefined, translate, dateFormat),
|
|
173
185
|
visible: visible === _Finder2.VIEW.CALENDAR,
|
|
174
186
|
onPress: () => setVisible(visible !== _Finder2.VIEW.CALENDAR ? _Finder2.VIEW.CALENDAR : undefined)
|
|
175
|
-
}), /*#__PURE__*/_react.default.createElement(_components.Calendar, _extends({}, (0, _helpers.parseCalendarProps)(dataSource.calendar), {
|
|
187
|
+
}), /*#__PURE__*/_react.default.createElement(_components.Calendar, _extends({}, (0, _helpers.parseCalendarProps)(dataSource.calendar, id, type, dataSource.variants), {
|
|
188
|
+
id: id,
|
|
176
189
|
currency: currency,
|
|
177
190
|
locale: locale,
|
|
178
|
-
showPrices: type === HOTEL,
|
|
179
191
|
value: calendar,
|
|
180
192
|
onChange: (calendar, event) => {
|
|
181
193
|
handleChange(_Finder2.VIEW.CALENDAR, calendar, event);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Finder.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Finder","_Finder2","_Finder3","style","_helpers","_shared__","_helpers2","_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","HOTEL","TYPE","Finder","_ref","_dataSource$places","_dataSource$promo","_dataSource$cta","compact","layout","text","onChange","onExpand","onSubmit","others","isMobile","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","finder","storeFinder","forwarder","locale","type","store","useStore","error","setError","useState","setValue","parseValue","visible","setVisible","visited","setVisited","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","JSON","stringify","concat","handleExpand","setTimeout","handleChange","field","fieldValue","next","handleSubmit","firstError","keys","filter","forwarderUrl","getForwarderUrl","window","location","href","assistant","calendar","VIEW","PLACE","CALENDAR","OCCUPATION","place","promocode","testId","dataSource","getDataSource","createElement","Compact","View","role","row","className","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","onPress","Places","autoColumn","event","getCalendarCaption","centered","LABEL_WHEN","Calendar","parseCalendarProps","showPrices","onError","onValid","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","FieldPromocode","promo","PROMOCODE","onEnter","onLeave","Button","large","wide","button","cta","ACTION_BOOK","exports","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { 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 getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { prepareRoom } from '../__shared__/Occupation/helpers';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { getCalendarCaption } from '../helpers';\n\nconst { HOTEL } = TYPE;\n\nconst Finder = ({ compact, layout, text, onChange = () => {}, onExpand = () => {}, onSubmit, ...others }) => {\n const { isMobile } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: { currency, finder: storeFinder, forwarder, locale, type = HOTEL, ...store },\n } = useStore();\n\n const [error, setError] = useState({});\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visible, setVisible] = useState();\n const [visited, setVisited] = useState({});\n\n useEffect(() => {\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n if (isMobile) return;\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setVisible(undefined);\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(\n () => JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder)) && setValue(parseValue(storeFinder)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n visible && setVisited({ ...visited, [`${visible}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n const handleExpand = (value) => {\n setVisible(value);\n setTimeout(onExpand, 10);\n };\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n set({ finder: next });\n };\n\n const handleSubmit = () => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setVisible(firstError);\n\n setVisible(undefined);\n const forwarderUrl = getForwarderUrl({ ...value, currency, forwarder, locale, store });\n\n if (onSubmit) onSubmit({ ...value, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n const { calendar = [] } = value;\n if (visible === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setVisible(VIEW.CALENDAR);\n else if (visible === VIEW.CALENDAR && !visited.occupation) setVisible(VIEW.OCCUPATION);\n else setVisible(undefined);\n };\n\n const { place = {}, calendar = [], occupation, promocode } = value;\n const { testId } = others;\n const dataSource = getDataSource({ type, ...store });\n\n return compact && !visible ? (\n <Compact {...{ value, dataSource }} onExpand={handleExpand} onSubmit={handleSubmit} />\n ) : (\n <View\n {...others}\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n className={styles(style.finder, layout && style[layout], others.className)}\n >\n {dataSource.places && (\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={visible === VIEW.PLACE}\n onPress={() => setVisible(visible !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n >\n <Places\n autoColumn={visible === VIEW.PLACE}\n dataSource={dataSource.places.options}\n value={place.value}\n onChange={(place, event) => {\n handleChange(VIEW.PLACE, place, event);\n !isMobile && assistant();\n }}\n onSubmit={isMobile ? assistant : undefined}\n testId={testId ? `${testId}-places` : undefined}\n />\n </Field>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={visible === VIEW.CALENDAR}\n onPress={() => setVisible(visible !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar)}\n currency={currency}\n locale={locale}\n showPrices={type === HOTEL}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (!isMobile && calendar.length === 2) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? assistant : undefined}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n </Field>\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 value={occupation}\n visible={visible === VIEW.OCCUPATION}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && visible !== VIEW.OCCUPATION) setVisible(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setVisible(visible !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n placeholder={dataSource.promo?.placeholder}\n value={promocode}\n visible={visible === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={() => setVisible(VIEW.PROMOCODE)}\n onLeave={() => setVisible(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n <Button\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.button}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {text || dataSource.cta?.placeholder || translate(L10N.ACTION_BOOK)}\n </Button>\n </View>\n );\n};\n\nFinder.propTypes = {\n compact: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n text: PropTypes.string,\n onChange: PropTypes.func,\n onExpand: 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","_shared__","_helpers2","_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","HOTEL","TYPE","Finder","_ref","_dataSource$places","_dataSource$promo","_dataSource$cta","compact","layout","text","onChange","onExpand","onSubmit","others","isMobile","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","finder","storeFinder","forwarder","locale","type","store","useStore","error","setError","useState","setValue","parseValue","visible","setVisible","visited","setVisited","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","JSON","stringify","concat","handleExpand","setTimeout","handleChange","field","fieldValue","next","handleSubmit","firstError","keys","filter","forwarderUrl","getForwarderUrl","window","location","href","assistant","calendar","VIEW","PLACE","CALENDAR","OCCUPATION","place","promocode","testId","dataSource","getDataSource","id","ids","isHotel","hotel","idHotel","createElement","Compact","View","role","row","className","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","onPress","Places","autoColumn","event","getCalendarCaption","centered","LABEL_WHEN","Calendar","parseCalendarProps","variants","onError","onValid","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","FieldPromocode","promo","PROMOCODE","onEnter","onLeave","Button","large","wide","button","cta","ACTION_BOOK","exports","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { 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 getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { prepareRoom } from '../__shared__/Occupation/helpers';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { getCalendarCaption } from '../helpers';\n\nconst { HOTEL } = TYPE;\n\nconst Finder = ({ compact, layout, text, onChange = () => {}, onExpand = () => {}, onSubmit, ...others }) => {\n const { isMobile } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: { currency, finder: storeFinder, forwarder, locale, type = HOTEL, ...store },\n } = useStore();\n\n const [error, setError] = useState({});\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visible, setVisible] = useState();\n const [visited, setVisited] = useState({});\n\n useEffect(() => {\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n if (isMobile) return;\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setVisible(undefined);\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(\n () => JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder)) && setValue(parseValue(storeFinder)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n visible && setVisited({ ...visited, [`${visible}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [visible]);\n\n const handleExpand = (value) => {\n setVisible(value);\n setTimeout(onExpand, 10);\n };\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n set({ finder: next });\n };\n\n const handleSubmit = () => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setVisible(firstError);\n\n setVisible(undefined);\n const forwarderUrl = getForwarderUrl({ ...value, currency, forwarder, locale, store });\n\n if (onSubmit) onSubmit({ ...value, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n const { calendar = [] } = value;\n if (visible === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setVisible(VIEW.CALENDAR);\n else if (visible === VIEW.CALENDAR && !visited.occupation) setVisible(VIEW.OCCUPATION);\n else setVisible(undefined);\n };\n\n const { place = {}, calendar = [], occupation, promocode } = value;\n const { testId } = others;\n const dataSource = getDataSource({ type, ...store });\n const { place: { id: ids = [], isHotel } = {} } = value || {};\n const { hotel: { id: idHotel } = {} } = store;\n const id = type !== HOTEL ? (isHotel && ids.length === 1 ? ids[0] : undefined) : idHotel;\n\n return compact && !visible ? (\n <Compact {...{ value, dataSource }} onExpand={handleExpand} onSubmit={handleSubmit} />\n ) : (\n <View\n {...others}\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n className={styles(style.finder, layout && style[layout], others.className)}\n >\n {dataSource.places && (\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={visible === VIEW.PLACE}\n onPress={() => setVisible(visible !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n >\n <Places\n autoColumn={visible === VIEW.PLACE}\n dataSource={dataSource.places.options}\n value={place.value}\n onChange={(place, event) => {\n handleChange(VIEW.PLACE, place, event);\n !isMobile && assistant();\n }}\n onSubmit={isMobile ? assistant : undefined}\n testId={testId ? `${testId}-places` : undefined}\n />\n </Field>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={visible === VIEW.CALENDAR}\n onPress={() => setVisible(visible !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, type, dataSource.variants)}\n id={id}\n currency={currency}\n locale={locale}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (!isMobile && calendar.length === 2) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? assistant : undefined}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n </Field>\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 value={occupation}\n visible={visible === VIEW.OCCUPATION}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && visible !== VIEW.OCCUPATION) setVisible(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setVisible(visible !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n placeholder={dataSource.promo?.placeholder}\n value={promocode}\n visible={visible === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={() => setVisible(VIEW.PROMOCODE)}\n onLeave={() => setVisible(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n <Button\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.button}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {text || dataSource.cta?.placeholder || translate(L10N.ACTION_BOOK)}\n </Button>\n </View>\n );\n};\n\nFinder.propTypes = {\n compact: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n text: PropTypes.string,\n onChange: PropTypes.func,\n onExpand: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.TAX_PARTIAL = exports.TAX_FREE = exports.TAX = exports.SCROLL_EVENT_MS = exports.RANGE_MAX_DAYS = exports.ERROR = void 0;
|
|
6
|
+
exports.TAX_PARTIAL = exports.TAX_FREE = exports.TAX = exports.SCROLL_EVENT_MS = exports.RANGE_MAX_DAYS = exports.MONTHS = exports.ERROR = void 0;
|
|
7
7
|
const ERROR = exports.ERROR = {
|
|
8
8
|
NOT_FILLED: {
|
|
9
9
|
code: 2,
|
|
@@ -11,6 +11,7 @@ const ERROR = exports.ERROR = {
|
|
|
11
11
|
message: 'Not all fields have been filled out'
|
|
12
12
|
}
|
|
13
13
|
};
|
|
14
|
+
const MONTHS = exports.MONTHS = 3;
|
|
14
15
|
const RANGE_MAX_DAYS = exports.RANGE_MAX_DAYS = 30;
|
|
15
16
|
const SCROLL_EVENT_MS = exports.SCROLL_EVENT_MS = 500;
|
|
16
17
|
const TAX = exports.TAX = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.constants.js","names":["ERROR","exports","NOT_FILLED","code","type","message","RANGE_MAX_DAYS","SCROLL_EVENT_MS","TAX","TAX_FREE","TAX_PARTIAL"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.constants.js"],"sourcesContent":["const ERROR = {\n NOT_FILLED: { code: 2, type: 'warn', message: 'Not all fields have been filled out' },\n};\n\nconst RANGE_MAX_DAYS = 30;\n\nconst SCROLL_EVENT_MS = 500;\n\nconst TAX = 1;\nconst TAX_FREE = 2;\nconst TAX_PARTIAL = 3;\n\nexport { ERROR, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL };\n"],"mappings":";;;;;;AAAA,MAAMA,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACZE,UAAU,EAAE;IAAEC,IAAI,EAAE,CAAC;IAAEC,IAAI,EAAE,MAAM;IAAEC,OAAO,EAAE;EAAsC;AACtF,CAAC;AAED,MAAMC,
|
|
1
|
+
{"version":3,"file":"Calendar.constants.js","names":["ERROR","exports","NOT_FILLED","code","type","message","MONTHS","RANGE_MAX_DAYS","SCROLL_EVENT_MS","TAX","TAX_FREE","TAX_PARTIAL"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.constants.js"],"sourcesContent":["const ERROR = {\n NOT_FILLED: { code: 2, type: 'warn', message: 'Not all fields have been filled out' },\n};\n\nconst MONTHS = 3;\n\nconst RANGE_MAX_DAYS = 30;\n\nconst SCROLL_EVENT_MS = 500;\n\nconst TAX = 1;\nconst TAX_FREE = 2;\nconst TAX_PARTIAL = 3;\n\nexport { ERROR, MONTHS, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL };\n"],"mappings":";;;;;;AAAA,MAAMA,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACZE,UAAU,EAAE;IAAEC,IAAI,EAAE,CAAC;IAAEC,IAAI,EAAE,MAAM;IAAEC,OAAO,EAAE;EAAsC;AACtF,CAAC;AAED,MAAMC,MAAM,GAAAL,OAAA,CAAAK,MAAA,GAAG,CAAC;AAEhB,MAAMC,cAAc,GAAAN,OAAA,CAAAM,cAAA,GAAG,EAAE;AAEzB,MAAMC,eAAe,GAAAP,OAAA,CAAAO,eAAA,GAAG,GAAG;AAE3B,MAAMC,GAAG,GAAAR,OAAA,CAAAQ,GAAA,GAAG,CAAC;AACb,MAAMC,QAAQ,GAAAT,OAAA,CAAAS,QAAA,GAAG,CAAC;AAClB,MAAMC,WAAW,GAAAV,OAAA,CAAAU,WAAA,GAAG,CAAC"}
|
|
@@ -14,14 +14,18 @@ var _Calendar2 = require("./Calendar.l10n");
|
|
|
14
14
|
var style = _interopRequireWildcard(require("./Calendar.module.css"));
|
|
15
15
|
var _helpers = require("./helpers");
|
|
16
16
|
var _shared__ = require("../../../__shared__");
|
|
17
|
-
var _helpers2 = require("../../../helpers");
|
|
17
|
+
var _helpers2 = require("../../../__shared__/FieldOccupation/helpers");
|
|
18
|
+
var _helpers3 = require("../../../helpers");
|
|
19
|
+
var _helpers4 = require("../../helpers");
|
|
18
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
19
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
24
|
const Calendar = _ref => {
|
|
25
|
+
var _getDataSource, _getDataSource$places, _getDataSource$places2, _getDataSource$places3, _getDataSource2;
|
|
23
26
|
let {
|
|
24
27
|
currency,
|
|
28
|
+
id,
|
|
25
29
|
locale,
|
|
26
30
|
pricesLegend,
|
|
27
31
|
rangeMaxDays = _Calendar.RANGE_MAX_DAYS,
|
|
@@ -37,24 +41,21 @@ const Calendar = _ref => {
|
|
|
37
41
|
isMobile
|
|
38
42
|
} = (0, _ui.useDevice)();
|
|
39
43
|
const {
|
|
40
|
-
dateFormat,
|
|
41
44
|
translate
|
|
42
45
|
} = (0, _locale.useLocale)();
|
|
43
46
|
const {
|
|
44
|
-
value:
|
|
45
|
-
hotel: {
|
|
46
|
-
id
|
|
47
|
-
} = {}
|
|
48
|
-
}
|
|
47
|
+
value: store
|
|
49
48
|
} = (0, _dataSources.useStore)();
|
|
50
49
|
const [focus, setFocus] = (0, _react.useState)();
|
|
51
50
|
const [prices, setPrices] = (0, _react.useState)();
|
|
52
|
-
const [value, setValue] = (0, _react.useState)(others.value
|
|
51
|
+
const [value, setValue] = (0, _react.useState)((0, _helpers.valueFormat)(others.value));
|
|
52
|
+
const [visibleDate, setVisibleDate] = (0, _react.useState)();
|
|
53
53
|
(0, _react.useEffect)(() => {
|
|
54
54
|
setPrices();
|
|
55
|
-
|
|
55
|
+
const nextValue = visibleDate || (value === null || value === void 0 ? void 0 : value.length) && value[0] && (0, _helpers.parseValue)(value)[0];
|
|
56
|
+
showPrices && id && getPrices(nextValue && (0, _locale.dateCalc)(nextValue, -1, 'months') || new Date(), _Calendar.MONTHS);
|
|
56
57
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
57
|
-
}, [id]);
|
|
58
|
+
}, [currency, id, showPrices]);
|
|
58
59
|
(0, _react.useEffect)(() => {
|
|
59
60
|
const [from, to] = value || [];
|
|
60
61
|
if (onValid && from && to) onValid();else if (onError && (!from || !to)) onError(_Calendar.ERROR.NOT_FILLED);
|
|
@@ -62,31 +63,42 @@ const Calendar = _ref => {
|
|
|
62
63
|
}, [value]);
|
|
63
64
|
const getPrices = async function (from) {
|
|
64
65
|
let rangeMonths = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
|
|
65
|
-
if (
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
66
|
+
if (_helpers3.IS_JEST || !from) return;
|
|
67
|
+
const next = await (0, _helpers.fetchPrices)({
|
|
68
|
+
currency,
|
|
69
|
+
from,
|
|
70
|
+
id,
|
|
71
|
+
locale,
|
|
72
|
+
rangeMonths
|
|
73
|
+
});
|
|
74
|
+
setPrices(current => {
|
|
75
|
+
return {
|
|
76
|
+
currency: next.currency,
|
|
77
|
+
values: {
|
|
78
|
+
...(current === null || current === void 0 ? void 0 : current.values),
|
|
79
|
+
...(next === null || next === void 0 ? void 0 : next.values)
|
|
80
|
+
}
|
|
81
|
+
};
|
|
75
82
|
});
|
|
76
83
|
};
|
|
77
84
|
const handleChange = function () {
|
|
78
85
|
let next = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
79
86
|
let event = arguments.length > 1 ? arguments[1] : undefined;
|
|
80
87
|
setFocus(undefined);
|
|
81
|
-
setValue(next);
|
|
88
|
+
setValue((0, _helpers.valueFormat)(next));
|
|
82
89
|
onChange && onChange(next, event);
|
|
83
90
|
};
|
|
84
|
-
const handleNavigation = value =>
|
|
91
|
+
const handleNavigation = value => {
|
|
92
|
+
setVisibleDate(value);
|
|
93
|
+
return showPrices && getPrices(value);
|
|
94
|
+
};
|
|
85
95
|
const handleScroll = _ref2 => {
|
|
86
96
|
let {
|
|
87
97
|
percentY
|
|
88
98
|
} = _ref2;
|
|
89
|
-
|
|
99
|
+
const date = (0, _helpers.getVisibleDate)(percentY, others.to);
|
|
100
|
+
setVisibleDate(date);
|
|
101
|
+
return showPrices && id && getPrices(date, _Calendar.MONTHS);
|
|
90
102
|
};
|
|
91
103
|
const handleSubmit = event => onSubmit(value, event);
|
|
92
104
|
const {
|
|
@@ -99,33 +111,50 @@ const Calendar = _ref => {
|
|
|
99
111
|
rangeMaxDays,
|
|
100
112
|
rangeMinDays
|
|
101
113
|
};
|
|
102
|
-
const [from, to] = value;
|
|
114
|
+
const [from, to] = (0, _helpers.parseValue)(value);
|
|
103
115
|
const {
|
|
104
|
-
|
|
105
|
-
|
|
116
|
+
config: {
|
|
117
|
+
hotels: dataSource,
|
|
118
|
+
lodgingDenomination: individual
|
|
119
|
+
} = {}
|
|
120
|
+
} = store || {};
|
|
121
|
+
const tagId = (_getDataSource = (0, _helpers4.getDataSource)(store)) === null || _getDataSource === void 0 ? void 0 : (_getDataSource$places = _getDataSource.places) === null || _getDataSource$places === void 0 ? void 0 : (_getDataSource$places2 = _getDataSource$places.options) === null || _getDataSource$places2 === void 0 ? void 0 : (_getDataSource$places3 = _getDataSource$places2.find(function () {
|
|
122
|
+
let {
|
|
123
|
+
id: ids = [],
|
|
124
|
+
isHotel
|
|
125
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
126
|
+
return isHotel && ids[0] === id;
|
|
127
|
+
})) === null || _getDataSource$places3 === void 0 ? void 0 : _getDataSource$places3.value;
|
|
128
|
+
const accommodationType = (0, _helpers2.getAccommodationType)({
|
|
129
|
+
dataSource,
|
|
130
|
+
hotels: (0, _helpers4.getHotels)((_getDataSource2 = (0, _helpers4.getDataSource)(store)) === null || _getDataSource2 === void 0 ? void 0 : _getDataSource2.placesSource, tagId),
|
|
131
|
+
individual: individual && typeof individual === 'object' ? individual[id] : individual
|
|
132
|
+
});
|
|
106
133
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
107
|
-
role: "calendar"
|
|
108
|
-
className: style.container
|
|
134
|
+
role: "calendar"
|
|
109
135
|
}, /*#__PURE__*/_react.default.createElement(_ui.Calendar, _extends({}, props, {
|
|
110
136
|
captions: prices === null || prices === void 0 ? void 0 : prices.values,
|
|
111
|
-
format:
|
|
112
|
-
months: isMobile ?
|
|
137
|
+
format: _helpers3.CALENDAR_FORMAT,
|
|
138
|
+
months: isMobile ? _helpers3.MONTHS_IN_MOBILE : undefined,
|
|
113
139
|
scrollEventThrottle: _Calendar.SCROLL_EVENT_MS,
|
|
114
|
-
value:
|
|
115
|
-
format: _helpers2.CALENDAR_FORMAT
|
|
116
|
-
}) : undefined, to ? dateFormat(to, {
|
|
117
|
-
format: _helpers2.CALENDAR_FORMAT
|
|
118
|
-
}) : undefined],
|
|
140
|
+
value: value,
|
|
119
141
|
onChange: handleChange,
|
|
120
142
|
onFocus: setFocus,
|
|
121
143
|
onNavigation: handleNavigation,
|
|
122
|
-
onScroll: handleScroll
|
|
123
|
-
|
|
144
|
+
onScroll: handleScroll,
|
|
145
|
+
className: (0, _ui.styles)(style.calendar, others.className)
|
|
146
|
+
})), (prices === null || prices === void 0 ? void 0 : prices.currency) && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
147
|
+
inline: true,
|
|
124
148
|
small: true,
|
|
125
149
|
className: style.notification
|
|
126
|
-
}, translate(_Calendar2.L10N.
|
|
127
|
-
|
|
128
|
-
|
|
150
|
+
}, translate(_Calendar2.L10N.LABEL_INFO_PRICES, {
|
|
151
|
+
accommodation: translate(_Calendar2.L10N.LABEL_ACCOMMODATION_TYPE, {
|
|
152
|
+
type: accommodationType
|
|
153
|
+
}),
|
|
154
|
+
currency,
|
|
155
|
+
guests: 2,
|
|
156
|
+
nights: 1,
|
|
157
|
+
taxType: pricesLegend
|
|
129
158
|
})), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
130
159
|
row: true,
|
|
131
160
|
className: style.footer
|
|
@@ -144,6 +173,7 @@ exports.Calendar = Calendar;
|
|
|
144
173
|
Calendar.displayName = 'Mirai:Finder:Calendar';
|
|
145
174
|
Calendar.propTypes = {
|
|
146
175
|
currency: _propTypes.default.oneOf(_locale.CURRENCIES),
|
|
176
|
+
id: _propTypes.default.string,
|
|
147
177
|
locale: _propTypes.default.string,
|
|
148
178
|
rangeMaxDays: _propTypes.default.number,
|
|
149
179
|
rangeMinDays: _propTypes.default.number,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Calendar","_Calendar2","style","_helpers","_shared__","_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","Calendar","_ref","currency","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","dateFormat","translate","useLocale","value","hotel","id","useStore","focus","setFocus","useState","prices","setPrices","setValue","useEffect","getPrices","Date","from","to","ERROR","NOT_FILLED","rangeMonths","undefined","IS_JEST","fetchPrices","handleChange","next","event","handleNavigation","handleScroll","_ref2","percentY","getVisibleDate","handleSubmit","testId","props","range","days","nights","dateDiff","createElement","View","role","className","container","captions","values","format","CALENDAR_FORMAT","months","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","onFocus","onNavigation","onScroll","L10N","LABEL_TAX_TYPE","Notification","small","notification","row","footer","BookingDates","Button","concat","disabled","onPress","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","oneOf","CURRENCIES","string","number","bool","TAX","TAX_FREE","TAX_PARTIAL","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, dateDiff } from '@mirai/locale';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Calendar as CalendarBase, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL } from './Calendar.constants';\nimport { L10N } from './Calendar.l10n';\nimport * as style from './Calendar.module.css';\nimport { fetchPrices, getVisibleDate } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport { CALENDAR_FORMAT, IS_JEST, MONTHS_IN_MOBILE } from '../../../helpers';\n\nconst Calendar = ({\n currency,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n onChange,\n onError,\n onSubmit,\n onValid,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { dateFormat, translate } = useLocale();\n const {\n value: { hotel: { id } = {} },\n } = useStore();\n\n const [focus, setFocus] = useState();\n const [prices, setPrices] = useState();\n const [value, setValue] = useState(others.value || []);\n\n useEffect(() => {\n setPrices();\n showPrices && id && getPrices(value[0] || new Date());\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [id]);\n\n useEffect(() => {\n const [from, to] = value || [];\n\n if (onValid && from && to) onValid();\n else if (onError && (!from || !to)) onError(ERROR.NOT_FILLED);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const getPrices = async (from, rangeMonths = 2) => {\n if (IS_JEST) return;\n setPrices({ ...prices, ...(await fetchPrices({ currency, from, id, locale, rangeMonths })) });\n };\n\n const handleChange = (next = [], event) => {\n setFocus(undefined);\n setValue(next);\n onChange && onChange(next, event);\n };\n\n const handleNavigation = (value) => showPrices && getPrices(value);\n\n const handleScroll = ({ percentY }) => showPrices && getPrices(getVisibleDate(percentY), 3);\n\n const handleSubmit = (event) => onSubmit(value, event);\n\n const { testId } = others;\n const props = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\n const [from, to] = value;\n const { days: nights } = dateDiff(from, to || focus);\n\n return (\n <View role=\"calendar\" className={style.container}>\n <CalendarBase\n {...props}\n captions={prices?.values}\n format={CALENDAR_FORMAT}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n value={[\n from ? dateFormat(from, { format: CALENDAR_FORMAT }) : undefined,\n to ? dateFormat(to, { format: CALENDAR_FORMAT }) : undefined,\n ]}\n onChange={handleChange}\n onFocus={setFocus}\n onNavigation={handleNavigation}\n onScroll={handleScroll}\n />\n\n {prices?.currency && L10N.LABEL_TAX_TYPE[pricesLegend] && (\n <Notification small className={style.notification}>\n {translate(L10N.LABEL_TAX_TYPE[pricesLegend], { currency: prices.currency, nights: nights || 1 })}\n </Notification>\n )}\n\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n\n {onSubmit && (\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Finder:Calendar';\n\nCalendar.propTypes = {\n currency: PropTypes.oneOf(CURRENCIES),\n locale: PropTypes.string,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n showPrices: PropTypes.bool,\n pricesLegend: PropTypes.oneOf([TAX, TAX_FREE, TAX_PARTIAL]),\n value: PropTypes.arrayOf(PropTypes.instanceOf(Date)),\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n};\n\nexport { Calendar };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Calendar.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Calendar","_Calendar2","style","_helpers","_shared__","_helpers2","_helpers3","_helpers4","_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","Calendar","_ref","_getDataSource","_getDataSource$places","_getDataSource$places2","_getDataSource$places3","_getDataSource2","currency","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","translate","useLocale","value","store","useStore","focus","setFocus","useState","prices","setPrices","setValue","valueFormat","visibleDate","setVisibleDate","useEffect","nextValue","parseValue","getPrices","dateCalc","Date","MONTHS","from","to","ERROR","NOT_FILLED","rangeMonths","undefined","IS_JEST","next","fetchPrices","current","values","handleChange","event","handleNavigation","handleScroll","_ref2","percentY","date","getVisibleDate","handleSubmit","testId","props","range","config","hotels","dataSource","lodgingDenomination","individual","tagId","getDataSource","places","options","find","ids","isHotel","accommodationType","getAccommodationType","getHotels","placesSource","createElement","View","role","captions","format","CALENDAR_FORMAT","months","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","onFocus","onNavigation","onScroll","className","styles","calendar","Notification","inline","small","notification","L10N","LABEL_INFO_PRICES","accommodation","LABEL_ACCOMMODATION_TYPE","type","guests","nights","taxType","row","footer","BookingDates","Button","concat","disabled","onPress","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","oneOf","CURRENCIES","string","number","bool","TAX","TAX_FREE","TAX_PARTIAL","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, dateCalc } from '@mirai/locale';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Calendar as CalendarBase, Notification, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, MONTHS, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL } from './Calendar.constants';\nimport { L10N } from './Calendar.l10n';\nimport * as style from './Calendar.module.css';\nimport { fetchPrices, getVisibleDate, parseValue, valueFormat } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport { getAccommodationType } from '../../../__shared__/FieldOccupation/helpers';\nimport { CALENDAR_FORMAT, IS_JEST, MONTHS_IN_MOBILE } from '../../../helpers';\nimport { getDataSource, getHotels } from '../../helpers';\n\nconst Calendar = ({\n currency,\n id,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n onChange,\n onError,\n onSubmit,\n onValid,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: store } = useStore();\n\n const [focus, setFocus] = useState();\n const [prices, setPrices] = useState();\n const [value, setValue] = useState(valueFormat(others.value));\n const [visibleDate, setVisibleDate] = useState();\n\n useEffect(() => {\n setPrices();\n\n const nextValue = visibleDate || (value?.length && value[0] && parseValue(value)[0]);\n showPrices && id && getPrices((nextValue && dateCalc(nextValue, -1, 'months')) || new Date(), MONTHS);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, id, showPrices]);\n\n useEffect(() => {\n const [from, to] = value || [];\n\n if (onValid && from && to) onValid();\n else if (onError && (!from || !to)) onError(ERROR.NOT_FILLED);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const getPrices = async (from, rangeMonths = 2) => {\n if (IS_JEST || !from) return;\n\n const next = await fetchPrices({ currency, from, id, locale, rangeMonths });\n setPrices((current) => {\n return { currency: next.currency, values: { ...current?.values, ...next?.values } };\n });\n };\n\n const handleChange = (next = [], event) => {\n setFocus(undefined);\n setValue(valueFormat(next));\n onChange && onChange(next, event);\n };\n\n const handleNavigation = (value) => {\n setVisibleDate(value);\n\n return showPrices && getPrices(value);\n };\n\n const handleScroll = ({ percentY }) => {\n const date = getVisibleDate(percentY, others.to);\n setVisibleDate(date);\n\n return showPrices && id && getPrices(date, MONTHS);\n };\n\n const handleSubmit = (event) => onSubmit(value, event);\n\n const { testId } = others;\n const props = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\n const [from, to] = parseValue(value);\n const { config: { hotels: dataSource, lodgingDenomination: individual } = {} } = store || {};\n\n const tagId = getDataSource(store)?.places?.options?.find(\n ({ id: ids = [], isHotel } = {}) => isHotel && ids[0] === id,\n )?.value;\n\n const accommodationType = getAccommodationType({\n dataSource,\n hotels: getHotels(getDataSource(store)?.placesSource, tagId),\n individual: individual && typeof individual === 'object' ? individual[id] : individual,\n });\n\n return (\n <View role=\"calendar\">\n <CalendarBase\n {...props}\n captions={prices?.values}\n format={CALENDAR_FORMAT}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n value={value}\n onChange={handleChange}\n onFocus={setFocus}\n onNavigation={handleNavigation}\n onScroll={handleScroll}\n className={styles(style.calendar, others.className)}\n />\n\n {prices?.currency && (\n <Notification inline small className={style.notification}>\n {translate(L10N.LABEL_INFO_PRICES, {\n accommodation: translate(L10N.LABEL_ACCOMMODATION_TYPE, { type: accommodationType }),\n currency,\n guests: 2,\n nights: 1,\n taxType: pricesLegend,\n })}\n </Notification>\n )}\n\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n\n {onSubmit && (\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Finder:Calendar';\n\nCalendar.propTypes = {\n currency: PropTypes.oneOf(CURRENCIES),\n id: PropTypes.string,\n locale: PropTypes.string,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n showPrices: PropTypes.bool,\n pricesLegend: PropTypes.oneOf([TAX, TAX_FREE, TAX_PARTIAL]),\n value: PropTypes.arrayOf(PropTypes.instanceOf(Date)),\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n};\n\nexport { Calendar };\n"],"mappings":"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"}
|
|
@@ -4,22 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.L10N = void 0;
|
|
7
|
-
var _Calendar = require("./Calendar.constants");
|
|
8
7
|
const L10N = exports.L10N = {
|
|
9
8
|
ACTION_SEARCH: {
|
|
10
9
|
id: 'common.action.search'
|
|
11
10
|
},
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
[_Calendar.TAX_FREE]: {
|
|
18
|
-
id: 'DateRangePicker.datepicker_legend.NoTaxes'
|
|
19
|
-
},
|
|
20
|
-
[_Calendar.TAX_PARTIAL]: {
|
|
21
|
-
id: 'DateRangePicker.datepicker_legend.PartialTaxes'
|
|
22
|
-
}
|
|
11
|
+
LABEL_ACCOMMODATION_TYPE: {
|
|
12
|
+
id: 'common.label.accommodation_type'
|
|
13
|
+
},
|
|
14
|
+
LABEL_INFO_PRICES: {
|
|
15
|
+
id: 'finder.label.info_prices'
|
|
23
16
|
}
|
|
24
17
|
};
|
|
25
18
|
//# sourceMappingURL=Calendar.l10n.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.l10n.js","names":["
|
|
1
|
+
{"version":3,"file":"Calendar.l10n.js","names":["L10N","exports","ACTION_SEARCH","id","LABEL_ACCOMMODATION_TYPE","LABEL_INFO_PRICES"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_SEARCH: { id: 'common.action.search' },\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_INFO_PRICES: { id: 'finder.label.info_prices' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,aAAa,EAAE;IAAEC,EAAE,EAAE;EAAuB,CAAC;EAC7CC,wBAAwB,EAAE;IAAED,EAAE,EAAE;EAAkC,CAAC;EACnEE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B;AACtD,CAAC"}
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
|
|
15
15
|
.notification {
|
|
16
16
|
align-self: center;
|
|
17
|
-
margin: var(--mirai-
|
|
17
|
+
margin: var(--mirai-ui-space-S);
|
|
18
|
+
max-width: calc(var(--mirai-ui-calendar-cell) * 14);
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
.offset {
|
|
@@ -22,7 +23,7 @@
|
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
@media only screen and (max-width: 430px) {
|
|
25
|
-
.
|
|
26
|
-
max-height: var(--mirai-
|
|
26
|
+
.calendar {
|
|
27
|
+
max-height: calc(100svh - calc(var(--mirai-ui-space-L) * 9));
|
|
27
28
|
}
|
|
28
29
|
}
|