@mirai/core 0.4.589 → 0.4.591

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.
@@ -1 +1 @@
1
- {"version":3,"file":"BookingDetails.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingDetails","_BookingDetails2","style","_","_helpers","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","BookingDetails","_ref","dataSource","expanded","propExpanded","others","isDesktop","useDevice","translate","useLocale","value","config","accomodation","occupation","variants","hotel","id","hotelId","urlParams","roomNumberBySelectedRoom","useStore","setExpanded","useState","useEffect","details","items","extras","MAX_VISIBLE_DETAILS","handlePress","Event","publish","EVENT","METRICS","METRICS_EVENTS","BOOKING_INTERACTION","action","element_clicked","currency","propsTable","roomNumber","getRoomNumber","multiRoom","createElement","View","className","styles","Text","bold","headline","L10N","LABEL_BOOKING_DETAILS","slice","undefined","map","_variants$find","amount","image","observations","adults","babies","children","rate","type","key","wide","row","item","backgroundImage","concat","inline","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","replace","trim","light","small","getRoomOccupationLabel","find","_ref2","Number","BookingTable","showTotal","Fragment","label","LABEL_EXTRAS","LABEL_OBSERVATIONS","index","LABEL_BOOKING_EXTRAS","ButtonMore","onPress","buttonMore","testId","exports","displayName","propTypes","PropTypes","shape","bool"],"sources":["../../../../src/components/__shared__/BookingDetails/BookingDetails.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { MAX_VISIBLE_DETAILS } from './BookingDetails.constants';\nimport { L10N } from './BookingDetails.l10n';\nimport * as style from './BookingDetails.module.css';\nimport { BookingTable, ButtonMore } from '..';\nimport { EVENT, getRoomNumber, getRoomOccupationLabel, METRICS_EVENTS } from '../../helpers';\n\nconst BookingDetails = ({ dataSource = {}, expanded: propExpanded = false, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n config: { accomodation: { occupation = [], variants = [] } = {} } = {},\n hotel: { id: hotelId } = {},\n urlParams: { roomNumberBySelectedRoom } = {},\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(propExpanded);\n\n useEffect(() => {\n const { details: [{ items = [] } = {}] = [], extras = [] } = dataSource;\n setExpanded(!isDesktop || (items.length <= MAX_VISIBLE_DETAILS && extras.length === 0));\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n setExpanded(propExpanded);\n }, [propExpanded]);\n\n const handlePress = () => {\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.BOOKING_INTERACTION,\n action: 'button_click',\n element_clicked: 'view_more',\n });\n setExpanded(true);\n };\n\n const { currency, details = [], extras = [] } = dataSource;\n const propsTable = { currency };\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const multiRoom = details.length > 1;\n\n return (\n <View {...others} className={styles(style.details, others.className)}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_DETAILS)}\n </Text>\n\n {details\n .slice(0, expanded ? undefined : 1)\n .map(\n (\n {\n amount,\n extras = [],\n image,\n items = [],\n observations = [],\n occupation: { adults, babies, children } = {},\n rate,\n type,\n } = {},\n key,\n ) => (\n <View key={key} wide>\n <View row className={style.item}>\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n <View>\n <View row className={style.inline}>\n <Text bold>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n <Text action>{rate.replace(`${type}:`, '').trim()}</Text>\n <Text light small>\n {getRoomOccupationLabel({\n adults,\n babies,\n children,\n dataSource: variants.find(({ id }) => id === Number(hotelId))?.occupation || occupation,\n translate,\n })}\n </Text>\n </View>\n </View>\n\n <BookingTable\n {...propsTable}\n dataSource={items.slice(0, expanded ? undefined : MAX_VISIBLE_DETAILS)}\n showTotal={multiRoom && expanded}\n />\n\n {expanded && (\n <>\n <BookingTable {...propsTable} dataSource={extras} label={translate(L10N.LABEL_EXTRAS)} />\n\n {observations.length > 0 && (\n <View className={style.observations}>\n <Text bold small>\n {translate(L10N.LABEL_OBSERVATIONS)}\n </Text>\n {observations.map((item, index) => (\n <Text key={index} small>\n {item}\n </Text>\n ))}\n </View>\n )}\n </>\n )}\n </View>\n ),\n )}\n\n {expanded && <BookingTable {...propsTable} dataSource={extras} label={translate(L10N.LABEL_BOOKING_EXTRAS)} />}\n\n {isDesktop && !expanded && <ButtonMore onPress={handlePress} className={style.buttonMore} testId=\"button-more\" />}\n </View>\n );\n};\n\nBookingDetails.displayName = 'Mirai:Core:BookingDetails';\n\nBookingDetails.propTypes = {\n dataSource: PropTypes.shape({}),\n expanded: PropTypes.bool,\n};\n\nexport { BookingDetails };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BookingDetails.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingDetails","_BookingDetails2","style","_","_Core","_helpers","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","BookingDetails","_ref","dataSource","expanded","propExpanded","others","isDesktop","useDevice","translate","useLocale","value","config","accomodation","occupation","variants","hotel","id","hotelId","urlParams","roomNumberBySelectedRoom","variant","useStore","setExpanded","useState","useEffect","details","items","extras","MAX_VISIBLE_DETAILS","handlePress","Event","publish","EVENT","METRICS","METRICS_EVENTS","BOOKING_INTERACTION","action","element_clicked","currency","propsTable","roomNumber","getRoomNumber","multiRoom","createElement","View","className","styles","Text","bold","headline","L10N","LABEL_BOOKING_DETAILS","slice","undefined","map","_variants$find","amount","image","observations","adults","babies","children","rate","type","key","wide","row","item","backgroundImage","concat","inline","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","replace","trim","light","small","getRoomOccupationLabel","find","_ref2","Number","BookingTable","showTotal","Fragment","label","LABEL_EXTRAS","LABEL_OBSERVATIONS","index","LABEL_BOOKING_EXTRAS","VARIANT","B","ButtonMore","onPress","buttonMore","testId","exports","displayName","propTypes","PropTypes","shape","bool"],"sources":["../../../../src/components/__shared__/BookingDetails/BookingDetails.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, ICON, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { MAX_VISIBLE_DETAILS } from './BookingDetails.constants';\nimport { L10N } from './BookingDetails.l10n';\nimport * as style from './BookingDetails.module.css';\nimport { BookingTable, ButtonMore } from '..';\nimport { VARIANT } from '../../../Core.constants';\nimport { EVENT, getRoomNumber, getRoomOccupationLabel, METRICS_EVENTS } from '../../helpers';\n\nconst BookingDetails = ({ dataSource = {}, expanded: propExpanded = false, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n config: { accomodation: { occupation = [], variants = [] } = {} } = {},\n hotel: { id: hotelId } = {},\n urlParams: { roomNumberBySelectedRoom } = {},\n variant,\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(propExpanded);\n\n useEffect(() => {\n const { details: [{ items = [] } = {}] = [], extras = [] } = dataSource;\n setExpanded(!isDesktop || (items.length <= MAX_VISIBLE_DETAILS && extras.length === 0));\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n setExpanded(propExpanded);\n }, [propExpanded]);\n\n const handlePress = () => {\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.BOOKING_INTERACTION,\n action: 'button_click',\n element_clicked: 'view_more',\n });\n setExpanded(true);\n };\n\n const { currency, details = [], extras = [] } = dataSource;\n const propsTable = { currency };\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const multiRoom = details.length > 1;\n\n return (\n <View {...others} className={styles(style.details, others.className)}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_DETAILS)}\n </Text>\n\n {details\n .slice(0, expanded ? undefined : 1)\n .map(\n (\n {\n amount,\n extras = [],\n image,\n items = [],\n observations = [],\n occupation: { adults, babies, children } = {},\n rate,\n type,\n } = {},\n key,\n ) => (\n <View key={key} wide>\n <View row className={style.item}>\n <View className={style.image} style={{ backgroundImage: `url(${image})` }} />\n <View>\n <View row className={style.inline}>\n <Text bold>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n <Text action>{rate.replace(`${type}:`, '').trim()}</Text>\n <Text light small>\n {getRoomOccupationLabel({\n adults,\n babies,\n children,\n dataSource: variants.find(({ id }) => id === Number(hotelId))?.occupation || occupation,\n translate,\n })}\n </Text>\n </View>\n </View>\n\n <BookingTable\n {...propsTable}\n dataSource={items.slice(0, expanded ? undefined : MAX_VISIBLE_DETAILS)}\n showTotal={multiRoom && expanded}\n />\n\n {expanded && (\n <>\n <BookingTable {...propsTable} dataSource={extras} label={translate(L10N.LABEL_EXTRAS)} />\n\n {observations.length > 0 && (\n <View className={style.observations}>\n <Text bold small>\n {translate(L10N.LABEL_OBSERVATIONS)}\n </Text>\n {observations.map((item, index) => (\n <Text key={index} small>\n {item}\n </Text>\n ))}\n </View>\n )}\n </>\n )}\n </View>\n ),\n )}\n\n {expanded && <BookingTable {...propsTable} dataSource={extras} label={translate(L10N.LABEL_BOOKING_EXTRAS)} />}\n\n {(isDesktop || variant === VARIANT.B) && !expanded && (\n <ButtonMore onPress={handlePress} className={style.buttonMore} testId=\"button-more\" />\n )}\n </View>\n );\n};\n\nBookingDetails.displayName = 'Mirai:Core:BookingDetails';\n\nBookingDetails.propTypes = {\n dataSource: PropTypes.shape({}),\n expanded: PropTypes.bool,\n};\n\nexport { BookingDetails };\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ var _react = _interopRequireWildcard(require("react"));
12
12
  var _BookingSummary = require("./BookingSummary.constants");
13
13
  var _BookingSummary2 = require("./BookingSummary.l10n");
14
14
  var style = _interopRequireWildcard(require("./BookingSummary.module.css"));
15
+ var _Core = require("../../../Core.constants");
15
16
  var _helpers = require("../../helpers");
16
17
  var _ButtonMore = require("../ButtonMore");
17
18
  var _PriceBreakdown = require("../PriceBreakdown");
@@ -20,21 +21,73 @@ const _excluded = ["box", "children", "dataSource"],
20
21
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
21
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
23
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
24
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
25
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
23
26
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
27
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
28
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
26
29
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
27
30
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
28
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
29
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
30
- const BookingSummary = _ref => {
31
- var _ref2;
31
+ const {
32
+ ADULT,
33
+ BABY,
34
+ CHILD
35
+ } = _helpers.OCCUPATION_TYPE;
36
+ const getBookingRoomNames = function () {
37
+ let rooms = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
38
+ return Object.values(rooms.reduce(function (total) {
39
+ var _total$type;
40
+ let {
41
+ amount,
42
+ type
43
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
44
+ return _objectSpread(_objectSpread({}, total), type ? {
45
+ [type]: {
46
+ amount: (((_total$type = total[type]) === null || _total$type === void 0 ? void 0 : _total$type.amount) || 0) + amount,
47
+ type
48
+ }
49
+ } : undefined);
50
+ }, {})).map(function () {
51
+ let {
52
+ amount,
53
+ type
54
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
55
+ return "".concat(type).concat(amount > 1 ? " (x".concat(amount, ")") : '');
56
+ });
57
+ };
58
+ const getBookingOccupationLabel = _ref => {
59
+ let {
60
+ amount = 0,
61
+ translate,
62
+ type
63
+ } = _ref;
64
+ return "".concat(amount, " ").concat((0, _helpers.getGuestLabel)({
65
+ plural: amount !== 1,
66
+ type
67
+ }, translate));
68
+ };
69
+ const getPositiveLabels = function () {
70
+ let items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
71
+ return items.filter(function () {
72
+ let {
73
+ amount
74
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
75
+ return amount > 0;
76
+ }).map(_ref2 => {
77
+ let {
78
+ label
79
+ } = _ref2;
80
+ return label;
81
+ });
82
+ };
83
+ const BookingSummary = _ref3 => {
84
+ var _ref4;
32
85
  let {
33
86
  box = false,
34
87
  children,
35
88
  dataSource = {}
36
- } = _ref,
37
- others = _objectWithoutProperties(_ref, _excluded);
89
+ } = _ref3,
90
+ others = _objectWithoutProperties(_ref3, _excluded);
38
91
  const {
39
92
  isDesktop
40
93
  } = (0, _ui.useDevice)();
@@ -69,6 +122,11 @@ const BookingSummary = _ref => {
69
122
  checkOutTime,
70
123
  currency,
71
124
  details = [],
125
+ cancellationPolicy: {
126
+ caption: cancellationCaption,
127
+ name: cancellationName
128
+ } = {},
129
+ extras = [],
72
130
  hotel: {
73
131
  address,
74
132
  city,
@@ -121,6 +179,80 @@ const BookingSummary = _ref => {
121
179
  name = hotelName,
122
180
  type
123
181
  } = features[id] || {};
182
+ const showBookingBlock = variant === _Core.VARIANT.B;
183
+ const bookingDetails = details.reduce(function (total) {
184
+ let {
185
+ amount,
186
+ extras = [],
187
+ occupation: {
188
+ adults = 0,
189
+ babies = 0,
190
+ children = 0
191
+ } = {},
192
+ rooms
193
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
194
+ const roomAmount = rooms || amount || 1;
195
+ return {
196
+ adults: total.adults + adults * roomAmount,
197
+ babies: total.babies + babies * roomAmount,
198
+ children: total.children + children * roomAmount,
199
+ extras: [...total.extras, ...extras],
200
+ rooms: total.rooms + roomAmount
201
+ };
202
+ }, {
203
+ adults: 0,
204
+ babies: 0,
205
+ children: 0,
206
+ extras: [],
207
+ rooms: 0
208
+ });
209
+ const bookingRoomNames = getBookingRoomNames(details);
210
+ const bookingExtras = [...bookingDetails.extras, ...extras];
211
+ const bookingExtraNames = showBookingBlock && bookingExtras.map(function () {
212
+ let {
213
+ title
214
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
215
+ return title;
216
+ }).filter(Boolean);
217
+ const bookingSummaryLabels = getPositiveLabels([{
218
+ amount: nights || days || 0,
219
+ label: translate(_BookingSummary2.L10N.LABEL_NIGHT_COUNT, {
220
+ value: nights || days || 0
221
+ })
222
+ }, {
223
+ amount: bookingDetails.rooms,
224
+ label: translate(_BookingSummary2.L10N.LABEL_ROOM_COUNT, {
225
+ value: bookingDetails.rooms
226
+ })
227
+ }, showBookingBlock ? {
228
+ amount: bookingExtras.length,
229
+ label: translate(_BookingSummary2.L10N.LABEL_EXTRA_COUNT, {
230
+ value: bookingExtras.length
231
+ })
232
+ } : undefined]);
233
+ const bookingOccupationLabels = showBookingBlock && getPositiveLabels([{
234
+ amount: bookingDetails.adults,
235
+ label: getBookingOccupationLabel({
236
+ amount: bookingDetails.adults,
237
+ translate,
238
+ type: ADULT
239
+ })
240
+ }, {
241
+ amount: bookingDetails.children,
242
+ label: getBookingOccupationLabel({
243
+ amount: bookingDetails.children,
244
+ translate,
245
+ type: CHILD
246
+ })
247
+ }, {
248
+ amount: bookingDetails.babies,
249
+ label: getBookingOccupationLabel({
250
+ amount: bookingDetails.babies,
251
+ translate,
252
+ type: BABY
253
+ })
254
+ }]);
255
+ const showCancellation = showBookingBlock && (cancellationName || cancellationCaption);
124
256
  return /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
125
257
  wide: true,
126
258
  className: (0, _ui.styles)(style.bookingSummary, box && style.box, others.className)
@@ -153,18 +285,11 @@ const BookingSummary = _ref => {
153
285
  value: checkOutTime
154
286
  }))))), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
155
287
  bold: true
156
- }, translate(_BookingSummary2.L10N.LABEL_YOUR_RESERVATION)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
288
+ }, translate(showBookingBlock ? _BookingSummary2.L10N.LABEL_YOUR_BOOKING : _BookingSummary2.L10N.LABEL_YOUR_RESERVATION)), (bookingSummaryLabels === null || bookingSummaryLabels === void 0 ? void 0 : bookingSummaryLabels.length) > 0 && /*#__PURE__*/_react.default.createElement(_ui.Text, {
289
+ action: true
290
+ }, bookingSummaryLabels.join(', ')), (bookingOccupationLabels === null || bookingOccupationLabels === void 0 ? void 0 : bookingOccupationLabels.length) > 0 && /*#__PURE__*/_react.default.createElement(_ui.Text, {
157
291
  action: true
158
- }, "".concat(translate(_BookingSummary2.L10N.LABEL_NIGHT_COUNT, {
159
- value: nights || days || 0
160
- }), ", ").concat(translate(_BookingSummary2.L10N.LABEL_ROOM_COUNT, {
161
- value: items.reduce(function (total) {
162
- let {
163
- amount = 1
164
- } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
165
- return total + amount;
166
- }, 0)
167
- }))), items.map(function () {
292
+ }, bookingOccupationLabels.join(', ')), roomNumber || !showBookingBlock ? items.map(function () {
168
293
  let {
169
294
  amount,
170
295
  type
@@ -185,14 +310,27 @@ const BookingSummary = _ref => {
185
310
  }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
186
311
  value: _helpers.ICON.INFO
187
312
  })));
188
- })), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
313
+ }) : /*#__PURE__*/_react.default.createElement(_ui.Text, {
314
+ light: true,
315
+ small: true
316
+ }, bookingRoomNames.join(', ')), (bookingExtraNames === null || bookingExtraNames === void 0 ? void 0 : bookingExtraNames.length) > 0 && /*#__PURE__*/_react.default.createElement(_ui.Text, {
317
+ light: true,
318
+ small: true
319
+ }, bookingExtraNames.join(', ')), showCancellation && /*#__PURE__*/_react.default.createElement(_ui.View, null, cancellationName && /*#__PURE__*/_react.default.createElement(_ui.Text, {
320
+ action: true,
321
+ bold: true,
322
+ success: true
323
+ }, cancellationName), cancellationCaption && /*#__PURE__*/_react.default.createElement(_ui.Text, {
324
+ light: true,
325
+ small: true
326
+ }, cancellationCaption))), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
189
327
  bold: true
190
328
  }, translate(_BookingSummary2.L10N.LABEL_ACCOMMODATION)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
191
329
  action: true,
192
330
  markdown: false
193
- }, (_ref2 = "".concat(type && name ? translate(_BookingSummary2.L10N.LABEL_PROPERTY_TYPE, {
331
+ }, (_ref4 = "".concat(type && name ? translate(_BookingSummary2.L10N.LABEL_PROPERTY_TYPE, {
194
332
  type
195
- }) : '', " ").concat(name)) === null || _ref2 === void 0 ? void 0 : _ref2.trim()), /*#__PURE__*/_react.default.createElement(_ui.Text, {
333
+ }) : '', " ").concat(name)) === null || _ref4 === void 0 ? void 0 : _ref4.trim()), /*#__PURE__*/_react.default.createElement(_ui.Text, {
196
334
  light: true,
197
335
  small: true
198
336
  }, "".concat(address, ", ").concat(city, ", ").concat(country)), !isCheckout && /*#__PURE__*/_react.default.createElement(_ui.Text, {
@@ -1 +1 @@
1
- {"version":3,"file":"BookingSummary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingSummary","_BookingSummary2","style","_helpers","_ButtonMore","_PriceBreakdown","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","BookingSummary","_ref","_ref2","box","children","dataSource","others","isDesktop","useDevice","dateFormat","translate","useLocale","_useStore","useStore","components","finder","promocode","hotel","features","id","language","urlParams","roomNumberBySelectedRoom","variant","expanded","setExpanded","useState","checkIn","checkInTime","checkOut","checkOutTime","currency","details","address","city","country","email","location","name","hotelName","phone","site","nights","handleBack","Event","publish","EVENT","METRICS","METRICS_EVENTS","CHECKOUT_INTERACTION","action","element_clicked","setTimeout","document","href","getRatesUrl","SUBMIT_DELAY","handlePress","days","dateDiff","parseDate","isCheckout","checkout","items","type","undefined","roomNumber","getRoomNumber","urlLocation","concat","join","createElement","View","wide","className","styles","bookingSummary","section","Text","bold","headline","L10N","LABEL_BOOKING_SUMMARY","row","dates","LABEL_CHECK_IN","FORMAT_DATE","light","small","LABEL_CHECKIN_TIME","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","LABEL_YOUR_RESERVATION","LABEL_NIGHT_COUNT","LABEL_ROOM_COUNT","reduce","total","amount","map","index","key","info","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","LABEL_ACCOMMODATION","markdown","LABEL_PROPERTY_TYPE","trim","links","noPrint","Action","underline","target","SITE","ACTION_VIEW_HOTEL","MAIL","ACTION_SEND_EMAIL","LOCATION","ACTION_VIEW_MAP","onPress","testId","ACTION_CHANGE_SELECTION","PriceBreakdown","ButtonMore","exports","displayName","propTypes","PropTypes","bool","any","shape"],"sources":["../../../../src/components/__shared__/BookingSummary/BookingSummary.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { FORMAT_DATE } from './BookingSummary.constants';\nimport { L10N } from './BookingSummary.l10n';\nimport * as style from './BookingSummary.module.css';\nimport { EVENT, getRatesUrl, getRoomNumber, ICON, METRICS_EVENTS, SUBMIT_DELAY } from '../../helpers';\nimport { ButtonMore } from '../ButtonMore';\nimport { PriceBreakdown } from '../PriceBreakdown';\n\nconst BookingSummary = ({ box = false, children, dataSource = {}, ...others }) => {\n const { isDesktop } = useDevice();\n const { dateFormat, translate } = useLocale();\n const {\n value: {\n components = {},\n finder: { promocode = '' } = {},\n hotel: { features = {}, id } = {},\n language,\n urlParams: { roomNumberBySelectedRoom, ...urlParams } = {},\n variant,\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(isDesktop);\n\n const {\n checkIn,\n checkInTime,\n checkOut,\n checkOutTime,\n currency,\n details = [],\n hotel: { address, city, country, email, location = [], name: hotelName = '', phone, site } = {},\n nights,\n } = dataSource;\n\n const handleBack = () => {\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.CHECKOUT_INTERACTION,\n action: 'button_click',\n element_clicked: 'change_selection',\n });\n setTimeout(() => {\n document.location.href = getRatesUrl({ currency, language, nights, promocode, variant, ...urlParams });\n }, [SUBMIT_DELAY]);\n };\n\n const handlePress = () => {\n setExpanded(true);\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.CHECKOUT_INTERACTION,\n action: 'button_click',\n element_clicked: 'view_more',\n });\n };\n\n const { days } = dateDiff(parseDate(checkIn), parseDate(checkOut));\n const isCheckout = !!components.checkout;\n const items = details.filter(({ type } = {}) => !!type) || [];\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const urlLocation = location.length ? `https://maps.google.com?q=${location.join(',')}` : undefined;\n const { name = hotelName, type } = features[id] || {};\n\n return (\n <View {...others} wide className={styles(style.bookingSummary, box && style.box, others.className)}>\n <View className={style.section}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_SUMMARY)}\n </Text>\n\n <View row wide className={style.dates}>\n <View>\n <Text bold>{translate(L10N.LABEL_CHECK_IN)}</Text>\n <View>\n <Text action>{dateFormat(parseDate(checkIn), FORMAT_DATE)}</Text>\n {checkInTime && (\n <Text light small>\n {translate(L10N.LABEL_CHECKIN_TIME, { value: checkInTime })}\n </Text>\n )}\n </View>\n </View>\n\n <View>\n <Text bold>{translate(L10N.LABEL_CHECK_OUT)}</Text>\n <View>\n <Text action>{dateFormat(parseDate(checkOut), FORMAT_DATE)}</Text>\n {checkOutTime && (\n <Text light small>\n {translate(L10N.LABEL_CHECKOUT_TIME, { value: checkOutTime })}\n </Text>\n )}\n </View>\n </View>\n </View>\n\n <View>\n <Text bold>{translate(L10N.LABEL_YOUR_RESERVATION)}</Text>\n <Text action>\n {`${translate(L10N.LABEL_NIGHT_COUNT, { value: nights || days || 0 })}, ${translate(L10N.LABEL_ROOM_COUNT, {\n value: items.reduce((total, { amount = 1 } = {}) => total + amount, 0),\n })}`}\n </Text>\n\n {items.map(({ amount, type } = {}, index) => (\n <View key={index} row className={style.info}>\n <Text light small>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n ))}\n </View>\n\n <View>\n <Text bold>{translate(L10N.LABEL_ACCOMMODATION)}</Text>\n <Text action markdown={false}>\n {`${type && name ? translate(L10N.LABEL_PROPERTY_TYPE, { type }) : ''} ${name}`?.trim()}\n </Text>\n <Text light small>\n {`${address}, ${city}, ${country}`}\n </Text>\n {!isCheckout && (\n <Text light small>\n {phone}\n </Text>\n )}\n </View>\n\n {!isCheckout && (site || email || urlLocation) && (\n <View row wide className={styles(style.links, style.noPrint)}>\n {site && (\n <Action href={site} underline small target=\"_blank\">\n <Icon value={ICON.SITE} />\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n {email && (\n <Action href={`mailto:${email}`} underline small target=\"_blank\">\n <Icon value={ICON.MAIL} />\n {translate(L10N.ACTION_SEND_EMAIL)}\n </Action>\n )}\n {urlLocation && (\n <Action href={urlLocation} underline small target=\"_blank\">\n <Icon value={ICON.LOCATION} />\n {translate(L10N.ACTION_VIEW_MAP)}\n </Action>\n )}\n </View>\n )}\n\n {isCheckout && (\n <Action underline onPress={handleBack} testId=\"action-change-selection\">\n {translate(L10N.ACTION_CHANGE_SELECTION)}\n </Action>\n )}\n </View>\n\n <PriceBreakdown dataSource={dataSource} className={style.section} />\n\n {children ? (\n expanded ? (\n <View className={style.section}>{children}</View>\n ) : (\n <ButtonMore onPress={handlePress} />\n )\n ) : undefined}\n </View>\n );\n};\n\nBookingSummary.displayName = 'Mirai:Core:BookingSummary';\n\nBookingSummary.propTypes = {\n box: PropTypes.bool,\n children: PropTypes.any,\n dataSource: PropTypes.shape({}),\n};\n\nexport { BookingSummary };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BookingSummary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingSummary","_BookingSummary2","style","_Core","_helpers","_ButtonMore","_PriceBreakdown","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","ADULT","BABY","CHILD","OCCUPATION_TYPE","getBookingRoomNames","rooms","undefined","values","reduce","total","_total$type","amount","type","map","concat","getBookingOccupationLabel","_ref","translate","getGuestLabel","plural","getPositiveLabels","items","_ref2","label","BookingSummary","_ref3","_ref4","box","children","dataSource","others","isDesktop","useDevice","dateFormat","useLocale","_useStore","useStore","components","finder","promocode","hotel","features","id","language","urlParams","roomNumberBySelectedRoom","variant","expanded","setExpanded","useState","checkIn","checkInTime","checkOut","checkOutTime","currency","details","cancellationPolicy","caption","cancellationCaption","name","cancellationName","extras","address","city","country","email","location","hotelName","phone","site","nights","handleBack","Event","publish","EVENT","METRICS","METRICS_EVENTS","CHECKOUT_INTERACTION","action","element_clicked","setTimeout","document","href","getRatesUrl","SUBMIT_DELAY","handlePress","days","dateDiff","parseDate","isCheckout","checkout","roomNumber","getRoomNumber","urlLocation","join","showBookingBlock","VARIANT","B","bookingDetails","occupation","adults","babies","roomAmount","bookingRoomNames","bookingExtras","bookingExtraNames","title","Boolean","bookingSummaryLabels","L10N","LABEL_NIGHT_COUNT","LABEL_ROOM_COUNT","LABEL_EXTRA_COUNT","bookingOccupationLabels","showCancellation","createElement","View","wide","className","styles","bookingSummary","section","Text","bold","headline","LABEL_BOOKING_SUMMARY","row","dates","LABEL_CHECK_IN","FORMAT_DATE","light","small","LABEL_CHECKIN_TIME","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","LABEL_YOUR_BOOKING","LABEL_YOUR_RESERVATION","index","key","info","LABEL_ROOM_NUMBER","Tooltip","pressable","text","LABEL_SUBJECT_TO_AVAILABILITY","Icon","ICON","INFO","success","LABEL_ACCOMMODATION","markdown","LABEL_PROPERTY_TYPE","trim","links","noPrint","Action","underline","target","SITE","ACTION_VIEW_HOTEL","MAIL","ACTION_SEND_EMAIL","LOCATION","ACTION_VIEW_MAP","onPress","testId","ACTION_CHANGE_SELECTION","PriceBreakdown","ButtonMore","exports","displayName","propTypes","PropTypes","bool","any","shape"],"sources":["../../../../src/components/__shared__/BookingSummary/BookingSummary.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateDiff, parseDate, useLocale } from '@mirai/locale';\nimport { Action, Icon, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { FORMAT_DATE } from './BookingSummary.constants';\nimport { L10N } from './BookingSummary.l10n';\nimport * as style from './BookingSummary.module.css';\nimport { VARIANT } from '../../../Core.constants';\nimport {\n EVENT,\n getGuestLabel,\n getRatesUrl,\n getRoomNumber,\n ICON,\n METRICS_EVENTS,\n OCCUPATION_TYPE,\n SUBMIT_DELAY,\n} from '../../helpers';\nimport { ButtonMore } from '../ButtonMore';\nimport { PriceBreakdown } from '../PriceBreakdown';\n\nconst { ADULT, BABY, CHILD } = OCCUPATION_TYPE;\n\nconst getBookingRoomNames = (rooms = []) =>\n Object.values(\n rooms.reduce(\n (total, { amount, type } = {}) => ({\n ...total,\n ...(type\n ? {\n [type]: {\n amount: (total[type]?.amount || 0) + amount,\n type,\n },\n }\n : undefined),\n }),\n {},\n ),\n ).map(({ amount, type } = {}) => `${type}${amount > 1 ? ` (x${amount})` : ''}`);\n\nconst getBookingOccupationLabel = ({ amount = 0, translate, type }) =>\n `${amount} ${getGuestLabel({ plural: amount !== 1, type }, translate)}`;\n\nconst getPositiveLabels = (items = []) => items.filter(({ amount } = {}) => amount > 0).map(({ label }) => label);\n\nconst BookingSummary = ({ box = false, children, dataSource = {}, ...others }) => {\n const { isDesktop } = useDevice();\n const { dateFormat, translate } = useLocale();\n const {\n value: {\n components = {},\n finder: { promocode = '' } = {},\n hotel: { features = {}, id } = {},\n language,\n urlParams: { roomNumberBySelectedRoom, ...urlParams } = {},\n variant,\n },\n } = useStore();\n\n const [expanded, setExpanded] = useState(isDesktop);\n\n const {\n checkIn,\n checkInTime,\n checkOut,\n checkOutTime,\n currency,\n details = [],\n cancellationPolicy: { caption: cancellationCaption, name: cancellationName } = {},\n extras = [],\n hotel: { address, city, country, email, location = [], name: hotelName = '', phone, site } = {},\n nights,\n } = dataSource;\n\n const handleBack = () => {\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.CHECKOUT_INTERACTION,\n action: 'button_click',\n element_clicked: 'change_selection',\n });\n setTimeout(() => {\n document.location.href = getRatesUrl({ currency, language, nights, promocode, variant, ...urlParams });\n }, [SUBMIT_DELAY]);\n };\n\n const handlePress = () => {\n setExpanded(true);\n Event.publish(EVENT.METRICS, {\n id: METRICS_EVENTS.CHECKOUT_INTERACTION,\n action: 'button_click',\n element_clicked: 'view_more',\n });\n };\n\n const { days } = dateDiff(parseDate(checkIn), parseDate(checkOut));\n const isCheckout = !!components.checkout;\n const items = details.filter(({ type } = {}) => !!type) || [];\n const roomNumber = getRoomNumber(roomNumberBySelectedRoom);\n const urlLocation = location.length ? `https://maps.google.com?q=${location.join(',')}` : undefined;\n const { name = hotelName, type } = features[id] || {};\n const showBookingBlock = variant === VARIANT.B;\n const bookingDetails = details.reduce(\n (total, { amount, extras = [], occupation: { adults = 0, babies = 0, children = 0 } = {}, rooms } = {}) => {\n const roomAmount = rooms || amount || 1;\n\n return {\n adults: total.adults + adults * roomAmount,\n babies: total.babies + babies * roomAmount,\n children: total.children + children * roomAmount,\n extras: [...total.extras, ...extras],\n rooms: total.rooms + roomAmount,\n };\n },\n { adults: 0, babies: 0, children: 0, extras: [], rooms: 0 },\n );\n const bookingRoomNames = getBookingRoomNames(details);\n const bookingExtras = [...bookingDetails.extras, ...extras];\n const bookingExtraNames = showBookingBlock && bookingExtras.map(({ title } = {}) => title).filter(Boolean);\n const bookingSummaryLabels = getPositiveLabels([\n { amount: nights || days || 0, label: translate(L10N.LABEL_NIGHT_COUNT, { value: nights || days || 0 }) },\n { amount: bookingDetails.rooms, label: translate(L10N.LABEL_ROOM_COUNT, { value: bookingDetails.rooms }) },\n showBookingBlock\n ? { amount: bookingExtras.length, label: translate(L10N.LABEL_EXTRA_COUNT, { value: bookingExtras.length }) }\n : undefined,\n ]);\n const bookingOccupationLabels =\n showBookingBlock &&\n getPositiveLabels([\n {\n amount: bookingDetails.adults,\n label: getBookingOccupationLabel({ amount: bookingDetails.adults, translate, type: ADULT }),\n },\n {\n amount: bookingDetails.children,\n label: getBookingOccupationLabel({ amount: bookingDetails.children, translate, type: CHILD }),\n },\n {\n amount: bookingDetails.babies,\n label: getBookingOccupationLabel({ amount: bookingDetails.babies, translate, type: BABY }),\n },\n ]);\n\n const showCancellation = showBookingBlock && (cancellationName || cancellationCaption);\n\n return (\n <View {...others} wide className={styles(style.bookingSummary, box && style.box, others.className)}>\n <View className={style.section}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_BOOKING_SUMMARY)}\n </Text>\n\n <View row wide className={style.dates}>\n <View>\n <Text bold>{translate(L10N.LABEL_CHECK_IN)}</Text>\n <View>\n <Text action>{dateFormat(parseDate(checkIn), FORMAT_DATE)}</Text>\n {checkInTime && (\n <Text light small>\n {translate(L10N.LABEL_CHECKIN_TIME, { value: checkInTime })}\n </Text>\n )}\n </View>\n </View>\n\n <View>\n <Text bold>{translate(L10N.LABEL_CHECK_OUT)}</Text>\n <View>\n <Text action>{dateFormat(parseDate(checkOut), FORMAT_DATE)}</Text>\n {checkOutTime && (\n <Text light small>\n {translate(L10N.LABEL_CHECKOUT_TIME, { value: checkOutTime })}\n </Text>\n )}\n </View>\n </View>\n </View>\n\n <View>\n <Text bold>{translate(showBookingBlock ? L10N.LABEL_YOUR_BOOKING : L10N.LABEL_YOUR_RESERVATION)}</Text>\n {bookingSummaryLabels?.length > 0 && <Text action>{bookingSummaryLabels.join(', ')}</Text>}\n {bookingOccupationLabels?.length > 0 && <Text action>{bookingOccupationLabels.join(', ')}</Text>}\n {roomNumber || !showBookingBlock ? (\n items.map(({ amount, type } = {}, index) => (\n <View key={index} row className={style.info}>\n <Text light small>\n {`${type}${roomNumber ? ` (${translate(L10N.LABEL_ROOM_NUMBER, { roomNumber })})` : ''} ${\n amount > 1 ? ` (x${amount})` : ''\n }`}\n </Text>\n {roomNumber && (\n <Tooltip pressable text={translate(L10N.LABEL_SUBJECT_TO_AVAILABILITY)}>\n <Icon value={ICON.INFO} />\n </Tooltip>\n )}\n </View>\n ))\n ) : (\n <Text light small>\n {bookingRoomNames.join(', ')}\n </Text>\n )}\n {bookingExtraNames?.length > 0 && (\n <Text light small>\n {bookingExtraNames.join(', ')}\n </Text>\n )}\n {showCancellation && (\n <View>\n {cancellationName && (\n <Text action bold success>\n {cancellationName}\n </Text>\n )}\n {cancellationCaption && (\n <Text light small>\n {cancellationCaption}\n </Text>\n )}\n </View>\n )}\n </View>\n\n <View>\n <Text bold>{translate(L10N.LABEL_ACCOMMODATION)}</Text>\n <Text action markdown={false}>\n {`${type && name ? translate(L10N.LABEL_PROPERTY_TYPE, { type }) : ''} ${name}`?.trim()}\n </Text>\n <Text light small>\n {`${address}, ${city}, ${country}`}\n </Text>\n {!isCheckout && (\n <Text light small>\n {phone}\n </Text>\n )}\n </View>\n\n {!isCheckout && (site || email || urlLocation) && (\n <View row wide className={styles(style.links, style.noPrint)}>\n {site && (\n <Action href={site} underline small target=\"_blank\">\n <Icon value={ICON.SITE} />\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n {email && (\n <Action href={`mailto:${email}`} underline small target=\"_blank\">\n <Icon value={ICON.MAIL} />\n {translate(L10N.ACTION_SEND_EMAIL)}\n </Action>\n )}\n {urlLocation && (\n <Action href={urlLocation} underline small target=\"_blank\">\n <Icon value={ICON.LOCATION} />\n {translate(L10N.ACTION_VIEW_MAP)}\n </Action>\n )}\n </View>\n )}\n\n {isCheckout && (\n <Action underline onPress={handleBack} testId=\"action-change-selection\">\n {translate(L10N.ACTION_CHANGE_SELECTION)}\n </Action>\n )}\n </View>\n\n <PriceBreakdown dataSource={dataSource} className={style.section} />\n\n {children ? (\n expanded ? (\n <View className={style.section}>{children}</View>\n ) : (\n <ButtonMore onPress={handlePress} />\n )\n ) : undefined}\n </View>\n );\n};\n\nBookingSummary.displayName = 'Mirai:Core:BookingSummary';\n\nBookingSummary.propTypes = {\n box: PropTypes.bool,\n children: PropTypes.any,\n dataSource: PropTypes.shape({}),\n};\n\nexport { BookingSummary };\n"],"mappings":"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","ignoreList":[]}
@@ -38,6 +38,9 @@ const L10N = exports.L10N = {
38
38
  LABEL_CHECKOUT_TIME: {
39
39
  id: 'common.label.checkout_time'
40
40
  },
41
+ LABEL_EXTRA_COUNT: {
42
+ id: 'core.label.extra_count'
43
+ },
41
44
  LABEL_NIGHT_COUNT: {
42
45
  id: 'common.label.night_count'
43
46
  },
@@ -53,6 +56,9 @@ const L10N = exports.L10N = {
53
56
  LABEL_SUBJECT_TO_AVAILABILITY: {
54
57
  id: 'core.label.subject_to_availability'
55
58
  },
59
+ LABEL_YOUR_BOOKING: {
60
+ id: 'core.label.your_booking'
61
+ },
56
62
  LABEL_YOUR_RESERVATION: {
57
63
  id: 'core.label.your_reservation'
58
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BookingSummary.l10n.js","names":["L10N","exports","ACTION_CHANGE_SELECTION","id","ACTION_CHANGE_PERSONAL_DETAILS","ACTION_SEND_EMAIL","ACTION_VIEW_HOTEL","ACTION_VIEW_MAP","LABEL_ACCOMMODATION","LABEL_BOOKING_SUMMARY","LABEL_CHECK_IN","LABEL_CHECKIN_TIME","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","LABEL_NIGHT_COUNT","LABEL_PROPERTY_TYPE","LABEL_ROOM_COUNT","LABEL_ROOM_NUMBER","LABEL_SUBJECT_TO_AVAILABILITY","LABEL_YOUR_RESERVATION"],"sources":["../../../../src/components/__shared__/BookingSummary/BookingSummary.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_CHANGE_SELECTION: { id: 'core.action.change_selection' },\n ACTION_CHANGE_PERSONAL_DETAILS: { id: 'core.action.change_personal_details' },\n ACTION_SEND_EMAIL: { id: 'common.action.send_email' },\n ACTION_VIEW_HOTEL: { id: 'common.action.view_hotel' },\n ACTION_VIEW_MAP: { id: 'common.action.view_map' },\n\n LABEL_ACCOMMODATION: { id: 'common.label.accommodation' },\n LABEL_BOOKING_SUMMARY: { id: 'core.label.booking_summary' },\n LABEL_CHECK_IN: { id: 'common.label.check_in' },\n LABEL_CHECKIN_TIME: { id: 'common.label.checkin_time' },\n LABEL_CHECK_OUT: { id: 'common.label.check_out' },\n LABEL_CHECKOUT_TIME: { id: 'common.label.checkout_time' },\n LABEL_NIGHT_COUNT: { id: 'common.label.night_count' },\n LABEL_PROPERTY_TYPE: { id: 'common.label.property_type' },\n LABEL_ROOM_COUNT: { id: 'common.label.room_count' },\n LABEL_ROOM_NUMBER: { id: 'common.label.room_number' },\n LABEL_SUBJECT_TO_AVAILABILITY: { id: 'core.label.subject_to_availability' },\n LABEL_YOUR_RESERVATION: { id: 'core.label.your_reservation' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,uBAAuB,EAAE;IAAEC,EAAE,EAAE;EAA+B,CAAC;EAC/DC,8BAA8B,EAAE;IAAED,EAAE,EAAE;EAAsC,CAAC;EAC7EE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B,CAAC;EACrDG,iBAAiB,EAAE;IAAEH,EAAE,EAAE;EAA2B,CAAC;EACrDI,eAAe,EAAE;IAAEJ,EAAE,EAAE;EAAyB,CAAC;EAEjDK,mBAAmB,EAAE;IAAEL,EAAE,EAAE;EAA6B,CAAC;EACzDM,qBAAqB,EAAE;IAAEN,EAAE,EAAE;EAA6B,CAAC;EAC3DO,cAAc,EAAE;IAAEP,EAAE,EAAE;EAAwB,CAAC;EAC/CQ,kBAAkB,EAAE;IAAER,EAAE,EAAE;EAA4B,CAAC;EACvDS,eAAe,EAAE;IAAET,EAAE,EAAE;EAAyB,CAAC;EACjDU,mBAAmB,EAAE;IAAEV,EAAE,EAAE;EAA6B,CAAC;EACzDW,iBAAiB,EAAE;IAAEX,EAAE,EAAE;EAA2B,CAAC;EACrDY,mBAAmB,EAAE;IAAEZ,EAAE,EAAE;EAA6B,CAAC;EACzDa,gBAAgB,EAAE;IAAEb,EAAE,EAAE;EAA0B,CAAC;EACnDc,iBAAiB,EAAE;IAAEd,EAAE,EAAE;EAA2B,CAAC;EACrDe,6BAA6B,EAAE;IAAEf,EAAE,EAAE;EAAqC,CAAC;EAC3EgB,sBAAsB,EAAE;IAAEhB,EAAE,EAAE;EAA8B;AAC9D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"BookingSummary.l10n.js","names":["L10N","exports","ACTION_CHANGE_SELECTION","id","ACTION_CHANGE_PERSONAL_DETAILS","ACTION_SEND_EMAIL","ACTION_VIEW_HOTEL","ACTION_VIEW_MAP","LABEL_ACCOMMODATION","LABEL_BOOKING_SUMMARY","LABEL_CHECK_IN","LABEL_CHECKIN_TIME","LABEL_CHECK_OUT","LABEL_CHECKOUT_TIME","LABEL_EXTRA_COUNT","LABEL_NIGHT_COUNT","LABEL_PROPERTY_TYPE","LABEL_ROOM_COUNT","LABEL_ROOM_NUMBER","LABEL_SUBJECT_TO_AVAILABILITY","LABEL_YOUR_BOOKING","LABEL_YOUR_RESERVATION"],"sources":["../../../../src/components/__shared__/BookingSummary/BookingSummary.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_CHANGE_SELECTION: { id: 'core.action.change_selection' },\n ACTION_CHANGE_PERSONAL_DETAILS: { id: 'core.action.change_personal_details' },\n ACTION_SEND_EMAIL: { id: 'common.action.send_email' },\n ACTION_VIEW_HOTEL: { id: 'common.action.view_hotel' },\n ACTION_VIEW_MAP: { id: 'common.action.view_map' },\n\n LABEL_ACCOMMODATION: { id: 'common.label.accommodation' },\n LABEL_BOOKING_SUMMARY: { id: 'core.label.booking_summary' },\n LABEL_CHECK_IN: { id: 'common.label.check_in' },\n LABEL_CHECKIN_TIME: { id: 'common.label.checkin_time' },\n LABEL_CHECK_OUT: { id: 'common.label.check_out' },\n LABEL_CHECKOUT_TIME: { id: 'common.label.checkout_time' },\n LABEL_EXTRA_COUNT: { id: 'core.label.extra_count' },\n LABEL_NIGHT_COUNT: { id: 'common.label.night_count' },\n LABEL_PROPERTY_TYPE: { id: 'common.label.property_type' },\n LABEL_ROOM_COUNT: { id: 'common.label.room_count' },\n LABEL_ROOM_NUMBER: { id: 'common.label.room_number' },\n LABEL_SUBJECT_TO_AVAILABILITY: { id: 'core.label.subject_to_availability' },\n LABEL_YOUR_BOOKING: { id: 'core.label.your_booking' },\n LABEL_YOUR_RESERVATION: { id: 'core.label.your_reservation' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,uBAAuB,EAAE;IAAEC,EAAE,EAAE;EAA+B,CAAC;EAC/DC,8BAA8B,EAAE;IAAED,EAAE,EAAE;EAAsC,CAAC;EAC7EE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B,CAAC;EACrDG,iBAAiB,EAAE;IAAEH,EAAE,EAAE;EAA2B,CAAC;EACrDI,eAAe,EAAE;IAAEJ,EAAE,EAAE;EAAyB,CAAC;EAEjDK,mBAAmB,EAAE;IAAEL,EAAE,EAAE;EAA6B,CAAC;EACzDM,qBAAqB,EAAE;IAAEN,EAAE,EAAE;EAA6B,CAAC;EAC3DO,cAAc,EAAE;IAAEP,EAAE,EAAE;EAAwB,CAAC;EAC/CQ,kBAAkB,EAAE;IAAER,EAAE,EAAE;EAA4B,CAAC;EACvDS,eAAe,EAAE;IAAET,EAAE,EAAE;EAAyB,CAAC;EACjDU,mBAAmB,EAAE;IAAEV,EAAE,EAAE;EAA6B,CAAC;EACzDW,iBAAiB,EAAE;IAAEX,EAAE,EAAE;EAAyB,CAAC;EACnDY,iBAAiB,EAAE;IAAEZ,EAAE,EAAE;EAA2B,CAAC;EACrDa,mBAAmB,EAAE;IAAEb,EAAE,EAAE;EAA6B,CAAC;EACzDc,gBAAgB,EAAE;IAAEd,EAAE,EAAE;EAA0B,CAAC;EACnDe,iBAAiB,EAAE;IAAEf,EAAE,EAAE;EAA2B,CAAC;EACrDgB,6BAA6B,EAAE;IAAEhB,EAAE,EAAE;EAAqC,CAAC;EAC3EiB,kBAAkB,EAAE;IAAEjB,EAAE,EAAE;EAA0B,CAAC;EACrDkB,sBAAsB,EAAE;IAAElB,EAAE,EAAE;EAA8B;AAC9D,CAAC","ignoreList":[]}
@@ -25,6 +25,10 @@
25
25
  gap: var(--mirai-ui-space-XS);
26
26
  }
27
27
 
28
+ .bookingSummary .booking {
29
+ gap: var(--mirai-ui-space-XXS);
30
+ }
31
+
28
32
  .bookingSummary .notification > * {
29
33
  text-align: justify;
30
34
  }
@@ -4,19 +4,66 @@ var _dataSources = require("@mirai/data-sources");
4
4
  var _locale = require("@mirai/locale");
5
5
  var _react = require("@testing-library/react");
6
6
  var _react2 = _interopRequireDefault(require("react"));
7
+ var _Core = require("../../../../Core.constants");
7
8
  var _checkout = _interopRequireDefault(require("../../../Checkout/mocks/checkout.json"));
8
9
  var _BookingSummary = require("../BookingSummary");
9
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /* eslint-disable react/prop-types */
11
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
15
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
16
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable react/prop-types */
11
17
  const DEFAULTS = {
12
18
  dataSource: _checkout.default
13
19
  };
20
+ const BOOKING_DATASOURCE = _objectSpread(_objectSpread({}, _checkout.default), {}, {
21
+ cancellationPolicy: {
22
+ caption: 'Until May 18',
23
+ name: 'Free cancellation'
24
+ },
25
+ details: [_objectSpread(_objectSpread({}, _checkout.default.details[0]), {}, {
26
+ amount: 1,
27
+ extras: [{
28
+ title: 'Extra name'
29
+ }],
30
+ occupation: {
31
+ adults: 1,
32
+ babies: 0,
33
+ children: 1
34
+ },
35
+ type: 'Room name 1'
36
+ }), _objectSpread(_objectSpread({}, _checkout.default.details[0]), {}, {
37
+ amount: 1,
38
+ extras: [],
39
+ occupation: {
40
+ adults: 1,
41
+ babies: 1,
42
+ children: 0
43
+ },
44
+ type: 'Room name 1'
45
+ }), _objectSpread(_objectSpread({}, _checkout.default.details[0]), {}, {
46
+ amount: 1,
47
+ extras: [],
48
+ occupation: {
49
+ adults: 1,
50
+ babies: 0,
51
+ children: 0
52
+ },
53
+ type: 'Room name 2'
54
+ })],
55
+ extras: [{
56
+ title: 'Global extra name'
57
+ }],
58
+ nights: 2
59
+ });
14
60
  const Store = _ref => {
15
61
  let {
16
- children
62
+ children,
63
+ value = {}
17
64
  } = _ref;
18
65
  return /*#__PURE__*/_react2.default.createElement(_dataSources.StoreProvider, {
19
- value: {}
66
+ value: value
20
67
  }, children);
21
68
  };
22
69
  describe('<BookingSummary>', () => {
@@ -32,6 +79,65 @@ describe('<BookingSummary>', () => {
32
79
  } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(Store, null, /*#__PURE__*/_react2.default.createElement(_locale.LocaleProvider, null, /*#__PURE__*/_react2.default.createElement(_BookingSummary.BookingSummary, DEFAULTS))));
33
80
  expect(asFragment()).toMatchSnapshot();
34
81
  });
82
+ describe('variant B booking block', () => {
83
+ it('renders booking details for variant B', async () => {
84
+ const {
85
+ asFragment,
86
+ container,
87
+ getByText
88
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(Store, {
89
+ value: {
90
+ variant: _Core.VARIANT.B
91
+ }
92
+ }, /*#__PURE__*/_react2.default.createElement(_locale.LocaleProvider, null, /*#__PURE__*/_react2.default.createElement(_BookingSummary.BookingSummary, {
93
+ dataSource: BOOKING_DATASOURCE
94
+ }))));
95
+ expect(getByText('core.label.your_booking')).toBeDefined();
96
+ expect(getByText('Room name 1 (x2), Room name 2')).toBeDefined();
97
+ expect(getByText('Extra name, Global extra name')).toBeDefined();
98
+ expect(getByText('Free cancellation')).toBeDefined();
99
+ expect(getByText('Until May 18')).toBeDefined();
100
+ expect(container.textContent).toContain('common.label.nightcount');
101
+ expect(container.textContent).toContain('common.label.roomcount');
102
+ expect(container.textContent).toContain('label.extra_count');
103
+ expect(container.textContent).toContain('common.label.guesttypeplural');
104
+ expect(container.textContent).toContain('common.label.guesttype');
105
+ expect(asFragment()).toMatchSnapshot();
106
+ });
107
+ it('does not render booking details for variant A', async () => {
108
+ const {
109
+ queryByText
110
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(Store, {
111
+ value: {
112
+ variant: _Core.VARIANT.A
113
+ }
114
+ }, /*#__PURE__*/_react2.default.createElement(_locale.LocaleProvider, null, /*#__PURE__*/_react2.default.createElement(_BookingSummary.BookingSummary, {
115
+ dataSource: BOOKING_DATASOURCE
116
+ }))));
117
+ expect(queryByText('core.label.your_booking')).toBeNull();
118
+ expect(queryByText('Free cancellation')).toBeNull();
119
+ });
120
+ it('renders without optional extras and cancellation', async () => {
121
+ const {
122
+ container,
123
+ getByText,
124
+ queryByText
125
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(Store, {
126
+ value: {
127
+ variant: _Core.VARIANT.B
128
+ }
129
+ }, /*#__PURE__*/_react2.default.createElement(_locale.LocaleProvider, null, /*#__PURE__*/_react2.default.createElement(_BookingSummary.BookingSummary, {
130
+ dataSource: _objectSpread(_objectSpread({}, _checkout.default), {}, {
131
+ cancellation: undefined,
132
+ extras: []
133
+ })
134
+ }))));
135
+ expect(getByText('core.label.your_booking')).toBeDefined();
136
+ expect(container.textContent).not.toContain('extra_count');
137
+ expect(container.textContent).not.toContain('0 common.label.guest');
138
+ expect(queryByText('Free cancellation')).toBeNull();
139
+ });
140
+ });
35
141
 
36
142
  // Testing
37
143
  it('testID', async () => {