@mirai/core 0.3.413 → 0.3.415

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/build/components/BannerLoyalty/BannerLoyalty.constants.js +2 -1
  2. package/build/components/BannerLoyalty/BannerLoyalty.constants.js.map +1 -1
  3. package/build/components/BannerLoyalty/BannerLoyalty.js +3 -3
  4. package/build/components/BannerLoyalty/BannerLoyalty.js.map +1 -1
  5. package/build/components/Header/Header.js +1 -3
  6. package/build/components/Header/Header.js.map +1 -1
  7. package/build/components/Rates/Rates.Header.js +1 -1
  8. package/build/components/Rates/Rates.Header.js.map +1 -1
  9. package/build/components/Rates/Rates.Unavailability.js +1 -1
  10. package/build/components/Rates/Rates.Unavailability.js.map +1 -1
  11. package/build/components/Rates/Rates.js +7 -2
  12. package/build/components/Rates/Rates.js.map +1 -1
  13. package/build/components/Rates/Rates.l10n.js +6 -0
  14. package/build/components/Rates/Rates.l10n.js.map +1 -1
  15. package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +52 -4
  16. package/build/components/Rates/components/CardHotel/CardHotel.js +14 -10
  17. package/build/components/Rates/components/CardHotel/CardHotel.js.map +1 -1
  18. package/build/components/Rates/components/CardHotel/__tests__/__snapshots__/CardHotel.test.js.snap +13 -1
  19. package/build/components/Rates/components/Item/Item.Preview.js +22 -12
  20. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  21. package/build/components/Rates/components/Item/Item.Rates.js +23 -26
  22. package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
  23. package/build/components/Rates/components/Item/Item.Summary.js +2 -2
  24. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
  25. package/build/components/Rates/components/Item/Item.js +20 -0
  26. package/build/components/Rates/components/Item/Item.js.map +1 -1
  27. package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Preview.test.js.snap +3 -0
  28. package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.test.js.snap +3 -0
  29. package/build/components/Rates/components/Item/components/ModalOfferInfo/ModalOfferInfo.js +16 -2
  30. package/build/components/Rates/components/Item/components/ModalOfferInfo/ModalOfferInfo.js.map +1 -1
  31. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js +1 -3
  32. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js.map +1 -1
  33. package/build/components/Rates/components/ModalExtras/ModalExtras.js +3 -0
  34. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -1
  35. package/build/components/Rates/components/ModalMapView/ModalMapView.js +16 -13
  36. package/build/components/Rates/components/ModalMapView/ModalMapView.js.map +1 -1
  37. package/build/components/Rates/components/ModalMapView/__tests__/__snapshots__/ModalMapView.test.js.snap +13 -1
  38. package/build/components/Rates/helpers/getClubInclude.js +16 -0
  39. package/build/components/Rates/helpers/getClubInclude.js.map +1 -0
  40. package/build/components/Rates/helpers/{isClubRate.js → getClubRate.js} +12 -7
  41. package/build/components/Rates/helpers/getClubRate.js.map +1 -0
  42. package/build/components/Rates/helpers/index.js +22 -11
  43. package/build/components/Rates/helpers/index.js.map +1 -1
  44. package/build/components/helpers/constants.js +2 -1
  45. package/build/components/helpers/constants.js.map +1 -1
  46. package/package.json +1 -1
  47. package/public/App.Container.jsx +9 -14
  48. package/public/App.module.css +4 -0
  49. package/build/components/Rates/helpers/isClubRate.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","GAP_TABLET","GAP_NOT_TABLET","memoizedWidth","Preview","_ref","availability","availableBoards","availableRates","boards","cancellations","features","columnMode","hideStandaloneBoard","highlightStandaloneOption","rowMode","images","isSoldOut","media","name","title","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","handleSliderCounter","Event","publish","EVENT","METRICS","id","uniqueRate","filter","rate","isClubRate","board","rateId","undefined","uniqueBoard","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","slider","row","offset","spaceBetween","details","Features","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","paragraph","INFO","light","restrictions","variableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","bool","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Features, Slider, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { EVENT, ICON } from '../../../helpers';\nimport { isClubRate } from '../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode = false,\n hideStandaloneBoard = false,\n highlightStandaloneOption = false,\n rowMode = false,\n ...features\n } = {},\n images = [],\n isSoldOut = false,\n media,\n name: title,\n rates = [],\n selectedBoard = {},\n onCancellationInfo,\n onMoreInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { height, isDesktop, isMobile, isPortrait, isTablet, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { hotel: { warningAvailability = 9999 } = {} } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - (isTablet && !isDesktop ? GAP_TABLET : GAP_NOT_TABLET);\n }, [isDesktop, isTablet, width]);\n\n const handleSliderCounter = () => {\n onMoreInfo && onMoreInfo();\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:SLIDER:COUNTER' });\n };\n\n const [uniqueRate] =\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length === 0 &&\n cancellations.length === availableRates.length &&\n !highlightStandaloneOption\n ? rates\n : [];\n\n const [uniqueBoard] =\n boards.length === 1 ||\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length\n ? boards\n : [];\n\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n const { offerDates, variants = [] } = selectedBoard;\n\n return (\n <View ref={ref} className={style.preview}>\n <Slider\n height={columnMode || rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? handleSliderCounter : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...{ features, ...others }} />\n\n {isSoldOut === false && availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold brand headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n </>\n )}\n\n {uniqueBoard && !hideStandaloneBoard && !highlightStandaloneOption && (\n <View row className={style.row}>\n <Text {...caption}>{boards[0].name}</Text>\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </View>\n )}\n\n {cancellations.length === 1 && !highlightStandaloneOption && (\n <View>\n <View row>\n <Pressable\n onPress={() => onCancellationInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text light small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ variableOffer, value } = {}, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {value}\n </Text>\n {variableOffer && offerDates.length > 0 && (\n <TooltipDates\n captions={offerDates.map(() => translate(L10N.LABEL_INCLUDED))}\n values={offerDates.map((date) => parseDate(date))}\n warning\n />\n )}\n </View>\n ))}\n\n <View row>\n <Action small={isMobile} onPress={onMoreInfo}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n }),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n isSoldOut: PropTypes.bool,\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onCancellationInfo: PropTypes.func,\n onMoreInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.Preview.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","GAP_TABLET","GAP_NOT_TABLET","memoizedWidth","Preview","_ref","availability","availableBoards","availableRates","boards","cancellations","features","columnMode","hideStandaloneBoard","highlightStandaloneOption","rowMode","images","isSoldOut","media","name","title","promocodeForAll","rates","selectedBoard","onCancellationInfo","onMoreInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","finder","promocode","hotel","warningAvailability","useStore","useEffect","clientWidth","current","handleSliderCounter","Event","publish","EVENT","METRICS","id","uniqueRate","uniqueBoard","filter","cancellationId","undefined","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","slider","row","tags","Text","bold","Icon","ICON","DISCOUNT","toUpperCase","offset","spaceBetween","details","Features","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","brand","headline","level","Amenities","highlight","Fragment","included","item","index","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","paragraph","INFO","light","restrictions","variableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","ACTION_MORE_INFO","exports","displayName","propTypes","PropTypes","number","arrayOf","any","shape","bool","alt","string","thumbnail","url3D","urlVideo","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Preview.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, Pressable, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef } from 'react';\n\nimport { Amenities, Features, Slider, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { EVENT, ICON } from '../../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode = false,\n hideStandaloneBoard = false,\n highlightStandaloneOption = false,\n rowMode = false,\n ...features\n } = {},\n images = [],\n isSoldOut = false,\n media,\n name: title,\n promocodeForAll,\n rates = [],\n selectedBoard = {},\n onCancellationInfo,\n onMoreInfo,\n onViewUrl = () => {},\n ...others\n}) => {\n const { height, isDesktop, isMobile, isPortrait, isTablet, width } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const { value: { finder: { promocode } = {}, hotel: { warningAvailability = 9999 } = {} } = {} } = useStore();\n\n useEffect(() => {\n const { clientWidth } = ref.current || {};\n if (clientWidth) memoizedWidth = clientWidth - (isTablet && !isDesktop ? GAP_TABLET : GAP_NOT_TABLET);\n }, [isDesktop, isTablet, width]);\n\n const handleSliderCounter = () => {\n onMoreInfo && onMoreInfo();\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:SLIDER:COUNTER' });\n };\n\n const [uniqueRate] = cancellations.length === availableRates.length && !highlightStandaloneOption ? rates : [];\n\n const [uniqueBoard] =\n rates.length ===\n availableBoards.filter(({ cancellationId } = {}) => cancellationId === selectedBoard.cancellationId).length &&\n (boards.length === 1 ||\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length === availableBoards.length)\n ? boards\n : [];\n\n const caption = { capitalize: true, action: !isMobile, small: isMobile };\n const { offerDates, variants = [] } = selectedBoard;\n\n return (\n <View ref={ref} className={style.preview}>\n <Slider\n height={columnMode || rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? handleSliderCounter : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={style.tags}>\n {promocode && promocodeForAll && (\n <Text bold small>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...{ features, ...others }} />\n\n {isSoldOut === false && availability <= warningAvailability && (\n <Text bold error small>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View className={[style.offset, style.gap]} style={{ flex: 1 }}>\n <Text bold brand headline={!isMobile} level={3}>\n {title}\n </Text>\n\n {!isMobile && <Amenities highlight preview {...others} />}\n\n {uniqueRate && (\n <>\n {uniqueRate.included.map((item, index) => (\n <View key={index} row className={style.row}>\n <Icon value={ICON.AMENITY} />\n <Text {...caption}>{item}</Text>\n </View>\n ))}\n </>\n )}\n\n {uniqueBoard && !hideStandaloneBoard && !highlightStandaloneOption && (\n <View row className={style.row}>\n <Text {...caption}>{boards[0].name}</Text>\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </View>\n )}\n\n {cancellations.length === 1 && !highlightStandaloneOption && (\n <View>\n <View row>\n <Pressable\n onPress={() => onCancellationInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text light small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ variableOffer, value } = {}, index) => (\n <View key={index} row className={style.row}>\n <Icon warning value={ICON.WARNING} />\n <Text warning {...caption}>\n {value}\n </Text>\n {variableOffer && offerDates.length > 0 && (\n <TooltipDates\n captions={offerDates.map(() => translate(L10N.LABEL_INCLUDED))}\n values={offerDates.map((date) => parseDate(date))}\n warning\n />\n )}\n </View>\n ))}\n\n <View row>\n <Action small={isMobile} onPress={onMoreInfo}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </View>\n </View>\n </View>\n );\n};\n\nPreview.displayName = 'Mirai:Core:Rates:Item:Preview';\n\nPreview.propTypes = {\n availability: PropTypes.number,\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n }),\n images: PropTypes.arrayOf(\n PropTypes.shape({\n alt: PropTypes.string,\n large: PropTypes.string,\n thumbnail: PropTypes.string,\n }),\n ),\n isSoldOut: PropTypes.bool,\n media: PropTypes.shape({\n url3D: PropTypes.string,\n urlVideo: PropTypes.string,\n }),\n name: PropTypes.string,\n promocodeForAll: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onCancellationInfo: PropTypes.func,\n onMoreInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
@@ -13,7 +13,6 @@ var _components = require("./components");
13
13
  var _Item = require("./Item.l10n");
14
14
  var style = _interopRequireWildcard(require("./Item.module.css"));
15
15
  var _helpers = require("../../../helpers");
16
- var _helpers2 = require("../../helpers");
17
16
  var _Rates = require("../../Rates.constants");
18
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); }
19
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; }
@@ -33,6 +32,7 @@ const Rates = _ref => {
33
32
  showRateIncluded = false
34
33
  } = {},
35
34
  priceFactor = 1,
35
+ promocodeForAll,
36
36
  rates = [],
37
37
  selectedBoard = {},
38
38
  onBoard,
@@ -61,7 +61,12 @@ const Rates = _ref => {
61
61
  } = selectedBoard;
62
62
  const has = {
63
63
  cancellations: cancellations.length > 1 || highlightStandaloneOption,
64
- boards: boards.length > 1 && availableBoards.filter(function () {
64
+ boards: rates.length !== availableBoards.filter(function () {
65
+ let {
66
+ cancellationId
67
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
68
+ return cancellationId === selectedBoard.cancellationId;
69
+ }).length || boards.length > 1 && availableBoards.filter(function () {
65
70
  let {
66
71
  name
67
72
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -69,15 +74,7 @@ const Rates = _ref => {
69
74
  }).length !== availableBoards.length || highlightStandaloneOption,
70
75
  inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),
71
76
  inlineCancellations: hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),
72
- rates: cancellations.length !== availableRates.length || highlightStandaloneOption || availableRates.filter(rate => (0, _helpers2.isClubRate)({
73
- board: availableBoards.filter(function () {
74
- let {
75
- rateId
76
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
77
- return rateId === rate.id;
78
- })[0],
79
- rate
80
- })).length > 0
77
+ rates: cancellations.length !== availableRates.length || highlightStandaloneOption
81
78
  };
82
79
  const renderCancellations = () => has.cancellations && /*#__PURE__*/_react.default.createElement(_ui.View, {
83
80
  className: [style.offset, style.gap]
@@ -154,29 +151,25 @@ const Rates = _ref => {
154
151
  return rateId === id;
155
152
  })[0];
156
153
  const {
154
+ confidential,
157
155
  discount: {
158
156
  breakdown = [],
159
157
  percentage
160
158
  } = {}
161
159
  } = board || {};
162
- const isClub = (0, _helpers2.isClubRate)({
163
- board,
164
- rate
165
- });
166
- const isPromocode = promocode && breakdown.find(_ref5 => {
160
+ const isPromocode = promocode && !promocodeForAll && breakdown.find(function () {
167
161
  let {
168
162
  type
169
- } = _ref5;
170
- return [_Rates.DISCOUNT_TYPE.DEAL, _Rates.DISCOUNT_TYPE.PROMOTION].includes(type);
163
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
164
+ return type === _Rates.DISCOUNT_TYPE.PROMOTION || type === _Rates.DISCOUNT_TYPE.DEAL && confidential;
171
165
  });
172
- const discountPercentage = (isClub || isPromocode) && percentage || undefined;
166
+ const discountPercentage = isPromocode && percentage || undefined;
173
167
  return /*#__PURE__*/_react.default.createElement(_components.Option, {
174
168
  key: id,
175
169
  caption: /*#__PURE__*/_react.default.createElement(_components.RateDetails, {
176
170
  countdown,
177
171
  discountPercentage,
178
172
  included: showRateIncluded ? included : undefined,
179
- isClub,
180
173
  restrictions,
181
174
  selectedBoard: selectedBoard.rateId === id ? selectedBoard : availableBoards.filter(function () {
182
175
  let {
@@ -184,7 +177,10 @@ const Rates = _ref => {
184
177
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
185
178
  return rateId === id;
186
179
  })[0],
187
- onOfferInfo: () => onOfferInfo(rate)
180
+ onOfferInfo: () => onOfferInfo({
181
+ ...rate,
182
+ availableBoards
183
+ })
188
184
  }),
189
185
  checked: id === rateId,
190
186
  disabled: disabled,
@@ -207,10 +203,7 @@ const Rates = _ref => {
207
203
  medium: true,
208
204
  small: isMobile,
209
205
  className: [style.tag, style.highlight]
210
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
211
- action: true,
212
- value: _helpers.ICON.DISCOUNT
213
- }), promocode.toUpperCase()), discountPercentage && /*#__PURE__*/_react.default.createElement(_ui.Text, {
206
+ }, promocode.toUpperCase()), discountPercentage && /*#__PURE__*/_react.default.createElement(_ui.Text, {
214
207
  action: !isMobile,
215
208
  medium: true,
216
209
  small: isMobile,
@@ -218,7 +211,10 @@ const Rates = _ref => {
218
211
  }, translate(_Item.L10N.LABEL_DISCOUNT, {
219
212
  value: "".concat(discountPercentage, "%")
220
213
  }))), name, (description || included.length > 0) && /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
221
- onPress: () => onOfferInfo(rate)
214
+ onPress: () => onOfferInfo({
215
+ ...rate,
216
+ availableBoards
217
+ })
222
218
  }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
223
219
  paragraph: true,
224
220
  value: _helpers.ICON.INFO
@@ -280,6 +276,7 @@ Rates.propTypes = {
280
276
  showRateIncluded: _propTypes.default.bool
281
277
  }),
282
278
  priceFactor: _propTypes.default.number,
279
+ promocodeForAll: _propTypes.default.bool,
283
280
  rates: _propTypes.default.arrayOf(_propTypes.default.any),
284
281
  selectedBoard: _propTypes.default.shape({}),
285
282
  onBoard: _propTypes.default.func,
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_helpers2","_Rates","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","availableRates","boards","cancellations","features","columnMode","hideRadio","highlightStandaloneOption","rowMode","showOffersFirst","showRateIncluded","priceFactor","rates","selectedBoard","onBoard","onCancellation","onCancellationInfo","onRate","onOfferInfo","isMobile","useDevice","translate","useLocale","value","finder","promocode","useStore","cancellationId","rateId","id","boardId","length","filter","name","arguments","undefined","inlineBoards","inlineCancellations","rate","isClubRate","board","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","_ref2","map","_ref3","highlight","caption","price","cancellation","Option","key","checked","inline","outlined","onPress","medium","small","optionText","styles","tag","Pressable","Icon","paragraph","ICON","INFO","LABEL_OFFER","_ref4","countdown","description","disabled","included","restrictions","find","discount","breakdown","percentage","isClub","isPromocode","_ref5","type","DISCOUNT_TYPE","DEAL","PROMOTION","includes","discountPercentage","RateDetails","tags","DISCOUNT","toUpperCase","LABEL_DISCOUNT","concat","LABEL_ACCOMMODATION_PLAN","increment","variants","title","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","bool","hideStandaloneBoard","number","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Option, RateDetails, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\nimport { isClubRate } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Rates = ({\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode,\n hideRadio = false,\n highlightStandaloneOption = false,\n rowMode,\n showOffersFirst = false,\n showRateIncluded = false,\n } = {},\n priceFactor = 1,\n rates = [],\n selectedBoard = {},\n onBoard,\n onCancellation,\n onCancellationInfo,\n onRate,\n onOfferInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { value: { finder: { promocode } = {} } = {} } = useStore();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1 || highlightStandaloneOption,\n boards:\n (boards.length > 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length !==\n availableBoards.length) ||\n highlightStandaloneOption,\n inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),\n inlineCancellations:\n hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),\n rates:\n cancellations.length !== availableRates.length ||\n highlightStandaloneOption ||\n availableRates.filter((rate) =>\n isClubRate({ board: availableBoards.filter(({ rateId } = {}) => rateId === rate.id)[0], rate }),\n ).length > 0,\n };\n\n const renderCancellations = () =>\n has.cancellations && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_CANCELLATION_POLICY)}\n </Text>\n\n {React.createElement(\n has.inlineCancellations ? View : React.Fragment,\n has.inlineCancellations ? { row: true, className: style.inlineOptions } : undefined,\n cancellations\n .filter(({ id }) => !showOffersFirst || (showOffersFirst && id === cancellationId))\n .map(({ highlight, id, name, caption, price, ...cancellation }) => (\n <Option\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={has.inlineCancellations}\n outlined={hideRadio}\n value={!showOffersFirst ? price / priceFactor : undefined}\n onPress={() => onCancellation(id)}\n >\n <Text action={!isMobile} medium={highlight} small={isMobile} className={style.optionText}>\n {highlight ? (\n <Text\n action={!isMobile}\n medium={highlight}\n small={isMobile}\n className={styles(highlight && style.tag)}\n >\n {name}\n </Text>\n ) : (\n name\n )}\n\n <Pressable onPress={() => onCancellationInfo({ ...selectedBoard, cancellation })}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </Text>\n </Option>\n )),\n )}\n </View>\n );\n\n return (\n <>\n {!showOffersFirst && renderCancellations()}\n\n {has.rates && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_OFFER)}\n </Text>\n {rates.map(\n ({ id, cancellationId, countdown, description, disabled, included, name, price, restrictions }) => {\n const rate = rates.find((rate) => rate.id === id);\n const board = availableBoards.filter(({ rateId } = {}) => rateId === id)[0];\n const { discount: { breakdown = [], percentage } = {} } = board || {};\n const isClub = isClubRate({ board, rate });\n const isPromocode =\n promocode && breakdown.find(({ type }) => [DISCOUNT_TYPE.DEAL, DISCOUNT_TYPE.PROMOTION].includes(type));\n const discountPercentage = ((isClub || isPromocode) && percentage) || undefined;\n\n return (\n <Option\n key={id}\n caption={\n <RateDetails\n {...{\n countdown,\n discountPercentage,\n included: showRateIncluded ? included : undefined,\n isClub,\n restrictions,\n selectedBoard:\n selectedBoard.rateId === id\n ? selectedBoard\n : availableBoards.filter(({ rateId } = {}) => rateId === id)[0],\n onOfferInfo: () => onOfferInfo(rate),\n }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price / priceFactor}\n onPress={rates.length > 0 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 0 && (\n <Text medium={hideRadio} action={!isMobile} small={isMobile} className={style.optionText}>\n <View row className={style.tags}>\n {isPromocode && (\n <Text action={!isMobile} medium small={isMobile} className={[style.tag, style.highlight]}>\n <Icon action value={ICON.DISCOUNT} />\n {promocode.toUpperCase()}\n </Text>\n )}\n {discountPercentage && (\n <Text action={!isMobile} medium small={isMobile} className={style.tag}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n {name}\n\n {(description || included.length > 0) && (\n <Pressable onPress={() => onOfferInfo(rate)}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n )}\n </Text>\n )}\n </Option>\n );\n },\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {has.boards && (\n <View className={styles(style.offset, style.gap)}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n {React.createElement(\n has.inlineBoards ? View : React.Fragment,\n has.inlineBoards ? { row: true, className: style.inlineOptions } : undefined,\n boards.map((board = {}) => {\n const { disabled, id, increment, name, variants = [] } = board;\n\n return (\n <Option\n key={id}\n checked={id === boardId}\n disabled={disabled}\n inline={has.inlineBoards}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment / priceFactor : undefined}\n onPress={() => onBoard(board)}\n >\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </Option>\n );\n }),\n )}\n </View>\n )}\n\n <View />\n </>\n );\n};\n\nRates.propTypes = {\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n showOffersFirst: PropTypes.bool,\n showRateIncluded: PropTypes.bool,\n }),\n priceFactor: PropTypes.number,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onCancellationInfo: PropTypes.func,\n onChange: PropTypes.func,\n onOfferInfo: PropTypes.func,\n onRate: PropTypes.func,\n};\n\nRates.displayName = 'Mirai:Core:Rates:Item:Rates';\n\nexport { Rates };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.Rates.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_Rates","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","availableRates","boards","cancellations","features","columnMode","hideRadio","highlightStandaloneOption","rowMode","showOffersFirst","showRateIncluded","priceFactor","promocodeForAll","rates","selectedBoard","onBoard","onCancellation","onCancellationInfo","onRate","onOfferInfo","isMobile","useDevice","translate","useLocale","value","finder","promocode","useStore","cancellationId","rateId","id","boardId","length","filter","arguments","undefined","name","inlineBoards","inlineCancellations","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","_ref2","map","_ref3","highlight","caption","price","cancellation","Option","key","checked","inline","outlined","onPress","medium","small","optionText","styles","tag","Pressable","Icon","paragraph","ICON","INFO","LABEL_OFFER","_ref4","countdown","description","disabled","included","restrictions","rate","find","board","confidential","discount","breakdown","percentage","isPromocode","type","DISCOUNT_TYPE","PROMOTION","DEAL","discountPercentage","RateDetails","tags","toUpperCase","LABEL_DISCOUNT","concat","LABEL_ACCOMMODATION_PLAN","increment","variants","title","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","bool","hideStandaloneBoard","number","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Option, RateDetails, TooltipDates } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { ICON } from '../../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Rates = ({\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: {\n columnMode,\n hideRadio = false,\n highlightStandaloneOption = false,\n rowMode,\n showOffersFirst = false,\n showRateIncluded = false,\n } = {},\n priceFactor = 1,\n promocodeForAll,\n rates = [],\n selectedBoard = {},\n onBoard,\n onCancellation,\n onCancellationInfo,\n onRate,\n onOfferInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { value: { finder: { promocode } = {} } = {} } = useStore();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1 || highlightStandaloneOption,\n boards:\n rates.length !==\n availableBoards.filter(({ cancellationId } = {}) => cancellationId === selectedBoard.cancellationId).length ||\n (boards.length > 1 &&\n availableBoards.filter(({ name } = {}) => name === availableBoards[0].name).length !==\n availableBoards.length) ||\n highlightStandaloneOption,\n inlineBoards: hideRadio && boards.length > 1 && boards.length <= (columnMode || rowMode ? 3 : 2),\n inlineCancellations:\n hideRadio && cancellations.length > 1 && cancellations.length <= (columnMode || rowMode ? 3 : 2),\n rates: cancellations.length !== availableRates.length || highlightStandaloneOption,\n };\n\n const renderCancellations = () =>\n has.cancellations && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_CANCELLATION_POLICY)}\n </Text>\n\n {React.createElement(\n has.inlineCancellations ? View : React.Fragment,\n has.inlineCancellations ? { row: true, className: style.inlineOptions } : undefined,\n cancellations\n .filter(({ id }) => !showOffersFirst || (showOffersFirst && id === cancellationId))\n .map(({ highlight, id, name, caption, price, ...cancellation }) => (\n <Option\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={has.inlineCancellations}\n outlined={hideRadio}\n value={!showOffersFirst ? price / priceFactor : undefined}\n onPress={() => onCancellation(id)}\n >\n <Text action={!isMobile} medium={highlight} small={isMobile} className={style.optionText}>\n {highlight ? (\n <Text\n action={!isMobile}\n medium={highlight}\n small={isMobile}\n className={styles(highlight && style.tag)}\n >\n {name}\n </Text>\n ) : (\n name\n )}\n\n <Pressable onPress={() => onCancellationInfo({ ...selectedBoard, cancellation })}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n </Text>\n </Option>\n )),\n )}\n </View>\n );\n\n return (\n <>\n {!showOffersFirst && renderCancellations()}\n\n {has.rates && (\n <View className={[style.offset, style.gap]}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_OFFER)}\n </Text>\n {rates.map(\n ({ id, cancellationId, countdown, description, disabled, included, name, price, restrictions }) => {\n const rate = rates.find((rate) => rate.id === id);\n const board = availableBoards.filter(({ rateId } = {}) => rateId === id)[0];\n const { confidential, discount: { breakdown = [], percentage } = {} } = board || {};\n const isPromocode =\n promocode &&\n !promocodeForAll &&\n breakdown.find(\n ({ type } = {}) => type === DISCOUNT_TYPE.PROMOTION || (type === DISCOUNT_TYPE.DEAL && confidential),\n );\n const discountPercentage = (isPromocode && percentage) || undefined;\n\n return (\n <Option\n key={id}\n caption={\n <RateDetails\n {...{\n countdown,\n discountPercentage,\n included: showRateIncluded ? included : undefined,\n restrictions,\n selectedBoard:\n selectedBoard.rateId === id\n ? selectedBoard\n : availableBoards.filter(({ rateId } = {}) => rateId === id)[0],\n onOfferInfo: () => onOfferInfo({ ...rate, availableBoards }),\n }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price / priceFactor}\n onPress={rates.length > 0 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 0 && (\n <Text medium={hideRadio} action={!isMobile} small={isMobile} className={style.optionText}>\n <View row className={style.tags}>\n {isPromocode && (\n <Text action={!isMobile} medium small={isMobile} className={[style.tag, style.highlight]}>\n {promocode.toUpperCase()}\n </Text>\n )}\n {discountPercentage && (\n <Text action={!isMobile} medium small={isMobile} className={style.tag}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n {name}\n\n {(description || included.length > 0) && (\n <Pressable onPress={() => onOfferInfo({ ...rate, availableBoards })}>\n <Icon paragraph value={ICON.INFO} />\n </Pressable>\n )}\n </Text>\n )}\n </Option>\n );\n },\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {has.boards && (\n <View className={styles(style.offset, style.gap)}>\n <Text action={isMobile} bold>\n {translate(L10N.LABEL_ACCOMMODATION_PLAN)}\n </Text>\n\n {React.createElement(\n has.inlineBoards ? View : React.Fragment,\n has.inlineBoards ? { row: true, className: style.inlineOptions } : undefined,\n boards.map((board = {}) => {\n const { disabled, id, increment, name, variants = [] } = board;\n\n return (\n <Option\n key={id}\n checked={id === boardId}\n disabled={disabled}\n inline={has.inlineBoards}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment / priceFactor : undefined}\n onPress={() => onBoard(board)}\n >\n {variants.length > 0 && (\n <TooltipDates\n captions={variants.map(({ name } = {}) => name)}\n values={variants.map(({ value } = {}) => parseDate(value))}\n />\n )}\n </Option>\n );\n }),\n )}\n </View>\n )}\n\n <View />\n </>\n );\n};\n\nRates.propTypes = {\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n columnMode: PropTypes.bool,\n hideStandaloneBoard: PropTypes.bool,\n highlightStandaloneOption: PropTypes.bool,\n rowMode: PropTypes.bool,\n showOffersFirst: PropTypes.bool,\n showRateIncluded: PropTypes.bool,\n }),\n priceFactor: PropTypes.number,\n promocodeForAll: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onCancellationInfo: PropTypes.func,\n onChange: PropTypes.func,\n onOfferInfo: PropTypes.func,\n onRate: PropTypes.func,\n};\n\nRates.displayName = 'Mirai:Core:Rates:Item:Rates';\n\nexport { Rates };\n"],"mappings":"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"}
@@ -89,7 +89,7 @@ const Summary = _ref => {
89
89
  const {
90
90
  percentage: discountPercentage = 0
91
91
  } = discount || {};
92
- const isClub = (0, _helpers.isClubRate)({
92
+ const clubOffer = (0, _helpers.getClubRate)({
93
93
  board: selectedBoard,
94
94
  rate: availableRates.find(_ref2 => {
95
95
  let {
@@ -105,7 +105,7 @@ const Summary = _ref => {
105
105
  className: [style.offset, style.summary]
106
106
  }, /*#__PURE__*/_react.default.createElement(_ui.View, {
107
107
  row: true
108
- }, isClub && /*#__PURE__*/_react.default.createElement(_ui.Text, {
108
+ }, clubOffer && /*#__PURE__*/_react.default.createElement(_ui.Text, {
109
109
  bold: true,
110
110
  small: true,
111
111
  className: [style.tag, style.highlight]
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Summary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Summary","_ref","availableRates","features","showPricePerNight","id","roomId","isSoldOut","multiRoom","name","roomName","nights","priceFactor","selected","selectedBoard","taxesType","onSelect","others","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","keys","length","basePrice","cancellationId","checkoutPrice","confidential","dayPrice","deals","discount","fees","originalPrice","price","rateId","taxes","totalPriceRaw","isSelected","handlePress","undefined","percentage","discountPercentage","isClub","isClubRate","board","rate","find","_ref2","testId","createElement","Fragment","View","className","offset","summary","row","Text","bold","small","tag","highlight","L10N","LABEL_ONLY_MEMBERS","accent","LABEL_DISCOUNT","concat","gap","content","end","headline","level","maximumFractionDigits","action","light","lineThrough","tiny","LABEL_FOR_NIGHTS","LABEL_PER_NIGHT","getLabelTaxes","PriceDetails","priceDetails","Button","disabled","secondary","onPress","LABEL_NOT_AVAILABLE","LABEL_DESELECT","LABEL_SELECT","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","arrayOf","any","shape","bool","number","string","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { PriceDetails } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { getLabelTaxes, isClubRate } from '../../helpers';\n\nconst Summary = ({\n availableRates = [],\n features: { showPricePerNight = false } = {},\n id: roomId,\n isSoldOut = false,\n multiRoom = false,\n name: roomName,\n nights = 2,\n priceFactor = 1,\n selected = {},\n selectedBoard = {},\n taxesType,\n onSelect,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setBusy(false), [selected]);\n\n const {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n dayPrice,\n deals,\n discount,\n fees,\n id,\n name,\n originalPrice = 0,\n price = 0,\n rateId,\n taxes,\n totalPriceRaw,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n if (!multiRoom) setBusy(true);\n onSelect(\n !isSelected\n ? {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n deals,\n discount,\n fees,\n id,\n name,\n price,\n rateId,\n roomId,\n roomName,\n taxes,\n totalPriceRaw,\n }\n : undefined,\n );\n };\n\n const { percentage: discountPercentage = 0 } = discount || {};\n\n const isClub = isClubRate({\n board: selectedBoard,\n rate: availableRates.find(({ id }) => rateId === id),\n });\n\n const { testId } = others;\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n <View row>\n {isClub && (\n <Text bold small className={[style.tag, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {!isSoldOut && discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n <View row className={[style.gap, style.content, isSoldOut && style.end]}>\n {!isSoldOut && (\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile || multiRoom || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: price / priceFactor })}\n </Text>\n\n {price !== originalPrice && (\n <Text action light className={style.lineThrough}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: originalPrice / priceFactor })}\n </Text>\n )}\n </View>\n\n {nights > 1 && (\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({\n currency,\n value: showPricePerNight ? price : dayPrice,\n })} ${translate(showPricePerNight ? L10N.LABEL_FOR_NIGHTS : L10N.LABEL_PER_NIGHT, { nights })}`}</Text>\n )}\n\n {!!taxesType && (\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n {(discountPercentage > 0 || fees > 0 || taxes > 0) && (\n <PriceDetails {...{ board: selectedBoard }} className={style.priceDetails} />\n )}\n </View>\n )}\n\n <Button\n busy={busy}\n disabled={isSoldOut}\n secondary={multiRoom && isSelected}\n onPress={handlePress}\n testId={testId ? `${testId}-select` : undefined}\n >\n {translate(\n isSoldOut\n ? L10N.LABEL_NOT_AVAILABLE\n : multiRoom\n ? isSelected\n ? L10N.LABEL_DESELECT\n : L10N.LABEL_SELECT\n : L10N.ACTION_RESERVE,\n )}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item:Summary';\n\nSummary.propTypes = {\n availableRates: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n showPricePerNight: PropTypes.bool,\n }),\n id: PropTypes.number,\n isSoldOut: PropTypes.bool,\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n nights: PropTypes.number,\n priceFactor: PropTypes.number,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxesType: PropTypes.number,\n onSelect: PropTypes.func,\n};\n\nexport { Summary };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.Summary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Summary","_ref","availableRates","features","showPricePerNight","id","roomId","isSoldOut","multiRoom","name","roomName","nights","priceFactor","selected","selectedBoard","taxesType","onSelect","others","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","keys","length","basePrice","cancellationId","checkoutPrice","confidential","dayPrice","deals","discount","fees","originalPrice","price","rateId","taxes","totalPriceRaw","isSelected","handlePress","undefined","percentage","discountPercentage","clubOffer","getClubRate","board","rate","find","_ref2","testId","createElement","Fragment","View","className","offset","summary","row","Text","bold","small","tag","highlight","L10N","LABEL_ONLY_MEMBERS","accent","LABEL_DISCOUNT","concat","gap","content","end","headline","level","maximumFractionDigits","action","light","lineThrough","tiny","LABEL_FOR_NIGHTS","LABEL_PER_NIGHT","getLabelTaxes","PriceDetails","priceDetails","Button","disabled","secondary","onPress","LABEL_NOT_AVAILABLE","LABEL_DESELECT","LABEL_SELECT","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","arrayOf","any","shape","bool","number","string","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { PriceDetails } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { getLabelTaxes, getClubRate } from '../../helpers';\n\nconst Summary = ({\n availableRates = [],\n features: { showPricePerNight = false } = {},\n id: roomId,\n isSoldOut = false,\n multiRoom = false,\n name: roomName,\n nights = 2,\n priceFactor = 1,\n selected = {},\n selectedBoard = {},\n taxesType,\n onSelect,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setBusy(false), [selected]);\n\n const {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n dayPrice,\n deals,\n discount,\n fees,\n id,\n name,\n originalPrice = 0,\n price = 0,\n rateId,\n taxes,\n totalPriceRaw,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n if (!multiRoom) setBusy(true);\n onSelect(\n !isSelected\n ? {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n deals,\n discount,\n fees,\n id,\n name,\n price,\n rateId,\n roomId,\n roomName,\n taxes,\n totalPriceRaw,\n }\n : undefined,\n );\n };\n\n const { percentage: discountPercentage = 0 } = discount || {};\n\n const clubOffer = getClubRate({\n board: selectedBoard,\n rate: availableRates.find(({ id }) => rateId === id),\n });\n\n const { testId } = others;\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n <View row>\n {clubOffer && (\n <Text bold small className={[style.tag, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {!isSoldOut && discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n\n <View row className={[style.gap, style.content, isSoldOut && style.end]}>\n {!isSoldOut && (\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile || multiRoom || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: price / priceFactor })}\n </Text>\n\n {price !== originalPrice && (\n <Text action light className={style.lineThrough}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: originalPrice / priceFactor })}\n </Text>\n )}\n </View>\n\n {nights > 1 && (\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({\n currency,\n value: showPricePerNight ? price : dayPrice,\n })} ${translate(showPricePerNight ? L10N.LABEL_FOR_NIGHTS : L10N.LABEL_PER_NIGHT, { nights })}`}</Text>\n )}\n\n {!!taxesType && (\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n {(discountPercentage > 0 || fees > 0 || taxes > 0) && (\n <PriceDetails {...{ board: selectedBoard }} className={style.priceDetails} />\n )}\n </View>\n )}\n\n <Button\n busy={busy}\n disabled={isSoldOut}\n secondary={multiRoom && isSelected}\n onPress={handlePress}\n testId={testId ? `${testId}-select` : undefined}\n >\n {translate(\n isSoldOut\n ? L10N.LABEL_NOT_AVAILABLE\n : multiRoom\n ? isSelected\n ? L10N.LABEL_DESELECT\n : L10N.LABEL_SELECT\n : L10N.ACTION_RESERVE,\n )}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item:Summary';\n\nSummary.propTypes = {\n availableRates: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\n showPricePerNight: PropTypes.bool,\n }),\n id: PropTypes.number,\n isSoldOut: PropTypes.bool,\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n nights: PropTypes.number,\n priceFactor: PropTypes.number,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxesType: PropTypes.number,\n onSelect: PropTypes.func,\n};\n\nexport { Summary };\n"],"mappings":"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"}
@@ -14,6 +14,7 @@ var _Item2 = require("./Item.Rates");
14
14
  var _Item3 = require("./Item.Summary");
15
15
  var _shared__ = require("../../../__shared__");
16
16
  var _helpers = require("../../../helpers");
17
+ var _Rates = require("../../Rates.constants");
17
18
  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
19
  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
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -167,6 +168,25 @@ const Item = exports.Item = /*#__PURE__*/_react.default.forwardRef((_ref, ref) =
167
168
  isSoldOut,
168
169
  multiRoom,
169
170
  priceFactor,
171
+ promocodeForAll: boards.every(function () {
172
+ let {
173
+ confidential,
174
+ discount: {
175
+ breakdown = []
176
+ } = {}
177
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
178
+ return breakdown.find(_ref4 => {
179
+ let {
180
+ type
181
+ } = _ref4;
182
+ return type === _Rates.DISCOUNT_TYPE.PROMOTION;
183
+ }) || breakdown.find(_ref5 => {
184
+ let {
185
+ type
186
+ } = _ref5;
187
+ return type === _Rates.DISCOUNT_TYPE.DEAL;
188
+ }) && confidential;
189
+ }),
170
190
  rates: showOffersFirst ? rates.map(rate => ({
171
191
  ...rate,
172
192
  price: rate.price + findPrice(rate.cancellationId, cancellations)
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","names":["_dataSources","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_Item","_Item2","_Item3","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Item","exports","React","forwardRef","_ref","ref","boards","cancellations","features","filters","metaBoard","multiRoom","priceFactor","rates","selected","onPreview","onSelect","others","selectedBoard","setSelectedBoard","useState","touched","setTouched","useEffect","keys","updateSelectedBoard","roomId","id","roomName","name","nextBoard","find","board","cancellationId","rateId","handleBoard","clearSelection","Event","publish","EVENT","METRICS","handleCancellation","_ref2","cancellation","handleRate","_ref3","offer","findPrice","dataSource","undefined","item","price","columnMode","rowMode","showAllBoards","showAllOffers","showOffersFirst","cancellationPrice","ratePrice","visibleBoards","filter","isSoldOut","soldOut","values","cart","props","availableBoards","availableRates","map","increment","boardCancellationPrice","boardRatePrice","disabled","visible","push","sort","b","rate","selectedCancellation","createElement","Card","focus","View","row","className","card","Preview","Fragment","wide","Rates","onBoard","onCancellation","onRate","Summary","displayName","propTypes","PropTypes","arrayOf","shape","string","bool","number","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.jsx"],"sourcesContent":["import { Event } from '@mirai/data-sources';\nimport { View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './Item.module.css';\nimport { Preview } from './Item.Preview';\nimport { Rates } from './Item.Rates';\nimport { Summary } from './Item.Summary';\nimport { Card } from '../../../__shared__';\nimport { EVENT } from '../../../helpers';\n\nconst Item = React.forwardRef(\n (\n {\n boards = [],\n cancellations = [],\n features = {},\n filters = {},\n metaBoard,\n multiRoom,\n priceFactor = 1,\n rates = [],\n selected,\n onPreview,\n onSelect = () => {},\n ...others\n },\n ref,\n ) => {\n const [selectedBoard, setSelectedBoard] = useState();\n const [touched, setTouched] = useState(false);\n\n useEffect(() => {\n if (Object.keys(filters).length) updateSelectedBoard();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n useEffect(() => {\n if (!selectedBoard) updateSelectedBoard();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [boards]);\n\n useEffect(() => {\n if (!metaBoard || boards.length < 1) return;\n setSelectedBoard(metaBoard);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [metaBoard]);\n\n useEffect(() => {\n onPreview && touched && onPreview({ ...selectedBoard, roomId: others.id, roomName: others.name });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedBoard]);\n\n useEffect(() => {\n if (!selected) return;\n\n const nextBoard = boards.find((board) => board.id === selected.id);\n if (nextBoard) setSelectedBoard(nextBoard);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected]);\n\n const updateSelectedBoard = () => {\n const [{ id: cancellationId } = {}] = cancellations;\n const [{ id: rateId } = {}] = rates;\n const nextBoard = boards.find((board) => board.cancellationId === cancellationId && board.rateId === rateId);\n\n if (nextBoard) setSelectedBoard(nextBoard);\n };\n\n const handleBoard = (board) => {\n clearSelection();\n setSelectedBoard(board);\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:BOARD', board: board.id });\n };\n\n const handleCancellation = (id) => {\n clearSelection();\n setSelectedBoard(boards.find(({ cancellationId }) => cancellationId === id));\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:CANCELLATION', cancellation: id });\n };\n\n const handleRate = ({ id, cancellationId }) => {\n clearSelection();\n setSelectedBoard(boards.find((board) => board.cancellationId === cancellationId && board.rateId == id));\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:OFFER', offer: id });\n };\n\n const findPrice = (id, dataSource = []) => (dataSource.find((item = {}) => item.id === id) || {}).price || 0;\n\n const clearSelection = () => {\n onPreview && setTouched(true);\n multiRoom && selected?.id === id && onSelect(undefined);\n };\n\n const { columnMode, rowMode, showAllBoards, showAllOffers, showOffersFirst } = features;\n const { id, cancellationId, rateId } = selectedBoard || {};\n const cancellationPrice = findPrice(cancellationId, cancellations);\n const ratePrice = findPrice(rateId, rates);\n const visibleBoards = boards.filter((board) => board.cancellationId === cancellationId && board.rateId === rateId);\n\n const isSoldOut =\n others.soldOut &&\n (rates.length === 0 ||\n (Object.values(others.cart || {}).filter(({ roomId } = {}) => roomId === selectedBoard?.roomId).length > 0 &&\n selected?.id != id));\n\n const props = {\n ...others,\n availableBoards: boards,\n availableRates: rates,\n boards: showAllBoards\n ? boards\n .map((board) => {\n const selectedBoard = board.cancellationId === cancellationId && board.rateId === rateId;\n let { increment } = board;\n\n if (!selectedBoard) {\n const boardCancellationPrice = findPrice(board.cancellationId, cancellations);\n const boardRatePrice = findPrice(board.rateId, rates);\n increment = increment - (cancellationPrice + ratePrice) + boardCancellationPrice + boardRatePrice;\n }\n\n return { ...board, disabled: !selectedBoard, increment };\n })\n .filter((board) => {\n if (!board.disabled) return true;\n\n const visible = !visibleBoards.find((item) => item.name === board.name);\n if (visible) visibleBoards.push(board);\n\n return visible;\n })\n .sort((a, b) => a.increment - b.increment)\n : visibleBoards,\n cancellations,\n features,\n isSoldOut,\n multiRoom,\n priceFactor,\n rates: showOffersFirst\n ? rates\n .map((rate) => ({ ...rate, price: rate.price + findPrice(rate.cancellationId, cancellations) }))\n .sort((a, b) => a.price - b.price)\n : showAllOffers\n ? rates\n .map((rate) => {\n const selectedCancellation = rate.cancellationId === cancellationId;\n const price = selectedCancellation\n ? rate.price\n : rate.price - cancellationPrice + findPrice(rate.cancellationId, cancellations);\n\n return { ...rate, disabled: !showOffersFirst && !selectedCancellation, price };\n })\n .sort((a, b) => a.price - b.price)\n : rates.filter((rate) => rate.cancellationId === cancellationId),\n selected,\n selectedBoard,\n onSelect,\n };\n\n return (\n <Card\n {...{ columnMode, rowMode }}\n disabled={isSoldOut}\n focus={(selected && selected.id === id) || (metaBoard && boards.find((item) => metaBoard?.id === item.id))}\n >\n <View ref={ref} row={rowMode} className={[style.card, rowMode && style.rowMode, others.className]}>\n <Preview {...props} />\n\n {React.createElement(\n rowMode ? View : React.Fragment,\n rowMode ? { className: [style.card, style.rowMode], wide: true } : undefined,\n <>\n {!isSoldOut && (\n <Rates {...props} onBoard={handleBoard} onCancellation={handleCancellation} onRate={handleRate} />\n )}\n <Summary {...props} />\n </>,\n )}\n </View>\n </Card>\n );\n },\n);\n\nItem.displayName = 'Mirai:Core:Rates:Item';\n\nItem.propTypes = {\n boards: PropTypes.arrayOf(PropTypes.shape({})),\n cancellations: PropTypes.arrayOf(PropTypes.shape({})),\n features: PropTypes.shape({}),\n filters: PropTypes.shape({}),\n metaBoard: PropTypes.shape({\n id: PropTypes.string,\n }),\n multiRoom: PropTypes.bool,\n priceFactor: PropTypes.number,\n rates: PropTypes.arrayOf(PropTypes.shape({})),\n selected: PropTypes.shape({\n id: PropTypes.string,\n }),\n showAllOffers: PropTypes.bool,\n onPreview: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Item };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.js","names":["_dataSources","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_Item","_Item2","_Item3","_shared__","_helpers","_Rates","_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","Item","exports","React","forwardRef","_ref","ref","boards","cancellations","features","filters","metaBoard","multiRoom","priceFactor","rates","selected","onPreview","onSelect","others","selectedBoard","setSelectedBoard","useState","touched","setTouched","useEffect","keys","updateSelectedBoard","roomId","id","roomName","name","nextBoard","find","board","cancellationId","rateId","handleBoard","clearSelection","Event","publish","EVENT","METRICS","handleCancellation","_ref2","cancellation","handleRate","_ref3","offer","findPrice","dataSource","undefined","item","price","columnMode","rowMode","showAllBoards","showAllOffers","showOffersFirst","cancellationPrice","ratePrice","visibleBoards","filter","isSoldOut","soldOut","values","cart","props","availableBoards","availableRates","map","increment","boardCancellationPrice","boardRatePrice","disabled","visible","push","sort","b","promocodeForAll","every","confidential","discount","breakdown","_ref4","type","DISCOUNT_TYPE","PROMOTION","_ref5","DEAL","rate","selectedCancellation","createElement","Card","focus","View","row","className","card","Preview","Fragment","wide","Rates","onBoard","onCancellation","onRate","Summary","displayName","propTypes","PropTypes","arrayOf","shape","string","bool","number","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.jsx"],"sourcesContent":["import { Event } from '@mirai/data-sources';\nimport { View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './Item.module.css';\nimport { Preview } from './Item.Preview';\nimport { Rates } from './Item.Rates';\nimport { Summary } from './Item.Summary';\nimport { Card } from '../../../__shared__';\nimport { EVENT } from '../../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Item = React.forwardRef(\n (\n {\n boards = [],\n cancellations = [],\n features = {},\n filters = {},\n metaBoard,\n multiRoom,\n priceFactor = 1,\n rates = [],\n selected,\n onPreview,\n onSelect = () => {},\n ...others\n },\n ref,\n ) => {\n const [selectedBoard, setSelectedBoard] = useState();\n const [touched, setTouched] = useState(false);\n\n useEffect(() => {\n if (Object.keys(filters).length) updateSelectedBoard();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n useEffect(() => {\n if (!selectedBoard) updateSelectedBoard();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [boards]);\n\n useEffect(() => {\n if (!metaBoard || boards.length < 1) return;\n setSelectedBoard(metaBoard);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [metaBoard]);\n\n useEffect(() => {\n onPreview && touched && onPreview({ ...selectedBoard, roomId: others.id, roomName: others.name });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedBoard]);\n\n useEffect(() => {\n if (!selected) return;\n\n const nextBoard = boards.find((board) => board.id === selected.id);\n if (nextBoard) setSelectedBoard(nextBoard);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected]);\n\n const updateSelectedBoard = () => {\n const [{ id: cancellationId } = {}] = cancellations;\n const [{ id: rateId } = {}] = rates;\n const nextBoard = boards.find((board) => board.cancellationId === cancellationId && board.rateId === rateId);\n\n if (nextBoard) setSelectedBoard(nextBoard);\n };\n\n const handleBoard = (board) => {\n clearSelection();\n setSelectedBoard(board);\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:BOARD', board: board.id });\n };\n\n const handleCancellation = (id) => {\n clearSelection();\n setSelectedBoard(boards.find(({ cancellationId }) => cancellationId === id));\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:CANCELLATION', cancellation: id });\n };\n\n const handleRate = ({ id, cancellationId }) => {\n clearSelection();\n setSelectedBoard(boards.find((board) => board.cancellationId === cancellationId && board.rateId == id));\n Event.publish(EVENT.METRICS, { id: 'RATES:ITEM:OFFER', offer: id });\n };\n\n const findPrice = (id, dataSource = []) => (dataSource.find((item = {}) => item.id === id) || {}).price || 0;\n\n const clearSelection = () => {\n onPreview && setTouched(true);\n multiRoom && selected?.id === id && onSelect(undefined);\n };\n\n const { columnMode, rowMode, showAllBoards, showAllOffers, showOffersFirst } = features;\n const { id, cancellationId, rateId } = selectedBoard || {};\n const cancellationPrice = findPrice(cancellationId, cancellations);\n const ratePrice = findPrice(rateId, rates);\n const visibleBoards = boards.filter((board) => board.cancellationId === cancellationId && board.rateId === rateId);\n\n const isSoldOut =\n others.soldOut &&\n (rates.length === 0 ||\n (Object.values(others.cart || {}).filter(({ roomId } = {}) => roomId === selectedBoard?.roomId).length > 0 &&\n selected?.id != id));\n\n const props = {\n ...others,\n availableBoards: boards,\n availableRates: rates,\n boards: showAllBoards\n ? boards\n .map((board) => {\n const selectedBoard = board.cancellationId === cancellationId && board.rateId === rateId;\n let { increment } = board;\n\n if (!selectedBoard) {\n const boardCancellationPrice = findPrice(board.cancellationId, cancellations);\n const boardRatePrice = findPrice(board.rateId, rates);\n increment = increment - (cancellationPrice + ratePrice) + boardCancellationPrice + boardRatePrice;\n }\n\n return { ...board, disabled: !selectedBoard, increment };\n })\n .filter((board) => {\n if (!board.disabled) return true;\n\n const visible = !visibleBoards.find((item) => item.name === board.name);\n if (visible) visibleBoards.push(board);\n\n return visible;\n })\n .sort((a, b) => a.increment - b.increment)\n : visibleBoards,\n cancellations,\n features,\n isSoldOut,\n multiRoom,\n priceFactor,\n promocodeForAll: boards.every(\n ({ confidential, discount: { breakdown = [] } = {} } = {}) =>\n breakdown.find(({ type }) => type === DISCOUNT_TYPE.PROMOTION) ||\n (breakdown.find(({ type }) => type === DISCOUNT_TYPE.DEAL) && confidential),\n ),\n rates: showOffersFirst\n ? rates\n .map((rate) => ({ ...rate, price: rate.price + findPrice(rate.cancellationId, cancellations) }))\n .sort((a, b) => a.price - b.price)\n : showAllOffers\n ? rates\n .map((rate) => {\n const selectedCancellation = rate.cancellationId === cancellationId;\n const price = selectedCancellation\n ? rate.price\n : rate.price - cancellationPrice + findPrice(rate.cancellationId, cancellations);\n\n return { ...rate, disabled: !showOffersFirst && !selectedCancellation, price };\n })\n .sort((a, b) => a.price - b.price)\n : rates.filter((rate) => rate.cancellationId === cancellationId),\n selected,\n selectedBoard,\n onSelect,\n };\n\n return (\n <Card\n {...{ columnMode, rowMode }}\n disabled={isSoldOut}\n focus={(selected && selected.id === id) || (metaBoard && boards.find((item) => metaBoard?.id === item.id))}\n >\n <View ref={ref} row={rowMode} className={[style.card, rowMode && style.rowMode, others.className]}>\n <Preview {...props} />\n\n {React.createElement(\n rowMode ? View : React.Fragment,\n rowMode ? { className: [style.card, style.rowMode], wide: true } : undefined,\n <>\n {!isSoldOut && (\n <Rates {...props} onBoard={handleBoard} onCancellation={handleCancellation} onRate={handleRate} />\n )}\n <Summary {...props} />\n </>,\n )}\n </View>\n </Card>\n );\n },\n);\n\nItem.displayName = 'Mirai:Core:Rates:Item';\n\nItem.propTypes = {\n boards: PropTypes.arrayOf(PropTypes.shape({})),\n cancellations: PropTypes.arrayOf(PropTypes.shape({})),\n features: PropTypes.shape({}),\n filters: PropTypes.shape({}),\n metaBoard: PropTypes.shape({\n id: PropTypes.string,\n }),\n multiRoom: PropTypes.bool,\n priceFactor: PropTypes.number,\n rates: PropTypes.arrayOf(PropTypes.shape({})),\n selected: PropTypes.shape({\n id: PropTypes.string,\n }),\n showAllOffers: PropTypes.bool,\n onPreview: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nexport { Item };\n"],"mappings":"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"}
@@ -27,6 +27,9 @@ exports[`<Rates> <Item.Preview> renders 1`] = `
27
27
  </ui-progress>
28
28
  </ui-slider>
29
29
  </ui-view>
30
+ <ui-view
31
+ class="view row"
32
+ />
30
33
  <ui-view
31
34
  class="view row"
32
35
  >
@@ -33,6 +33,9 @@ exports[`<Rates> <Item> renders 1`] = `
33
33
  </ui-progress>
34
34
  </ui-slider>
35
35
  </ui-view>
36
+ <ui-view
37
+ class="view row"
38
+ />
36
39
  <ui-view
37
40
  class="view row"
38
41
  >