@mirai/core 0.3.157 → 0.3.159
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/Core.constants.js +2 -2
- package/build/Core.constants.js.map +1 -1
- package/build/components/Booking/Booking.js +1 -1
- package/build/components/Booking/Booking.js.map +1 -1
- package/build/components/Booking/components/Hotelverse/Hotelverse.js +49 -11
- package/build/components/Booking/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/Finder/Finder.js +1 -1
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js +3 -8
- package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Finder/components/Calendar/helpers/calcTooltips.js +11 -2
- package/build/components/Finder/components/Calendar/helpers/calcTooltips.js.map +1 -1
- package/build/components/Finder/helpers/parseCalendarProps.js +24 -3
- package/build/components/Finder/helpers/parseCalendarProps.js.map +1 -1
- package/build/components/Rates/Rates.Footer.js +1 -1
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/Rates.Unavailability.js +19 -13
- package/build/components/Rates/Rates.Unavailability.js.map +1 -1
- package/build/components/Rates/components/Hotelverse/Hotelverse.js +2 -9
- package/build/components/Rates/components/Hotelverse/Hotelverse.js.map +1 -1
- package/build/components/helpers/addScript.js +14 -0
- package/build/components/helpers/addScript.js.map +1 -0
- package/build/components/helpers/index.js +11 -0
- package/build/components/helpers/index.js.map +1 -1
- package/build/services/Rates/helpers/getOccupationSuggestions.js +12 -7
- package/build/services/Rates/helpers/getOccupationSuggestions.js.map +1 -1
- package/build/services/Rates/helpers/getRooms.js +2 -0
- package/build/services/Rates/helpers/getRooms.js.map +1 -1
- package/package.json +1 -1
- package/build/components/Booking/helpers/constants.js +0 -8
- package/build/components/Booking/helpers/constants.js.map +0 -1
|
@@ -5,26 +5,47 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.parseCalendarProps = void 0;
|
|
7
7
|
var _locale = require("@mirai/locale");
|
|
8
|
+
var _shared__ = require("../../__shared__");
|
|
8
9
|
var _helpers = require("../../helpers");
|
|
9
10
|
var _Calendar = require("../components/Calendar/Calendar.constants");
|
|
10
11
|
var _Finder = require("../Finder.constants");
|
|
12
|
+
const {
|
|
13
|
+
CHILD
|
|
14
|
+
} = _shared__.TYPE_OCCUPATION;
|
|
11
15
|
const TAXES = [_Calendar.TAX, _Calendar.TAX_FREE, _Calendar.TAX_PARTIAL];
|
|
12
16
|
const parseCalendarProps = function () {
|
|
13
17
|
var _variants$find;
|
|
14
18
|
let calendar = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
15
19
|
let id = arguments.length > 1 ? arguments[1] : undefined;
|
|
16
|
-
let
|
|
17
|
-
let
|
|
20
|
+
let occupation = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
21
|
+
let type = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : _Finder.TYPE.HOTEL;
|
|
22
|
+
let unavailability = arguments.length > 4 ? arguments[4] : undefined;
|
|
23
|
+
let variants = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : [];
|
|
18
24
|
const {
|
|
19
25
|
maxDays = 365,
|
|
20
26
|
maxNights: rangeMaxDays = 31,
|
|
21
27
|
nightsForDeal: rangeMinDays,
|
|
22
|
-
prices
|
|
28
|
+
prices = false,
|
|
23
29
|
pricesWithTaxes: pricesLegend
|
|
24
30
|
} = type === _Finder.TYPE.HOTEL ? calendar : {
|
|
25
31
|
...calendar,
|
|
26
32
|
...(((_variants$find = variants.find(item => item.id == id)) === null || _variants$find === void 0 ? void 0 : _variants$find.calendar) || {})
|
|
27
33
|
};
|
|
34
|
+
const adults = occupation.flat().reduce(function (total) {
|
|
35
|
+
let {
|
|
36
|
+
type,
|
|
37
|
+
amount
|
|
38
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
39
|
+
return total + (type !== CHILD ? amount : 0);
|
|
40
|
+
}, 0);
|
|
41
|
+
const children = occupation.flat().reduce(function (total) {
|
|
42
|
+
let {
|
|
43
|
+
type,
|
|
44
|
+
amount
|
|
45
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
46
|
+
return total + (type === CHILD ? amount : 0);
|
|
47
|
+
}, 0);
|
|
48
|
+
const showPrices = prices && (!unavailability || occupation.length === 1 && adults === 2 && children === 0);
|
|
28
49
|
return {
|
|
29
50
|
rangeMaxDays,
|
|
30
51
|
rangeMinDays,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseCalendarProps.js","names":["_locale","require","_helpers","_Calendar","_Finder","TAXES","TAX","TAX_FREE","TAX_PARTIAL","parseCalendarProps","_variants$find","calendar","arguments","length","undefined","id","type","TYPE","HOTEL","variants","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","
|
|
1
|
+
{"version":3,"file":"parseCalendarProps.js","names":["_locale","require","_shared__","_helpers","_Calendar","_Finder","CHILD","TYPE_OCCUPATION","TAXES","TAX","TAX_FREE","TAX_PARTIAL","parseCalendarProps","_variants$find","calendar","arguments","length","undefined","id","occupation","type","TYPE","HOTEL","unavailability","variants","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","pricesWithTaxes","pricesLegend","find","item","adults","flat","reduce","total","amount","children","showPrices","includes","to","dateFormat","dateCalc","Date","CALENDAR_FORMAT","exports"],"sources":["../../../../src/components/Finder/helpers/parseCalendarProps.js"],"sourcesContent":["import { dateCalc, dateFormat } from '@mirai/locale';\n\nimport { TYPE_OCCUPATION } from '../../__shared__';\nimport { CALENDAR_FORMAT } from '../../helpers';\nimport { TAX, TAX_FREE, TAX_PARTIAL } from '../components/Calendar/Calendar.constants';\nimport { TYPE } from '../Finder.constants';\n\nconst { CHILD } = TYPE_OCCUPATION;\nconst TAXES = [TAX, TAX_FREE, TAX_PARTIAL];\n\nexport const parseCalendarProps = (\n calendar = {},\n id,\n occupation = [],\n type = TYPE.HOTEL,\n unavailability,\n variants = [],\n) => {\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices = false,\n pricesWithTaxes: pricesLegend,\n } = type === TYPE.HOTEL ? calendar : { ...calendar, ...(variants.find((item) => item.id == id)?.calendar || {}) };\n\n const adults = occupation.flat().reduce((total, { type, amount } = {}) => total + (type !== CHILD ? amount : 0), 0);\n const children = occupation.flat().reduce((total, { type, amount } = {}) => total + (type === CHILD ? amount : 0), 0);\n const showPrices = prices && (!unavailability || (occupation.length === 1 && adults === 2 && children === 0));\n\n return {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX : undefined,\n showPrices,\n to: dateFormat(dateCalc(new Date(), maxDays, 'days'), CALENDAR_FORMAT),\n };\n};\n"],"mappings":"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"}
|
|
@@ -42,7 +42,7 @@ const Footer = _ref => {
|
|
|
42
42
|
const items = cart.filter(item => item !== undefined);
|
|
43
43
|
const totalPrice = cart.reduce(function (value) {
|
|
44
44
|
let {
|
|
45
|
-
price
|
|
45
|
+
price = 0
|
|
46
46
|
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
47
47
|
return value + price;
|
|
48
48
|
}, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Rates","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxesType","extras","occupation","onSubmit","isMobile","useDevice","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","items","filter","item","undefined","totalPrice","reduce","price","arguments","length","valid","handleSubmit","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","boardName","roomName","index","guests","total","row","key","cartItem","room","Icon","ICON","PERSON","GROUP","GROUPS","Text","small","bold","action","description","concat","lighten","currencyFormat","summary","headline","level","tiny","getLabelTaxes","Button","disabled","large","onPress","L10N","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getLabelTaxes } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({ cart = [], dataSource: { taxesType } = {}, extras, occupation = [], onSubmit = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n return (\n <View className={styles(style.footer, items.length && style.visible)}>\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name: boardName, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={id} className={style.cartItem}>\n <View row className={style.room}>\n <Icon value={guests === 1 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS} />\n <Text small>{guests}</Text>\n </View>\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${boardName}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n {!!taxesType && (\n <Text lighten small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button busy={busy} disabled={!valid} large={!isMobile} onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n );\n};\n\nFooter.displayName = 'Mirai:Core:Rates:Footer';\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n extras: 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 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","_helpers","_Rates","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxesType","extras","occupation","onSubmit","isMobile","useDevice","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","items","filter","item","undefined","totalPrice","reduce","price","arguments","length","valid","handleSubmit","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","boardName","roomName","index","guests","total","row","key","cartItem","room","Icon","ICON","PERSON","GROUP","GROUPS","Text","small","bold","action","description","concat","lighten","currencyFormat","summary","headline","level","tiny","getLabelTaxes","Button","disabled","large","onPress","L10N","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { getLabelTaxes } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({ cart = [], dataSource: { taxesType } = {}, extras, occupation = [], onSubmit = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price = 0 } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n return (\n <View className={styles(style.footer, items.length && style.visible)}>\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name: boardName, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={id} className={style.cartItem}>\n <View row className={style.room}>\n <Icon value={guests === 1 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS} />\n <Text small>{guests}</Text>\n </View>\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${boardName}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n {!!taxesType && (\n <Text lighten small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button busy={busy} disabled={!valid} large={!isMobile} onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n );\n};\n\nFooter.displayName = 'Mirai:Core:Rates:Footer';\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n extras: 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 onSubmit: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
|
|
@@ -65,11 +65,17 @@ const Unavailability = _ref => {
|
|
|
65
65
|
}
|
|
66
66
|
});
|
|
67
67
|
};
|
|
68
|
-
const handleOccupation =
|
|
68
|
+
const handleOccupation = function () {
|
|
69
|
+
let rooms = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
69
70
|
set({
|
|
70
71
|
finder: {
|
|
71
72
|
...finder,
|
|
72
|
-
occupation
|
|
73
|
+
occupation: rooms.map(function () {
|
|
74
|
+
let {
|
|
75
|
+
occupation
|
|
76
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
77
|
+
return occupation;
|
|
78
|
+
})
|
|
73
79
|
}
|
|
74
80
|
});
|
|
75
81
|
};
|
|
@@ -115,9 +121,6 @@ const Unavailability = _ref => {
|
|
|
115
121
|
const {
|
|
116
122
|
accommodationType = hotelAccommodationType
|
|
117
123
|
} = variants[id] || {};
|
|
118
|
-
const accommodation = (0, _helpers2.getAccommodationLabel)({
|
|
119
|
-
type: accommodationType
|
|
120
|
-
}, translate);
|
|
121
124
|
const hasSuggestions = calendarSuggestions.length > 0 || occupationSuggestions.length > 0;
|
|
122
125
|
const isCalendar = calendarSuggestions.length > 0;
|
|
123
126
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
@@ -188,25 +191,28 @@ const Unavailability = _ref => {
|
|
|
188
191
|
className: style.items
|
|
189
192
|
}, occupationSuggestions.map((_ref2, index) => {
|
|
190
193
|
let {
|
|
191
|
-
|
|
194
|
+
rooms = [],
|
|
192
195
|
price = 0,
|
|
193
196
|
taxes
|
|
194
197
|
} = _ref2;
|
|
195
198
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
196
|
-
key: "
|
|
199
|
+
key: "rooms:".concat(index),
|
|
197
200
|
className: style.card
|
|
198
201
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
199
202
|
bold: true,
|
|
200
203
|
capitalize: true,
|
|
201
204
|
headline: !isMobile,
|
|
202
205
|
level: 3
|
|
203
|
-
}, "".concat(
|
|
204
|
-
plural:
|
|
206
|
+
}, "".concat(rooms.length, " ").concat((0, _helpers2.getAccommodationLabel)({
|
|
207
|
+
plural: rooms.length > 1,
|
|
205
208
|
type: accommodationType
|
|
206
209
|
}, translate))), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
207
210
|
className: style.distribution
|
|
208
|
-
},
|
|
209
|
-
let
|
|
211
|
+
}, rooms.map(function () {
|
|
212
|
+
let {
|
|
213
|
+
name,
|
|
214
|
+
occupation = []
|
|
215
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
210
216
|
let roomIndex = arguments.length > 1 ? arguments[1] : undefined;
|
|
211
217
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
212
218
|
key: "occupation:".concat(index, ":room:").concat(roomIndex),
|
|
@@ -214,7 +220,7 @@ const Unavailability = _ref => {
|
|
|
214
220
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
215
221
|
action: true,
|
|
216
222
|
capitalize: true
|
|
217
|
-
},
|
|
223
|
+
}, name), occupation.map(function () {
|
|
218
224
|
let type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
219
225
|
let typeIndex = arguments.length > 1 ? arguments[1] : undefined;
|
|
220
226
|
return /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
@@ -226,7 +232,7 @@ const Unavailability = _ref => {
|
|
|
226
232
|
})), renderPrice({
|
|
227
233
|
price,
|
|
228
234
|
taxes,
|
|
229
|
-
onPress: () => handleOccupation(
|
|
235
|
+
onPress: () => handleOccupation(rooms)
|
|
230
236
|
}));
|
|
231
237
|
})), hasSuggestions && hotels.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
232
238
|
bold: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_helpers2","_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","Unavailability","_ref","calendar","hotels","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","club","currency","finder","hotel","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","handleFinder","isCalendar","focus","renderPrice","price","onPress","undefined","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","lighten","getLabelTaxes","Button","ACTION_VIEW_MORE","place","id","accommodation","getAccommodationLabel","type","hasSuggestions","unavailability","banner","Icon","ICON","CALENDAR_BUSY","PERSON_OFF","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_REFINE_SEARCH_CLUB","LABEL_REFINE_SEARCH","name","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","items","map","taxes","index","concat","card","dateFormat","DATE_FORMAT","anchorDates","action","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","plural","distribution","roomIndex","room","typeIndex","getOccupationLabel","item","CardHotel","exports","displayName","propTypes","PropTypes","shape","arrayOf","number"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, useLocale } from '@mirai/locale';\nimport { Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { EVENT } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotels = [],\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { set, value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const {\n club = {},\n currency,\n finder = {},\n hotel: { accommodationType: hotelAccommodationType, variants = {} } = {},\n } = store;\n\n const handleCalendar = (from, to) => {\n set({ finder: { ...finder, calendar: [from, to] } });\n };\n\n const handleOccupation = (occupation) => {\n set({ finder: { ...finder, occupation } });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, isCalendar ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text lighten small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const accommodation = getAccommodationLabel({ type: accommodationType }, translate);\n const hasSuggestions = calendarSuggestions.length > 0 || occupationSuggestions.length > 0;\n const isCalendar = calendarSuggestions.length > 0;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon value={isCalendar ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} />\n <View wide className={style.texts}>\n <Text headline level={isMobile ? 3 : 2}>\n {isCalendar\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n <Text small={isMobile}>\n {translate(hotels.length ? L10N.LABEL_REFINE_SEARCH_CLUB : L10N.LABEL_REFINE_SEARCH, {\n club: club.name,\n })}\n </Text>\n {/* ! TODO: Should render restrictions */}\n {/* <Text small>\n Lorem, ipsum dolor sit amet consectetur adipisicing elit. Quidem voluptatibus earum repellendus tempore,\n numquam, natus quibusdam cupiditate, iusto ab quos odio culpa laboriosam vitae sed sit deserunt molestiae\n quia! Tenetur?\n </Text> */}\n </View>\n <Button wide={isMobile} onPress={handleFinder}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {isCalendar && (\n <View row={!isMobile} className={style.items}>\n {calendarSuggestions.map(({ from, to, price = 0, taxes } = {}, index) => (\n <View key={`calendar:${index}`} className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n ))}\n </View>\n )}\n\n {occupationSuggestions.length > 0 && (\n <View row={!isMobile} className={style.items}>\n {occupationSuggestions.map(({ occupation = [], price = 0, taxes }, index) => (\n <View key={`occupation:${index}`} className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${occupation.length} ${getAccommodationLabel(\n { plural: occupation.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {occupation.map((distribution = [], roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>{`${accommodation} ${roomIndex + 1}`}</Text>\n {distribution.map((type = {}, typeIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${typeIndex}`} lighten small>\n {getOccupationLabel(type, translate)}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(occupation) })}\n </View>\n ))}\n </View>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <Text bold headline>\n {club.name}\n </Text>\n )}\n <View row={!isMobile} className={style.items}>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} />\n ))}\n </View>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Rates.Unavailability.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_helpers","_Rates","_Rates2","style","_helpers2","_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","Unavailability","_ref","calendar","hotels","suggestions","calendarSuggestions","description","occupation","occupationSuggestions","taxesType","isMobile","width","useDevice","locale","translate","useLocale","value","store","useStore","useEffect","Event","publish","EVENT","FINDER","club","currency","finder","hotel","accommodationType","hotelAccommodationType","variants","handleCalendar","from","to","handleOccupation","rooms","undefined","map","handleFinder","isCalendar","focus","renderPrice","price","onPress","createElement","View","row","className","Text","small","L10N","LABEL_FROM","bold","headline","level","currencyFormat","maximumFractionDigits","lighten","getLabelTaxes","Button","ACTION_VIEW_MORE","place","id","hasSuggestions","unavailability","banner","Icon","ICON","CALENDAR_BUSY","PERSON_OFF","wide","texts","LABEL_NO_AVAILABILITY_CALENDAR","LABEL_NO_AVAILABILITY_OCCUPATION","LABEL_REFINE_SEARCH_CLUB","LABEL_REFINE_SEARCH","name","ACTION_REFINE_SEARCH","LABEL_AVAILABLE_ALTERNATIVES","items","taxes","index","concat","card","dateFormat","DATE_FORMAT","anchorDates","action","dateDiff","days","LABEL_NIGHTS","_ref2","capitalize","getAccommodationLabel","plural","type","distribution","roomIndex","room","typeIndex","getOccupationLabel","item","CardHotel","exports","displayName","propTypes","PropTypes","shape","arrayOf","number"],"sources":["../../../src/components/Rates/Rates.Unavailability.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, dateFormat, useLocale } from '@mirai/locale';\nimport { Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { CardHotel } from './components';\nimport { getLabelTaxes } from './helpers';\nimport { DATE_FORMAT } from './Rates.constants';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { EVENT } from '../helpers';\nimport { getAccommodationLabel, getOccupationLabel, ICON } from '../helpers';\n\nconst Unavailability = ({\n calendar = {},\n hotels = [],\n suggestions: { calendar: calendarSuggestions = [], description, occupation: occupationSuggestions = [] } = {},\n taxesType,\n}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const { set, value: store } = useStore();\n\n useEffect(() => {\n Event.publish(EVENT.FINDER, { calendar });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const {\n club = {},\n currency,\n finder = {},\n hotel: { accommodationType: hotelAccommodationType, variants = {} } = {},\n } = store;\n\n const handleCalendar = (from, to) => {\n set({ finder: { ...finder, calendar: [from, to] } });\n };\n\n const handleOccupation = (rooms = []) => {\n set({ finder: { ...finder, occupation: rooms.map(({ occupation } = {}) => occupation) } });\n };\n\n const handleFinder = () => {\n Event.publish(EVENT.FINDER, isCalendar ? { calendar, focus: 'calendar' } : { focus: 'occupation' });\n };\n\n const renderPrice = ({ price, onPress } = {}) => (\n <View row className={style.price}>\n <View>\n <Text small>{translate(L10N.LABEL_FROM)}</Text>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n {!!taxesType && (\n <Text lighten small>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n </View>\n\n <Button onPress={onPress}>{translate(L10N.ACTION_VIEW_MORE)}</Button>\n </View>\n );\n\n const { place: { id: [id] = [] } = {} } = finder;\n const { accommodationType = hotelAccommodationType } = variants[id] || {};\n\n const hasSuggestions = calendarSuggestions.length > 0 || occupationSuggestions.length > 0;\n const isCalendar = calendarSuggestions.length > 0;\n\n return (\n <View className={style.unavailability}>\n <View row={!isMobile} className={style.banner}>\n <Icon value={isCalendar ? ICON.CALENDAR_BUSY : ICON.PERSON_OFF} />\n <View wide className={style.texts}>\n <Text headline level={isMobile ? 3 : 2}>\n {isCalendar\n ? description || translate(L10N.LABEL_NO_AVAILABILITY_CALENDAR)\n : translate(L10N.LABEL_NO_AVAILABILITY_OCCUPATION)}\n </Text>\n <Text small={isMobile}>\n {translate(hotels.length ? L10N.LABEL_REFINE_SEARCH_CLUB : L10N.LABEL_REFINE_SEARCH, {\n club: club.name,\n })}\n </Text>\n {/* ! TODO: Should render restrictions */}\n {/* <Text small>\n Lorem, ipsum dolor sit amet consectetur adipisicing elit. Quidem voluptatibus earum repellendus tempore,\n numquam, natus quibusdam cupiditate, iusto ab quos odio culpa laboriosam vitae sed sit deserunt molestiae\n quia! Tenetur?\n </Text> */}\n </View>\n <Button wide={isMobile} onPress={handleFinder}>\n {translate(L10N.ACTION_REFINE_SEARCH)}\n </Button>\n </View>\n\n {hasSuggestions && (\n <Text bold headline>\n {translate(L10N.LABEL_AVAILABLE_ALTERNATIVES)}\n </Text>\n )}\n\n {isCalendar && (\n <View row={!isMobile} className={style.items}>\n {calendarSuggestions.map(({ from, to, price = 0, taxes } = {}, index) => (\n <View key={`calendar:${index}`} className={style.card}>\n <View>\n <View row>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(from, { locale, ...DATE_FORMAT })}\n </Text>\n <Text className={style.anchorDates}>─</Text>\n <Text bold headline={!isMobile} level={3}>\n {dateFormat(to || focus, { locale, ...DATE_FORMAT })}\n </Text>\n </View>\n <Text action={!isMobile} small={isMobile}>{`${dateDiff(from, to).days} ${translate(\n L10N.LABEL_NIGHTS,\n )}`}</Text>\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleCalendar(from, to) })}\n </View>\n ))}\n </View>\n )}\n\n {occupationSuggestions.length > 0 && (\n <View row={!isMobile} className={style.items}>\n {occupationSuggestions.map(({ rooms = [], price = 0, taxes }, index) => (\n <View key={`rooms:${index}`} className={style.card}>\n <Text bold capitalize headline={!isMobile} level={3}>\n {`${rooms.length} ${getAccommodationLabel(\n { plural: rooms.length > 1, type: accommodationType },\n translate,\n )}`}\n </Text>\n\n <View className={style.distribution}>\n {rooms.map(({ name, occupation = [] } = {}, roomIndex) => (\n <View key={`occupation:${index}:room:${roomIndex}`} className={style.room}>\n <Text action capitalize>\n {name}\n </Text>\n {occupation.map((type = {}, typeIndex) => (\n <Text key={`occupation:${index}:room:${roomIndex}:${typeIndex}`} lighten small>\n {getOccupationLabel(type, translate)}\n </Text>\n ))}\n </View>\n ))}\n </View>\n\n {renderPrice({ price, taxes, onPress: () => handleOccupation(rooms) })}\n </View>\n ))}\n </View>\n )}\n\n {hasSuggestions && hotels.length > 0 && (\n <Text bold headline>\n {club.name}\n </Text>\n )}\n <View row={!isMobile} className={style.items}>\n {hotels.map((item, index) => (\n <CardHotel key={`${item.index || index}:${width}`} {...item} />\n ))}\n </View>\n </View>\n );\n};\n\nUnavailability.displayName = 'Mirai:Core:Rates:Unavailability';\n\nUnavailability.propTypes = {\n calendar: PropTypes.shape({}),\n hotels: PropTypes.arrayOf(PropTypes.shape({})),\n suggestions: PropTypes.shape({\n calendar: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(PropTypes.shape({})),\n }),\n taxesType: PropTypes.number,\n};\n\nexport { Unavailability };\n"],"mappings":"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"}
|
|
@@ -73,16 +73,9 @@ const Hotelverse = _ref => {
|
|
|
73
73
|
}, [checkIn, checkOut, multiRoom]);
|
|
74
74
|
(0, _react.useEffect)(() => {
|
|
75
75
|
const el = container.current;
|
|
76
|
-
const addScript = url => {
|
|
77
|
-
if (!open) return undefined;
|
|
78
|
-
const script = document.createElement('script');
|
|
79
|
-
script.setAttribute('src', url);
|
|
80
|
-
el === null || el === void 0 ? void 0 : el.appendChild(script);
|
|
81
|
-
return script;
|
|
82
|
-
};
|
|
83
76
|
const cdn = process.env.CDN_HOTELVERSE;
|
|
84
|
-
const scriptEmbed = addScript("".concat(cdn, "/scripts/embed.js"));
|
|
85
|
-
const scriptListener = addScript("".concat(cdn, "/scripts/interfaceListener.js"));
|
|
77
|
+
const scriptEmbed = open && (0, _helpers.addScript)(el, "".concat(cdn, "/scripts/embed.js"));
|
|
78
|
+
const scriptListener = open && (0, _helpers.addScript)(el, "".concat(cdn, "/scripts/interfaceListener.js"));
|
|
86
79
|
if (open) {
|
|
87
80
|
document.body.classList.add('hotelverse-open');
|
|
88
81
|
window.callbackSelectRoom = function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","FEATURE","HOTELVERSE","Hotelverse","_ref","country","infantAge","items","multiRoom","taxes","onSelect","others","isMobile","useDevice","translate","useLocale","value","club","discount","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","session","urlParams","idtokenprovider","idHotel","showBanner","show","useStore","open","setOpen","useState","token","setToken","container","useRef","useEffect","ServiceFeatures","ServiceHotelverse","getToken","checkin","dateFormatBase","format","CALENDAR_FORMAT","el","current","addScript","url","undefined","script","document","createElement","setAttribute","appendChild","cdn","process","env","CDN_HOTELVERSE","scriptEmbed","concat","scriptListener","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","arguments","length","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","removeChild","dateFormat","date","delimiter","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","Fragment","Pressable","onPress","className","pressable","center","wide","Icon","ICON","THREE_D","Text","action","bold","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","modal","ref","toUpperCase","exports","displayName","propTypes","PropTypes","string","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceHotelVerse as ServiceHotelverse } from '@mirai/services';\nimport { Icon, Modal, Pressable, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { CALENDAR_FORMAT, ICON } from '../../../helpers';\n\nconst FEATURE = { HOTELVERSE: 'hotelverse' };\n\nconst Hotelverse = ({ country, infantAge, items = [], multiRoom, taxes, onSelect = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n club: { discount } = {},\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation] = [], promocode = '' } = {},\n session,\n urlParams: { idtokenprovider: idHotel, showBanner: show } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n const [token, setToken] = useState();\n\n const container = useRef(null);\n\n useEffect(() => {\n if ((show === 'true' || ServiceFeatures.get(FEATURE.HOTELVERSE, idHotel)) && checkIn && !multiRoom) {\n (async () => {\n setToken(\n await ServiceHotelverse.getToken({ checkin: dateFormatBase(checkIn, { format: CALENDAR_FORMAT }), idHotel }),\n );\n })();\n } else setToken();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checkIn, checkOut, multiRoom]);\n\n useEffect(() => {\n const el = container.current;\n const addScript = (url) => {\n if (!open) return undefined;\n\n const script = document.createElement('script');\n script.setAttribute('src', url);\n el?.appendChild(script);\n\n return script;\n };\n const cdn = process.env.CDN_HOTELVERSE;\n const scriptEmbed = addScript(`${cdn}/scripts/embed.js`);\n const scriptListener = addScript(`${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) el?.removeChild(scriptEmbed);\n if (scriptListener) el?.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return token ? (\n <>\n <Pressable\n onPress={() => setOpen(!open)}\n className={[style.pressable, style.center, others.className, isMobile && discount && !session && style.wide]}\n >\n <Icon value={ICON.THREE_D} />\n <Text action bold>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Text>\n </Pressable>\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div ref={container}>\n <div\n id=\"hv\"\n data-hvexthotelid={idHotel}\n data-hvclientid=\"6\"\n data-hvproduct=\"BookYourRoom\"\n data-hvaccesstokenhv={token}\n data-hvcommandsinterface={commandInterface}\n data-hvlanguage={language.toUpperCase()}\n data-hvsearch={search}\n data-hvcurrency={currency}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Hotelverse.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Hotelverse","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","FEATURE","HOTELVERSE","Hotelverse","_ref","country","infantAge","items","multiRoom","taxes","onSelect","others","isMobile","useDevice","translate","useLocale","value","club","discount","currency","language","finder","calendar","checkIn","checkOut","occupation","promocode","session","urlParams","idtokenprovider","idHotel","showBanner","show","useStore","open","setOpen","useState","token","setToken","container","useRef","useEffect","ServiceFeatures","ServiceHotelverse","getToken","checkin","dateFormatBase","format","CALENDAR_FORMAT","el","current","cdn","process","env","CDN_HOTELVERSE","scriptEmbed","addScript","concat","scriptListener","document","body","classList","add","window","callbackSelectRoom","hvIsOr","hvLocator","idHotelverse","hvRoomNumber","roomNumber","resultKey","arguments","length","undefined","boardId","replace","board","flatMap","boards","find","id","subjectToAvailability","remove","removeChild","dateFormat","date","delimiter","btoa","commandInterface","JSON","stringify","onSelectRoom","callback","enabled","method","customParams","amount","adults","type","TYPE_OCCUPATION","CHILD","ages","childAges","children","filter","age","infants","search","paxes","taxIncluded","createElement","Fragment","Pressable","onPress","className","pressable","center","wide","Icon","ICON","THREE_D","Text","action","bold","L10N","ACTION_HOTEL_VERSE","Modal","blur","fit","portal","title","LABEL_HOTEL_VERSE","visible","onClose","modal","ref","toUpperCase","exports","displayName","propTypes","PropTypes","string","number","array","bool","func"],"sources":["../../../../../src/components/Rates/components/Hotelverse/Hotelverse.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateFormat as dateFormatBase, useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceHotelVerse as ServiceHotelverse } from '@mirai/services';\nimport { Icon, Modal, Pressable, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './Hotelverse.l10n';\nimport * as style from './Hotelverse.module.css';\nimport { TYPE_OCCUPATION } from '../../../__shared__';\nimport { addScript, CALENDAR_FORMAT, ICON } from '../../../helpers';\n\nconst FEATURE = { HOTELVERSE: 'hotelverse' };\n\nconst Hotelverse = ({ country, infantAge, items = [], multiRoom, taxes, onSelect = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n club: { discount } = {},\n currency,\n language,\n finder: { calendar: [checkIn, checkOut] = [], occupation: [occupation] = [], promocode = '' } = {},\n session,\n urlParams: { idtokenprovider: idHotel, showBanner: show } = {},\n } = {},\n } = useStore();\n\n const [open, setOpen] = useState(false);\n const [token, setToken] = useState();\n\n const container = useRef(null);\n\n useEffect(() => {\n if ((show === 'true' || ServiceFeatures.get(FEATURE.HOTELVERSE, idHotel)) && checkIn && !multiRoom) {\n (async () => {\n setToken(\n await ServiceHotelverse.getToken({ checkin: dateFormatBase(checkIn, { format: CALENDAR_FORMAT }), idHotel }),\n );\n })();\n } else setToken();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checkIn, checkOut, multiRoom]);\n\n useEffect(() => {\n const el = container.current;\n const cdn = process.env.CDN_HOTELVERSE;\n const scriptEmbed = open && addScript(el, `${cdn}/scripts/embed.js`);\n const scriptListener = open && addScript(el, `${cdn}/scripts/interfaceListener.js`);\n\n if (open) {\n document.body.classList.add('hotelverse-open');\n\n window.callbackSelectRoom = ([{ hvIsOr, hvLocator: idHotelverse, hvRoomNumber: roomNumber, resultKey }] = []) => {\n setOpen(false);\n\n const boardId = resultKey.replace(/\\|/g, '--');\n const board = items.flatMap(({ boards } = {}) => boards).find(({ id } = {}) => id === boardId);\n\n onSelect(board, { idHotelverse, roomNumber, subjectToAvailability: hvIsOr });\n };\n }\n\n return () => {\n document.body.classList.remove('hotelverse-open');\n if (scriptEmbed) el?.removeChild(scriptEmbed);\n if (scriptListener) el?.removeChild(scriptListener);\n window.callbackSelectRoom = undefined;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open]);\n\n const dateFormat = (date) => dateFormatBase(date, { delimiter: '-', format: 'YYYY-MM-DD' });\n\n const { btoa } = window;\n const commandInterface = btoa(\n JSON.stringify({\n onSelectRoom: {\n callback: 'callbackSelectRoom',\n enabled: true,\n method: 'PostMessage',\n customParams: [],\n },\n }),\n );\n\n const { amount: adults = 0 } = occupation.find(({ type } = {}) => type !== TYPE_OCCUPATION.CHILD) || {};\n const { ages: childAges = [] } = occupation.find(({ type } = {}) => type === TYPE_OCCUPATION.CHILD) || {};\n const children = childAges.filter((age) => age > infantAge).length;\n const infants = childAges.filter((age) => age < infantAge).length;\n const search = btoa(\n JSON.stringify({\n checkIn: dateFormat(checkIn),\n checkOut: dateFormat(checkOut),\n paxes: [{ adults, children, infants, childAges }],\n taxIncluded: !!taxes,\n currency,\n country,\n language,\n promocode,\n }),\n );\n\n return token ? (\n <>\n <Pressable\n onPress={() => setOpen(!open)}\n className={[style.pressable, style.center, others.className, isMobile && discount && !session && style.wide]}\n >\n <Icon value={ICON.THREE_D} />\n <Text action bold>\n {translate(L10N.ACTION_HOTEL_VERSE)}\n </Text>\n </Pressable>\n <Modal\n blur\n fit\n portal\n title={translate(L10N.LABEL_HOTEL_VERSE)}\n visible={open}\n onClose={() => setOpen(false)}\n data-testid=\"hv-modal\"\n className={style.modal}\n >\n {open && (\n <div ref={container}>\n <div\n id=\"hv\"\n data-hvexthotelid={idHotel}\n data-hvclientid=\"6\"\n data-hvproduct=\"BookYourRoom\"\n data-hvaccesstokenhv={token}\n data-hvcommandsinterface={commandInterface}\n data-hvlanguage={language.toUpperCase()}\n data-hvsearch={search}\n data-hvcurrency={currency}\n ></div>\n </div>\n )}\n </Modal>\n </>\n ) : null;\n};\n\nHotelverse.displayName = 'Mirai:Core:Rates:Hotelverse';\n\nHotelverse.propTypes = {\n country: PropTypes.string,\n infantAge: PropTypes.number,\n items: PropTypes.array,\n multiRoom: PropTypes.bool,\n taxes: PropTypes.string,\n onSelect: PropTypes.func,\n};\n\nexport { Hotelverse };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.addScript = void 0;
|
|
7
|
+
const addScript = (el, url) => {
|
|
8
|
+
const script = document.createElement('script');
|
|
9
|
+
script.setAttribute('src', url);
|
|
10
|
+
el === null || el === void 0 ? void 0 : el.appendChild(script);
|
|
11
|
+
return script;
|
|
12
|
+
};
|
|
13
|
+
exports.addScript = addScript;
|
|
14
|
+
//# sourceMappingURL=addScript.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addScript.js","names":["addScript","el","url","script","document","createElement","setAttribute","appendChild","exports"],"sources":["../../../src/components/helpers/addScript.js"],"sourcesContent":["export const addScript = (el, url) => {\n const script = document.createElement('script');\n script.setAttribute('src', url);\n el?.appendChild(script);\n\n return script;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,SAAS,GAAGA,CAACC,EAAE,EAAEC,GAAG,KAAK;EACpC,MAAMC,MAAM,GAAGC,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;EAC/CF,MAAM,CAACG,YAAY,CAAC,KAAK,EAAEJ,GAAG,CAAC;EAC/BD,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEM,WAAW,CAACJ,MAAM,CAAC;EAEvB,OAAOA,MAAM;AACf,CAAC;AAACK,OAAA,CAAAR,SAAA,GAAAA,SAAA"}
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
var _addScript = require("./addScript");
|
|
7
|
+
Object.keys(_addScript).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _addScript[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _addScript[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
6
17
|
var _constants = require("./constants");
|
|
7
18
|
Object.keys(_constants).forEach(function (key) {
|
|
8
19
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_addScript","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_constants","_generateId","_getAccommodationLabel","_getAccommodationType","_getAgeRange","_getButtonPaymentKey","_getCalendarCaption","_getCountryCode","_getGuestLabel","_getOccupationLabel","_getOccupationSummary","_getRoomOccupationLabel","_ICON","_isJest","_opacity","_parseHtml","_parseToParties","_testPassword","_toQueryString","_toUrlParams","_trace"],"sources":["../../../src/components/helpers/index.js"],"sourcesContent":["export * from './addScript';\nexport * from './constants';\nexport * from './generateId';\nexport * from './getAccommodationLabel';\nexport * from './getAccommodationType';\nexport * from './getAgeRange';\nexport * from './getButtonPaymentKey';\nexport * from './getCalendarCaption';\nexport * from './getCountryCode';\nexport * from './getGuestLabel';\nexport * from './getOccupationLabel';\nexport * from './getOccupationSummary';\nexport * from './getRoomOccupationLabel';\nexport * from './ICON';\nexport * from './isJest';\nexport * from './opacity';\nexport * from './parseHtml';\nexport * from './parseToParties';\nexport * from './testPassword';\nexport * from './toQueryString';\nexport * from './toUrlParams';\nexport * from './trace';\n"],"mappings":"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"}
|
|
@@ -75,11 +75,12 @@ const getOccupationSuggestions = _ref => {
|
|
|
75
75
|
})) {
|
|
76
76
|
const initAges = [...agesChildren].filter(age => age !== ageBaby);
|
|
77
77
|
suggestions.push({
|
|
78
|
-
|
|
78
|
+
rooms: suggestion.map(function () {
|
|
79
79
|
let {
|
|
80
80
|
adults,
|
|
81
81
|
babies,
|
|
82
|
-
children
|
|
82
|
+
children,
|
|
83
|
+
name
|
|
83
84
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
84
85
|
const occupation = [];
|
|
85
86
|
if (adults > 0) {
|
|
@@ -96,7 +97,10 @@ const getOccupationSuggestions = _ref => {
|
|
|
96
97
|
amount: children + babies,
|
|
97
98
|
type: CHILD
|
|
98
99
|
});
|
|
99
|
-
return
|
|
100
|
+
return {
|
|
101
|
+
name,
|
|
102
|
+
occupation
|
|
103
|
+
};
|
|
100
104
|
}),
|
|
101
105
|
price: suggestion.reduce(function (total) {
|
|
102
106
|
let {
|
|
@@ -146,6 +150,7 @@ const getOccupationSuggestions = _ref => {
|
|
|
146
150
|
adults: room.adults,
|
|
147
151
|
children: room.children,
|
|
148
152
|
babies: room.babies,
|
|
153
|
+
name: room.name,
|
|
149
154
|
price: room.price
|
|
150
155
|
}]
|
|
151
156
|
});
|
|
@@ -172,14 +177,14 @@ const getOccupationSuggestions = _ref => {
|
|
|
172
177
|
}] = rooms || [];
|
|
173
178
|
return suggestions.map(function () {
|
|
174
179
|
let {
|
|
175
|
-
|
|
176
|
-
|
|
180
|
+
price,
|
|
181
|
+
rooms
|
|
177
182
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
178
183
|
return {
|
|
179
184
|
hasFees,
|
|
180
185
|
hasTaxes,
|
|
181
|
-
|
|
182
|
-
|
|
186
|
+
price,
|
|
187
|
+
rooms
|
|
183
188
|
};
|
|
184
189
|
}).sort((a, b) => a.price - b.price);
|
|
185
190
|
};
|