@mirai/core 0.3.65 → 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 (38) hide show
  1. package/build/components/Rates/Rates.Footer.js +32 -48
  2. package/build/components/Rates/Rates.Footer.js.map +1 -1
  3. package/build/components/Rates/Rates.Header.js +8 -4
  4. package/build/components/Rates/Rates.Header.js.map +1 -1
  5. package/build/components/Rates/Rates.RoomSelector.js +0 -3
  6. package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
  7. package/build/components/Rates/Rates.Skeleton.js +6 -3
  8. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  9. package/build/components/Rates/Rates.js +53 -25
  10. package/build/components/Rates/Rates.js.map +1 -1
  11. package/build/components/Rates/Rates.module.css +33 -13
  12. package/build/components/Rates/components/Item/Item.Preview.js +21 -6
  13. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  14. package/build/components/Rates/components/Item/Item.Summary.js +20 -26
  15. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
  16. package/build/components/Rates/components/Item/Item.module.css +9 -15
  17. package/build/components/Rates/components/Item/components/Features/Features.js +15 -18
  18. package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
  19. package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -6
  20. package/build/components/Rates/components/Item/components/{Discount/Discount.js → PriceDetails/PriceDetails.js} +23 -18
  21. package/build/components/Rates/components/Item/components/PriceDetails/PriceDetails.js.map +1 -0
  22. package/build/components/Rates/components/Item/components/{Discount/Discount.module.css → PriceDetails/PriceDetails.module.css} +5 -6
  23. package/build/components/Rates/components/Item/components/PriceDetails/index.js +17 -0
  24. package/build/components/Rates/components/Item/components/PriceDetails/index.js.map +1 -0
  25. package/build/components/Rates/components/Item/components/index.js +11 -11
  26. package/build/components/Rates/components/Item/components/index.js.map +1 -1
  27. package/build/components/Rates/components/ModalExtras/ModalExtras.js +176 -0
  28. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -0
  29. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js +18 -0
  30. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js.map +1 -0
  31. package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +74 -0
  32. package/build/components/Rates/components/{Item/components/Discount → ModalExtras}/index.js +4 -4
  33. package/build/components/Rates/components/ModalExtras/index.js.map +1 -0
  34. package/build/components/Rates/components/index.js +11 -0
  35. package/build/components/Rates/components/index.js.map +1 -1
  36. package/package.json +1 -1
  37. package/build/components/Rates/components/Item/components/Discount/Discount.js.map +0 -1
  38. package/build/components/Rates/components/Item/components/Discount/index.js.map +0 -1
@@ -8,11 +8,10 @@ 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
- var _react = _interopRequireDefault(require("react"));
12
- var _helpers = require("./helpers");
11
+ var _react = _interopRequireWildcard(require("react"));
13
12
  var _Rates = require("./Rates.l10n");
14
13
  var style = _interopRequireWildcard(require("./Rates.module.css"));
15
- var _helpers2 = require("../helpers");
14
+ var _helpers = require("../helpers");
16
15
  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); }
17
16
  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; }
18
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -22,12 +21,9 @@ const Footer = _ref => {
22
21
  dataSource: {
23
22
  taxes
24
23
  } = {},
25
- filter: {
26
- clubDiscount = false
27
- } = {},
28
- multiRoom = false,
24
+ extras,
29
25
  occupation = [],
30
- onChange = () => {}
26
+ onSubmit = () => {}
31
27
  } = _ref;
32
28
  const {
33
29
  isMobile
@@ -37,20 +33,11 @@ const Footer = _ref => {
37
33
  } = (0, _locale.useLocale)();
38
34
  const {
39
35
  value: {
40
- currency,
41
- forwarder,
42
- urlParams
36
+ currency
43
37
  } = {}
44
38
  } = (0, _dataSources.useStore)();
45
- const handlePress = () => {
46
- document.location.href = (0, _helpers.getForwarderUrl)({
47
- cart,
48
- clubDiscount,
49
- currency,
50
- forwarder,
51
- urlParams
52
- });
53
- };
39
+ const [busy, setBusy] = (0, _react.useState)(false);
40
+ (0, _react.useEffect)(() => !extras && setBusy(false), [extras]);
54
41
  const items = cart.filter(item => item !== undefined);
55
42
  const totalPrice = cart.reduce(function (value) {
56
43
  let {
@@ -58,11 +45,13 @@ const Footer = _ref => {
58
45
  } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
59
46
  return value + price;
60
47
  }, 0);
61
- const valid = !multiRoom || items.length === occupation.length;
48
+ const valid = items.length === occupation.length;
49
+ const handleSubmit = () => {
50
+ setBusy(true);
51
+ onSubmit();
52
+ };
62
53
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
63
- className: (0, _ui.styles)(style.footer,
64
- // ((!multiRoom && items.length) || (multiRoom && items.length === occupation.length)) && style.visible,
65
- items.length && style.visible)
54
+ className: (0, _ui.styles)(style.footer, items.length && style.visible)
66
55
  }, /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
67
56
  className: style.wrapper,
68
57
  wide: true
@@ -75,17 +64,24 @@ const Footer = _ref => {
75
64
  roomName
76
65
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
77
66
  let index = arguments.length > 1 ? arguments[1] : undefined;
67
+ const guests = occupation[index].reduce(function (total) {
68
+ let {
69
+ amount
70
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
71
+ return total + amount;
72
+ }, 0);
78
73
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
79
74
  row: true,
80
75
  key: id,
81
76
  className: style.cartItem
82
- }, multiRoom && /*#__PURE__*/_react.default.createElement(_ui.Text, {
83
- bold: true,
84
- small: !isMobile,
85
- tiny: isMobile,
86
- upperCase: true,
77
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
78
+ row: true,
87
79
  className: style.room
88
- }, "Room ".concat(index + 1)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
80
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
81
+ value: guests === 1 ? _helpers.ICON.PERSON : guests === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
82
+ }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
83
+ small: true
84
+ }, guests)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
89
85
  bold: true,
90
86
  action: !isMobile,
91
87
  small: isMobile,
@@ -100,14 +96,6 @@ const Footer = _ref => {
100
96
  }, (0, _locale.currencyFormat)({
101
97
  currency,
102
98
  value: amount * price
103
- })), !multiRoom && /*#__PURE__*/_react.default.createElement(_ui.Button, {
104
- small: true,
105
- squared: true,
106
- transparent: true,
107
- onPress: () => onChange(undefined, index),
108
- className: style.buttonClose
109
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
110
- value: _helpers2.ICON.CLOSE
111
99
  })));
112
100
  }))), /*#__PURE__*/_react.default.createElement(_ui.View, {
113
101
  row: true,
@@ -125,29 +113,25 @@ const Footer = _ref => {
125
113
  lighten: true,
126
114
  small: !isMobile || !taxes,
127
115
  tiny: isMobile
128
- }, taxes || translate(_Rates.L10N.LABEL_INCLUDES_TAXES_FEES))), /*#__PURE__*/_react.default.createElement(_ui.View, {
129
- row: !isMobile,
130
- className: style.buttons
131
- }, !isMobile && valid && /*#__PURE__*/_react.default.createElement(_ui.Action, null, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
132
- value: _helpers2.ICON.ADD_EXTRAS
133
- }), "!Add Extras"), /*#__PURE__*/_react.default.createElement(_ui.Button, {
116
+ }, taxes || translate(_Rates.L10N.LABEL_INCLUDES_TAXES_FEES))), /*#__PURE__*/_react.default.createElement(_ui.Button, {
117
+ busy: busy,
134
118
  disabled: !valid,
135
119
  large: !isMobile,
136
120
  wide: isMobile,
137
- onPress: handlePress
138
- }, translate(_Rates.L10N.ACTION_RESERVE)))));
121
+ onPress: handleSubmit
122
+ }, translate(_Rates.L10N.ACTION_RESERVE))));
139
123
  };
140
124
  exports.Footer = Footer;
141
125
  Footer.propTypes = {
142
126
  cart: _propTypes.default.arrayOf(_propTypes.default.shape({})),
143
127
  dataSource: _propTypes.default.shape({}),
128
+ extras: _propTypes.default.arrayOf(_propTypes.default.shape({})),
144
129
  filter: _propTypes.default.shape({}),
145
- multiRoom: _propTypes.default.bool,
146
130
  occupation: _propTypes.default.arrayOf(_propTypes.default.arrayOf(_propTypes.default.shape({
147
131
  ages: _propTypes.default.arrayOf(_propTypes.default.number),
148
132
  amount: _propTypes.default.number,
149
133
  type: _propTypes.default.number
150
134
  }))),
151
- onChange: _propTypes.default.func
135
+ onSubmit: _propTypes.default.func
152
136
  };
153
137
  //# sourceMappingURL=Rates.Footer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_helpers","_Rates","style","_interopRequireWildcard","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxes","filter","clubDiscount","multiRoom","occupation","onChange","isMobile","useDevice","translate","useLocale","value","currency","forwarder","urlParams","useStore","handlePress","document","location","href","getForwarderUrl","items","item","undefined","totalPrice","reduce","price","arguments","length","valid","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","roomName","index","row","key","cartItem","Text","bold","small","tiny","upperCase","room","concat","action","description","lighten","currencyFormat","Button","squared","transparent","onPress","buttonClose","Icon","ICON","CLOSE","summary","headline","level","L10N","LABEL_INCLUDES_TAXES_FEES","buttons","Action","ADD_EXTRAS","disabled","large","ACTION_RESERVE","exports","propTypes","PropTypes","arrayOf","shape","bool","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { getForwarderUrl } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({\n cart = [],\n dataSource: { taxes } = {},\n filter: { clubDiscount = false } = {},\n multiRoom = false,\n occupation = [],\n onChange = () => {},\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency, forwarder, urlParams } = {} } = useStore();\n\n const handlePress = () => {\n document.location.href = getForwarderUrl({ cart, clubDiscount, currency, forwarder, urlParams });\n };\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price } = {}) => value + price, 0);\n const valid = !multiRoom || items.length === occupation.length;\n\n return (\n <View\n className={styles(\n style.footer,\n // ((!multiRoom && items.length) || (multiRoom && items.length === occupation.length)) && style.visible,\n items.length && style.visible,\n )}\n >\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name, price, roomName } = {}, index) => {\n return (\n <View row key={id} className={style.cartItem}>\n {multiRoom && (\n <Text bold small={!isMobile} tiny={isMobile} upperCase className={style.room}>\n {`Room ${index + 1}`}\n </Text>\n )}\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${name}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n\n {!multiRoom && (\n <Button\n small\n squared\n transparent\n onPress={() => onChange(undefined, index)}\n className={style.buttonClose}\n >\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n <View row={!isMobile} className={style.buttons}>\n {!isMobile && valid && (\n <Action>\n <Icon value={ICON.ADD_EXTRAS} />\n !Add Extras\n </Action>\n )}\n\n <Button disabled={!valid} large={!isMobile} wide={isMobile} onPress={handlePress}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n </View>\n );\n};\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n filter: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n onChange: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Rates","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxes","extras","occupation","onSubmit","isMobile","useDevice","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","items","filter","item","undefined","totalPrice","reduce","price","arguments","length","valid","handleSubmit","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","roomName","index","guests","total","row","key","cartItem","room","Icon","ICON","PERSON","GROUP","GROUPS","Text","small","bold","action","description","concat","lighten","currencyFormat","summary","headline","level","tiny","L10N","LABEL_INCLUDES_TAXES_FEES","Button","disabled","large","onPress","ACTION_RESERVE","exports","propTypes","PropTypes","arrayOf","shape","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({ cart = [], dataSource: { taxes } = {}, extras, occupation = [], onSubmit = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n return (\n <View className={styles(style.footer, items.length && style.visible)}>\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={id} className={style.cartItem}>\n <View row className={style.room}>\n <Icon value={guests === 1 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS} />\n <Text small>{guests}</Text>\n </View>\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${name}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n <Button busy={busy} disabled={!valid} large={!isMobile} wide={isMobile} onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n );\n};\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n filter: PropTypes.shape({}),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n onSubmit: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
@@ -67,7 +67,9 @@ const Header = _ref => {
67
67
  }, children, discount !== undefined && /*#__PURE__*/_react.default.createElement(_ui.View, {
68
68
  row: true,
69
69
  wide: isMobile,
70
- className: [style.tag, clubDiscount && style.highlight]
70
+ className: [style.tag, style.clubDiscount, clubDiscount && style.highlight]
71
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
72
+ row: true
71
73
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
72
74
  action: true,
73
75
  bold: true
@@ -75,11 +77,13 @@ const Header = _ref => {
75
77
  pressable: true,
76
78
  Template: () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
77
79
  bold: true,
78
- small: true
80
+ action: !isMobile,
81
+ small: isMobile
79
82
  }, translate(_Rates.L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, {
80
83
  club: name
81
84
  })), clubConditions ? /*#__PURE__*/_react.default.createElement(_ui.Text, {
82
- small: true
85
+ small: !isMobile,
86
+ tiny: isMobile
83
87
  }, translate(_Rates.L10N.LABEL_CLUB_CONDITIONS, {
84
88
  conditions: /*#__PURE__*/_react.default.createElement(_ui.Action, {
85
89
  href: clubConditions,
@@ -93,7 +97,7 @@ const Header = _ref => {
93
97
  className: style.tooltip
94
98
  }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
95
99
  value: _helpers.ICON.INFO
96
- })), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
100
+ }))), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
97
101
  checked: clubDiscount,
98
102
  name: "clubDiscount",
99
103
  onChange: nextValue => handleChange({
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","dataSource","clubConditions","children","value","onChange","onCurrency","others","isMobile","useDevice","translate","useLocale","club","discount","name","currency","locale","useStore","handleChange","clubDiscount","arguments","length","undefined","next","contentBackground","Theme","createElement","View","row","className","styles","header","backgroundColor","opacity","wide","tag","highlight","Text","action","bold","L10N","LABEL_CLUB_DISCOUNT","Tooltip","pressable","Template","Fragment","small","LABEL_CLUB_MEMBERS_EXCLUSIVE","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","target","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","tooltip","Icon","ICON","INFO","Switch","checked","nextValue","input","position","currencyValue","InputSelect","options","CURRENCIES","map","concat","Intl","DisplayNames","type","of","values","selectCurrencies","exports","displayName","propTypes","PropTypes","node","shape","board","string","bool","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Icon, InputSelect, styles, Switch, Text, Theme, Tooltip, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n dataSource: { clubConditions } = {},\n children,\n value = {},\n onChange = () => {},\n onCurrency = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, currency, locale } = {} } = useStore();\n\n const handleChange = ({ clubDiscount } = {}) => {\n const next = { ...value };\n\n if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;\n\n onChange(next);\n };\n\n const { clubDiscount = false } = value;\n\n const { contentBackground } = Theme.get();\n\n return (\n <View\n row\n className={styles(style.header, !isMobile && others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {discount !== undefined && (\n <View row wide={isMobile} className={[style.tag, clubDiscount && style.highlight]}>\n <Text action bold>\n {translate(L10N.LABEL_CLUB_DISCOUNT)}\n </Text>\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold small>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n {clubConditions ? (\n <Text small>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n\n <Switch\n checked={clubDiscount}\n name=\"clubDiscount\"\n onChange={(nextValue) => handleChange({ clubDiscount: nextValue })}\n className={style.input}\n />\n </View>\n )}\n\n <View style={{ position: 'relative' }}>\n <Text className={style.currencyValue}>{currency}</Text>\n <InputSelect\n name=\"currency\"\n options={CURRENCIES.map(\n (currency) => `${currency} - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(currency)}`,\n )}\n values={CURRENCIES}\n value={currency}\n onChange={onCurrency}\n className={[style.input, style.selectCurrencies]}\n />\n </View>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates.Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n value: PropTypes.shape({\n board: PropTypes.string,\n clubDiscount: PropTypes.bool,\n }),\n onChange: PropTypes.func,\n onCurrency: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","dataSource","clubConditions","children","value","onChange","onCurrency","others","isMobile","useDevice","translate","useLocale","club","discount","name","currency","locale","useStore","handleChange","clubDiscount","arguments","length","undefined","next","contentBackground","Theme","createElement","View","row","className","styles","header","backgroundColor","opacity","wide","tag","highlight","Text","action","bold","L10N","LABEL_CLUB_DISCOUNT","Tooltip","pressable","Template","Fragment","small","LABEL_CLUB_MEMBERS_EXCLUSIVE","tiny","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","target","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","tooltip","Icon","ICON","INFO","Switch","checked","nextValue","input","position","currencyValue","InputSelect","options","CURRENCIES","map","concat","Intl","DisplayNames","type","of","values","selectCurrencies","exports","displayName","propTypes","PropTypes","node","shape","board","string","bool","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Icon, InputSelect, styles, Switch, Text, Theme, Tooltip, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n dataSource: { clubConditions } = {},\n children,\n value = {},\n onChange = () => {},\n onCurrency = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, currency, locale } = {} } = useStore();\n\n const handleChange = ({ clubDiscount } = {}) => {\n const next = { ...value };\n\n if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;\n\n onChange(next);\n };\n\n const { clubDiscount = false } = value;\n\n const { contentBackground } = Theme.get();\n\n return (\n <View\n row\n className={styles(style.header, !isMobile && others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {discount !== undefined && (\n <View row wide={isMobile} className={[style.tag, style.clubDiscount, clubDiscount && style.highlight]}>\n <View row>\n <Text action bold>\n {translate(L10N.LABEL_CLUB_DISCOUNT)}\n </Text>\n\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold action={!isMobile} small={isMobile}>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n\n {clubConditions ? (\n <Text small={!isMobile} tiny={isMobile}>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n </View>\n\n <Switch\n checked={clubDiscount}\n name=\"clubDiscount\"\n onChange={(nextValue) => handleChange({ clubDiscount: nextValue })}\n className={style.input}\n />\n </View>\n )}\n\n <View style={{ position: 'relative' }}>\n <Text className={style.currencyValue}>{currency}</Text>\n <InputSelect\n name=\"currency\"\n options={CURRENCIES.map(\n (currency) => `${currency} - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(currency)}`,\n )}\n values={CURRENCIES}\n value={currency}\n onChange={onCurrency}\n className={[style.input, style.selectCurrencies]}\n />\n </View>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates.Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n value: PropTypes.shape({\n board: PropTypes.string,\n clubDiscount: PropTypes.bool,\n }),\n onChange: PropTypes.func,\n onCurrency: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
@@ -36,9 +36,6 @@ const RoomSelector = _ref => {
36
36
  } = {}
37
37
  }
38
38
  } = (0, _dataSources.useStore)();
39
-
40
- // const lastRoomIndex = cart.findIndex((item) => )
41
-
42
39
  return occupation.length >= 2 ? /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
43
40
  horizontal: true,
44
41
  snap: false,
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","value","hotel","accommodationType","useStore","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","bold","action","small","hasCart","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { hotel: { accommodationType } = {} },\n } = useStore();\n\n // const lastRoomIndex = cart.findIndex((item) => )\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { bold: index <= roomIndex, action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined;\n\n return (\n <Pressable\n disabled={!hasCart}\n key={index}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : undefined,\n ]}\n >\n {index === roomIndex && !cart[index] && (\n <Text {...textProps} bold={false}>\n {translate(L10N.LABEL_SELECT)}\n </Text>\n )}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps} bold>\n {guests}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates.RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","value","hotel","accommodationType","useStore","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","bold","action","small","hasCart","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { hotel: { accommodationType } = {} },\n } = useStore();\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { bold: index <= roomIndex, action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined;\n\n return (\n <Pressable\n disabled={!hasCart}\n key={index}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : undefined,\n ]}\n >\n {index === roomIndex && !cart[index] && (\n <Text {...textProps} bold={false}>\n {translate(L10N.LABEL_SELECT)}\n </Text>\n )}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps} bold>\n {guests}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates.RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
@@ -11,8 +11,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var _default = () => {
13
13
  const {
14
- isMobile
14
+ isMobile,
15
+ isDesktop,
16
+ width
15
17
  } = (0, _ui.useDevice)();
18
+ const isTablet = !isMobile && width <= 1179;
16
19
  const props = {
17
20
  color: 'base'
18
21
  };
@@ -50,14 +53,14 @@ var _default = () => {
50
53
  justifyContent: 'space-between'
51
54
  }
52
55
  }, Array.from({
53
- length: isMobile ? 1 : 3
56
+ length: isMobile ? 1 : isTablet ? 2 : 3
54
57
  }).map((_, index) => /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({
55
58
  key: index
56
59
  }, props, {
57
60
  style: {
58
61
  boxSizing: 'border-box',
59
62
  flex: 1,
60
- flexBasis: "calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))",
63
+ flexBasis: isTablet ? 'calc(50% - calc(var(--mirai-ui-space-M) / 2))' : isDesktop ? "calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))" : undefined,
61
64
  overflow: 'hidden'
62
65
  }
63
66
  }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Skeleton.js","names":["_ui","require","_react","_interopRequireDefault","_shared__","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_default","isMobile","useDevice","props","color","section","borderBottom","gap","padding","field","wide","style","action","height","createElement","Fragment","View","row","justifyContent","Skeleton","alignItems","flexWrap","Array","from","map","_","index","boxSizing","flex","flexBasis","overflow","borderRadius","headline","level","small","width","exports"],"sources":["../../../src/components/Rates/Rates.Skeleton.jsx"],"sourcesContent":["import { useDevice, View } from '@mirai/ui';\nimport React from 'react';\n\nimport { Skeleton } from '../__shared__';\n\nexport default () => {\n const { isMobile } = useDevice();\n\n const props = { color: 'base' };\n const section = { borderBottom: 'solid 1px var(--mirai-ui-content-background)', gap: '0.5rem', padding: '1rem' };\n const field = { wide: true, style: { action: true, height: '3.5rem', padding: '0 0.5rem' } };\n\n return (\n <>\n <View row={!isMobile} style={{ gap: '1rem', justifyContent: 'space-between', padding: '1rem 0' }}>\n <View />\n\n <View row style={{ gap: '1rem' }}>\n <Skeleton {...props} {...field}>\n {!isMobile ? 'Club discount (info)' : null}\n </Skeleton>\n {!isMobile && (\n <Skeleton {...props} {...field}>\n Euro\n </Skeleton>\n )}\n </View>\n </View>\n\n <View row style={{ alignItems: 'stretch', flexWrap: 'wrap', gap: '1rem', justifyContent: 'space-between' }}>\n {Array.from({ length: isMobile ? 1 : 3 }).map((_, index) => (\n <Skeleton\n key={index}\n {...props}\n style={{\n boxSizing: 'border-box',\n flex: 1,\n flexBasis: `calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))`,\n overflow: 'hidden',\n }}\n >\n <Skeleton color=\"border\" style={{ borderRadius: 0, height: '13rem' }} />\n\n <View style={{ height: '42rem' }}>\n <View style={{ ...section }}>\n <Skeleton style={{ height: '3rem' }} />\n <Skeleton headline level={2}>\n Room name\n </Skeleton>\n <Skeleton action>Free wifi internet</Skeleton>\n <Skeleton action>Television</Skeleton>\n <Skeleton action>Mini-bar</Skeleton>\n <Skeleton action>Heating</Skeleton>\n <Skeleton action>More Info +</Skeleton>\n </View>\n\n <View style={{ ...section }}>\n <Skeleton action>Cancellation type</Skeleton>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Free cancelation</Skeleton>\n <Skeleton action>$0.00</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Free cancelation until apr 10</Skeleton>\n <Skeleton action>$19.95</Skeleton>\n </View>\n </View>\n\n <View style={{ ...section }}>\n <Skeleton action>Extras</Skeleton>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Only room</Skeleton>\n <Skeleton action>$0.00</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Breakfast included</Skeleton>\n <Skeleton action>$19.95</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>All included</Skeleton>\n <Skeleton action>$39.95</Skeleton>\n </View>\n </View>\n\n <View row style={{ alignItems: 'flex-end', justifyContent: 'space-between', padding: '1rem' }}>\n <View style={{ gap: '0.5rem' }}>\n <Skeleton small>5% off</Skeleton>\n <Skeleton headline level={2}>\n $199.50\n </Skeleton>\n <Skeleton small>$19.95 per unit & night</Skeleton>\n <Skeleton small>Includes taxes and fees</Skeleton>\n <Skeleton small>Price details +</Skeleton>\n </View>\n\n <Skeleton action style={{ height: '3rem', width: '8rem' }}>\n Select\n </Skeleton>\n </View>\n </View>\n </Skeleton>\n ))}\n </View>\n </>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Skeleton.js","names":["_ui","require","_react","_interopRequireDefault","_shared__","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_default","isMobile","isDesktop","width","useDevice","isTablet","props","color","section","borderBottom","gap","padding","field","wide","style","action","height","createElement","Fragment","View","row","justifyContent","Skeleton","alignItems","flexWrap","Array","from","map","_","index","boxSizing","flex","flexBasis","undefined","overflow","borderRadius","headline","level","small","exports"],"sources":["../../../src/components/Rates/Rates.Skeleton.jsx"],"sourcesContent":["import { useDevice, View } from '@mirai/ui';\nimport React from 'react';\n\nimport { Skeleton } from '../__shared__';\n\nexport default () => {\n const { isMobile, isDesktop, width } = useDevice();\n\n const isTablet = !isMobile && width <= 1179;\n const props = { color: 'base' };\n const section = { borderBottom: 'solid 1px var(--mirai-ui-content-background)', gap: '0.5rem', padding: '1rem' };\n const field = { wide: true, style: { action: true, height: '3.5rem', padding: '0 0.5rem' } };\n\n return (\n <>\n <View row={!isMobile} style={{ gap: '1rem', justifyContent: 'space-between', padding: '1rem 0' }}>\n <View />\n\n <View row style={{ gap: '1rem' }}>\n <Skeleton {...props} {...field}>\n {!isMobile ? 'Club discount (info)' : null}\n </Skeleton>\n {!isMobile && (\n <Skeleton {...props} {...field}>\n Euro\n </Skeleton>\n )}\n </View>\n </View>\n\n <View row style={{ alignItems: 'stretch', flexWrap: 'wrap', gap: '1rem', justifyContent: 'space-between' }}>\n {Array.from({ length: isMobile ? 1 : isTablet ? 2 : 3 }).map((_, index) => (\n <Skeleton\n key={index}\n {...props}\n style={{\n boxSizing: 'border-box',\n flex: 1,\n flexBasis: isTablet\n ? 'calc(50% - calc(var(--mirai-ui-space-M) / 2))'\n : isDesktop\n ? `calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))`\n : undefined,\n overflow: 'hidden',\n }}\n >\n <Skeleton color=\"border\" style={{ borderRadius: 0, height: '13rem' }} />\n\n <View style={{ height: '42rem' }}>\n <View style={{ ...section }}>\n <Skeleton style={{ height: '3rem' }} />\n <Skeleton headline level={2}>\n Room name\n </Skeleton>\n <Skeleton action>Free wifi internet</Skeleton>\n <Skeleton action>Television</Skeleton>\n <Skeleton action>Mini-bar</Skeleton>\n <Skeleton action>Heating</Skeleton>\n <Skeleton action>More Info +</Skeleton>\n </View>\n\n <View style={{ ...section }}>\n <Skeleton action>Cancellation type</Skeleton>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Free cancelation</Skeleton>\n <Skeleton action>$0.00</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Free cancelation until apr 10</Skeleton>\n <Skeleton action>$19.95</Skeleton>\n </View>\n </View>\n\n <View style={{ ...section }}>\n <Skeleton action>Extras</Skeleton>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Only room</Skeleton>\n <Skeleton action>$0.00</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>Breakfast included</Skeleton>\n <Skeleton action>$19.95</Skeleton>\n </View>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton action>All included</Skeleton>\n <Skeleton action>$39.95</Skeleton>\n </View>\n </View>\n\n <View row style={{ alignItems: 'flex-end', justifyContent: 'space-between', padding: '1rem' }}>\n <View style={{ gap: '0.5rem' }}>\n <Skeleton small>5% off</Skeleton>\n <Skeleton headline level={2}>\n $199.50\n </Skeleton>\n <Skeleton small>$19.95 per unit & night</Skeleton>\n <Skeleton small>Includes taxes and fees</Skeleton>\n <Skeleton small>Price details +</Skeleton>\n </View>\n\n <Skeleton action style={{ height: '3rem', width: '8rem' }}>\n Select\n </Skeleton>\n </View>\n </View>\n </Skeleton>\n ))}\n </View>\n </>\n );\n};\n"],"mappings":"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"}
@@ -48,6 +48,7 @@ const Rates = _ref => {
48
48
  finder: {
49
49
  occupation = []
50
50
  } = {},
51
+ forwarder,
51
52
  hotel = {},
52
53
  language,
53
54
  locale,
@@ -58,6 +59,7 @@ const Rates = _ref => {
58
59
  const [cart, setCart] = (0, _react.useState)([]);
59
60
  const [compact, setCompact] = (0, _react.useState)(true);
60
61
  const [dataSource, setDataSource] = (0, _react.useState)();
62
+ const [extras, setExtras] = (0, _react.useState)();
61
63
  const [fetching, setFetching] = (0, _react.useState)(undefined);
62
64
  const [filter, setFilter] = (0, _react.useState)({
63
65
  clubDiscount: discount
@@ -67,10 +69,6 @@ const Rates = _ref => {
67
69
  const [itemUrl, setItemUrl] = (0, _react.useState)();
68
70
  const [responseError, setResponseError] = (0, _react.useState)();
69
71
  const [room, setRoom] = (0, _react.useState)();
70
- const storage = new _dataSources.Storage({
71
- adapter: _dataSources.LocalAdapter,
72
- cache: _Rates.RATES_STORAGE_CACHE
73
- });
74
72
  (0, _react.useEffect)(() => {
75
73
  if (skeleton) return setFetching(true);
76
74
  const handleScroll = () => setCompact(true);
@@ -80,16 +78,12 @@ const Rates = _ref => {
80
78
  }, []);
81
79
  (0, _react.useEffect)(() => {
82
80
  if (!urlParams || !dataSource) return;
83
-
84
- // ! Should know if didnt expire the storage
85
- // const storedCart = storage.get(key(urlParams));
86
- // if (storedCart) setCart(storedCart.map((item) => (item !== null ? item : undefined)));
87
81
  if (dataSource !== null && dataSource !== void 0 && dataSource.externalLogoff && club !== null && club !== void 0 && club.id) document.location.href = "".concat(process.env.SERVICE_USER, "/").concat(_Rates.EXPIRATION_ENDPOINT, "?idClub=").concat(club.id, "&lang=").concat(language);
88
- if (room == undefined && occupation.length > 1) setRoom(0);
82
+
89
83
  // eslint-disable-next-line react-hooks/exhaustive-deps
90
84
  }, [dataSource]);
91
85
  (0, _react.useEffect)(() => {
92
- if (multiRoom && room > 0) {
86
+ if (multiRoom) {
93
87
  const {
94
88
  current: {
95
89
  offsetHeight = 0,
@@ -121,17 +115,13 @@ const Rates = _ref => {
121
115
  session
122
116
  };
123
117
  if (room !== undefined) nextParams.parties = (0, _helpers2.parseToParties)([occupation[room]]);
124
- setDataSource(await _services.ServiceRates.get(nextParams).catch(setResponseError));
118
+ if (!multiRoom || multiRoom && room !== undefined) {
119
+ setDataSource(await _services.ServiceRates.get(nextParams).catch(setResponseError));
120
+ } else if (multiRoom && room === undefined) {
121
+ setRoom(0);
122
+ }
125
123
  setFetching(false);
126
124
  };
127
- const key = dataSource => "".concat(_Rates.RATES_STORAGE_KEY, ":").concat((0, _helpers2.generateId)(JSON.stringify(dataSource)));
128
- const handleChange = board => {
129
- const nextCart = [...cart];
130
- nextCart[room || 0] = board;
131
- setCart(nextCart);
132
- storage.set(key(urlParams), nextCart);
133
- if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);
134
- };
135
125
  const handleChangeCurrency = async nextCurrency => {
136
126
  await fetch(nextCurrency, undefined, undefined, room);
137
127
  setCart([]);
@@ -143,6 +133,14 @@ const Rates = _ref => {
143
133
  setFilter(nextFilter);
144
134
  if (nextFilter.clubDiscount !== filter.clubDiscount) await fetch(currency, nextFilter.clubDiscount, undefined, room);
145
135
  };
136
+ const handleSelect = board => {
137
+ const nextCart = [...cart];
138
+ nextCart[room || 0] = board;
139
+ setCart(nextCart);
140
+ setExtras();
141
+ if (!multiRoom && !!board) handleSubmit(nextCart);
142
+ if (multiRoom && board && room < occupation.length - 1) return setRoom(room + 1);
143
+ };
146
144
  const handleFinderSubmit = values => {
147
145
  setCompact(true);
148
146
  setDataSource(undefined);
@@ -159,6 +157,29 @@ const Rates = _ref => {
159
157
  setRoom(undefined);
160
158
  fetch(currency, filter.clubDiscount, params);
161
159
  };
160
+ const handleSubmit = cart => {
161
+ // ! TODO: Determine if we have extras for current cart
162
+ setTimeout(async () => {
163
+ // const extras = await ServiceRates.extras(cart);
164
+ // setExtras([]);
165
+ handleCheckout(cart, extras);
166
+ }, 1000);
167
+ };
168
+ const handleCheckout = function () {
169
+ let cart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
170
+ let extras = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
171
+ const {
172
+ clubDiscount
173
+ } = filter;
174
+ document.location.href = (0, _helpers.getForwarderUrl)({
175
+ cart,
176
+ clubDiscount,
177
+ currency,
178
+ extras,
179
+ forwarder,
180
+ urlParams
181
+ });
182
+ };
162
183
  const multiRoom = (occupation === null || occupation === void 0 ? void 0 : occupation.length) > 1;
163
184
  const response = dataSource !== undefined;
164
185
  const roomSelectorProps = {
@@ -208,9 +229,9 @@ const Rates = _ref => {
208
229
  multiRoom,
209
230
  taxes: dataSource.taxes,
210
231
  cart: cart[room || 0],
211
- onChange: handleChange,
212
232
  onMoreInfo: () => setItemInfo(item),
213
233
  onRateInfo: rate => setItemRateInfo(rate),
234
+ onSelect: handleSelect,
214
235
  onViewUrl: info => setItemUrl(info)
215
236
  }));
216
237
  }))) : responseError ? /*#__PURE__*/_react.default.createElement(_ui.Notification, {
@@ -219,14 +240,13 @@ const Rates = _ref => {
219
240
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
220
241
  align: "center",
221
242
  markdown: false
222
- }, JSON.stringify(responseError))) : /*#__PURE__*/_react.default.createElement(_Rates6.default, null)), /*#__PURE__*/_react.default.createElement(_Rates2.Footer, {
243
+ }, JSON.stringify(responseError))) : /*#__PURE__*/_react.default.createElement(_Rates6.default, null)), multiRoom && /*#__PURE__*/_react.default.createElement(_Rates2.Footer, {
223
244
  cart,
224
245
  dataSource,
225
- filter,
226
- multiRoom,
246
+ extras,
227
247
  occupation,
228
- onChange: handleChange
229
- })), /*#__PURE__*/_react.default.createElement(_components.ModalItemInfo, _extends({}, itemInfo, {
248
+ onSubmit: () => handleSubmit(cart)
249
+ })), response && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_components.ModalItemInfo, _extends({}, itemInfo, {
230
250
  visible: !!itemInfo,
231
251
  onClose: () => setItemInfo()
232
252
  })), /*#__PURE__*/_react.default.createElement(_components.ModalItemRateInfo, _extends({}, itemRateInfo, {
@@ -235,6 +255,14 @@ const Rates = _ref => {
235
255
  })), /*#__PURE__*/_react.default.createElement(_components.ModalItemUrl, _extends({}, itemUrl, {
236
256
  visible: !!itemUrl,
237
257
  onClose: () => setItemUrl()
258
+ })), /*#__PURE__*/_react.default.createElement(_components.ModalExtras
259
+ // extras={extras} // ! TODO: Only enable when extras is working
260
+ , {
261
+ cart,
262
+ taxes: dataSource.taxes,
263
+ visible: !!extras,
264
+ onCancel: () => multiRoom ? setExtras() : handleSelect(),
265
+ onSubmit: extras => handleCheckout(cart, extras)
238
266
  })));
239
267
  };
240
268
  exports.Rates = Rates;