@mirai/core 0.3.268 → 0.3.270

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.
@@ -23,6 +23,7 @@ let memoizedWidth = 374;
23
23
  const Preview = _ref => {
24
24
  let {
25
25
  availability = 0,
26
+ availableRates = [],
26
27
  boards = [],
27
28
  cancellations = [],
28
29
  features: {
@@ -64,7 +65,7 @@ const Preview = _ref => {
64
65
  } = ref.current || {};
65
66
  if (clientWidth) memoizedWidth = clientWidth - (isTablet && !isDesktop ? GAP_TABLET : GAP_NOT_TABLET);
66
67
  }, [isDesktop, isTablet, width]);
67
- const [uniqueRate] = rates.length === 1 ? rates : [];
68
+ const [uniqueRate] = cancellations.length === availableRates.length ? rates : [];
68
69
  const caption = {
69
70
  capitalize: true,
70
71
  action: !isMobile,
@@ -188,6 +189,7 @@ exports.Preview = Preview;
188
189
  Preview.displayName = 'Mirai:Core:Rates:Item:Preview';
189
190
  Preview.propTypes = {
190
191
  availability: _propTypes.default.number,
192
+ availableRates: _propTypes.default.arrayOf(_propTypes.default.any),
191
193
  boards: _propTypes.default.arrayOf(_propTypes.default.any),
192
194
  cancellations: _propTypes.default.arrayOf(_propTypes.default.any),
193
195
  features: _propTypes.default.shape({
@@ -1 +1 @@
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","boards","cancellations","features","rowMode","images","isSoldOut","media","name","title","rates","selectedBoard","onMoreInfo","onRateInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","undefined","slider","row","offset","spaceBetween","details","Features","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","INFO","lighten","isClub","rate","LABEL_ONLY_MEMBERS","restrictions","isVariableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","inline","concat","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 { 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 { ICON } from '../../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n boards = [],\n cancellations = [],\n features: { rowMode = false },\n images = [],\n isSoldOut = false,\n media,\n name: title,\n rates = [],\n selectedBoard = {},\n onMoreInfo,\n onRateInfo,\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 [uniqueRate] = rates.length === 1 ? rates : [];\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={rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...others} onMoreInfo={onMoreInfo} />\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 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 {boards.length === 1 && (\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 )}\n\n {cancellations.length === 1 && (\n <View>\n <View row>\n <Pressable\n onPress={() => onRateInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text lighten small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.isClub && (\n <View row>\n <Text bold action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ isVariableOffer, 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 {isVariableOffer && 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 inline 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 boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\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 onMoreInfo: PropTypes.func,\n onRateInfo: 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","availableRates","boards","cancellations","features","rowMode","images","isSoldOut","media","name","title","rates","selectedBoard","onMoreInfo","onRateInfo","onViewUrl","others","height","isDesktop","isMobile","isPortrait","isTablet","width","useDevice","translate","useLocale","ref","useRef","value","hotel","warningAvailability","useStore","useEffect","clientWidth","current","uniqueRate","caption","capitalize","action","small","offerDates","variants","createElement","View","className","preview","Slider","map","_ref2","large","onCounter","undefined","slider","row","offset","spaceBetween","details","Features","Text","bold","error","L10N","LABEL_REMAINING_ITEMS","amount","gap","flex","headline","level","Amenities","highlight","Fragment","included","item","index","Icon","ICON","AMENITY","TooltipDates","captions","values","parseDate","Pressable","onPress","cancellation","INFO","lighten","isClub","rate","LABEL_ONLY_MEMBERS","restrictions","isVariableOffer","warning","WARNING","LABEL_INCLUDED","date","Action","inline","concat","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 { 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 { ICON } from '../../../helpers';\n\nconst GAP_TABLET = 7;\nconst GAP_NOT_TABLET = 1;\nlet memoizedWidth = 374;\n\nconst Preview = ({\n availability = 0,\n availableRates = [],\n boards = [],\n cancellations = [],\n features: { rowMode = false },\n images = [],\n isSoldOut = false,\n media,\n name: title,\n rates = [],\n selectedBoard = {},\n onMoreInfo,\n onRateInfo,\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 [uniqueRate] = cancellations.length === availableRates.length ? rates : [];\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={rowMode ? height / (isPortrait ? 5 : 3) : 208}\n images={images.map(({ large }) => large)}\n media={media}\n width={memoizedWidth}\n onCounter={!isMobile ? onMoreInfo : undefined}\n onViewUrl={onViewUrl}\n className={style.slider}\n />\n\n <View row className={[style.offset, style.spaceBetween, style.details]}>\n <Features {...others} onMoreInfo={onMoreInfo} />\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 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 {boards.length === 1 && (\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 )}\n\n {cancellations.length === 1 && (\n <View>\n <View row>\n <Pressable\n onPress={() => onRateInfo({ ...selectedBoard, cancellation: cancellations[0] })}\n className={style.row}\n >\n <Text {...caption}>{cancellations[0].name}</Text>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\n </View>\n {cancellations[0].caption && (\n <Text lighten small>\n {cancellations[0].caption}\n </Text>\n )}\n </View>\n )}\n\n {uniqueRate?.isClub && (\n <View row>\n <Text bold action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n </View>\n )}\n\n {uniqueRate?.restrictions.map(({ isVariableOffer, 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 {isVariableOffer && 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 inline 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 availableRates: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({\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 onMoreInfo: PropTypes.func,\n onRateInfo: PropTypes.func,\n onViewUrl: PropTypes.func,\n};\n\nexport { Preview };\n"],"mappings":"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"}
@@ -18,6 +18,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
18
18
  const Rates = _ref => {
19
19
  let {
20
20
  availableBoards = [],
21
+ availableRates = [],
21
22
  boards = [],
22
23
  cancellations = [],
23
24
  features: {
@@ -46,7 +47,7 @@ const Rates = _ref => {
46
47
  } = selectedBoard;
47
48
  const has = {
48
49
  cancellations: cancellations.length > 1,
49
- rates: rates.length > 1,
50
+ rates: cancellations.length !== availableRates.length,
50
51
  boards: boards.length > 1
51
52
  };
52
53
  const renderCancellations = () => has.cancellations && /*#__PURE__*/_react.default.createElement(_ui.View, {
@@ -128,11 +129,11 @@ const Rates = _ref => {
128
129
  disabled: disabled,
129
130
  outlined: hideRadio,
130
131
  value: price,
131
- onPress: rates.length > 1 ? () => onRate({
132
+ onPress: rates.length > 0 ? () => onRate({
132
133
  id,
133
134
  cancellationId
134
135
  }) : undefined
135
- }, rates.length > 1 && /*#__PURE__*/_react.default.createElement(_ui.View, {
136
+ }, rates.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
136
137
  row: true,
137
138
  className: style.rateText
138
139
  }, isClub && /*#__PURE__*/_react.default.createElement(_ui.Text, {
@@ -198,6 +199,7 @@ const Rates = _ref => {
198
199
  exports.Rates = Rates;
199
200
  Rates.propTypes = {
200
201
  availableBoards: _propTypes.default.arrayOf(_propTypes.default.any),
202
+ availableRates: _propTypes.default.arrayOf(_propTypes.default.any),
201
203
  boards: _propTypes.default.arrayOf(_propTypes.default.any),
202
204
  cancellations: _propTypes.default.arrayOf(_propTypes.default.any),
203
205
  features: _propTypes.default.shape({}),
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Rates.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","boards","cancellations","features","hideRadio","rowMode","showOffersFirst","showRateIncluded","rates","selectedBoard","onBoard","onCancellation","onRate","onRateInfo","isMobile","useDevice","translate","useLocale","cancellationId","rateId","id","boardId","length","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","undefined","filter","_ref2","map","_ref3","highlight","name","caption","price","cancellation","Option","key","checked","inline","outlined","title","value","onPress","Pressable","Icon","ICON","INFO","LABEL_OFFER","_ref4","countdown","disabled","discountPercentage","included","isClub","restrictions","RateDetails","arguments","rateText","small","rate","LABEL_ONLY_MEMBERS","LABEL_DISCOUNT","concat","compacted","styles","LABEL_ACCOMMODATION_PLAN","board","increment","variants","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { 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';\n\nconst Rates = ({\n availableBoards = [],\n boards = [],\n cancellations = [],\n features: { hideRadio = false, rowMode = false, showOffersFirst = false, showRateIncluded = false } = {},\n rates = [],\n selectedBoard = {},\n onBoard,\n onCancellation,\n onRate,\n onRateInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1,\n rates: rates.length > 1,\n boards: boards.length > 1,\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 hideRadio ? View : React.Fragment,\n hideRadio ? { 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 highlight={highlight}\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={cancellations.length > 1 && cancellations.length <= 3}\n outlined={hideRadio}\n title={name}\n value={!showOffersFirst ? price : undefined}\n onPress={() => onCancellation(id)}\n >\n <Pressable onPress={() => onRateInfo({ ...selectedBoard, cancellation })}>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\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 ({\n id,\n cancellationId,\n countdown,\n disabled,\n discountPercentage,\n included,\n isClub,\n name,\n price,\n restrictions,\n }) => (\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 }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price}\n onPress={rates.length > 1 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 1 && (\n <View row className={style.rateText}>\n {isClub && (\n <Text action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {discountPercentage && (\n <Text action={!isMobile} small={isMobile} className={style.rate}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n <Text bold={rowMode} action={!isMobile} small={isMobile}>\n {name}\n {!showRateIncluded && <RateDetails {...{ compacted: true, included }} />}\n </Text>\n </View>\n )}\n </Option>\n ),\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {(has.rates || 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 hideRadio ? View : React.Fragment,\n hideRadio ? { 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={boards.length > 1 && boards.length <= 3}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment : 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 );\n};\n\nRates.propTypes = {\n availableBoards: PropTypes.arrayOf(PropTypes.any),\n boards: PropTypes.arrayOf(PropTypes.any),\n cancellations: PropTypes.arrayOf(PropTypes.any),\n features: PropTypes.shape({}),\n rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onRate: PropTypes.func,\n onChange: PropTypes.func,\n onRateInfo: 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":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Rates","_ref","availableBoards","availableRates","boards","cancellations","features","hideRadio","rowMode","showOffersFirst","showRateIncluded","rates","selectedBoard","onBoard","onCancellation","onRate","onRateInfo","isMobile","useDevice","translate","useLocale","cancellationId","rateId","id","boardId","length","renderCancellations","createElement","View","className","offset","gap","Text","action","bold","L10N","LABEL_CANCELLATION_POLICY","React","Fragment","row","inlineOptions","undefined","filter","_ref2","map","_ref3","highlight","name","caption","price","cancellation","Option","key","checked","inline","outlined","title","value","onPress","Pressable","Icon","ICON","INFO","LABEL_OFFER","_ref4","countdown","disabled","discountPercentage","included","isClub","restrictions","RateDetails","arguments","rateText","small","rate","LABEL_ONLY_MEMBERS","LABEL_DISCOUNT","concat","compacted","styles","LABEL_ACCOMMODATION_PLAN","board","increment","variants","TooltipDates","captions","values","parseDate","exports","propTypes","PropTypes","arrayOf","any","shape","func","onChange","displayName"],"sources":["../../../../../src/components/Rates/components/Item/Item.Rates.jsx"],"sourcesContent":["import { 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';\n\nconst Rates = ({\n availableBoards = [],\n availableRates = [],\n boards = [],\n cancellations = [],\n features: { hideRadio = false, rowMode = false, showOffersFirst = false, showRateIncluded = false } = {},\n rates = [],\n selectedBoard = {},\n onBoard,\n onCancellation,\n onRate,\n onRateInfo,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n const { cancellationId, rateId, id: boardId } = selectedBoard;\n\n const has = {\n cancellations: cancellations.length > 1,\n rates: cancellations.length !== availableRates.length,\n boards: boards.length > 1,\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 hideRadio ? View : React.Fragment,\n hideRadio ? { 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 highlight={highlight}\n key={id}\n caption={caption}\n checked={id === cancellationId}\n inline={cancellations.length > 1 && cancellations.length <= 3}\n outlined={hideRadio}\n title={name}\n value={!showOffersFirst ? price : undefined}\n onPress={() => onCancellation(id)}\n >\n <Pressable onPress={() => onRateInfo({ ...selectedBoard, cancellation })}>\n <Icon action={isMobile} value={ICON.INFO} />\n </Pressable>\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 ({\n id,\n cancellationId,\n countdown,\n disabled,\n discountPercentage,\n included,\n isClub,\n name,\n price,\n restrictions,\n }) => (\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 }}\n />\n }\n checked={id === rateId}\n disabled={disabled}\n outlined={hideRadio}\n value={price}\n onPress={rates.length > 0 ? () => onRate({ id, cancellationId }) : undefined}\n >\n {rates.length > 0 && (\n <View row className={style.rateText}>\n {isClub && (\n <Text action={!isMobile} small={isMobile} className={[style.rate, style.highlight]}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {discountPercentage && (\n <Text action={!isMobile} small={isMobile} className={style.rate}>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n <Text bold={rowMode} action={!isMobile} small={isMobile}>\n {name}\n {!showRateIncluded && <RateDetails {...{ compacted: true, included }} />}\n </Text>\n </View>\n )}\n </Option>\n ),\n )}\n </View>\n )}\n\n {showOffersFirst && renderCancellations()}\n\n {(has.rates || 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 hideRadio ? View : React.Fragment,\n hideRadio ? { 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={boards.length > 1 && boards.length <= 3}\n outlined={hideRadio}\n title={name}\n value={has.boards ? increment : 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 );\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 rates: PropTypes.arrayOf(PropTypes.any),\n selectedBoard: PropTypes.shape({}),\n onBoard: PropTypes.func,\n onCancellation: PropTypes.func,\n onRate: PropTypes.func,\n onChange: PropTypes.func,\n onRateInfo: PropTypes.func,\n};\n\nRates.displayName = 'Mirai:Core:Rates:Item:Rates';\n\nexport { Rates };\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAC,uBAAA,CAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAAwC,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAExC,MAAMC,KAAK,GAAGC,IAAA,IAYR;EAAA,IAZS;IACbC,eAAe,GAAG,EAAE;IACpBC,cAAc,GAAG,EAAE;IACnBC,MAAM,GAAG,EAAE;IACXC,aAAa,GAAG,EAAE;IAClBC,QAAQ,EAAE;MAAEC,SAAS,GAAG,KAAK;MAAEC,OAAO,GAAG,KAAK;MAAEC,eAAe,GAAG,KAAK;MAAEC,gBAAgB,GAAG;IAAM,CAAC,GAAG,CAAC,CAAC;IACxGC,KAAK,GAAG,EAAE;IACVC,aAAa,GAAG,CAAC,CAAC;IAClBC,OAAO;IACPC,cAAc;IACdC,MAAM;IACNC;EACF,CAAC,GAAAf,IAAA;EACC,MAAM;IAAEgB;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEjC,MAAM;IAAEC,cAAc;IAAEC,MAAM;IAAEC,EAAE,EAAEC;EAAQ,CAAC,GAAGZ,aAAa;EAE7D,MAAM3B,GAAG,GAAG;IACVoB,aAAa,EAAEA,aAAa,CAACoB,MAAM,GAAG,CAAC;IACvCd,KAAK,EAAEN,aAAa,CAACoB,MAAM,KAAKtB,cAAc,CAACsB,MAAM;IACrDrB,MAAM,EAAEA,MAAM,CAACqB,MAAM,GAAG;EAC1B,CAAC;EAED,MAAMC,mBAAmB,GAAGA,CAAA,KAC1BzC,GAAG,CAACoB,aAAa,iBACfjC,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA2D,IAAI;IAACC,SAAS,EAAE,CAACtD,KAAK,CAACuD,MAAM,EAAEvD,KAAK,CAACwD,GAAG;EAAE,gBACzC3D,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;IAACC,MAAM,EAAEhB,QAAS;IAACiB,IAAI;EAAA,GACzBf,SAAS,CAACgB,UAAI,CAACC,yBAAyB,CACrC,CAAC,eAENC,cAAK,CAACV,aAAa,CAClBpB,SAAS,GAAGqB,QAAI,GAAGS,cAAK,CAACC,QAAQ,EACjC/B,SAAS,GAAG;IAAEgC,GAAG,EAAE,IAAI;IAAEV,SAAS,EAAEtD,KAAK,CAACiE;EAAc,CAAC,GAAGC,SAAS,EACrEpC,aAAa,CACVqC,MAAM,CAACC,KAAA;IAAA,IAAC;MAAEpB;IAAG,CAAC,GAAAoB,KAAA;IAAA,OAAK,CAAClC,eAAe,IAAKA,eAAe,IAAIc,EAAE,KAAKF,cAAe;EAAA,EAAC,CAClFuB,GAAG,CAACC,KAAA;IAAA,IAAC;MAAEC,SAAS;MAAEvB,EAAE;MAAEwB,IAAI;MAAEC,OAAO;MAAEC,KAAK;MAAE,GAAGC;IAAa,CAAC,GAAAL,KAAA;IAAA,oBAC5DzE,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAA8E,MAAM;MACLL,SAAS,EAAEA,SAAU;MACrBM,GAAG,EAAE7B,EAAG;MACRyB,OAAO,EAAEA,OAAQ;MACjBK,OAAO,EAAE9B,EAAE,KAAKF,cAAe;MAC/BiC,MAAM,EAAEjD,aAAa,CAACoB,MAAM,GAAG,CAAC,IAAIpB,aAAa,CAACoB,MAAM,IAAI,CAAE;MAC9D8B,QAAQ,EAAEhD,SAAU;MACpBiD,KAAK,EAAET,IAAK;MACZU,KAAK,EAAE,CAAChD,eAAe,GAAGwC,KAAK,GAAGR,SAAU;MAC5CiB,OAAO,EAAEA,CAAA,KAAM5C,cAAc,CAACS,EAAE;IAAE,gBAElCnD,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA0F,SAAS;MAACD,OAAO,EAAEA,CAAA,KAAM1C,UAAU,CAAC;QAAE,GAAGJ,aAAa;QAAEsC;MAAa,CAAC;IAAE,gBACvE9E,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA2F,IAAI;MAAC3B,MAAM,EAAEhB,QAAS;MAACwC,KAAK,EAAEI,aAAI,CAACC;IAAK,CAAE,CAClC,CACL,CAAC;EAAA,CACV,CACL,CACI,CACP;EAEH,oBACE1F,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAAvD,MAAA,CAAAY,OAAA,CAAAsD,QAAA,QACG,CAAC7B,eAAe,IAAIiB,mBAAmB,CAAC,CAAC,EAEzCzC,GAAG,CAAC0B,KAAK,iBACRvC,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA2D,IAAI;IAACC,SAAS,EAAE,CAACtD,KAAK,CAACuD,MAAM,EAAEvD,KAAK,CAACwD,GAAG;EAAE,gBACzC3D,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;IAACC,MAAM,EAAEhB,QAAS;IAACiB,IAAI;EAAA,GACzBf,SAAS,CAACgB,UAAI,CAAC4B,WAAW,CACvB,CAAC,EACNpD,KAAK,CAACiC,GAAG,CACRoB,KAAA;IAAA,IAAC;MACCzC,EAAE;MACFF,cAAc;MACd4C,SAAS;MACTC,QAAQ;MACRC,kBAAkB;MAClBC,QAAQ;MACRC,MAAM;MACNtB,IAAI;MACJE,KAAK;MACLqB;IACF,CAAC,GAAAN,KAAA;IAAA,oBACC5F,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAA8E,MAAM;MACLC,GAAG,EAAE7B,EAAG;MACRyB,OAAO,eACL5E,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAAkG,WAAW;QAERN,SAAS;QACTE,kBAAkB;QAClBC,QAAQ,EAAE1D,gBAAgB,GAAG0D,QAAQ,GAAG3B,SAAS;QACjD4B,MAAM;QACNC,YAAY;QACZ1D,aAAa,EACXA,aAAa,CAACU,MAAM,KAAKC,EAAE,GACvBX,aAAa,GACbV,eAAe,CAACwC,MAAM,CAAC;UAAA,IAAC;YAAEpB;UAAO,CAAC,GAAAkD,SAAA,CAAA/C,MAAA,QAAA+C,SAAA,QAAA/B,SAAA,GAAA+B,SAAA,MAAG,CAAC,CAAC;UAAA,OAAKlD,MAAM,KAAKC,EAAE;QAAA,EAAC,CAAC,CAAC;MAAC,CAEtE,CACF;MACD8B,OAAO,EAAE9B,EAAE,KAAKD,MAAO;MACvB4C,QAAQ,EAAEA,QAAS;MACnBX,QAAQ,EAAEhD,SAAU;MACpBkD,KAAK,EAAER,KAAM;MACbS,OAAO,EAAE/C,KAAK,CAACc,MAAM,GAAG,CAAC,GAAG,MAAMV,MAAM,CAAC;QAAEQ,EAAE;QAAEF;MAAe,CAAC,CAAC,GAAGoB;IAAU,GAE5E9B,KAAK,CAACc,MAAM,GAAG,CAAC,iBACfrD,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA2D,IAAI;MAACW,GAAG;MAACV,SAAS,EAAEtD,KAAK,CAACkG;IAAS,GACjCJ,MAAM,iBACLjG,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;MAACC,MAAM,EAAE,CAAChB,QAAS;MAACyD,KAAK,EAAEzD,QAAS;MAACY,SAAS,EAAE,CAACtD,KAAK,CAACoG,IAAI,EAAEpG,KAAK,CAACuE,SAAS;IAAE,GAChF3B,SAAS,CAACgB,UAAI,CAACyC,kBAAkB,CAC9B,CACP,EAEAT,kBAAkB,iBACjB/F,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;MAACC,MAAM,EAAE,CAAChB,QAAS;MAACyD,KAAK,EAAEzD,QAAS;MAACY,SAAS,EAAEtD,KAAK,CAACoG;IAAK,GAC7DxD,SAAS,CAACgB,UAAI,CAAC0C,cAAc,EAAE;MAAEpB,KAAK,KAAAqB,MAAA,CAAKX,kBAAkB;IAAI,CAAC,CAC/D,CACP,eAED/F,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;MAACE,IAAI,EAAE1B,OAAQ;MAACyB,MAAM,EAAE,CAAChB,QAAS;MAACyD,KAAK,EAAEzD;IAAS,GACrD8B,IAAI,EACJ,CAACrC,gBAAgB,iBAAItC,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAAkG,WAAW;MAAOQ,SAAS,EAAE,IAAI;MAAEX;IAAQ,CAAK,CACnE,CACF,CAEF,CAAC;EAAA,CAEb,CACI,CACP,EAEA3D,eAAe,IAAIiB,mBAAmB,CAAC,CAAC,EAExC,CAACzC,GAAG,CAAC0B,KAAK,IAAI1B,GAAG,CAACmB,MAAM,kBACvBhC,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA2D,IAAI;IAACC,SAAS,EAAE,IAAAmD,UAAM,EAACzG,KAAK,CAACuD,MAAM,EAAEvD,KAAK,CAACwD,GAAG;EAAE,gBAC/C3D,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAAC1D,GAAA,CAAA+D,IAAI;IAACC,MAAM,EAAEhB,QAAS;IAACiB,IAAI;EAAA,GACzBf,SAAS,CAACgB,UAAI,CAAC8C,wBAAwB,CACpC,CAAC,eAEN5C,cAAK,CAACV,aAAa,CAClBpB,SAAS,GAAGqB,QAAI,GAAGS,cAAK,CAACC,QAAQ,EACjC/B,SAAS,GAAG;IAAEgC,GAAG,EAAE,IAAI;IAAEV,SAAS,EAAEtD,KAAK,CAACiE;EAAc,CAAC,GAAGC,SAAS,EACrErC,MAAM,CAACwC,GAAG,CAAC,YAAgB;IAAA,IAAfsC,KAAK,GAAAV,SAAA,CAAA/C,MAAA,QAAA+C,SAAA,QAAA/B,SAAA,GAAA+B,SAAA,MAAG,CAAC,CAAC;IACpB,MAAM;MAAEN,QAAQ;MAAE3C,EAAE;MAAE4D,SAAS;MAAEpC,IAAI;MAAEqC,QAAQ,GAAG;IAAG,CAAC,GAAGF,KAAK;IAE9D,oBACE9G,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAA8E,MAAM;MACLC,GAAG,EAAE7B,EAAG;MACR8B,OAAO,EAAE9B,EAAE,KAAKC,OAAQ;MACxB0C,QAAQ,EAAEA,QAAS;MACnBZ,MAAM,EAAElD,MAAM,CAACqB,MAAM,GAAG,CAAC,IAAIrB,MAAM,CAACqB,MAAM,IAAI,CAAE;MAChD8B,QAAQ,EAAEhD,SAAU;MACpBiD,KAAK,EAAET,IAAK;MACZU,KAAK,EAAExE,GAAG,CAACmB,MAAM,GAAG+E,SAAS,GAAG1C,SAAU;MAC1CiB,OAAO,EAAEA,CAAA,KAAM7C,OAAO,CAACqE,KAAK;IAAE,GAE7BE,QAAQ,CAAC3D,MAAM,GAAG,CAAC,iBAClBrD,MAAA,CAAAY,OAAA,CAAA2C,aAAA,CAACtD,WAAA,CAAAgH,YAAY;MACXC,QAAQ,EAAEF,QAAQ,CAACxC,GAAG,CAAC;QAAA,IAAC;UAAEG;QAAK,CAAC,GAAAyB,SAAA,CAAA/C,MAAA,QAAA+C,SAAA,QAAA/B,SAAA,GAAA+B,SAAA,MAAG,CAAC,CAAC;QAAA,OAAKzB,IAAI;MAAA,EAAE;MAChDwC,MAAM,EAAEH,QAAQ,CAACxC,GAAG,CAAC;QAAA,IAAC;UAAEa;QAAM,CAAC,GAAAe,SAAA,CAAA/C,MAAA,QAAA+C,SAAA,QAAA/B,SAAA,GAAA+B,SAAA,MAAG,CAAC,CAAC;QAAA,OAAK,IAAAgB,iBAAS,EAAC/B,KAAK,CAAC;MAAA;IAAE,CAC5D,CAEG,CAAC;EAEb,CAAC,CACH,CACI,CAER,CAAC;AAEP,CAAC;AAACgC,OAAA,CAAAzF,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAAC0F,SAAS,GAAG;EAChBxF,eAAe,EAAEyF,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,GAAG,CAAC;EACjD1F,cAAc,EAAEwF,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,GAAG,CAAC;EAChDzF,MAAM,EAAEuF,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,GAAG,CAAC;EACxCxF,aAAa,EAAEsF,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,GAAG,CAAC;EAC/CvF,QAAQ,EAAEqF,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7BnF,KAAK,EAAEgF,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,GAAG,CAAC;EACvCjF,aAAa,EAAE+E,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAClCjF,OAAO,EAAE8E,kBAAS,CAACI,IAAI;EACvBjF,cAAc,EAAE6E,kBAAS,CAACI,IAAI;EAC9BhF,MAAM,EAAE4E,kBAAS,CAACI,IAAI;EACtBC,QAAQ,EAAEL,kBAAS,CAACI,IAAI;EACxB/E,UAAU,EAAE2E,kBAAS,CAACI;AACxB,CAAC;AAED/F,KAAK,CAACiG,WAAW,GAAG,6BAA6B"}
@@ -99,6 +99,7 @@ const Item = exports.Item = /*#__PURE__*/_react.default.forwardRef((_ref, ref) =
99
99
  const props = {
100
100
  ...others,
101
101
  availableBoards: boards,
102
+ availableRates: rates,
102
103
  boards: showAllBoards ? boards.map(board => {
103
104
  const selectedBoard = board.cancellationId === cancellationId && board.rateId === rateId;
104
105
  let {
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_Item","_Item2","_Item3","_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","Item","exports","React","forwardRef","_ref","ref","boards","cancellations","features","multiRoom","rates","selected","onSelect","others","selectedBoard","setSelectedBoard","useState","useEffect","id","cancellationId","rateId","nextBoard","find","board","handleBoard","clearSelection","handleCancellation","_ref2","handleRate","_ref3","findPrice","dataSource","undefined","item","price","columnMode","rowMode","showAllBoards","showAllOffers","showOffersFirst","cancellationPrice","ratePrice","visibleBoards","filter","isSoldOut","soldOut","values","cart","roomId","props","availableBoards","map","increment","boardCancellationPrice","boardRatePrice","disabled","visible","name","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","bool","string","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.jsx"],"sourcesContent":["import { 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__';\n\nconst Item = React.forwardRef(\n (\n { boards = [], cancellations = [], features = {}, multiRoom, rates = [], selected, onSelect = () => {}, ...others },\n ref,\n ) => {\n const [selectedBoard, setSelectedBoard] = useState();\n\n useEffect(() => {\n if (selectedBoard) return;\n\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 // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [boards]);\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 handleBoard = (board) => {\n clearSelection();\n\n setSelectedBoard(board);\n };\n\n const handleCancellation = (id) => {\n clearSelection();\n\n setSelectedBoard(boards.find(({ cancellationId }) => cancellationId === id));\n };\n\n const handleRate = ({ id, cancellationId }) => {\n clearSelection();\n\n setSelectedBoard(boards.find((board) => board.cancellationId === cancellationId && board.rateId == id));\n };\n\n const findPrice = (id, dataSource = []) => (dataSource.find((item = {}) => item.id === id) || {}).price || 0;\n\n const clearSelection = () => multiRoom && selected?.id === id && onSelect(undefined);\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 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 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 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 {...{ columnMode, rowMode }} disabled={isSoldOut} focus={selected && selected.id === id}>\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 multiRoom: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.shape({})),\n selected: PropTypes.shape({\n id: PropTypes.string,\n }),\n showAllOffers: PropTypes.bool,\n onSelect: PropTypes.func,\n};\n\nexport { Item };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Item.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_Item","_Item2","_Item3","_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","Item","exports","React","forwardRef","_ref","ref","boards","cancellations","features","multiRoom","rates","selected","onSelect","others","selectedBoard","setSelectedBoard","useState","useEffect","id","cancellationId","rateId","nextBoard","find","board","handleBoard","clearSelection","handleCancellation","_ref2","handleRate","_ref3","findPrice","dataSource","undefined","item","price","columnMode","rowMode","showAllBoards","showAllOffers","showOffersFirst","cancellationPrice","ratePrice","visibleBoards","filter","isSoldOut","soldOut","values","cart","roomId","props","availableBoards","availableRates","map","increment","boardCancellationPrice","boardRatePrice","disabled","visible","name","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","bool","string","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.jsx"],"sourcesContent":["import { 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__';\n\nconst Item = React.forwardRef(\n (\n { boards = [], cancellations = [], features = {}, multiRoom, rates = [], selected, onSelect = () => {}, ...others },\n ref,\n ) => {\n const [selectedBoard, setSelectedBoard] = useState();\n\n useEffect(() => {\n if (selectedBoard) return;\n\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 // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [boards]);\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 handleBoard = (board) => {\n clearSelection();\n\n setSelectedBoard(board);\n };\n\n const handleCancellation = (id) => {\n clearSelection();\n\n setSelectedBoard(boards.find(({ cancellationId }) => cancellationId === id));\n };\n\n const handleRate = ({ id, cancellationId }) => {\n clearSelection();\n\n setSelectedBoard(boards.find((board) => board.cancellationId === cancellationId && board.rateId == id));\n };\n\n const findPrice = (id, dataSource = []) => (dataSource.find((item = {}) => item.id === id) || {}).price || 0;\n\n const clearSelection = () => multiRoom && selected?.id === id && onSelect(undefined);\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 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 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 {...{ columnMode, rowMode }} disabled={isSoldOut} focus={selected && selected.id === id}>\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 multiRoom: PropTypes.bool,\n rates: PropTypes.arrayOf(PropTypes.shape({})),\n selected: PropTypes.shape({\n id: PropTypes.string,\n }),\n showAllOffers: PropTypes.bool,\n onSelect: PropTypes.func,\n};\n\nexport { Item };\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.3.268",
3
+ "version": "0.3.270",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",
package/public/index.html CHANGED
@@ -10,23 +10,29 @@
10
10
  function gtag() {
11
11
  dataLayer.push(arguments);
12
12
  }
13
- gtag('consent', 'default', {
13
+ gtag('consent', 'update', {
14
14
  ad_storage: 'granted',
15
15
  ad_user_data: 'granted',
16
16
  ad_personalization: 'granted',
17
17
  analytics_storage: 'granted',
18
18
  });
19
- function getId() {
19
+ function setId() {
20
20
  const params = new URLSearchParams(window.location.search);
21
21
  if (params.get('useTracking')) {
22
- document.querySelector('#mirai').dataset.miraiId = params.get('miraiId') || '100379008';
22
+ const time = setInterval(() => {
23
+ const el = document.querySelector('#mirai');
24
+ if (!el) return;
25
+
26
+ clearInterval(time);
27
+ document.querySelector('#mirai').dataset.miraiId = params.get('miraiId') || '100379008';
28
+ }, 100);
23
29
  }
24
30
  }
25
- getId();
31
+ setId();
26
32
  </script>
27
33
  </head>
28
- <body onload="getId()">
29
- <div data-mirai-engine="mirai_tr" data-init="true"></div>
34
+ <body>
35
+ <div data-mirai-engine="mirai_tr" data-init="false"></div>
30
36
  <noscript>You need to enable JavaScript to run this app.</noscript>
31
37
  <!-- hotel example -->
32
38
  <div id="mirai" data-mirai-id="100379008"></div>