@mirai/core 0.4.337 → 0.4.338

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.
@@ -107,6 +107,14 @@ const Calendar = _ref => {
107
107
  setVisibleDate(value);
108
108
  return showPrices && id && getPrices(value);
109
109
  };
110
+ const handleScroll = (_ref2, months) => {
111
+ let {
112
+ percentY
113
+ } = _ref2;
114
+ const date = (0, _helpers.getVisibleDate)(percentY, months);
115
+ setVisibleDate(date);
116
+ return showPrices && id && getPrices(date, _Calendar.MONTHS);
117
+ };
110
118
  const handleSubmit = event => onSubmit(value, event);
111
119
  const {
112
120
  testId
@@ -160,8 +168,8 @@ const Calendar = _ref => {
160
168
  value: value,
161
169
  onChange: handleChange,
162
170
  onFocus: setFocus,
163
- onLoadMore: handleNavigation,
164
171
  onNavigation: handleNavigation,
172
+ onScroll: handleScroll,
165
173
  className: (0, _ui.styles)(style.calendar, others.className)
166
174
  })), (prices === null || prices === void 0 ? void 0 : prices.currency) && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
167
175
  inline: true,
@@ -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","DEFAULT_CURRENCY","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","text","top","unavailability","disabledDates","minStayDates","minStayType","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","translate","useLocale","value","skeleton","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","handleSubmit","testId","props","range","config","hotels","dataSource","lodgingDenomination","individual","tagId","getDataSource","places","options","find","ids","isHotel","accommodationType","getAccommodationType","getHotels","placesSource","createElement","View","role","className","styles","container","captions","format","CALENDAR_FORMAT","l10n","actionLoadMore","L10N","ACTION_LOAD_MORE_DATES","months","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","tooltips","calcTooltips","onFocus","onLoadMore","onNavigation","calendar","Notification","inline","small","notification","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","shape","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, DEFAULT_CURRENCY, 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 { calcTooltips, fetchPrices } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport {\n CALENDAR_FORMAT,\n getAccommodationType,\n IS_JEST,\n MONTHS_IN_MOBILE,\n parseValue,\n valueFormat,\n} from '../../../helpers';\nimport { getDataSource, getHotels } from '../../helpers';\n\nconst Calendar = ({\n currency = DEFAULT_CURRENCY,\n id,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n text,\n top = false,\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 {\n value: { skeleton = false, ...store },\n } = 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 if (skeleton) return;\n\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 setVisibleDate();\n\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 && id && getPrices(value);\n };\n\n const handleSubmit = (event) => onSubmit(value, event);\n\n const { testId } = others;\n const [from, to] = parseValue(value);\n const props = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\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\" className={styles(style.container, top && style.top)}>\n <CalendarBase\n {...props}\n captions={prices?.values}\n disabledDates={disabledDates}\n format={CALENDAR_FORMAT}\n l10n={{ actionLoadMore: translate(L10N.ACTION_LOAD_MORE_DATES) }}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n tooltips={calcTooltips({ from, minStayDates, minStayType, rangeMinDays, to, translate })}\n value={value}\n onChange={handleChange}\n onFocus={setFocus}\n onLoadMore={handleNavigation}\n onNavigation={handleNavigation}\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 {onSubmit && (\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n )}\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 top: PropTypes.bool,\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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"}
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","DEFAULT_CURRENCY","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","text","top","unavailability","disabledDates","minStayDates","minStayType","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","translate","useLocale","value","skeleton","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","months","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","className","styles","container","captions","format","CALENDAR_FORMAT","l10n","actionLoadMore","L10N","ACTION_LOAD_MORE_DATES","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","tooltips","calcTooltips","onFocus","onNavigation","onScroll","calendar","Notification","inline","small","notification","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","shape","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, DEFAULT_CURRENCY, 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 { calcTooltips, fetchPrices, getVisibleDate } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport {\n CALENDAR_FORMAT,\n getAccommodationType,\n IS_JEST,\n MONTHS_IN_MOBILE,\n parseValue,\n valueFormat,\n} from '../../../helpers';\nimport { getDataSource, getHotels } from '../../helpers';\n\nconst Calendar = ({\n currency = DEFAULT_CURRENCY,\n id,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n text,\n top = false,\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 {\n value: { skeleton = false, ...store },\n } = 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 if (skeleton) return;\n\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 setVisibleDate();\n\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 && id && getPrices(value);\n };\n\n const handleScroll = ({ percentY }, months) => {\n const date = getVisibleDate(percentY, months);\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 = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\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\" className={styles(style.container, top && style.top)}>\n <CalendarBase\n {...props}\n captions={prices?.values}\n disabledDates={disabledDates}\n format={CALENDAR_FORMAT}\n l10n={{ actionLoadMore: translate(L10N.ACTION_LOAD_MORE_DATES) }}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n tooltips={calcTooltips({ from, minStayDates, minStayType, 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 {onSubmit && (\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n )}\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 top: PropTypes.bool,\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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"}
@@ -27,13 +27,6 @@
27
27
  .container {
28
28
  max-height: calc(var(--mirai-modal-max-height) - var(--mirai-ui-space-XXL));
29
29
  }
30
-
31
- .calendar {
32
- flex: 1;
33
- max-height: calc(
34
- var(--mirai-modal-max-height) - calc(var(--mirai-ui-space-XXL) * 3) - var(--mirai-ui-space-XXS)
35
- ) !important;
36
- }
37
30
  }
38
31
 
39
32
  /* M & L */
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getVisibleDate = void 0;
7
+ var _locale = require("@mirai/locale");
8
+ var _helpers = require("../../../../helpers");
9
+ const getVisibleDate = function (scrollPercentage) {
10
+ let totalMonths = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _helpers.MONTHS_IN_MOBILE;
11
+ if (scrollPercentage === undefined) return;
12
+ const today = new Date();
13
+ const percentagePerItem = 100 / (totalMonths - 1);
14
+ const months = Math.floor(scrollPercentage / percentagePerItem);
15
+ return months ? (0, _locale.dateCalc)(today, months, 'months') : today;
16
+ };
17
+ exports.getVisibleDate = getVisibleDate;
18
+ //# sourceMappingURL=getVisibleDate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVisibleDate.js","names":["_locale","require","_helpers","getVisibleDate","scrollPercentage","totalMonths","arguments","length","undefined","MONTHS_IN_MOBILE","today","Date","percentagePerItem","months","Math","floor","dateCalc","exports"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/getVisibleDate.js"],"sourcesContent":["import { dateCalc } from '@mirai/locale';\n\nimport { MONTHS_IN_MOBILE } from '../../../../helpers';\n\nexport const getVisibleDate = (scrollPercentage, totalMonths = MONTHS_IN_MOBILE) => {\n if (scrollPercentage === undefined) return;\n\n const today = new Date();\n const percentagePerItem = 100 / (totalMonths - 1);\n const months = Math.floor(scrollPercentage / percentagePerItem);\n\n return months ? dateCalc(today, months, 'months') : today;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,cAAc,GAAG,SAAAA,CAACC,gBAAgB,EAAqC;EAAA,IAAnCC,WAAW,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGG,yBAAgB;EAC7E,IAAIL,gBAAgB,KAAKI,SAAS,EAAE;EAEpC,MAAME,KAAK,GAAG,IAAIC,IAAI,CAAC,CAAC;EACxB,MAAMC,iBAAiB,GAAG,GAAG,IAAIP,WAAW,GAAG,CAAC,CAAC;EACjD,MAAMQ,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACX,gBAAgB,GAAGQ,iBAAiB,CAAC;EAE/D,OAAOC,MAAM,GAAG,IAAAG,gBAAQ,EAACN,KAAK,EAAEG,MAAM,EAAE,QAAQ,CAAC,GAAGH,KAAK;AAC3D,CAAC;AAACO,OAAA,CAAAd,cAAA,GAAAA,cAAA"}
@@ -36,4 +36,15 @@ Object.keys(_fetchPrices).forEach(function (key) {
36
36
  }
37
37
  });
38
38
  });
39
+ var _getVisibleDate = require("./getVisibleDate");
40
+ Object.keys(_getVisibleDate).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _getVisibleDate[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _getVisibleDate[key];
47
+ }
48
+ });
49
+ });
39
50
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_calcMinStay","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_calcTooltips","_fetchPrices"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/index.js"],"sourcesContent":["export * from './calcMinStay';\nexport * from './calcTooltips';\nexport * from './fetchPrices';\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"}
1
+ {"version":3,"file":"index.js","names":["_calcMinStay","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_calcTooltips","_fetchPrices","_getVisibleDate"],"sources":["../../../../../../src/components/Finder/components/Calendar/helpers/index.js"],"sourcesContent":["export * from './calcMinStay';\nexport * from './calcTooltips';\nexport * from './fetchPrices';\nexport * from './getVisibleDate';\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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.337",
3
+ "version": "0.4.338",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",