@mirai/core 0.3.139 → 0.3.141
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/Core.constants.js +5 -1
- package/build/Core.constants.js.map +1 -1
- package/build/Core.js +1 -0
- package/build/Core.js.map +1 -1
- package/build/components/Finder/Finder.js +4 -0
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js +26 -2
- package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.l10n.js +6 -1
- package/build/components/Finder/components/Calendar/Calendar.l10n.js.map +1 -1
- package/build/components/Finder/components/Calendar/helpers/calcMinStay.js +34 -0
- package/build/components/Finder/components/Calendar/helpers/calcMinStay.js.map +1 -0
- package/build/components/Finder/components/Calendar/helpers/calcTooltips.js +33 -0
- package/build/components/Finder/components/Calendar/helpers/calcTooltips.js.map +1 -0
- 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/Rates/Rates.Footer.js +0 -1
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/Rates.Header.js +15 -43
- package/build/components/Rates/Rates.Header.js.map +1 -1
- package/build/components/Rates/Rates.Unavailability.js +19 -9
- package/build/components/Rates/Rates.Unavailability.js.map +1 -1
- package/build/components/Rates/Rates.js +29 -31
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/__shared__/SelectEnvironment/SelectEnvironment.js +0 -4
- package/build/components/__shared__/SelectEnvironment/SelectEnvironment.js.map +1 -1
- package/build/helpers/consolidateStore.js +2 -2
- package/build/helpers/consolidateStore.js.map +1 -1
- package/build/helpers/index.js +11 -0
- package/build/helpers/index.js.map +1 -1
- package/build/helpers/themeDirection.js +14 -0
- package/build/helpers/themeDirection.js.map +1 -0
- package/build/services/Rates/helpers/compareSuggestions.js +40 -0
- package/build/services/Rates/helpers/compareSuggestions.js.map +1 -0
- package/build/services/Rates/helpers/getCalendarSuggestions.js +60 -0
- package/build/services/Rates/helpers/getCalendarSuggestions.js.map +1 -0
- package/build/services/Rates/helpers/getDisabledDates.js +35 -0
- package/build/services/Rates/helpers/getDisabledDates.js.map +1 -0
- package/build/services/Rates/helpers/getMinStayDates.js +36 -0
- package/build/services/Rates/helpers/getMinStayDates.js.map +1 -0
- package/build/services/Rates/helpers/getOccupationSuggestions.js +22 -47
- package/build/services/Rates/helpers/getOccupationSuggestions.js.map +1 -1
- package/build/services/Rates/helpers/getRooms.js +55 -0
- package/build/services/Rates/helpers/getRooms.js.map +1 -0
- package/build/services/Rates/helpers/parseUnavailability.js +31 -2
- package/build/services/Rates/helpers/parseUnavailability.js.map +1 -1
- package/build/services/Rates/rates.js +2 -0
- package/build/services/Rates/rates.js.map +1 -1
- package/package.json +1 -1
- package/public/routes/Step1-Rates.jsx +2 -2
package/build/Core.constants.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.TYPE = exports.TAX_DEFAULT = exports.TAXES_TYPE = exports.TAXES = exports.COMMISSION_TYPE = exports.CALENDAR_FORMAT = exports.AUTH_TYPE = exports.ACCOMMODATION_TYPE = void 0;
|
|
6
|
+
exports.TYPE = exports.TAX_DEFAULT = exports.TAXES_TYPE = exports.TAXES = exports.MIN_STAY_TYPE = exports.COMMISSION_TYPE = exports.CALENDAR_FORMAT = exports.AUTH_TYPE = exports.ACCOMMODATION_TYPE = void 0;
|
|
7
7
|
const ACCOMMODATION_TYPE = exports.ACCOMMODATION_TYPE = {
|
|
8
8
|
DEFAULT: 0,
|
|
9
9
|
ROOM: 1,
|
|
@@ -34,6 +34,10 @@ const COMMISSION_TYPE = exports.COMMISSION_TYPE = {
|
|
|
34
34
|
[TYPE.HOTEL]: '02040',
|
|
35
35
|
[TYPE.CHAIN]: '02080'
|
|
36
36
|
};
|
|
37
|
+
const MIN_STAY_TYPE = exports.MIN_STAY_TYPE = {
|
|
38
|
+
CHECK_IN: 0,
|
|
39
|
+
STAY: 1
|
|
40
|
+
};
|
|
37
41
|
const TAX_DEFAULT = exports.TAX_DEFAULT = 1;
|
|
38
42
|
const TAX_FREE = 2;
|
|
39
43
|
const TAX_PARTIAL = 3;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","CALENDAR_FORMAT","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","COMMISSION_TYPE","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","TAXES_INCLUDED"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1, // \"ROOM\"\n APARTMENT: 2, // \"APARTMENT\"\n PITCH: 3, // \"PITCH\"\n ACCOMMODATION: 4, // \"ACCOMMODATION\"\n VILLA: 5, // \"VILLA\"\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst TYPE = {\n // -- place\n CHAIN: 'chain',\n HOTEL: 'hotel',\n // -- person\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst COMMISSION_TYPE = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst TAX_DEFAULT = 1;\nconst TAX_FREE = 2;\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 0,\n ALL_INCLUDED: 1,\n FEES_INCLUDED: 2,\n TAXES_INCLUDED: 3,\n};\n\nexport {
|
|
1
|
+
{"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","CALENDAR_FORMAT","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","COMMISSION_TYPE","MIN_STAY_TYPE","CHECK_IN","STAY","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","TAXES_INCLUDED"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1, // \"ROOM\"\n APARTMENT: 2, // \"APARTMENT\"\n PITCH: 3, // \"PITCH\"\n ACCOMMODATION: 4, // \"ACCOMMODATION\"\n VILLA: 5, // \"VILLA\"\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst TYPE = {\n // -- place\n CHAIN: 'chain',\n HOTEL: 'hotel',\n // -- person\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst COMMISSION_TYPE = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst MIN_STAY_TYPE = { CHECK_IN: 0, STAY: 1 };\n\nconst TAX_DEFAULT = 1;\nconst TAX_FREE = 2;\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 0,\n ALL_INCLUDED: 1,\n FEES_INCLUDED: 2,\n TAXES_INCLUDED: 3,\n};\n\nexport {\n ACCOMMODATION_TYPE,\n AUTH_TYPE,\n CALENDAR_FORMAT,\n COMMISSION_TYPE,\n MIN_STAY_TYPE,\n TAX_DEFAULT,\n TAXES,\n TAXES_TYPE,\n TYPE,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG;EACzBE,OAAO,EAAE,CAAC;EACVC,IAAI,EAAE,CAAC;EAAE;EACTC,SAAS,EAAE,CAAC;EAAE;EACdC,KAAK,EAAE,CAAC;EAAE;EACVC,aAAa,EAAE,CAAC;EAAE;EAClBC,KAAK,EAAE,CAAC,CAAE;AACZ,CAAC;AAED,MAAMC,SAAS,GAAAP,OAAA,CAAAO,SAAA,GAAG;EAChBC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,eAAe,GAAAV,OAAA,CAAAU,eAAA,GAAG,YAAY;AAEpC,MAAMC,IAAI,GAAAX,OAAA,CAAAW,IAAA,GAAG;EACX;EACAC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACd;EACAC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,eAAe,GAAAjB,OAAA,CAAAiB,eAAA,GAAG;EACtB,CAACN,IAAI,CAACE,KAAK,GAAG,OAAO;EACrB,CAACF,IAAI,CAACC,KAAK,GAAG;AAChB,CAAC;AAED,MAAMM,aAAa,GAAAlB,OAAA,CAAAkB,aAAA,GAAG;EAAEC,QAAQ,EAAE,CAAC;EAAEC,IAAI,EAAE;AAAE,CAAC;AAE9C,MAAMC,WAAW,GAAArB,OAAA,CAAAqB,WAAA,GAAG,CAAC;AACrB,MAAMC,QAAQ,GAAG,CAAC;AAClB,MAAMC,WAAW,GAAG,CAAC;AAErB,MAAMC,KAAK,GAAAxB,OAAA,CAAAwB,KAAA,GAAG,CAACH,WAAW,EAAEC,QAAQ,EAAEC,WAAW,CAAC;AAElD,MAAME,UAAU,GAAAzB,OAAA,CAAAyB,UAAA,GAAG;EACjBC,YAAY,EAAE,CAAC;EACfC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,cAAc,EAAE;AAClB,CAAC"}
|
package/build/Core.js
CHANGED
package/build/Core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_helpers","_Core","_helpers2","_sanitizeComponent","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","language","split","cached","Event","subscribe","EVENT","INTENT_LOCALE","unsubscribe","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","dangerousChildren","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","keys","any","bool"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { EVENT } from './components/helpers';\nimport { Notifications } from './Core.Notifications';\nimport { getGhost } from './helpers';\nimport { sanitizeComponent } from './helpers/sanitizeComponent';\n\nconst ghosts = {};\n\nconst Core = ({ children, components = [], skeleton = false }) => {\n const { isMobile, isDesktop } = useDevice();\n const {\n set,\n value: { currency, locale = DEFAULT_LOCALE },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n const handleIntentLocale = async ({ locale }) => {\n const dictionary = await fetchDictionary(locale);\n if (dictionary) {\n const [language] = locale.split('-');\n set({ language, locale });\n }\n };\n\n if (skeleton) {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n }\n\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n return () => Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!skeleton) fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const fetchDictionary = async (locale) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n <Notifications />\n\n {components\n .filter(({ desktop, mobile }) => !(isMobile && mobile === 'false') && !(isDesktop && desktop === 'false'))\n .map(({ el, component, ...props }, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n\n const { dangerousChildren } = sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren,\n el,\n ghost: ghosts[index],\n skeleton,\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n skeleton: PropTypes.bool,\n};\n\nexport { Core };\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_helpers","_Core","_helpers2","_sanitizeComponent","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","language","split","themeDirection","cached","Event","subscribe","EVENT","INTENT_LOCALE","unsubscribe","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","dangerousChildren","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","keys","any","bool"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { EVENT } from './components/helpers';\nimport { Notifications } from './Core.Notifications';\nimport { getGhost, themeDirection } from './helpers';\nimport { sanitizeComponent } from './helpers/sanitizeComponent';\n\nconst ghosts = {};\n\nconst Core = ({ children, components = [], skeleton = false }) => {\n const { isMobile, isDesktop } = useDevice();\n const {\n set,\n value: { currency, locale = DEFAULT_LOCALE },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n const handleIntentLocale = async ({ locale }) => {\n const dictionary = await fetchDictionary(locale);\n if (dictionary) {\n const [language] = locale.split('-');\n themeDirection(language);\n set({ language, locale });\n }\n };\n\n if (skeleton) {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n }\n\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n return () => Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!skeleton) fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const fetchDictionary = async (locale) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n <Notifications />\n\n {components\n .filter(({ desktop, mobile }) => !(isMobile && mobile === 'false') && !(isDesktop && desktop === 'false'))\n .map(({ el, component, ...props }, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n\n const { dangerousChildren } = sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren,\n el,\n ghost: ghosts[index],\n skeleton,\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n skeleton: PropTypes.bool,\n};\n\nexport { Core };\n"],"mappings":"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"}
|
|
@@ -59,6 +59,7 @@ const Finder = _ref => {
|
|
|
59
59
|
} = (0, _dataSources.useStore)();
|
|
60
60
|
const [error, setError] = (0, _react.useState)({});
|
|
61
61
|
const [focus, setFocus] = (0, _react.useState)();
|
|
62
|
+
const [unavailability, setUnavailability] = (0, _react.useState)();
|
|
62
63
|
const [value, setValue] = (0, _react.useState)((0, _helpers.parseValue)(storeFinder));
|
|
63
64
|
const [visited, setVisited] = (0, _react.useState)({});
|
|
64
65
|
(0, _react.useEffect)(() => {
|
|
@@ -83,8 +84,10 @@ const Finder = _ref => {
|
|
|
83
84
|
(0, _react.useEffect)(() => {
|
|
84
85
|
const callback = function () {
|
|
85
86
|
let {
|
|
87
|
+
calendar,
|
|
86
88
|
focus
|
|
87
89
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
90
|
+
setUnavailability(calendar);
|
|
88
91
|
if (focus) setFocus(focus);
|
|
89
92
|
};
|
|
90
93
|
_dataSources.Event.subscribe(_helpers3.EVENT.FINDER, callback);
|
|
@@ -222,6 +225,7 @@ const Finder = _ref => {
|
|
|
222
225
|
currency: currency,
|
|
223
226
|
locale: locale,
|
|
224
227
|
text: compacted ? text : undefined,
|
|
228
|
+
unavailability: unavailability,
|
|
225
229
|
value: calendar,
|
|
226
230
|
onChange: (calendar, event) => {
|
|
227
231
|
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","memoizedScrollY","Finder","_ref","_dataSource$places","_dataSource$promo","_dataSource$cta","assisted","compacted","layout","text","onChange","onSubmit","others","isMobile","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","finder","storeFinder","forwarder","locale","type","store","useStore","error","setError","useState","focus","setFocus","setValue","parseValue","visited","setVisited","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","callback","Event","subscribe","EVENT","FINDER","unsubscribe","handleScroll","scrollY","window","GAP_SCROLL","JSON","stringify","concat","handleChange","field","fieldValue","next","handleSubmit","firstError","keys","filter","forwarderUrl","getForwarderUrl","location","href","assistant","calendar","VIEW","PLACE","CALENDAR","OCCUPATION","place","promocode","testId","dataSource","getDataSource","id","ids","isHotel","hotel","idHotel","isCompacted","createElement","Fragment","Compact","onExpand","View","role","row","className","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","backgroundColor","maxWidth","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","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 { 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, GAP_SCROLL, 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';\nimport { EVENT } from '../helpers';\n\nconst { HOTEL } = TYPE;\nlet memoizedScrollY = 0;\n\nconst Finder = ({ assisted = true, compacted = false, layout, text, onChange = () => {}, 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 [focus, setFocus] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\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) && setFocus(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 const callback = ({ focus } = {}) => {\n if (focus) setFocus(focus);\n };\n\n Event.subscribe(EVENT.FINDER, callback);\n return () => Event.unsubscribe(EVENT.FINDER, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!compacted) return;\n\n const handleScroll = () => {\n const { scrollY } = window;\n if (scrollY > memoizedScrollY + GAP_SCROLL || scrollY < memoizedScrollY - GAP_SCROLL) {\n memoizedScrollY = scrollY;\n setFocus(undefined);\n }\n };\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [compacted]);\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 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\n const handleSubmit = () => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setFocus(undefined);\n set({ finder: value });\n const forwarderUrl = getForwarderUrl({ ...value, currency, forwarder, locale, store, type });\n\n if (onSubmit) onSubmit({ ...value, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n if (!assisted) return setFocus(undefined);\n\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (focus === VIEW.CALENDAR && !visited.occupation) setFocus(VIEW.OCCUPATION);\n else if (!compacted) setFocus(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 const isCompacted = (compacted && isMobile) || (compacted && !isMobile && !focus);\n\n return (\n <>\n {isCompacted && <Compact {...{ value, dataSource }} onExpand={setFocus} onSubmit={handleSubmit} />}\n <View\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n testId={others.testId}\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 compacted={isCompacted}\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 className={{ backgroundColor: 'red', maxWidth: 128 }}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource.places.options}\n value={place.value}\n onChange={(place, event) => {\n handleChange(VIEW.PLACE, place, event);\n 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 compacted={isCompacted}\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 >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, type, dataSource.variants)}\n id={id}\n currency={currency}\n locale={locale}\n text={compacted ? text : undefined}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (calendar.length === 2 && assisted) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n </Field>\n\n <FieldOccupation\n compacted={isCompacted}\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 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={isMobile && compacted ? handleSubmit : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n compacted={isCompacted}\n placeholder={dataSource.promo?.placeholder}\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={() => setFocus(VIEW.PROMOCODE)}\n onLeave={() => setFocus(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n {!isCompacted && (\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 )}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n assisted: PropTypes.bool,\n compacted: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\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","_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","memoizedScrollY","Finder","_ref","_dataSource$places","_dataSource$promo","_dataSource$cta","assisted","compacted","layout","text","onChange","onSubmit","others","isMobile","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","finder","storeFinder","forwarder","locale","type","store","useStore","error","setError","useState","focus","setFocus","unavailability","setUnavailability","setValue","parseValue","visited","setVisited","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","callback","calendar","Event","subscribe","EVENT","FINDER","unsubscribe","handleScroll","scrollY","window","GAP_SCROLL","JSON","stringify","concat","handleChange","field","fieldValue","next","handleSubmit","firstError","keys","filter","forwarderUrl","getForwarderUrl","location","href","assistant","VIEW","PLACE","CALENDAR","OCCUPATION","place","promocode","testId","dataSource","getDataSource","id","ids","isHotel","hotel","idHotel","isCompacted","createElement","Fragment","Compact","onExpand","View","role","row","className","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","backgroundColor","maxWidth","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","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 { 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, GAP_SCROLL, 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';\nimport { EVENT } from '../helpers';\n\nconst { HOTEL } = TYPE;\nlet memoizedScrollY = 0;\n\nconst Finder = ({ assisted = true, compacted = false, layout, text, onChange = () => {}, 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 [focus, setFocus] = useState();\n const [unavailability, setUnavailability] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\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) && setFocus(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 const callback = ({ calendar, focus } = {}) => {\n setUnavailability(calendar);\n if (focus) setFocus(focus);\n };\n\n Event.subscribe(EVENT.FINDER, callback);\n return () => Event.unsubscribe(EVENT.FINDER, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!compacted) return;\n\n const handleScroll = () => {\n const { scrollY } = window;\n if (scrollY > memoizedScrollY + GAP_SCROLL || scrollY < memoizedScrollY - GAP_SCROLL) {\n memoizedScrollY = scrollY;\n setFocus(undefined);\n }\n };\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [compacted]);\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 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\n const handleSubmit = () => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setFocus(undefined);\n set({ finder: value });\n const forwarderUrl = getForwarderUrl({ ...value, currency, forwarder, locale, store, type });\n\n if (onSubmit) onSubmit({ ...value, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n if (!assisted) return setFocus(undefined);\n\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (focus === VIEW.CALENDAR && !visited.occupation) setFocus(VIEW.OCCUPATION);\n else if (!compacted) setFocus(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 const isCompacted = (compacted && isMobile) || (compacted && !isMobile && !focus);\n\n return (\n <>\n {isCompacted && <Compact {...{ value, dataSource }} onExpand={setFocus} onSubmit={handleSubmit} />}\n <View\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n testId={others.testId}\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 compacted={isCompacted}\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 className={{ backgroundColor: 'red', maxWidth: 128 }}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource.places.options}\n value={place.value}\n onChange={(place, event) => {\n handleChange(VIEW.PLACE, place, event);\n 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 compacted={isCompacted}\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 >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, type, dataSource.variants)}\n id={id}\n currency={currency}\n locale={locale}\n text={compacted ? text : undefined}\n unavailability={unavailability}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (calendar.length === 2 && assisted) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n </Field>\n\n <FieldOccupation\n compacted={isCompacted}\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 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={isMobile && compacted ? handleSubmit : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n compacted={isCompacted}\n placeholder={dataSource.promo?.placeholder}\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={() => setFocus(VIEW.PROMOCODE)}\n onLeave={() => setFocus(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n {!isCompacted && (\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 )}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n assisted: PropTypes.bool,\n compacted: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n text: PropTypes.string,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
|
|
@@ -31,6 +31,11 @@ const Calendar = _ref => {
|
|
|
31
31
|
rangeMinDays,
|
|
32
32
|
showPrices,
|
|
33
33
|
text,
|
|
34
|
+
unavailability: {
|
|
35
|
+
disabledDates = [],
|
|
36
|
+
minStayDates = {},
|
|
37
|
+
minStayType
|
|
38
|
+
} = {},
|
|
34
39
|
onChange,
|
|
35
40
|
onError,
|
|
36
41
|
onSubmit,
|
|
@@ -61,6 +66,10 @@ const Calendar = _ref => {
|
|
|
61
66
|
if (onValid && from && to) onValid();else if (onError && (!from || !to)) onError(_Calendar.ERROR.NOT_FILLED);
|
|
62
67
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
63
68
|
}, [value]);
|
|
69
|
+
(0, _react.useEffect)(() => {
|
|
70
|
+
JSON.stringify(value) !== JSON.stringify((0, _helpers.valueFormat)(others.value)) && setValue((0, _helpers.valueFormat)(others.value));
|
|
71
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
72
|
+
}, [others.value]);
|
|
64
73
|
const getPrices = async function (from) {
|
|
65
74
|
let rangeMonths = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
|
|
66
75
|
if (_helpers2.IS_JEST || !from) return;
|
|
@@ -104,14 +113,20 @@ const Calendar = _ref => {
|
|
|
104
113
|
const {
|
|
105
114
|
testId
|
|
106
115
|
} = others;
|
|
116
|
+
const [from, to] = (0, _helpers.parseValue)(value);
|
|
107
117
|
const props = {
|
|
108
118
|
...others,
|
|
109
119
|
locale,
|
|
110
120
|
range: true,
|
|
111
121
|
rangeMaxDays,
|
|
112
|
-
rangeMinDays
|
|
122
|
+
rangeMinDays: (0, _helpers.calcMinStay)({
|
|
123
|
+
from,
|
|
124
|
+
minStayDates,
|
|
125
|
+
minStayType,
|
|
126
|
+
rangeMinDays,
|
|
127
|
+
to
|
|
128
|
+
})
|
|
113
129
|
};
|
|
114
|
-
const [from, to] = (0, _helpers.parseValue)(value);
|
|
115
130
|
const {
|
|
116
131
|
config: {
|
|
117
132
|
hotels: dataSource,
|
|
@@ -134,9 +149,17 @@ const Calendar = _ref => {
|
|
|
134
149
|
role: "calendar"
|
|
135
150
|
}, /*#__PURE__*/_react.default.createElement(_ui.Calendar, _extends({}, props, {
|
|
136
151
|
captions: prices === null || prices === void 0 ? void 0 : prices.values,
|
|
152
|
+
disabledDates: disabledDates,
|
|
137
153
|
format: _helpers2.CALENDAR_FORMAT,
|
|
138
154
|
months: isMobile ? _helpers2.MONTHS_IN_MOBILE : undefined,
|
|
139
155
|
scrollEventThrottle: _Calendar.SCROLL_EVENT_MS,
|
|
156
|
+
tooltips: (0, _helpers.calcTooltips)({
|
|
157
|
+
from,
|
|
158
|
+
minStayType,
|
|
159
|
+
rangeMinDays: props.rangeMinDays,
|
|
160
|
+
to,
|
|
161
|
+
translate
|
|
162
|
+
}),
|
|
140
163
|
value: value,
|
|
141
164
|
onChange: handleChange,
|
|
142
165
|
onFocus: setFocus,
|
|
@@ -180,6 +203,7 @@ Calendar.propTypes = {
|
|
|
180
203
|
showPrices: _propTypes.default.bool,
|
|
181
204
|
pricesLegend: _propTypes.default.oneOf([_Calendar.TAX, _Calendar.TAX_FREE, _Calendar.TAX_PARTIAL]),
|
|
182
205
|
text: _propTypes.default.string,
|
|
206
|
+
unavailability: _propTypes.default.shape({}),
|
|
183
207
|
value: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),
|
|
184
208
|
onChange: _propTypes.default.func,
|
|
185
209
|
onError: _propTypes.default.func,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Calendar","_Calendar2","style","_helpers","_shared__","_helpers2","_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","Calendar","_ref","_getDataSource","_getDataSource$places","_getDataSource$places2","_getDataSource$places3","_getDataSource2","currency","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","text","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_NEXT","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 { CALENDAR_FORMAT, getAccommodationType, 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 text,\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 {text || translate(L10N.ACTION_NEXT)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Core: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 text: PropTypes.string,\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","_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","text","unavailability","disabledDates","minStayDates","minStayType","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","JSON","stringify","rangeMonths","undefined","IS_JEST","next","fetchPrices","current","values","handleChange","event","handleNavigation","handleScroll","_ref2","percentY","date","getVisibleDate","handleSubmit","testId","props","range","calcMinStay","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","tooltips","calcTooltips","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_NEXT","exports","displayName","propTypes","PropTypes","oneOf","CURRENCIES","string","number","bool","TAX","TAX_FREE","TAX_PARTIAL","shape","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 { calcMinStay, calcTooltips, fetchPrices, getVisibleDate, parseValue, valueFormat } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport { CALENDAR_FORMAT, getAccommodationType, 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 text,\n unavailability: { disabledDates = [], minStayDates = {}, minStayType } = {},\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 useEffect(() => {\n JSON.stringify(value) !== JSON.stringify(valueFormat(others.value)) && setValue(valueFormat(others.value));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [others.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 [from, to] = parseValue(value);\n const props = {\n ...others,\n locale,\n range: true,\n rangeMaxDays,\n rangeMinDays: calcMinStay({ from, minStayDates, minStayType, rangeMinDays, to }),\n };\n\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 disabledDates={disabledDates}\n format={CALENDAR_FORMAT}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n tooltips={calcTooltips({ from, minStayType, rangeMinDays: props.rangeMinDays, to, translate })}\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 {text || translate(L10N.ACTION_NEXT)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Core: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 text: PropTypes.string,\n unavailability: PropTypes.shape({}),\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,6 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.L10N = void 0;
|
|
7
|
+
var _BookingDates = require("../../../__shared__/BookingDates/BookingDates.l10n");
|
|
8
|
+
const {
|
|
9
|
+
LABEL_MIN_NIGHTS
|
|
10
|
+
} = _BookingDates.L10N;
|
|
7
11
|
const L10N = exports.L10N = {
|
|
8
12
|
ACTION_NEXT: {
|
|
9
13
|
id: 'finder.action.next'
|
|
@@ -13,6 +17,7 @@ const L10N = exports.L10N = {
|
|
|
13
17
|
},
|
|
14
18
|
LABEL_INFO_PRICES: {
|
|
15
19
|
id: 'finder.label.info_prices'
|
|
16
|
-
}
|
|
20
|
+
},
|
|
21
|
+
LABEL_MIN_NIGHTS
|
|
17
22
|
};
|
|
18
23
|
//# sourceMappingURL=Calendar.l10n.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.l10n.js","names":["L10N","exports","ACTION_NEXT","id","LABEL_ACCOMMODATION_TYPE","LABEL_INFO_PRICES"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.l10n.js"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"Calendar.l10n.js","names":["_BookingDates","require","LABEL_MIN_NIGHTS","L10N_BOOKING_DATES","L10N","exports","ACTION_NEXT","id","LABEL_ACCOMMODATION_TYPE","LABEL_INFO_PRICES"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.l10n.js"],"sourcesContent":["import { L10N as L10N_BOOKING_DATES } from '../../../__shared__/BookingDates/BookingDates.l10n';\n\nconst { LABEL_MIN_NIGHTS } = L10N_BOOKING_DATES;\n\nexport const L10N = {\n ACTION_NEXT: { id: 'finder.action.next' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_INFO_PRICES: { id: 'finder.label.info_prices' },\n LABEL_MIN_NIGHTS,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAEA,MAAM;EAAEC;AAAiB,CAAC,GAAGC,kBAAkB;AAExC,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,WAAW,EAAE;IAAEC,EAAE,EAAE;EAAqB,CAAC;EAEzCC,wBAAwB,EAAE;IAAED,EAAE,EAAE;EAAkC,CAAC;EACnEE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B,CAAC;EACrDL;AACF,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calcMinStay = void 0;
|
|
7
|
+
var _locale = require("@mirai/locale");
|
|
8
|
+
var _Core = require("../../../../../Core.constants");
|
|
9
|
+
var _helpers = require("../../../../helpers");
|
|
10
|
+
const MAX_DAYS = 30;
|
|
11
|
+
const calcMinStay = function () {
|
|
12
|
+
let {
|
|
13
|
+
from,
|
|
14
|
+
to,
|
|
15
|
+
minStayDates,
|
|
16
|
+
minStayType,
|
|
17
|
+
rangeMinDays
|
|
18
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
19
|
+
if (to || !from || minStayType === undefined || !minStayDates) return rangeMinDays;
|
|
20
|
+
let value = minStayDates[(0, _locale.dateFormat)(from, {
|
|
21
|
+
format: _helpers.CALENDAR_FORMAT
|
|
22
|
+
})];
|
|
23
|
+
if (minStayType === _Core.MIN_STAY_TYPE.CHECK_IN || value === 1) return value;
|
|
24
|
+
for (let index = 0; index < value; index++) {
|
|
25
|
+
const current = minStayDates[(0, _locale.dateFormat)((0, _locale.dateCalc)(from, index) || from, {
|
|
26
|
+
format: _helpers.CALENDAR_FORMAT
|
|
27
|
+
})];
|
|
28
|
+
if (current > value) value = current;
|
|
29
|
+
if (index === MAX_DAYS) break;
|
|
30
|
+
}
|
|
31
|
+
return value;
|
|
32
|
+
};
|
|
33
|
+
exports.calcMinStay = calcMinStay;
|
|
34
|
+
//# sourceMappingURL=calcMinStay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calcMinStay.js","names":["_locale","require","_Core","_helpers","MAX_DAYS","calcMinStay","from","to","minStayDates","minStayType","rangeMinDays","arguments","length","undefined","value","dateFormat","format","MIN_STAY_TYPE","CHECK_IN","index","current","dateCalc","exports"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/calcMinStay.js"],"sourcesContent":["import { dateCalc, dateFormat } from '@mirai/locale';\n\nimport { MIN_STAY_TYPE } from '../../../../../Core.constants';\nimport { CALENDAR_FORMAT as format } from '../../../../helpers';\n\nconst MAX_DAYS = 30;\n\nexport const calcMinStay = ({ from, to, minStayDates, minStayType, rangeMinDays } = {}) => {\n if (to || !from || minStayType === undefined || !minStayDates) return rangeMinDays;\n\n let value = minStayDates[dateFormat(from, { format })];\n if (minStayType === MIN_STAY_TYPE.CHECK_IN || value === 1) return value;\n\n for (let index = 0; index < value; index++) {\n const current = minStayDates[dateFormat(dateCalc(from, index) || from, { format })];\n if (current > value) value = current;\n\n if (index === MAX_DAYS) break;\n }\n return value;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,MAAMG,QAAQ,GAAG,EAAE;AAEZ,MAAMC,WAAW,GAAG,SAAAA,CAAA,EAAgE;EAAA,IAA/D;IAAEC,IAAI;IAAEC,EAAE;IAAEC,YAAY;IAAEC,WAAW;IAAEC;EAAa,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACpF,IAAIJ,EAAE,IAAI,CAACD,IAAI,IAAIG,WAAW,KAAKI,SAAS,IAAI,CAACL,YAAY,EAAE,OAAOE,YAAY;EAElF,IAAII,KAAK,GAAGN,YAAY,CAAC,IAAAO,kBAAU,EAACT,IAAI,EAAE;IAAEU,MAAM,EAANA;EAAO,CAAC,CAAC,CAAC;EACtD,IAAIP,WAAW,KAAKQ,mBAAa,CAACC,QAAQ,IAAIJ,KAAK,KAAK,CAAC,EAAE,OAAOA,KAAK;EAEvE,KAAK,IAAIK,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGL,KAAK,EAAEK,KAAK,EAAE,EAAE;IAC1C,MAAMC,OAAO,GAAGZ,YAAY,CAAC,IAAAO,kBAAU,EAAC,IAAAM,gBAAQ,EAACf,IAAI,EAAEa,KAAK,CAAC,IAAIb,IAAI,EAAE;MAAEU,MAAM,EAANA;IAAO,CAAC,CAAC,CAAC;IACnF,IAAII,OAAO,GAAGN,KAAK,EAAEA,KAAK,GAAGM,OAAO;IAEpC,IAAID,KAAK,KAAKf,QAAQ,EAAE;EAC1B;EACA,OAAOU,KAAK;AACd,CAAC;AAACQ,OAAA,CAAAjB,WAAA,GAAAA,WAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calcTooltips = void 0;
|
|
7
|
+
var _locale = require("@mirai/locale");
|
|
8
|
+
var _helpers = require("../../../../helpers");
|
|
9
|
+
var _Calendar = require("../Calendar.l10n");
|
|
10
|
+
const calcTooltips = function () {
|
|
11
|
+
let {
|
|
12
|
+
from,
|
|
13
|
+
to,
|
|
14
|
+
minStayType,
|
|
15
|
+
rangeMinDays,
|
|
16
|
+
translate = _locale.translate
|
|
17
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
18
|
+
if (!(0, _locale.isDate)(from) || to && !(0, _locale.isDate)(to)) return;
|
|
19
|
+
const value = {};
|
|
20
|
+
if (minStayType !== undefined && from && !to && rangeMinDays > 1) {
|
|
21
|
+
value[(0, _locale.dateFormat)(from, {
|
|
22
|
+
format: _helpers.CALENDAR_FORMAT
|
|
23
|
+
})] = {
|
|
24
|
+
text: translate(_Calendar.L10N.LABEL_MIN_NIGHTS, {
|
|
25
|
+
value: rangeMinDays
|
|
26
|
+
}),
|
|
27
|
+
pressable: false
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
return value;
|
|
31
|
+
};
|
|
32
|
+
exports.calcTooltips = calcTooltips;
|
|
33
|
+
//# sourceMappingURL=calcTooltips.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calcTooltips.js","names":["_locale","require","_helpers","_Calendar","calcTooltips","from","to","minStayType","rangeMinDays","translate","translateBase","arguments","length","undefined","isDate","value","dateFormat","format","text","L10N","LABEL_MIN_NIGHTS","pressable","exports"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/calcTooltips.js"],"sourcesContent":["import { dateFormat, isDate, translate as translateBase } from '@mirai/locale';\n\nimport { CALENDAR_FORMAT as format } from '../../../../helpers';\nimport { L10N } from '../Calendar.l10n';\n\nexport const calcTooltips = ({ from, to, minStayType, rangeMinDays, translate = translateBase } = {}) => {\n if (!isDate(from) || (to && !isDate(to))) return;\n\n const value = {};\n if (minStayType !== undefined && from && !to && rangeMinDays > 1) {\n value[dateFormat(from, { format })] = {\n text: translate(L10N.LABEL_MIN_NIGHTS, { value: rangeMinDays }),\n pressable: false,\n };\n }\n\n return value;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEO,MAAMG,YAAY,GAAG,SAAAA,CAAA,EAA6E;EAAA,IAA5E;IAAEC,IAAI;IAAEC,EAAE;IAAEC,WAAW;IAAEC,YAAY;IAAEC,SAAS,GAAGC;EAAc,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAClG,IAAI,CAAC,IAAAG,cAAM,EAACT,IAAI,CAAC,IAAKC,EAAE,IAAI,CAAC,IAAAQ,cAAM,EAACR,EAAE,CAAE,EAAE;EAE1C,MAAMS,KAAK,GAAG,CAAC,CAAC;EAChB,IAAIR,WAAW,KAAKM,SAAS,IAAIR,IAAI,IAAI,CAACC,EAAE,IAAIE,YAAY,GAAG,CAAC,EAAE;IAChEO,KAAK,CAAC,IAAAC,kBAAU,EAACX,IAAI,EAAE;MAAEY,MAAM,EAANA;IAAO,CAAC,CAAC,CAAC,GAAG;MACpCC,IAAI,EAAET,SAAS,CAACU,cAAI,CAACC,gBAAgB,EAAE;QAAEL,KAAK,EAAEP;MAAa,CAAC,CAAC;MAC/Da,SAAS,EAAE;IACb,CAAC;EACH;EAEA,OAAON,KAAK;AACd,CAAC;AAACO,OAAA,CAAAlB,YAAA,GAAAA,YAAA"}
|
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
var _calcMinStay = require("./calcMinStay");
|
|
7
|
+
Object.keys(_calcMinStay).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _calcMinStay[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _calcMinStay[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _calcTooltips = require("./calcTooltips");
|
|
18
|
+
Object.keys(_calcTooltips).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _calcTooltips[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _calcTooltips[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
6
28
|
var _fetchPrices = require("./fetchPrices");
|
|
7
29
|
Object.keys(_fetchPrices).forEach(function (key) {
|
|
8
30
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_calcMinStay","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_calcTooltips","_fetchPrices","_getVisibleDate","_parseValue","_valueFormat"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/index.js"],"sourcesContent":["export * from './calcMinStay';\nexport * from './calcTooltips';\nexport * from './fetchPrices';\nexport * from './getVisibleDate';\nexport * from './parseValue';\nexport * from './valueFormat';\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,aAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,aAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,aAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,aAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,YAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,YAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,YAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,YAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,eAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,eAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,eAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,eAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,WAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,WAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,WAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,WAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,YAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,YAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,YAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,YAAA,CAAAT,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -127,7 +127,6 @@ Footer.propTypes = {
|
|
|
127
127
|
cart: _propTypes.default.arrayOf(_propTypes.default.shape({})),
|
|
128
128
|
dataSource: _propTypes.default.shape({}),
|
|
129
129
|
extras: _propTypes.default.arrayOf(_propTypes.default.shape({})),
|
|
130
|
-
filter: _propTypes.default.shape({}),
|
|
131
130
|
occupation: _propTypes.default.arrayOf(_propTypes.default.arrayOf(_propTypes.default.shape({
|
|
132
131
|
ages: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
133
132
|
amount: _propTypes.default.number,
|