@mirai/core 0.3.154 → 0.3.156
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 +8 -4
- package/build/Core.constants.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 +1 -1
- package/build/components/Rates/Rates.Unavailability.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +16 -4
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Summary.js +1 -1
- package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
- package/build/components/Rates/components/Item/components/PriceDetails/helpers/getPrices.js +2 -2
- package/build/components/Rates/components/Item/components/PriceDetails/helpers/getPrices.js.map +1 -1
- package/build/components/Rates/components/ModalExtras/ModalExtras.js +4 -2
- package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -1
- package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +4 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +3 -3
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +3 -3
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +3 -3
- package/build/services/Rates/__tests__/__mocks__/rates-response.json +3 -3
- package/build/services/Rates/helpers/getItems.js +113 -0
- package/build/services/Rates/helpers/getItems.js.map +1 -0
- package/build/services/Rates/helpers/getOccupationSuggestions.js +6 -0
- package/build/services/Rates/helpers/getOccupationSuggestions.js.map +1 -1
- package/build/services/Rates/helpers/getRooms.js +17 -9
- package/build/services/Rates/helpers/getRooms.js.map +1 -1
- package/build/services/Rates/helpers/getTaxesType.js +13 -3
- package/build/services/Rates/helpers/getTaxesType.js.map +1 -1
- package/build/services/Rates/helpers/index.js +11 -0
- package/build/services/Rates/helpers/index.js.map +1 -1
- package/build/services/Rates/helpers/parseUnavailability.js +12 -1
- package/build/services/Rates/helpers/parseUnavailability.js.map +1 -1
- package/build/services/Rates/rates.js +22 -95
- package/build/services/Rates/rates.js.map +1 -1
- package/package.json +1 -1
|
@@ -319,7 +319,7 @@
|
|
|
319
319
|
"size": "25 m²"
|
|
320
320
|
}
|
|
321
321
|
],
|
|
322
|
-
"taxesType":
|
|
322
|
+
"taxesType": 6,
|
|
323
323
|
"tracking": {
|
|
324
324
|
"country": "ES",
|
|
325
325
|
"hotelInfo": {
|
|
@@ -470,7 +470,7 @@
|
|
|
470
470
|
"sortedKeysOccupations": ["334026b0"]
|
|
471
471
|
}
|
|
472
472
|
],
|
|
473
|
-
"
|
|
474
|
-
"
|
|
473
|
+
"taxesIncluded": true,
|
|
474
|
+
"status": "AVAILABILITY"
|
|
475
475
|
}
|
|
476
476
|
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getItems = void 0;
|
|
7
|
+
var _parseAmenities = require("./parseAmenities");
|
|
8
|
+
var _parseBoards = require("./parseBoards");
|
|
9
|
+
var _constants = require("../constants");
|
|
10
|
+
const {
|
|
11
|
+
DOUBLE,
|
|
12
|
+
SINGLE
|
|
13
|
+
} = _constants.BED_TYPE;
|
|
14
|
+
const getItems = function () {
|
|
15
|
+
let {
|
|
16
|
+
currency,
|
|
17
|
+
currencyCode: hotelCurrency,
|
|
18
|
+
measureUnit: unit,
|
|
19
|
+
roomTypes,
|
|
20
|
+
showLocalTaxes: fees,
|
|
21
|
+
vatIncluded: taxes
|
|
22
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
23
|
+
return Object.values(roomTypes).map(function () {
|
|
24
|
+
let {
|
|
25
|
+
amountAvailable: availability,
|
|
26
|
+
name,
|
|
27
|
+
newInfoRoom: info = {},
|
|
28
|
+
occupationOptions = {}
|
|
29
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
30
|
+
const {
|
|
31
|
+
description,
|
|
32
|
+
roomTypeInfo: {
|
|
33
|
+
bedDistributions: bedType = [],
|
|
34
|
+
galleryMedia: {
|
|
35
|
+
url3D,
|
|
36
|
+
video: urlVideo
|
|
37
|
+
} = {},
|
|
38
|
+
photos,
|
|
39
|
+
roomSize: size
|
|
40
|
+
} = {}
|
|
41
|
+
} = info;
|
|
42
|
+
const {
|
|
43
|
+
occupationQuantities: {
|
|
44
|
+
numFirstRangeChildren: minRange = 0,
|
|
45
|
+
numSecondRangeChildren: maxRange = 0,
|
|
46
|
+
numAdults: adults = 0,
|
|
47
|
+
numBabies: babies = 0,
|
|
48
|
+
totalChildren: children = 0
|
|
49
|
+
} = {},
|
|
50
|
+
posibilities: [{
|
|
51
|
+
nights: nightsDeal
|
|
52
|
+
} = {}] = [],
|
|
53
|
+
rates
|
|
54
|
+
} = Object.values(occupationOptions)[0] || {};
|
|
55
|
+
const maxOccupation = adults + children;
|
|
56
|
+
return {
|
|
57
|
+
amenities: (0, _parseAmenities.parseAmenities)(info),
|
|
58
|
+
availability,
|
|
59
|
+
bedDisposition: bedType.map(type => _constants.BED_DISPOSITION[type]),
|
|
60
|
+
bedTypes: bedType.reduce((result, next) => {
|
|
61
|
+
_constants.BED_DISPOSITION[next].forEach(function () {
|
|
62
|
+
let {
|
|
63
|
+
amount,
|
|
64
|
+
type
|
|
65
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
66
|
+
if ([DOUBLE, SINGLE].includes(type) && amount > 0) result[result.length ? 1 : 0] = type;
|
|
67
|
+
});
|
|
68
|
+
return result;
|
|
69
|
+
}, []),
|
|
70
|
+
...(0, _parseBoards.parseBoards)({
|
|
71
|
+
currency,
|
|
72
|
+
fees,
|
|
73
|
+
hotelCurrency,
|
|
74
|
+
rates,
|
|
75
|
+
taxes
|
|
76
|
+
}),
|
|
77
|
+
description,
|
|
78
|
+
images: photos === null || photos === void 0 ? void 0 : photos.map(function () {
|
|
79
|
+
let {
|
|
80
|
+
photoAltDescription: alt,
|
|
81
|
+
urlLarge: large,
|
|
82
|
+
urlMediumRect: thumbnail
|
|
83
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
84
|
+
return {
|
|
85
|
+
alt,
|
|
86
|
+
large,
|
|
87
|
+
thumbnail
|
|
88
|
+
};
|
|
89
|
+
}),
|
|
90
|
+
name,
|
|
91
|
+
nightsDeal,
|
|
92
|
+
maxOccupation,
|
|
93
|
+
media: url3D || urlVideo ? {
|
|
94
|
+
url3D,
|
|
95
|
+
urlVideo
|
|
96
|
+
} : undefined,
|
|
97
|
+
occupation: maxOccupation ? [adults > 0 ? {
|
|
98
|
+
type: 2,
|
|
99
|
+
amount: adults
|
|
100
|
+
} : undefined, children > 0 ? {
|
|
101
|
+
type: 3,
|
|
102
|
+
ages: [minRange, maxRange],
|
|
103
|
+
amount: children
|
|
104
|
+
} : undefined, babies > 0 ? {
|
|
105
|
+
type: 4,
|
|
106
|
+
amount: babies
|
|
107
|
+
} : undefined].filter(item => !!item) : [],
|
|
108
|
+
size: size ? "".concat(size, " ").concat(_constants.UNIT[unit].size) : undefined
|
|
109
|
+
};
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
exports.getItems = getItems;
|
|
113
|
+
//# sourceMappingURL=getItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItems.js","names":["_parseAmenities","require","_parseBoards","_constants","DOUBLE","SINGLE","BED_TYPE","getItems","currency","currencyCode","hotelCurrency","measureUnit","unit","roomTypes","showLocalTaxes","fees","vatIncluded","taxes","arguments","length","undefined","Object","values","map","amountAvailable","availability","name","newInfoRoom","info","occupationOptions","description","roomTypeInfo","bedDistributions","bedType","galleryMedia","url3D","video","urlVideo","photos","roomSize","size","occupationQuantities","numFirstRangeChildren","minRange","numSecondRangeChildren","maxRange","numAdults","adults","numBabies","babies","totalChildren","children","posibilities","nights","nightsDeal","rates","maxOccupation","amenities","parseAmenities","bedDisposition","type","BED_DISPOSITION","bedTypes","reduce","result","next","forEach","amount","includes","parseBoards","images","photoAltDescription","alt","urlLarge","large","urlMediumRect","thumbnail","media","occupation","ages","filter","item","concat","UNIT","exports"],"sources":["../../../../src/services/Rates/helpers/getItems.js"],"sourcesContent":["import { parseAmenities } from './parseAmenities';\nimport { parseBoards } from './parseBoards';\nimport { BED_DISPOSITION, BED_TYPE, UNIT } from '../constants';\n\nconst { DOUBLE, SINGLE } = BED_TYPE;\n\nexport const getItems = ({\n currency,\n currencyCode: hotelCurrency,\n measureUnit: unit,\n roomTypes,\n showLocalTaxes: fees,\n vatIncluded: taxes,\n} = {}) =>\n Object.values(roomTypes).map(\n ({ amountAvailable: availability, name, newInfoRoom: info = {}, occupationOptions = {} } = {}) => {\n const {\n description,\n roomTypeInfo: {\n bedDistributions: bedType = [],\n galleryMedia: { url3D, video: urlVideo } = {},\n photos,\n roomSize: size,\n } = {},\n } = info;\n\n const {\n occupationQuantities: {\n numFirstRangeChildren: minRange = 0,\n numSecondRangeChildren: maxRange = 0,\n numAdults: adults = 0,\n numBabies: babies = 0,\n totalChildren: children = 0,\n } = {},\n posibilities: [{ nights: nightsDeal } = {}] = [],\n rates,\n } = Object.values(occupationOptions)[0] || {};\n\n const maxOccupation = adults + children;\n\n return {\n amenities: parseAmenities(info),\n availability,\n bedDisposition: bedType.map((type) => BED_DISPOSITION[type]),\n bedTypes: bedType.reduce((result, next) => {\n BED_DISPOSITION[next].forEach(({ amount, type } = {}) => {\n if ([DOUBLE, SINGLE].includes(type) && amount > 0) result[result.length ? 1 : 0] = type;\n });\n\n return result;\n }, []),\n ...parseBoards({ currency, fees, hotelCurrency, rates, taxes }),\n description,\n images: photos?.map(({ photoAltDescription: alt, urlLarge: large, urlMediumRect: thumbnail } = {}) => ({\n alt,\n large,\n thumbnail,\n })),\n name,\n nightsDeal,\n maxOccupation,\n media: url3D || urlVideo ? { url3D, urlVideo } : undefined,\n occupation: maxOccupation\n ? [\n adults > 0 ? { type: 2, amount: adults } : undefined,\n children > 0 ? { type: 3, ages: [minRange, maxRange], amount: children } : undefined,\n babies > 0 ? { type: 4, amount: babies } : undefined,\n ].filter((item) => !!item)\n : [],\n size: size ? `${size} ${UNIT[unit].size}` : undefined,\n };\n },\n );\n"],"mappings":"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"}
|
|
@@ -166,12 +166,18 @@ const getOccupationSuggestions = _ref => {
|
|
|
166
166
|
rooms
|
|
167
167
|
});
|
|
168
168
|
}
|
|
169
|
+
const [{
|
|
170
|
+
hasFees,
|
|
171
|
+
hasTaxes
|
|
172
|
+
}] = rooms || [];
|
|
169
173
|
return suggestions.map(function () {
|
|
170
174
|
let {
|
|
171
175
|
occupation,
|
|
172
176
|
price
|
|
173
177
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
174
178
|
return {
|
|
179
|
+
hasFees,
|
|
180
|
+
hasTaxes,
|
|
175
181
|
occupation,
|
|
176
182
|
price
|
|
177
183
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOccupationSuggestions.js","names":["_compareSuggestions","require","_getRooms","_shared__","ADULT","CHILD","GUEST","TYPE_OCCUPATION","getOccupationSuggestions","_ref","infantAge","occupation","others","isGuest","flat","some","type","arguments","length","undefined","adults","reduce","total","amount","children","ages","agesChildren","filter","totalAges","ageBaby","find","age","rooms","getRooms","suggestions","search","_ref2","availability","babies","startIndex","suggestion","compareSuggestions","initAges","push","map","Array","fill","pop","price","index","room","totalRooms","id","totalAvailability","occupied","sort","a","b","exports"],"sources":["../../../../src/services/Rates/helpers/getOccupationSuggestions.js"],"sourcesContent":["import { compareSuggestions } from './compareSuggestions';\nimport { getRooms } from './getRooms';\nimport { TYPE_OCCUPATION } from '../../../components/__shared__';\n\nconst { ADULT, CHILD, GUEST } = TYPE_OCCUPATION;\n\nexport const getOccupationSuggestions = ({ infantAge, occupation = [], ...others }) => {\n const isGuest = occupation.flat().some(({ type } = {}) => type === GUEST);\n const adults = occupation.flat().reduce((total, { amount, type } = {}) => total + (type !== CHILD ? amount : 0), 0);\n const { amount: children, ages: agesChildren } = occupation\n .flat()\n .filter(({ type } = {}) => type === CHILD)\n .reduce(\n ({ ages: totalAges, amount: total } = {}, { ages, amount } = {}) => ({\n amount: total + amount,\n ages: [...totalAges, ...ages],\n }),\n { amount: 0, ages: [] },\n );\n const ageBaby = agesChildren.find((age) => age < infantAge);\n const rooms = getRooms(others);\n const suggestions = [];\n\n const search = ({ adults, availability, babies, children, rooms, startIndex = 0, suggestion = [] }) => {\n if (\n adults === 0 &&\n children === 0 &&\n babies === 0 &&\n availability >= 0 &&\n !compareSuggestions({ suggestion, suggestions })\n ) {\n const initAges = [...agesChildren].filter((age) => age !== ageBaby);\n suggestions.push({\n occupation: suggestion.map(({ adults, babies, children } = {}) => {\n const occupation = [];\n if (adults > 0) {\n occupation.push({ ages: Array(adults).fill(undefined), amount: adults, type: isGuest ? GUEST : ADULT });\n }\n\n const ages = Array(children)\n .fill(undefined)\n .map(() => initAges.pop());\n if (babies > 0) ages.push(ageBaby);\n if (children + babies > 0) occupation.push({ ages, amount: children + babies, type: CHILD });\n\n return occupation;\n }),\n price: suggestion.reduce((total, { price } = {}) => total + price, 0),\n suggestion,\n });\n\n return;\n }\n\n for (let index = startIndex; index < rooms.length; index++) {\n const room = rooms[index];\n if (room.adults <= adults && room.children <= children && room.babies <= babies) {\n const totalRooms = rooms.filter(({ id } = {}) => id === room.id).length;\n const totalAvailability = rooms\n .filter(({ id } = {}) => id === room.id)\n .reduce((total, { availability } = {}) => total + availability, 0);\n const occupied = suggestion.filter(({ id } = {}) => id === room.id).length;\n\n search({\n adults: adults - room.adults,\n availability: totalAvailability - totalRooms - occupied,\n babies: babies - room.babies,\n children: children - room.children,\n rooms,\n startIndex: index + 1,\n suggestion: [\n ...suggestion,\n { id: room.id, adults: room.adults, children: room.children, babies: room.babies, price: room.price },\n ],\n });\n }\n }\n };\n\n search({ adults, babies: ageBaby >= 0 ? 1 : 0, children: ageBaby >= 0 ? children - 1 : children, rooms });\n\n if (suggestions.length === 0) {\n search({\n adults: ageBaby >= 0 ? adults + children - 1 : adults + children,\n babies: ageBaby >= 0 ? 1 : 0,\n children: 0,\n rooms,\n });\n }\n\n return suggestions.map(({ occupation, price } = {}) => ({ occupation, price })).sort((a, b) => a.price - b.price);\n};\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"getOccupationSuggestions.js","names":["_compareSuggestions","require","_getRooms","_shared__","ADULT","CHILD","GUEST","TYPE_OCCUPATION","getOccupationSuggestions","_ref","infantAge","occupation","others","isGuest","flat","some","type","arguments","length","undefined","adults","reduce","total","amount","children","ages","agesChildren","filter","totalAges","ageBaby","find","age","rooms","getRooms","suggestions","search","_ref2","availability","babies","startIndex","suggestion","compareSuggestions","initAges","push","map","Array","fill","pop","price","index","room","totalRooms","id","totalAvailability","occupied","hasFees","hasTaxes","sort","a","b","exports"],"sources":["../../../../src/services/Rates/helpers/getOccupationSuggestions.js"],"sourcesContent":["import { compareSuggestions } from './compareSuggestions';\nimport { getRooms } from './getRooms';\nimport { TYPE_OCCUPATION } from '../../../components/__shared__';\n\nconst { ADULT, CHILD, GUEST } = TYPE_OCCUPATION;\n\nexport const getOccupationSuggestions = ({ infantAge, occupation = [], ...others }) => {\n const isGuest = occupation.flat().some(({ type } = {}) => type === GUEST);\n const adults = occupation.flat().reduce((total, { amount, type } = {}) => total + (type !== CHILD ? amount : 0), 0);\n const { amount: children, ages: agesChildren } = occupation\n .flat()\n .filter(({ type } = {}) => type === CHILD)\n .reduce(\n ({ ages: totalAges, amount: total } = {}, { ages, amount } = {}) => ({\n amount: total + amount,\n ages: [...totalAges, ...ages],\n }),\n { amount: 0, ages: [] },\n );\n const ageBaby = agesChildren.find((age) => age < infantAge);\n const rooms = getRooms(others);\n const suggestions = [];\n\n const search = ({ adults, availability, babies, children, rooms, startIndex = 0, suggestion = [] }) => {\n if (\n adults === 0 &&\n children === 0 &&\n babies === 0 &&\n availability >= 0 &&\n !compareSuggestions({ suggestion, suggestions })\n ) {\n const initAges = [...agesChildren].filter((age) => age !== ageBaby);\n suggestions.push({\n occupation: suggestion.map(({ adults, babies, children } = {}) => {\n const occupation = [];\n if (adults > 0) {\n occupation.push({ ages: Array(adults).fill(undefined), amount: adults, type: isGuest ? GUEST : ADULT });\n }\n\n const ages = Array(children)\n .fill(undefined)\n .map(() => initAges.pop());\n if (babies > 0) ages.push(ageBaby);\n if (children + babies > 0) occupation.push({ ages, amount: children + babies, type: CHILD });\n\n return occupation;\n }),\n price: suggestion.reduce((total, { price } = {}) => total + price, 0),\n suggestion,\n });\n\n return;\n }\n\n for (let index = startIndex; index < rooms.length; index++) {\n const room = rooms[index];\n if (room.adults <= adults && room.children <= children && room.babies <= babies) {\n const totalRooms = rooms.filter(({ id } = {}) => id === room.id).length;\n const totalAvailability = rooms\n .filter(({ id } = {}) => id === room.id)\n .reduce((total, { availability } = {}) => total + availability, 0);\n const occupied = suggestion.filter(({ id } = {}) => id === room.id).length;\n\n search({\n adults: adults - room.adults,\n availability: totalAvailability - totalRooms - occupied,\n babies: babies - room.babies,\n children: children - room.children,\n rooms,\n startIndex: index + 1,\n suggestion: [\n ...suggestion,\n { id: room.id, adults: room.adults, children: room.children, babies: room.babies, price: room.price },\n ],\n });\n }\n }\n };\n\n search({ adults, babies: ageBaby >= 0 ? 1 : 0, children: ageBaby >= 0 ? children - 1 : children, rooms });\n\n if (suggestions.length === 0) {\n search({\n adults: ageBaby >= 0 ? adults + children - 1 : adults + children,\n babies: ageBaby >= 0 ? 1 : 0,\n children: 0,\n rooms,\n });\n }\n\n const [{ hasFees, hasTaxes }] = rooms || [];\n\n return suggestions\n .map(({ occupation, price } = {}) => ({ hasFees, hasTaxes, occupation, price }))\n .sort((a, b) => a.price - b.price);\n};\n"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.getRooms = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _parseBoards = require("./parseBoards");
|
|
8
8
|
const MAX_ROOM_AVAILABILITY = 5;
|
|
9
9
|
const getRooms = _ref => {
|
|
10
10
|
let {
|
|
@@ -21,7 +21,6 @@ const getRooms = _ref => {
|
|
|
21
21
|
occupationOptions
|
|
22
22
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
23
23
|
return Object.values(occupationOptions).map(function () {
|
|
24
|
-
var _parseBoards, _parseBoards$boards, _parseBoards$boards$;
|
|
25
24
|
let {
|
|
26
25
|
occupationQuantities: {
|
|
27
26
|
numAdults,
|
|
@@ -30,19 +29,28 @@ const getRooms = _ref => {
|
|
|
30
29
|
} = {},
|
|
31
30
|
rates
|
|
32
31
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
32
|
+
const {
|
|
33
|
+
boards: [{
|
|
34
|
+
fees: hasFees,
|
|
35
|
+
taxes: hasTaxes,
|
|
36
|
+
price
|
|
37
|
+
} = {}] = []
|
|
38
|
+
} = (0, _parseBoards.parseBoards)({
|
|
39
|
+
currency,
|
|
40
|
+
fees,
|
|
41
|
+
hotelCurrency,
|
|
42
|
+
rates,
|
|
43
|
+
taxes
|
|
44
|
+
}) || {};
|
|
33
45
|
return {
|
|
34
46
|
adults: numAdults,
|
|
35
47
|
availability,
|
|
36
48
|
babies: numBabies,
|
|
37
49
|
children: totalChildren,
|
|
50
|
+
hasFees,
|
|
51
|
+
hasTaxes,
|
|
38
52
|
id,
|
|
39
|
-
price
|
|
40
|
-
currency,
|
|
41
|
-
fees,
|
|
42
|
-
hotelCurrency,
|
|
43
|
-
rates,
|
|
44
|
-
taxes
|
|
45
|
-
})) === null || _parseBoards === void 0 ? void 0 : (_parseBoards$boards = _parseBoards.boards) === null || _parseBoards$boards === void 0 ? void 0 : (_parseBoards$boards$ = _parseBoards$boards[0]) === null || _parseBoards$boards$ === void 0 ? void 0 : _parseBoards$boards$.price
|
|
53
|
+
price
|
|
46
54
|
};
|
|
47
55
|
});
|
|
48
56
|
}).sort((a, b) => a.price - b.price).reduce((result, current) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRooms.js","names":["
|
|
1
|
+
{"version":3,"file":"getRooms.js","names":["_parseBoards","require","MAX_ROOM_AVAILABILITY","getRooms","_ref","currency","fees","hotelCurrency","roomTypes","taxes","Object","values","flatMap","amountAvailable","availability","id","occupationOptions","arguments","length","undefined","map","occupationQuantities","numAdults","numBabies","totalChildren","rates","boards","hasFees","hasTaxes","price","parseBoards","adults","babies","children","sort","a","b","reduce","result","current","key","concat","room","Array","fill","exports"],"sources":["../../../../src/services/Rates/helpers/getRooms.js"],"sourcesContent":["import { parseBoards } from './parseBoards';\n\nconst MAX_ROOM_AVAILABILITY = 5;\n\nexport const getRooms = ({ currency, fees, hotelCurrency, roomTypes, taxes }) =>\n Object.values(\n Object.values(roomTypes)\n .flatMap(({ amountAvailable: availability, id, occupationOptions } = {}) =>\n Object.values(occupationOptions).map(\n ({ occupationQuantities: { numAdults, numBabies, totalChildren } = {}, rates } = {}) => {\n const { boards: [{ fees: hasFees, taxes: hasTaxes, price } = {}] = [] } =\n parseBoards({ currency, fees, hotelCurrency, rates, taxes }) || {};\n\n return {\n adults: numAdults,\n availability,\n babies: numBabies,\n children: totalChildren,\n hasFees,\n hasTaxes,\n id,\n price,\n };\n },\n ),\n )\n .sort((a, b) => a.price - b.price)\n .reduce((result, current) => {\n const key = `${current.adults}-${current.babies}-${current.children}`;\n if (!result[key]) result[key] = current;\n\n return result;\n }, {}),\n ).flatMap((room) =>\n Array(room.availability > MAX_ROOM_AVAILABILITY ? MAX_ROOM_AVAILABILITY : room.availability)\n .fill(undefined)\n .map(() => room),\n );\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,qBAAqB,GAAG,CAAC;AAExB,MAAMC,QAAQ,GAAGC,IAAA;EAAA,IAAC;IAAEC,QAAQ;IAAEC,IAAI;IAAEC,aAAa;IAAEC,SAAS;IAAEC;EAAM,CAAC,GAAAL,IAAA;EAAA,OAC1EM,MAAM,CAACC,MAAM,CACXD,MAAM,CAACC,MAAM,CAACH,SAAS,CAAC,CACrBI,OAAO,CAAC;IAAA,IAAC;MAAEC,eAAe,EAAEC,YAAY;MAAEC,EAAE;MAAEC;IAAkB,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OACrEP,MAAM,CAACC,MAAM,CAACK,iBAAiB,CAAC,CAACI,GAAG,CAClC,YAAwF;MAAA,IAAvF;QAAEC,oBAAoB,EAAE;UAAEC,SAAS;UAAEC,SAAS;UAAEC;QAAc,CAAC,GAAG,CAAC,CAAC;QAAEC;MAAM,CAAC,GAAAR,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MACjF,MAAM;QAAES,MAAM,EAAE,CAAC;UAAEpB,IAAI,EAAEqB,OAAO;UAAElB,KAAK,EAAEmB,QAAQ;UAAEC;QAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;MAAG,CAAC,GACrE,IAAAC,wBAAW,EAAC;QAAEzB,QAAQ;QAAEC,IAAI;QAAEC,aAAa;QAAEkB,KAAK;QAAEhB;MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;MAEpE,OAAO;QACLsB,MAAM,EAAET,SAAS;QACjBR,YAAY;QACZkB,MAAM,EAAET,SAAS;QACjBU,QAAQ,EAAET,aAAa;QACvBG,OAAO;QACPC,QAAQ;QACRb,EAAE;QACFc;MACF,CAAC;IACH,CACF,CAAC;EAAA,CACH,CAAC,CACAK,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACN,KAAK,GAAGO,CAAC,CAACP,KAAK,CAAC,CACjCQ,MAAM,CAAC,CAACC,MAAM,EAAEC,OAAO,KAAK;IAC3B,MAAMC,GAAG,MAAAC,MAAA,CAAMF,OAAO,CAACR,MAAM,OAAAU,MAAA,CAAIF,OAAO,CAACP,MAAM,OAAAS,MAAA,CAAIF,OAAO,CAACN,QAAQ,CAAE;IACrE,IAAI,CAACK,MAAM,CAACE,GAAG,CAAC,EAAEF,MAAM,CAACE,GAAG,CAAC,GAAGD,OAAO;IAEvC,OAAOD,MAAM;EACf,CAAC,EAAE,CAAC,CAAC,CACT,CAAC,CAAC1B,OAAO,CAAE8B,IAAI,IACbC,KAAK,CAACD,IAAI,CAAC5B,YAAY,GAAGZ,qBAAqB,GAAGA,qBAAqB,GAAGwC,IAAI,CAAC5B,YAAY,CAAC,CACzF8B,IAAI,CAACzB,SAAS,CAAC,CACfC,GAAG,CAAC,MAAMsB,IAAI,CACnB,CAAC;AAAA;AAACG,OAAA,CAAA1C,QAAA,GAAAA,QAAA"}
|
|
@@ -7,10 +7,20 @@ exports.getTaxesType = void 0;
|
|
|
7
7
|
var _Core = require("../../../Core.constants");
|
|
8
8
|
const getTaxesType = function () {
|
|
9
9
|
let {
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
fees,
|
|
11
|
+
taxes,
|
|
12
|
+
hasFees,
|
|
13
|
+
hasTaxes
|
|
12
14
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
13
|
-
|
|
15
|
+
let type;
|
|
16
|
+
if (hasFees && hasTaxes) {
|
|
17
|
+
if (fees && taxes) type = _Core.TAXES_TYPE.ALL_INCLUDED;else if (!fees && !taxes) type = _Core.TAXES_TYPE.ALL_EXCLUDED;else if (fees && !taxes) type = _Core.TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED;else type = _Core.TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED;
|
|
18
|
+
} else if (hasFees) {
|
|
19
|
+
if (fees) type = _Core.TAXES_TYPE.FEES_INCLUDED;else type = _Core.TAXES_TYPE.FEES_EXCLUDED;
|
|
20
|
+
} else if (hasTaxes) {
|
|
21
|
+
if (taxes) type = _Core.TAXES_TYPE.TAXES_INCLUDED;else type = _Core.TAXES_TYPE.TAXES_EXCLUDED;
|
|
22
|
+
}
|
|
23
|
+
return type;
|
|
14
24
|
};
|
|
15
25
|
exports.getTaxesType = getTaxesType;
|
|
16
26
|
//# sourceMappingURL=getTaxesType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTaxesType.js","names":["_Core","require","getTaxesType","
|
|
1
|
+
{"version":3,"file":"getTaxesType.js","names":["_Core","require","getTaxesType","fees","taxes","hasFees","hasTaxes","arguments","length","undefined","type","TAXES_TYPE","ALL_INCLUDED","ALL_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","FEES_INCLUDED","FEES_EXCLUDED","TAXES_INCLUDED","TAXES_EXCLUDED","exports"],"sources":["../../../../src/services/Rates/helpers/getTaxesType.js"],"sourcesContent":["import { TAXES_TYPE } from '../../../Core.constants';\n\nexport const getTaxesType = ({ fees, taxes, hasFees, hasTaxes } = {}) => {\n let type;\n\n if (hasFees && hasTaxes) {\n if (fees && taxes) type = TAXES_TYPE.ALL_INCLUDED;\n else if (!fees && !taxes) type = TAXES_TYPE.ALL_EXCLUDED;\n else if (fees && !taxes) type = TAXES_TYPE.FEES_INCLUDED_TAXES_EXCLUDED;\n else type = TAXES_TYPE.TAXES_INCLUDED_FEES_EXCLUDED;\n } else if (hasFees) {\n if (fees) type = TAXES_TYPE.FEES_INCLUDED;\n else type = TAXES_TYPE.FEES_EXCLUDED;\n } else if (hasTaxes) {\n if (taxes) type = TAXES_TYPE.TAXES_INCLUDED;\n else type = TAXES_TYPE.TAXES_EXCLUDED;\n }\n\n return type;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,YAAY,GAAG,SAAAA,CAAA,EAA6C;EAAA,IAA5C;IAAEC,IAAI;IAAEC,KAAK;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAClE,IAAIG,IAAI;EAER,IAAIL,OAAO,IAAIC,QAAQ,EAAE;IACvB,IAAIH,IAAI,IAAIC,KAAK,EAAEM,IAAI,GAAGC,gBAAU,CAACC,YAAY,CAAC,KAC7C,IAAI,CAACT,IAAI,IAAI,CAACC,KAAK,EAAEM,IAAI,GAAGC,gBAAU,CAACE,YAAY,CAAC,KACpD,IAAIV,IAAI,IAAI,CAACC,KAAK,EAAEM,IAAI,GAAGC,gBAAU,CAACG,4BAA4B,CAAC,KACnEJ,IAAI,GAAGC,gBAAU,CAACI,4BAA4B;EACrD,CAAC,MAAM,IAAIV,OAAO,EAAE;IAClB,IAAIF,IAAI,EAAEO,IAAI,GAAGC,gBAAU,CAACK,aAAa,CAAC,KACrCN,IAAI,GAAGC,gBAAU,CAACM,aAAa;EACtC,CAAC,MAAM,IAAIX,QAAQ,EAAE;IACnB,IAAIF,KAAK,EAAEM,IAAI,GAAGC,gBAAU,CAACO,cAAc,CAAC,KACvCR,IAAI,GAAGC,gBAAU,CAACQ,cAAc;EACvC;EAEA,OAAOT,IAAI;AACb,CAAC;AAACU,OAAA,CAAAlB,YAAA,GAAAA,YAAA"}
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
var _getItems = require("./getItems");
|
|
7
|
+
Object.keys(_getItems).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _getItems[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _getItems[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
6
17
|
var _getPrice = require("./getPrice");
|
|
7
18
|
Object.keys(_getPrice).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":["_getItems","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_getPrice","_getTaxesType","_normalizePrice","_parseAmenities","_parseBoards","_parseDiscount","_parseExternalToken","_parseHotelDiscount","_parseTracking","_parseUnavailability"],"sources":["../../../../src/services/Rates/helpers/index.js"],"sourcesContent":["export * from './getItems';\nexport * from './getPrice';\nexport * from './getTaxesType';\nexport * from './normalizePrice';\nexport * from './parseAmenities';\nexport * from './parseBoards';\nexport * from './parseDiscount';\nexport * from './parseExternalToken';\nexport * from './parseHotelDiscount';\nexport * from './parseTracking';\nexport * from './parseUnavailability';\n"],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ const parseUnavailability = function () {
|
|
|
21
21
|
} = {},
|
|
22
22
|
occupation: propOccupation,
|
|
23
23
|
roomTypes,
|
|
24
|
+
showLocalTaxes: fees,
|
|
25
|
+
vatIncluded: taxes,
|
|
24
26
|
...response
|
|
25
27
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
26
28
|
let calendar;
|
|
@@ -80,6 +82,10 @@ const parseUnavailability = function () {
|
|
|
80
82
|
occupation: propOccupation
|
|
81
83
|
});
|
|
82
84
|
}
|
|
85
|
+
const [{
|
|
86
|
+
hasFees,
|
|
87
|
+
hasTaxes
|
|
88
|
+
} = {}] = occupation || [];
|
|
83
89
|
return hotels || calendar || occupation ? {
|
|
84
90
|
calendar: {
|
|
85
91
|
disabledDates,
|
|
@@ -92,7 +98,12 @@ const parseUnavailability = function () {
|
|
|
92
98
|
description,
|
|
93
99
|
occupation
|
|
94
100
|
},
|
|
95
|
-
taxesType: (0, _getTaxesType.getTaxesType)(
|
|
101
|
+
taxesType: (0, _getTaxesType.getTaxesType)({
|
|
102
|
+
fees,
|
|
103
|
+
hasFees,
|
|
104
|
+
hasTaxes,
|
|
105
|
+
taxes
|
|
106
|
+
})
|
|
96
107
|
} : undefined;
|
|
97
108
|
};
|
|
98
109
|
exports.parseUnavailability = parseUnavailability;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseUnavailability.js","names":["_getCalendarSuggestions","require","_getDisabledDates","_getMinStayDates","_getOccupationSuggestions","_getTaxesType","_Core","BY_CHECK_IN","parseUnavailability","availabilitySuggestions","availability","firstChildInterval","messages","availabilityMessage","noAvailabilityMessage","occupation","propOccupation","roomTypes","response","arguments","length","undefined","calendar","disabledDates","description","minStayDates","minStayType","hotels","_availability$hotelSu","minimumStayConfig","config","MIN_STAY_TYPE","CHECK_IN","STAY","getCalendarSuggestions","getDisabledDates","getMinStayDates","noDispoMessage","hotelSuggestions","map","_ref","distanceMessage","distance","idtokenprovider","id","location","name","photo","rates","price","url","rest","split","features","images","join","notOccupationRequested","infantAge","lowerBound","getOccupationSuggestions","suggestions","taxesType","getTaxesType","exports"],"sources":["../../../../src/services/Rates/helpers/parseUnavailability.js"],"sourcesContent":["import { getCalendarSuggestions } from './getCalendarSuggestions';\nimport { getDisabledDates } from './getDisabledDates';\nimport { getMinStayDates } from './getMinStayDates';\nimport { getOccupationSuggestions } from './getOccupationSuggestions';\nimport { getTaxesType } from './getTaxesType';\nimport { MIN_STAY_TYPE } from '../../../Core.constants';\n\nconst BY_CHECK_IN = 'BY_CHECKIN';\n\nexport const parseUnavailability = ({\n availabilitySuggestions: availability,\n firstChildInterval,\n messages: { availabilityMessage, noAvailabilityMessage } = {},\n occupation: propOccupation,\n roomTypes,\n ...response\n} = {}) => {\n let calendar;\n let disabledDates;\n let description;\n let minStayDates;\n let minStayType;\n let occupation;\n let hotels;\n\n if (availability !== null) {\n const { calendar: { minimumStayConfig: config = BY_CHECK_IN } = {} } = availability;\n\n minStayType = config === BY_CHECK_IN ? MIN_STAY_TYPE.CHECK_IN : MIN_STAY_TYPE.STAY;\n calendar = getCalendarSuggestions({ ...availability, ...response, minStayType });\n disabledDates = getDisabledDates(availability);\n minStayDates = getMinStayDates(availability);\n description = noAvailabilityMessage?.noDispoMessage;\n hotels = availability?.hotelSuggestions?.map(\n ({\n distanceMessage: distance,\n idtokenprovider: id,\n location,\n name,\n photo,\n rates: [{ price = 0 } = {}] = [],\n url,\n }) => {\n const [, ...rest] = name.split(' ');\n\n return { features: { distance, location, url }, id, images: [photo], name: rest.join(' '), price: price / 100 };\n },\n );\n }\n if (availabilityMessage !== null && availabilityMessage.notOccupationRequested != null) {\n const infantAge = firstChildInterval?.lowerBound;\n occupation = getOccupationSuggestions({ infantAge, roomTypes, occupation: propOccupation });\n }\n\n return hotels || calendar || occupation\n ? {\n calendar: { disabledDates, minStayDates, minStayType },\n hotels,\n suggestions: { calendar, description, occupation },\n taxesType: getTaxesType(
|
|
1
|
+
{"version":3,"file":"parseUnavailability.js","names":["_getCalendarSuggestions","require","_getDisabledDates","_getMinStayDates","_getOccupationSuggestions","_getTaxesType","_Core","BY_CHECK_IN","parseUnavailability","availabilitySuggestions","availability","firstChildInterval","messages","availabilityMessage","noAvailabilityMessage","occupation","propOccupation","roomTypes","showLocalTaxes","fees","vatIncluded","taxes","response","arguments","length","undefined","calendar","disabledDates","description","minStayDates","minStayType","hotels","_availability$hotelSu","minimumStayConfig","config","MIN_STAY_TYPE","CHECK_IN","STAY","getCalendarSuggestions","getDisabledDates","getMinStayDates","noDispoMessage","hotelSuggestions","map","_ref","distanceMessage","distance","idtokenprovider","id","location","name","photo","rates","price","url","rest","split","features","images","join","notOccupationRequested","infantAge","lowerBound","getOccupationSuggestions","hasFees","hasTaxes","suggestions","taxesType","getTaxesType","exports"],"sources":["../../../../src/services/Rates/helpers/parseUnavailability.js"],"sourcesContent":["import { getCalendarSuggestions } from './getCalendarSuggestions';\nimport { getDisabledDates } from './getDisabledDates';\nimport { getMinStayDates } from './getMinStayDates';\nimport { getOccupationSuggestions } from './getOccupationSuggestions';\nimport { getTaxesType } from './getTaxesType';\nimport { MIN_STAY_TYPE } from '../../../Core.constants';\n\nconst BY_CHECK_IN = 'BY_CHECKIN';\n\nexport const parseUnavailability = ({\n availabilitySuggestions: availability,\n firstChildInterval,\n messages: { availabilityMessage, noAvailabilityMessage } = {},\n occupation: propOccupation,\n roomTypes,\n showLocalTaxes: fees,\n vatIncluded: taxes,\n ...response\n} = {}) => {\n let calendar;\n let disabledDates;\n let description;\n let minStayDates;\n let minStayType;\n let occupation;\n let hotels;\n\n if (availability !== null) {\n const { calendar: { minimumStayConfig: config = BY_CHECK_IN } = {} } = availability;\n\n minStayType = config === BY_CHECK_IN ? MIN_STAY_TYPE.CHECK_IN : MIN_STAY_TYPE.STAY;\n calendar = getCalendarSuggestions({ ...availability, ...response, minStayType });\n disabledDates = getDisabledDates(availability);\n minStayDates = getMinStayDates(availability);\n description = noAvailabilityMessage?.noDispoMessage;\n hotels = availability?.hotelSuggestions?.map(\n ({\n distanceMessage: distance,\n idtokenprovider: id,\n location,\n name,\n photo,\n rates: [{ price = 0 } = {}] = [],\n url,\n }) => {\n const [, ...rest] = name.split(' ');\n\n return { features: { distance, location, url }, id, images: [photo], name: rest.join(' '), price: price / 100 };\n },\n );\n }\n if (availabilityMessage !== null && availabilityMessage.notOccupationRequested != null) {\n const infantAge = firstChildInterval?.lowerBound;\n occupation = getOccupationSuggestions({ infantAge, roomTypes, occupation: propOccupation });\n }\n\n const [{ hasFees, hasTaxes } = {}] = occupation || [];\n\n return hotels || calendar || occupation\n ? {\n calendar: { disabledDates, minStayDates, minStayType },\n hotels,\n suggestions: { calendar, description, occupation },\n taxesType: getTaxesType({ fees, hasFees, hasTaxes, taxes }),\n }\n : undefined;\n};\n"],"mappings":"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"}
|
|
@@ -12,10 +12,6 @@ var _helpers = require("./helpers");
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
/* eslint-disable no-async-promise-executor */
|
|
14
14
|
|
|
15
|
-
const {
|
|
16
|
-
DOUBLE,
|
|
17
|
-
SINGLE
|
|
18
|
-
} = _constants.BED_TYPE;
|
|
19
15
|
const FEATURE = {
|
|
20
16
|
PESTANA: 'pestana'
|
|
21
17
|
};
|
|
@@ -82,111 +78,42 @@ const rates = function () {
|
|
|
82
78
|
club,
|
|
83
79
|
currencyCode: hotelCurrency,
|
|
84
80
|
firstChildInterval = {},
|
|
85
|
-
|
|
86
|
-
|
|
81
|
+
messages: {
|
|
82
|
+
availabilityMessage: {
|
|
83
|
+
increments
|
|
84
|
+
} = {}
|
|
85
|
+
} = {},
|
|
87
86
|
showLocalTaxes: fees,
|
|
88
87
|
userCountry: country,
|
|
89
88
|
vatIncluded: taxes
|
|
90
89
|
} = response;
|
|
91
90
|
const currency = userCurrency || hotelCurrency;
|
|
92
91
|
await _services.ServiceCurrency.exchange(currency);
|
|
93
|
-
const items = Object.values(roomTypes);
|
|
94
92
|
const infantAge = firstChildInterval === null || firstChildInterval === void 0 ? void 0 : firstChildInterval.lowerBound;
|
|
93
|
+
const items = (0, _helpers.getItems)({
|
|
94
|
+
...response,
|
|
95
|
+
currency
|
|
96
|
+
});
|
|
97
|
+
const [{
|
|
98
|
+
boards: [{
|
|
99
|
+
fees: hasFees,
|
|
100
|
+
taxes: hasTaxes
|
|
101
|
+
} = {}] = []
|
|
102
|
+
} = {}] = items || [];
|
|
95
103
|
resolve({
|
|
96
104
|
clubConditions: _services.ServiceFeatures.get(FEATURE.PESTANA, id) ? _constants.EXTERNAL.URL[language] || _constants.EXTERNAL.URL[_constants.DEFAULT_LANGUAGE] : undefined,
|
|
97
105
|
country,
|
|
98
106
|
currency: hotelCurrency,
|
|
99
107
|
externalSignout: authorization && type === _constants.EXTERNAL.TYPE && (club === null || club === void 0 ? void 0 : (_club$clubLogin = club.clubLogin) === null || _club$clubLogin === void 0 ? void 0 : _club$clubLogin.status) !== _constants.VALID,
|
|
108
|
+
increments: increments || undefined,
|
|
100
109
|
infantAge: infantAge !== null ? infantAge : undefined,
|
|
101
|
-
items
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
108
|
-
const {
|
|
109
|
-
description,
|
|
110
|
-
roomTypeInfo: {
|
|
111
|
-
bedDistributions: bedType = [],
|
|
112
|
-
galleryMedia: {
|
|
113
|
-
url3D,
|
|
114
|
-
video: urlVideo
|
|
115
|
-
} = {},
|
|
116
|
-
photos,
|
|
117
|
-
roomSize: size
|
|
118
|
-
} = {}
|
|
119
|
-
} = info;
|
|
120
|
-
const {
|
|
121
|
-
occupationQuantities: {
|
|
122
|
-
numFirstRangeChildren: minRange = 0,
|
|
123
|
-
numSecondRangeChildren: maxRange = 0,
|
|
124
|
-
numAdults: adults = 0,
|
|
125
|
-
numBabies: babies = 0,
|
|
126
|
-
totalChildren: children = 0
|
|
127
|
-
} = {},
|
|
128
|
-
posibilities: [{
|
|
129
|
-
nights: nightsDeal
|
|
130
|
-
} = {}] = [],
|
|
131
|
-
rates
|
|
132
|
-
} = Object.values(occupationOptions)[0] || {};
|
|
133
|
-
const maxOccupation = adults + children;
|
|
134
|
-
return {
|
|
135
|
-
amenities: (0, _helpers.parseAmenities)(info),
|
|
136
|
-
availability,
|
|
137
|
-
bedDisposition: bedType.map(type => _constants.BED_DISPOSITION[type]),
|
|
138
|
-
bedTypes: bedType.reduce((result, next) => {
|
|
139
|
-
_constants.BED_DISPOSITION[next].forEach(function () {
|
|
140
|
-
let {
|
|
141
|
-
amount,
|
|
142
|
-
type
|
|
143
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
144
|
-
if ([DOUBLE, SINGLE].includes(type) && amount > 0) result[result.length ? 1 : 0] = type;
|
|
145
|
-
});
|
|
146
|
-
return result;
|
|
147
|
-
}, []),
|
|
148
|
-
...(0, _helpers.parseBoards)({
|
|
149
|
-
currency,
|
|
150
|
-
fees,
|
|
151
|
-
hotelCurrency,
|
|
152
|
-
rates,
|
|
153
|
-
taxes
|
|
154
|
-
}),
|
|
155
|
-
description,
|
|
156
|
-
images: photos === null || photos === void 0 ? void 0 : photos.map(function () {
|
|
157
|
-
let {
|
|
158
|
-
photoAltDescription: alt,
|
|
159
|
-
urlLarge: large,
|
|
160
|
-
urlMediumRect: thumbnail
|
|
161
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
162
|
-
return {
|
|
163
|
-
alt,
|
|
164
|
-
large,
|
|
165
|
-
thumbnail
|
|
166
|
-
};
|
|
167
|
-
}),
|
|
168
|
-
name,
|
|
169
|
-
nightsDeal,
|
|
170
|
-
maxOccupation,
|
|
171
|
-
media: url3D || urlVideo ? {
|
|
172
|
-
url3D,
|
|
173
|
-
urlVideo
|
|
174
|
-
} : undefined,
|
|
175
|
-
occupation: maxOccupation ? [adults > 0 ? {
|
|
176
|
-
type: 2,
|
|
177
|
-
amount: adults
|
|
178
|
-
} : undefined, children > 0 ? {
|
|
179
|
-
type: 3,
|
|
180
|
-
ages: [minRange, maxRange],
|
|
181
|
-
amount: children
|
|
182
|
-
} : undefined, babies > 0 ? {
|
|
183
|
-
type: 4,
|
|
184
|
-
amount: babies
|
|
185
|
-
} : undefined].filter(item => !!item) : [],
|
|
186
|
-
size: size ? "".concat(size, " ").concat(_constants.UNIT[unit].size) : undefined
|
|
187
|
-
};
|
|
110
|
+
items,
|
|
111
|
+
taxesType: (0, _helpers.getTaxesType)({
|
|
112
|
+
fees,
|
|
113
|
+
hasFees,
|
|
114
|
+
hasTaxes,
|
|
115
|
+
taxes
|
|
188
116
|
}),
|
|
189
|
-
taxesType: (0, _helpers.getTaxesType)(response),
|
|
190
117
|
tracking: (0, _helpers.parseTracking)(response)
|
|
191
118
|
});
|
|
192
119
|
});
|