@mirai/core 0.3.413 → 0.3.415

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 (49) hide show
  1. package/build/components/BannerLoyalty/BannerLoyalty.constants.js +2 -1
  2. package/build/components/BannerLoyalty/BannerLoyalty.constants.js.map +1 -1
  3. package/build/components/BannerLoyalty/BannerLoyalty.js +3 -3
  4. package/build/components/BannerLoyalty/BannerLoyalty.js.map +1 -1
  5. package/build/components/Header/Header.js +1 -3
  6. package/build/components/Header/Header.js.map +1 -1
  7. package/build/components/Rates/Rates.Header.js +1 -1
  8. package/build/components/Rates/Rates.Header.js.map +1 -1
  9. package/build/components/Rates/Rates.Unavailability.js +1 -1
  10. package/build/components/Rates/Rates.Unavailability.js.map +1 -1
  11. package/build/components/Rates/Rates.js +7 -2
  12. package/build/components/Rates/Rates.js.map +1 -1
  13. package/build/components/Rates/Rates.l10n.js +6 -0
  14. package/build/components/Rates/Rates.l10n.js.map +1 -1
  15. package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +52 -4
  16. package/build/components/Rates/components/CardHotel/CardHotel.js +14 -10
  17. package/build/components/Rates/components/CardHotel/CardHotel.js.map +1 -1
  18. package/build/components/Rates/components/CardHotel/__tests__/__snapshots__/CardHotel.test.js.snap +13 -1
  19. package/build/components/Rates/components/Item/Item.Preview.js +22 -12
  20. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  21. package/build/components/Rates/components/Item/Item.Rates.js +23 -26
  22. package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
  23. package/build/components/Rates/components/Item/Item.Summary.js +2 -2
  24. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
  25. package/build/components/Rates/components/Item/Item.js +20 -0
  26. package/build/components/Rates/components/Item/Item.js.map +1 -1
  27. package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Preview.test.js.snap +3 -0
  28. package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.test.js.snap +3 -0
  29. package/build/components/Rates/components/Item/components/ModalOfferInfo/ModalOfferInfo.js +16 -2
  30. package/build/components/Rates/components/Item/components/ModalOfferInfo/ModalOfferInfo.js.map +1 -1
  31. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js +1 -3
  32. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js.map +1 -1
  33. package/build/components/Rates/components/ModalExtras/ModalExtras.js +3 -0
  34. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -1
  35. package/build/components/Rates/components/ModalMapView/ModalMapView.js +16 -13
  36. package/build/components/Rates/components/ModalMapView/ModalMapView.js.map +1 -1
  37. package/build/components/Rates/components/ModalMapView/__tests__/__snapshots__/ModalMapView.test.js.snap +13 -1
  38. package/build/components/Rates/helpers/getClubInclude.js +16 -0
  39. package/build/components/Rates/helpers/getClubInclude.js.map +1 -0
  40. package/build/components/Rates/helpers/{isClubRate.js → getClubRate.js} +12 -7
  41. package/build/components/Rates/helpers/getClubRate.js.map +1 -0
  42. package/build/components/Rates/helpers/index.js +22 -11
  43. package/build/components/Rates/helpers/index.js.map +1 -1
  44. package/build/components/helpers/constants.js +2 -1
  45. package/build/components/helpers/constants.js.map +1 -1
  46. package/package.json +1 -1
  47. package/public/App.Container.jsx +9 -14
  48. package/public/App.module.css +4 -0
  49. package/build/components/Rates/helpers/isClubRate.js.map +0 -1
@@ -3,7 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.BENEFIT_TIMEOUT = exports.BENEFIT_MIN_WIDTH = void 0;
6
+ exports.DEFAULT_LOCALE = exports.BENEFIT_TIMEOUT = exports.BENEFIT_MIN_WIDTH = void 0;
7
7
  const BENEFIT_MIN_WIDTH = exports.BENEFIT_MIN_WIDTH = 192;
8
8
  const BENEFIT_TIMEOUT = exports.BENEFIT_TIMEOUT = 3000;
9
+ const DEFAULT_LOCALE = exports.DEFAULT_LOCALE = 'en-GB';
9
10
  //# sourceMappingURL=BannerLoyalty.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerLoyalty.constants.js","names":["BENEFIT_MIN_WIDTH","exports","BENEFIT_TIMEOUT"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.constants.js"],"sourcesContent":["const BENEFIT_MIN_WIDTH = 192;\n\nconst BENEFIT_TIMEOUT = 3000;\n\nexport { BENEFIT_MIN_WIDTH, BENEFIT_TIMEOUT };\n"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,GAAG;AAE7B,MAAME,eAAe,GAAAD,OAAA,CAAAC,eAAA,GAAG,IAAI"}
1
+ {"version":3,"file":"BannerLoyalty.constants.js","names":["BENEFIT_MIN_WIDTH","exports","BENEFIT_TIMEOUT","DEFAULT_LOCALE"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.constants.js"],"sourcesContent":["const BENEFIT_MIN_WIDTH = 192;\n\nconst BENEFIT_TIMEOUT = 3000;\n\nconst DEFAULT_LOCALE = 'en-GB';\n\nexport { BENEFIT_MIN_WIDTH, BENEFIT_TIMEOUT, DEFAULT_LOCALE };\n"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,GAAG;AAE7B,MAAME,eAAe,GAAAD,OAAA,CAAAC,eAAA,GAAG,IAAI;AAE5B,MAAMC,cAAc,GAAAF,OAAA,CAAAE,cAAA,GAAG,OAAO"}
@@ -92,10 +92,10 @@ const BannerLoyalty = _ref => {
92
92
  headline: true,
93
93
  level: isMobile ? 2 : 1,
94
94
  className: style.text
95
- }, title[locale] || title[_locale.DEFAULT_LOCALE]), /*#__PURE__*/_react.default.createElement(_ui.Text, {
95
+ }, title[locale] || title[_BannerLoyalty.DEFAULT_LOCALE]), /*#__PURE__*/_react.default.createElement(_ui.Text, {
96
96
  action: isMobile,
97
97
  className: style.text
98
- }, description[locale] || description[_locale.DEFAULT_LOCALE])), /*#__PURE__*/_react.default.createElement(_ui.View, {
98
+ }, description[locale] || description[_BannerLoyalty.DEFAULT_LOCALE])), /*#__PURE__*/_react.default.createElement(_ui.View, {
99
99
  wide: true
100
100
  }, /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
101
101
  horizontal: !isMobile,
@@ -119,7 +119,7 @@ const BannerLoyalty = _ref => {
119
119
  action: !isMobile,
120
120
  small: isMobile,
121
121
  className: style.text
122
- }, description[locale] || description[_locale.DEFAULT_LOCALE]));
122
+ }, description[locale] || description[_BannerLoyalty.DEFAULT_LOCALE]));
123
123
  })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
124
124
  light: true,
125
125
  action: !isMobile,
@@ -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","interval","BannerLoyalty","_ref","clubConditions","skeleton","others","isMobile","useDevice","locale","stateLocale","translate","useLocale","value","club","banner","benefits","description","title","url","discount","session","useStore","scrollIndex","setScrollIndex","useState","useEffect","Event","publish","EVENT","METRICS","id","clearTimeout","setTimeout","BENEFIT_TIMEOUT","handlePressFilter","RATES_FILTER_CLUB","handlePressLogin","LOGIN","visible","getNormalizedLocale","actionProps","action","bold","small","className","textInline","createElement","View","row","testId","container","highlight","Text","brand","headline","level","text","DEFAULT_LOCALE","wide","ScrollView","horizontal","scrollTo","BENEFIT_MIN_WIDTH","list","map","icon","undefined","index","Icon","accent","ICON","AMENITY","light","Fragment","Action","onPress","L10N","LABEL_UNLOCK_EXCLUSIVE_MEMBER","LABEL_CLUB_CONDITIONS","conditions","href","ACTION_CLUB_VIEW_CONDITIONS","LABEL_LOGIN_NOW","login","ACTION_LOGIN","toLowerCase","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","string","bool"],"sources":["../../../src/components/BannerLoyalty/BannerLoyalty.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, useLocale } from '@mirai/locale';\nimport { Action, Icon, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BENEFIT_MIN_WIDTH, BENEFIT_TIMEOUT } 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\nlet interval;\n\nconst BannerLoyalty = ({ clubConditions, skeleton, ...others }) => {\n const { 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 [scrollIndex, setScrollIndex] = useState(0);\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 useEffect(() => {\n clearTimeout(interval);\n if (isMobile || !benefits.length || scrollIndex >= benefits.length + 1) return;\n\n interval = setTimeout(() => setScrollIndex(scrollIndex + 1), BENEFIT_TIMEOUT);\n }, [benefits, isMobile, scrollIndex]);\n\n const handlePressFilter = () => {\n Event.publish(EVENT.RATES_FILTER_CLUB, true);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:CLUBDISCOUNT', value: true });\n };\n\n const handlePressLogin = () => {\n Event.publish(EVENT.LOGIN, { visible: true });\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:LOGIN' });\n };\n\n const locale = getNormalizedLocale(stateLocale);\n const actionProps = { action: !isMobile, bold: true, small: isMobile, className: style.textInline };\n\n return skeleton && !session ? (\n <Skeleton />\n ) : !session && title && benefits.length > 0 ? (\n <View row={!isMobile} testId={others.testId} className={[style.container, others.className]}>\n <View className={style.highlight}>\n <Text bold brand headline level={isMobile ? 2 : 1} className={style.text}>\n {title[locale] || title[DEFAULT_LOCALE]}\n </Text>\n <Text action={isMobile} className={style.text}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n\n <View wide>\n <ScrollView horizontal={!isMobile} scrollTo={scrollIndex * BENEFIT_MIN_WIDTH} className={style.list}>\n {benefits.map(({ description = {}, icon } = {}, index) => (\n <View key={index} row={isMobile}>\n <Icon accent headline level={isMobile ? 2 : 1} value={ICON[icon] || ICON.AMENITY} />\n <Text action={!isMobile} small={isMobile} className={style.text}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n ))}\n </ScrollView>\n\n <Text light action={!isMobile} small={isMobile}>\n {discount === false && (\n <>\n <Action {...actionProps} onPress={handlePressFilter}>\n {translate(L10N.LABEL_UNLOCK_EXCLUSIVE_MEMBER)}\n </Action>{' '}\n </>\n )}\n\n {clubConditions\n ? translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action\n action={!isMobile}\n small={isMobile}\n href={clubConditions}\n target=\"_blank\"\n className={style.textInline}\n >\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })\n : translate(L10N.LABEL_LOGIN_NOW, {\n login: (\n <Action {...actionProps} onPress={handlePressLogin}>\n {translate(L10N.ACTION_LOGIN).toLowerCase()}\n </Action>\n ),\n })}\n\n {url && (\n <>\n {' '}\n <Action action={!isMobile} href={url} small={isMobile} target=\"_blank\" className={style.textInline}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n )}\n </Text>\n </View>\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","interval","BannerLoyalty","_ref","clubConditions","skeleton","others","isMobile","useDevice","locale","stateLocale","translate","useLocale","value","club","banner","benefits","description","title","url","discount","session","useStore","scrollIndex","setScrollIndex","useState","useEffect","Event","publish","EVENT","METRICS","id","clearTimeout","setTimeout","BENEFIT_TIMEOUT","handlePressFilter","RATES_FILTER_CLUB","handlePressLogin","LOGIN","visible","getNormalizedLocale","actionProps","action","bold","small","className","textInline","createElement","View","row","testId","container","highlight","Text","brand","headline","level","text","DEFAULT_LOCALE","wide","ScrollView","horizontal","scrollTo","BENEFIT_MIN_WIDTH","list","map","icon","undefined","index","Icon","accent","ICON","AMENITY","light","Fragment","Action","onPress","L10N","LABEL_UNLOCK_EXCLUSIVE_MEMBER","LABEL_CLUB_CONDITIONS","conditions","href","ACTION_CLUB_VIEW_CONDITIONS","LABEL_LOGIN_NOW","login","ACTION_LOGIN","toLowerCase","ACTION_MORE_INFO","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, Icon, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { DEFAULT_LOCALE, BENEFIT_MIN_WIDTH, BENEFIT_TIMEOUT } 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\nlet interval;\n\nconst BannerLoyalty = ({ clubConditions, skeleton, ...others }) => {\n const { 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 [scrollIndex, setScrollIndex] = useState(0);\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 useEffect(() => {\n clearTimeout(interval);\n if (isMobile || !benefits.length || scrollIndex >= benefits.length + 1) return;\n\n interval = setTimeout(() => setScrollIndex(scrollIndex + 1), BENEFIT_TIMEOUT);\n }, [benefits, isMobile, scrollIndex]);\n\n const handlePressFilter = () => {\n Event.publish(EVENT.RATES_FILTER_CLUB, true);\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:CLUBDISCOUNT', value: true });\n };\n\n const handlePressLogin = () => {\n Event.publish(EVENT.LOGIN, { visible: true });\n Event.publish(EVENT.METRICS, { id: 'BANNER_LOYALTY:LOGIN' });\n };\n\n const locale = getNormalizedLocale(stateLocale);\n const actionProps = { action: !isMobile, bold: true, small: isMobile, className: style.textInline };\n\n return skeleton && !session ? (\n <Skeleton />\n ) : !session && title && benefits.length > 0 ? (\n <View row={!isMobile} testId={others.testId} className={[style.container, others.className]}>\n <View className={style.highlight}>\n <Text bold brand headline level={isMobile ? 2 : 1} className={style.text}>\n {title[locale] || title[DEFAULT_LOCALE]}\n </Text>\n <Text action={isMobile} className={style.text}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n\n <View wide>\n <ScrollView horizontal={!isMobile} scrollTo={scrollIndex * BENEFIT_MIN_WIDTH} className={style.list}>\n {benefits.map(({ description = {}, icon } = {}, index) => (\n <View key={index} row={isMobile}>\n <Icon accent headline level={isMobile ? 2 : 1} value={ICON[icon] || ICON.AMENITY} />\n <Text action={!isMobile} small={isMobile} className={style.text}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n ))}\n </ScrollView>\n\n <Text light action={!isMobile} small={isMobile}>\n {discount === false && (\n <>\n <Action {...actionProps} onPress={handlePressFilter}>\n {translate(L10N.LABEL_UNLOCK_EXCLUSIVE_MEMBER)}\n </Action>{' '}\n </>\n )}\n\n {clubConditions\n ? translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action\n action={!isMobile}\n small={isMobile}\n href={clubConditions}\n target=\"_blank\"\n className={style.textInline}\n >\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })\n : translate(L10N.LABEL_LOGIN_NOW, {\n login: (\n <Action {...actionProps} onPress={handlePressLogin}>\n {translate(L10N.ACTION_LOGIN).toLowerCase()}\n </Action>\n ),\n })}\n\n {url && (\n <>\n {' '}\n <Action action={!isMobile} href={url} small={isMobile} target=\"_blank\" className={style.textInline}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n )}\n </Text>\n </View>\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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"}
@@ -76,9 +76,7 @@ const Header = _ref => {
76
76
  _dataSources.Event.publish(_helpers.EVENT.METRICS, {
77
77
  id: 'HEADER:GO_TO_HOME'
78
78
  });
79
- setTimeout(() => {
80
- window.location = url;
81
- }, 200);
79
+ setTimeout(() => window.location = url, _helpers.SUBMIT_DELAY / 2);
82
80
  };
83
81
  const {
84
82
  logo,
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Header","style","_shared__","_helpers","_Session","_SessionLogin","_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","Header","_ref","_ref2","currency","showCurrency","locale","showLocale","login","showLogin","ghost","name","showName","others","isMobile","isDesktop","useDevice","translate","useLocale","value","finder","place","id","placeId","isHotel","title","placeName","hotel","features","url","session","useStore","modal","setModal","useState","useEffect","callback","visible","undefined","Event","subscribe","EVENT","LOGIN","unsubscribe","handleClose","handleLogin","publish","METRICS","handleUrl","setTimeout","window","location","logo","type","largeName","nameProps","action","small","fullName","concat","L10N","LABEL_PROPERTY_TYPE","trim","createElement","Fragment","View","tag","wide","testId","className","styles","header","row","content","main","Pressable","onPress","dangerouslySetInnerHTML","__html","outerHTML","alt","src","image","Text","bold","brand","textName","BookingProcess","noPrint","options","SelectEnvironment","compacted","headerMode","metrics","Account","Icon","headline","level","ICON","ACCOUNT","medium","ACTION_LOGIN","Modal","onClose","onSuccess","extra","exports","displayName","propTypes","PropTypes","bool","any","skeleton"],"sources":["../../../src/components/Header/Header.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, Text, useDevice, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BookingProcess } from './components';\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { SelectEnvironment } from '../__shared__';\nimport { EVENT, ICON } from '../helpers';\nimport { Account } from '../Session/Session.Account';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nconst Header = ({\n currency: showCurrency = false,\n locale: showLocale = true,\n login: showLogin = false,\n ghost,\n name: showName,\n ...others\n}) => {\n const { isMobile, isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n finder: { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = {},\n hotel: { features = {}, url } = {},\n id,\n session,\n } = {},\n } = useStore();\n\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible = true } = {}) => setModal(visible);\n\n Event.subscribe(EVENT.LOGIN, callback);\n return () => Event.unsubscribe(EVENT.LOGIN, callback);\n }, []);\n\n const handleClose = () => setModal(false);\n\n const handleLogin = () => {\n setModal(true);\n Event.publish(EVENT.METRICS, { id: 'HEADER:LOGIN' });\n };\n\n const handleUrl = () => {\n Event.publish(EVENT.METRICS, { id: 'HEADER:GO_TO_HOME' });\n setTimeout(() => {\n window.location = url;\n }, 200);\n };\n\n const { logo, name, type } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[id]) || {};\n const largeName = name?.length > 32;\n const nameProps = { action: (largeName && !isMobile) || (isMobile && !largeName), small: largeName && isMobile };\n const fullName = `${type ? translate(L10N.LABEL_PROPERTY_TYPE, { type }) : ''} ${name}`?.trim();\n\n return (\n <>\n <View tag=\"header\" wide testId={others.testId} className={styles(style.header, others.className)}>\n <View row wide className={style.content}>\n <View row className={style.main}>\n {(logo || ghost || (!logo && name)) && (\n <Pressable onPress={url ? handleUrl : undefined}>\n {ghost ? (\n <View dangerouslySetInnerHTML={{ __html: ghost.outerHTML }} />\n ) : logo ? (\n <View alt={fullName} tag=\"img\" src={logo} className={style.image} />\n ) : (\n <Text {...nameProps} bold brand className={style.textName}>\n {fullName}\n </Text>\n )}\n </Pressable>\n )}\n\n {isDesktop && <BookingProcess className={style.noPrint} />}\n </View>\n\n <View row className={[style.options, style.noPrint]}>\n {showLocale && <SelectEnvironment compacted={isMobile} headerMode metrics=\"HEADER\" name=\"locale\" />}\n {showCurrency && <SelectEnvironment compacted={isMobile} headerMode metrics=\"HEADER\" name=\"currency\" />}\n {showLogin && (\n <>\n {session ? (\n <Account compacted />\n ) : (\n <>\n <Pressable onPress={handleLogin} className={style.login}>\n <View row>\n <Icon headline level={2} value={ICON.ACCOUNT} />\n\n {!isMobile && (\n <Text action medium>\n {translate(L10N.ACTION_LOGIN)}\n </Text>\n )}\n </View>\n </Pressable>\n <ModalLogin visible={modal} onClose={handleClose} onSuccess={handleClose} />\n </>\n )}\n </>\n )}\n </View>\n </View>\n </View>\n\n {showName && logo && name && (\n <View className={styles(style.header, style.extra, others.className)}>\n <View row wide className={style.content}>\n <Text {...nameProps}>{fullName}</Text>\n </View>\n </View>\n )}\n\n {!isDesktop && <BookingProcess />}\n </>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Header';\n\nHeader.propTypes = {\n currency: PropTypes.bool,\n ghost: PropTypes.any,\n locale: PropTypes.bool,\n login: PropTypes.bool,\n name: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Header };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Header","style","_shared__","_helpers","_Session","_SessionLogin","_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","Header","_ref","_ref2","currency","showCurrency","locale","showLocale","login","showLogin","ghost","name","showName","others","isMobile","isDesktop","useDevice","translate","useLocale","value","finder","place","id","placeId","isHotel","title","placeName","hotel","features","url","session","useStore","modal","setModal","useState","useEffect","callback","visible","undefined","Event","subscribe","EVENT","LOGIN","unsubscribe","handleClose","handleLogin","publish","METRICS","handleUrl","setTimeout","window","location","SUBMIT_DELAY","logo","type","largeName","nameProps","action","small","fullName","concat","L10N","LABEL_PROPERTY_TYPE","trim","createElement","Fragment","View","tag","wide","testId","className","styles","header","row","content","main","Pressable","onPress","dangerouslySetInnerHTML","__html","outerHTML","alt","src","image","Text","bold","brand","textName","BookingProcess","noPrint","options","SelectEnvironment","compacted","headerMode","metrics","Account","Icon","headline","level","ICON","ACCOUNT","medium","ACTION_LOGIN","Modal","onClose","onSuccess","extra","exports","displayName","propTypes","PropTypes","bool","any","skeleton"],"sources":["../../../src/components/Header/Header.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, Text, useDevice, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BookingProcess } from './components';\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { SelectEnvironment } from '../__shared__';\nimport { EVENT, ICON, SUBMIT_DELAY } from '../helpers';\nimport { Account } from '../Session/Session.Account';\nimport { Modal as ModalLogin } from '../Session/Session.Login.Modal';\n\nconst Header = ({\n currency: showCurrency = false,\n locale: showLocale = true,\n login: showLogin = false,\n ghost,\n name: showName,\n ...others\n}) => {\n const { isMobile, isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n finder: { place: { id: [placeId] = [], isHotel, title: placeName } = {} } = {},\n hotel: { features = {}, url } = {},\n id,\n session,\n } = {},\n } = useStore();\n\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible = true } = {}) => setModal(visible);\n\n Event.subscribe(EVENT.LOGIN, callback);\n return () => Event.unsubscribe(EVENT.LOGIN, callback);\n }, []);\n\n const handleClose = () => setModal(false);\n\n const handleLogin = () => {\n setModal(true);\n Event.publish(EVENT.METRICS, { id: 'HEADER:LOGIN' });\n };\n\n const handleUrl = () => {\n Event.publish(EVENT.METRICS, { id: 'HEADER:GO_TO_HOME' });\n setTimeout(() => (window.location = url), SUBMIT_DELAY / 2);\n };\n\n const { logo, name, type } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[id]) || {};\n const largeName = name?.length > 32;\n const nameProps = { action: (largeName && !isMobile) || (isMobile && !largeName), small: largeName && isMobile };\n const fullName = `${type ? translate(L10N.LABEL_PROPERTY_TYPE, { type }) : ''} ${name}`?.trim();\n\n return (\n <>\n <View tag=\"header\" wide testId={others.testId} className={styles(style.header, others.className)}>\n <View row wide className={style.content}>\n <View row className={style.main}>\n {(logo || ghost || (!logo && name)) && (\n <Pressable onPress={url ? handleUrl : undefined}>\n {ghost ? (\n <View dangerouslySetInnerHTML={{ __html: ghost.outerHTML }} />\n ) : logo ? (\n <View alt={fullName} tag=\"img\" src={logo} className={style.image} />\n ) : (\n <Text {...nameProps} bold brand className={style.textName}>\n {fullName}\n </Text>\n )}\n </Pressable>\n )}\n\n {isDesktop && <BookingProcess className={style.noPrint} />}\n </View>\n\n <View row className={[style.options, style.noPrint]}>\n {showLocale && <SelectEnvironment compacted={isMobile} headerMode metrics=\"HEADER\" name=\"locale\" />}\n {showCurrency && <SelectEnvironment compacted={isMobile} headerMode metrics=\"HEADER\" name=\"currency\" />}\n {showLogin && (\n <>\n {session ? (\n <Account compacted />\n ) : (\n <>\n <Pressable onPress={handleLogin} className={style.login}>\n <View row>\n <Icon headline level={2} value={ICON.ACCOUNT} />\n\n {!isMobile && (\n <Text action medium>\n {translate(L10N.ACTION_LOGIN)}\n </Text>\n )}\n </View>\n </Pressable>\n <ModalLogin visible={modal} onClose={handleClose} onSuccess={handleClose} />\n </>\n )}\n </>\n )}\n </View>\n </View>\n </View>\n\n {showName && logo && name && (\n <View className={styles(style.header, style.extra, others.className)}>\n <View row wide className={style.content}>\n <Text {...nameProps}>{fullName}</Text>\n </View>\n </View>\n )}\n\n {!isDesktop && <BookingProcess />}\n </>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Header';\n\nHeader.propTypes = {\n currency: PropTypes.bool,\n ghost: PropTypes.any,\n locale: PropTypes.bool,\n login: PropTypes.bool,\n name: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Header };\n"],"mappings":"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"}
@@ -51,7 +51,7 @@ const Header = _ref => {
51
51
  items,
52
52
  multiRoom,
53
53
  onSelect
54
- }, others)), hotels.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Button, {
54
+ }, others)), hotels.length > 1 && /*#__PURE__*/_react.default.createElement(_ui.Button, {
55
55
  secondary: true,
56
56
  wide: isMobile,
57
57
  onPress: () => onMapView(hotels)
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Header.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_components","_Rates","style","_interopRequireWildcard","_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","Header","_ref","children","dataSource","priceFactor","multiRoom","onFilters","onMapView","onSelect","others","isMobile","useDevice","translate","useLocale","contentBackground","Theme","hotels","items","hasItems","createElement","View","row","className","styles","header","blur","sticky","backgroundColor","opacity","Hotelverse","Button","secondary","wide","onPress","L10N","ACTION_SHOW_ON_MAP","Filters","onSubmit","exports","displayName","propTypes","PropTypes","node","shape","features","bool","nights","number","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Hotelverse } from './components';\nimport { Filters } from './components';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { opacity } from '../helpers';\n\nconst Header = ({\n children,\n dataSource = {},\n priceFactor = 1,\n multiRoom,\n onFilters = () => {},\n onMapView = () => {},\n onSelect = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { contentBackground } = Theme.get();\n const { hotels = [], items = [] } = dataSource;\n const hasItems = items.length > 0;\n\n return (\n <View\n row\n className={styles(style.header, style.blur, multiRoom && !isMobile && style.sticky, others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {hasItems && <Hotelverse {...{ ...dataSource, items, multiRoom, onSelect, ...others }} />}\n\n {hotels.length > 0 && (\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n )}\n\n {!isMobile && hasItems && <Filters {...dataSource} {...{ priceFactor }} onSubmit={onFilters} />}\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates:Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n features: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n nights: PropTypes.number,\n priceFactor: PropTypes.number,\n onFilters: PropTypes.func,\n onMapView: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Header.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_components","_Rates","style","_interopRequireWildcard","_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","Header","_ref","children","dataSource","priceFactor","multiRoom","onFilters","onMapView","onSelect","others","isMobile","useDevice","translate","useLocale","contentBackground","Theme","hotels","items","hasItems","createElement","View","row","className","styles","header","blur","sticky","backgroundColor","opacity","Hotelverse","Button","secondary","wide","onPress","L10N","ACTION_SHOW_ON_MAP","Filters","onSubmit","exports","displayName","propTypes","PropTypes","node","shape","features","bool","nights","number","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, styles, Theme, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Hotelverse } from './components';\nimport { Filters } from './components';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { opacity } from '../helpers';\n\nconst Header = ({\n children,\n dataSource = {},\n priceFactor = 1,\n multiRoom,\n onFilters = () => {},\n onMapView = () => {},\n onSelect = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { contentBackground } = Theme.get();\n const { hotels = [], items = [] } = dataSource;\n const hasItems = items.length > 0;\n\n return (\n <View\n row\n className={styles(style.header, style.blur, multiRoom && !isMobile && style.sticky, others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {hasItems && <Hotelverse {...{ ...dataSource, items, multiRoom, onSelect, ...others }} />}\n\n {hotels.length > 1 && (\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n )}\n\n {!isMobile && hasItems && <Filters {...dataSource} {...{ priceFactor }} onSubmit={onFilters} />}\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates:Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n features: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n nights: PropTypes.number,\n priceFactor: PropTypes.number,\n onFilters: PropTypes.func,\n onMapView: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,WAAA,GAAAL,OAAA;AAEA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAC,uBAAA,CAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAAqC,SAAAU,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,SAAAH,wBAAAG,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,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAErC,MAAMK,MAAM,GAAGC,IAAA,IAST;EAAA,IATU;IACdC,QAAQ;IACRC,UAAU,GAAG,CAAC,CAAC;IACfC,WAAW,GAAG,CAAC;IACfC,SAAS;IACTC,SAAS,GAAGA,CAAA,KAAM,CAAC,CAAC;IACpBC,SAAS,GAAGA,CAAA,KAAM,CAAC,CAAC;IACpBC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IACnB,GAAGC;EACL,CAAC,GAAAR,IAAA;EACC,MAAM;IAAES;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEjC,MAAM;IAAEC;EAAkB,CAAC,GAAGC,SAAK,CAACtC,GAAG,CAAC,CAAC;EACzC,MAAM;IAAEuC,MAAM,GAAG,EAAE;IAAEC,KAAK,GAAG;EAAG,CAAC,GAAGd,UAAU;EAC9C,MAAMe,QAAQ,GAAGD,KAAK,CAACrB,MAAM,GAAG,CAAC;EAEjC,oBACEjC,MAAA,CAAAY,OAAA,CAAA4C,aAAA,CAAC3D,GAAA,CAAA4D,IAAI;IACHC,GAAG;IACHC,SAAS,EAAE,IAAAC,UAAM,EAACzD,KAAK,CAAC0D,MAAM,EAAE1D,KAAK,CAAC2D,IAAI,EAAEpB,SAAS,IAAI,CAACK,QAAQ,IAAI5C,KAAK,CAAC4D,MAAM,EAAEjB,MAAM,CAACa,SAAS,CAAE;IACtGxD,KAAK,EAAE;MAAE6D,eAAe,EAAE,IAAAC,gBAAO,EAACd,iBAAiB,EAAE,IAAI;IAAE;EAAE,GAE5DZ,QAAQ,EAERgB,QAAQ,iBAAIvD,MAAA,CAAAY,OAAA,CAAA4C,aAAA,CAACvD,WAAA,CAAAiE,UAAU,EAAAtC,QAAA,KAAUY,UAAU;IAAEc,KAAK;IAAEZ,SAAS;IAAEG;EAAQ,GAAKC,MAAM,CAAK,CAAC,EAExFO,MAAM,CAACpB,MAAM,GAAG,CAAC,iBAChBjC,MAAA,CAAAY,OAAA,CAAA4C,aAAA,CAAC3D,GAAA,CAAAsE,MAAM;IAACC,SAAS;IAACC,IAAI,EAAEtB,QAAS;IAACuB,OAAO,EAAEA,CAAA,KAAM1B,SAAS,CAACS,MAAM;EAAE,GAChEJ,SAAS,CAACsB,WAAI,CAACC,kBAAkB,CAC5B,CACT,EAEA,CAACzB,QAAQ,IAAIQ,QAAQ,iBAAIvD,MAAA,CAAAY,OAAA,CAAA4C,aAAA,CAACvD,WAAA,CAAAwE,OAAO,EAAA7C,QAAA,KAAKY,UAAU;IAAQC,WAAW;IAAIiC,QAAQ,EAAE/B;EAAU,EAAE,CAC1F,CAAC;AAEX,CAAC;AAACgC,OAAA,CAAAtC,MAAA,GAAAA,MAAA;AAEFA,MAAM,CAACuC,WAAW,GAAG,yBAAyB;AAE9CvC,MAAM,CAACwC,SAAS,GAAG;EACjBtC,QAAQ,EAAEuC,kBAAS,CAACC,IAAI;EACxBvC,UAAU,EAAEsC,kBAAS,CAACE,KAAK,CAAC,CAAC,CAAC,CAAC;EAC/BC,QAAQ,EAAEH,kBAAS,CAACE,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7BtC,SAAS,EAAEoC,kBAAS,CAACI,IAAI;EACzBC,MAAM,EAAEL,kBAAS,CAACM,MAAM;EACxB3C,WAAW,EAAEqC,kBAAS,CAACM,MAAM;EAC7BzC,SAAS,EAAEmC,kBAAS,CAACO,IAAI;EACzBzC,SAAS,EAAEkC,kBAAS,CAACO,IAAI;EACzBxC,QAAQ,EAAEiC,kBAAS,CAACO;AACtB,CAAC"}
@@ -284,7 +284,7 @@ const Unavailability = _ref => {
284
284
  headline: true
285
285
  }, translate(_Rates2.L10N.LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS, {
286
286
  value: hotels.length
287
- })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
287
+ })), hotels.length > 1 && /*#__PURE__*/_react.default.createElement(_ui.Button, {
288
288
  secondary: true,
289
289
  wide: isMobile,
290
290
  onPress: () => onMapView(hotels)
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_shared__","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Unavailability","_ref","calendar","hotel","email","phone","hotels","nights","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","onMapView","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","METRICS","id","currency","finder","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","rooms","undefined","map","handleFinder","focus","renderPrice","price","onPress","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","light","getLabelTaxes","Button","ACTION_VIEW_MORE","renderContactInfo","action","contactInfo","LABEL_CONTACT_INFO","Action","href","concat","place","hasSuggestions","unavailability","banner","Icon","accent","ICON","CALENDAR_BUSY","PERSON_OFF","icon","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","button","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","Cards","taxes","others","index","parseDate","Card","card","dateFormat","DATE_FORMAT","anchorDates","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","getAccommodationLabel","plural","type","distribution","name","roomIndex","room","_item$ages","item","itemIndex","getOccupationLabel","ages","OCCUPATION_TYPE","CHILD","LABEL_YEARS_OLD","amount","sort","join","spaceBetween","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","secondary","ACTION_SHOW_ON_MAP","CardHotel","exports","displayName","propTypes","PropTypes","shape","string","arrayOf","number","func"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { Card, Cards } from '../__shared__';\nimport { EVENT, OCCUPATION_TYPE } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotel: { email, phone } = {},\n hotels = [],\n nights = 1,\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n onMapView,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:RENDER' });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const { currency, finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} } = store;\n\n const handleCalendar = (from, to) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, calendar: [from, to] } });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:CALENDAR' });\n };\n\n const handleOccupation = (rooms = []) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, occupation: rooms.map(({ occupation } = {}) => occupation) } });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:OCCUPATION' });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, calendarSuggestions ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:REFINE_SEARCH' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const renderContactInfo = () => (\n <Text action={!isMobile} small={isMobile} className={style.contactInfo}>\n {translate(L10N.LABEL_CONTACT_INFO, {\n email: (\n <Action\n href={`mailto:${email}`}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:MAILTO' })}\n className={style.action}\n >\n {email}\n </Action>\n ),\n phone: (\n <Action\n href={`tel:${phone}`}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:TEL' })}\n className={style.action}\n >\n {phone}\n </Action>\n ),\n })}\n </Text>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const hasSuggestions = calendarSuggestions || occupationSuggestions;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon accent value={calendarSuggestions ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} className={style.icon} />\n <View wide className={style.texts}>\n <Text accent bold headline>\n {calendarSuggestions\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n {!isMobile && renderContactInfo()}\n </View>\n <Button onPress={handleFinder} className={style.button}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n {isMobile && renderContactInfo()}\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {calendarSuggestions.length > 0 && (\n <Cards>\n {calendarSuggestions.map(({ price = 0, taxes, ...others } = {}, index) => {\n const from = parseDate(others?.from);\n const to = parseDate(others?.to);\n\n return (\n <Card key={`calendar:${index}`}>\n <View className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n </Card>\n );\n })}\n </Cards>\n )}\n\n {occupationSuggestions.length > 0 && (\n <Cards>\n {occupationSuggestions.map(({ rooms = [], price = 0, taxes }, index) => (\n <Card key={`rooms:${index}`}>\n <View className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${rooms.length} ${getAccommodationLabel(\n { plural: rooms.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {rooms.map(({ name, occupation = [] } = {}, roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>\n {name}\n </Text>\n {occupation.map((item = {}, itemIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${itemIndex}`} light small>\n {`${getOccupationLabel({ ...item, ages: [] }, translate)} ${\n item.type === OCCUPATION_TYPE.CHILD\n ? `(${translate(L10N.LABEL_YEARS_OLD, { amount: item.ages?.sort().join('-') })})`\n : ''\n }`}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(rooms) })}\n </View>\n </Card>\n ))}\n </Cards>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <View row={!isMobile} className={style.spaceBetween}>\n <Text bold headline>\n {translate(L10N.LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS, { value: hotels.length })}\n </Text>\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n </View>\n )}\n <Cards>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} nights={nights} unavailability />\n ))}\n </Cards>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotel: PropTypes.shape({\n email: PropTypes.string,\n phone: PropTypes.string,\n }),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n onMapView: PropTypes.func,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_shared__","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Unavailability","_ref","calendar","hotel","email","phone","hotels","nights","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","onMapView","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","METRICS","id","currency","finder","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","rooms","undefined","map","handleFinder","focus","renderPrice","price","onPress","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","light","getLabelTaxes","Button","ACTION_VIEW_MORE","renderContactInfo","action","contactInfo","LABEL_CONTACT_INFO","Action","href","concat","place","hasSuggestions","unavailability","banner","Icon","accent","ICON","CALENDAR_BUSY","PERSON_OFF","icon","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","button","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","Cards","taxes","others","index","parseDate","Card","card","dateFormat","DATE_FORMAT","anchorDates","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","getAccommodationLabel","plural","type","distribution","name","roomIndex","room","_item$ages","item","itemIndex","getOccupationLabel","ages","OCCUPATION_TYPE","CHILD","LABEL_YEARS_OLD","amount","sort","join","spaceBetween","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","secondary","ACTION_SHOW_ON_MAP","CardHotel","exports","displayName","propTypes","PropTypes","shape","string","arrayOf","number","func"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { Card, Cards } from '../__shared__';\nimport { EVENT, OCCUPATION_TYPE } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotel: { email, phone } = {},\n hotels = [],\n nights = 1,\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n onMapView,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:RENDER' });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const { currency, finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} } = store;\n\n const handleCalendar = (from, to) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, calendar: [from, to] } });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:CALENDAR' });\n };\n\n const handleOccupation = (rooms = []) => {\n Event.publish(EVENT.FINDER, { finder: { ...finder, occupation: rooms.map(({ occupation } = {}) => occupation) } });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:OCCUPATION' });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, calendarSuggestions ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:REFINE_SEARCH' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const renderContactInfo = () => (\n <Text action={!isMobile} small={isMobile} className={style.contactInfo}>\n {translate(L10N.LABEL_CONTACT_INFO, {\n email: (\n <Action\n href={`mailto:${email}`}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:MAILTO' })}\n className={style.action}\n >\n {email}\n </Action>\n ),\n phone: (\n <Action\n href={`tel:${phone}`}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'UNAVAILABILITY:TEL' })}\n className={style.action}\n >\n {phone}\n </Action>\n ),\n })}\n </Text>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const hasSuggestions = calendarSuggestions || occupationSuggestions;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon accent value={calendarSuggestions ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} className={style.icon} />\n <View wide className={style.texts}>\n <Text accent bold headline>\n {calendarSuggestions\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n {!isMobile && renderContactInfo()}\n </View>\n <Button onPress={handleFinder} className={style.button}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n {isMobile && renderContactInfo()}\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {calendarSuggestions.length > 0 && (\n <Cards>\n {calendarSuggestions.map(({ price = 0, taxes, ...others } = {}, index) => {\n const from = parseDate(others?.from);\n const to = parseDate(others?.to);\n\n return (\n <Card key={`calendar:${index}`}>\n <View className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n </Card>\n );\n })}\n </Cards>\n )}\n\n {occupationSuggestions.length > 0 && (\n <Cards>\n {occupationSuggestions.map(({ rooms = [], price = 0, taxes }, index) => (\n <Card key={`rooms:${index}`}>\n <View className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${rooms.length} ${getAccommodationLabel(\n { plural: rooms.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {rooms.map(({ name, occupation = [] } = {}, roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>\n {name}\n </Text>\n {occupation.map((item = {}, itemIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${itemIndex}`} light small>\n {`${getOccupationLabel({ ...item, ages: [] }, translate)} ${\n item.type === OCCUPATION_TYPE.CHILD\n ? `(${translate(L10N.LABEL_YEARS_OLD, { amount: item.ages?.sort().join('-') })})`\n : ''\n }`}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(rooms) })}\n </View>\n </Card>\n ))}\n </Cards>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <View row={!isMobile} className={style.spaceBetween}>\n <Text bold headline>\n {translate(L10N.LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS, { value: hotels.length })}\n </Text>\n {hotels.length > 1 && (\n <Button secondary wide={isMobile} onPress={() => onMapView(hotels)}>\n {translate(L10N.ACTION_SHOW_ON_MAP)}\n </Button>\n )}\n </View>\n )}\n <Cards>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} nights={nights} unavailability />\n ))}\n </Cards>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotel: PropTypes.shape({\n email: PropTypes.string,\n phone: PropTypes.string,\n }),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n onMapView: PropTypes.func,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
@@ -75,6 +75,7 @@ const Rates = _ref => {
75
75
  urlParams
76
76
  }
77
77
  } = (0, _dataSources.useStore)();
78
+ const [busy, setBusy] = (0, _react.useState)(false);
78
79
  const [cancellationInfo, setCancellationInfo] = (0, _react.useState)();
79
80
  const [cart, setCart] = (0, _react.useState)([]);
80
81
  const [clubDiscount, setClubDiscount] = (0, _react.useState)(discount);
@@ -310,7 +311,7 @@ const Rates = _ref => {
310
311
  let sessionProp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : session;
311
312
  const isPestana = _services.ServiceFeatures.get(_Rates.FEATURES.PESTANA, id) || false;
312
313
  setLogin(false);
313
- if (!isPestana && clubDiscount && !sessionProp && !loginShown && cart.filter(board => (0, _helpers.isClubRate)({
314
+ if (!isPestana && clubDiscount && !sessionProp && !loginShown && cart.filter(board => (0, _helpers.getClubRate)({
314
315
  board,
315
316
  dataSource
316
317
  })).length > 0) {
@@ -331,6 +332,7 @@ const Rates = _ref => {
331
332
  infantAge: dataSource.infantAge,
332
333
  occupation
333
334
  }),
335
+ clubDiscount: !!session || clubDiscount,
334
336
  device,
335
337
  hotelCurrency: dataSource.currency,
336
338
  locale
@@ -346,10 +348,12 @@ const Rates = _ref => {
346
348
  const handleCheckout = function () {
347
349
  let cart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
348
350
  let extras = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
351
+ setBusy(true);
349
352
  _dataSources.Event.publish(_helpers3.EVENT.METRICS, {
350
353
  id: 'RATES:SUBMIT'
351
354
  });
352
355
  setTimeout(() => {
356
+ setBusy(false);
353
357
  document.location.href = (0, _helpers.getForwarderUrl)({
354
358
  cart,
355
359
  clubDiscount,
@@ -362,7 +366,7 @@ const Rates = _ref => {
362
366
  device
363
367
  }
364
368
  });
365
- }, 200);
369
+ }, _helpers3.SUBMIT_DELAY);
366
370
  };
367
371
  const handleCloseLogin = () => {
368
372
  loginShown = false;
@@ -555,6 +559,7 @@ const Rates = _ref => {
555
559
  visible: !!offerInfo,
556
560
  onClose: () => setOfferInfo()
557
561
  })), /*#__PURE__*/_react.default.createElement(_components.ModalExtras, _extends({}, dataSource, {
562
+ busy,
558
563
  cart,
559
564
  extras,
560
565
  visible: !!extras,