@mirai/core 0.4.104 → 0.4.105

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.
Files changed (63) hide show
  1. package/build/Core.js +3 -5
  2. package/build/Core.js.map +1 -1
  3. package/build/components/BannerLoyalty/BannerLoyalty.js +3 -4
  4. package/build/components/BannerLoyalty/BannerLoyalty.js.map +1 -1
  5. package/build/components/BannerLoyalty/BannerLoyalty.skeleton.js +28 -28
  6. package/build/components/BannerLoyalty/BannerLoyalty.skeleton.js.map +1 -1
  7. package/build/components/Booking/Booking.js +3 -6
  8. package/build/components/Booking/Booking.js.map +1 -1
  9. package/build/components/Booking/Booking.skeleton.js +219 -27
  10. package/build/components/Booking/Booking.skeleton.js.map +1 -1
  11. package/build/components/Chat/Chat.js +2 -3
  12. package/build/components/Chat/Chat.js.map +1 -1
  13. package/build/components/Checkout/Checkout.js +3 -6
  14. package/build/components/Checkout/Checkout.js.map +1 -1
  15. package/build/components/Checkout/Checkout.skeleton.js +175 -25
  16. package/build/components/Checkout/Checkout.skeleton.js.map +1 -1
  17. package/build/components/Deals/Deals.js +17 -6
  18. package/build/components/Deals/Deals.js.map +1 -1
  19. package/build/components/Deals/Deals.skeleton.js +7 -7
  20. package/build/components/Deals/Deals.skeleton.js.map +1 -1
  21. package/build/components/Finder/Finder.compact.js +30 -13
  22. package/build/components/Finder/Finder.compact.js.map +1 -1
  23. package/build/components/Finder/Finder.js +18 -11
  24. package/build/components/Finder/Finder.js.map +1 -1
  25. package/build/components/Finder/Finder.l10n.js +4 -3
  26. package/build/components/Finder/Finder.l10n.js.map +1 -1
  27. package/build/components/Finder/Finder.module.css +7 -2
  28. package/build/components/Finder/components/Calendar/Calendar.js +4 -3
  29. package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
  30. package/build/components/Header/Header.js +8 -4
  31. package/build/components/Header/Header.js.map +1 -1
  32. package/build/components/Header/components/BookingProcess/BookingProcess.js +4 -2
  33. package/build/components/Header/components/BookingProcess/BookingProcess.js.map +1 -1
  34. package/build/components/Header/components/BookingProcess/BookingProcess.skeleton.js +52 -0
  35. package/build/components/Header/components/BookingProcess/BookingProcess.skeleton.js.map +1 -0
  36. package/build/components/Rates/Rates.Skeleton.js +92 -77
  37. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  38. package/build/components/Rates/Rates.js +3 -3
  39. package/build/components/Rates/Rates.js.map +1 -1
  40. package/build/components/Rates/components/Filters/Filters.Button.js +13 -1
  41. package/build/components/Rates/components/Filters/Filters.Button.js.map +1 -1
  42. package/build/components/Session/Session.Login.js +3 -4
  43. package/build/components/Session/Session.Login.js.map +1 -1
  44. package/build/components/__shared__/BookingDates/BookingDates.l10n.js +2 -2
  45. package/build/components/__shared__/BookingDates/BookingDates.l10n.js.map +1 -1
  46. package/build/components/__shared__/Field/Field.js +25 -7
  47. package/build/components/__shared__/Field/Field.js.map +1 -1
  48. package/build/components/__shared__/Field/Field.module.css +4 -0
  49. package/build/components/__shared__/Footer/Footer.js +7 -2
  50. package/build/components/__shared__/Footer/Footer.js.map +1 -1
  51. package/build/components/__shared__/SelectEnvironment/SelectEnvironment.js +11 -5
  52. package/build/components/__shared__/SelectEnvironment/SelectEnvironment.js.map +1 -1
  53. package/build/components/__shared__/SelectEnvironment/SelectEnvironment.module.css +4 -0
  54. package/build/components/__shared__/SelectEnvironment/SelectEnvironment.skeleton.js +30 -0
  55. package/build/components/__shared__/SelectEnvironment/SelectEnvironment.skeleton.js.map +1 -0
  56. package/build/components/__shared__/Skeleton/Skeleton.js +18 -6
  57. package/build/components/__shared__/Skeleton/Skeleton.js.map +1 -1
  58. package/build/components/__shared__/Skeleton/Skeleton.module.css +36 -19
  59. package/build/components/helpers/getAccommodationLabel.js +1 -1
  60. package/build/components/helpers/getAccommodationLabel.js.map +1 -1
  61. package/build/index.js +3 -2
  62. package/build/index.js.map +1 -1
  63. package/package.json +1 -1
package/build/Core.js CHANGED
@@ -23,8 +23,7 @@ const ghosts = {};
23
23
  const Core = _ref => {
24
24
  let {
25
25
  children,
26
- components = [],
27
- skeleton = false
26
+ components = []
28
27
  } = _ref;
29
28
  const {
30
29
  isMobile
@@ -38,6 +37,7 @@ const Core = _ref => {
38
37
  id
39
38
  } = {},
40
39
  locale = _locale.DEFAULT_LOCALE,
40
+ skeleton = false,
41
41
  ...store
42
42
  }
43
43
  } = (0, _dataSources.useStore)();
@@ -117,7 +117,6 @@ const Core = _ref => {
117
117
  dangerousChildren: contents[index],
118
118
  el,
119
119
  ghost: ghosts[index],
120
- skeleton,
121
120
  ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined
122
121
  }), el);
123
122
  })), children);
@@ -128,7 +127,6 @@ Core.propTypes = {
128
127
  components: _propTypes.default.arrayOf(_propTypes.default.shape({
129
128
  component: _propTypes.default.oneOf(Object.keys(_components.COMPONENTS)),
130
129
  el: _propTypes.default.any
131
- })),
132
- skeleton: _propTypes.default.bool
130
+ }))
133
131
  };
134
132
  //# sourceMappingURL=Core.js.map
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","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","contents","ghosts","Core","_ref","children","components","skeleton","isMobile","useDevice","value","club","currency","hotel","id","locale","DEFAULT_LOCALE","store","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","fetchDictionary","Event","subscribe","EVENT","INTENT_CURRENCY","handleIntentCurrency","INTENT_LOCALE","handleIntentLocale","unsubscribe","_ref2","_ref3","language","split","getClubUrl","themeDirection","arguments","length","cached","next","createElement","LocaleProvider","Fragment","Notifications","filter","desktop","mobile","map","el","component","props","index","getGhost","getContents","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","dangerousChildren","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 { getClubUrl, getContents, getGhost, sanitizeComponent, themeDirection } from './helpers';\n\nconst contents = {};\nconst ghosts = {};\n\nconst Core = ({ children, components = [], skeleton = false }) => {\n const { isMobile } = useDevice();\n const {\n set,\n value: { club, currency, hotel: { id } = {}, locale = DEFAULT_LOCALE, ...store },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n if (skeleton) return;\n\n fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n\n return () => {\n Event.unsubscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [store]);\n\n const handleIntentCurrency = ({ currency }) => {\n set({ currency });\n };\n\n const handleIntentLocale = async ({ locale }) => {\n const [language] = locale.split('-');\n\n set({\n club: { ...club, ...(await getClubUrl({ id, language })) },\n language,\n locale,\n });\n\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const fetchDictionary = async (locale = DEFAULT_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 {!skeleton && <Notifications />}\n\n {components\n .filter(\n ({ desktop, mobile } = {}) =>\n (isMobile && (mobile === undefined || mobile === true) && desktop !== true) ||\n (!isMobile && (desktop === undefined || desktop === true) && mobile !== true),\n )\n .map(({ el, component, ...props } = {}, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n if (!contents[index]) contents[index] = getContents(el);\n sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren: contents[index],\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","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","contents","ghosts","Core","_ref","children","components","isMobile","useDevice","value","club","currency","hotel","id","locale","DEFAULT_LOCALE","skeleton","store","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","fetchDictionary","Event","subscribe","EVENT","INTENT_CURRENCY","handleIntentCurrency","INTENT_LOCALE","handleIntentLocale","unsubscribe","_ref2","_ref3","language","split","getClubUrl","themeDirection","arguments","length","cached","next","createElement","LocaleProvider","Fragment","Notifications","filter","desktop","mobile","map","el","component","props","index","getGhost","getContents","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","dangerousChildren","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","keys","any"],"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 { getClubUrl, getContents, getGhost, sanitizeComponent, themeDirection } from './helpers';\n\nconst contents = {};\nconst ghosts = {};\n\nconst Core = ({ children, components = [] }) => {\n const { isMobile } = useDevice();\n const {\n set,\n value: { club, currency, hotel: { id } = {}, locale = DEFAULT_LOCALE, skeleton = false, ...store },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n if (skeleton) return;\n\n fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n\n return () => {\n Event.unsubscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [store]);\n\n const handleIntentCurrency = ({ currency }) => {\n set({ currency });\n };\n\n const handleIntentLocale = async ({ locale }) => {\n const [language] = locale.split('-');\n\n set({\n club: { ...club, ...(await getClubUrl({ id, language })) },\n language,\n locale,\n });\n\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const fetchDictionary = async (locale = DEFAULT_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 {!skeleton && <Notifications />}\n\n {components\n .filter(\n ({ desktop, mobile } = {}) =>\n (isMobile && (mobile === undefined || mobile === true) && desktop !== true) ||\n (!isMobile && (desktop === undefined || desktop === true) && mobile !== true),\n )\n .map(({ el, component, ...props } = {}, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n if (!contents[index]) contents[index] = getContents(el);\n sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren: contents[index],\n el,\n ghost: ghosts[index],\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};\n\nexport { Core };\n"],"mappings":"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"}
@@ -21,7 +21,6 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
21
21
  const BannerLoyalty = _ref => {
22
22
  let {
23
23
  clubConditions,
24
- skeleton,
25
24
  ...others
26
25
  } = _ref;
27
26
  const {
@@ -43,7 +42,8 @@ const BannerLoyalty = _ref => {
43
42
  } = {},
44
43
  discount
45
44
  } = {},
46
- session
45
+ session,
46
+ skeleton = false
47
47
  }
48
48
  } = (0, _dataSources.useStore)();
49
49
  const [expanded, setExpanded] = (0, _react.useState)(false);
@@ -179,7 +179,6 @@ const BannerLoyalty = _ref => {
179
179
  exports.BannerLoyalty = BannerLoyalty;
180
180
  BannerLoyalty.displayName = 'Mirai:Core:BannerLoyalty';
181
181
  BannerLoyalty.propTypes = {
182
- clubConditions: _propTypes.default.string,
183
- skeleton: _propTypes.default.bool
182
+ clubConditions: _propTypes.default.string
184
183
  };
185
184
  //# sourceMappingURL=BannerLoyalty.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerLoyalty.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BannerLoyalty","_BannerLoyalty2","style","_BannerLoyalty3","_helpers","_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","BannerLoyalty","_ref","clubConditions","skeleton","others","isDesktop","isMobile","useDevice","locale","stateLocale","translate","useLocale","value","club","banner","benefits","description","title","url","discount","session","useStore","expanded","setExpanded","useState","scrollIndex","setScrollIndex","clubDiscount","setClubDiscount","useEffect","callback","nextClubDiscount","Event","subscribe","EVENT","RATES_FILTER_CLUB","unsubscribe","publish","METRICS","id","handleExpanded","handlePressBenefit","index","handlePressFilter","Filter","createElement","View","row","className","filter","Text","action","medium","L10N","LABEL_ONLY_MEMBERS","Switch","checked","name","onChange","buttonProps","secondary","squared","rounded","lastBenefit","getNormalizedLocale","testId","container","highlight","bold","brand","headline","level","DEFAULT_LOCALE","small","Fragment","Action","href","underline","textInline","ACTION_MORE_INFO","LABEL_CLUB_CONDITIONS","conditions","ACTION_CLUB_VIEW_CONDITIONS","Button","transparent","onPress","Icon","ICON","EXPAND_LESS","EXPAND_MORE","wide","LEFT","React","ScrollView","horizontal","scrollTo","BENEFIT_MIN_WIDTH","list","map","icon","undefined","accent","AMENITY","REPLAY","RIGHT","exports","displayName","propTypes","PropTypes","string","bool"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, ScrollView, Switch, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { DEFAULT_LOCALE, BENEFIT_MIN_WIDTH } from './BannerLoyalty.constants';\nimport { L10N } from './BannerLoyalty.l10n';\nimport * as style from './BannerLoyalty.module.css';\nimport Skeleton from './BannerLoyalty.skeleton';\nimport { EVENT, getNormalizedLocale, ICON } from '../helpers';\n\nconst BannerLoyalty = ({ clubConditions, skeleton, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { locale: stateLocale, translate } = useLocale();\n const {\n value: { club: { banner: { benefits = [], description = {}, title, url } = {}, discount } = {}, session },\n } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n const [scrollIndex, setScrollIndex] = useState(0);\n const [clubDiscount, setClubDiscount] = useState(discount);\n\n useEffect(() => {\n const callback = (nextClubDiscount) => setClubDiscount(nextClubDiscount);\n\n Event.subscribe(EVENT.RATES_FILTER_CLUB, callback);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, callback);\n }, []);\n\n useEffect(() => {\n if (!session && title && benefits.length > 0) Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:RENDER' });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleExpanded = () => {\n if (!expanded) Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:EXPAND_BENEFITS' });\n setExpanded(!expanded);\n };\n\n const handlePressBenefit = (index) => {\n setScrollIndex(index);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:BUTTON_BENEFITS' });\n };\n\n const handlePressFilter = (value) => {\n Event.publish(EVENT.RATES_FILTER_CLUB, value);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:CLUBDISCOUNT', value });\n };\n\n const Filter = () => (\n <View row className={style.filter}>\n <Text action medium>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n <Switch checked={clubDiscount} name={`switch`} onChange={handlePressFilter} />\n </View>\n );\n\n const buttonProps = { secondary: true, squared: true, rounded: true };\n const lastBenefit = scrollIndex === benefits.length - 4;\n const locale = getNormalizedLocale(stateLocale);\n\n return skeleton && !session ? (\n <Skeleton />\n ) : !session && title && benefits.length > 0 ? (\n <View testId={others.testId} className={[style.container, others.className]}>\n <View row className={style.highlight}>\n <View>\n <Text bold brand headline level={isDesktop ? 2 : 3} className={style.title}>\n {title[locale] || title[DEFAULT_LOCALE]}\n </Text>\n <Text action={isDesktop} small={!isDesktop}>\n {description[locale] || description[DEFAULT_LOCALE]}\n {url && (\n <>\n {' '}\n <Action\n action={isDesktop}\n bold\n small={!isDesktop}\n href={url}\n target=\"_blank\"\n underline\n className={style.textInline}\n >\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n )}\n </Text>\n {clubConditions && (\n <Text action={isDesktop} small={!isDesktop}>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action\n action={isDesktop}\n small={!isDesktop}\n href={clubConditions}\n target=\"_blank\"\n underline\n className={style.textInline}\n >\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n )}\n </View>\n\n {isMobile ? (\n <Button small squared transparent onPress={handleExpanded}>\n <Icon value={expanded ? ICON.EXPAND_LESS : ICON.EXPAND_MORE} />\n </Button>\n ) : (\n <Filter />\n )}\n </View>\n\n {(!isMobile || expanded) && (\n <View row wide>\n {!isMobile && scrollIndex !== 0 && (\n <Button {...buttonProps} onPress={() => handlePressBenefit(scrollIndex - 1)}>\n <Icon value={ICON.LEFT} />\n </Button>\n )}\n\n {React.createElement(\n isMobile ? View : ScrollView,\n {\n ...(!isMobile ? { horizontal: !isMobile, scrollTo: scrollIndex * BENEFIT_MIN_WIDTH } : {}),\n className: style.list,\n },\n benefits.map(({ description = {}, icon } = {}, index) => (\n <View row key={index}>\n <Icon accent headline level={!isDesktop ? 3 : 2} value={ICON[icon] || ICON.AMENITY} />\n <Text action={isDesktop} small={!isDesktop}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n )),\n )}\n\n {!isMobile && benefits.length > 4 && (\n <Button {...buttonProps} onPress={() => handlePressBenefit(lastBenefit ? 0 : scrollIndex + 1)}>\n <Icon value={lastBenefit ? ICON.REPLAY : ICON.RIGHT} />\n </Button>\n )}\n </View>\n )}\n\n {isMobile && <Filter />}\n </View>\n ) : null;\n};\n\nBannerLoyalty.displayName = 'Mirai:Core:BannerLoyalty';\n\nBannerLoyalty.propTypes = {\n clubConditions: PropTypes.string,\n skeleton: PropTypes.bool,\n};\n\nexport { BannerLoyalty };\n"],"mappings":"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"}
1
+ {"version":3,"file":"BannerLoyalty.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BannerLoyalty","_BannerLoyalty2","style","_BannerLoyalty3","_helpers","_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","BannerLoyalty","_ref","clubConditions","others","isDesktop","isMobile","useDevice","locale","stateLocale","translate","useLocale","value","club","banner","benefits","description","title","url","discount","session","skeleton","useStore","expanded","setExpanded","useState","scrollIndex","setScrollIndex","clubDiscount","setClubDiscount","useEffect","callback","nextClubDiscount","Event","subscribe","EVENT","RATES_FILTER_CLUB","unsubscribe","publish","METRICS","id","handleExpanded","handlePressBenefit","index","handlePressFilter","Filter","createElement","View","row","className","filter","Text","action","medium","L10N","LABEL_ONLY_MEMBERS","Switch","checked","name","onChange","buttonProps","secondary","squared","rounded","lastBenefit","getNormalizedLocale","testId","container","highlight","bold","brand","headline","level","DEFAULT_LOCALE","small","Fragment","Action","href","underline","textInline","ACTION_MORE_INFO","LABEL_CLUB_CONDITIONS","conditions","ACTION_CLUB_VIEW_CONDITIONS","Button","transparent","onPress","Icon","ICON","EXPAND_LESS","EXPAND_MORE","wide","LEFT","React","ScrollView","horizontal","scrollTo","BENEFIT_MIN_WIDTH","list","map","icon","undefined","accent","AMENITY","REPLAY","RIGHT","exports","displayName","propTypes","PropTypes","string"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, ScrollView, Switch, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { DEFAULT_LOCALE, BENEFIT_MIN_WIDTH } from './BannerLoyalty.constants';\nimport { L10N } from './BannerLoyalty.l10n';\nimport * as style from './BannerLoyalty.module.css';\nimport Skeleton from './BannerLoyalty.skeleton';\nimport { EVENT, getNormalizedLocale, ICON } from '../helpers';\n\nconst BannerLoyalty = ({ clubConditions, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { locale: stateLocale, translate } = useLocale();\n const {\n value: {\n club: { banner: { benefits = [], description = {}, title, url } = {}, discount } = {},\n session,\n skeleton = false,\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(false);\n const [scrollIndex, setScrollIndex] = useState(0);\n const [clubDiscount, setClubDiscount] = useState(discount);\n\n useEffect(() => {\n const callback = (nextClubDiscount) => setClubDiscount(nextClubDiscount);\n\n Event.subscribe(EVENT.RATES_FILTER_CLUB, callback);\n\n return () => Event.unsubscribe(EVENT.RATES_FILTER_CLUB, callback);\n }, []);\n\n useEffect(() => {\n if (!session && title && benefits.length > 0) Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:RENDER' });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleExpanded = () => {\n if (!expanded) Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:EXPAND_BENEFITS' });\n setExpanded(!expanded);\n };\n\n const handlePressBenefit = (index) => {\n setScrollIndex(index);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:BUTTON_BENEFITS' });\n };\n\n const handlePressFilter = (value) => {\n Event.publish(EVENT.RATES_FILTER_CLUB, value);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:CLUBDISCOUNT', value });\n };\n\n const Filter = () => (\n <View row className={style.filter}>\n <Text action medium>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n <Switch checked={clubDiscount} name={`switch`} onChange={handlePressFilter} />\n </View>\n );\n\n const buttonProps = { secondary: true, squared: true, rounded: true };\n const lastBenefit = scrollIndex === benefits.length - 4;\n const locale = getNormalizedLocale(stateLocale);\n\n return skeleton && !session ? (\n <Skeleton />\n ) : !session && title && benefits.length > 0 ? (\n <View testId={others.testId} className={[style.container, others.className]}>\n <View row className={style.highlight}>\n <View>\n <Text bold brand headline level={isDesktop ? 2 : 3} className={style.title}>\n {title[locale] || title[DEFAULT_LOCALE]}\n </Text>\n <Text action={isDesktop} small={!isDesktop}>\n {description[locale] || description[DEFAULT_LOCALE]}\n {url && (\n <>\n {' '}\n <Action\n action={isDesktop}\n bold\n small={!isDesktop}\n href={url}\n target=\"_blank\"\n underline\n className={style.textInline}\n >\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n )}\n </Text>\n {clubConditions && (\n <Text action={isDesktop} small={!isDesktop}>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action\n action={isDesktop}\n small={!isDesktop}\n href={clubConditions}\n target=\"_blank\"\n underline\n className={style.textInline}\n >\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n )}\n </View>\n\n {isMobile ? (\n <Button small squared transparent onPress={handleExpanded}>\n <Icon value={expanded ? ICON.EXPAND_LESS : ICON.EXPAND_MORE} />\n </Button>\n ) : (\n <Filter />\n )}\n </View>\n\n {(!isMobile || expanded) && (\n <View row wide>\n {!isMobile && scrollIndex !== 0 && (\n <Button {...buttonProps} onPress={() => handlePressBenefit(scrollIndex - 1)}>\n <Icon value={ICON.LEFT} />\n </Button>\n )}\n\n {React.createElement(\n isMobile ? View : ScrollView,\n {\n ...(!isMobile ? { horizontal: !isMobile, scrollTo: scrollIndex * BENEFIT_MIN_WIDTH } : {}),\n className: style.list,\n },\n benefits.map(({ description = {}, icon } = {}, index) => (\n <View row key={index}>\n <Icon accent headline level={!isDesktop ? 3 : 2} value={ICON[icon] || ICON.AMENITY} />\n <Text action={isDesktop} small={!isDesktop}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n )),\n )}\n\n {!isMobile && benefits.length > 4 && (\n <Button {...buttonProps} onPress={() => handlePressBenefit(lastBenefit ? 0 : scrollIndex + 1)}>\n <Icon value={lastBenefit ? ICON.REPLAY : ICON.RIGHT} />\n </Button>\n )}\n </View>\n )}\n\n {isMobile && <Filter />}\n </View>\n ) : null;\n};\n\nBannerLoyalty.displayName = 'Mirai:Core:BannerLoyalty';\n\nBannerLoyalty.propTypes = {\n clubConditions: PropTypes.string,\n};\n\nexport { BannerLoyalty };\n"],"mappings":"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"}
@@ -17,32 +17,33 @@ const BannerLoyaltySkeleton = _ref => {
17
17
  isMobile
18
18
  } = (0, _ui.useDevice)();
19
19
  return /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, others, {
20
- color: "base",
21
- style: {
22
- border: 'solid 1px var(--mirai-ui-content-border)'
23
- }
24
- }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
20
+ base: true
21
+ }), /*#__PURE__*/_react.default.createElement(_ui.View, {
25
22
  color: "accent",
26
23
  row: true,
27
24
  style: {
28
- borderBottom: 'solid 1px var(--mirai-ui-content-border)',
25
+ borderBottom: 'solid 1px var(--mirai-ui-content-background)',
29
26
  justifyContent: 'space-between',
30
- padding: '1rem'
27
+ padding: 'var(--mirai-ui-space-M)'
31
28
  }
32
29
  }, /*#__PURE__*/_react.default.createElement(_ui.View, {
33
30
  style: {
34
31
  gap: '0.25rem'
35
32
  }
36
33
  }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
37
- headline: true,
38
- level: isMobile ? 2 : 1
39
- }, "Banner Loyalty"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
40
- action: isMobile
41
- }, "Choose CLUB MEMBER rate, join and enjoy Web Bonus, special benefits for members!")), !isMobile && /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, null, "See loyalty benefits CHECK")), /*#__PURE__*/_react.default.createElement(_ui.View, {
42
- row: !isMobile,
34
+ headline: !isMobile,
35
+ words: 2
36
+ }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
37
+ action: !isMobile,
38
+ small: isMobile,
39
+ words: 13
40
+ })), !isMobile && /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
41
+ words: 4
42
+ })), !isMobile && /*#__PURE__*/_react.default.createElement(_ui.View, {
43
+ row: true,
43
44
  style: {
44
- gap: isMobile ? '1rem' : '4rem',
45
- padding: '1.5rem 1rem'
45
+ gap: '4rem',
46
+ padding: '1.5rem var(--mirai-ui-space-M)'
46
47
  },
47
48
  wide: true
48
49
  }, Array.from({
@@ -51,27 +52,26 @@ const BannerLoyaltySkeleton = _ref => {
51
52
  row: true,
52
53
  key: index,
53
54
  style: {
54
- gap: '1rem'
55
+ gap: 'var(--mirai-ui-space-M)'
55
56
  }
56
57
  }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
57
- style: isMobile ? {
58
- minHeight: '1rem',
59
- minWidth: '1rem'
60
- } : {
61
- minHeight: '2rem',
62
- minWidth: '2rem'
63
- }
58
+ icon: true
64
59
  }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
65
60
  action: !isMobile,
66
- small: isMobile
67
- }, "5$ reward on your web bookings guaranteed")))), isMobile && /*#__PURE__*/_react.default.createElement(_ui.View, {
61
+ small: isMobile,
62
+ words: 7
63
+ })))), isMobile && /*#__PURE__*/_react.default.createElement(_ui.View, {
68
64
  row: true,
69
65
  style: {
70
- borderTop: 'solid 1px var(--mirai-ui-content-border)',
71
66
  justifyContent: 'space-between',
72
- padding: '1rem'
67
+ padding: 'var(--mirai-ui-space-M)'
73
68
  }
74
- }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, null, "See loyalty benefits CHECK"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, null, "CHECK")));
69
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
70
+ action: true,
71
+ words: 4
72
+ }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
73
+ icon: true
74
+ })));
75
75
  };
76
76
  BannerLoyaltySkeleton.displayName = 'Mirai:Core:BannerLoyalty:Skeleton';
77
77
  BannerLoyaltySkeleton.propTypes = {};
@@ -1 +1 @@
1
- {"version":3,"file":"BannerLoyalty.skeleton.js","names":["_ui","require","_react","_interopRequireDefault","_shared__","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","BannerLoyaltySkeleton","_ref","others","isMobile","useDevice","createElement","Skeleton","color","style","border","row","borderBottom","justifyContent","padding","View","gap","headline","level","action","wide","Array","from","map","_","index","minHeight","minWidth","small","borderTop","displayName","propTypes","_default","exports"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.skeleton.jsx"],"sourcesContent":["import { useDevice, View } from '@mirai/ui';\nimport React from 'react';\n\nimport { Skeleton } from '../__shared__';\n\nconst BannerLoyaltySkeleton = ({ ...others }) => {\n const { isMobile } = useDevice();\n\n return (\n <Skeleton {...others} color=\"base\" style={{ border: 'solid 1px var(--mirai-ui-content-border)' }}>\n <Skeleton\n color=\"accent\"\n row\n style={{\n borderBottom: 'solid 1px var(--mirai-ui-content-border)',\n justifyContent: 'space-between',\n padding: '1rem',\n }}\n >\n <View style={{ gap: '0.25rem' }}>\n <Skeleton headline level={isMobile ? 2 : 1}>\n Banner Loyalty\n </Skeleton>\n <Skeleton action={isMobile}>\n Choose CLUB MEMBER rate, join and enjoy Web Bonus, special benefits for members!\n </Skeleton>\n </View>\n {!isMobile && <Skeleton>See loyalty benefits CHECK</Skeleton>}\n </Skeleton>\n\n <View row={!isMobile} style={{ gap: isMobile ? '1rem' : '4rem', padding: '1.5rem 1rem' }} wide>\n {Array.from({ length: 4 }).map((_, index) => (\n <View row key={index} style={{ gap: '1rem' }}>\n <Skeleton\n style={isMobile ? { minHeight: '1rem', minWidth: '1rem' } : { minHeight: '2rem', minWidth: '2rem' }}\n />\n <Skeleton action={!isMobile} small={isMobile}>\n 5$ reward on your web bookings guaranteed\n </Skeleton>\n </View>\n ))}\n </View>\n\n {isMobile && (\n <View\n row\n style={{\n borderTop: 'solid 1px var(--mirai-ui-content-border)',\n justifyContent: 'space-between',\n padding: '1rem',\n }}\n >\n <Skeleton>See loyalty benefits CHECK</Skeleton>\n <Skeleton>CHECK</Skeleton>\n </View>\n )}\n </Skeleton>\n );\n};\n\nBannerLoyaltySkeleton.displayName = 'Mirai:Core:BannerLoyalty:Skeleton';\n\nBannerLoyaltySkeleton.propTypes = {};\n\nexport default BannerLoyaltySkeleton;\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AAAyC,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAEzC,MAAMQ,qBAAqB,GAAGC,IAAA,IAAmB;EAAA,IAAlB;IAAE,GAAGC;EAAO,CAAC,GAAAD,IAAA;EAC1C,MAAM;IAAEE;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAEhC,oBACExB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ,EAAApB,QAAA,KAAKgB,MAAM;IAAEK,KAAK,EAAC,MAAM;IAACC,KAAK,EAAE;MAAEC,MAAM,EAAE;IAA2C;EAAE,iBAC/F7B,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IACPC,KAAK,EAAC,QAAQ;IACdG,GAAG;IACHF,KAAK,EAAE;MACLG,YAAY,EAAE,0CAA0C;MACxDC,cAAc,EAAE,eAAe;MAC/BC,OAAO,EAAE;IACX;EAAE,gBAEFjC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAoC,IAAI;IAACN,KAAK,EAAE;MAAEO,GAAG,EAAE;IAAU;EAAE,gBAC9BnC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACU,QAAQ;IAACC,KAAK,EAAEd,QAAQ,GAAG,CAAC,GAAG;EAAE,GAAC,gBAElC,CAAC,eACXvB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACY,MAAM,EAAEf;EAAS,GAAC,kFAElB,CACN,CAAC,EACN,CAACA,QAAQ,iBAAIvB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ,QAAC,4BAAoC,CACpD,CAAC,eAEX1B,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAoC,IAAI;IAACJ,GAAG,EAAE,CAACP,QAAS;IAACK,KAAK,EAAE;MAAEO,GAAG,EAAEZ,QAAQ,GAAG,MAAM,GAAG,MAAM;MAAEU,OAAO,EAAE;IAAc,CAAE;IAACM,IAAI;EAAA,GAC3FC,KAAK,CAACC,IAAI,CAAC;IAAE5B,MAAM,EAAE;EAAE,CAAC,CAAC,CAAC6B,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,kBACtC5C,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAoC,IAAI;IAACJ,GAAG;IAACf,GAAG,EAAE6B,KAAM;IAAChB,KAAK,EAAE;MAAEO,GAAG,EAAE;IAAO;EAAE,gBAC3CnC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IACPE,KAAK,EAAEL,QAAQ,GAAG;MAAEsB,SAAS,EAAE,MAAM;MAAEC,QAAQ,EAAE;IAAO,CAAC,GAAG;MAAED,SAAS,EAAE,MAAM;MAAEC,QAAQ,EAAE;IAAO;EAAE,CACrG,CAAC,eACF9C,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACY,MAAM,EAAE,CAACf,QAAS;IAACwB,KAAK,EAAExB;EAAS,GAAC,2CAEpC,CACN,CACP,CACG,CAAC,EAENA,QAAQ,iBACPvB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAoC,IAAI;IACHJ,GAAG;IACHF,KAAK,EAAE;MACLoB,SAAS,EAAE,0CAA0C;MACrDhB,cAAc,EAAE,eAAe;MAC/BC,OAAO,EAAE;IACX;EAAE,gBAEFjC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ,QAAC,4BAAoC,CAAC,eAC/C1B,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ,QAAC,OAAe,CACrB,CAEA,CAAC;AAEf,CAAC;AAEDN,qBAAqB,CAAC6B,WAAW,GAAG,mCAAmC;AAEvE7B,qBAAqB,CAAC8B,SAAS,GAAG,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAA/C,OAAA,GAEtBe,qBAAqB"}
1
+ {"version":3,"file":"BannerLoyalty.skeleton.js","names":["_ui","require","_react","_interopRequireDefault","_shared__","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","BannerLoyaltySkeleton","_ref","others","isMobile","useDevice","createElement","Skeleton","base","View","color","row","style","borderBottom","justifyContent","padding","gap","headline","words","action","small","wide","Array","from","map","_","index","icon","displayName","propTypes","_default","exports"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.skeleton.jsx"],"sourcesContent":["import { useDevice, View } from '@mirai/ui';\nimport React from 'react';\n\nimport { Skeleton } from '../__shared__';\n\nconst BannerLoyaltySkeleton = ({ ...others }) => {\n const { isMobile } = useDevice();\n\n return (\n <Skeleton {...others} base>\n <View\n color=\"accent\"\n row\n style={{\n borderBottom: 'solid 1px var(--mirai-ui-content-background)',\n justifyContent: 'space-between',\n padding: 'var(--mirai-ui-space-M)',\n }}\n >\n <View style={{ gap: '0.25rem' }}>\n <Skeleton headline={!isMobile} words={2} />\n <Skeleton action={!isMobile} small={isMobile} words={13} />\n </View>\n {!isMobile && <Skeleton words={4} />}\n </View>\n\n {!isMobile && (\n <View row style={{ gap: '4rem', padding: '1.5rem var(--mirai-ui-space-M)' }} wide>\n {Array.from({ length: 4 }).map((_, index) => (\n <View row key={index} style={{ gap: 'var(--mirai-ui-space-M)' }}>\n <Skeleton icon />\n <Skeleton action={!isMobile} small={isMobile} words={7} />\n </View>\n ))}\n </View>\n )}\n\n {isMobile && (\n <View row style={{ justifyContent: 'space-between', padding: 'var(--mirai-ui-space-M)' }}>\n <Skeleton action words={4} />\n <Skeleton icon />\n </View>\n )}\n </Skeleton>\n );\n};\n\nBannerLoyaltySkeleton.displayName = 'Mirai:Core:BannerLoyalty:Skeleton';\n\nBannerLoyaltySkeleton.propTypes = {};\n\nexport default BannerLoyaltySkeleton;\n"],"mappings":"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"}
@@ -8,7 +8,6 @@ var _dataSources = require("@mirai/data-sources");
8
8
  var _locale = require("@mirai/locale");
9
9
  var _services = require("@mirai/services");
10
10
  var _ui = require("@mirai/ui");
11
- var _propTypes = _interopRequireDefault(require("prop-types"));
12
11
  var _react = _interopRequireWildcard(require("react"));
13
12
  var _Booking = require("./Booking.constants");
14
13
  var _Booking2 = require("./Booking.l10n");
@@ -20,12 +19,11 @@ var _Booking4 = require("./partials/Booking.Payment");
20
19
  var _shared__ = require("../__shared__");
21
20
  var _Header = require("../Header");
22
21
  var _helpers = 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 }; }
26
25
  const Booking = _ref => {
27
26
  let {
28
- skeleton,
29
27
  ...others
30
28
  } = _ref;
31
29
  const {
@@ -41,6 +39,7 @@ const Booking = _ref => {
41
39
  hotel: {
42
40
  url
43
41
  } = {},
42
+ skeleton = false,
44
43
  urlParams: {
45
44
  code: token,
46
45
  reservationCode: id,
@@ -183,7 +182,5 @@ const Booking = _ref => {
183
182
  };
184
183
  exports.Booking = Booking;
185
184
  Booking.displayName = 'Mirai:Core:Booking';
186
- Booking.propTypes = {
187
- skeleton: _propTypes.default.bool
188
- };
185
+ Booking.propTypes = {};
189
186
  //# sourceMappingURL=Booking.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Booking.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Booking","_Booking2","style","_Booking3","_components","_partials","_Booking4","_shared__","_Header","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Booking","_ref","skeleton","others","isDesktop","isMobile","useDevice","locale","translate","useLocale","value","hotel","url","urlParams","code","token","reservationCode","id","hasToTracking","tracking","useStore","action","setAction","useState","dataSource","setDataSource","expanded","setExpanded","responseError","setResponseError","useEffect","Event","publish","EVENT","METRICS","ServiceBooking","catch","error","event","state","STATE","CANCELLED","BOOKING_CANCEL","BOOKING_RESPONSE","response","handleMenuPress","ACTION","PRINT","setTimeout","window","print","handleBackHome","payload","location","href","hotelUrl","origin","payment","undefined","isCancelled","createElement","Fragment","Header","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","row","content","POS_ERROR","Notification","info","COMPLETED","small","success","CONFIRMED","warning","POSTPONED","wide","L10N","NOTIFICATION","Hotelverse","BookingPayment","onError","BookingSummary","box","showBasePrice","Information","BookingDetails","BookingTerms","side","noPrint","Menu","onPress","Modal","onChange","_ref2","onClose","large","NOTIFICATION_ERROR","ERROR","GENERIC","Action","paragraph","underline","ACTION_BACK_HOME","Footer","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Booking/Booking.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } 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 { ACTION, ERROR, STATE } from './Booking.constants';\nimport { L10N } from './Booking.l10n';\nimport * as style from './Booking.module.css';\nimport Skeleton from './Booking.skeleton';\nimport { Hotelverse } from './components';\nimport { Information, Menu, Modal } from './partials';\nimport { BookingPayment } from './partials/Booking.Payment';\nimport { BookingDetails, BookingSummary, BookingTerms, Footer } from '../__shared__';\nimport { Header } from '../Header';\nimport { EVENT } from '../helpers';\n\nconst Booking = ({ skeleton, ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { locale, translate } = useLocale();\n const {\n value: { hotel: { url } = {}, urlParams: { code: token, reservationCode: id, hasToTracking: tracking } = {} },\n } = useStore();\n\n const [action, setAction] = useState();\n const [dataSource, setDataSource] = useState();\n const [expanded, setExpanded] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => Event.publish(EVENT.METRICS, { id: 'BOOKING:RENDER' }), []);\n\n useEffect(() => {\n if (skeleton || !id || !token) return;\n\n (async () => {\n setDataSource(\n await ServiceBooking.get({ id, locale, token, tracking, url }).catch((error) => setResponseError(error)),\n );\n setAction();\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [id, locale]);\n\n useEffect(() => {\n if (!dataSource || !dataSource.tracking) return;\n\n const event = dataSource.state === STATE.CANCELLED ? EVENT.BOOKING_CANCEL : EVENT.BOOKING_RESPONSE;\n Event.publish(event, { event, response: { ...dataSource } });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource?.state]);\n\n const handleMenuPress = (action) => {\n if (action === ACTION.PRINT) {\n setExpanded(true);\n setTimeout(window.print, 10);\n } else {\n setAction(action);\n }\n };\n\n const handleBackHome = () => {\n const { payload } = responseError;\n\n window.location.href = payload?.hotelUrl || window.location.origin;\n };\n\n const { payment, state } = dataSource || {};\n const response = dataSource !== undefined;\n const isCancelled = state === STATE.CANCELLED;\n\n return (\n <>\n <Header />\n\n <View role=\"booking\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <View row={isDesktop} className={style.content}>\n <View>\n {state !== STATE.POS_ERROR && (\n <Notification\n error={isCancelled}\n info={state === STATE.COMPLETED}\n small={isMobile}\n success={state === STATE.CONFIRMED}\n warning={state === STATE.POSTPONED}\n wide\n >\n {translate(L10N.NOTIFICATION[state])}\n <Hotelverse {...dataSource} />\n </Notification>\n )}\n\n {payment && !isCancelled && <BookingPayment {...{ dataSource, onError: setResponseError }} />}\n\n <BookingSummary\n box={!isDesktop}\n dataSource={{ ...dataSource, showBasePrice: true }}\n className={styles(isDesktop && style.print)}\n />\n\n <Information dataSource={dataSource} />\n <BookingDetails {...{ dataSource, expanded }} expanded={isMobile} className={style.box} />\n <BookingTerms dataSource={dataSource} small />\n </View>\n\n <View className={style.side}>\n {isDesktop && (\n <BookingSummary box dataSource={{ ...dataSource, showBasePrice: true }} className={style.noPrint} />\n )}\n\n <Menu dataSource={dataSource} onPress={handleMenuPress} />\n </View>\n </View>\n\n <Modal\n {...{ action, dataSource: { ...dataSource, token } }}\n onChange={({ response: { tracking } = {}, state }) =>\n state && setDataSource({ ...dataSource, tracking, state })\n }\n onClose={() => setAction()}\n />\n </>\n ) : responseError ? (\n <Notification error large className={style.error}>\n {translate(L10N.NOTIFICATION_ERROR[responseError.code] || L10N.NOTIFICATION_ERROR[ERROR.GENERIC])}\n <Action paragraph underline wide onPress={handleBackHome}>\n {translate(L10N.ACTION_BACK_HOME)}\n </Action>\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n\n <Footer />\n </>\n );\n};\n\nBooking.displayName = 'Mirai:Core:Booking';\n\nBooking.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Booking };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAH,uBAAA,CAAAP,OAAA;AACA,IAAAW,SAAA,GAAAN,sBAAA,CAAAL,OAAA;AACA,IAAAY,WAAA,GAAAZ,OAAA;AACA,IAAAa,SAAA,GAAAb,OAAA;AACA,IAAAc,SAAA,GAAAd,OAAA;AACA,IAAAe,SAAA,GAAAf,OAAA;AACA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,QAAA,GAAAjB,OAAA;AAAmC,SAAAkB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAtB,uBAAAkC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAEnC,MAAMC,OAAO,GAAGC,IAAA,IAA6B;EAAA,IAA5B;IAAEC,QAAQ;IAAE,GAAGC;EAAO,CAAC,GAAAF,IAAA;EACtC,MAAM;IAAEG,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAC3C,MAAM;IAAEC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACzC,MAAM;IACJC,KAAK,EAAE;MAAEC,KAAK,EAAE;QAAEC;MAAI,CAAC,GAAG,CAAC,CAAC;MAAEC,SAAS,EAAE;QAAEC,IAAI,EAAEC,KAAK;QAAEC,eAAe,EAAEC,EAAE;QAAEC,aAAa,EAAEC;MAAS,CAAC,GAAG,CAAC;IAAE;EAC9G,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EACtC,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC;EAC9C,MAAM,CAACG,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EAC/C,MAAM,CAACK,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAN,eAAQ,EAAC,CAAC;EAEpD,IAAAO,gBAAS,EAAC,MAAMC,kBAAK,CAACC,OAAO,CAACC,cAAK,CAACC,OAAO,EAAE;IAAEjB,EAAE,EAAE;EAAiB,CAAC,CAAC,EAAE,EAAE,CAAC;EAE3E,IAAAa,gBAAS,EAAC,MAAM;IACd,IAAI5B,QAAQ,IAAI,CAACe,EAAE,IAAI,CAACF,KAAK,EAAE;IAE/B,CAAC,YAAY;MACXU,aAAa,CACX,MAAMU,wBAAc,CAACjD,GAAG,CAAC;QAAE+B,EAAE;QAAEV,MAAM;QAAEQ,KAAK;QAAEI,QAAQ;QAAEP;MAAI,CAAC,CAAC,CAACwB,KAAK,CAAEC,KAAK,IAAKR,gBAAgB,CAACQ,KAAK,CAAC,CACzG,CAAC;MACDf,SAAS,CAAC,CAAC;IACb,CAAC,EAAE,CAAC;IACJ;EACF,CAAC,EAAE,CAACL,EAAE,EAAEV,MAAM,CAAC,CAAC;EAEhB,IAAAuB,gBAAS,EAAC,MAAM;IACd,IAAI,CAACN,UAAU,IAAI,CAACA,UAAU,CAACL,QAAQ,EAAE;IAEzC,MAAMmB,KAAK,GAAGd,UAAU,CAACe,KAAK,KAAKC,cAAK,CAACC,SAAS,GAAGR,cAAK,CAACS,cAAc,GAAGT,cAAK,CAACU,gBAAgB;IAClGZ,kBAAK,CAACC,OAAO,CAACM,KAAK,EAAE;MAAEA,KAAK;MAAEM,QAAQ,EAAE;QAAE,GAAGpB;MAAW;IAAE,CAAC,CAAC;IAC5D;EACF,CAAC,EAAE,CAACA,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEe,KAAK,CAAC,CAAC;EAEvB,MAAMM,eAAe,GAAIxB,MAAM,IAAK;IAClC,IAAIA,MAAM,KAAKyB,eAAM,CAACC,KAAK,EAAE;MAC3BpB,WAAW,CAAC,IAAI,CAAC;MACjBqB,UAAU,CAACC,MAAM,CAACC,KAAK,EAAE,EAAE,CAAC;IAC9B,CAAC,MAAM;MACL5B,SAAS,CAACD,MAAM,CAAC;IACnB;EACF,CAAC;EAED,MAAM8B,cAAc,GAAGA,CAAA,KAAM;IAC3B,MAAM;MAAEC;IAAQ,CAAC,GAAGxB,aAAa;IAEjCqB,MAAM,CAACI,QAAQ,CAACC,IAAI,GAAG,CAAAF,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG,QAAQ,KAAIN,MAAM,CAACI,QAAQ,CAACG,MAAM;EACpE,CAAC;EAED,MAAM;IAAEC,OAAO;IAAElB;EAAM,CAAC,GAAGf,UAAU,IAAI,CAAC,CAAC;EAC3C,MAAMoB,QAAQ,GAAGpB,UAAU,KAAKkC,SAAS;EACzC,MAAMC,WAAW,GAAGpB,KAAK,KAAKC,cAAK,CAACC,SAAS;EAE7C,oBACE3E,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAAA9F,MAAA,CAAAkB,OAAA,CAAA6E,QAAA,qBACE/F,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACpF,OAAA,CAAAsF,MAAM,MAAE,CAAC,eAEVhG,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAoG,IAAI;IAACC,IAAI,EAAC,SAAS;IAACC,MAAM,EAAE9D,MAAM,CAAC8D,MAAO;IAACC,SAAS,EAAE,IAAAC,UAAM,EAACjG,KAAK,CAACkG,SAAS,EAAEjE,MAAM,CAAC+D,SAAS;EAAE,gBAC/FpG,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAA0G,QAAQ;IAACC,aAAa;IAACC,OAAO,EAAE,CAAC3B,QAAQ,IAAI,CAAChB,aAAc;IAACsC,SAAS,EAAEhG,KAAK,CAACsG;EAAS,CAAE,CAAC,EAC1F5B,QAAQ,gBACP9E,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAAA9F,MAAA,CAAAkB,OAAA,CAAA6E,QAAA,qBACE/F,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAoG,IAAI;IAACU,GAAG,EAAErE,SAAU;IAAC8D,SAAS,EAAEhG,KAAK,CAACwG;EAAQ,gBAC7C5G,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAoG,IAAI,QACFxB,KAAK,KAAKC,cAAK,CAACmC,SAAS,iBACxB7G,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAiH,YAAY;IACXvC,KAAK,EAAEsB,WAAY;IACnBkB,IAAI,EAAEtC,KAAK,KAAKC,cAAK,CAACsC,SAAU;IAChCC,KAAK,EAAE1E,QAAS;IAChB2E,OAAO,EAAEzC,KAAK,KAAKC,cAAK,CAACyC,SAAU;IACnCC,OAAO,EAAE3C,KAAK,KAAKC,cAAK,CAAC2C,SAAU;IACnCC,IAAI;EAAA,GAEH5E,SAAS,CAAC6E,cAAI,CAACC,YAAY,CAAC/C,KAAK,CAAC,CAAC,eACpCzE,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACxF,WAAA,CAAAmH,UAAU,EAAK/D,UAAa,CACjB,CACf,EAEAiC,OAAO,IAAI,CAACE,WAAW,iBAAI7F,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACtF,SAAA,CAAAkH,cAAc;IAAOhE,UAAU;IAAEiE,OAAO,EAAE5D;EAAgB,CAAK,CAAC,eAE7F/D,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACrF,SAAA,CAAAmH,cAAc;IACbC,GAAG,EAAE,CAACvF,SAAU;IAChBoB,UAAU,EAAE;MAAE,GAAGA,UAAU;MAAEoE,aAAa,EAAE;IAAK,CAAE;IACnD1B,SAAS,EAAE,IAAAC,UAAM,EAAC/D,SAAS,IAAIlC,KAAK,CAACgF,KAAK;EAAE,CAC7C,CAAC,eAEFpF,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACvF,SAAA,CAAAwH,WAAW;IAACrE,UAAU,EAAEA;EAAW,CAAE,CAAC,eACvC1D,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACrF,SAAA,CAAAuH,cAAc;IAAOtE,UAAU;IAAEE,QAAQ;IAAIA,QAAQ,EAAErB,QAAS;IAAC6D,SAAS,EAAEhG,KAAK,CAACyH;EAAI,CAAE,CAAC,eAC1F7H,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACrF,SAAA,CAAAwH,YAAY;IAACvE,UAAU,EAAEA,UAAW;IAACuD,KAAK;EAAA,CAAE,CACzC,CAAC,eAEPjH,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAoG,IAAI;IAACG,SAAS,EAAEhG,KAAK,CAAC8H;EAAK,GACzB5F,SAAS,iBACRtC,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACrF,SAAA,CAAAmH,cAAc;IAACC,GAAG;IAACnE,UAAU,EAAE;MAAE,GAAGA,UAAU;MAAEoE,aAAa,EAAE;IAAK,CAAE;IAAC1B,SAAS,EAAEhG,KAAK,CAAC+H;EAAQ,CAAE,CACpG,eAEDnI,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACvF,SAAA,CAAA6H,IAAI;IAAC1E,UAAU,EAAEA,UAAW;IAAC2E,OAAO,EAAEtD;EAAgB,CAAE,CACrD,CACF,CAAC,eAEP/E,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACvF,SAAA,CAAA+H,KAAK;IACE/E,MAAM;IAAEG,UAAU,EAAE;MAAE,GAAGA,UAAU;MAAET;IAAM,CAAC;IAClDsF,QAAQ,EAAEC,KAAA;MAAA,IAAC;QAAE1D,QAAQ,EAAE;UAAEzB;QAAS,CAAC,GAAG,CAAC,CAAC;QAAEoB;MAAM,CAAC,GAAA+D,KAAA;MAAA,OAC/C/D,KAAK,IAAId,aAAa,CAAC;QAAE,GAAGD,UAAU;QAAEL,QAAQ;QAAEoB;MAAM,CAAC,CAAC;IAAA,CAC3D;IACDgE,OAAO,EAAEA,CAAA,KAAMjF,SAAS,CAAC;EAAE,CAC5B,CACD,CAAC,GACDM,aAAa,gBACf9D,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAiH,YAAY;IAACvC,KAAK;IAACmE,KAAK;IAACtC,SAAS,EAAEhG,KAAK,CAACmE;EAAM,GAC9C7B,SAAS,CAAC6E,cAAI,CAACoB,kBAAkB,CAAC7E,aAAa,CAACd,IAAI,CAAC,IAAIuE,cAAI,CAACoB,kBAAkB,CAACC,cAAK,CAACC,OAAO,CAAC,CAAC,eACjG7I,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACjG,GAAA,CAAAiJ,MAAM;IAACC,SAAS;IAACC,SAAS;IAAC1B,IAAI;IAACe,OAAO,EAAEhD;EAAe,GACtD3C,SAAS,CAAC6E,cAAI,CAAC0B,gBAAgB,CAC1B,CACI,CAAC,gBAEfjJ,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACzF,SAAA,CAAAa,OAAQ,MAAE,CAET,CAAC,eAEPlB,MAAA,CAAAkB,OAAA,CAAA4E,aAAA,CAACrF,SAAA,CAAAyI,MAAM,MAAE,CACT,CAAC;AAEP,CAAC;AAACC,OAAA,CAAAjH,OAAA,GAAAA,OAAA;AAEFA,OAAO,CAACkH,WAAW,GAAG,oBAAoB;AAE1ClH,OAAO,CAACmH,SAAS,GAAG;EAClBjH,QAAQ,EAAEkH,kBAAS,CAACC;AACtB,CAAC"}
1
+ {"version":3,"file":"Booking.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Booking","_Booking2","style","_Booking3","_interopRequireDefault","_components","_partials","_Booking4","_shared__","_Header","_helpers","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Booking","_ref","others","isDesktop","isMobile","useDevice","locale","translate","useLocale","value","hotel","url","skeleton","urlParams","code","token","reservationCode","id","hasToTracking","tracking","useStore","action","setAction","useState","dataSource","setDataSource","expanded","setExpanded","responseError","setResponseError","useEffect","Event","publish","EVENT","METRICS","ServiceBooking","catch","error","event","state","STATE","CANCELLED","BOOKING_CANCEL","BOOKING_RESPONSE","response","handleMenuPress","ACTION","PRINT","setTimeout","window","print","handleBackHome","payload","location","href","hotelUrl","origin","payment","undefined","isCancelled","createElement","Fragment","Header","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","row","content","POS_ERROR","Notification","info","COMPLETED","small","success","CONFIRMED","warning","POSTPONED","wide","L10N","NOTIFICATION","Hotelverse","BookingPayment","onError","BookingSummary","box","showBasePrice","Information","BookingDetails","BookingTerms","side","noPrint","Menu","onPress","Modal","onChange","_ref2","onClose","large","NOTIFICATION_ERROR","ERROR","GENERIC","Action","paragraph","underline","ACTION_BACK_HOME","Footer","exports","displayName","propTypes"],"sources":["../../../src/components/Booking/Booking.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { ACTION, ERROR, STATE } from './Booking.constants';\nimport { L10N } from './Booking.l10n';\nimport * as style from './Booking.module.css';\nimport Skeleton from './Booking.skeleton';\nimport { Hotelverse } from './components';\nimport { Information, Menu, Modal } from './partials';\nimport { BookingPayment } from './partials/Booking.Payment';\nimport { BookingDetails, BookingSummary, BookingTerms, Footer } from '../__shared__';\nimport { Header } from '../Header';\nimport { EVENT } from '../helpers';\n\nconst Booking = ({ ...others }) => {\n const { isDesktop, isMobile } = useDevice();\n const { locale, translate } = useLocale();\n const {\n value: {\n hotel: { url } = {},\n skeleton = false,\n urlParams: { code: token, reservationCode: id, hasToTracking: tracking } = {},\n },\n } = useStore();\n\n const [action, setAction] = useState();\n const [dataSource, setDataSource] = useState();\n const [expanded, setExpanded] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => Event.publish(EVENT.METRICS, { id: 'BOOKING:RENDER' }), []);\n\n useEffect(() => {\n if (skeleton || !id || !token) return;\n\n (async () => {\n setDataSource(\n await ServiceBooking.get({ id, locale, token, tracking, url }).catch((error) => setResponseError(error)),\n );\n setAction();\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [id, locale]);\n\n useEffect(() => {\n if (!dataSource || !dataSource.tracking) return;\n\n const event = dataSource.state === STATE.CANCELLED ? EVENT.BOOKING_CANCEL : EVENT.BOOKING_RESPONSE;\n Event.publish(event, { event, response: { ...dataSource } });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource?.state]);\n\n const handleMenuPress = (action) => {\n if (action === ACTION.PRINT) {\n setExpanded(true);\n setTimeout(window.print, 10);\n } else {\n setAction(action);\n }\n };\n\n const handleBackHome = () => {\n const { payload } = responseError;\n\n window.location.href = payload?.hotelUrl || window.location.origin;\n };\n\n const { payment, state } = dataSource || {};\n const response = dataSource !== undefined;\n const isCancelled = state === STATE.CANCELLED;\n\n return (\n <>\n <Header />\n\n <View role=\"booking\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <View row={isDesktop} className={style.content}>\n <View>\n {state !== STATE.POS_ERROR && (\n <Notification\n error={isCancelled}\n info={state === STATE.COMPLETED}\n small={isMobile}\n success={state === STATE.CONFIRMED}\n warning={state === STATE.POSTPONED}\n wide\n >\n {translate(L10N.NOTIFICATION[state])}\n <Hotelverse {...dataSource} />\n </Notification>\n )}\n\n {payment && !isCancelled && <BookingPayment {...{ dataSource, onError: setResponseError }} />}\n\n <BookingSummary\n box={!isDesktop}\n dataSource={{ ...dataSource, showBasePrice: true }}\n className={styles(isDesktop && style.print)}\n />\n\n <Information dataSource={dataSource} />\n <BookingDetails {...{ dataSource, expanded }} expanded={isMobile} className={style.box} />\n <BookingTerms dataSource={dataSource} small />\n </View>\n\n <View className={style.side}>\n {isDesktop && (\n <BookingSummary box dataSource={{ ...dataSource, showBasePrice: true }} className={style.noPrint} />\n )}\n\n <Menu dataSource={dataSource} onPress={handleMenuPress} />\n </View>\n </View>\n\n <Modal\n {...{ action, dataSource: { ...dataSource, token } }}\n onChange={({ response: { tracking } = {}, state }) =>\n state && setDataSource({ ...dataSource, tracking, state })\n }\n onClose={() => setAction()}\n />\n </>\n ) : responseError ? (\n <Notification error large className={style.error}>\n {translate(L10N.NOTIFICATION_ERROR[responseError.code] || L10N.NOTIFICATION_ERROR[ERROR.GENERIC])}\n <Action paragraph underline wide onPress={handleBackHome}>\n {translate(L10N.ACTION_BACK_HOME)}\n </Action>\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n\n <Footer />\n </>\n );\n};\n\nBooking.displayName = 'Mirai:Core:Booking';\n\nBooking.propTypes = {};\n\nexport { Booking };\n"],"mappings":"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"}