@mirai/core 0.4.211 → 0.4.213

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 (22) hide show
  1. package/build/components/Rates/Rates.Content.js +28 -5
  2. package/build/components/Rates/Rates.Content.js.map +1 -1
  3. package/build/components/Rates/components/ModalExtras/ModalExtras.js +3 -5
  4. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -1
  5. package/build/components/Rates/components/OTAPrices/OTAPrices.js +168 -0
  6. package/build/components/Rates/components/OTAPrices/OTAPrices.js.map +1 -0
  7. package/build/components/Rates/components/OTAPrices/OTAPrices.l10n.js +12 -0
  8. package/build/components/Rates/components/OTAPrices/OTAPrices.l10n.js.map +1 -0
  9. package/build/components/Rates/components/OTAPrices/OTAPrices.module.css +74 -0
  10. package/build/components/Rates/components/OTAPrices/OTAPrices.skeleton.js +58 -0
  11. package/build/components/Rates/components/OTAPrices/OTAPrices.skeleton.js.map +1 -0
  12. package/build/components/Rates/components/OTAPrices/index.js +17 -0
  13. package/build/components/Rates/components/OTAPrices/index.js.map +1 -0
  14. package/build/contexts/PerformanceManager/PerformanceManager.constants.js +1 -64
  15. package/build/contexts/PerformanceManager/PerformanceManager.constants.js.map +1 -1
  16. package/build/contexts/PerformanceManager/PerformanceManager.js +1 -1
  17. package/build/contexts/PerformanceManager/PerformanceManager.js.map +1 -1
  18. package/build/helpers/consolidateStore.js +9 -1
  19. package/build/helpers/consolidateStore.js.map +1 -1
  20. package/build/helpers/getPerformance.js +64 -1
  21. package/build/helpers/getPerformance.js.map +1 -1
  22. package/package.json +1 -1
@@ -7,7 +7,8 @@ exports.Content = void 0;
7
7
  var _dataSources = require("@mirai/data-sources");
8
8
  var _ui = require("@mirai/ui");
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _OTAPrices = require("./components/OTAPrices");
11
12
  var style = _interopRequireWildcard(require("./Rates.module.css"));
12
13
  var _BannerLoyalty = require("../BannerLoyalty");
13
14
  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); }
@@ -23,13 +24,28 @@ const Content = _ref => {
23
24
  const {
24
25
  isMobile
25
26
  } = (0, _ui.useDevice)();
27
+ const refBanner = (0, _react.useRef)();
26
28
  const {
27
29
  value: {
28
30
  club: {
29
31
  banner = {}
30
32
  } = {}
31
- }
33
+ } = {}
32
34
  } = (0, _dataSources.useStore)();
35
+ const [bannerVisible, setBannerVisible] = (0, _react.useState)(false);
36
+ (0, _react.useEffect)(() => {
37
+ const {
38
+ current: el
39
+ } = refBanner || {};
40
+ const callback = () => setBannerVisible(true);
41
+ const observer = new MutationObserver(callback);
42
+ observer.observe(el, {
43
+ childList: true,
44
+ subtree: true
45
+ });
46
+ return () => observer.disconnect();
47
+ // eslint-disable-next-line react-hooks/exhaustive-deps
48
+ }, [refBanner]);
33
49
  return !!banner || dangerousChildren.length > 0 || increments ? /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
34
50
  className: style.extraContent
35
51
  }), increments && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
@@ -42,10 +58,17 @@ const Content = _ref => {
42
58
  __html: child.outerHTML
43
59
  }
44
60
  }))) : null, /*#__PURE__*/_react.default.createElement(_ui.View, {
45
- id: "external-banner"
61
+ ref: refBanner,
62
+ id: "external-banner",
63
+ style: !bannerVisible ? {
64
+ display: 'none'
65
+ } : undefined
46
66
  }), /*#__PURE__*/_react.default.createElement(_ui.View, {
47
- id: "123-compare-plugin"
48
- }), /*#__PURE__*/_react.default.createElement(_BannerLoyalty.BannerLoyalty, others)) : null;
67
+ id: "123-compare-plugin",
68
+ style: {
69
+ display: 'none'
70
+ }
71
+ }), /*#__PURE__*/_react.default.createElement(_OTAPrices.OTAPrices, null), /*#__PURE__*/_react.default.createElement(_BannerLoyalty.BannerLoyalty, others)) : null;
49
72
  };
50
73
  exports.Content = Content;
51
74
  Content.displayName = 'Mirai:Core:Rates:Content';
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Content.js","names":["_dataSources","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_BannerLoyalty","_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","Content","_ref","dangerousChildren","increments","others","isMobile","useDevice","value","club","banner","useStore","createElement","View","className","extraContent","Notification","small","warning","wide","map","child","index","dangerouslySetInnerHTML","__html","outerHTML","id","BannerLoyalty","exports","displayName","propTypes","bannerLoyalty","PropTypes","bool","arrayOf","any","string"],"sources":["../../../src/components/Rates/Rates.Content.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './Rates.module.css';\nimport { BannerLoyalty } from '../BannerLoyalty';\n\nconst Content = ({ dangerousChildren = [], increments, ...others }) => {\n const { isMobile } = useDevice();\n const {\n value: { club: { banner = {} } = {} },\n } = useStore();\n\n return !!banner || dangerousChildren.length > 0 || increments ? (\n <View {...others} className={style.extraContent}>\n {increments && (\n <Notification small={isMobile} warning wide>\n {increments}\n </Notification>\n )}\n\n {dangerousChildren.length ? (\n <View>\n {dangerousChildren.map((child, index) => (\n <View key={index} dangerouslySetInnerHTML={{ __html: child.outerHTML }} />\n ))}\n </View>\n ) : null}\n\n <View id=\"external-banner\" />\n <View id=\"123-compare-plugin\" />\n\n <BannerLoyalty {...others} />\n </View>\n ) : null;\n};\n\nContent.displayName = 'Mirai:Core:Rates:Content';\n\nContent.propTypes = {\n bannerLoyalty: PropTypes.bool,\n dangerousChildren: PropTypes.arrayOf(PropTypes.any),\n increments: PropTypes.string,\n};\n\nexport { Content };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Content.js","names":["_dataSources","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_OTAPrices","style","_BannerLoyalty","_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","Content","_ref","dangerousChildren","increments","others","isMobile","useDevice","refBanner","useRef","value","club","banner","useStore","bannerVisible","setBannerVisible","useState","useEffect","current","el","callback","observer","MutationObserver","observe","childList","subtree","disconnect","createElement","View","className","extraContent","Notification","small","warning","wide","map","child","index","dangerouslySetInnerHTML","__html","outerHTML","ref","id","display","undefined","OTAPrices","BannerLoyalty","exports","displayName","propTypes","bannerLoyalty","PropTypes","bool","arrayOf","any","string"],"sources":["../../../src/components/Rates/Rates.Content.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { OTAPrices } from './components/OTAPrices';\nimport * as style from './Rates.module.css';\nimport { BannerLoyalty } from '../BannerLoyalty';\n\nconst Content = ({ dangerousChildren = [], increments, ...others }) => {\n const { isMobile } = useDevice();\n const refBanner = useRef();\n const { value: { club: { banner = {} } = {} } = {} } = useStore();\n\n const [bannerVisible, setBannerVisible] = useState(false);\n\n useEffect(() => {\n const { current: el } = refBanner || {};\n\n const callback = () => setBannerVisible(true);\n const observer = new MutationObserver(callback);\n observer.observe(el, { childList: true, subtree: true });\n\n return () => observer.disconnect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [refBanner]);\n\n return !!banner || dangerousChildren.length > 0 || increments ? (\n <View {...others} className={style.extraContent}>\n {increments && (\n <Notification small={isMobile} warning wide>\n {increments}\n </Notification>\n )}\n\n {dangerousChildren.length ? (\n <View>\n {dangerousChildren.map((child, index) => (\n <View key={index} dangerouslySetInnerHTML={{ __html: child.outerHTML }} />\n ))}\n </View>\n ) : null}\n\n <View ref={refBanner} id=\"external-banner\" style={!bannerVisible ? { display: 'none' } : undefined} />\n <View id=\"123-compare-plugin\" style={{ display: 'none' }} />\n <OTAPrices />\n\n <BannerLoyalty {...others} />\n </View>\n ) : null;\n};\n\nContent.displayName = 'Mirai:Core:Rates:Content';\n\nContent.propTypes = {\n bannerLoyalty: PropTypes.bool,\n dangerousChildren: PropTypes.arrayOf(PropTypes.any),\n increments: PropTypes.string,\n};\n\nexport { Content };\n"],"mappings":"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"}
@@ -26,7 +26,6 @@ const ModalExtras = _ref => {
26
26
  extras: propExtras = [],
27
27
  taxesType,
28
28
  visible = false,
29
- onCancel = () => {},
30
29
  onSubmit = () => {},
31
30
  ...others
32
31
  } = _ref;
@@ -44,8 +43,7 @@ const ModalExtras = _ref => {
44
43
  hotel: {
45
44
  accommodationType: hotelAccommodationType,
46
45
  variants = {}
47
- } = {},
48
- variant
46
+ } = {}
49
47
  } = {}
50
48
  } = (0, _dataSources.useStore)();
51
49
  const [extras, setExtras] = (0, _react.useState)(propExtras);
@@ -155,7 +153,7 @@ const ModalExtras = _ref => {
155
153
  fit: true,
156
154
  title: translate(_ModalExtras.L10N.LABEL_ENHANCED_YOUR_STAY),
157
155
  visible: visible,
158
- onClose: variant === 'A' ? onCancel : handleSubmit,
156
+ onClose: handleSubmit,
159
157
  className: style.modal,
160
158
  testId: testId
161
159
  }, /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
@@ -310,7 +308,7 @@ const ModalExtras = _ref => {
310
308
  busy: busy,
311
309
  onPress: handleSubmit,
312
310
  testId: testId ? "".concat(testId, "-submit") : undefined
313
- }, translate(hasSelected ? _ModalExtras.L10N.ACTION_RESERVE : variant === 'A' ? _ModalExtras.L10N.ACTION_NEXT : _ModalExtras.L10N.ACTION_CONTINUE_WITHOUT_EXTRAS))));
311
+ }, translate(hasSelected ? _ModalExtras.L10N.ACTION_RESERVE : _ModalExtras.L10N.ACTION_CONTINUE_WITHOUT_EXTRAS))));
314
312
  };
315
313
  exports.ModalExtras = ModalExtras;
316
314
  ModalExtras.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"ModalExtras.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_ModalExtras","style","_helpers2","_helpers3","_components","_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","ModalExtras","_ref","busy","cart","extras","propExtras","taxesType","visible","onCancel","onSubmit","others","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","finder","hotel","accommodationType","hotelAccommodationType","variants","variant","useStore","setExtras","useState","useEffect","Event","publish","EVENT","METRICS","id","handleChange","field","undefined","map","extra","parseInt","handleSelect","next","_ref2","selected","concat","filter","_ref3","_ref4","handleSubmit","item","included","_ref5","_baseValue","amount","baseValue","nights","valueAmount","valueNights","price","hasSelected","total","reduce","totalExtras","_value","place","standaloneCard","currencyFormatProps","maximumFractionDigits","minimumFractionDigits","testId","createElement","Modal","fit","title","L10N","LABEL_ENHANCED_YOUR_STAY","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","row","container","accommodationThreshold","conditions","frequency","guestThreshold","guestType","image","inputGuests","inputNights","text","type","wide","styles","card","standalone","backgroundImage","gap","offset","anchor","Text","bold","small","Notification","inline","warning","LABEL_APPLIES_SELECTED_ROOMS","LABEL_APPLIES_INDIVIDUALS_RESERVATION","light","inputs","InputSelect","capitalize","name","label","getGuestLabel","plural","options","Array","from","_","index","toString","onChange","LABEL_NIGHTS","spaceBetween","headline","LABEL_FREE","getCaption","Button","secondary","onPress","LABEL_INCLUDED","ACTION_REMOVE","ACTION_ADD","footer","level","getLabelTaxes","PriceDetails","_ref6","metrics","priceDetails","ACTION_RESERVE","ACTION_NEXT","ACTION_CONTINUE_WITHOUT_EXTRAS","exports","propTypes","PropTypes","bool","arrayOf","shape","number","func","displayName"],"sources":["../../../../../src/components/Rates/components/ModalExtras/ModalExtras.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, InputSelect, Modal, Notification, ScrollView, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getCaption } from './helpers';\nimport { L10N } from './ModalExtras.l10n';\nimport * as style from './ModalExtras.module.css';\nimport { getGuestLabel } from '../../../helpers';\nimport { EVENT } from '../../../helpers';\nimport { getLabelTaxes } from '../../helpers';\nimport { PriceDetails } from '../Item/components';\n\nconst ModalExtras = ({\n busy,\n cart = [],\n extras: propExtras = [],\n taxesType,\n visible = false,\n onCancel = () => {},\n onSubmit = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const {\n value: {\n currency,\n finder = {},\n hotel: { accommodationType: hotelAccommodationType, variants = {} } = {},\n variant,\n } = {},\n } = useStore();\n\n const [extras, setExtras] = useState(propExtras);\n\n useEffect(() => {\n if (visible) {\n setExtras(propExtras);\n Event.publish(EVENT.METRICS, { id: 'RATES:EXTRAS' });\n }\n }, [propExtras, visible]);\n\n const handleChange = ({ id, field, value } = {}) => {\n // ! Why parse Number()? should come from the service.\n setExtras(extras.map((extra) => ({ ...extra, [field]: extra.id === id ? parseInt(value) : extra[field] })));\n };\n\n const handleSelect = (id) => {\n const next = extras.map(({ selected = false, ...extra }) => ({\n ...extra,\n selected: extra.id === id ? !selected : selected,\n }));\n\n setExtras(next);\n\n Event.publish(EVENT.METRICS, {\n id: `RATES:EXTRAS:${\n next.filter(({ selected }) => selected).length > extras.filter(({ selected }) => selected).length\n ? 'ADD'\n : 'REMOVE'\n }`,\n });\n };\n\n const handleSubmit = () => {\n onSubmit(\n extras\n .filter((item) => item.selected || item.included)\n .map(({ amount, baseValue, nights, id, included, valueAmount, valueNights }) => ({\n id,\n included,\n amount: parseInt(valueAmount || amount),\n nights: parseInt(valueNights || nights),\n value: baseValue[valueAmount || amount][valueNights || nights]?.price,\n })),\n );\n };\n\n const hasSelected = extras.filter((item) => !!item.selected).length > 0;\n const total = cart.reduce((value, { price } = {}) => value + price, 0);\n const totalExtras = extras\n .filter((item) => item.selected)\n .reduce(\n (total, { amount, nights, valueAmount, valueNights, value = {} } = {}) =>\n total + (value[valueAmount || amount][valueNights || nights]?.price || 0),\n 0,\n );\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n const standaloneCard = extras.length === 1;\n const currencyFormatProps = { currency, maximumFractionDigits: 0, minimumFractionDigits: 0 };\n const { testId } = others;\n\n return (\n <Modal\n fit\n title={translate(L10N.LABEL_ENHANCED_YOUR_STAY)}\n visible={visible}\n onClose={variant === 'A' ? onCancel : handleSubmit}\n className={style.modal}\n testId={testId}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View row className={style.container}>\n {extras.map(\n ({\n accommodationThreshold = 0,\n amount = 0,\n conditions,\n frequency,\n guestThreshold = 0,\n guestType,\n id,\n image,\n included = false,\n inputGuests = false,\n inputNights = false,\n nights = 0,\n selected = false,\n text,\n title,\n type,\n value = {},\n valueAmount = amount,\n valueNights = nights,\n } = {}) => {\n const { price: total } = value[valueAmount][valueNights] || {};\n\n return (\n <View\n key={id}\n wide\n className={styles(\n style.card,\n standaloneCard && style.standalone,\n hasSelected && selected ? style.selected : undefined,\n )}\n >\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n\n <View wide className={[style.gap, style.offset, style.anchor]}>\n <Text bold>{title}</Text>\n {text && <Text small>{text}</Text>}\n\n {accommodationThreshold > 0 && (\n <Notification inline small warning>\n {translate(L10N.LABEL_APPLIES_SELECTED_ROOMS, { value: accommodationThreshold })}\n </Notification>\n )}\n\n {guestThreshold > 0 && (\n <Notification inline small warning>\n {translate(L10N.LABEL_APPLIES_INDIVIDUALS_RESERVATION, { value: guestThreshold })}\n </Notification>\n )}\n\n {conditions && (\n <Text light small>\n {conditions}\n </Text>\n )}\n\n {(inputGuests || inputNights) && (\n <View row className={styles(style.gap, style.inputs)}>\n {inputGuests && (\n <InputSelect\n capitalize\n name=\"guests\"\n label={getGuestLabel({ plural: true, type: guestType }, translate)}\n options={Array.from({ length: amount }).map((_, index) => index + 1)}\n value={valueAmount?.toString()}\n onChange={(value) => handleChange({ id, field: 'valueAmount', value })}\n />\n )}\n {inputNights && (\n <InputSelect\n name=\"nights\"\n label={translate(L10N.LABEL_NIGHTS)}\n options={Array.from({ length: nights }).map((_, index) => index + 1)}\n value={valueNights?.toString()}\n onChange={(value) => handleChange({ id, field: 'valueNights', value })}\n />\n )}\n </View>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween]}>\n <View>\n <Text bold headline>\n {total ? currencyFormat({ ...currencyFormatProps, value: total }) : translate(L10N.LABEL_FREE)}\n </Text>\n <Text light small>\n {getCaption(\n {\n accommodationType,\n amount,\n frequency,\n guestType,\n inputGuests,\n type,\n valueAmount,\n valueNights,\n },\n translate,\n )}\n </Text>\n </View>\n\n <Button\n small\n secondary={!selected && !included}\n onPress={!included ? () => handleSelect(id) : undefined}\n >\n {translate(included ? L10N.LABEL_INCLUDED : selected ? L10N.ACTION_REMOVE : L10N.ACTION_ADD)}\n </Button>\n </View>\n </View>\n );\n },\n )}\n </View>\n </ScrollView>\n\n <View row className={style.footer}>\n {total > 0 && (\n <View className={style.total}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ ...currencyFormatProps, value: total + totalExtras })}\n </Text>\n\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n <PriceDetails\n extras={extras.filter(({ selected }) => selected)}\n cart={cart}\n metrics=\"RATES:EXTRAS\"\n taxesType={taxesType}\n {...others}\n className={style.priceDetails}\n />\n </View>\n )}\n\n <Button busy={busy} onPress={handleSubmit} testId={testId ? `${testId}-submit` : undefined}>\n {translate(\n hasSelected\n ? L10N.ACTION_RESERVE\n : variant === 'A'\n ? L10N.ACTION_NEXT\n : L10N.ACTION_CONTINUE_WITHOUT_EXTRAS,\n )}\n </Button>\n </View>\n </Modal>\n );\n};\n\nModalExtras.propTypes = {\n busy: PropTypes.bool,\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n taxesType: PropTypes.number,\n visible: PropTypes.bool,\n onCancel: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nModalExtras.displayName = 'Mirai:Core:Rates:ModalExtras';\n\nexport { ModalExtras };\n"],"mappings":"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"}
1
+ {"version":3,"file":"ModalExtras.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_ModalExtras","style","_helpers2","_helpers3","_components","_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","ModalExtras","_ref","busy","cart","extras","propExtras","taxesType","visible","onSubmit","others","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","finder","hotel","accommodationType","hotelAccommodationType","variants","useStore","setExtras","useState","useEffect","Event","publish","EVENT","METRICS","id","handleChange","field","undefined","map","extra","parseInt","handleSelect","next","_ref2","selected","concat","filter","_ref3","_ref4","handleSubmit","item","included","_ref5","_baseValue","amount","baseValue","nights","valueAmount","valueNights","price","hasSelected","total","reduce","totalExtras","_value","place","standaloneCard","currencyFormatProps","maximumFractionDigits","minimumFractionDigits","testId","createElement","Modal","fit","title","L10N","LABEL_ENHANCED_YOUR_STAY","onClose","className","modal","ScrollView","scrollIndicator","scrollTo","snap","scrollView","View","row","container","accommodationThreshold","conditions","frequency","guestThreshold","guestType","image","inputGuests","inputNights","text","type","wide","styles","card","standalone","backgroundImage","gap","offset","anchor","Text","bold","small","Notification","inline","warning","LABEL_APPLIES_SELECTED_ROOMS","LABEL_APPLIES_INDIVIDUALS_RESERVATION","light","inputs","InputSelect","capitalize","name","label","getGuestLabel","plural","options","Array","from","_","index","toString","onChange","LABEL_NIGHTS","spaceBetween","headline","LABEL_FREE","getCaption","Button","secondary","onPress","LABEL_INCLUDED","ACTION_REMOVE","ACTION_ADD","footer","level","getLabelTaxes","PriceDetails","_ref6","metrics","priceDetails","ACTION_RESERVE","ACTION_CONTINUE_WITHOUT_EXTRAS","exports","propTypes","PropTypes","bool","arrayOf","shape","number","onCancel","func","displayName"],"sources":["../../../../../src/components/Rates/components/ModalExtras/ModalExtras.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, InputSelect, Modal, Notification, ScrollView, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getCaption } from './helpers';\nimport { L10N } from './ModalExtras.l10n';\nimport * as style from './ModalExtras.module.css';\nimport { getGuestLabel } from '../../../helpers';\nimport { EVENT } from '../../../helpers';\nimport { getLabelTaxes } from '../../helpers';\nimport { PriceDetails } from '../Item/components';\n\nconst ModalExtras = ({\n busy,\n cart = [],\n extras: propExtras = [],\n taxesType,\n visible = false,\n onSubmit = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const {\n value: { currency, finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} } = {},\n } = useStore();\n\n const [extras, setExtras] = useState(propExtras);\n\n useEffect(() => {\n if (visible) {\n setExtras(propExtras);\n Event.publish(EVENT.METRICS, { id: 'RATES:EXTRAS' });\n }\n }, [propExtras, visible]);\n\n const handleChange = ({ id, field, value } = {}) => {\n // ! Why parse Number()? should come from the service.\n setExtras(extras.map((extra) => ({ ...extra, [field]: extra.id === id ? parseInt(value) : extra[field] })));\n };\n\n const handleSelect = (id) => {\n const next = extras.map(({ selected = false, ...extra }) => ({\n ...extra,\n selected: extra.id === id ? !selected : selected,\n }));\n\n setExtras(next);\n\n Event.publish(EVENT.METRICS, {\n id: `RATES:EXTRAS:${\n next.filter(({ selected }) => selected).length > extras.filter(({ selected }) => selected).length\n ? 'ADD'\n : 'REMOVE'\n }`,\n });\n };\n\n const handleSubmit = () => {\n onSubmit(\n extras\n .filter((item) => item.selected || item.included)\n .map(({ amount, baseValue, nights, id, included, valueAmount, valueNights }) => ({\n id,\n included,\n amount: parseInt(valueAmount || amount),\n nights: parseInt(valueNights || nights),\n value: baseValue[valueAmount || amount][valueNights || nights]?.price,\n })),\n );\n };\n\n const hasSelected = extras.filter((item) => !!item.selected).length > 0;\n const total = cart.reduce((value, { price } = {}) => value + price, 0);\n const totalExtras = extras\n .filter((item) => item.selected)\n .reduce(\n (total, { amount, nights, valueAmount, valueNights, value = {} } = {}) =>\n total + (value[valueAmount || amount][valueNights || nights]?.price || 0),\n 0,\n );\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n const standaloneCard = extras.length === 1;\n const currencyFormatProps = { currency, maximumFractionDigits: 0, minimumFractionDigits: 0 };\n const { testId } = others;\n\n return (\n <Modal\n fit\n title={translate(L10N.LABEL_ENHANCED_YOUR_STAY)}\n visible={visible}\n onClose={handleSubmit}\n className={style.modal}\n testId={testId}\n >\n <ScrollView scrollIndicator scrollTo={visible ? 0.5 : undefined} snap={false} className={style.scrollView}>\n <View row className={style.container}>\n {extras.map(\n ({\n accommodationThreshold = 0,\n amount = 0,\n conditions,\n frequency,\n guestThreshold = 0,\n guestType,\n id,\n image,\n included = false,\n inputGuests = false,\n inputNights = false,\n nights = 0,\n selected = false,\n text,\n title,\n type,\n value = {},\n valueAmount = amount,\n valueNights = nights,\n } = {}) => {\n const { price: total } = value[valueAmount][valueNights] || {};\n\n return (\n <View\n key={id}\n wide\n className={styles(\n style.card,\n standaloneCard && style.standalone,\n hasSelected && selected ? style.selected : undefined,\n )}\n >\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n\n <View wide className={[style.gap, style.offset, style.anchor]}>\n <Text bold>{title}</Text>\n {text && <Text small>{text}</Text>}\n\n {accommodationThreshold > 0 && (\n <Notification inline small warning>\n {translate(L10N.LABEL_APPLIES_SELECTED_ROOMS, { value: accommodationThreshold })}\n </Notification>\n )}\n\n {guestThreshold > 0 && (\n <Notification inline small warning>\n {translate(L10N.LABEL_APPLIES_INDIVIDUALS_RESERVATION, { value: guestThreshold })}\n </Notification>\n )}\n\n {conditions && (\n <Text light small>\n {conditions}\n </Text>\n )}\n\n {(inputGuests || inputNights) && (\n <View row className={styles(style.gap, style.inputs)}>\n {inputGuests && (\n <InputSelect\n capitalize\n name=\"guests\"\n label={getGuestLabel({ plural: true, type: guestType }, translate)}\n options={Array.from({ length: amount }).map((_, index) => index + 1)}\n value={valueAmount?.toString()}\n onChange={(value) => handleChange({ id, field: 'valueAmount', value })}\n />\n )}\n {inputNights && (\n <InputSelect\n name=\"nights\"\n label={translate(L10N.LABEL_NIGHTS)}\n options={Array.from({ length: nights }).map((_, index) => index + 1)}\n value={valueNights?.toString()}\n onChange={(value) => handleChange({ id, field: 'valueNights', value })}\n />\n )}\n </View>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween]}>\n <View>\n <Text bold headline>\n {total ? currencyFormat({ ...currencyFormatProps, value: total }) : translate(L10N.LABEL_FREE)}\n </Text>\n <Text light small>\n {getCaption(\n {\n accommodationType,\n amount,\n frequency,\n guestType,\n inputGuests,\n type,\n valueAmount,\n valueNights,\n },\n translate,\n )}\n </Text>\n </View>\n\n <Button\n small\n secondary={!selected && !included}\n onPress={!included ? () => handleSelect(id) : undefined}\n >\n {translate(included ? L10N.LABEL_INCLUDED : selected ? L10N.ACTION_REMOVE : L10N.ACTION_ADD)}\n </Button>\n </View>\n </View>\n );\n },\n )}\n </View>\n </ScrollView>\n\n <View row className={style.footer}>\n {total > 0 && (\n <View className={style.total}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ ...currencyFormatProps, value: total + totalExtras })}\n </Text>\n\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n <PriceDetails\n extras={extras.filter(({ selected }) => selected)}\n cart={cart}\n metrics=\"RATES:EXTRAS\"\n taxesType={taxesType}\n {...others}\n className={style.priceDetails}\n />\n </View>\n )}\n\n <Button busy={busy} onPress={handleSubmit} testId={testId ? `${testId}-submit` : undefined}>\n {translate(hasSelected ? L10N.ACTION_RESERVE : L10N.ACTION_CONTINUE_WITHOUT_EXTRAS)}\n </Button>\n </View>\n </Modal>\n );\n};\n\nModalExtras.propTypes = {\n busy: PropTypes.bool,\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n taxesType: PropTypes.number,\n visible: PropTypes.bool,\n onCancel: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nModalExtras.displayName = 'Mirai:Core:Rates:ModalExtras';\n\nexport { ModalExtras };\n"],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.OTAPrices = void 0;
7
+ var _dataSources = require("@mirai/data-sources");
8
+ var _locale = require("@mirai/locale");
9
+ var _ui = require("@mirai/ui");
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _OTAPrices = require("./OTAPrices.l10n");
13
+ var style = _interopRequireWildcard(require("./OTAPrices.module.css"));
14
+ var _OTAPrices2 = _interopRequireDefault(require("./OTAPrices.skeleton"));
15
+ var _Core = require("../../../../Core.constants");
16
+ var _shared__ = require("../../../__shared__");
17
+ 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); }
18
+ 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; }
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
+ const OTAPrices = _ref => {
22
+ let {
23
+ ...others
24
+ } = _ref;
25
+ const {
26
+ isMobile
27
+ } = (0, _ui.useDevice)();
28
+ const {
29
+ currency,
30
+ locale,
31
+ translate
32
+ } = (0, _locale.useLocale)();
33
+ const {
34
+ value: {
35
+ finder: {
36
+ place
37
+ } = {},
38
+ performance = []
39
+ } = {}
40
+ } = (0, _dataSources.useStore)();
41
+ const [dataSource, setDataSource] = (0, _react.useState)();
42
+ const [fetching, setFetching] = (0, _react.useState)(true);
43
+ const [otas, setOtas] = (0, _react.useState)([]);
44
+ const hasOTA = performance.some(_ref2 => {
45
+ let {
46
+ instances = [],
47
+ type
48
+ } = _ref2;
49
+ return type === _Core.PERFORMANCE.COMPARE && instances.length > 0;
50
+ });
51
+ (0, _react.useEffect)(() => {
52
+ if (process.env.NODE_ENV === 'development') {
53
+ localStorage.setItem('cmprm_screens_override', '[{ "type": "StartsWith", "path": "http://local.mirai.com:8080", "id_screen": 1233 }]');
54
+ }
55
+ const handleHeaderReady = event => {
56
+ const {
57
+ detail: {
58
+ currency,
59
+ is_hide: disabled = false,
60
+ price
61
+ } = {}
62
+ } = event;
63
+ if (disabled) {
64
+ window.removeEventListener('cmprm_event_rc_header_ready', handleHeaderReady);
65
+ window.removeEventListener('cmprm_event_rc_ota_ready', handleOTAReady);
66
+ }
67
+ setDataSource({
68
+ currency,
69
+ disabled,
70
+ price
71
+ });
72
+ };
73
+ const handleOTAReady = event => {
74
+ const {
75
+ detail: {
76
+ currency,
77
+ id_ota: id,
78
+ ota_name: name,
79
+ price
80
+ } = {}
81
+ } = event;
82
+ setOtas(prevOtas => [...prevOtas, {
83
+ currency,
84
+ id,
85
+ name,
86
+ price
87
+ }]);
88
+ };
89
+ window.addEventListener('cmprm_event_rc_header_ready', handleHeaderReady);
90
+ window.addEventListener('cmprm_event_rc_ota_ready', handleOTAReady);
91
+ return () => {
92
+ window.removeEventListener('cmprm_event_rc_header_ready', handleHeaderReady);
93
+ window.removeEventListener('cmprm_event_rc_ota_ready', handleOTAReady);
94
+ };
95
+ }, []);
96
+ (0, _react.useEffect)(() => {
97
+ setFetching(true);
98
+ let timeout = setTimeout(() => setFetching(false), 5000);
99
+ return () => clearTimeout(timeout);
100
+ }, [otas]);
101
+ (0, _react.useEffect)(() => {
102
+ setDataSource();
103
+ setOtas([]);
104
+ }, [currency, place]);
105
+ const currencyFormatProps = {
106
+ currency,
107
+ locale,
108
+ maximumFractionDigits: 0
109
+ };
110
+ const {
111
+ disabled = false
112
+ } = dataSource || {};
113
+ return dataSource && !disabled ? /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
114
+ row: !isMobile,
115
+ className: style.container
116
+ }), /*#__PURE__*/_react.default.createElement(_ui.View, {
117
+ row: true,
118
+ className: style.title
119
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, null, translate(_OTAPrices.L10N.LABEL_OUR_BEST_ONLINE_RATE)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
120
+ accent: true,
121
+ bold: true,
122
+ headline: true
123
+ }, (0, _locale.currencyFormat)({
124
+ ...currencyFormatProps,
125
+ value: dataSource.price
126
+ }))), /*#__PURE__*/_react.default.createElement(_ui.View, {
127
+ row: true,
128
+ className: style.items
129
+ }, [...otas].sort((a, b) => a.price - b.price).map(_ref3 => {
130
+ let {
131
+ id,
132
+ name,
133
+ price
134
+ } = _ref3;
135
+ return /*#__PURE__*/_react.default.createElement(_ui.View, {
136
+ key: id,
137
+ className: style.item
138
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
139
+ small: true
140
+ }, name), /*#__PURE__*/_react.default.createElement(_ui.Text, {
141
+ action: isMobile
142
+ }, (0, _locale.currencyFormat)({
143
+ ...currencyFormatProps,
144
+ value: price
145
+ })));
146
+ }), fetching && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, Array.from({
147
+ length: 4 - otas.length
148
+ }, (_, index) => /*#__PURE__*/_react.default.createElement(_ui.View, {
149
+ key: "skeleton:".concat(index),
150
+ className: style.item
151
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
152
+ small: true
153
+ }, "OTA Name"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
154
+ action: isMobile,
155
+ bold: true
156
+ }, "???$")))))) : !disabled && hasOTA ? /*#__PURE__*/_react.default.createElement(_OTAPrices2.default, null) : null;
157
+ };
158
+ exports.OTAPrices = OTAPrices;
159
+ OTAPrices.displayName = 'Mirai:Core:OTAPrices';
160
+ OTAPrices.propTypes = {
161
+ children: _propTypes.default.node,
162
+ className: _propTypes.default.any,
163
+ columnMode: _propTypes.default.bool,
164
+ disabled: _propTypes.default.bool,
165
+ focus: _propTypes.default.bool,
166
+ rowMode: _propTypes.default.bool
167
+ };
168
+ //# sourceMappingURL=OTAPrices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OTAPrices.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_OTAPrices","style","_OTAPrices2","_Core","_shared__","_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","OTAPrices","_ref","others","isMobile","useDevice","currency","locale","translate","useLocale","value","finder","place","performance","useStore","dataSource","setDataSource","useState","fetching","setFetching","otas","setOtas","hasOTA","some","_ref2","instances","type","PERFORMANCE","COMPARE","useEffect","process","env","NODE_ENV","localStorage","setItem","handleHeaderReady","event","detail","is_hide","disabled","price","window","removeEventListener","handleOTAReady","id_ota","id","ota_name","name","prevOtas","addEventListener","timeout","setTimeout","clearTimeout","currencyFormatProps","maximumFractionDigits","createElement","View","row","className","container","title","Text","L10N","LABEL_OUR_BEST_ONLINE_RATE","accent","bold","headline","currencyFormat","items","sort","b","map","_ref3","item","small","action","Fragment","Array","from","_","index","concat","Skeleton","exports","displayName","propTypes","children","PropTypes","node","any","columnMode","bool","focus","rowMode"],"sources":["../../../../../src/components/Rates/components/OTAPrices/OTAPrices.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './OTAPrices.l10n';\nimport * as style from './OTAPrices.module.css';\nimport OTAPricesSkeleton from './OTAPrices.skeleton';\nimport { PERFORMANCE } from '../../../../Core.constants';\nimport { Skeleton } from '../../../__shared__';\n\nconst OTAPrices = ({ ...others }) => {\n const { isMobile } = useDevice();\n const { currency, locale, translate } = useLocale();\n const { value: { finder: { place } = {}, performance = [] } = {} } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [fetching, setFetching] = useState(true);\n const [otas, setOtas] = useState([]);\n\n const hasOTA = performance.some(({ instances = [], type }) => type === PERFORMANCE.COMPARE && instances.length > 0);\n\n useEffect(() => {\n if (process.env.NODE_ENV === 'development') {\n localStorage.setItem(\n 'cmprm_screens_override',\n '[{ \"type\": \"StartsWith\", \"path\": \"http://local.mirai.com:8080\", \"id_screen\": 1233 }]',\n );\n }\n\n const handleHeaderReady = (event) => {\n const { detail: { currency, is_hide: disabled = false, price } = {} } = event;\n if (disabled) {\n window.removeEventListener('cmprm_event_rc_header_ready', handleHeaderReady);\n window.removeEventListener('cmprm_event_rc_ota_ready', handleOTAReady);\n }\n setDataSource({ currency, disabled, price });\n };\n\n const handleOTAReady = (event) => {\n const { detail: { currency, id_ota: id, ota_name: name, price } = {} } = event;\n\n setOtas((prevOtas) => [...prevOtas, { currency, id, name, price }]);\n };\n\n window.addEventListener('cmprm_event_rc_header_ready', handleHeaderReady);\n window.addEventListener('cmprm_event_rc_ota_ready', handleOTAReady);\n\n return () => {\n window.removeEventListener('cmprm_event_rc_header_ready', handleHeaderReady);\n window.removeEventListener('cmprm_event_rc_ota_ready', handleOTAReady);\n };\n }, []);\n\n useEffect(() => {\n setFetching(true);\n let timeout = setTimeout(() => setFetching(false), 5000);\n\n return () => clearTimeout(timeout);\n }, [otas]);\n\n useEffect(() => {\n setDataSource();\n setOtas([]);\n }, [currency, place]);\n\n const currencyFormatProps = { currency, locale, maximumFractionDigits: 0 };\n const { disabled = false } = dataSource || {};\n\n return dataSource && !disabled ? (\n <View {...others} row={!isMobile} className={style.container}>\n <View row className={style.title}>\n <Text>{translate(L10N.LABEL_OUR_BEST_ONLINE_RATE)}</Text>\n <Text accent bold headline>\n {currencyFormat({ ...currencyFormatProps, value: dataSource.price })}\n </Text>\n </View>\n <View row className={style.items}>\n {[...otas]\n .sort((a, b) => a.price - b.price)\n .map(({ id, name, price }) => (\n <View key={id} className={style.item}>\n <Text small>{name}</Text>\n <Text action={isMobile}>{currencyFormat({ ...currencyFormatProps, value: price })}</Text>\n </View>\n ))}\n\n {fetching && (\n <>\n {Array.from({ length: 4 - otas.length }, (_, index) => (\n <View key={`skeleton:${index}`} className={style.item}>\n <Skeleton small>OTA Name</Skeleton>\n <Skeleton action={isMobile} bold>\n ???$\n </Skeleton>\n </View>\n ))}\n </>\n )}\n </View>\n </View>\n ) : !disabled && hasOTA ? (\n <OTAPricesSkeleton />\n ) : null;\n};\n\nOTAPrices.displayName = 'Mirai:Core:OTAPrices';\n\nOTAPrices.propTypes = {\n children: PropTypes.node,\n className: PropTypes.any,\n columnMode: PropTypes.bool,\n disabled: PropTypes.bool,\n focus: PropTypes.bool,\n rowMode: PropTypes.bool,\n};\n\nexport { OTAPrices };\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.L10N = void 0;
7
+ const L10N = exports.L10N = {
8
+ LABEL_OUR_BEST_ONLINE_RATE: {
9
+ id: 'finder.label.our_best_online_rate'
10
+ }
11
+ };
12
+ //# sourceMappingURL=OTAPrices.l10n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OTAPrices.l10n.js","names":["L10N","exports","LABEL_OUR_BEST_ONLINE_RATE","id"],"sources":["../../../../../src/components/Rates/components/OTAPrices/OTAPrices.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_OUR_BEST_ONLINE_RATE: { id: 'finder.label.our_best_online_rate' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,0BAA0B,EAAE;IAAEC,EAAE,EAAE;EAAoC;AACxE,CAAC"}
@@ -0,0 +1,74 @@
1
+ .container {
2
+ align-items: normal;
3
+ background-color: var(--mirai-ui-base);
4
+ border-radius: var(--mirai-ui-border-radius);
5
+ border: solid var(--mirai-ui-border-width) var(--mirai-ui-accent-border);
6
+ overflow: hidden;
7
+ }
8
+
9
+ .container > :first-child > * {
10
+ width: max-content;
11
+ }
12
+
13
+ .title {
14
+ gap: var(--mirai-ui-space-S);
15
+ }
16
+
17
+ .items {
18
+ overflow-x: auto;
19
+ width: 100%;
20
+ }
21
+
22
+ .item {
23
+ align-items: center;
24
+ flex-wrap: wrap;
25
+ }
26
+
27
+ /* S */
28
+ @media only screen and (max-width: 480px) {
29
+ .container > :first-child {
30
+ border-bottom: solid var(--mirai-ui-border-width) var(--mirai-ui-accent-border);
31
+ padding: var(--mirai-ui-space-S);
32
+ }
33
+
34
+ .title {
35
+ justify-content: space-between;
36
+ }
37
+
38
+ .items {
39
+ align-items: center;
40
+ padding: 0 var(--mirai-ui-space-XS);
41
+ }
42
+
43
+ .item {
44
+ padding: var(--mirai-ui-space-XS) 0;
45
+ max-width: 25%;
46
+ min-width: 25%;
47
+ }
48
+ }
49
+
50
+ /* M & L */
51
+ @media only screen and (min-width: 481px) {
52
+ .container > * {
53
+ padding: var(--mirai-ui-space-M);
54
+ }
55
+ }
56
+
57
+ /* M */
58
+ @media only screen and (min-width: 481px) and (max-width: 1179px) {
59
+ .item {
60
+ padding: var(--mirai-ui-space-XS) 0;
61
+ width: 33%;
62
+ }
63
+ }
64
+
65
+ /* L */
66
+ @media only screen and (min-width: 1180px) {
67
+ .items {
68
+ margin-left: var(--mirai-ui-space-M);
69
+ }
70
+
71
+ .item {
72
+ width: 25%;
73
+ }
74
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _ui = require("@mirai/ui");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _shared__ = require("../../../__shared__");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
+ const OTAPricesSkeleton = _ref => {
13
+ let {
14
+ ...others
15
+ } = _ref;
16
+ const {
17
+ isMobile
18
+ } = (0, _ui.useDevice)();
19
+ return /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, others, {
20
+ base: true,
21
+ row: !isMobile,
22
+ style: {
23
+ border: 'solid 1px var(--mirai-ui-content-border)'
24
+ }
25
+ }), /*#__PURE__*/_react.default.createElement(_ui.View, {
26
+ style: {
27
+ borderBottom: isMobile ? 'solid 1px var(--mirai-ui-content-border)' : undefined,
28
+ padding: isMobile ? 'var(--mirai-ui-space-S)' : 'var(--mirai-ui-space-M)'
29
+ }
30
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
31
+ style: {
32
+ width: 'max-content'
33
+ }
34
+ }, "Our best online rate is $???!")), /*#__PURE__*/_react.default.createElement(_ui.View, {
35
+ row: true,
36
+ style: {
37
+ padding: isMobile ? 'var(--mirai-ui-space-XS)' : 'var(--mirai-ui-space-M)'
38
+ },
39
+ wide: true
40
+ }, Array.from({
41
+ length: 4
42
+ }).map((_, index) => /*#__PURE__*/_react.default.createElement(_ui.View, {
43
+ key: index,
44
+ style: {
45
+ alignItems: 'center',
46
+ width: '25%'
47
+ }
48
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
49
+ small: true
50
+ }, "OTA Name"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
51
+ action: isMobile,
52
+ bold: true
53
+ }, "$???")))));
54
+ };
55
+ OTAPricesSkeleton.displayName = 'Mirai:Core:OTAPrices:Skeleton';
56
+ OTAPricesSkeleton.propTypes = {};
57
+ var _default = exports.default = OTAPricesSkeleton;
58
+ //# sourceMappingURL=OTAPrices.skeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OTAPrices.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","OTAPricesSkeleton","_ref","others","isMobile","useDevice","createElement","Skeleton","base","row","style","border","View","borderBottom","undefined","padding","width","wide","Array","from","map","_","index","alignItems","small","action","bold","displayName","propTypes","_default","exports"],"sources":["../../../../../src/components/Rates/components/OTAPrices/OTAPrices.skeleton.jsx"],"sourcesContent":["import { useDevice, View } from '@mirai/ui';\nimport React from 'react';\n\nimport { Skeleton } from '../../../__shared__';\n\nconst OTAPricesSkeleton = ({ ...others }) => {\n const { isMobile } = useDevice();\n\n return (\n <Skeleton\n {...others}\n base\n row={!isMobile}\n style={{\n border: 'solid 1px var(--mirai-ui-content-border)',\n }}\n >\n <View\n style={{\n borderBottom: isMobile ? 'solid 1px var(--mirai-ui-content-border)' : undefined,\n padding: isMobile ? 'var(--mirai-ui-space-S)' : 'var(--mirai-ui-space-M)',\n }}\n >\n <Skeleton style={{ width: 'max-content' }}>Our best online rate is $???!</Skeleton>\n </View>\n\n <View row style={{ padding: isMobile ? 'var(--mirai-ui-space-XS)' : 'var(--mirai-ui-space-M)' }} wide>\n {Array.from({ length: 4 }).map((_, index) => (\n <View key={index} style={{ alignItems: 'center', width: '25%' }}>\n <Skeleton small>OTA Name</Skeleton>\n <Skeleton action={isMobile} bold>\n $???\n </Skeleton>\n </View>\n ))}\n </View>\n </Skeleton>\n );\n};\n\nOTAPricesSkeleton.displayName = 'Mirai:Core:OTAPrices:Skeleton';\n\nOTAPricesSkeleton.propTypes = {};\n\nexport default OTAPricesSkeleton;\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AAA+C,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;AAE/C,MAAMQ,iBAAiB,GAAGC,IAAA,IAAmB;EAAA,IAAlB;IAAE,GAAGC;EAAO,CAAC,GAAAD,IAAA;EACtC,MAAM;IAAEE;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAEhC,oBACExB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ,EAAApB,QAAA,KACHgB,MAAM;IACVK,IAAI;IACJC,GAAG,EAAE,CAACL,QAAS;IACfM,KAAK,EAAE;MACLC,MAAM,EAAE;IACV;EAAE,iBAEF9B,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAiC,IAAI;IACHF,KAAK,EAAE;MACLG,YAAY,EAAET,QAAQ,GAAG,0CAA0C,GAAGU,SAAS;MAC/EC,OAAO,EAAEX,QAAQ,GAAG,yBAAyB,GAAG;IAClD;EAAE,gBAEFvB,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACG,KAAK,EAAE;MAAEM,KAAK,EAAE;IAAc;EAAE,GAAC,+BAAuC,CAC9E,CAAC,eAEPnC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAiC,IAAI;IAACH,GAAG;IAACC,KAAK,EAAE;MAAEK,OAAO,EAAEX,QAAQ,GAAG,0BAA0B,GAAG;IAA0B,CAAE;IAACa,IAAI;EAAA,GAClGC,KAAK,CAACC,IAAI,CAAC;IAAEzB,MAAM,EAAE;EAAE,CAAC,CAAC,CAAC0B,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,kBACtCzC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAAC3B,GAAA,CAAAiC,IAAI;IAAChB,GAAG,EAAE0B,KAAM;IAACZ,KAAK,EAAE;MAAEa,UAAU,EAAE,QAAQ;MAAEP,KAAK,EAAE;IAAM;EAAE,gBAC9DnC,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACiB,KAAK;EAAA,GAAC,UAAkB,CAAC,eACnC3C,MAAA,CAAAK,OAAA,CAAAoB,aAAA,CAACvB,SAAA,CAAAwB,QAAQ;IAACkB,MAAM,EAAErB,QAAS;IAACsB,IAAI;EAAA,GAAC,MAEvB,CACN,CACP,CACG,CACE,CAAC;AAEf,CAAC;AAEDzB,iBAAiB,CAAC0B,WAAW,GAAG,+BAA+B;AAE/D1B,iBAAiB,CAAC2B,SAAS,GAAG,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAA5C,OAAA,GAElBe,iBAAiB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _OTAPrices = require("./OTAPrices");
7
+ Object.keys(_OTAPrices).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _OTAPrices[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _OTAPrices[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_OTAPrices","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../../src/components/Rates/components/OTAPrices/index.js"],"sourcesContent":["export * from './OTAPrices';\n"],"mappings":";;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -3,71 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.KPI_EVENTS = exports.DEFAULT_PERFORMANCE = exports.CONSENT_MODE_REQUIRED = exports.CONSENT_MODE_ANSWERED = void 0;
6
+ exports.KPI_EVENTS = exports.CONSENT_MODE_REQUIRED = exports.CONSENT_MODE_ANSWERED = void 0;
7
7
  var _Core = require("../../Core.constants");
8
- const DEFAULT_PERFORMANCE = exports.DEFAULT_PERFORMANCE = [{
9
- type: 1,
10
- instances: [{
11
- idAnalytics: 'G-EW4M987YRE',
12
- propertyId: '337963856',
13
- serviceAccount: 'ANALYTICS11',
14
- id: 42011
15
- }]
16
- }, {
17
- type: 2,
18
- instances: [{
19
- idAdwords: '604678444',
20
- conversionLabel: 'S0SLCLqv8toBEKzSqqAC',
21
- cookiePrefix: 'MIRAI',
22
- id: 55146
23
- }]
24
- }, {
25
- type: 3,
26
- instances: [{
27
- idGTM: 'GTM-M3CPG48',
28
- id: 55265
29
- }, {
30
- idGTM: 'GTM-PZG8RRXL',
31
- id: 55266
32
- }, {
33
- idGTM: 'GTM-M3CPG48',
34
- id: 55267
35
- }]
36
- }, {
37
- type: 4,
38
- instances: [{
39
- id: 47811
40
- }]
41
- }, {
42
- type: 5,
43
- instances: [{
44
- pixelId: '999999999',
45
- testEventCode: 'TEST9826',
46
- id: 55182
47
- }]
48
- }, {
49
- type: 6,
50
- instances: [{
51
- id: 55179
52
- }]
53
- }, {
54
- type: 7,
55
- instances: [{
56
- idAffilired: '999999',
57
- id: 55178
58
- }]
59
- }, {
60
- type: 8,
61
- instances: [{
62
- idBing: '5979008',
63
- id: 55180
64
- }]
65
- }, {
66
- type: 9,
67
- instances: [{
68
- id: 42010
69
- }]
70
- }];
71
8
  const CONSENT_MODE_ANSWERED = exports.CONSENT_MODE_ANSWERED = [_Core.PERFORMANCE.ANALYTICS, _Core.PERFORMANCE.COMPARE, _Core.PERFORMANCE.GTM, _Core.PERFORMANCE.GOOGLE_ADS];
72
9
  const CONSENT_MODE_REQUIRED = exports.CONSENT_MODE_REQUIRED = [_Core.PERFORMANCE.AFFILIRED, _Core.PERFORMANCE.BING, _Core.PERFORMANCE.FACEBOOK, _Core.PERFORMANCE.THE_HOTEL_NETWORK];
73
10
  const KPI_EVENTS = exports.KPI_EVENTS = ['UNAVAILABILITY:RENDER', 'RATES:RENDER', 'CHECKOUT:RENDER', 'BOOKING:RENDER'];
@@ -1 +1 @@
1
- {"version":3,"file":"PerformanceManager.constants.js","names":["_Core","require","DEFAULT_PERFORMANCE","exports","type","instances","idAnalytics","propertyId","serviceAccount","id","idAdwords","conversionLabel","cookiePrefix","idGTM","pixelId","testEventCode","idAffilired","idBing","CONSENT_MODE_ANSWERED","PERFORMANCE","ANALYTICS","COMPARE","GTM","GOOGLE_ADS","CONSENT_MODE_REQUIRED","AFFILIRED","BING","FACEBOOK","THE_HOTEL_NETWORK","KPI_EVENTS"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.constants.js"],"sourcesContent":["import { PERFORMANCE } from '../../Core.constants';\n\nconst DEFAULT_PERFORMANCE = [\n {\n type: 1,\n instances: [{ idAnalytics: 'G-EW4M987YRE', propertyId: '337963856', serviceAccount: 'ANALYTICS11', id: 42011 }],\n },\n {\n type: 2,\n instances: [{ idAdwords: '604678444', conversionLabel: 'S0SLCLqv8toBEKzSqqAC', cookiePrefix: 'MIRAI', id: 55146 }],\n },\n {\n type: 3,\n instances: [\n { idGTM: 'GTM-M3CPG48', id: 55265 },\n { idGTM: 'GTM-PZG8RRXL', id: 55266 },\n { idGTM: 'GTM-M3CPG48', id: 55267 },\n ],\n },\n { type: 4, instances: [{ id: 47811 }] },\n { type: 5, instances: [{ pixelId: '999999999', testEventCode: 'TEST9826', id: 55182 }] },\n { type: 6, instances: [{ id: 55179 }] },\n { type: 7, instances: [{ idAffilired: '999999', id: 55178 }] },\n { type: 8, instances: [{ idBing: '5979008', id: 55180 }] },\n { type: 9, instances: [{ id: 42010 }] },\n];\n\nconst CONSENT_MODE_ANSWERED = [PERFORMANCE.ANALYTICS, PERFORMANCE.COMPARE, PERFORMANCE.GTM, PERFORMANCE.GOOGLE_ADS];\n\nconst CONSENT_MODE_REQUIRED = [\n PERFORMANCE.AFFILIRED,\n PERFORMANCE.BING,\n PERFORMANCE.FACEBOOK,\n PERFORMANCE.THE_HOTEL_NETWORK,\n];\n\nconst KPI_EVENTS = ['UNAVAILABILITY:RENDER', 'RATES:RENDER', 'CHECKOUT:RENDER', 'BOOKING:RENDER'];\n\nexport { DEFAULT_PERFORMANCE, CONSENT_MODE_ANSWERED, CONSENT_MODE_REQUIRED, KPI_EVENTS };\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,MAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,CAC1B;EACEE,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CAAC;IAAEC,WAAW,EAAE,cAAc;IAAEC,UAAU,EAAE,WAAW;IAAEC,cAAc,EAAE,aAAa;IAAEC,EAAE,EAAE;EAAM,CAAC;AAChH,CAAC,EACD;EACEL,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CAAC;IAAEK,SAAS,EAAE,WAAW;IAAEC,eAAe,EAAE,sBAAsB;IAAEC,YAAY,EAAE,OAAO;IAAEH,EAAE,EAAE;EAAM,CAAC;AACnH,CAAC,EACD;EACEL,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CACT;IAAEQ,KAAK,EAAE,aAAa;IAAEJ,EAAE,EAAE;EAAM,CAAC,EACnC;IAAEI,KAAK,EAAE,cAAc;IAAEJ,EAAE,EAAE;EAAM,CAAC,EACpC;IAAEI,KAAK,EAAE,aAAa;IAAEJ,EAAE,EAAE;EAAM,CAAC;AAEvC,CAAC,EACD;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAEI,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,EACvC;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAES,OAAO,EAAE,WAAW;IAAEC,aAAa,EAAE,UAAU;IAAEN,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,EACxF;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAEI,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,EACvC;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAEW,WAAW,EAAE,QAAQ;IAAEP,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,EAC9D;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAEY,MAAM,EAAE,SAAS;IAAER,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,EAC1D;EAAEL,IAAI,EAAE,CAAC;EAAEC,SAAS,EAAE,CAAC;IAAEI,EAAE,EAAE;EAAM,CAAC;AAAE,CAAC,CACxC;AAED,MAAMS,qBAAqB,GAAAf,OAAA,CAAAe,qBAAA,GAAG,CAACC,iBAAW,CAACC,SAAS,EAAED,iBAAW,CAACE,OAAO,EAAEF,iBAAW,CAACG,GAAG,EAAEH,iBAAW,CAACI,UAAU,CAAC;AAEnH,MAAMC,qBAAqB,GAAArB,OAAA,CAAAqB,qBAAA,GAAG,CAC5BL,iBAAW,CAACM,SAAS,EACrBN,iBAAW,CAACO,IAAI,EAChBP,iBAAW,CAACQ,QAAQ,EACpBR,iBAAW,CAACS,iBAAiB,CAC9B;AAED,MAAMC,UAAU,GAAA1B,OAAA,CAAA0B,UAAA,GAAG,CAAC,uBAAuB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,CAAC"}
1
+ {"version":3,"file":"PerformanceManager.constants.js","names":["_Core","require","CONSENT_MODE_ANSWERED","exports","PERFORMANCE","ANALYTICS","COMPARE","GTM","GOOGLE_ADS","CONSENT_MODE_REQUIRED","AFFILIRED","BING","FACEBOOK","THE_HOTEL_NETWORK","KPI_EVENTS"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.constants.js"],"sourcesContent":["import { PERFORMANCE } from '../../Core.constants';\n\nconst CONSENT_MODE_ANSWERED = [PERFORMANCE.ANALYTICS, PERFORMANCE.COMPARE, PERFORMANCE.GTM, PERFORMANCE.GOOGLE_ADS];\n\nconst CONSENT_MODE_REQUIRED = [\n PERFORMANCE.AFFILIRED,\n PERFORMANCE.BING,\n PERFORMANCE.FACEBOOK,\n PERFORMANCE.THE_HOTEL_NETWORK,\n];\n\nconst KPI_EVENTS = ['UNAVAILABILITY:RENDER', 'RATES:RENDER', 'CHECKOUT:RENDER', 'BOOKING:RENDER'];\n\nexport { CONSENT_MODE_ANSWERED, CONSENT_MODE_REQUIRED, KPI_EVENTS };\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,MAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG,CAACE,iBAAW,CAACC,SAAS,EAAED,iBAAW,CAACE,OAAO,EAAEF,iBAAW,CAACG,GAAG,EAAEH,iBAAW,CAACI,UAAU,CAAC;AAEnH,MAAMC,qBAAqB,GAAAN,OAAA,CAAAM,qBAAA,GAAG,CAC5BL,iBAAW,CAACM,SAAS,EACrBN,iBAAW,CAACO,IAAI,EAChBP,iBAAW,CAACQ,QAAQ,EACpBR,iBAAW,CAACS,iBAAiB,CAC9B;AAED,MAAMC,UAAU,GAAAX,OAAA,CAAAW,UAAA,GAAG,CAAC,uBAAuB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,CAAC"}
@@ -32,7 +32,7 @@ const PerformanceManager = () => {
32
32
  const {
33
33
  value: {
34
34
  components = {},
35
- performance = _PerformanceManager.DEFAULT_PERFORMANCE || [],
35
+ performance = [],
36
36
  ...store
37
37
  }
38
38
  } = (0, _dataSources.useStore)();
@@ -1 +1 @@
1
- {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedEvents","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","value","components","performance","DEFAULT_PERFORMANCE","store","useStore","consentMode","setConsentMode","useState","getConsentMode","ready","setReady","types","setTypes","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","Object","entries","filter","_ref","map","_ref2","key","handleMetrics","_ref3","props","IS_PLAYWRIGHT","host","event","toUpperCase","trim","metric","split","includes","KPI_EVENTS","method","hotelId","mobile","Event","subscribe","COMPONENTS_EVENT","METRICS","unsubscribe","length","interval","setInterval","undefined","nextConsentMode","isGtm","provider","arguments","loadScripts","nextMemoizedPendingEvents","forEach","execute","CONSENT_MODE_ANSWERED","requeue","push","executeEvent","clearInterval","_getPerformance","config","isHotel","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","keys","find","_ref6","response","label","concat","getPerformanceLabel","then","console","log","propConsentMode","loadedComponents","scripts","instances","propInstances","init","once","SCRIPTS","index","domain","Promise","all","loadScript","catch","exports"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect, useState } from 'react';\n\nimport { getConsentMode, getPerformanceLabel } from './helpers';\nimport {\n CONSENT_MODE_ANSWERED,\n CONSENT_MODE_REQUIRED,\n DEFAULT_PERFORMANCE,\n KPI_EVENTS,\n} from './PerformanceManager.constants';\nimport { EVENTS } from './PerformanceManager.events';\nimport { SCRIPTS } from './PerformanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { PERFORMANCE } from '../../Core.constants';\nimport { fetchUrlParams, getPerformance, loadScript } from '../../helpers';\n\nconst MAX_COUNTER = 5;\nconst { COMPARE, GTM } = PERFORMANCE || {};\n\nlet counter = 0;\nlet memoizedEvents = [];\nlet memoizedPendingEvents = [];\n\nconst PerformanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, performance = DEFAULT_PERFORMANCE || [], ...store },\n } = useStore();\n\n const [consentMode, setConsentMode] = useState(getConsentMode());\n const [ready, setReady] = useState(false);\n const [types, setTypes] = useState([]);\n\n const { hotel = {}, finder: { place } = {}, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n //! TODO: temp fix for 123 compare for first phase\n window.Mirai.urlParameters = fetchUrlParams(location.search);\n\n const metrics = ServiceFeatures.get('metrics', hotel.id) || {};\n const bannedMetrics = Object.entries(metrics)\n .filter(([, value]) => value === false)\n .map(([key]) => key);\n\n const handleMetrics = ({ id, ...props }) => {\n if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;\n const event = id.toUpperCase().trim();\n const [metric] = event.split(':');\n\n if (bannedMetrics.includes(metric) && !KPI_EVENTS.includes(event)) return;\n const method = event.includes('RENDER') ? trackRender : track;\n\n method(event, {\n ...props,\n hotelId: hotel.id,\n instanceId,\n locale,\n mobile: device.mobile,\n session,\n type,\n });\n };\n\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (consentMode && types.length > 0) return;\n\n const interval = setInterval(async () => {\n counter !== undefined && counter++;\n const nextConsentMode = getConsentMode(counter >= MAX_COUNTER);\n const isGtm = (provider) => [COMPARE, GTM].includes(provider);\n\n if (\n (nextConsentMode === undefined &&\n memoizedPendingEvents.filter(({ provider } = {}) => isGtm(provider)).length === 0) ||\n (!nextConsentMode && counter < MAX_COUNTER)\n )\n return;\n\n await loadScripts(\n performance.filter(({ type } = {}) => type !== COMPARE),\n nextConsentMode,\n );\n\n const nextMemoizedPendingEvents = [];\n memoizedPendingEvents.forEach((event = {}) => {\n const { provider } = event;\n const execute = nextConsentMode || (counter >= MAX_COUNTER && CONSENT_MODE_ANSWERED.includes(provider));\n const requeue = nextConsentMode === undefined && !isGtm(provider);\n\n if (!execute || requeue) {\n nextMemoizedPendingEvents.push(event);\n } else {\n executeEvent(event);\n\n if (!nextConsentMode && !isGtm(provider)) nextMemoizedPendingEvents.push(event);\n }\n });\n memoizedPendingEvents = nextMemoizedPendingEvents;\n if (nextConsentMode !== undefined) {\n counter = undefined;\n setConsentMode(nextConsentMode);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode]);\n\n useEffect(() => {\n const { config, finder: { place: { id: [hotelId] = [], isHotel } = {} } = {} } = store;\n\n if (place && ready)\n loadScripts(getPerformance(config, isHotel ? hotelId : undefined)?.filter(({ type } = {}) => type !== COMPARE));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n if (!ready) return;\n\n memoizedEvents.forEach((event) => executeEvent(event));\n memoizedEvents = [];\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ready]);\n\n useEffect(() => {\n const handleEvent = ({ event, ...value }) => {\n const currentConsentMode = getConsentMode();\n\n const availableProviders = performance\n .map(({ type } = {}) => type)\n .filter((type) => !(!currentConsentMode && CONSENT_MODE_ANSWERED.includes(type)))\n .filter((type) => currentConsentMode || !CONSENT_MODE_REQUIRED.includes(type));\n\n Object.entries(EVENTS[event]).forEach(([propProvider, callback = () => {}]) => {\n const provider = parseInt(propProvider);\n const props = { callback, event, provider, value };\n\n if (\n !currentConsentMode &&\n (!availableProviders.includes(provider) || (types.length > 0 && !types.includes(provider)))\n ) {\n if (counter === undefined && ready && CONSENT_MODE_ANSWERED.includes(provider)) executeEvent(props);\n else if (!memoizedPendingEvents.some((item) => item.event === event && item.provider === provider)) {\n memoizedPendingEvents.push(props);\n }\n } else if (ready) executeEvent(props);\n else memoizedEvents.push(props);\n });\n };\n\n Object.keys(EVENTS).forEach((event) => Event.subscribe(event, handleEvent));\n\n return () => Object.keys(EVENTS).forEach((event) => Event.unsubscribe(event, handleEvent));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device, ready, store]);\n\n const executeEvent = ({ provider, callback, value, event } = {}) => {\n const config = performance.find(({ type }) => type === provider);\n const response = callback({ ...value, ...config, device, store });\n if (!response) return;\n\n const label = `⚡️ ${getPerformanceLabel(provider)} ${event}`;\n // eslint-disable-next-line no-console\n response.then ? response.then((value) => console.log(label, value)) : console.log(label, response);\n\n if (provider === GTM) {\n loadScripts(\n performance.filter(({ type } = {}) => type === COMPARE),\n consentMode,\n );\n }\n };\n\n const loadScripts = async (performance = [], propConsentMode = consentMode) => {\n const loadedComponents = Object.keys(components);\n\n const scripts = [];\n performance\n .filter(({ type } = {}) => propConsentMode === true || !CONSENT_MODE_REQUIRED.includes(type))\n .forEach(({ type, instances: propInstances = [] } = {}) => {\n const { components = [], init = () => {}, once = false } = SCRIPTS[type] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n const instances = once ? [propInstances[0]] : propInstances;\n scripts.push(\n ...instances.map((config = {}, index) => ({\n domain: `performance-${getPerformanceLabel(type)}`,\n id: index + 1,\n ...init({ ...config, hotel, loadedComponents }),\n type,\n })),\n );\n }\n });\n\n setReady(false);\n await Promise.all(scripts.map((config) => loadScript(config).catch(() => {})));\n setTypes(scripts.map(({ type } = {}) => type));\n setReady(true);\n };\n\n return null;\n};\n\nexport { PerformanceManager };\n"],"mappings":"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"}
1
+ {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedEvents","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","value","components","performance","store","useStore","consentMode","setConsentMode","useState","getConsentMode","ready","setReady","types","setTypes","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","Object","entries","filter","_ref","map","_ref2","key","handleMetrics","_ref3","props","IS_PLAYWRIGHT","host","event","toUpperCase","trim","metric","split","includes","KPI_EVENTS","method","hotelId","mobile","Event","subscribe","COMPONENTS_EVENT","METRICS","unsubscribe","length","interval","setInterval","undefined","nextConsentMode","isGtm","provider","arguments","loadScripts","nextMemoizedPendingEvents","forEach","execute","CONSENT_MODE_ANSWERED","requeue","push","executeEvent","clearInterval","_getPerformance","config","isHotel","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","keys","find","_ref6","response","label","concat","getPerformanceLabel","then","console","log","propConsentMode","loadedComponents","scripts","instances","propInstances","init","once","SCRIPTS","index","domain","Promise","all","loadScript","catch","exports"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect, useState } from 'react';\n\nimport { getConsentMode, getPerformanceLabel } from './helpers';\nimport { CONSENT_MODE_ANSWERED, CONSENT_MODE_REQUIRED, KPI_EVENTS } from './PerformanceManager.constants';\nimport { EVENTS } from './PerformanceManager.events';\nimport { SCRIPTS } from './PerformanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { PERFORMANCE } from '../../Core.constants';\nimport { fetchUrlParams, getPerformance, loadScript } from '../../helpers';\n\nconst MAX_COUNTER = 5;\nconst { COMPARE, GTM } = PERFORMANCE || {};\n\nlet counter = 0;\nlet memoizedEvents = [];\nlet memoizedPendingEvents = [];\n\nconst PerformanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, performance = [], ...store },\n } = useStore();\n\n const [consentMode, setConsentMode] = useState(getConsentMode());\n const [ready, setReady] = useState(false);\n const [types, setTypes] = useState([]);\n\n const { hotel = {}, finder: { place } = {}, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n //! TODO: temp fix for 123 compare for first phase\n window.Mirai.urlParameters = fetchUrlParams(location.search);\n\n const metrics = ServiceFeatures.get('metrics', hotel.id) || {};\n const bannedMetrics = Object.entries(metrics)\n .filter(([, value]) => value === false)\n .map(([key]) => key);\n\n const handleMetrics = ({ id, ...props }) => {\n if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;\n const event = id.toUpperCase().trim();\n const [metric] = event.split(':');\n\n if (bannedMetrics.includes(metric) && !KPI_EVENTS.includes(event)) return;\n const method = event.includes('RENDER') ? trackRender : track;\n\n method(event, {\n ...props,\n hotelId: hotel.id,\n instanceId,\n locale,\n mobile: device.mobile,\n session,\n type,\n });\n };\n\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (consentMode && types.length > 0) return;\n\n const interval = setInterval(async () => {\n counter !== undefined && counter++;\n const nextConsentMode = getConsentMode(counter >= MAX_COUNTER);\n const isGtm = (provider) => [COMPARE, GTM].includes(provider);\n\n if (\n (nextConsentMode === undefined &&\n memoizedPendingEvents.filter(({ provider } = {}) => isGtm(provider)).length === 0) ||\n (!nextConsentMode && counter < MAX_COUNTER)\n )\n return;\n\n await loadScripts(\n performance.filter(({ type } = {}) => type !== COMPARE),\n nextConsentMode,\n );\n\n const nextMemoizedPendingEvents = [];\n memoizedPendingEvents.forEach((event = {}) => {\n const { provider } = event;\n const execute = nextConsentMode || (counter >= MAX_COUNTER && CONSENT_MODE_ANSWERED.includes(provider));\n const requeue = nextConsentMode === undefined && !isGtm(provider);\n\n if (!execute || requeue) {\n nextMemoizedPendingEvents.push(event);\n } else {\n executeEvent(event);\n\n if (!nextConsentMode && !isGtm(provider)) nextMemoizedPendingEvents.push(event);\n }\n });\n memoizedPendingEvents = nextMemoizedPendingEvents;\n if (nextConsentMode !== undefined) {\n counter = undefined;\n setConsentMode(nextConsentMode);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode]);\n\n useEffect(() => {\n const { config, finder: { place: { id: [hotelId] = [], isHotel } = {} } = {} } = store;\n\n if (place && ready)\n loadScripts(getPerformance(config, isHotel ? hotelId : undefined)?.filter(({ type } = {}) => type !== COMPARE));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n if (!ready) return;\n\n memoizedEvents.forEach((event) => executeEvent(event));\n memoizedEvents = [];\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ready]);\n\n useEffect(() => {\n const handleEvent = ({ event, ...value }) => {\n const currentConsentMode = getConsentMode();\n\n const availableProviders = performance\n .map(({ type } = {}) => type)\n .filter((type) => !(!currentConsentMode && CONSENT_MODE_ANSWERED.includes(type)))\n .filter((type) => currentConsentMode || !CONSENT_MODE_REQUIRED.includes(type));\n\n Object.entries(EVENTS[event]).forEach(([propProvider, callback = () => {}]) => {\n const provider = parseInt(propProvider);\n const props = { callback, event, provider, value };\n\n if (\n !currentConsentMode &&\n (!availableProviders.includes(provider) || (types.length > 0 && !types.includes(provider)))\n ) {\n if (counter === undefined && ready && CONSENT_MODE_ANSWERED.includes(provider)) executeEvent(props);\n else if (!memoizedPendingEvents.some((item) => item.event === event && item.provider === provider)) {\n memoizedPendingEvents.push(props);\n }\n } else if (ready) executeEvent(props);\n else memoizedEvents.push(props);\n });\n };\n\n Object.keys(EVENTS).forEach((event) => Event.subscribe(event, handleEvent));\n\n return () => Object.keys(EVENTS).forEach((event) => Event.unsubscribe(event, handleEvent));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device, ready, store]);\n\n const executeEvent = ({ provider, callback, value, event } = {}) => {\n const config = performance.find(({ type }) => type === provider);\n const response = callback({ ...value, ...config, device, store });\n if (!response) return;\n\n const label = `⚡️ ${getPerformanceLabel(provider)} ${event}`;\n // eslint-disable-next-line no-console\n response.then ? response.then((value) => console.log(label, value)) : console.log(label, response);\n\n if (provider === GTM) {\n loadScripts(\n performance.filter(({ type } = {}) => type === COMPARE),\n consentMode,\n );\n }\n };\n\n const loadScripts = async (performance = [], propConsentMode = consentMode) => {\n const loadedComponents = Object.keys(components);\n\n const scripts = [];\n performance\n .filter(({ type } = {}) => propConsentMode === true || !CONSENT_MODE_REQUIRED.includes(type))\n .forEach(({ type, instances: propInstances = [] } = {}) => {\n const { components = [], init = () => {}, once = false } = SCRIPTS[type] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n const instances = once ? [propInstances[0]] : propInstances;\n scripts.push(\n ...instances.map((config = {}, index) => ({\n domain: `performance-${getPerformanceLabel(type)}`,\n id: index + 1,\n ...init({ ...config, hotel, loadedComponents }),\n type,\n })),\n );\n }\n });\n\n setReady(false);\n await Promise.all(scripts.map((config) => loadScript(config).catch(() => {})));\n setTypes(scripts.map(({ type } = {}) => type));\n setReady(true);\n };\n\n return null;\n};\n\nexport { PerformanceManager };\n"],"mappings":"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"}
@@ -237,7 +237,15 @@ const consolidateStore = async function () {
237
237
  promo,
238
238
  session,
239
239
  tags,
240
- variant: IS_JEST && !window.IS_PLAYWRIGHT ? undefined : urlParams.variant ? urlParams.variant : Math.random() < 0.5 ? 'A' : 'B',
240
+ // Disabled variants manager
241
+ // variant:
242
+ // IS_JEST && !window.IS_PLAYWRIGHT
243
+ // ? undefined
244
+ // : urlParams.variant
245
+ // ? urlParams.variant
246
+ // : Math.random() < 0.5
247
+ // ? 'A'
248
+ // : 'B',
241
249
  // -- components
242
250
  checkout: !IS_JEST && urlParams.checkoutForm ? JSON.parse(urlParams.checkoutForm) : undefined,
243
251
  deals: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getClub","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","accommodationType","getAccommodationType","lodgingDenomination","features","CHAIN","idtokenprovider","idHotel","url","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","variants","Object","entries","map","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","promo","promoCode","parseDate","UTC","checkout","parseInt","showPromoNav","configPromo","promoText","place","find","isHotel","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","rates","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","club","getClub","reduce","_ref2","props","performance","getPerformance","variant","Math","random","checkoutForm","JSON","parse","deals","lisa","cart","split","getMetaRates","meta","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getClub } from './getClub';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties, promo: promoCode } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (tags) {\n place = tags.options.find(\n ({ id: [idHotel] = [], isHotel, value } = {}) =>\n (chainSelectorValue && value === Number(chainSelectorValue)) || (isHotel && hotel.id === idHotel),\n );\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promoCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club: getClub({ config, type, urlParams }),\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n variant:\n IS_JEST && !window.IS_PLAYWRIGHT\n ? undefined\n : urlParams.variant\n ? urlParams.variant\n : Math.random() < 0.5\n ? 'A'\n : 'B',\n // -- components\n checkout: !IS_JEST && urlParams.checkoutForm ? JSON.parse(urlParams.checkoutForm) : undefined,\n deals: undefined,\n finder,\n lisa: undefined,\n rates: {\n cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n meta: !!urlParams.rates,\n },\n rooms: undefined,\n signup: undefined,\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getClub","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","accommodationType","getAccommodationType","lodgingDenomination","features","CHAIN","idtokenprovider","idHotel","url","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","variants","Object","entries","map","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","promo","promoCode","parseDate","UTC","checkout","parseInt","showPromoNav","configPromo","promoText","place","find","isHotel","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","rates","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","club","getClub","reduce","_ref2","props","performance","getPerformance","checkoutForm","JSON","parse","deals","lisa","cart","split","getMetaRates","meta","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getClub } from './getClub';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties, promo: promoCode } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (tags) {\n place = tags.options.find(\n ({ id: [idHotel] = [], isHotel, value } = {}) =>\n (chainSelectorValue && value === Number(chainSelectorValue)) || (isHotel && hotel.id === idHotel),\n );\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promoCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club: getClub({ config, type, urlParams }),\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n // Disabled variants manager\n // variant:\n // IS_JEST && !window.IS_PLAYWRIGHT\n // ? undefined\n // : urlParams.variant\n // ? urlParams.variant\n // : Math.random() < 0.5\n // ? 'A'\n // : 'B',\n // -- components\n checkout: !IS_JEST && urlParams.checkoutForm ? JSON.parse(urlParams.checkoutForm) : undefined,\n deals: undefined,\n finder,\n lisa: undefined,\n rates: {\n cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n meta: !!urlParams.rates,\n },\n rooms: undefined,\n signup: undefined,\n };\n};\n"],"mappings":"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"}
@@ -7,6 +7,69 @@ exports.getPerformance = void 0;
7
7
  var _helpers = require("../components/helpers");
8
8
  var _Core = require("../Core.constants");
9
9
  const MONALISA_ID = '100379008';
10
+ const DEFAULT_PERFORMANCE = [{
11
+ type: 1,
12
+ instances: [{
13
+ idAnalytics: 'G-EW4M987YRE',
14
+ propertyId: '337963856',
15
+ serviceAccount: 'ANALYTICS11',
16
+ id: 42011
17
+ }]
18
+ }, {
19
+ type: 2,
20
+ instances: [{
21
+ idAdwords: '604678444',
22
+ conversionLabel: 'S0SLCLqv8toBEKzSqqAC',
23
+ cookiePrefix: 'MIRAI',
24
+ id: 55146
25
+ }]
26
+ }, {
27
+ type: 3,
28
+ instances: [{
29
+ idGTM: 'GTM-M3CPG48',
30
+ id: 55265
31
+ }, {
32
+ idGTM: 'GTM-PZG8RRXL',
33
+ id: 55266
34
+ }, {
35
+ idGTM: 'GTM-M3CPG48',
36
+ id: 55267
37
+ }]
38
+ }, {
39
+ type: 4,
40
+ instances: [{
41
+ id: 47811
42
+ }]
43
+ }, {
44
+ type: 5,
45
+ instances: [{
46
+ pixelId: '999999999',
47
+ testEventCode: 'TEST9826',
48
+ id: 55182
49
+ }]
50
+ }, {
51
+ type: 6,
52
+ instances: [{
53
+ id: 55179
54
+ }]
55
+ }, {
56
+ type: 7,
57
+ instances: [{
58
+ idAffilired: '999999',
59
+ id: 55178
60
+ }]
61
+ }, {
62
+ type: 8,
63
+ instances: [{
64
+ idBing: '5979008',
65
+ id: 55180
66
+ }]
67
+ }, {
68
+ type: 9,
69
+ instances: [{
70
+ id: 42010
71
+ }]
72
+ }];
10
73
  const getPerformance = function () {
11
74
  let {
12
75
  tracking: {
@@ -16,7 +79,7 @@ const getPerformance = function () {
16
79
  } = {}
17
80
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
18
81
  let hotelId = arguments.length > 1 ? arguments[1] : undefined;
19
- if (!_helpers.IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return;
82
+ if (!_helpers.IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return DEFAULT_PERFORMANCE;
20
83
  if (process.env.NODE_ENV === 'production' && hotelId === MONALISA_ID) return [];
21
84
 
22
85
  // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"getPerformance.js","names":["_helpers","require","_Core","MONALISA_ID","getPerformance","tracking","trackingChain","trackingHotels","others","arguments","length","undefined","hotelId","IS_JEST","process","env","NODE_ENV","hotelTracking","find","idTokenProvider","id","parseInt","Object","keys","forEach","key","filter","TRACKING","map","type","instances","_ref","configuration","idTracking","exports"],"sources":["../../src/helpers/getPerformance.js"],"sourcesContent":["import { IS_JEST } from '../components/helpers';\nimport { TRACKING } from '../Core.constants';\n\nconst MONALISA_ID = '100379008';\n\nexport const getPerformance = ({ tracking: { trackingChain, trackingHotels, ...others } = {} } = {}, hotelId) => {\n if (!IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return;\n\n if (process.env.NODE_ENV === 'production' && hotelId === MONALISA_ID) return [];\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n let tracking = others;\n\n if (trackingChain && trackingHotels) {\n tracking = { ...trackingChain };\n const hotelTracking = hotelId && trackingHotels.find(({ idTokenProvider: id } = {}) => id === parseInt(hotelId));\n\n hotelTracking &&\n Object.keys(tracking).forEach((key) => {\n tracking[key] = [...tracking[key], ...hotelTracking[key]];\n });\n }\n\n // ! -- TODO: Choose which one will load gtag\n return Object.keys(tracking).length > 0\n ? Object.keys(tracking)\n .filter((key) => !!TRACKING[key] && tracking[key].length > 0)\n .map((key) => ({\n type: TRACKING[key],\n instances: tracking[key].map(({ configuration = {}, id: idTracking }) => ({\n ...(configuration !== null ? configuration : {}),\n idTracking,\n })),\n }))\n : undefined;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEA,MAAME,WAAW,GAAG,WAAW;AAExB,MAAMC,cAAc,GAAG,SAAAA,CAAA,EAAmF;EAAA,IAAlF;IAAEC,QAAQ,EAAE;MAAEC,aAAa;MAAEC,cAAc;MAAE,GAAGC;IAAO,CAAC,GAAG,CAAC;EAAE,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,IAAEG,OAAO,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EAC1G,IAAI,CAACE,gBAAO,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIJ,OAAO,KAAKT,WAAW,EAAE;EAElF,IAAIW,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIJ,OAAO,KAAKT,WAAW,EAAE,OAAO,EAAE;;EAE/E;EACA,IAAIE,QAAQ,GAAGG,MAAM;EAErB,IAAIF,aAAa,IAAIC,cAAc,EAAE;IACnCF,QAAQ,GAAG;MAAE,GAAGC;IAAc,CAAC;IAC/B,MAAMW,aAAa,GAAGL,OAAO,IAAIL,cAAc,CAACW,IAAI,CAAC;MAAA,IAAC;QAAEC,eAAe,EAAEC;MAAG,CAAC,GAAAX,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKW,EAAE,KAAKC,QAAQ,CAACT,OAAO,CAAC;IAAA,EAAC;IAEhHK,aAAa,IACXK,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAACmB,OAAO,CAAEC,GAAG,IAAK;MACrCpB,QAAQ,CAACoB,GAAG,CAAC,GAAG,CAAC,GAAGpB,QAAQ,CAACoB,GAAG,CAAC,EAAE,GAAGR,aAAa,CAACQ,GAAG,CAAC,CAAC;IAC3D,CAAC,CAAC;EACN;;EAEA;EACA,OAAOH,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAACK,MAAM,GAAG,CAAC,GACnCY,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAClBqB,MAAM,CAAED,GAAG,IAAK,CAAC,CAACE,cAAQ,CAACF,GAAG,CAAC,IAAIpB,QAAQ,CAACoB,GAAG,CAAC,CAACf,MAAM,GAAG,CAAC,CAAC,CAC5DkB,GAAG,CAAEH,GAAG,KAAM;IACbI,IAAI,EAAEF,cAAQ,CAACF,GAAG,CAAC;IACnBK,SAAS,EAAEzB,QAAQ,CAACoB,GAAG,CAAC,CAACG,GAAG,CAACG,IAAA;MAAA,IAAC;QAAEC,aAAa,GAAG,CAAC,CAAC;QAAEZ,EAAE,EAAEa;MAAW,CAAC,GAAAF,IAAA;MAAA,OAAM;QACxE,IAAIC,aAAa,KAAK,IAAI,GAAGA,aAAa,GAAG,CAAC,CAAC,CAAC;QAChDC;MACF,CAAC;IAAA,CAAC;EACJ,CAAC,CAAC,CAAC,GACLtB,SAAS;AACf,CAAC;AAACuB,OAAA,CAAA9B,cAAA,GAAAA,cAAA"}
1
+ {"version":3,"file":"getPerformance.js","names":["_helpers","require","_Core","MONALISA_ID","DEFAULT_PERFORMANCE","type","instances","idAnalytics","propertyId","serviceAccount","id","idAdwords","conversionLabel","cookiePrefix","idGTM","pixelId","testEventCode","idAffilired","idBing","getPerformance","tracking","trackingChain","trackingHotels","others","arguments","length","undefined","hotelId","IS_JEST","process","env","NODE_ENV","hotelTracking","find","idTokenProvider","parseInt","Object","keys","forEach","key","filter","TRACKING","map","_ref","configuration","idTracking","exports"],"sources":["../../src/helpers/getPerformance.js"],"sourcesContent":["import { IS_JEST } from '../components/helpers';\nimport { TRACKING } from '../Core.constants';\n\nconst MONALISA_ID = '100379008';\n\nconst DEFAULT_PERFORMANCE = [\n {\n type: 1,\n instances: [{ idAnalytics: 'G-EW4M987YRE', propertyId: '337963856', serviceAccount: 'ANALYTICS11', id: 42011 }],\n },\n {\n type: 2,\n instances: [{ idAdwords: '604678444', conversionLabel: 'S0SLCLqv8toBEKzSqqAC', cookiePrefix: 'MIRAI', id: 55146 }],\n },\n {\n type: 3,\n instances: [\n { idGTM: 'GTM-M3CPG48', id: 55265 },\n { idGTM: 'GTM-PZG8RRXL', id: 55266 },\n { idGTM: 'GTM-M3CPG48', id: 55267 },\n ],\n },\n { type: 4, instances: [{ id: 47811 }] },\n { type: 5, instances: [{ pixelId: '999999999', testEventCode: 'TEST9826', id: 55182 }] },\n { type: 6, instances: [{ id: 55179 }] },\n { type: 7, instances: [{ idAffilired: '999999', id: 55178 }] },\n { type: 8, instances: [{ idBing: '5979008', id: 55180 }] },\n { type: 9, instances: [{ id: 42010 }] },\n];\n\nexport const getPerformance = ({ tracking: { trackingChain, trackingHotels, ...others } = {} } = {}, hotelId) => {\n if (!IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return DEFAULT_PERFORMANCE;\n\n if (process.env.NODE_ENV === 'production' && hotelId === MONALISA_ID) return [];\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n let tracking = others;\n\n if (trackingChain && trackingHotels) {\n tracking = { ...trackingChain };\n const hotelTracking = hotelId && trackingHotels.find(({ idTokenProvider: id } = {}) => id === parseInt(hotelId));\n\n hotelTracking &&\n Object.keys(tracking).forEach((key) => {\n tracking[key] = [...tracking[key], ...hotelTracking[key]];\n });\n }\n\n // ! -- TODO: Choose which one will load gtag\n return Object.keys(tracking).length > 0\n ? Object.keys(tracking)\n .filter((key) => !!TRACKING[key] && tracking[key].length > 0)\n .map((key) => ({\n type: TRACKING[key],\n instances: tracking[key].map(({ configuration = {}, id: idTracking }) => ({\n ...(configuration !== null ? configuration : {}),\n idTracking,\n })),\n }))\n : undefined;\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.211",
3
+ "version": "0.4.213",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",