@mirai/core 0.3.55 → 0.3.57

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.js CHANGED
@@ -23,7 +23,7 @@ const Core = _ref => {
23
23
  let {
24
24
  children,
25
25
  components = [],
26
- skeleton
26
+ skeleton = false
27
27
  } = _ref;
28
28
  const {
29
29
  isMobile,
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","_Core","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","EVENT_INTENT_LOCALE","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","Event","subscribe","unsubscribe","cached","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","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 { Notifications } from './Core.Notifications';\nimport { getGhost } from './helpers';\n\nconst ghosts = {};\n\nconst EVENT_INTENT_LOCALE = 'intentLocale';\n\nconst Core = ({ children, components = [], skeleton }) => {\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) set({ locale });\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);\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 return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\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","_Core","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","EVENT_INTENT_LOCALE","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","Event","subscribe","unsubscribe","cached","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","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 { Notifications } from './Core.Notifications';\nimport { getGhost } from './helpers';\n\nconst ghosts = {};\n\nconst EVENT_INTENT_LOCALE = 'intentLocale';\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) set({ locale });\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);\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 return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\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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"}
@@ -48,7 +48,7 @@ const Checkout = _ref => {
48
48
  language,
49
49
  locale,
50
50
  session,
51
- urlParams
51
+ urlParams = {}
52
52
  }
53
53
  } = (0, _dataSources.useStore)();
54
54
  const [dataSource, setDataSource] = (0, _react.useState)();
@@ -78,7 +78,7 @@ const Checkout = _ref => {
78
78
  });
79
79
  });
80
80
  setDataSource(response);
81
- (0, _helpers.trackDataSource)({
81
+ response && (0, _helpers.trackDataSource)({
82
82
  ...response,
83
83
  ...urlParams,
84
84
  isMobile
@@ -1 +1 @@
1
- {"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_Checkout2","style","_Checkout3","_helpers","_partials","_partials2","_Booking","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","isMobile","useDevice","translate","useLocale","track","trackRender","useMetrics","value","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","catch","service","method","trackDataSource","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","agency","image","undefined","variant","getVariant","createElement","Fragment","View","role","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","Summary","box","Details","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","onError","Others","tracking","Confirmation","disabled","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant, trackDataSource } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = true, skeleton, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { currency, hotel, id, language, locale, session, urlParams },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n trackDataSource({ ...response, ...urlParams, isMobile });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const { agency = {}, hotel: { image } = {} } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isMobile, urlParams });\n\n return (\n <>\n <View {...others} role=\"checkout\" className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {variant === 'B' && <Summary dataSource={dataSource} className={style.box} />}\n\n {isMobile && <Details dataSource={dataSource} variant={variant} />}\n {!session && showSession === 'true' && <Session />}\n {agency.name && (\n <Notification {...others} small info wide className={styles(style.agency, others.className)}>\n {translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n <Form dataSource={dataSource} onError={setError} />\n {!isMobile && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation dataSource={dataSource} disabled={error} variant={variant} />\n </View>\n </>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency?.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n </>\n );\n};\n\nCheckout.propTypes = {\n session: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_Checkout2","style","_Checkout3","_helpers","_partials","_partials2","_Booking","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","isMobile","useDevice","translate","useLocale","track","trackRender","useMetrics","value","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","catch","service","method","trackDataSource","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","agency","image","undefined","variant","getVariant","createElement","Fragment","View","role","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","Summary","box","Details","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","onError","Others","tracking","Confirmation","disabled","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant, trackDataSource } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = true, skeleton, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { currency, hotel, id, language, locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n response && trackDataSource({ ...response, ...urlParams, isMobile });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const { agency = {}, hotel: { image } = {} } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isMobile, urlParams });\n\n return (\n <>\n <View {...others} role=\"checkout\" className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {variant === 'B' && <Summary dataSource={dataSource} className={style.box} />}\n\n {isMobile && <Details dataSource={dataSource} variant={variant} />}\n {!session && showSession === 'true' && <Session />}\n {agency.name && (\n <Notification {...others} small info wide className={styles(style.agency, others.className)}>\n {translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n <Form dataSource={dataSource} onError={setError} />\n {!isMobile && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation dataSource={dataSource} disabled={error} variant={variant} />\n </View>\n </>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency?.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n </>\n );\n};\n\nCheckout.propTypes = {\n session: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
@@ -6,36 +6,30 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.trackDataSource = void 0;
7
7
  var _locale = require("@mirai/locale");
8
8
  var _helpers = require("../../helpers");
9
- const trackDataSource = function () {
10
- let {
11
- response,
12
- ...others
13
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
14
- if (!response) return;
9
+ const trackDataSource = dataSource => {
15
10
  const {
16
11
  checkin,
17
12
  clientCode,
18
- currencies,
19
13
  currency: userCurrency,
20
- hotelCurrency,
21
- hotelLocality,
22
14
  idchain,
23
15
  idtokenprovider,
24
16
  isMobile,
25
17
  lang,
26
18
  nights,
27
19
  parties,
28
- propertyName,
29
- propertyType,
30
- reservedExtras = {},
31
- reservedRooms = {},
32
- totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes,
33
- totalPriceWithTaxes: totalPriceRoomWithTaxes,
34
- userCountry
35
- } = {
36
- ...response,
37
- ...others
38
- };
20
+ tracking: {
21
+ currencies = {},
22
+ hotelCurrency,
23
+ hotelLocality,
24
+ propertyName,
25
+ propertyType,
26
+ reservedExtras = {},
27
+ reservedRooms = [],
28
+ totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes,
29
+ totalPriceWithTaxes: totalPriceRoomWithTaxes,
30
+ userCountry
31
+ } = {}
32
+ } = dataSource;
39
33
  let totalNumRooms = 0;
40
34
  let totalNumAdults = 0;
41
35
  let totalNumChildren = 0;
@@ -67,7 +61,7 @@ const trackDataSource = function () {
67
61
  });
68
62
  const totalExtrasTaxes = totalExtrasWithTaxes - totalExtrasWithoutTaxes;
69
63
  const totalRoomsTaxes = totalPriceRoomWithTaxes - totalPriceRoomWithoutTaxes;
70
- return (0, _helpers.trace)({
64
+ (0, _helpers.trace)({
71
65
  bookingValues: {
72
66
  nights,
73
67
  checkin,
@@ -1 +1 @@
1
- {"version":3,"file":"trackDataSource.js","names":["_locale","require","_helpers","trackDataSource","response","others","arguments","length","undefined","checkin","clientCode","currencies","currency","userCurrency","hotelCurrency","hotelLocality","idchain","idtokenprovider","isMobile","lang","nights","parties","propertyName","propertyType","reservedExtras","reservedRooms","totalPriceWithoutTaxes","totalPriceRoomWithoutTaxes","totalPriceWithTaxes","totalPriceRoomWithTaxes","userCountry","totalNumRooms","totalNumAdults","totalNumChildren","totalNumBabies","forEach","_ref","numRoomsToReserve","occupation","numAdults","numFirstRangeChildren","numSecondRangeChildren","numBabies","totalExtrasWithTaxes","totalExtrasWithoutTaxes","Object","keys","extraKey","totalExtrasTaxes","totalRoomsTaxes","trace","bookingValues","checkout","dateFormat","dateCalc","parseDate","parseInt","format","language","coupon","device","country","JSON","parse","window","atob","decodeURIComponent","reduce","prev","_ref2","adults","children","chainId","hotelId","hotelInfo","hotelProvince","step","totalPriceWithoutTaxesWithoutExtras","totalPriceWithTaxesWithoutExtras","totalTaxes","exports"],"sources":["../../../../src/components/Checkout/helpers/trackDataSource.js"],"sourcesContent":["import { dateCalc, parseDate, dateFormat } from '@mirai/locale';\n\nimport { trace } from '../../helpers';\nexport const trackDataSource = ({ response, ...others } = {}) => {\n if (!response) return;\n\n const {\n checkin,\n clientCode,\n currencies,\n currency: userCurrency,\n hotelCurrency,\n hotelLocality,\n idchain,\n idtokenprovider,\n isMobile,\n lang,\n nights,\n parties,\n propertyName,\n propertyType,\n reservedExtras = {},\n reservedRooms = {},\n totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes,\n totalPriceWithTaxes: totalPriceRoomWithTaxes,\n userCountry,\n } = { ...response, ...others };\n\n let totalNumRooms = 0;\n let totalNumAdults = 0;\n let totalNumChildren = 0;\n let totalNumBabies = 0;\n reservedRooms.forEach(\n ({\n numRoomsToReserve,\n occupation: { numAdults, numFirstRangeChildren, numSecondRangeChildren, numBabies } = {},\n }) => {\n totalNumRooms += numRoomsToReserve;\n totalNumAdults += numRoomsToReserve * numAdults;\n totalNumChildren += numRoomsToReserve * (numFirstRangeChildren + numSecondRangeChildren);\n totalNumBabies += numRoomsToReserve * numBabies;\n },\n );\n let totalExtrasWithTaxes = 0;\n let totalExtrasWithoutTaxes = 0;\n Object.keys(reservedExtras).forEach((extraKey) => {\n const { totalPriceWithTaxes, totalPriceWithoutTaxes } = reservedExtras[extraKey] || {};\n totalExtrasWithTaxes += totalPriceWithTaxes;\n totalExtrasWithoutTaxes += totalPriceWithoutTaxes;\n });\n const totalExtrasTaxes = totalExtrasWithTaxes - totalExtrasWithoutTaxes;\n const totalRoomsTaxes = totalPriceRoomWithTaxes - totalPriceRoomWithoutTaxes;\n\n return trace({\n bookingValues: {\n nights,\n checkin,\n checkout: dateFormat(dateCalc(parseDate(checkin), parseInt(nights), 'days'), { format: 'DD/MM/YYYY' }),\n language: lang,\n coupon: clientCode,\n device: isMobile ? 'MOBILE' : 'DESKTOP_TABLET',\n userCurrency: currencies[userCurrency],\n country: userCountry,\n occupation: JSON.parse(window.atob(decodeURIComponent(parties))).reduce(\n (prev, { adults, children }) => prev + adults + children.length,\n 0,\n ),\n },\n chainId: idchain,\n hotelId: idtokenprovider,\n hotelInfo: { currency: currencies[hotelCurrency], hotelProvince: hotelLocality, propertyName, propertyType },\n reservedExtras,\n reservedRooms,\n step: 'CLIENTFORM',\n totalExtrasTaxes,\n totalExtrasWithoutTaxes,\n totalExtrasWithTaxes,\n totalNumAdults,\n totalNumBabies,\n totalNumChildren,\n totalNumRooms,\n totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes + totalExtrasWithoutTaxes,\n totalPriceWithoutTaxesWithoutExtras: totalPriceRoomWithoutTaxes,\n totalPriceWithTaxes: totalPriceRoomWithTaxes + totalExtrasWithTaxes,\n totalPriceWithTaxesWithoutExtras: totalPriceRoomWithTaxes,\n totalRoomsTaxes,\n totalTaxes: totalRoomsTaxes + totalExtrasTaxes,\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"trackDataSource.js","names":["_locale","require","_helpers","trackDataSource","dataSource","checkin","clientCode","currency","userCurrency","idchain","idtokenprovider","isMobile","lang","nights","parties","tracking","currencies","hotelCurrency","hotelLocality","propertyName","propertyType","reservedExtras","reservedRooms","totalPriceWithoutTaxes","totalPriceRoomWithoutTaxes","totalPriceWithTaxes","totalPriceRoomWithTaxes","userCountry","totalNumRooms","totalNumAdults","totalNumChildren","totalNumBabies","forEach","_ref","numRoomsToReserve","occupation","numAdults","numFirstRangeChildren","numSecondRangeChildren","numBabies","totalExtrasWithTaxes","totalExtrasWithoutTaxes","Object","keys","extraKey","totalExtrasTaxes","totalRoomsTaxes","trace","bookingValues","checkout","dateFormat","dateCalc","parseDate","parseInt","format","language","coupon","device","country","JSON","parse","window","atob","decodeURIComponent","reduce","prev","_ref2","adults","children","length","chainId","hotelId","hotelInfo","hotelProvince","step","totalPriceWithoutTaxesWithoutExtras","totalPriceWithTaxesWithoutExtras","totalTaxes","exports"],"sources":["../../../../src/components/Checkout/helpers/trackDataSource.js"],"sourcesContent":["import { dateCalc, parseDate, dateFormat } from '@mirai/locale';\n\nimport { trace } from '../../helpers';\nexport const trackDataSource = (dataSource) => {\n const {\n checkin,\n clientCode,\n currency: userCurrency,\n idchain,\n idtokenprovider,\n isMobile,\n lang,\n nights,\n parties,\n tracking: {\n currencies = {},\n hotelCurrency,\n hotelLocality,\n propertyName,\n propertyType,\n reservedExtras = {},\n reservedRooms = [],\n totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes,\n totalPriceWithTaxes: totalPriceRoomWithTaxes,\n userCountry,\n } = {},\n } = dataSource;\n\n let totalNumRooms = 0;\n let totalNumAdults = 0;\n let totalNumChildren = 0;\n let totalNumBabies = 0;\n reservedRooms.forEach(\n ({\n numRoomsToReserve,\n occupation: { numAdults, numFirstRangeChildren, numSecondRangeChildren, numBabies } = {},\n }) => {\n totalNumRooms += numRoomsToReserve;\n totalNumAdults += numRoomsToReserve * numAdults;\n totalNumChildren += numRoomsToReserve * (numFirstRangeChildren + numSecondRangeChildren);\n totalNumBabies += numRoomsToReserve * numBabies;\n },\n );\n let totalExtrasWithTaxes = 0;\n let totalExtrasWithoutTaxes = 0;\n Object.keys(reservedExtras).forEach((extraKey) => {\n const { totalPriceWithTaxes, totalPriceWithoutTaxes } = reservedExtras[extraKey] || {};\n totalExtrasWithTaxes += totalPriceWithTaxes;\n totalExtrasWithoutTaxes += totalPriceWithoutTaxes;\n });\n const totalExtrasTaxes = totalExtrasWithTaxes - totalExtrasWithoutTaxes;\n const totalRoomsTaxes = totalPriceRoomWithTaxes - totalPriceRoomWithoutTaxes;\n\n trace({\n bookingValues: {\n nights,\n checkin,\n checkout: dateFormat(dateCalc(parseDate(checkin), parseInt(nights), 'days'), { format: 'DD/MM/YYYY' }),\n language: lang,\n coupon: clientCode,\n device: isMobile ? 'MOBILE' : 'DESKTOP_TABLET',\n userCurrency: currencies[userCurrency],\n country: userCountry,\n occupation: JSON.parse(window.atob(decodeURIComponent(parties))).reduce(\n (prev, { adults, children }) => prev + adults + children.length,\n 0,\n ),\n },\n chainId: idchain,\n hotelId: idtokenprovider,\n hotelInfo: { currency: currencies[hotelCurrency], hotelProvince: hotelLocality, propertyName, propertyType },\n reservedExtras,\n reservedRooms,\n step: 'CLIENTFORM',\n totalExtrasTaxes,\n totalExtrasWithoutTaxes,\n totalExtrasWithTaxes,\n totalNumAdults,\n totalNumBabies,\n totalNumChildren,\n totalNumRooms,\n totalPriceWithoutTaxes: totalPriceRoomWithoutTaxes + totalExtrasWithoutTaxes,\n totalPriceWithoutTaxesWithoutExtras: totalPriceRoomWithoutTaxes,\n totalPriceWithTaxes: totalPriceRoomWithTaxes + totalExtrasWithTaxes,\n totalPriceWithTaxesWithoutExtras: totalPriceRoomWithTaxes,\n totalRoomsTaxes,\n totalTaxes: totalRoomsTaxes + totalExtrasTaxes,\n });\n};\n"],"mappings":"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"}
@@ -86,7 +86,7 @@ const Footer = _ref => {
86
86
  amount: options
87
87
  })) : null;
88
88
  const soloRoom = occupation.length === 1;
89
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
89
+ return /*#__PURE__*/_react.default.createElement(_ui.View, {
90
90
  className: (0, _ui.styles)(style.footer, options && style.visible)
91
91
  }, (expanded || soloRoom) && /*#__PURE__*/_react.default.createElement(_ui.View, {
92
92
  className: [style.wrapper, style.expanded],
@@ -151,7 +151,7 @@ const Footer = _ref => {
151
151
  }, taxes || translate(_Rates.L10N.LABEL_INCLUDES_TAXES_FEES))), !isMobile && /*#__PURE__*/_react.default.createElement(ViewCart, null), /*#__PURE__*/_react.default.createElement(_ui.Button, {
152
152
  large: !isMobile,
153
153
  onPress: handlePress
154
- }, translate(_Rates.L10N.ACTION_NEXT)))));
154
+ }, translate(_Rates.L10N.ACTION_NEXT))));
155
155
  };
156
156
  exports.Footer = Footer;
157
157
  Footer.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Rates","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","dataSource","items","filter","clubDiscount","occupation","selected","taxes","onChange","isMobile","useDevice","translate","useLocale","value","currency","forwarder","urlParams","useStore","expanded","setExpanded","useState","useEffect","keys","length","handlePress","document","location","href","getForwarderUrl","options","values","reduce","_ref2","amount","price","rates","map","name","title","arguments","undefined","rate","flat","ViewCart","soloRoom","createElement","Action","inline","small","onPress","L10N","ACTION_HIDE_CART","ACTION_VIEW_CART","Fragment","View","className","styles","footer","visible","wrapper","wide","entries","_ref3","id","find","row","key","item","Text","bold","concat","description","currencyFormat","Button","transparent","squared","Icon","ICON","CLOSE","line","headline","level","lighten","tiny","LABEL_INCLUDES_TAXES_FEES","large","ACTION_NEXT","exports","propTypes","PropTypes","shape","arrayOf","array","string","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getForwarderUrl } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({\n dataSource: { items = [] } = {},\n filter: { clubDiscount = false } = {},\n occupation = [],\n selected = {},\n taxes,\n onChange = () => {},\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency, forwarder, urlParams } = {} } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setExpanded(false), [selected]);\n\n const handlePress = () => {\n document.location.href = getForwarderUrl({ clubDiscount, currency, forwarder, selected, urlParams });\n };\n\n // ! Should know if didnt expire the storage\n const { length: options } = Object.keys(selected);\n const value = Object.values(selected).reduce((value, { amount, price }) => value + amount * price, 0);\n const rates = items.map(({ rates = [], name: title } = {}) => rates.map((rate = {}) => ({ ...rate, title }))).flat();\n\n const ViewCart = () =>\n !soloRoom ? (\n <Action inline small={isMobile} onPress={() => setExpanded(!expanded)}>\n {translate(expanded ? L10N.ACTION_HIDE_CART : L10N.ACTION_VIEW_CART, { amount: options })}\n </Action>\n ) : null;\n\n const soloRoom = occupation.length === 1;\n\n return (\n <>\n <View className={styles(style.footer, options && style.visible)}>\n {(expanded || soloRoom) && (\n <View className={[style.wrapper, style.expanded]} wide>\n {Object.entries(selected).map(([id, { amount, price }]) => {\n const { name, title } = rates.find((rate) => rate.id === id);\n\n return (\n <View row key={id} className={style.item}>\n <Text bold small className={style.amount}>{`${amount}x`}</Text>\n <Text small className={style.description}>{`${title} (${name})`}</Text>\n <Text bold small>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n\n <Button transparent small squared onPress={() => onChange({ id, amount: 0 })}>\n <Icon value={ICON.CLOSE} />\n </Button>\n </View>\n );\n })}\n </View>\n )}\n\n <View row className={style.wrapper}>\n <View className={style.price}>\n <View row wide className={style.line}>\n <Text bold headline level={2}>\n {currencyFormat({ currency, value })}\n </Text>\n {isMobile && <ViewCart />}\n </View>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n {!isMobile && <ViewCart />}\n\n <Button large={!isMobile} onPress={handlePress}>\n {translate(L10N.ACTION_NEXT)}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nFooter.propTypes = {\n dataSource: PropTypes.shape({}),\n filter: PropTypes.shape({}),\n occupation: PropTypes.arrayOf(PropTypes.array),\n selected: PropTypes.shape({}),\n taxes: PropTypes.string,\n onChange: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Rates","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","dataSource","items","filter","clubDiscount","occupation","selected","taxes","onChange","isMobile","useDevice","translate","useLocale","value","currency","forwarder","urlParams","useStore","expanded","setExpanded","useState","useEffect","keys","length","handlePress","document","location","href","getForwarderUrl","options","values","reduce","_ref2","amount","price","rates","map","name","title","arguments","undefined","rate","flat","ViewCart","soloRoom","createElement","Action","inline","small","onPress","L10N","ACTION_HIDE_CART","ACTION_VIEW_CART","View","className","styles","footer","visible","wrapper","wide","entries","_ref3","id","find","row","key","item","Text","bold","concat","description","currencyFormat","Button","transparent","squared","Icon","ICON","CLOSE","line","headline","level","lighten","tiny","LABEL_INCLUDES_TAXES_FEES","large","ACTION_NEXT","exports","propTypes","PropTypes","shape","arrayOf","array","string","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getForwarderUrl } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({\n dataSource: { items = [] } = {},\n filter: { clubDiscount = false } = {},\n occupation = [],\n selected = {},\n taxes,\n onChange = () => {},\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency, forwarder, urlParams } = {} } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setExpanded(false), [selected]);\n\n const handlePress = () => {\n document.location.href = getForwarderUrl({ clubDiscount, currency, forwarder, selected, urlParams });\n };\n\n // ! Should know if didnt expire the storage\n const { length: options } = Object.keys(selected);\n const value = Object.values(selected).reduce((value, { amount, price }) => value + amount * price, 0);\n const rates = items.map(({ rates = [], name: title } = {}) => rates.map((rate = {}) => ({ ...rate, title }))).flat();\n\n const ViewCart = () =>\n !soloRoom ? (\n <Action inline small={isMobile} onPress={() => setExpanded(!expanded)}>\n {translate(expanded ? L10N.ACTION_HIDE_CART : L10N.ACTION_VIEW_CART, { amount: options })}\n </Action>\n ) : null;\n\n const soloRoom = occupation.length === 1;\n\n return (\n <View className={styles(style.footer, options && style.visible)}>\n {(expanded || soloRoom) && (\n <View className={[style.wrapper, style.expanded]} wide>\n {Object.entries(selected).map(([id, { amount, price }]) => {\n const { name, title } = rates.find((rate) => rate.id === id);\n\n return (\n <View row key={id} className={style.item}>\n <Text bold small className={style.amount}>{`${amount}x`}</Text>\n <Text small className={style.description}>{`${title} (${name})`}</Text>\n <Text bold small>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n\n <Button transparent small squared onPress={() => onChange({ id, amount: 0 })}>\n <Icon value={ICON.CLOSE} />\n </Button>\n </View>\n );\n })}\n </View>\n )}\n\n <View row className={style.wrapper}>\n <View className={style.price}>\n <View row wide className={style.line}>\n <Text bold headline level={2}>\n {currencyFormat({ currency, value })}\n </Text>\n {isMobile && <ViewCart />}\n </View>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n {!isMobile && <ViewCart />}\n\n <Button large={!isMobile} onPress={handlePress}>\n {translate(L10N.ACTION_NEXT)}\n </Button>\n </View>\n </View>\n );\n};\n\nFooter.propTypes = {\n dataSource: PropTypes.shape({}),\n filter: PropTypes.shape({}),\n occupation: PropTypes.arrayOf(PropTypes.array),\n selected: PropTypes.shape({}),\n taxes: PropTypes.string,\n onChange: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.RATES_STORAGE_KEY = exports.RATES_STORAGE_CACHE = void 0;
7
- const RATES_STORAGE_CACHE = exports.RATES_STORAGE_CACHE = 1000 * 60 * 60 * 24 * 2; // 2 days
7
+ const RATES_STORAGE_CACHE = exports.RATES_STORAGE_CACHE = 1000 * 60 * 5; // 5 minutes
8
8
 
9
9
  const RATES_STORAGE_KEY = exports.RATES_STORAGE_KEY = 'MIRAI:RATES';
10
10
  //# sourceMappingURL=Rates.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.constants.js","names":["RATES_STORAGE_CACHE","exports","RATES_STORAGE_KEY"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const RATES_STORAGE_CACHE = 1000 * 60 * 60 * 24 * 2; // 2 days\n\nconst RATES_STORAGE_KEY = 'MIRAI:RATES';\n\nexport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY };\n"],"mappings":";;;;;;AAAA,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAErD,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,aAAa"}
1
+ {"version":3,"file":"Rates.constants.js","names":["RATES_STORAGE_CACHE","exports","RATES_STORAGE_KEY"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const RATES_STORAGE_CACHE = 1000 * 60 * 5; // 5 minutes\n\nconst RATES_STORAGE_KEY = 'MIRAI:RATES';\n\nexport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY };\n"],"mappings":";;;;;;AAAA,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAE3C,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,aAAa"}
@@ -7,6 +7,7 @@ exports.Rates = void 0;
7
7
  var _dataSources = require("@mirai/data-sources");
8
8
  var _locale = require("@mirai/locale");
9
9
  var _ui = require("@mirai/ui");
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
11
  var _react = _interopRequireWildcard(require("react"));
11
12
  var _components = require("./components");
12
13
  var _helpers = require("./helpers");
@@ -19,12 +20,13 @@ var _Rates5 = _interopRequireDefault(require("./Rates.Skeleton"));
19
20
  var _services = require("../../services");
20
21
  var _Finder = require("../Finder/Finder");
21
22
  var _helpers2 = require("../helpers");
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
23
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
24
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
26
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
26
27
  const Rates = _ref => {
27
28
  let {
29
+ skeleton,
28
30
  ...others
29
31
  } = _ref;
30
32
  const {
@@ -62,19 +64,16 @@ const Rates = _ref => {
62
64
  cache: _Rates.RATES_STORAGE_CACHE
63
65
  });
64
66
  (0, _react.useEffect)(() => {
67
+ if (skeleton) return setFetching(true);
65
68
  if (urlParams) {
66
69
  const nextSelected = storage.get(key(urlParams));
67
- if (nextSelected) setSelected({});
70
+ if (nextSelected) setSelected(nextSelected);
68
71
  }
69
72
  const handleScroll = () => setCompact(true);
70
73
  window.addEventListener('scroll', handleScroll);
71
74
  return () => window.removeEventListener('scroll', handleScroll);
72
75
  // eslint-disable-next-line react-hooks/exhaustive-deps
73
76
  }, []);
74
- (0, _react.useEffect)(() => {
75
- storage.set(key(urlParams), selected);
76
- // eslint-disable-next-line react-hooks/exhaustive-deps
77
- }, [selected]);
78
77
  (0, _react.useEffect)(() => {
79
78
  fetch(currency);
80
79
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -82,6 +81,7 @@ const Rates = _ref => {
82
81
  const fetch = async function (currency) {
83
82
  let clubDiscount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : filter.clubDiscount;
84
83
  let params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : urlParams;
84
+ if (skeleton) return;
85
85
  setFetching(true);
86
86
  const nextParams = {
87
87
  ...params,
@@ -109,6 +109,7 @@ const Rates = _ref => {
109
109
  ...others
110
110
  };
111
111
  setSelected(next);
112
+ storage.set(key(urlParams), next);
112
113
  };
113
114
  const handleChangeCurrency = async nextCurrency => {
114
115
  await fetch(nextCurrency);
@@ -174,7 +175,7 @@ const Rates = _ref => {
174
175
  onRateInfo: rate => setItemRateInfo(rate),
175
176
  onViewUrl: info => setItemUrl(info)
176
177
  }));
177
- })) : /*#__PURE__*/_react.default.createElement(_Rates5.default, null)), /*#__PURE__*/_react.default.createElement(_Rates3.Footer, {
178
+ })) : /*#__PURE__*/_react.default.createElement(_Rates5.default, null)), response && /*#__PURE__*/_react.default.createElement(_Rates3.Footer, {
178
179
  dataSource,
179
180
  filter,
180
181
  occupation,
@@ -193,4 +194,8 @@ const Rates = _ref => {
193
194
  })));
194
195
  };
195
196
  exports.Rates = Rates;
197
+ Rates.displayName = 'Mirai:User:Rates';
198
+ Rates.propTypes = {
199
+ skeleton: _propTypes.default.bool
200
+ };
196
201
  //# sourceMappingURL=Rates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_ui","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","style","_Rates5","_interopRequireDefault","_services","_Finder","_helpers2","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","Rates","_ref","others","translate","useLocale","value","club","discount","currency","finder","occupation","hotel","locale","session","urlParams","useStore","compact","setCompact","useState","dataSource","setDataSource","fetching","setFetching","undefined","filter","setFilter","clubDiscount","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","responseError","setResponseError","selected","setSelected","storage","Storage","adapter","LocalAdapter","cache","RATES_STORAGE_CACHE","useEffect","nextSelected","handleScroll","window","addEventListener","removeEventListener","fetch","params","nextParams","ServiceRates","catch","concat","RATES_STORAGE_KEY","generateId","JSON","stringify","handleChange","amount","id","standalone","next","handleChangeCurrency","nextCurrency","handleChangeFilter","nextFilter","handleFinderSubmit","values","getFinderParams","history","replaceState","toUrlParams","response","createElement","Fragment","View","className","Finder","assisted","text","L10N","ACTION_SEARCH","onExpand","onSubmit","role","styles","container","Progress","indeterminate","visible","progress","wrapper","content","Filter","onChange","onCurrency","items","map","_ref2","index","item","Item","taxes","onMoreInfo","onRateInfo","rate","onViewUrl","info","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","exports"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Progress, styles, View } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { Item, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getFinderParams } from './helpers';\nimport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY } from './Rates.constants';\nimport { Filter } from './Rates.Filter';\nimport { Footer } from './Rates.Footer';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport Skeleton from './Rates.Skeleton';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder/Finder';\nimport { generateId, toUrlParams } from '../helpers';\n\nconst Rates = ({ ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: { club: { discount } = {}, currency, finder: { occupation } = {}, hotel = {}, locale, session, urlParams },\n } = useStore();\n\n const [compact, setCompact] = useState(true);\n const [dataSource, setDataSource] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [filter, setFilter] = useState({ clubDiscount: discount });\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [responseError, setResponseError] = useState();\n const [selected, setSelected] = useState({});\n\n const storage = new Storage({ adapter: LocalAdapter, cache: RATES_STORAGE_CACHE });\n\n useEffect(() => {\n if (urlParams) {\n const nextSelected = storage.get(key(urlParams));\n if (nextSelected) setSelected({});\n }\n\n const handleScroll = () => setCompact(true);\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n storage.set(key(urlParams), selected);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected]);\n\n useEffect(() => {\n fetch(currency);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, locale, session]);\n\n const fetch = async (currency, clubDiscount = filter.clubDiscount, params = urlParams) => {\n setFetching(true);\n const nextParams = { ...params, currency, locale, session, clubDiscount };\n setDataSource(await ServiceRates.get(nextParams).catch(setResponseError));\n setFetching(false);\n };\n\n const key = (dataSource) => `${RATES_STORAGE_KEY}:${generateId(JSON.stringify(dataSource))}`;\n\n const handleChange = ({ amount = 0, id, standalone = false, ...others } = {}) => {\n const next = standalone ? {} : { ...selected };\n if (amount === 0) delete next[id];\n else next[id] = { amount, ...others };\n\n setSelected(next);\n };\n\n const handleChangeCurrency = async (nextCurrency) => {\n await fetch(nextCurrency);\n set({ currency: nextCurrency });\n };\n\n const handleChangeFilter = async (nextFilter) => {\n setFilter(nextFilter);\n if (nextFilter.clubDiscount !== filter.clubDiscount) await fetch(currency, nextFilter.clubDiscount);\n };\n\n const handleFinderSubmit = (values) => {\n setCompact(true);\n setDataSource(undefined);\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n\n history.replaceState({}, '', toUrlParams(params));\n fetch(currency, filter.clubDiscount, params);\n };\n\n const response = dataSource !== undefined;\n\n return (\n <>\n <View className={style.finder}>\n <Finder\n assisted={false}\n compact={compact}\n text={translate(L10N.ACTION_SEARCH)}\n onExpand={() => setCompact(false)}\n onSubmit={handleFinderSubmit}\n />\n </View>\n <View {...others} role=\"rates\" className={styles(style.container, others.className)}>\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n <View className={[style.wrapper, style.content]}>\n {response ? (\n <>\n <Filter\n dataSource={dataSource}\n value={filter}\n onChange={handleChangeFilter}\n onCurrency={handleChangeCurrency}\n />\n {dataSource.items.map(({ id, ...item }, index) => (\n <Item\n key={id || index}\n {...{ id, ...item, filter, occupation, selected, taxes: dataSource.taxes }}\n onChange={handleChange}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo(rate)}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n </>\n ) : (\n <Skeleton />\n )}\n </View>\n\n <Footer {...{ dataSource, filter, occupation, selected, taxes: dataSource?.taxes }} onChange={handleChange} />\n </View>\n\n <ModalItemInfo {...itemInfo} visible={!!itemInfo} onClose={() => setItemInfo()} />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n </>\n );\n};\n\nexport { Rates };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","_Rates3","_Rates4","style","_Rates5","_services","_Finder","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Rates","_ref","skeleton","others","translate","useLocale","value","club","discount","currency","finder","occupation","hotel","locale","session","urlParams","useStore","compact","setCompact","useState","dataSource","setDataSource","fetching","setFetching","undefined","filter","setFilter","clubDiscount","itemInfo","setItemInfo","itemRateInfo","setItemRateInfo","itemUrl","setItemUrl","responseError","setResponseError","selected","setSelected","storage","Storage","adapter","LocalAdapter","cache","RATES_STORAGE_CACHE","useEffect","nextSelected","handleScroll","window","addEventListener","removeEventListener","fetch","params","nextParams","ServiceRates","catch","concat","RATES_STORAGE_KEY","generateId","JSON","stringify","handleChange","amount","id","standalone","next","handleChangeCurrency","nextCurrency","handleChangeFilter","nextFilter","handleFinderSubmit","values","getFinderParams","history","replaceState","toUrlParams","response","createElement","Fragment","View","className","Finder","assisted","text","L10N","ACTION_SEARCH","onExpand","onSubmit","role","styles","container","Progress","indeterminate","visible","progress","wrapper","content","Filter","onChange","onCurrency","items","map","_ref2","index","item","Item","taxes","onMoreInfo","onRateInfo","rate","onViewUrl","info","Footer","ModalItemInfo","onClose","ModalItemRateInfo","ModalItemUrl","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Rates/Rates.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Progress, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Item, ModalItemInfo, ModalItemRateInfo, ModalItemUrl } from './components';\nimport { getFinderParams } from './helpers';\nimport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY } from './Rates.constants';\nimport { Filter } from './Rates.Filter';\nimport { Footer } from './Rates.Footer';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport Skeleton from './Rates.Skeleton';\nimport { ServiceRates } from '../../services';\nimport { Finder } from '../Finder/Finder';\nimport { generateId, toUrlParams } from '../helpers';\n\nconst Rates = ({ skeleton, ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: { club: { discount } = {}, currency, finder: { occupation } = {}, hotel = {}, locale, session, urlParams },\n } = useStore();\n\n const [compact, setCompact] = useState(true);\n const [dataSource, setDataSource] = useState();\n const [fetching, setFetching] = useState(undefined);\n const [filter, setFilter] = useState({ clubDiscount: discount });\n const [itemInfo, setItemInfo] = useState();\n const [itemRateInfo, setItemRateInfo] = useState();\n const [itemUrl, setItemUrl] = useState();\n const [responseError, setResponseError] = useState();\n const [selected, setSelected] = useState({});\n\n const storage = new Storage({ adapter: LocalAdapter, cache: RATES_STORAGE_CACHE });\n\n useEffect(() => {\n if (skeleton) return setFetching(true);\n\n if (urlParams) {\n const nextSelected = storage.get(key(urlParams));\n if (nextSelected) setSelected(nextSelected);\n }\n\n const handleScroll = () => setCompact(true);\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n fetch(currency);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, locale, session]);\n\n const fetch = async (currency, clubDiscount = filter.clubDiscount, params = urlParams) => {\n if (skeleton) return;\n setFetching(true);\n const nextParams = { ...params, currency, locale, session, clubDiscount };\n setDataSource(await ServiceRates.get(nextParams).catch(setResponseError));\n setFetching(false);\n };\n\n const key = (dataSource) => `${RATES_STORAGE_KEY}:${generateId(JSON.stringify(dataSource))}`;\n\n const handleChange = ({ amount = 0, id, standalone = false, ...others } = {}) => {\n const next = standalone ? {} : { ...selected };\n if (amount === 0) delete next[id];\n else next[id] = { amount, ...others };\n\n setSelected(next);\n storage.set(key(urlParams), next);\n };\n\n const handleChangeCurrency = async (nextCurrency) => {\n await fetch(nextCurrency);\n set({ currency: nextCurrency });\n };\n\n const handleChangeFilter = async (nextFilter) => {\n setFilter(nextFilter);\n if (nextFilter.clubDiscount !== filter.clubDiscount) await fetch(currency, nextFilter.clubDiscount);\n };\n\n const handleFinderSubmit = (values) => {\n setCompact(true);\n setDataSource(undefined);\n const params = getFinderParams({ ...urlParams, ...values, currency, locale, hotel });\n\n history.replaceState({}, '', toUrlParams(params));\n fetch(currency, filter.clubDiscount, params);\n };\n\n const response = dataSource !== undefined;\n\n return (\n <>\n <View className={style.finder}>\n <Finder\n assisted={false}\n compact={compact}\n text={translate(L10N.ACTION_SEARCH)}\n onExpand={() => setCompact(false)}\n onSubmit={handleFinderSubmit}\n />\n </View>\n <View {...others} role=\"rates\" className={styles(style.container, others.className)}>\n <Progress indeterminate visible={fetching && !responseError} className={style.progress} />\n\n <View className={[style.wrapper, style.content]}>\n {response ? (\n <>\n <Filter\n dataSource={dataSource}\n value={filter}\n onChange={handleChangeFilter}\n onCurrency={handleChangeCurrency}\n />\n {dataSource.items.map(({ id, ...item }, index) => (\n <Item\n key={id || index}\n {...{ id, ...item, filter, occupation, selected, taxes: dataSource.taxes }}\n onChange={handleChange}\n onMoreInfo={() => setItemInfo(item)}\n onRateInfo={(rate) => setItemRateInfo(rate)}\n onViewUrl={(info) => setItemUrl(info)}\n />\n ))}\n </>\n ) : (\n <Skeleton />\n )}\n </View>\n\n {response && (\n <Footer {...{ dataSource, filter, occupation, selected, taxes: dataSource?.taxes }} onChange={handleChange} />\n )}\n </View>\n\n <ModalItemInfo {...itemInfo} visible={!!itemInfo} onClose={() => setItemInfo()} />\n <ModalItemRateInfo {...itemRateInfo} visible={!!itemRateInfo} onClose={() => setItemRateInfo()} />\n <ModalItemUrl {...itemUrl} visible={!!itemUrl} onClose={() => setItemUrl()} />\n </>\n );\n};\n\nRates.displayName = 'Mirai:User:Rates';\n\nRates.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Rates };\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.3.55",
3
+ "version": "0.3.57",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",