@mirai/core 0.3.64 → 0.3.66

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 (43) hide show
  1. package/build/components/Checkout/Checkout.l10n.js +1 -1
  2. package/build/components/Checkout/Checkout.l10n.js.map +1 -1
  3. package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Confirmation.test.js.snap +18 -6
  4. package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Details.test.js.snap +3 -1
  5. package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Summary.test.js.snap +12 -4
  6. package/build/components/Rates/Rates.Footer.js +32 -48
  7. package/build/components/Rates/Rates.Footer.js.map +1 -1
  8. package/build/components/Rates/Rates.Header.js +8 -4
  9. package/build/components/Rates/Rates.Header.js.map +1 -1
  10. package/build/components/Rates/Rates.RoomSelector.js +0 -3
  11. package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
  12. package/build/components/Rates/Rates.Skeleton.js +6 -3
  13. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  14. package/build/components/Rates/Rates.js +53 -25
  15. package/build/components/Rates/Rates.js.map +1 -1
  16. package/build/components/Rates/Rates.module.css +33 -13
  17. package/build/components/Rates/components/Item/Item.Preview.js +21 -6
  18. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  19. package/build/components/Rates/components/Item/Item.Summary.js +20 -26
  20. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
  21. package/build/components/Rates/components/Item/Item.module.css +9 -15
  22. package/build/components/Rates/components/Item/components/Features/Features.js +15 -18
  23. package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
  24. package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -6
  25. package/build/components/Rates/components/Item/components/{Discount/Discount.js → PriceDetails/PriceDetails.js} +23 -18
  26. package/build/components/Rates/components/Item/components/PriceDetails/PriceDetails.js.map +1 -0
  27. package/build/components/Rates/components/Item/components/{Discount/Discount.module.css → PriceDetails/PriceDetails.module.css} +5 -6
  28. package/build/components/Rates/components/Item/components/PriceDetails/index.js +17 -0
  29. package/build/components/Rates/components/Item/components/PriceDetails/index.js.map +1 -0
  30. package/build/components/Rates/components/Item/components/index.js +11 -11
  31. package/build/components/Rates/components/Item/components/index.js.map +1 -1
  32. package/build/components/Rates/components/ModalExtras/ModalExtras.js +176 -0
  33. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -0
  34. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js +18 -0
  35. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js.map +1 -0
  36. package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +74 -0
  37. package/build/components/Rates/components/{Item/components/Discount → ModalExtras}/index.js +4 -4
  38. package/build/components/Rates/components/ModalExtras/index.js.map +1 -0
  39. package/build/components/Rates/components/index.js +11 -0
  40. package/build/components/Rates/components/index.js.map +1 -1
  41. package/package.json +1 -1
  42. package/build/components/Rates/components/Item/components/Discount/Discount.js.map +0 -1
  43. package/build/components/Rates/components/Item/components/Discount/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Item.Summary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_components","_Item","style","_interopRequireWildcard","_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","Summary","_ref","availability","multiRoom","name","roomName","selected","selectedBoard","taxes","onChange","isMobile","useDevice","translate","useLocale","value","currency","hotel","warningAvailability","useStore","basePrice","cancellationId","dayPrice","discount","percentage","discountPercentage","breakdown","id","originalPrice","price","rateId","isSelected","handlePress","undefined","hasDiscountClub","find","_ref2","type","DISCOUNT_TYPE","CLUB","createElement","Fragment","View","className","offset","summary","row","spaceBetween","Text","bold","small","concat","L10N","LABEL_CLUB_MEMBERS","LABEL_DISCOUNT","LABEL_REMAINING_ITEMS","amount","gap","content","headline","level","currencyFormat","action","lighten","lineThrough","tiny","LABEL_PER_UNIT_NIGHT","LABEL_EXCLUDES_TAXES_FEES","LABEL_INCLUDES_TAXES_FEES","Discount","priceDetails","Button","large","secondary","onPress","LABEL_DESELECT","LABEL_SELECT","exports","displayName","propTypes","PropTypes","number","bool","string","shape","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Button, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Discount } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Summary = ({\n availability = 0,\n multiRoom = false,\n name: roomName,\n selected = {},\n selectedBoard = {},\n taxes,\n onChange,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency, hotel: { warningAvailability = 9999 } } = {} } = useStore();\n\n const {\n basePrice,\n cancellationId,\n dayPrice,\n discount: { percentage: discountPercentage = 0, breakdown = [] } = {},\n id,\n name,\n originalPrice,\n price,\n rateId,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n onChange(!isSelected ? { basePrice, cancellationId, id, name, price, rateId, roomName } : undefined);\n };\n\n const hasDiscountClub = discountPercentage > 0 && breakdown.find(({ type }) => type === DISCOUNT_TYPE.CLUB);\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n <View row className={style.spaceBetween}>\n {discountPercentage > 0 && (\n <Text bold small className={style.discount}>\n {hasDiscountClub && `${translate(L10N.LABEL_CLUB_MEMBERS)} `}\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n {availability <= warningAvailability && (\n <Text small className={style.availability}>\n {translate(L10N.LABEL_REMAINING_ITEMS, { amount: availability })}\n </Text>\n )}\n </View>\n\n <View row className={(style.gap, style.content)}>\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: price })}\n </Text>\n\n {price !== originalPrice && (\n <Text action lighten className={style.lineThrough}>\n {currencyFormat({ currency, value: originalPrice })}\n </Text>\n )}\n </View>\n\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({ currency, value: dayPrice })} ${translate(\n L10N.LABEL_PER_UNIT_NIGHT,\n )}`}</Text>\n\n <Text lighten small={!isMobile} tiny={isMobile}>\n {translate(taxes ? L10N.LABEL_EXCLUDES_TAXES_FEES : L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n\n {discountPercentage > 0 && <Discount {...selectedBoard} className={style.priceDetails} />}\n </View>\n\n <Button large={!isMobile} secondary={isSelected} onPress={handlePress}>\n {translate(isSelected ? L10N.LABEL_DESELECT : multiRoom ? L10N.LABEL_SELECT : L10N.LABEL_SELECT)}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item.Summary';\n\nSummary.propTypes = {\n availability: PropTypes.number,\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxes: PropTypes.string,\n onChange: PropTypes.func,\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","_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","Summary","_ref","multiRoom","name","roomName","selected","selectedBoard","taxes","onSelect","isMobile","useDevice","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","keys","basePrice","cancellationId","dayPrice","discount","percentage","discountPercentage","breakdown","id","originalPrice","price","rateId","isSelected","handlePress","undefined","hasDiscountClub","find","_ref2","type","DISCOUNT_TYPE","CLUB","createElement","Fragment","View","className","offset","summary","Text","accent","bold","small","concat","L10N","LABEL_CLUB_MEMBERS","LABEL_DISCOUNT","row","gap","content","headline","level","currencyFormat","action","lighten","lineThrough","tiny","LABEL_PER_UNIT_NIGHT","LABEL_EXCLUDES_TAXES_FEES","LABEL_INCLUDES_TAXES_FEES","PriceDetails","priceDetails","Button","large","secondary","onPress","LABEL_DESELECT","LABEL_SELECT","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","bool","string","shape","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, 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 { DISCOUNT_TYPE } from '../../Rates.constants';\n\nconst Summary = ({ multiRoom = false, name: roomName, selected = {}, selectedBoard = {}, taxes, onSelect }) => {\n const { isMobile } = useDevice();\n const { 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 dayPrice,\n discount: { percentage: discountPercentage = 0, breakdown = [] } = {},\n id,\n name,\n originalPrice,\n price,\n rateId,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n if (!multiRoom) setBusy(true);\n onSelect(!isSelected ? { basePrice, cancellationId, id, name, price, rateId, roomName } : undefined);\n };\n\n const hasDiscountClub = discountPercentage > 0 && breakdown.find(({ type }) => type === DISCOUNT_TYPE.CLUB);\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n {discountPercentage > 0 && (\n <Text accent bold small>\n {hasDiscountClub && `${translate(L10N.LABEL_CLUB_MEMBERS)} `}\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n <View row className={[style.gap, style.content]}>\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: price })}\n </Text>\n\n {price !== originalPrice && (\n <Text action lighten className={style.lineThrough}>\n {currencyFormat({ currency, value: originalPrice })}\n </Text>\n )}\n </View>\n\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({ currency, value: dayPrice })} ${translate(\n L10N.LABEL_PER_UNIT_NIGHT,\n )}`}</Text>\n\n <Text lighten small={!isMobile} tiny={isMobile}>\n {translate(taxes ? L10N.LABEL_EXCLUDES_TAXES_FEES : L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n\n {discountPercentage > 0 && <PriceDetails {...{ ...selectedBoard, taxes }} className={style.priceDetails} />}\n </View>\n\n <Button\n //\n busy={busy}\n large={!isMobile}\n secondary={multiRoom && isSelected}\n onPress={handlePress}\n >\n {translate(multiRoom ? (isSelected ? L10N.LABEL_DESELECT : L10N.LABEL_SELECT) : L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item.Summary';\n\nSummary.propTypes = {\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\nexport { Summary };\n"],"mappings":"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"}
@@ -69,6 +69,10 @@
69
69
  color: var(--mirai-ui-base);
70
70
  }
71
71
 
72
+ .availability {
73
+ color: var(--mirai-ui-error);
74
+ }
75
+
72
76
  /* -- <Item.Rates> -------------------------------------------------------------------------------------------------- */
73
77
  .item > .offset:nth-last-child(2) {
74
78
  flex: 1;
@@ -81,32 +85,21 @@
81
85
  padding: var(--mirai-ui-space-XS) var(--mirai-ui-space-S);
82
86
  }
83
87
 
88
+ /* -- <Item.Summary> ------------------------------------------------------------------------------------------------ */
89
+
84
90
  .item .summary {
85
91
  margin-bottom: calc(var(--mirai-ui-space-XS) / 2);
86
92
  }
87
93
 
88
94
  .summary .content {
89
- align-items: flex-end;
90
95
  justify-content: space-between;
91
- }
92
-
93
- .summary .discount {
94
- background-color: var(--mirai-ui-accent);
95
- border-radius: var(--mirai-ui-border-radius);
96
- color: var(--mirai-ui-base);
97
- margin-right: var(--mirai-ui-space-XS);
98
- padding: calc(var(--mirai-ui-space-XS) / 2) var(--mirai-ui-space-XS);
99
- }
100
-
101
- .summary .availability {
102
- color: var(--mirai-ui-error);
96
+ align-items: flex-end;
103
97
  }
104
98
 
105
99
  .summary .price {
106
100
  align-items: flex-end;
107
101
  gap: var(--mirai-ui-space-XS);
108
- margin-bottom: calc(var(--mirai-ui-space-XS) / 2);
109
- margin-top: var(--mirai-ui-space-XS);
102
+ margin: calc(var(--mirai-ui-space-XS) / 2) 0;
110
103
  }
111
104
 
112
105
  .summary .lineThrough {
@@ -114,6 +107,7 @@
114
107
  }
115
108
 
116
109
  .summary .priceDetails {
110
+ align-self: flex-start;
117
111
  margin-top: calc(var(--mirai-ui-space-XS) / 2);
118
112
  }
119
113
 
@@ -14,10 +14,10 @@ var _Item = require("../../Item.l10n");
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  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; }
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
17
18
  const Features = _ref => {
18
19
  let {
19
20
  bedTypes = [],
20
- box = false,
21
21
  maxOccupation = 2,
22
22
  size,
23
23
  ...others
@@ -25,39 +25,36 @@ const Features = _ref => {
25
25
  const {
26
26
  translate
27
27
  } = (0, _locale.useLocale)();
28
+ const iconProps = {
29
+ headline: true,
30
+ level: 3
31
+ };
28
32
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
29
33
  row: true,
30
- className: (0, _ui.styles)(style.features, box && style.box, others.className)
34
+ className: (0, _ui.styles)(style.features, others.className)
31
35
  }, size && /*#__PURE__*/_react.default.createElement(_ui.View, {
32
36
  row: true
33
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
34
- value: _helpers.ICON.SIZE,
35
- headline: true,
36
- level: 2
37
- }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
37
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
38
+ value: _helpers.ICON.SIZE
39
+ })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
38
40
  small: true
39
41
  }, size)), /*#__PURE__*/_react.default.createElement(_ui.View, {
40
42
  row: true
41
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
42
- headline: true,
43
- level: 2,
43
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
44
44
  value: maxOccupation === 1 ? _helpers.ICON.PERSON : maxOccupation === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
45
- }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
45
+ })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
46
46
  small: true
47
- }, maxOccupation)), bedTypes.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
47
+ }, "!Max ", maxOccupation)), bedTypes.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
48
48
  row: true
49
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
50
- value: _helpers.ICON.BED_DOUBLE,
51
- headline: true,
52
- level: 2
53
- }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
49
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
50
+ value: _helpers.ICON.BED_DOUBLE
51
+ })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
54
52
  small: true
55
53
  }, bedTypes.map(type => translate(_Item.L10N.LABEL_BED_TYPE[type])).join(" ".concat(translate(_Item.L10N.LABEL_OR), " ")))));
56
54
  };
57
55
  exports.Features = Features;
58
56
  Features.propTypes = {
59
57
  bedTypes: _propTypes.default.arrayOf(_propTypes.default.number),
60
- box: _propTypes.default.bool,
61
58
  maxOccupation: _propTypes.default.number,
62
59
  size: _propTypes.default.string
63
60
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Features.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_helpers","_Item","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Features","_ref","bedTypes","box","maxOccupation","size","others","translate","useLocale","createElement","View","row","className","styles","features","Icon","value","ICON","SIZE","headline","level","Text","small","PERSON","GROUP","GROUPS","length","BED_DOUBLE","map","type","L10N","LABEL_BED_TYPE","join","concat","LABEL_OR","exports","propTypes","PropTypes","arrayOf","number","bool","string","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Features/Features.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './Features.module.css';\nimport { ICON } from '../../../../../helpers';\nimport { L10N } from '../../Item.l10n';\n\nconst Features = ({ bedTypes = [], box = false, maxOccupation = 2, size, ...others }) => {\n const { translate } = useLocale();\n\n return (\n <View row className={styles(style.features, box && style.box, others.className)}>\n {size && (\n <View row>\n <Icon value={ICON.SIZE} headline level={2} />\n <Text small>{size}</Text>\n </View>\n )}\n\n <View row>\n <Icon\n headline\n level={2}\n value={maxOccupation === 1 ? ICON.PERSON : maxOccupation === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text small>{maxOccupation}</Text>\n </View>\n\n {bedTypes.length > 0 && (\n <View row>\n <Icon value={ICON.BED_DOUBLE} headline level={2} />\n <Text small>\n {bedTypes.map((type) => translate(L10N.LABEL_BED_TYPE[type])).join(` ${translate(L10N.LABEL_OR)} `)}\n </Text>\n </View>\n )}\n </View>\n );\n};\n\nFeatures.propTypes = {\n bedTypes: PropTypes.arrayOf(PropTypes.number),\n box: PropTypes.bool,\n maxOccupation: PropTypes.number,\n size: PropTypes.string,\n};\n\nFeatures.displayName = 'Mirai:Core:Rates:Item.Features';\n\nexport { Features };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Features.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_helpers","_Item","_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","Features","_ref","bedTypes","maxOccupation","size","others","translate","useLocale","iconProps","headline","level","createElement","View","row","className","styles","features","Icon","value","ICON","SIZE","Text","small","PERSON","GROUP","GROUPS","BED_DOUBLE","map","type","L10N","LABEL_BED_TYPE","join","concat","LABEL_OR","exports","propTypes","PropTypes","arrayOf","number","string","displayName"],"sources":["../../../../../../../src/components/Rates/components/Item/components/Features/Features.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './Features.module.css';\nimport { ICON } from '../../../../../helpers';\nimport { L10N } from '../../Item.l10n';\n\nconst Features = ({ bedTypes = [], maxOccupation = 2, size, ...others }) => {\n const { translate } = useLocale();\n\n const iconProps = { headline: true, level: 3 };\n\n return (\n <View row className={styles(style.features, others.className)}>\n {size && (\n <View row>\n <Icon {...iconProps} value={ICON.SIZE} />\n <Text small>{size}</Text>\n </View>\n )}\n\n <View row>\n <Icon\n {...iconProps}\n value={maxOccupation === 1 ? ICON.PERSON : maxOccupation === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text small>!Max {maxOccupation}</Text>\n </View>\n\n {bedTypes.length > 0 && (\n <View row>\n <Icon {...iconProps} value={ICON.BED_DOUBLE} />\n <Text small>\n {bedTypes.map((type) => translate(L10N.LABEL_BED_TYPE[type])).join(` ${translate(L10N.LABEL_OR)} `)}\n </Text>\n </View>\n )}\n </View>\n );\n};\n\nFeatures.propTypes = {\n bedTypes: PropTypes.arrayOf(PropTypes.number),\n maxOccupation: PropTypes.number,\n size: PropTypes.string,\n};\n\nFeatures.displayName = 'Mirai:Core:Rates:Item.Features';\n\nexport { Features };\n"],"mappings":"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"}
@@ -2,12 +2,6 @@
2
2
  gap: var(--mirai-ui-space-M);
3
3
  }
4
4
 
5
- .features.box {
6
- background-color: var(--mirai-ui-content-background);
7
- border-radius: var(--mirai-ui-border-radius);
8
- padding: var(--mirai-ui-space-S) var(--mirai-ui-space-M);
9
- }
10
-
11
5
  .features > * {
12
6
  align-items: center;
13
7
  gap: calc(var(--mirai-ui-space-XS) / 2);
@@ -3,24 +3,24 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Discount = void 0;
6
+ exports.PriceDetails = void 0;
7
7
  var _dataSources = require("@mirai/data-sources");
8
8
  var _locale = require("@mirai/locale");
9
9
  var _ui = require("@mirai/ui");
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var _react = _interopRequireDefault(require("react"));
12
- var style = _interopRequireWildcard(require("./Discount.module.css"));
12
+ var style = _interopRequireWildcard(require("./PriceDetails.module.css"));
13
13
  var _Item = require("../../Item.l10n");
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  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; }
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
18
- const Discount = _ref => {
17
+ const PriceDetails = _ref => {
19
18
  let {
20
19
  discount: {
21
20
  breakdown = []
22
21
  },
23
22
  originalPrice,
23
+ taxes,
24
24
  ...others
25
25
  } = _ref;
26
26
  const {
@@ -35,7 +35,6 @@ const Discount = _ref => {
35
35
  translate
36
36
  } = (0, _locale.useLocale)();
37
37
  return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
38
- bottom: true,
39
38
  pressable: true,
40
39
  Template: () => /*#__PURE__*/_react.default.createElement(_ui.View, {
41
40
  className: style.breakdown
@@ -43,8 +42,7 @@ const Discount = _ref => {
43
42
  row: true,
44
43
  className: style.item
45
44
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
46
- action: true,
47
- className: style.type
45
+ action: true
48
46
  }, translate(_Item.L10N.LABEL_ORIGINAL_PRICE)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
49
47
  action: true,
50
48
  bold: true
@@ -63,8 +61,7 @@ const Discount = _ref => {
63
61
  key: type,
64
62
  className: style.item
65
63
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
66
- action: true,
67
- className: style.type
64
+ action: true
68
65
  }, translate(_Item.L10N.LABEL_DISCOUNT_TYPE[type])), /*#__PURE__*/_react.default.createElement(_ui.Text, {
69
66
  action: true,
70
67
  bold: true
@@ -72,16 +69,23 @@ const Discount = _ref => {
72
69
  currency,
73
70
  value: -value
74
71
  })));
75
- }))
76
- }, /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({
72
+ }), taxes && /*#__PURE__*/_react.default.createElement(_ui.Text, {
73
+ lighten: true,
74
+ small: !isMobile,
75
+ tiny: isMobile,
76
+ className: style.item
77
+ }, taxes)),
78
+ className: style.tooltip
79
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
77
80
  accent: true,
78
81
  action: !isMobile,
79
- small: isMobile
80
- }, others), "".concat(translate(_Item.L10N.LABEL_PRICE_DETAILS), " >")));
82
+ small: isMobile,
83
+ className: others.className
84
+ }, "".concat(translate(_Item.L10N.LABEL_PRICE_DETAILS), " >")));
81
85
  };
82
- exports.Discount = Discount;
83
- Discount.displayName = 'Mirai:Core:Rates:Item.Discount';
84
- Discount.propTypes = {
86
+ exports.PriceDetails = PriceDetails;
87
+ PriceDetails.displayName = 'Mirai:Core:Rates:Item.PriceDetails';
88
+ PriceDetails.propTypes = {
85
89
  discount: _propTypes.default.shape({
86
90
  breakdown: _propTypes.default.arrayOf(_propTypes.default.shape({
87
91
  type: _propTypes.default.number,
@@ -89,6 +93,7 @@ Discount.propTypes = {
89
93
  })),
90
94
  percentage: _propTypes.default.number
91
95
  }),
92
- originalPrice: _propTypes.default.number
96
+ originalPrice: _propTypes.default.number,
97
+ taxes: _propTypes.default.string
93
98
  };
94
- //# sourceMappingURL=Discount.js.map
99
+ //# sourceMappingURL=PriceDetails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriceDetails.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","style","_interopRequireWildcard","_Item","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","PriceDetails","_ref","discount","breakdown","originalPrice","taxes","others","isMobile","useDevice","value","currency","useStore","translate","useLocale","createElement","Tooltip","pressable","Template","View","className","row","item","Text","action","L10N","LABEL_ORIGINAL_PRICE","bold","currencyFormat","anchor","map","_ref2","type","key","LABEL_DISCOUNT_TYPE","lighten","small","tiny","tooltip","accent","concat","LABEL_PRICE_DETAILS","exports","displayName","propTypes","PropTypes","shape","arrayOf","number","percentage","string"],"sources":["../../../../../../../src/components/Rates/components/Item/components/PriceDetails/PriceDetails.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport * as style from './PriceDetails.module.css';\nimport { L10N } from '../../Item.l10n';\n\nconst PriceDetails = ({ discount: { breakdown = [] }, originalPrice, taxes, ...others }) => {\n const { isMobile } = useDevice();\n const { value: { currency } = {} } = useStore();\n const { translate } = useLocale();\n\n return (\n <Tooltip\n pressable\n Template={() => (\n <View className={style.breakdown}>\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_ORIGINAL_PRICE)}</Text>\n <Text action bold>\n {currencyFormat({ currency, value: originalPrice })}\n </Text>\n </View>\n <View className={style.anchor} />\n {breakdown?.map(({ type, value }) => (\n <View row key={type} className={style.item}>\n <Text action>{translate(L10N.LABEL_DISCOUNT_TYPE[type])}</Text>\n <Text action bold>\n {currencyFormat({ currency, value: -value })}\n </Text>\n </View>\n ))}\n {taxes && (\n <Text lighten small={!isMobile} tiny={isMobile} className={style.item}>\n {taxes}\n </Text>\n )}\n </View>\n )}\n className={style.tooltip}\n >\n <Text accent action={!isMobile} small={isMobile} className={others.className}>\n {`${translate(L10N.LABEL_PRICE_DETAILS)} >`}\n </Text>\n </Tooltip>\n );\n};\n\nPriceDetails.displayName = 'Mirai:Core:Rates:Item.PriceDetails';\n\nPriceDetails.propTypes = {\n discount: PropTypes.shape({\n breakdown: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.number,\n value: PropTypes.number,\n }),\n ),\n percentage: PropTypes.number,\n }),\n originalPrice: PropTypes.number,\n taxes: PropTypes.string,\n};\n\nexport { PriceDetails };\n"],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ .tooltip {
2
+ max-width: calc(var(--mirai-ui-breakpoint-S) * 0.8);
3
+ }
4
+
1
5
  .breakdown {
2
6
  gap: var(--mirai-ui-space-XS);
3
7
  padding: calc(var(--mirai-ui-space-XS) / 2) 0;
@@ -9,7 +13,7 @@
9
13
  padding: calc(var(--mirai-ui-space-XS) / 2) var(--mirai-ui-space-XS);
10
14
  }
11
15
 
12
- .breakdown .item [data-role='text'] {
16
+ .breakdown [data-role='text'] {
13
17
  color: var(--mirai-ui-base);
14
18
  }
15
19
 
@@ -17,8 +21,3 @@
17
21
  border-bottom: solid 1px var(--mirai-ui-base);
18
22
  opacity: 0.33;
19
23
  }
20
-
21
- .breakdown .type {
22
- flex: 1;
23
- width: max-content;
24
- }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _PriceDetails = require("./PriceDetails");
7
+ Object.keys(_PriceDetails).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _PriceDetails[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _PriceDetails[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_PriceDetails","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../../../../src/components/Rates/components/Item/components/PriceDetails/index.js"],"sourcesContent":["export * from './PriceDetails';\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -14,17 +14,6 @@ Object.keys(_Amenities).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
- var _Discount = require("./Discount");
18
- Object.keys(_Discount).forEach(function (key) {
19
- if (key === "default" || key === "__esModule") return;
20
- if (key in exports && exports[key] === _Discount[key]) return;
21
- Object.defineProperty(exports, key, {
22
- enumerable: true,
23
- get: function () {
24
- return _Discount[key];
25
- }
26
- });
27
- });
28
17
  var _Features = require("./Features");
29
18
  Object.keys(_Features).forEach(function (key) {
30
19
  if (key === "default" || key === "__esModule") return;
@@ -80,4 +69,15 @@ Object.keys(_Option).forEach(function (key) {
80
69
  }
81
70
  });
82
71
  });
72
+ var _PriceDetails = require("./PriceDetails");
73
+ Object.keys(_PriceDetails).forEach(function (key) {
74
+ if (key === "default" || key === "__esModule") return;
75
+ if (key in exports && exports[key] === _PriceDetails[key]) return;
76
+ Object.defineProperty(exports, key, {
77
+ enumerable: true,
78
+ get: function () {
79
+ return _PriceDetails[key];
80
+ }
81
+ });
82
+ });
83
83
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_Amenities","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Discount","_Features","_ModalInfo","_ModalRateInfo","_ModalUrl","_Option"],"sources":["../../../../../../src/components/Rates/components/Item/components/index.js"],"sourcesContent":["export * from './Amenities';\nexport * from './Discount';\nexport * from './Features';\nexport * from './ModalInfo';\nexport * from './ModalRateInfo';\nexport * from './ModalUrl';\nexport * from './Option';\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_Amenities","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Features","_ModalInfo","_ModalRateInfo","_ModalUrl","_Option","_PriceDetails"],"sources":["../../../../../../src/components/Rates/components/Item/components/index.js"],"sourcesContent":["export * from './Amenities';\nexport * from './Features';\nexport * from './ModalInfo';\nexport * from './ModalRateInfo';\nexport * from './ModalUrl';\nexport * from './Option';\nexport * from './PriceDetails';\n"],"mappings":"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"}
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ModalExtras = void 0;
7
+ var _dataSources = require("@mirai/data-sources");
8
+ var _locale = require("@mirai/locale");
9
+ var _ui = require("@mirai/ui");
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _ModalExtras = require("./ModalExtras.l10n");
13
+ var style = _interopRequireWildcard(require("./ModalExtras.module.css"));
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ 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; }
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
18
+ const EXTRAS = [{
19
+ id: 1,
20
+ title: 'Free safe',
21
+ text: 'With your booking you have included the free safe, only if you book on this website. '
22
+ }, {
23
+ id: 2,
24
+ title: '50€ Voucher',
25
+ text: 'Get a 50€ voucher for every 40€. To be used with the hotel services. Valid for food and drink services (except themed restaurants and pizzerias), safe, and other services included in each hotel.',
26
+ conditions: 'Voucher non-refundable, not accumulative with other stays, non-transferable and cannot be exchanged for money. Services inside the hotel provided by outside companies are excluded.',
27
+ value: 40
28
+ }, {
29
+ id: 3,
30
+ title: 'Romantic Package',
31
+ text: 'Find a romantic package with cava and petals at your arrival at the hotel.',
32
+ value: 25
33
+ }, {
34
+ id: 4,
35
+ title: 'Stay safe with this travel insurance',
36
+ text: 'Enjoy peace of mind during your stay. Traveling can be full of surprises, but with this insurance, you can relax knowing that you are covered in case of unexpected events. 24-hr medical assistance Compensation for delay of the means of transportation Luggage protection And more! Choose this insurance and enjoy peace of mind.',
37
+ conditions: 'By choosing this insurance, you confirm that you have read and accept its coverages and exclusions, and our terms and conditions at https://app.flexmyroom.com/info/en/011',
38
+ value: 22
39
+ }];
40
+ const ModalExtras = _ref => {
41
+ let {
42
+ cart = [],
43
+ extras = EXTRAS,
44
+ taxes,
45
+ onCancel = () => {},
46
+ onSubmit = () => {},
47
+ ...others
48
+ } = _ref;
49
+ const {
50
+ isMobile
51
+ } = (0, _ui.useDevice)();
52
+ const {
53
+ translate
54
+ } = (0, _locale.useLocale)();
55
+ const {
56
+ value: {
57
+ currency
58
+ } = {}
59
+ } = (0, _dataSources.useStore)();
60
+ const [selected, setSelected] = (0, _react.useState)([]);
61
+ (0, _react.useEffect)(() => setSelected([]), [extras]);
62
+ const handleSelect = function () {
63
+ let nextExtra = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
64
+ setSelected(selected.find(extra => extra.id === nextExtra.id) ? selected.filter(extra => extra.id !== nextExtra.id) : [...selected, nextExtra]);
65
+ };
66
+ const handleSubmit = () => {
67
+ onSubmit(selected);
68
+ };
69
+ const total = cart.reduce(function (value) {
70
+ let {
71
+ price
72
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
73
+ return value + price;
74
+ }, 0);
75
+ const totalExtras = selected.reduce(function (total) {
76
+ let {
77
+ value = 0
78
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
79
+ return total + value;
80
+ }, 0);
81
+ return /*#__PURE__*/_react.default.createElement(_ui.Modal, _extends({}, others, {
82
+ fit: true,
83
+ title: "!Add Extras",
84
+ onClose: onCancel,
85
+ className: style.modal
86
+ }), /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
87
+ snap: true,
88
+ className: style.scrollView
89
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
90
+ action: isMobile
91
+ }, "!Enhance your stay by adding personalized extras to your selected room(s). Elevate your experience with exclusive amenities tailored to your preferences."), extras.map(function () {
92
+ let {
93
+ id,
94
+ title,
95
+ text,
96
+ conditions,
97
+ value
98
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
99
+ return /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
100
+ key: id,
101
+ onPress: () => handleSelect({
102
+ id,
103
+ value
104
+ }),
105
+ className: style.pressable
106
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
107
+ row: true,
108
+ wide: true,
109
+ className: (0, _ui.styles)(style.extra, selected.find(extra => extra.id === id) && style.selected)
110
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
111
+ className: style.image
112
+ }), /*#__PURE__*/_react.default.createElement(_ui.View, {
113
+ wide: true,
114
+ className: style.texts
115
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
116
+ row: true
117
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
118
+ bold: true,
119
+ headline: !isMobile,
120
+ className: style.title
121
+ }, title), /*#__PURE__*/_react.default.createElement(_ui.Text, {
122
+ bold: true,
123
+ headline: !isMobile,
124
+ className: style.price
125
+ }, value ? (0, _locale.currencyFormat)({
126
+ currency,
127
+ value
128
+ }) : 'Free')), /*#__PURE__*/_react.default.createElement(_ui.Text, {
129
+ small: true
130
+ }, text), /*#__PURE__*/_react.default.createElement(_ui.Text, {
131
+ lighten: true,
132
+ small: !isMobile,
133
+ tiny: isMobile
134
+ }, conditions))));
135
+ })), /*#__PURE__*/_react.default.createElement(_ui.View, {
136
+ row: true,
137
+ className: style.footer
138
+ }, total > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
139
+ className: style.total
140
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
141
+ bold: true,
142
+ headline: true,
143
+ level: isMobile ? 3 : 2
144
+ }, (0, _locale.currencyFormat)({
145
+ currency,
146
+ value: total + totalExtras
147
+ })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
148
+ lighten: true,
149
+ small: !isMobile,
150
+ tiny: isMobile
151
+ }, totalExtras > 0 && "!Includes ".concat((0, _locale.currencyFormat)({
152
+ currency,
153
+ value: totalExtras
154
+ }), " in extras. "), translate(taxes ? _ModalExtras.L10N.LABEL_EXCLUDES_TAXES_FEES : _ModalExtras.L10N.LABEL_INCLUDES_TAXES_FEES))), /*#__PURE__*/_react.default.createElement(_ui.Button, {
155
+ large: !isMobile,
156
+ _wide: isMobile,
157
+ onPress: handleSubmit
158
+ }, translate(_ModalExtras.L10N.ACTION_RESERVE))));
159
+ };
160
+ exports.ModalExtras = ModalExtras;
161
+ ModalExtras.propTypes = {
162
+ cart: _propTypes.default.arrayOf(_propTypes.default.shape({})),
163
+ extras: _propTypes.default.arrayOf(_propTypes.default.shape({
164
+ id: _propTypes.default.string,
165
+ title: _propTypes.default.string,
166
+ text: _propTypes.default.string,
167
+ conditions: _propTypes.default.string,
168
+ value: _propTypes.default.number
169
+ })),
170
+ taxes: _propTypes.default.string,
171
+ visible: _propTypes.default.bool,
172
+ onCancel: _propTypes.default.func,
173
+ onSubmit: _propTypes.default.func
174
+ };
175
+ ModalExtras.displayName = 'Mirai:Core:Rates:Item.ModalExtras';
176
+ //# sourceMappingURL=ModalExtras.js.map