@mirai/core 0.3.60 → 0.3.62

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 (84) hide show
  1. package/build/components/Booking/Booking.l10n.js +3 -3
  2. package/build/components/Booking/Booking.l10n.js.map +1 -1
  3. package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Details.test.js.snap +10 -10
  4. package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Details.test.js.snap +42 -6
  5. package/build/components/Finder/helpers/getForwarderUrl.js +4 -2
  6. package/build/components/Finder/helpers/getForwarderUrl.js.map +1 -1
  7. package/build/components/Rates/Rates.Footer.js +65 -77
  8. package/build/components/Rates/Rates.Footer.js.map +1 -1
  9. package/build/components/Rates/{Rates.Filter.js → Rates.Header.js} +53 -80
  10. package/build/components/Rates/Rates.Header.js.map +1 -0
  11. package/build/components/Rates/Rates.RoomSelector.js +96 -0
  12. package/build/components/Rates/Rates.RoomSelector.js.map +1 -0
  13. package/build/components/Rates/Rates.Skeleton.js +116 -40
  14. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  15. package/build/components/Rates/Rates.constants.js +7 -1
  16. package/build/components/Rates/Rates.constants.js.map +1 -1
  17. package/build/components/Rates/Rates.js +90 -47
  18. package/build/components/Rates/Rates.js.map +1 -1
  19. package/build/components/Rates/Rates.l10n.js +16 -7
  20. package/build/components/Rates/Rates.l10n.js.map +1 -1
  21. package/build/components/Rates/Rates.module.css +149 -67
  22. package/build/components/Rates/components/Item/Item.Preview.js +46 -29
  23. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  24. package/build/components/Rates/components/Item/Item.Rates.js +112 -143
  25. package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
  26. package/build/components/Rates/components/Item/Item.Summary.js +141 -0
  27. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -0
  28. package/build/components/Rates/components/Item/Item.js +67 -64
  29. package/build/components/Rates/components/Item/Item.js.map +1 -1
  30. package/build/components/Rates/components/Item/Item.l10n.js +22 -0
  31. package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
  32. package/build/components/Rates/components/Item/Item.module.css +80 -104
  33. package/build/components/Rates/components/Item/components/Amenities/Amenities.js +15 -9
  34. package/build/components/Rates/components/Item/components/Amenities/Amenities.js.map +1 -1
  35. package/build/components/Rates/components/Item/components/Amenities/Amenities.module.css +11 -3
  36. package/build/components/Rates/components/Item/components/Discount/Discount.js +14 -13
  37. package/build/components/Rates/components/Item/components/Discount/Discount.js.map +1 -1
  38. package/build/components/Rates/components/Item/components/Discount/Discount.module.css +4 -3
  39. package/build/components/Rates/components/Item/components/Features/Features.js +4 -10
  40. package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
  41. package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -5
  42. package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +34 -6
  43. package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
  44. package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.module.css +7 -0
  45. package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js +18 -9
  46. package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js.map +1 -1
  47. package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.module.css +17 -1
  48. package/build/components/Rates/components/Item/components/ModalUrl/ModalUrl.module.css +1 -1
  49. package/build/components/Rates/components/Item/components/Option/Option.js +72 -0
  50. package/build/components/Rates/components/Item/components/Option/Option.js.map +1 -0
  51. package/build/components/Rates/components/Item/components/Option/Option.module.css +24 -0
  52. package/build/components/Rates/components/Item/components/Option/index.js +17 -0
  53. package/build/components/Rates/components/Item/components/Option/index.js.map +1 -0
  54. package/build/components/Rates/components/Item/components/index.js +11 -0
  55. package/build/components/Rates/components/Item/components/index.js.map +1 -1
  56. package/build/components/Rates/helpers/getForwarderUrl.js +23 -12
  57. package/build/components/Rates/helpers/getForwarderUrl.js.map +1 -1
  58. package/build/components/helpers/ICON.js +10 -2
  59. package/build/components/helpers/ICON.js.map +1 -1
  60. package/build/components/helpers/index.js +11 -0
  61. package/build/components/helpers/index.js.map +1 -1
  62. package/build/components/helpers/opacity.js +17 -0
  63. package/build/components/helpers/opacity.js.map +1 -0
  64. package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +1662 -0
  65. package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +296 -510
  66. package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +895 -1795
  67. package/build/services/Rates/__tests__/__mocks__/rates-response.json +197 -369
  68. package/build/services/Rates/__tests__/__mocks__/rates-success-cancel-types.json +32481 -0
  69. package/build/services/Rates/constants.js +18 -1
  70. package/build/services/Rates/constants.js.map +1 -1
  71. package/build/services/Rates/get.js +41 -112
  72. package/build/services/Rates/get.js.map +1 -1
  73. package/build/services/Rates/helpers/getIncrements.js +69 -0
  74. package/build/services/Rates/helpers/getIncrements.js.map +1 -0
  75. package/build/services/Rates/helpers/index.js +22 -0
  76. package/build/services/Rates/helpers/index.js.map +1 -1
  77. package/build/services/Rates/helpers/parseBoards.js +156 -0
  78. package/build/services/Rates/helpers/parseBoards.js.map +1 -0
  79. package/build/services/Rates/helpers/parseExternalToken.js +24 -0
  80. package/build/services/Rates/helpers/parseExternalToken.js.map +1 -0
  81. package/package.json +1 -1
  82. package/public/App.module.css +5 -0
  83. package/public/themes/monalisa.theme.css +3 -0
  84. package/build/components/Rates/Rates.Filter.js.map +0 -1
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Filter = void 0;
6
+ exports.Header = void 0;
7
7
  var _dataSources = require("@mirai/data-sources");
8
8
  var _locale = require("@mirai/locale");
9
9
  var _ui = require("@mirai/ui");
@@ -11,17 +11,20 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var _react = _interopRequireDefault(require("react"));
12
12
  var _Rates = require("./Rates.l10n");
13
13
  var style = _interopRequireWildcard(require("./Rates.module.css"));
14
+ var _helpers = require("../helpers");
14
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); }
15
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; }
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
- const Filter = _ref => {
18
+ const Header = _ref => {
18
19
  let {
19
20
  dataSource: {
20
- items = []
21
+ clubConditions
21
22
  } = {},
23
+ children,
22
24
  value = {},
23
25
  onChange = () => {},
24
- onCurrency = () => {}
26
+ onCurrency = () => {},
27
+ ...others
25
28
  } = _ref;
26
29
  const {
27
30
  isMobile
@@ -41,89 +44,33 @@ const Filter = _ref => {
41
44
  } = (0, _dataSources.useStore)();
42
45
  const handleChange = function () {
43
46
  let {
44
- board,
45
47
  clubDiscount
46
48
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
47
49
  const next = {
48
50
  ...value
49
51
  };
50
- if (board !== undefined) next.board = value.board === board ? undefined : board;else if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;
52
+ if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;
51
53
  onChange(next);
52
54
  };
53
- const Boards = () => {
54
- const {
55
- board: selectedBoard
56
- } = value;
57
- return isMobile || boards.length > 3 ? /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
58
- name: "boards",
59
- emptyOption: translate(_Rates.L10N.LABEL_SELECT_TYPE_ACCOMMODATION),
60
- options: boards,
61
- value: selectedBoard,
62
- onChange: board => handleChange({
63
- board
64
- }),
65
- className: style.input
66
- }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, boards.map(board => /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
67
- key: board,
68
- onPress: () => handleChange({
69
- board
70
- }),
71
- className: [style.tag, style.pressable, board === selectedBoard && style.active]
72
- }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
73
- action: true,
74
- bold: board === selectedBoard
75
- }, board))));
76
- };
77
- const Currencies = () => /*#__PURE__*/_react.default.createElement(_ui.View, {
78
- style: {
79
- position: 'relative'
80
- }
81
- }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
82
- className: style.currencyValue
83
- }, currency), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
84
- name: "currency",
85
- options: _locale.CURRENCIES.map(currency => "".concat(currency, " - ").concat(new Intl.DisplayNames(locale, {
86
- type: 'currency'
87
- }).of(currency))),
88
- values: _locale.CURRENCIES,
89
- value: currency,
90
- onChange: onCurrency,
91
- className: [style.input, style.selectCurrencies]
92
- }));
93
55
  const {
94
56
  clubDiscount = false
95
57
  } = value;
96
- const boards = [...new Set(items.map(_ref2 => {
97
- let {
98
- rates = []
99
- } = _ref2;
100
- return rates.map(_ref3 => {
101
- let {
102
- boardName: name
103
- } = _ref3;
104
- return name;
105
- });
106
- }).flat())];
107
- const hasBoards = boards.length >= 2;
58
+ const {
59
+ contentBackground
60
+ } = _ui.Theme.get();
108
61
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
109
- row: !isMobile,
110
- className: style.filter
111
- }, /*#__PURE__*/_react.default.createElement(_ui.View, {
112
- row: true,
113
- className: style.fields
114
- }, hasBoards && /*#__PURE__*/_react.default.createElement(Boards, null), isMobile && hasBoards && /*#__PURE__*/_react.default.createElement(Currencies, null)), /*#__PURE__*/_react.default.createElement(_ui.View, {
115
62
  row: true,
116
- className: style.fields
117
- }, discount !== undefined && /*#__PURE__*/_react.default.createElement(_ui.View, {
63
+ className: (0, _ui.styles)(style.header, !isMobile && others.className),
64
+ style: {
65
+ backgroundColor: (0, _helpers.opacity)(contentBackground, 0.66)
66
+ }
67
+ }, children, discount !== undefined && /*#__PURE__*/_react.default.createElement(_ui.View, {
118
68
  row: true,
119
69
  wide: isMobile,
120
- className: [style.tag, clubDiscount && style.active]
121
- }, /*#__PURE__*/_react.default.createElement(_ui.View, {
122
- row: true,
123
- className: style.clubDiscount
70
+ className: [style.tag, clubDiscount && style.highlight]
124
71
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
125
72
  action: true,
126
- bold: clubDiscount
73
+ bold: true
127
74
  }, translate(_Rates.L10N.LABEL_CLUB_DISCOUNT)), /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
128
75
  pressable: true,
129
76
  Template: () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
@@ -131,22 +78,49 @@ const Filter = _ref => {
131
78
  small: true
132
79
  }, translate(_Rates.L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, {
133
80
  club: name
134
- })), /*#__PURE__*/_react.default.createElement(_ui.Text, {
81
+ })), clubConditions ? /*#__PURE__*/_react.default.createElement(_ui.Text, {
135
82
  small: true
136
- }, translate(_Rates.L10N.LABEL_CLUB_BENEFITS)))
83
+ }, translate(_Rates.L10N.LABEL_CLUB_CONDITIONS, {
84
+ conditions: /*#__PURE__*/_react.default.createElement(_ui.Action, {
85
+ href: clubConditions,
86
+ inline: true,
87
+ target: "_blank",
88
+ className: style.action
89
+ }, translate(_Rates.L10N.ACTION_CLUB_VIEW_CONDITIONS))
90
+ })) : /*#__PURE__*/_react.default.createElement(_ui.Text, {
91
+ small: true
92
+ }, translate(_Rates.L10N.LABEL_CLUB_BENEFITS))),
93
+ className: style.tooltip
137
94
  }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
138
- value: _ui.ICON.INFO
139
- }))), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
95
+ value: _helpers.ICON.INFO
96
+ })), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
140
97
  checked: clubDiscount,
141
98
  name: "clubDiscount",
142
99
  onChange: nextValue => handleChange({
143
100
  clubDiscount: nextValue
144
101
  }),
145
102
  className: style.input
146
- })), (!isMobile || !hasBoards) && /*#__PURE__*/_react.default.createElement(Currencies, null)));
103
+ })), /*#__PURE__*/_react.default.createElement(_ui.View, {
104
+ style: {
105
+ position: 'relative'
106
+ }
107
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
108
+ className: style.currencyValue
109
+ }, currency), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
110
+ name: "currency",
111
+ options: _locale.CURRENCIES.map(currency => "".concat(currency, " - ").concat(new Intl.DisplayNames(locale, {
112
+ type: 'currency'
113
+ }).of(currency))),
114
+ values: _locale.CURRENCIES,
115
+ value: currency,
116
+ onChange: onCurrency,
117
+ className: [style.input, style.selectCurrencies]
118
+ })));
147
119
  };
148
- exports.Filter = Filter;
149
- Filter.propTypes = {
120
+ exports.Header = Header;
121
+ Header.displayName = 'Mirai:Core:Rates.Header';
122
+ Header.propTypes = {
123
+ children: _propTypes.default.node,
150
124
  dataSource: _propTypes.default.shape({}),
151
125
  value: _propTypes.default.shape({
152
126
  board: _propTypes.default.string,
@@ -155,5 +129,4 @@ Filter.propTypes = {
155
129
  onChange: _propTypes.default.func,
156
130
  onCurrency: _propTypes.default.func
157
131
  };
158
- Filter.displayName = 'Mirai:Core:Rates.Filter';
159
- //# sourceMappingURL=Rates.Filter.js.map
132
+ //# sourceMappingURL=Rates.Header.js.map
@@ -0,0 +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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"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RoomSelector = 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 = _interopRequireDefault(require("react"));
12
+ var _Rates = require("./Rates.l10n");
13
+ var style = _interopRequireWildcard(require("./Rates.module.css"));
14
+ var _helpers = require("../helpers");
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); }
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; }
17
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ 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); }
19
+ const RoomSelector = _ref => {
20
+ let {
21
+ cart = [],
22
+ occupation = [],
23
+ room: roomIndex,
24
+ onPress = () => {}
25
+ } = _ref;
26
+ const {
27
+ isMobile
28
+ } = (0, _ui.useDevice)();
29
+ const {
30
+ translate
31
+ } = (0, _locale.useLocale)();
32
+ const {
33
+ value: {
34
+ hotel: {
35
+ accommodationType
36
+ } = {}
37
+ }
38
+ } = (0, _dataSources.useStore)();
39
+
40
+ // const lastRoomIndex = cart.findIndex((item) => )
41
+
42
+ return occupation.length >= 2 ? /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
43
+ horizontal: true,
44
+ snap: false,
45
+ className: style.roomSelector
46
+ }, occupation.map(function () {
47
+ let items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
48
+ let index = arguments.length > 1 ? arguments[1] : undefined;
49
+ const guests = items.reduce(function (total) {
50
+ let {
51
+ amount
52
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
53
+ return total + amount;
54
+ }, 0);
55
+ const textProps = {
56
+ bold: index <= roomIndex,
57
+ action: !isMobile,
58
+ small: isMobile
59
+ };
60
+ const hasCart = index <= roomIndex || cart[index] !== undefined;
61
+ return /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
62
+ disabled: !hasCart,
63
+ key: index,
64
+ onPress: () => onPress(index),
65
+ className: [style.tag, style.room, index === roomIndex ? style.active : hasCart ? style.highlight : undefined]
66
+ }, index === roomIndex && !cart[index] && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
67
+ bold: false
68
+ }), translate(_Rates.L10N.LABEL_SELECT)), /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
69
+ capitalize: true
70
+ }), "".concat(translate(_Rates.L10N.LABEL_ACCOMMODATION_TYPE, {
71
+ type: accommodationType
72
+ }), " ").concat(index + 1)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
73
+ headline: true,
74
+ className: style.separator
75
+ }, "|"), /*#__PURE__*/_react.default.createElement(_ui.Icon, {
76
+ headline: true,
77
+ level: isMobile ? 3 : 2,
78
+ value: guests === 1 || guests > 3 ? _helpers.ICON.PERSON : guests === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
79
+ }), /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
80
+ bold: true
81
+ }), guests));
82
+ })) : null;
83
+ };
84
+ exports.RoomSelector = RoomSelector;
85
+ RoomSelector.displayName = 'Mirai:Core:Rates.RoomSelector';
86
+ RoomSelector.propTypes = {
87
+ cart: _propTypes.default.arrayOf(_propTypes.default.shape({})),
88
+ occupation: _propTypes.default.arrayOf(_propTypes.default.arrayOf(_propTypes.default.shape({
89
+ ages: _propTypes.default.arrayOf(_propTypes.default.number),
90
+ amount: _propTypes.default.number,
91
+ type: _propTypes.default.number
92
+ }))),
93
+ room: _propTypes.default.number,
94
+ onPress: _propTypes.default.func
95
+ };
96
+ //# sourceMappingURL=Rates.RoomSelector.js.map
@@ -0,0 +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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAD,sBAAA,CAAAJ,OAAA;AAEA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAC,uBAAA,CAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAAkC,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAf,uBAAA2B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAElC,MAAMK,YAAY,GAAGC,IAAA,IAAyE;EAAA,IAAxE;IAAEC,IAAI,GAAG,EAAE;IAAEC,UAAU,GAAG,EAAE;IAAEC,IAAI,EAAEC,SAAS;IAAEC,OAAO,GAAGA,CAAA,KAAM,CAAC;EAAE,CAAC,GAAAL,IAAA;EACvF,MAAM;IAAEM;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IACJC,KAAK,EAAE;MAAEC,KAAK,EAAE;QAAEC;MAAkB,CAAC,GAAG,CAAC;IAAE;EAC7C,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;;EAEd;;EAEA,OAAOX,UAAU,CAACP,MAAM,IAAI,CAAC,gBAC3BhC,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAAuD,UAAU;IAACC,UAAU;IAACC,IAAI,EAAE,KAAM;IAACC,SAAS,EAAErD,KAAK,CAACsD;EAAa,GAC/DjB,UAAU,CAACkB,GAAG,CAAC,YAAuB;IAAA,IAAtBC,KAAK,GAAA3B,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4B,SAAA,GAAA5B,SAAA,MAAG,EAAE;IAAA,IAAE6B,KAAK,GAAA7B,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAA4B,SAAA;IAChC,MAAME,MAAM,GAAGH,KAAK,CAACI,MAAM,CAAC,UAACC,KAAK;MAAA,IAAE;QAAEC;MAAO,CAAC,GAAAjC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4B,SAAA,GAAA5B,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKgC,KAAK,GAAGC,MAAM;IAAA,GAAE,CAAC,CAAC;IAC1E,MAAMC,SAAS,GAAG;MAAEC,IAAI,EAAEN,KAAK,IAAInB,SAAS;MAAE0B,MAAM,EAAE,CAACxB,QAAQ;MAAEyB,KAAK,EAAEzB;IAAS,CAAC;IAClF,MAAM0B,OAAO,GAAGT,KAAK,IAAInB,SAAS,IAAIH,IAAI,CAACsB,KAAK,CAAC,KAAKD,SAAS;IAE/D,oBACE3D,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAAyE,SAAS;MACRC,QAAQ,EAAE,CAACF,OAAQ;MACnBnC,GAAG,EAAE0B,KAAM;MACXlB,OAAO,EAAEA,CAAA,KAAMA,OAAO,CAACkB,KAAK,CAAE;MAC9BL,SAAS,EAAE,CACTrD,KAAK,CAACsE,GAAG,EACTtE,KAAK,CAACsC,IAAI,EACVoB,KAAK,KAAKnB,SAAS,GAAGvC,KAAK,CAACuE,MAAM,GAAGJ,OAAO,GAAGnE,KAAK,CAACwE,SAAS,GAAGf,SAAS;IAC1E,GAEDC,KAAK,KAAKnB,SAAS,IAAI,CAACH,IAAI,CAACsB,KAAK,CAAC,iBAClC5D,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAA8E,IAAI,EAAAhD,QAAA,KAAKsC,SAAS;MAAEC,IAAI,EAAE;IAAM,IAC9BrB,SAAS,CAAC+B,WAAI,CAACC,YAAY,CACxB,CACP,eACD7E,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAA8E,IAAI,EAAAhD,QAAA,KAAKsC,SAAS;MAAEa,UAAU;IAAA,OAAAC,MAAA,CAAKlC,SAAS,CAAC+B,WAAI,CAACI,wBAAwB,EAAE;MAC3EC,IAAI,EAAEhC;IACR,CAAC,CAAC,OAAA8B,MAAA,CAAInB,KAAK,GAAG,CAAC,CAAS,CAAC,eAEzB5D,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAA8E,IAAI;MAACO,QAAQ;MAAC3B,SAAS,EAAErD,KAAK,CAACiF;IAAU,GAAC,GAErC,CAAC,eACPnF,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAAuF,IAAI;MACHF,QAAQ;MACRG,KAAK,EAAE1C,QAAQ,GAAG,CAAC,GAAG,CAAE;MACxBI,KAAK,EAAEc,MAAM,KAAK,CAAC,IAAIA,MAAM,GAAG,CAAC,GAAGyB,aAAI,CAACC,MAAM,GAAG1B,MAAM,KAAK,CAAC,GAAGyB,aAAI,CAACE,KAAK,GAAGF,aAAI,CAACG;IAAO,CAC3F,CAAC,eACFzF,MAAA,CAAAW,OAAA,CAAAwC,aAAA,CAACtD,GAAA,CAAA8E,IAAI,EAAAhD,QAAA,KAAKsC,SAAS;MAAEC,IAAI;IAAA,IACtBL,MACG,CACG,CAAC;EAEhB,CAAC,CACS,CAAC,GACX,IAAI;AACV,CAAC;AAAC6B,OAAA,CAAAtD,YAAA,GAAAA,YAAA;AAEFA,YAAY,CAACuD,WAAW,GAAG,+BAA+B;AAE1DvD,YAAY,CAACwD,SAAS,GAAG;EACvBtD,IAAI,EAAEuD,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;EAC5CxD,UAAU,EAAEsD,kBAAS,CAACC,OAAO,CAC3BD,kBAAS,CAACC,OAAO,CACfD,kBAAS,CAACE,KAAK,CAAC;IACdC,IAAI,EAAEH,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACI,MAAM,CAAC;IACzCjC,MAAM,EAAE6B,kBAAS,CAACI,MAAM;IACxBhB,IAAI,EAAEY,kBAAS,CAACI;EAClB,CAAC,CACH,CACF,CAAC;EACDzD,IAAI,EAAEqD,kBAAS,CAACI,MAAM;EACtBvD,OAAO,EAAEmD,kBAAS,CAACK;AACrB,CAAC"}
@@ -16,6 +16,11 @@ var _default = () => {
16
16
  const props = {
17
17
  color: 'base'
18
18
  };
19
+ const section = {
20
+ borderBottom: 'solid 1px var(--mirai-ui-content-background)',
21
+ gap: '0.5rem',
22
+ padding: '1rem'
23
+ };
19
24
  const field = {
20
25
  wide: true,
21
26
  style: {
@@ -28,79 +33,150 @@ var _default = () => {
28
33
  row: !isMobile,
29
34
  style: {
30
35
  gap: '1rem',
31
- justifyContent: 'space-between'
36
+ justifyContent: 'space-between',
37
+ padding: '1rem 0'
32
38
  }
33
- }, /*#__PURE__*/_react.default.createElement(_ui.View, {
39
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, null), /*#__PURE__*/_react.default.createElement(_ui.View, {
34
40
  row: true,
35
41
  style: {
36
42
  gap: '1rem'
37
43
  }
38
- }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), !isMobile ? 'Room Only' : null), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), !isMobile ? 'Breakfast included' : 'Euro')), /*#__PURE__*/_react.default.createElement(_ui.View, {
44
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), !isMobile ? 'Club discount (info)' : null), !isMobile && /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), "Euro"))), /*#__PURE__*/_react.default.createElement(_ui.View, {
39
45
  row: true,
40
46
  style: {
41
- gap: '1rem'
47
+ alignItems: 'stretch',
48
+ flexWrap: 'wrap',
49
+ gap: '1rem',
50
+ justifyContent: 'space-between'
42
51
  }
43
- }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), !isMobile ? 'Club discount (info)' : null), !isMobile && /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, field), "Euro"))), Array.from({
44
- length: 2
45
- }).map((_, index) => /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({}, props, {
46
- key: index,
47
- wide: true,
52
+ }, Array.from({
53
+ length: isMobile ? 1 : 3
54
+ }).map((_, index) => /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({
55
+ key: index
56
+ }, props, {
48
57
  style: {
49
- height: !isMobile ? '40rem' : 'auto',
50
- gap: '1rem',
51
- overflow: 'hidden',
52
- padding: '1rem'
58
+ boxSizing: 'border-box',
59
+ flex: 1,
60
+ flexBasis: "calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))",
61
+ overflow: 'hidden'
53
62
  }
54
- }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
55
- row: true,
63
+ }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
64
+ color: "border",
56
65
  style: {
57
- justifyContent: 'space-between'
66
+ borderRadius: 0,
67
+ height: '13rem'
68
+ }
69
+ }), /*#__PURE__*/_react.default.createElement(_ui.View, {
70
+ style: {
71
+ height: '42rem'
72
+ }
73
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
74
+ style: {
75
+ ...section
58
76
  }
59
77
  }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
60
- bold: true,
78
+ style: {
79
+ height: '3rem'
80
+ }
81
+ }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
61
82
  headline: true,
62
83
  level: 2
63
- }, !isMobile ? 'Room className' : 'Room'), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
64
- small: !isMobile,
65
- tiny: isMobile
66
- }, "Included taxes and fees")), /*#__PURE__*/_react.default.createElement(_ui.View, {
67
- row: !isMobile,
68
- wide: true,
84
+ }, "Room name"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
85
+ action: true
86
+ }, "Free wifi internet"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
87
+ action: true
88
+ }, "Television"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
89
+ action: true
90
+ }, "Mini-bar"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
91
+ action: true
92
+ }, "Heating"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
93
+ action: true
94
+ }, "More Info +")), /*#__PURE__*/_react.default.createElement(_ui.View, {
69
95
  style: {
70
- alignItems: 'flex-start',
71
- gap: '1rem'
96
+ ...section
72
97
  }
73
- }, /*#__PURE__*/_react.default.createElement(_ui.View, {
98
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
99
+ action: true
100
+ }, "Cancellation type"), /*#__PURE__*/_react.default.createElement(_ui.View, {
101
+ row: true,
74
102
  style: {
75
- gap: '1rem',
76
- minWidth: !isMobile ? '23rem' : '100%'
103
+ justifyContent: 'space-between'
77
104
  }
78
105
  }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
106
+ action: true
107
+ }, "Free cancelation"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
108
+ action: true
109
+ }, "$0.00")), /*#__PURE__*/_react.default.createElement(_ui.View, {
110
+ row: true,
79
111
  style: {
80
- height: '14rem'
112
+ justifyContent: 'space-between'
81
113
  }
82
- }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
114
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
115
+ action: true
116
+ }, "Free cancelation until apr 10"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
117
+ action: true
118
+ }, "$19.95"))), /*#__PURE__*/_react.default.createElement(_ui.View, {
83
119
  style: {
84
- height: '3rem'
120
+ ...section
85
121
  }
86
- })), /*#__PURE__*/_react.default.createElement(_ui.View, {
87
- wide: true,
122
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
123
+ action: true
124
+ }, "Extras"), /*#__PURE__*/_react.default.createElement(_ui.View, {
125
+ row: true,
88
126
  style: {
89
- gap: '1rem'
127
+ justifyContent: 'space-between'
90
128
  }
91
129
  }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
130
+ action: true
131
+ }, "Only room"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
132
+ action: true
133
+ }, "$0.00")), /*#__PURE__*/_react.default.createElement(_ui.View, {
134
+ row: true,
92
135
  style: {
93
- height: '10rem'
136
+ justifyContent: 'space-between'
94
137
  }
95
- }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
138
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
139
+ action: true
140
+ }, "Breakfast included"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
141
+ action: true
142
+ }, "$19.95")), /*#__PURE__*/_react.default.createElement(_ui.View, {
143
+ row: true,
96
144
  style: {
97
- height: '10rem'
145
+ justifyContent: 'space-between'
98
146
  }
99
- }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
147
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
148
+ action: true
149
+ }, "All included"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
150
+ action: true
151
+ }, "$39.95"))), /*#__PURE__*/_react.default.createElement(_ui.View, {
152
+ row: true,
153
+ style: {
154
+ alignItems: 'flex-end',
155
+ justifyContent: 'space-between',
156
+ padding: '1rem'
157
+ }
158
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
159
+ style: {
160
+ gap: '0.5rem'
161
+ }
162
+ }, /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
163
+ small: true
164
+ }, "5% off"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
165
+ headline: true,
166
+ level: 2
167
+ }, "$199.50"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
168
+ small: true
169
+ }, "$19.95 per unit & night"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
170
+ small: true
171
+ }, "Includes taxes and fees"), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
172
+ small: true
173
+ }, "Price details +")), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {
174
+ action: true,
100
175
  style: {
101
- height: '10rem'
176
+ height: '3rem',
177
+ width: '8rem'
102
178
  }
103
- })))))));
179
+ }, "Select")))))));
104
180
  };
105
181
  exports.default = _default;
106
182
  //# sourceMappingURL=Rates.Skeleton.js.map
@@ -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","field","wide","style","action","height","padding","createElement","Fragment","View","row","gap","justifyContent","Skeleton","Array","from","map","_","index","overflow","bold","headline","level","small","tiny","alignItems","minWidth","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 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' }}>\n <View row style={{ gap: '1rem' }}>\n <Skeleton {...props} {...field}>\n {!isMobile ? 'Room Only' : null}\n </Skeleton>\n <Skeleton {...props} {...field}>\n {!isMobile ? 'Breakfast included' : 'Euro'}\n </Skeleton>\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 {Array.from({ length: 2 }).map((_, index) => (\n <Skeleton\n {...props}\n key={index}\n wide\n style={{ height: !isMobile ? '40rem' : 'auto', gap: '1rem', overflow: 'hidden', padding: '1rem' }}\n >\n <>\n <View row style={{ justifyContent: 'space-between' }}>\n <Skeleton bold headline level={2}>\n {!isMobile ? 'Room className' : 'Room'}\n </Skeleton>\n <Skeleton small={!isMobile} tiny={isMobile}>\n Included taxes and fees\n </Skeleton>\n </View>\n <View row={!isMobile} wide style={{ alignItems: 'flex-start', gap: '1rem' }}>\n <View style={{ gap: '1rem', minWidth: !isMobile ? '23rem' : '100%' }}>\n <Skeleton style={{ height: '14rem' }} />\n <Skeleton style={{ height: '3rem' }} />\n </View>\n\n <View wide style={{ gap: '1rem' }}>\n <Skeleton style={{ height: '10rem' }} />\n <Skeleton style={{ height: '10rem' }} />\n <Skeleton style={{ height: '10rem' }} />\n </View>\n </View>\n </>\n </Skeleton>\n ))}\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","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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"}
@@ -3,7 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.RATES_STORAGE_KEY = exports.RATES_STORAGE_CACHE = void 0;
6
+ exports.RATES_STORAGE_KEY = exports.RATES_STORAGE_CACHE = exports.EXPIRATION_ENDPOINT = exports.DISCOUNT_TYPE = void 0;
7
+ const DISCOUNT_TYPE = exports.DISCOUNT_TYPE = {
8
+ CLUB: 0,
9
+ DEAL: 1,
10
+ PROMOTION: 2
11
+ };
12
+ const EXPIRATION_ENDPOINT = exports.EXPIRATION_ENDPOINT = 'club/v1/forwarder/expiration';
7
13
  const RATES_STORAGE_CACHE = exports.RATES_STORAGE_CACHE = 1000 * 60 * 5; // 5 minutes
8
14
 
9
15
  const RATES_STORAGE_KEY = exports.RATES_STORAGE_KEY = 'MIRAI:RATES';
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.constants.js","names":["RATES_STORAGE_CACHE","exports","RATES_STORAGE_KEY"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const RATES_STORAGE_CACHE = 1000 * 60 * 5; // 5 minutes\n\nconst RATES_STORAGE_KEY = 'MIRAI:RATES';\n\nexport { RATES_STORAGE_CACHE, RATES_STORAGE_KEY };\n"],"mappings":";;;;;;AAAA,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAE3C,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,aAAa"}
1
+ {"version":3,"file":"Rates.constants.js","names":["DISCOUNT_TYPE","exports","CLUB","DEAL","PROMOTION","EXPIRATION_ENDPOINT","RATES_STORAGE_CACHE","RATES_STORAGE_KEY"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const DISCOUNT_TYPE = {\n CLUB: 0,\n DEAL: 1,\n PROMOTION: 2,\n};\n\nconst EXPIRATION_ENDPOINT = 'club/v1/forwarder/expiration';\n\nconst RATES_STORAGE_CACHE = 1000 * 60 * 5; // 5 minutes\n\nconst RATES_STORAGE_KEY = 'MIRAI:RATES';\n\nexport { DISCOUNT_TYPE, EXPIRATION_ENDPOINT, RATES_STORAGE_CACHE, RATES_STORAGE_KEY };\n"],"mappings":";;;;;;AAAA,MAAMA,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG;EACpBE,IAAI,EAAE,CAAC;EACPC,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,mBAAmB,GAAAJ,OAAA,CAAAI,mBAAA,GAAG,8BAA8B;AAE1D,MAAMC,mBAAmB,GAAAL,OAAA,CAAAK,mBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAE3C,MAAMC,iBAAiB,GAAAN,OAAA,CAAAM,iBAAA,GAAG,aAAa"}