@mirai/core 0.4.279 → 0.4.280
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.
- package/build/components/Rates/Rates.Footer.js +35 -8
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/Rates.RoomSelector.js +5 -0
- package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
- package/build/components/Rates/Rates.constants.js +2 -1
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +6 -0
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/Rates.module.css +9 -1
- package/package.json +1 -1
|
@@ -11,7 +11,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _components = require("./components/Item/components");
|
|
13
13
|
var _helpers = require("./helpers");
|
|
14
|
-
var _Rates = require("./Rates.
|
|
14
|
+
var _Rates = require("./Rates.constants");
|
|
15
|
+
var _Rates2 = require("./Rates.l10n");
|
|
15
16
|
var style = _interopRequireWildcard(require("./Rates.module.css"));
|
|
16
17
|
var _helpers2 = require("../../helpers");
|
|
17
18
|
var _helpers3 = require("../helpers");
|
|
@@ -43,10 +44,11 @@ const Footer = _ref => {
|
|
|
43
44
|
} = (0, _dataSources.useStore)();
|
|
44
45
|
const refContainer = (0, _react.useRef)();
|
|
45
46
|
const [busy, setBusy] = (0, _react.useState)(false);
|
|
47
|
+
const [expanded, setExpanded] = (0, _react.useState)(true);
|
|
46
48
|
(0, _react.useEffect)(() => {
|
|
47
49
|
const items = cart.filter(item => item !== undefined);
|
|
48
50
|
_dataSources.Event.publish(_helpers3.EVENT.MODAL_VISIBLE, {
|
|
49
|
-
displayName:
|
|
51
|
+
displayName: Footer.displayName,
|
|
50
52
|
visible: items.length > 0
|
|
51
53
|
});
|
|
52
54
|
const content = refContainer === null || refContainer === void 0 ? void 0 : refContainer.current;
|
|
@@ -55,7 +57,23 @@ const Footer = _ref => {
|
|
|
55
57
|
height: items.length ? content.offsetHeight : undefined
|
|
56
58
|
})));
|
|
57
59
|
observer.observe(content);
|
|
58
|
-
|
|
60
|
+
const callback = _ref2 => {
|
|
61
|
+
let {
|
|
62
|
+
displayName
|
|
63
|
+
} = _ref2;
|
|
64
|
+
if (displayName !== Footer.displayName) {
|
|
65
|
+
visible && _dataSources.Event.publish(_helpers3.EVENT.MODAL_VISIBLE, {
|
|
66
|
+
displayName: Footer.displayName,
|
|
67
|
+
visible: items.length > 0
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
_dataSources.Event.subscribe(_helpers3.EVENT.MODAL_VISIBLE, callback);
|
|
72
|
+
return () => {
|
|
73
|
+
_dataSources.Event.unsubscribe(_helpers3.EVENT.MODAL_VISIBLE, callback);
|
|
74
|
+
observer.unobserve(content);
|
|
75
|
+
};
|
|
76
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
59
77
|
}, [cart]);
|
|
60
78
|
(0, _react.useEffect)(() => !extras && setBusy(false), [extras]);
|
|
61
79
|
(0, _react.useEffect)(() => !clubRate && setBusy(false), [clubRate]);
|
|
@@ -84,10 +102,19 @@ const Footer = _ref => {
|
|
|
84
102
|
ref: refContainer,
|
|
85
103
|
className: (0, _ui.styles)(style.footer, visible && style.visible, others.className),
|
|
86
104
|
"aria-hidden": visible ? 'false' : 'true'
|
|
87
|
-
}),
|
|
105
|
+
}), items.length >= _Rates.MAX_FOOTER_ITEMS && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
106
|
+
className: style.expander
|
|
107
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
108
|
+
transparent: true,
|
|
109
|
+
onPress: () => setExpanded(!expanded),
|
|
110
|
+
testId: testId,
|
|
111
|
+
className: style.button
|
|
112
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
113
|
+
value: expanded ? _helpers3.ICON.EXPAND_MORE : _helpers3.ICON.EXPAND_LESS
|
|
114
|
+
}), translate(expanded ? _Rates2.L10N.LABEL_HIDE : _Rates2.L10N.LABEL_SHOW))), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
88
115
|
className: style.wrapper,
|
|
89
116
|
wide: true
|
|
90
|
-
}, items.map(function () {
|
|
117
|
+
}, items.filter(() => expanded).map(function () {
|
|
91
118
|
let {
|
|
92
119
|
amount = 1,
|
|
93
120
|
id,
|
|
@@ -136,7 +163,7 @@ const Footer = _ref => {
|
|
|
136
163
|
disabled: !valid,
|
|
137
164
|
large: true,
|
|
138
165
|
onPress: handleSubmit
|
|
139
|
-
}, translate(
|
|
166
|
+
}, translate(_Rates2.L10N.ACTION_RESERVE)));
|
|
140
167
|
}))), multiRoom && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
141
168
|
row: true,
|
|
142
169
|
className: [style.wrapper, style.summary]
|
|
@@ -161,9 +188,9 @@ const Footer = _ref => {
|
|
|
161
188
|
disabled: !valid,
|
|
162
189
|
large: true,
|
|
163
190
|
onPress: handleSubmit,
|
|
164
|
-
"aria-label": translate(
|
|
191
|
+
"aria-label": translate(_Rates2.L10N.ACTION_RESERVE),
|
|
165
192
|
testId: testId ? "".concat(testId, "-reserve") : undefined
|
|
166
|
-
}, translate(
|
|
193
|
+
}, translate(_Rates2.L10N.ACTION_RESERVE))));
|
|
167
194
|
};
|
|
168
195
|
exports.Footer = Footer;
|
|
169
196
|
Footer.displayName = 'Mirai:Core:Rates:Footer';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","style","_helpers2","_helpers3","_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","Footer","_ref","cart","clubRate","dataSource","taxesType","extras","multiRoom","occupation","onSubmit","others","currencyFormat","translate","useLocale","value","currency","useStore","refContainer","useRef","busy","setBusy","useState","useEffect","items","filter","item","undefined","Event","publish","EVENT","MODAL_VISIBLE","displayName","visible","content","current","ResizeObserver","observer","debounce","FOOTER_HEIGHT_CHANGE","height","offsetHeight","observe","unobserve","totalPrice","reduce","price","valid","handleSubmit","currencyFormatProps","maximumFractionDigits","minimumFractionDigits","testId","createElement","View","ref","className","styles","footer","wrapper","wide","map","amount","id","name","boardName","roomName","index","guests","total","row","concat","cartItem","room","Icon","ICON","PERSON","GROUP","GROUPS","Text","small","description","bold","action","light","Button","disabled","large","onPress","L10N","ACTION_RESERVE","summary","headline","level","getLabelTaxes","PriceDetails","metrics","exports","propTypes","PropTypes","arrayOf","shape","bool","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { PriceDetails } from './components/Item/components';\nimport { getLabelTaxes } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { debounce } from '../../helpers';\nimport { EVENT, ICON } from '../helpers';\n\nconst Footer = ({\n cart = [],\n clubRate,\n dataSource: { taxesType } = {},\n extras,\n multiRoom,\n occupation = [],\n onSubmit = () => {},\n ...others\n}) => {\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n const refContainer = useRef();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => {\n const items = cart.filter((item) => item !== undefined);\n\n Event.publish(EVENT.MODAL_VISIBLE, { displayName: 'Mirai:Core:Rates:Footer', visible: items.length > 0 });\n\n const content = refContainer?.current;\n if (!content || typeof ResizeObserver === 'undefined') return;\n\n const observer = new ResizeObserver(\n debounce(() =>\n Event.publish(EVENT.FOOTER_HEIGHT_CHANGE, { height: items.length ? content.offsetHeight : undefined }),\n ),\n );\n observer.observe(content);\n\n return () => observer.unobserve(content);\n }, [cart]);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n useEffect(() => !clubRate && setBusy(false), [clubRate]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price = 0 } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n const visible = items.length > 0;\n const currencyFormatProps = { currency, maximumFractionDigits: 0, minimumFractionDigits: 0 };\n const { testId } = others;\n\n return (\n <View\n {...others}\n ref={refContainer}\n className={styles(style.footer, visible && style.visible, others.className)}\n aria-hidden={visible ? 'false' : 'true'}\n >\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name: boardName, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={`${id}${index}`} className={style.cartItem}>\n {multiRoom && (\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\n <View className={style.description}>\n <Text bold action className={style.description}>\n {`${roomName} `}\n {multiRoom && <Text light small>{` | ${boardName}`}</Text>}\n </Text>\n {!multiRoom && (\n <Text light small>\n {boardName}\n </Text>\n )}\n </View>\n\n <Text bold action>\n {currencyFormat({ ...currencyFormatProps, value: amount * price })}\n </Text>\n\n {!multiRoom && (\n <Button busy={busy} disabled={!valid} large onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n )}\n </View>\n );\n })}\n </View>\n </View>\n\n {multiRoom && (\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={2}>\n {currencyFormat({ ...currencyFormatProps, value: totalPrice })}\n </Text>\n\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n <PriceDetails cart={cart} metrics=\"RATES:FOOTER\" taxesType={taxesType} />\n </View>\n\n <Button\n busy={busy}\n disabled={!valid}\n large\n onPress={handleSubmit}\n aria-label={translate(L10N.ACTION_RESERVE)}\n testId={testId ? `${testId}-reserve` : undefined}\n >\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nFooter.displayName = 'Mirai:Core:Rates:Footer';\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n clubRate: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n extras: PropTypes.arrayOf(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 onSubmit: 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","_components","_helpers","_Rates","_Rates2","style","_helpers2","_helpers3","_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","Footer","_ref","cart","clubRate","dataSource","taxesType","extras","multiRoom","occupation","onSubmit","others","currencyFormat","translate","useLocale","value","currency","useStore","refContainer","useRef","busy","setBusy","useState","expanded","setExpanded","useEffect","items","filter","item","undefined","Event","publish","EVENT","MODAL_VISIBLE","displayName","visible","content","current","ResizeObserver","observer","debounce","FOOTER_HEIGHT_CHANGE","height","offsetHeight","observe","callback","_ref2","subscribe","unsubscribe","unobserve","totalPrice","reduce","price","valid","handleSubmit","currencyFormatProps","maximumFractionDigits","minimumFractionDigits","testId","createElement","View","ref","className","styles","footer","MAX_FOOTER_ITEMS","expander","Button","transparent","onPress","button","Icon","ICON","EXPAND_MORE","EXPAND_LESS","L10N","LABEL_HIDE","LABEL_SHOW","wrapper","wide","map","amount","id","name","boardName","roomName","index","guests","total","row","concat","cartItem","room","PERSON","GROUP","GROUPS","Text","small","description","bold","action","light","disabled","large","ACTION_RESERVE","summary","headline","level","getLabelTaxes","PriceDetails","metrics","exports","propTypes","PropTypes","arrayOf","shape","bool","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { PriceDetails } from './components/Item/components';\nimport { getLabelTaxes } from './helpers';\nimport { MAX_FOOTER_ITEMS } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { debounce } from '../../helpers';\nimport { EVENT, ICON } from '../helpers';\n\nconst Footer = ({\n cart = [],\n clubRate,\n dataSource: { taxesType } = {},\n extras,\n multiRoom,\n occupation = [],\n onSubmit = () => {},\n ...others\n}) => {\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n const refContainer = useRef();\n\n const [busy, setBusy] = useState(false);\n const [expanded, setExpanded] = useState(true);\n\n useEffect(() => {\n const items = cart.filter((item) => item !== undefined);\n\n Event.publish(EVENT.MODAL_VISIBLE, { displayName: Footer.displayName, visible: items.length > 0 });\n\n const content = refContainer?.current;\n if (!content || typeof ResizeObserver === 'undefined') return;\n\n const observer = new ResizeObserver(\n debounce(() =>\n Event.publish(EVENT.FOOTER_HEIGHT_CHANGE, { height: items.length ? content.offsetHeight : undefined }),\n ),\n );\n observer.observe(content);\n\n const callback = ({ displayName }) => {\n if (displayName !== Footer.displayName) {\n visible && Event.publish(EVENT.MODAL_VISIBLE, { displayName: Footer.displayName, visible: items.length > 0 });\n }\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n\n return () => {\n Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n observer.unobserve(content);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [cart]);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n useEffect(() => !clubRate && setBusy(false), [clubRate]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price = 0 } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n const visible = items.length > 0;\n const currencyFormatProps = { currency, maximumFractionDigits: 0, minimumFractionDigits: 0 };\n const { testId } = others;\n\n return (\n <View\n {...others}\n ref={refContainer}\n className={styles(style.footer, visible && style.visible, others.className)}\n aria-hidden={visible ? 'false' : 'true'}\n >\n {items.length >= MAX_FOOTER_ITEMS && (\n <View className={style.expander}>\n <Button transparent onPress={() => setExpanded(!expanded)} testId={testId} className={style.button}>\n <Icon value={expanded ? ICON.EXPAND_MORE : ICON.EXPAND_LESS} />\n {translate(expanded ? L10N.LABEL_HIDE : L10N.LABEL_SHOW)}\n </Button>\n </View>\n )}\n <View>\n <View className={style.wrapper} wide>\n {items\n .filter(() => expanded)\n .map(({ amount = 1, id, name: boardName, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={`${id}${index}`} className={style.cartItem}>\n {multiRoom && (\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\n <View className={style.description}>\n <Text bold action className={style.description}>\n {`${roomName} `}\n {multiRoom && <Text light small>{` | ${boardName}`}</Text>}\n </Text>\n {!multiRoom && (\n <Text light small>\n {boardName}\n </Text>\n )}\n </View>\n\n <Text bold action>\n {currencyFormat({ ...currencyFormatProps, value: amount * price })}\n </Text>\n\n {!multiRoom && (\n <Button busy={busy} disabled={!valid} large onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n )}\n </View>\n );\n })}\n </View>\n </View>\n\n {multiRoom && (\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={2}>\n {currencyFormat({ ...currencyFormatProps, value: totalPrice })}\n </Text>\n\n {!!taxesType && (\n <Text light small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n <PriceDetails cart={cart} metrics=\"RATES:FOOTER\" taxesType={taxesType} />\n </View>\n\n <Button\n busy={busy}\n disabled={!valid}\n large\n onPress={handleSubmit}\n aria-label={translate(L10N.ACTION_RESERVE)}\n testId={testId ? `${testId}-reserve` : undefined}\n >\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nFooter.displayName = 'Mirai:Core:Rates:Footer';\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n clubRate: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n extras: PropTypes.arrayOf(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 onSubmit: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
17
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
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
19
|
const RoomSelector = _ref => {
|
|
20
|
+
var _itemsRef$current, _itemsRef$current2, _itemsRef$current2$, _itemsRef$current2$$p;
|
|
20
21
|
let {
|
|
21
22
|
cart = [],
|
|
22
23
|
occupation = [],
|
|
@@ -66,8 +67,12 @@ const RoomSelector = _ref => {
|
|
|
66
67
|
const {
|
|
67
68
|
accommodationType = hotelAccommodationType
|
|
68
69
|
} = variants[id] || {};
|
|
70
|
+
const itemsWidth = (itemsRef === null || itemsRef === void 0 ? void 0 : (_itemsRef$current = itemsRef.current) === null || _itemsRef$current === void 0 ? void 0 : _itemsRef$current.reduce((total, current) => total + (current === null || current === void 0 ? void 0 : current.offsetWidth) || 0, 0)) + (8 * occupation.length - 1);
|
|
71
|
+
const containerWidth = (itemsRef === null || itemsRef === void 0 ? void 0 : (_itemsRef$current2 = itemsRef.current) === null || _itemsRef$current2 === void 0 ? void 0 : (_itemsRef$current2$ = _itemsRef$current2[0]) === null || _itemsRef$current2$ === void 0 ? void 0 : (_itemsRef$current2$$p = _itemsRef$current2$.parentElement) === null || _itemsRef$current2$$p === void 0 ? void 0 : _itemsRef$current2$$p.offsetWidth) || 0;
|
|
69
72
|
return isHotel && occupation.length >= 2 ? /*#__PURE__*/_react.default.createElement(_ui.ScrollView, _extends({}, others, {
|
|
73
|
+
defaultScrollIndicator: true,
|
|
70
74
|
horizontal: true,
|
|
75
|
+
scrollIndicator: !isMobile && itemsWidth > containerWidth,
|
|
71
76
|
scrollTo: scrollTo,
|
|
72
77
|
snap: false,
|
|
73
78
|
className: (0, _ui.styles)(style.roomSelector, others.className)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.RoomSelector.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","_extends","assign","bind","target","arguments","length","source","key","apply","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","others","isMobile","useDevice","translate","useLocale","itemsRef","useRef","value","finder","hotel","accommodationType","hotelAccommodationType","variants","useStore","scrollTo","setScrollTo","useState","useEffect","_itemsRef$current$roo","next","current","offsetLeft","handlePress","index","Event","publish","EVENT","METRICS","id","place","isHotel","createElement","ScrollView","horizontal","snap","className","styles","roomSelector","map","items","undefined","guests","reduce","total","amount","hasCart","View","ref","el","Button","disabled","secondary","concat","L10N","LABEL_SELECT","LABEL_ACCOMMODATION_TYPE","type","trim","Text","headline","separator","active","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, ScrollView, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { EVENT, ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n const {\n value: { finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} },\n } = useStore();\n\n const [scrollTo, setScrollTo] = useState();\n\n useEffect(() => {\n setScrollTo(0);\n }, []);\n\n useEffect(() => {\n const next = roomIndex === 0 ? 0 : itemsRef.current[roomIndex]?.offsetLeft;\n if (next) setScrollTo(next - (isMobile ? 8 : 0));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [roomIndex]);\n\n const handlePress = (index) => {\n onPress(index);\n Event.publish(EVENT.METRICS, { id: 'RATES:ROOM', index });\n };\n\n const { place: { id: [id] = [], isHotel = true } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n return isHotel && occupation.length >= 2 ? (\n <ScrollView\n {...others}\n horizontal\n scrollTo={scrollTo}\n snap={false}\n className={styles(style.roomSelector, others.className)}\n >\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const hasCart = index <= roomIndex || cart[index] !== undefined || cart[index - 1] !== undefined;\n\n return (\n <View key={index} ref={(el) => (itemsRef.current[index] = el)}>\n <Button disabled={!hasCart} secondary={hasCart && index !== roomIndex} onPress={() => handlePress(index)}>\n {`${index === roomIndex && !cart[index] ? `${translate(L10N.LABEL_SELECT)}` : ''} ${translate(\n L10N.LABEL_ACCOMMODATION_TYPE,\n { type: accommodationType },\n )} ${index + 1}`.trim()}\n\n <Text\n headline\n className={[\n style.separator,\n index === roomIndex ? style.active : hasCart ? style.secondary : style.disabled,\n ]}\n >\n |\n </Text>\n\n <Icon\n headline\n level={2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n {guests}\n </Button>\n </View>\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","_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","_extends","assign","bind","target","arguments","length","source","key","apply","RoomSelector","_ref","_itemsRef$current","_itemsRef$current2","_itemsRef$current2$","_itemsRef$current2$$p","cart","occupation","room","roomIndex","onPress","others","isMobile","useDevice","translate","useLocale","itemsRef","useRef","value","finder","hotel","accommodationType","hotelAccommodationType","variants","useStore","scrollTo","setScrollTo","useState","useEffect","_itemsRef$current$roo","next","current","offsetLeft","handlePress","index","Event","publish","EVENT","METRICS","id","place","isHotel","itemsWidth","reduce","total","offsetWidth","containerWidth","parentElement","createElement","ScrollView","defaultScrollIndicator","horizontal","scrollIndicator","snap","className","styles","roomSelector","map","items","undefined","guests","amount","hasCart","View","ref","el","Button","disabled","secondary","concat","L10N","LABEL_SELECT","LABEL_ACCOMMODATION_TYPE","type","trim","Text","headline","separator","active","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, ScrollView, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { EVENT, ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n const {\n value: { finder = {}, hotel: { accommodationType: hotelAccommodationType, variants = {} } = {} },\n } = useStore();\n\n const [scrollTo, setScrollTo] = useState();\n\n useEffect(() => {\n setScrollTo(0);\n }, []);\n\n useEffect(() => {\n const next = roomIndex === 0 ? 0 : itemsRef.current[roomIndex]?.offsetLeft;\n if (next) setScrollTo(next - (isMobile ? 8 : 0));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [roomIndex]);\n\n const handlePress = (index) => {\n onPress(index);\n Event.publish(EVENT.METRICS, { id: 'RATES:ROOM', index });\n };\n\n const { place: { id: [id] = [], isHotel = true } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n const itemsWidth =\n itemsRef?.current?.reduce((total, current) => total + current?.offsetWidth || 0, 0) + (8 * occupation.length - 1);\n const containerWidth = itemsRef?.current?.[0]?.parentElement?.offsetWidth || 0;\n\n return isHotel && occupation.length >= 2 ? (\n <ScrollView\n {...others}\n defaultScrollIndicator\n horizontal\n scrollIndicator={!isMobile && itemsWidth > containerWidth}\n scrollTo={scrollTo}\n snap={false}\n className={styles(style.roomSelector, others.className)}\n >\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const hasCart = index <= roomIndex || cart[index] !== undefined || cart[index - 1] !== undefined;\n\n return (\n <View key={index} ref={(el) => (itemsRef.current[index] = el)}>\n <Button disabled={!hasCart} secondary={hasCart && index !== roomIndex} onPress={() => handlePress(index)}>\n {`${index === roomIndex && !cart[index] ? `${translate(L10N.LABEL_SELECT)}` : ''} ${translate(\n L10N.LABEL_ACCOMMODATION_TYPE,\n { type: accommodationType },\n )} ${index + 1}`.trim()}\n\n <Text\n headline\n className={[\n style.separator,\n index === roomIndex ? style.active : hasCart ? style.secondary : style.disabled,\n ]}\n >\n |\n </Text>\n\n <Icon\n headline\n level={2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n {guests}\n </Button>\n </View>\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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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.UTM_SOURCE_NAME = exports.NOTIFICATION = exports.MAX_PROMOCODE = exports.FREE_CANCELLATION = exports.FEATURES = exports.DISCOUNT_TYPE = exports.DATE_FORMAT = exports.CLUB_RATE_STORAGE_VIEWED = exports.BED_TYPE = void 0;
|
|
6
|
+
exports.UTM_SOURCE_NAME = exports.NOTIFICATION = exports.MAX_PROMOCODE = exports.MAX_FOOTER_ITEMS = exports.FREE_CANCELLATION = exports.FEATURES = exports.DISCOUNT_TYPE = exports.DATE_FORMAT = exports.CLUB_RATE_STORAGE_VIEWED = exports.BED_TYPE = void 0;
|
|
7
7
|
const BED_TYPE = exports.BED_TYPE = {
|
|
8
8
|
SINGLE: 1,
|
|
9
9
|
DOUBLE: 2
|
|
@@ -35,6 +35,7 @@ const FEATURES = exports.FEATURES = {
|
|
|
35
35
|
TWIN: 'twin'
|
|
36
36
|
};
|
|
37
37
|
const FREE_CANCELLATION = exports.FREE_CANCELLATION = 'free';
|
|
38
|
+
const MAX_FOOTER_ITEMS = exports.MAX_FOOTER_ITEMS = 3;
|
|
38
39
|
const MAX_PROMOCODE = exports.MAX_PROMOCODE = {
|
|
39
40
|
DESKTOP: 12,
|
|
40
41
|
MOBILE: 8
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.constants.js","names":["BED_TYPE","exports","SINGLE","DOUBLE","CLUB_RATE_STORAGE_VIEWED","DATE_FORMAT","weekday","month","day","DISCOUNT_TYPE","CLUB","DEAL","PROMOTION","FEATURES","COLUMN_MODE","HIDE_RADIO","HIDE_STANDALONE_BOARD","PESTANA","SHOW_ALL_BOARDS","SHOW_ALL_OFFERS","SHOW_MAX_OCCUPATION","SHOW_NAME_IN_HEADER","SHOW_OFFERS_FIRST","SHOW_PRICE_INCREMENTS","SHOW_PRICE_PER_NIGHT","SHOW_RATE_INCLUDED","TWIN","FREE_CANCELLATION","MAX_PROMOCODE","DESKTOP","MOBILE","NOTIFICATION","PROMOCODE_NOT_FOUND","OFFER_NOT_FOUND","ROOM_NOT_FOUNT","UTM_SOURCE_NAME","hotelfinder"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const BED_TYPE = {\n SINGLE: 1,\n DOUBLE: 2,\n};\n\nconst CLUB_RATE_STORAGE_VIEWED = 'MIRAI:RATES:CLUB_RATE:viewed';\n\nconst DATE_FORMAT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nconst DISCOUNT_TYPE = {\n CLUB: 0,\n DEAL: 1,\n PROMOTION: 2,\n};\n\nconst FEATURES = {\n COLUMN_MODE: 'columnMode',\n HIDE_RADIO: 'hideRadio',\n HIDE_STANDALONE_BOARD: 'hideStandaloneBoard',\n PESTANA: 'pestana',\n SHOW_ALL_BOARDS: 'showAllBoards',\n SHOW_ALL_OFFERS: 'showAllOffers',\n SHOW_MAX_OCCUPATION: 'showMaxOccupation',\n SHOW_NAME_IN_HEADER: 'showNameInHeader',\n SHOW_OFFERS_FIRST: 'showOffersFirst',\n SHOW_PRICE_INCREMENTS: 'showPriceIncrements',\n SHOW_PRICE_PER_NIGHT: 'showPricePerNight',\n SHOW_RATE_INCLUDED: 'showRateIncluded',\n TWIN: 'twin',\n};\n\nconst FREE_CANCELLATION = 'free';\n\nconst MAX_PROMOCODE = {\n DESKTOP: 12,\n MOBILE: 8,\n};\n\nconst NOTIFICATION = {\n PROMOCODE_NOT_FOUND: 1,\n OFFER_NOT_FOUND: 2,\n ROOM_NOT_FOUNT: 3,\n};\n\nconst UTM_SOURCE_NAME = {\n hotelfinder: 'Google Hotels',\n};\n\nexport {\n BED_TYPE,\n CLUB_RATE_STORAGE_VIEWED,\n DATE_FORMAT,\n DISCOUNT_TYPE,\n FEATURES,\n FREE_CANCELLATION,\n MAX_PROMOCODE,\n NOTIFICATION,\n UTM_SOURCE_NAME,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACfE,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,wBAAwB,GAAAH,OAAA,CAAAG,wBAAA,GAAG,8BAA8B;AAE/D,MAAMC,WAAW,GAAAJ,OAAA,CAAAI,WAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAExE,MAAMC,aAAa,GAAAR,OAAA,CAAAQ,aAAA,GAAG;EACpBC,IAAI,EAAE,CAAC;EACPC,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,QAAQ,GAAAZ,OAAA,CAAAY,QAAA,GAAG;EACfC,WAAW,EAAE,YAAY;EACzBC,UAAU,EAAE,WAAW;EACvBC,qBAAqB,EAAE,qBAAqB;EAC5CC,OAAO,EAAE,SAAS;EAClBC,eAAe,EAAE,eAAe;EAChCC,eAAe,EAAE,eAAe;EAChCC,mBAAmB,EAAE,mBAAmB;EACxCC,mBAAmB,EAAE,kBAAkB;EACvCC,iBAAiB,EAAE,iBAAiB;EACpCC,qBAAqB,EAAE,qBAAqB;EAC5CC,oBAAoB,EAAE,mBAAmB;EACzCC,kBAAkB,EAAE,kBAAkB;EACtCC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,iBAAiB,GAAA1B,OAAA,CAAA0B,iBAAA,GAAG,MAAM;AAEhC,MAAMC,
|
|
1
|
+
{"version":3,"file":"Rates.constants.js","names":["BED_TYPE","exports","SINGLE","DOUBLE","CLUB_RATE_STORAGE_VIEWED","DATE_FORMAT","weekday","month","day","DISCOUNT_TYPE","CLUB","DEAL","PROMOTION","FEATURES","COLUMN_MODE","HIDE_RADIO","HIDE_STANDALONE_BOARD","PESTANA","SHOW_ALL_BOARDS","SHOW_ALL_OFFERS","SHOW_MAX_OCCUPATION","SHOW_NAME_IN_HEADER","SHOW_OFFERS_FIRST","SHOW_PRICE_INCREMENTS","SHOW_PRICE_PER_NIGHT","SHOW_RATE_INCLUDED","TWIN","FREE_CANCELLATION","MAX_FOOTER_ITEMS","MAX_PROMOCODE","DESKTOP","MOBILE","NOTIFICATION","PROMOCODE_NOT_FOUND","OFFER_NOT_FOUND","ROOM_NOT_FOUNT","UTM_SOURCE_NAME","hotelfinder"],"sources":["../../../src/components/Rates/Rates.constants.js"],"sourcesContent":["const BED_TYPE = {\n SINGLE: 1,\n DOUBLE: 2,\n};\n\nconst CLUB_RATE_STORAGE_VIEWED = 'MIRAI:RATES:CLUB_RATE:viewed';\n\nconst DATE_FORMAT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nconst DISCOUNT_TYPE = {\n CLUB: 0,\n DEAL: 1,\n PROMOTION: 2,\n};\n\nconst FEATURES = {\n COLUMN_MODE: 'columnMode',\n HIDE_RADIO: 'hideRadio',\n HIDE_STANDALONE_BOARD: 'hideStandaloneBoard',\n PESTANA: 'pestana',\n SHOW_ALL_BOARDS: 'showAllBoards',\n SHOW_ALL_OFFERS: 'showAllOffers',\n SHOW_MAX_OCCUPATION: 'showMaxOccupation',\n SHOW_NAME_IN_HEADER: 'showNameInHeader',\n SHOW_OFFERS_FIRST: 'showOffersFirst',\n SHOW_PRICE_INCREMENTS: 'showPriceIncrements',\n SHOW_PRICE_PER_NIGHT: 'showPricePerNight',\n SHOW_RATE_INCLUDED: 'showRateIncluded',\n TWIN: 'twin',\n};\n\nconst FREE_CANCELLATION = 'free';\n\nconst MAX_FOOTER_ITEMS = 3;\n\nconst MAX_PROMOCODE = {\n DESKTOP: 12,\n MOBILE: 8,\n};\n\nconst NOTIFICATION = {\n PROMOCODE_NOT_FOUND: 1,\n OFFER_NOT_FOUND: 2,\n ROOM_NOT_FOUNT: 3,\n};\n\nconst UTM_SOURCE_NAME = {\n hotelfinder: 'Google Hotels',\n};\n\nexport {\n BED_TYPE,\n CLUB_RATE_STORAGE_VIEWED,\n DATE_FORMAT,\n DISCOUNT_TYPE,\n FEATURES,\n FREE_CANCELLATION,\n MAX_FOOTER_ITEMS,\n MAX_PROMOCODE,\n NOTIFICATION,\n UTM_SOURCE_NAME,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACfE,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,wBAAwB,GAAAH,OAAA,CAAAG,wBAAA,GAAG,8BAA8B;AAE/D,MAAMC,WAAW,GAAAJ,OAAA,CAAAI,WAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAExE,MAAMC,aAAa,GAAAR,OAAA,CAAAQ,aAAA,GAAG;EACpBC,IAAI,EAAE,CAAC;EACPC,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,QAAQ,GAAAZ,OAAA,CAAAY,QAAA,GAAG;EACfC,WAAW,EAAE,YAAY;EACzBC,UAAU,EAAE,WAAW;EACvBC,qBAAqB,EAAE,qBAAqB;EAC5CC,OAAO,EAAE,SAAS;EAClBC,eAAe,EAAE,eAAe;EAChCC,eAAe,EAAE,eAAe;EAChCC,mBAAmB,EAAE,mBAAmB;EACxCC,mBAAmB,EAAE,kBAAkB;EACvCC,iBAAiB,EAAE,iBAAiB;EACpCC,qBAAqB,EAAE,qBAAqB;EAC5CC,oBAAoB,EAAE,mBAAmB;EACzCC,kBAAkB,EAAE,kBAAkB;EACtCC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,iBAAiB,GAAA1B,OAAA,CAAA0B,iBAAA,GAAG,MAAM;AAEhC,MAAMC,gBAAgB,GAAA3B,OAAA,CAAA2B,gBAAA,GAAG,CAAC;AAE1B,MAAMC,aAAa,GAAA5B,OAAA,CAAA4B,aAAA,GAAG;EACpBC,OAAO,EAAE,EAAE;EACXC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,YAAY,GAAA/B,OAAA,CAAA+B,YAAA,GAAG;EACnBC,mBAAmB,EAAE,CAAC;EACtBC,eAAe,EAAE,CAAC;EAClBC,cAAc,EAAE;AAClB,CAAC;AAED,MAAMC,eAAe,GAAAnC,OAAA,CAAAmC,eAAA,GAAG;EACtBC,WAAW,EAAE;AACf,CAAC"}
|
|
@@ -45,6 +45,9 @@ const L10N = exports.L10N = {
|
|
|
45
45
|
LABEL_FROM: {
|
|
46
46
|
id: 'common.label.from'
|
|
47
47
|
},
|
|
48
|
+
LABEL_HIDE: {
|
|
49
|
+
id: 'common.label.hide'
|
|
50
|
+
},
|
|
48
51
|
LABEL_INCLUDES_TAXES_FEES: {
|
|
49
52
|
id: 'finder.label.includes_taxes_fees'
|
|
50
53
|
},
|
|
@@ -66,6 +69,9 @@ const L10N = exports.L10N = {
|
|
|
66
69
|
LABEL_SELECT: {
|
|
67
70
|
id: 'common.label.select'
|
|
68
71
|
},
|
|
72
|
+
LABEL_SHOW: {
|
|
73
|
+
id: 'common.label.show'
|
|
74
|
+
},
|
|
69
75
|
LABEL_TAXES_FEES: {
|
|
70
76
|
[_Core.TAXES_TYPE.ALL_EXCLUDED]: {
|
|
71
77
|
id: 'finder.label.excludes_taxes_fees'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_CLUB_VIEW_CONDITIONS","id","ACTION_IMMERSIVE_BOOKING","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SHOW_ON_MAP","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FROM","LABEL_INCLUDES_TAXES_FEES","LABEL_MEMBER_DISCOUNT","LABEL_MEMBER_EXCLUSIVE","LABEL_NIGHTS","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_SELECT","LABEL_TAXES_FEES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","FEES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TAXES_INCLUDED","LABEL_YEARS_OLD","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","NOTIFICATION_ROOM_NOT_FOUND","NOTIFICATION_OFFER_NOT_FOUND","NOTIFICATION_VALIDATE","VALIDATE_ERROR","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { ERROR, TAXES_TYPE, VALIDATE_ERROR } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_IMMERSIVE_BOOKING: { id: 'finder.label.immersive_booking' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SHOW_ON_MAP: { id: 'finder.action.show_on_map' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS: { id: 'finder.label.alternative_hotel_suggestions' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CONTACT_INFO: { id: 'finder.label.contact_info' },\n LABEL_EXCLUDES_TAXES_FEES: { id: 'finder.label.excludes_taxes_fees' },\n LABEL_FROM: { id: 'common.label.from' },\n LABEL_INCLUDES_TAXES_FEES: { id: 'finder.label.includes_taxes_fees' },\n LABEL_MEMBER_DISCOUNT: { id: 'finder.label.member_discount' },\n LABEL_MEMBER_EXCLUSIVE: { id: 'finder.label.member_exclusive' },\n LABEL_NIGHTS: { id: 'common.label.nights' },\n LABEL_NO_AVAILABILITY_CALENDAR: { id: 'common.label.no_availability_calendar' },\n LABEL_NO_AVAILABILITY_OCCUPATION: { id: 'common.label.no_availability_occupation' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_TAXES_FEES: {\n [TAXES_TYPE.ALL_EXCLUDED]: { id: 'finder.label.excludes_taxes_fees' },\n [TAXES_TYPE.ALL_INCLUDED]: { id: 'finder.label.includes_taxes_fees' },\n [TAXES_TYPE.FEES_EXCLUDED]: { id: 'finder.label.excludes_fees' },\n [TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED]: { id: 'finder.label.includes_fees_excludes_taxes' },\n [TAXES_TYPE.FEES_INCLUDED]: { id: 'finder.label.includes_fees' },\n [TAXES_TYPE.TAXES_EXCLUDED]: { id: 'finder.label.excludes_taxes' },\n [TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED]: { id: 'finder.label.includes_taxes_excludes_fees' },\n [TAXES_TYPE.TAXES_INCLUDED]: { id: 'finder.label.includes_taxes' },\n },\n LABEL_YEARS_OLD: { id: 'common.label.years_old' },\n\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_META_RATE_FOUND: { id: 'finder.notification.meta_rate_found' },\n NOTIFICATION_META_RATE_NOT_FOUND: { id: 'finder.notification.meta_rate_not_found' },\n NOTIFICATION_PROMOCODE_NOT_FOUND: { id: 'finder.notification.promocode_not_found' },\n NOTIFICATION_ROOM_NOT_FOUND: { id: 'finder.notification.room_not_found' },\n NOTIFICATION_OFFER_NOT_FOUND: { id: 'finder.notification.offer_not_found' },\n NOTIFICATION_VALIDATE: {\n [VALIDATE_ERROR.NOT_ENOUGH_ROOMS]: { id: 'finder.notification.not_enough_rooms' },\n [VALIDATE_ERROR.NOT_ENOUGH_ROOMS_FOR_OFFER]: { id: 'finder.notification.not_enough_rooms_for_offer' },\n [VALIDATE_ERROR.NO_SELECTED_ROOMS]: { id: 'finder.notification.no_selected_rooms' },\n [VALIDATE_ERROR.EXTRA_CHANGED]: { id: 'finder.notification.extra_changed' },\n },\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,2BAA2B,EAAE;IAAEC,EAAE,EAAE;EAAqC,CAAC;EACzEC,wBAAwB,EAAE;IAAED,EAAE,EAAE;EAAiC,CAAC;EAClEE,oBAAoB,EAAE;IAAEF,EAAE,EAAE;EAA8B,CAAC;EAC3DG,cAAc,EAAE;IAAEH,EAAE,EAAE;EAAwB,CAAC;EAC/CI,kBAAkB,EAAE;IAAEJ,EAAE,EAAE;EAA4B,CAAC;EACvDK,gBAAgB,EAAE;IAAEL,EAAE,EAAE;EAA0B,CAAC;EAEnDM,wBAAwB,EAAE;IAAEN,EAAE,EAAE;EAAkC,CAAC;EACnEO,mCAAmC,EAAE;IAAEP,EAAE,EAAE;EAA6C,CAAC;EACzFQ,4BAA4B,EAAE;IAAER,EAAE,EAAE;EAAsC,CAAC;EAC3ES,mBAAmB,EAAE;IAAET,EAAE,EAAE;EAA6B,CAAC;EACzDU,kBAAkB,EAAE;IAAEV,EAAE,EAAE;EAA4B,CAAC;EACvDW,yBAAyB,EAAE;IAAEX,EAAE,EAAE;EAAmC,CAAC;EACrEY,UAAU,EAAE;IAAEZ,EAAE,EAAE;EAAoB,CAAC;EACvCa,
|
|
1
|
+
{"version":3,"file":"Rates.l10n.js","names":["_Core","require","L10N","exports","ACTION_CLUB_VIEW_CONDITIONS","id","ACTION_IMMERSIVE_BOOKING","ACTION_REFINE_SEARCH","ACTION_RESERVE","ACTION_SHOW_ON_MAP","ACTION_VIEW_MORE","LABEL_ACCOMMODATION_TYPE","LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS","LABEL_AVAILABLE_ALTERNATIVES","LABEL_CLUB_BENEFITS","LABEL_CONTACT_INFO","LABEL_EXCLUDES_TAXES_FEES","LABEL_FROM","LABEL_HIDE","LABEL_INCLUDES_TAXES_FEES","LABEL_MEMBER_DISCOUNT","LABEL_MEMBER_EXCLUSIVE","LABEL_NIGHTS","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_SELECT","LABEL_SHOW","LABEL_TAXES_FEES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","FEES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TAXES_INCLUDED","LABEL_YEARS_OLD","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_META_RATE_FOUND","NOTIFICATION_META_RATE_NOT_FOUND","NOTIFICATION_PROMOCODE_NOT_FOUND","NOTIFICATION_ROOM_NOT_FOUND","NOTIFICATION_OFFER_NOT_FOUND","NOTIFICATION_VALIDATE","VALIDATE_ERROR","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED"],"sources":["../../../src/components/Rates/Rates.l10n.js"],"sourcesContent":["import { ERROR, TAXES_TYPE, VALIDATE_ERROR } from '../../Core.constants';\n\nexport const L10N = {\n ACTION_CLUB_VIEW_CONDITIONS: { id: 'finder.action.club_view_conditions' },\n ACTION_IMMERSIVE_BOOKING: { id: 'finder.label.immersive_booking' },\n ACTION_REFINE_SEARCH: { id: 'common.action.refine_search' },\n ACTION_RESERVE: { id: 'common.action.reserve' },\n ACTION_SHOW_ON_MAP: { id: 'finder.action.show_on_map' },\n ACTION_VIEW_MORE: { id: 'common.action.view_more' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_ALTERNATIVE_HOTEL_SUGGESTIONS: { id: 'finder.label.alternative_hotel_suggestions' },\n LABEL_AVAILABLE_ALTERNATIVES: { id: 'finder.label.available_alternatives' },\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_CONTACT_INFO: { id: 'finder.label.contact_info' },\n LABEL_EXCLUDES_TAXES_FEES: { id: 'finder.label.excludes_taxes_fees' },\n LABEL_FROM: { id: 'common.label.from' },\n LABEL_HIDE: { id: 'common.label.hide' },\n LABEL_INCLUDES_TAXES_FEES: { id: 'finder.label.includes_taxes_fees' },\n LABEL_MEMBER_DISCOUNT: { id: 'finder.label.member_discount' },\n LABEL_MEMBER_EXCLUSIVE: { id: 'finder.label.member_exclusive' },\n LABEL_NIGHTS: { id: 'common.label.nights' },\n LABEL_NO_AVAILABILITY_CALENDAR: { id: 'common.label.no_availability_calendar' },\n LABEL_NO_AVAILABILITY_OCCUPATION: { id: 'common.label.no_availability_occupation' },\n LABEL_SELECT: { id: 'common.label.select' },\n LABEL_SHOW: { id: 'common.label.show' },\n LABEL_TAXES_FEES: {\n [TAXES_TYPE.ALL_EXCLUDED]: { id: 'finder.label.excludes_taxes_fees' },\n [TAXES_TYPE.ALL_INCLUDED]: { id: 'finder.label.includes_taxes_fees' },\n [TAXES_TYPE.FEES_EXCLUDED]: { id: 'finder.label.excludes_fees' },\n [TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED]: { id: 'finder.label.includes_fees_excludes_taxes' },\n [TAXES_TYPE.FEES_INCLUDED]: { id: 'finder.label.includes_fees' },\n [TAXES_TYPE.TAXES_EXCLUDED]: { id: 'finder.label.excludes_taxes' },\n [TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED]: { id: 'finder.label.includes_taxes_excludes_fees' },\n [TAXES_TYPE.TAXES_INCLUDED]: { id: 'finder.label.includes_taxes' },\n },\n LABEL_YEARS_OLD: { id: 'common.label.years_old' },\n\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_META_RATE_FOUND: { id: 'finder.notification.meta_rate_found' },\n NOTIFICATION_META_RATE_NOT_FOUND: { id: 'finder.notification.meta_rate_not_found' },\n NOTIFICATION_PROMOCODE_NOT_FOUND: { id: 'finder.notification.promocode_not_found' },\n NOTIFICATION_ROOM_NOT_FOUND: { id: 'finder.notification.room_not_found' },\n NOTIFICATION_OFFER_NOT_FOUND: { id: 'finder.notification.offer_not_found' },\n NOTIFICATION_VALIDATE: {\n [VALIDATE_ERROR.NOT_ENOUGH_ROOMS]: { id: 'finder.notification.not_enough_rooms' },\n [VALIDATE_ERROR.NOT_ENOUGH_ROOMS_FOR_OFFER]: { id: 'finder.notification.not_enough_rooms_for_offer' },\n [VALIDATE_ERROR.NO_SELECTED_ROOMS]: { id: 'finder.notification.no_selected_rooms' },\n [VALIDATE_ERROR.EXTRA_CHANGED]: { id: 'finder.notification.extra_changed' },\n },\n};\n"],"mappings":"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"}
|
|
@@ -117,13 +117,21 @@ body {
|
|
|
117
117
|
transform: translateY(100%);
|
|
118
118
|
transition: transform var(--mirai-ui-motion-expand) var(--mirai-ui-motion-easing);
|
|
119
119
|
width: 100vw;
|
|
120
|
-
z-index: var(--mirai-ui-layer-
|
|
120
|
+
z-index: var(--mirai-ui-layer-content);
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
.footer.visible {
|
|
124
124
|
transform: translateY(0%);
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
+
.footer .expander {
|
|
128
|
+
background-color: var(--mirai-ui-base);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.footer .expander > .button {
|
|
132
|
+
margin: auto;
|
|
133
|
+
}
|
|
134
|
+
|
|
127
135
|
.footer .cartItem {
|
|
128
136
|
box-shadow: inset 0 -1px 0 var(--mirai-ui-content-border);
|
|
129
137
|
gap: var(--mirai-ui-space-XS);
|