@mirai/core 0.3.59 → 0.3.61
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.js +1 -1
- package/build/Core.js.map +1 -1
- package/build/components/Finder/helpers/getForwarderUrl.js +4 -2
- package/build/components/Finder/helpers/getForwarderUrl.js.map +1 -1
- package/build/components/Rates/Rates.Footer.js +65 -77
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/{Rates.Filter.js → Rates.Header.js} +53 -80
- package/build/components/Rates/Rates.Header.js.map +1 -0
- package/build/components/Rates/Rates.RoomSelector.js +96 -0
- package/build/components/Rates/Rates.RoomSelector.js.map +1 -0
- package/build/components/Rates/Rates.Skeleton.js +116 -40
- package/build/components/Rates/Rates.Skeleton.js.map +1 -1
- package/build/components/Rates/Rates.constants.js +7 -1
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.js +90 -47
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +16 -7
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/Rates.module.css +149 -67
- package/build/components/Rates/components/Item/Item.Preview.js +46 -29
- package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Rates.js +112 -143
- package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Summary.js +141 -0
- package/build/components/Rates/components/Item/Item.Summary.js.map +1 -0
- package/build/components/Rates/components/Item/Item.js +67 -64
- package/build/components/Rates/components/Item/Item.js.map +1 -1
- package/build/components/Rates/components/Item/Item.l10n.js +22 -0
- package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/Item.module.css +80 -104
- package/build/components/Rates/components/Item/components/Amenities/Amenities.js +15 -9
- package/build/components/Rates/components/Item/components/Amenities/Amenities.js.map +1 -1
- package/build/components/Rates/components/Item/components/Amenities/Amenities.module.css +11 -3
- package/build/components/Rates/components/Item/components/Discount/Discount.js +14 -13
- package/build/components/Rates/components/Item/components/Discount/Discount.js.map +1 -1
- package/build/components/Rates/components/Item/components/Discount/Discount.module.css +4 -3
- package/build/components/Rates/components/Item/components/Features/Features.js +4 -10
- package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
- package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -5
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js +34 -6
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalInfo/ModalInfo.module.css +7 -0
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js +18 -9
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.js.map +1 -1
- package/build/components/Rates/components/Item/components/ModalRateInfo/ModalRateInfo.module.css +17 -1
- package/build/components/Rates/components/Item/components/ModalUrl/ModalUrl.module.css +1 -1
- package/build/components/Rates/components/Item/components/Option/Option.js +72 -0
- package/build/components/Rates/components/Item/components/Option/Option.js.map +1 -0
- package/build/components/Rates/components/Item/components/Option/Option.module.css +24 -0
- package/build/components/Rates/components/Item/components/Option/index.js +17 -0
- package/build/components/Rates/components/Item/components/Option/index.js.map +1 -0
- package/build/components/Rates/components/Item/components/index.js +11 -0
- package/build/components/Rates/components/Item/components/index.js.map +1 -1
- package/build/components/Rates/helpers/getForwarderUrl.js +23 -12
- package/build/components/Rates/helpers/getForwarderUrl.js.map +1 -1
- package/build/components/helpers/ICON.js +10 -2
- package/build/components/helpers/ICON.js.map +1 -1
- package/build/components/helpers/index.js +11 -0
- package/build/components/helpers/index.js.map +1 -1
- package/build/components/helpers/opacity.js +17 -0
- package/build/components/helpers/opacity.js.map +1 -0
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +1662 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +296 -510
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +895 -1795
- package/build/services/Rates/__tests__/__mocks__/rates-response.json +197 -369
- package/build/services/Rates/__tests__/__mocks__/rates-success-cancel-types.json +32481 -0
- package/build/services/Rates/constants.js +18 -1
- package/build/services/Rates/constants.js.map +1 -1
- package/build/services/Rates/get.js +41 -112
- package/build/services/Rates/get.js.map +1 -1
- package/build/services/Rates/helpers/getIncrements.js +69 -0
- package/build/services/Rates/helpers/getIncrements.js.map +1 -0
- package/build/services/Rates/helpers/index.js +22 -0
- package/build/services/Rates/helpers/index.js.map +1 -1
- package/build/services/Rates/helpers/parseBoards.js +156 -0
- package/build/services/Rates/helpers/parseBoards.js.map +1 -0
- package/build/services/Rates/helpers/parseExternalToken.js +24 -0
- package/build/services/Rates/helpers/parseExternalToken.js.map +1 -0
- package/package.json +1 -1
- package/public/App.module.css +5 -0
- package/public/themes/monalisa.theme.css +3 -0
- package/build/components/Rates/Rates.Filter.js.map +0 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.UNIT = exports.CURRENCIES_WITHOUT_DECIMALS = exports.BED_TYPE = exports.BED_DISPOSITION = void 0;
|
|
6
|
+
exports.VALID = exports.UNIT = exports.KEY_HASH = exports.EXTERNAL = exports.DEFAULT_LANGUAGE = exports.CURRENCIES_WITHOUT_DECIMALS = exports.BED_TYPE = exports.BED_DISPOSITION = void 0;
|
|
7
7
|
const SINGLE = 1;
|
|
8
8
|
const DOUBLE = 2;
|
|
9
9
|
const BED_DISPOSITION = exports.BED_DISPOSITION = {
|
|
@@ -77,6 +77,22 @@ const BED_TYPE = exports.BED_TYPE = {
|
|
|
77
77
|
DOUBLE
|
|
78
78
|
};
|
|
79
79
|
const CURRENCIES_WITHOUT_DECIMALS = exports.CURRENCIES_WITHOUT_DECIMALS = ['KRW', 'JPY', 'IDR', 'ISK'];
|
|
80
|
+
const DEFAULT_LANGUAGE = exports.DEFAULT_LANGUAGE = 'en';
|
|
81
|
+
const EXTERNAL = exports.EXTERNAL = {
|
|
82
|
+
ID: ['100377454', '100377444', '100378056', '100378057', '100378060', '100378062', '100378058', '100378059', '100378061', '100378063', '100378102', '100378108', '100378106', '100377194', '100378246', '100378209', '100378249', '100378315', '100378316', '100378317', '100378318', '100378319', '100378320', '100378321', '100378322', '100378323', '100378324', '100378325', '100378326', '100378327', '100378328', '100378329', '100378245', '100378242', '100378243', '100378241', '100378244', '100378385', '100378386', '100378472', '100378473', '100378474', '100378475', '100378476', '100378477', '100378478', '100378384', '100378563', '100378562', '100378559', '100378323', '100378556', '100378558', '100378555', '100378557', '100378553', '100378561', '100378556', '100378599', '100378565', '100378596', '100378561', '100378604', '100378590', '100378591', '100378597', '100378592', '100378593', '100378614', '100378606', '100378598', '100378601', '100378602', '100378600', '100378594', '100378605', '100378603', '100378607', '100378608', '100378609', '100378610', '100378612', '100378611', '100378613', '100378677', '100378589', '100378564', '100379044'],
|
|
83
|
+
TYPE: 3,
|
|
84
|
+
URL: {
|
|
85
|
+
en: 'https://www.pestana.com/en/contents/pgc/pgc-regulation',
|
|
86
|
+
es: 'https://www.pestana.com/es/contents/pgc/pgc-reglamento',
|
|
87
|
+
de: 'https://www.pestana.com/de/contents/pgc/pgc-regulierung',
|
|
88
|
+
fr: 'https://www.pestana.com/fr/contents/pgc/pgc-reglement',
|
|
89
|
+
it: 'https://www.pestana.com/it/contents/pgc/pgc-regolazione',
|
|
90
|
+
pt: 'https://www.pestana.com/pt/contents/pgc/pgc-regulamento',
|
|
91
|
+
ru: 'https://www.pestana.com/ru/contents/pgc/pgc-regulation',
|
|
92
|
+
nl: 'https://www.pestana.com/en/contents/pgc/pgc-regulation'
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
const KEY_HASH = exports.KEY_HASH = 'm14357';
|
|
80
96
|
const UNIT = exports.UNIT = {
|
|
81
97
|
imperial: {
|
|
82
98
|
bed: 'inches',
|
|
@@ -87,4 +103,5 @@ const UNIT = exports.UNIT = {
|
|
|
87
103
|
size: 'm²'
|
|
88
104
|
}
|
|
89
105
|
};
|
|
106
|
+
const VALID = exports.VALID = 'VALID';
|
|
90
107
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":["SINGLE","DOUBLE","BED_DISPOSITION","exports","ONE_SINGLE","amount","type","ONE_DOUBLE","TWO_SINGLES","TWO_DOUBLES","THREE_SINGLES","ONE_DOUBLE_ONE_SINGLE","FOUR_SINGLES","ONE_DOUBLE_TWO_SINGLES","FIVE_SINGLES","ONE_DOUBLE_THREE_SINGLES","TWO_DOUBLES_ONE_SINGLE","MORE_THAN_FIVE_BEDS","NO_BED","BED_TYPE","CURRENCIES_WITHOUT_DECIMALS","UNIT","imperial","bed","size","metric"],"sources":["../../../src/services/Rates/constants.js"],"sourcesContent":["const SINGLE = 1;\nconst DOUBLE = 2;\n\nconst BED_DISPOSITION = {\n ONE_SINGLE: [{ amount: 1, type: SINGLE }],\n ONE_DOUBLE: [{ amount: 1, type: DOUBLE }],\n TWO_SINGLES: [{ amount: 2, type: SINGLE }],\n TWO_DOUBLES: [{ amount: 2, type: DOUBLE }],\n THREE_SINGLES: [{ amount: 3, type: SINGLE }],\n ONE_DOUBLE_ONE_SINGLE: [\n { amount: 1, type: DOUBLE },\n { amount: 1, type: SINGLE },\n ],\n FOUR_SINGLES: [{ amount: 4, type: SINGLE }],\n ONE_DOUBLE_TWO_SINGLES: [\n { amount: 1, type: DOUBLE },\n { amount: 2, type: SINGLE },\n ],\n FIVE_SINGLES: [{ amount: 5, type: SINGLE }],\n ONE_DOUBLE_THREE_SINGLES: [\n { amount: 1, type: DOUBLE },\n { amount: 3, type: SINGLE },\n ],\n TWO_DOUBLES_ONE_SINGLE: [\n { amount: 2, type: DOUBLE },\n { amount: 1, type: SINGLE },\n ],\n MORE_THAN_FIVE_BEDS: [\n { amount: 6, type: DOUBLE },\n { amount: 6, type: SINGLE },\n ],\n NO_BED: [],\n};\n\nconst BED_TYPE = { SINGLE, DOUBLE };\n\nconst CURRENCIES_WITHOUT_DECIMALS = ['KRW', 'JPY', 'IDR', 'ISK'];\n\nconst UNIT = {\n imperial: { bed: 'inches', size: 'q ft' },\n metric: { bed: 'cm', size: 'm²' },\n};\n\nexport { BED_DISPOSITION, BED_TYPE, CURRENCIES_WITHOUT_DECIMALS, UNIT };\n"],"mappings":";;;;;;AAAA,MAAMA,MAAM,GAAG,CAAC;AAChB,MAAMC,MAAM,GAAG,CAAC;AAEhB,MAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG;EACtBE,UAAU,EAAE,CAAC;IAAEC,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAAC;EACzCO,UAAU,EAAE,CAAC;IAAEF,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,CAAC;EACzCO,WAAW,EAAE,CAAC;IAAEH,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAAC;EAC1CS,WAAW,EAAE,CAAC;IAAEJ,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,CAAC;EAC1CS,aAAa,EAAE,CAAC;IAAEL,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAAC;EAC5CW,qBAAqB,EAAE,CACrB;IAAEN,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,EAC3B;IAAEI,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAC5B;EACDY,YAAY,EAAE,CAAC;IAAEP,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAAC;EAC3Ca,sBAAsB,EAAE,CACtB;IAAER,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,EAC3B;IAAEI,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAC5B;EACDc,YAAY,EAAE,CAAC;IAAET,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAAC;EAC3Ce,wBAAwB,EAAE,CACxB;IAAEV,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,EAC3B;IAAEI,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAC5B;EACDgB,sBAAsB,EAAE,CACtB;IAAEX,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,EAC3B;IAAEI,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAC5B;EACDiB,mBAAmB,EAAE,CACnB;IAAEZ,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEL;EAAO,CAAC,EAC3B;IAAEI,MAAM,EAAE,CAAC;IAAEC,IAAI,EAAEN;EAAO,CAAC,CAC5B;EACDkB,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,QAAQ,GAAAhB,OAAA,CAAAgB,QAAA,GAAG;EAAEnB,MAAM;EAAEC;AAAO,CAAC;AAEnC,MAAMmB,2BAA2B,GAAAjB,OAAA,CAAAiB,2BAAA,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAEhE,MAAMC,
|
|
1
|
+
{"version":3,"file":"constants.js","names":["SINGLE","DOUBLE","BED_DISPOSITION","exports","ONE_SINGLE","amount","type","ONE_DOUBLE","TWO_SINGLES","TWO_DOUBLES","THREE_SINGLES","ONE_DOUBLE_ONE_SINGLE","FOUR_SINGLES","ONE_DOUBLE_TWO_SINGLES","FIVE_SINGLES","ONE_DOUBLE_THREE_SINGLES","TWO_DOUBLES_ONE_SINGLE","MORE_THAN_FIVE_BEDS","NO_BED","BED_TYPE","CURRENCIES_WITHOUT_DECIMALS","DEFAULT_LANGUAGE","EXTERNAL","ID","TYPE","URL","en","es","de","fr","it","pt","ru","nl","KEY_HASH","UNIT","imperial","bed","size","metric","VALID"],"sources":["../../../src/services/Rates/constants.js"],"sourcesContent":["const SINGLE = 1;\nconst DOUBLE = 2;\n\nconst BED_DISPOSITION = {\n ONE_SINGLE: [{ amount: 1, type: SINGLE }],\n ONE_DOUBLE: [{ amount: 1, type: DOUBLE }],\n TWO_SINGLES: [{ amount: 2, type: SINGLE }],\n TWO_DOUBLES: [{ amount: 2, type: DOUBLE }],\n THREE_SINGLES: [{ amount: 3, type: SINGLE }],\n ONE_DOUBLE_ONE_SINGLE: [\n { amount: 1, type: DOUBLE },\n { amount: 1, type: SINGLE },\n ],\n FOUR_SINGLES: [{ amount: 4, type: SINGLE }],\n ONE_DOUBLE_TWO_SINGLES: [\n { amount: 1, type: DOUBLE },\n { amount: 2, type: SINGLE },\n ],\n FIVE_SINGLES: [{ amount: 5, type: SINGLE }],\n ONE_DOUBLE_THREE_SINGLES: [\n { amount: 1, type: DOUBLE },\n { amount: 3, type: SINGLE },\n ],\n TWO_DOUBLES_ONE_SINGLE: [\n { amount: 2, type: DOUBLE },\n { amount: 1, type: SINGLE },\n ],\n MORE_THAN_FIVE_BEDS: [\n { amount: 6, type: DOUBLE },\n { amount: 6, type: SINGLE },\n ],\n NO_BED: [],\n};\n\nconst BED_TYPE = { SINGLE, DOUBLE };\n\nconst CURRENCIES_WITHOUT_DECIMALS = ['KRW', 'JPY', 'IDR', 'ISK'];\n\nconst DEFAULT_LANGUAGE = 'en';\n\nconst EXTERNAL = {\n ID: [\n '100377454',\n '100377444',\n '100378056',\n '100378057',\n '100378060',\n '100378062',\n '100378058',\n '100378059',\n '100378061',\n '100378063',\n '100378102',\n '100378108',\n '100378106',\n '100377194',\n '100378246',\n '100378209',\n '100378249',\n '100378315',\n '100378316',\n '100378317',\n '100378318',\n '100378319',\n '100378320',\n '100378321',\n '100378322',\n '100378323',\n '100378324',\n '100378325',\n '100378326',\n '100378327',\n '100378328',\n '100378329',\n '100378245',\n '100378242',\n '100378243',\n '100378241',\n '100378244',\n '100378385',\n '100378386',\n '100378472',\n '100378473',\n '100378474',\n '100378475',\n '100378476',\n '100378477',\n '100378478',\n '100378384',\n '100378563',\n '100378562',\n '100378559',\n '100378323',\n '100378556',\n '100378558',\n '100378555',\n '100378557',\n '100378553',\n '100378561',\n '100378556',\n '100378599',\n '100378565',\n '100378596',\n '100378561',\n '100378604',\n '100378590',\n '100378591',\n '100378597',\n '100378592',\n '100378593',\n '100378614',\n '100378606',\n '100378598',\n '100378601',\n '100378602',\n '100378600',\n '100378594',\n '100378605',\n '100378603',\n '100378607',\n '100378608',\n '100378609',\n '100378610',\n '100378612',\n '100378611',\n '100378613',\n '100378677',\n '100378589',\n '100378564',\n '100379044',\n ],\n TYPE: 3,\n URL: {\n en: 'https://www.pestana.com/en/contents/pgc/pgc-regulation',\n es: 'https://www.pestana.com/es/contents/pgc/pgc-reglamento',\n de: 'https://www.pestana.com/de/contents/pgc/pgc-regulierung',\n fr: 'https://www.pestana.com/fr/contents/pgc/pgc-reglement',\n it: 'https://www.pestana.com/it/contents/pgc/pgc-regolazione',\n pt: 'https://www.pestana.com/pt/contents/pgc/pgc-regulamento',\n ru: 'https://www.pestana.com/ru/contents/pgc/pgc-regulation',\n nl: 'https://www.pestana.com/en/contents/pgc/pgc-regulation',\n },\n};\n\nconst KEY_HASH = 'm14357';\n\nconst UNIT = {\n imperial: { bed: 'inches', size: 'q ft' },\n metric: { bed: 'cm', size: 'm²' },\n};\n\nconst VALID = 'VALID';\n\nexport { BED_DISPOSITION, BED_TYPE, CURRENCIES_WITHOUT_DECIMALS, DEFAULT_LANGUAGE, EXTERNAL, KEY_HASH, UNIT, VALID };\n"],"mappings":"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"}
|
|
@@ -16,29 +16,38 @@ const {
|
|
|
16
16
|
DOUBLE,
|
|
17
17
|
SINGLE
|
|
18
18
|
} = _constants.BED_TYPE;
|
|
19
|
-
const KEY_HASH = 'm14357';
|
|
20
19
|
const get = function () {
|
|
21
20
|
let {
|
|
22
21
|
clubDiscount: applyClubDiscount,
|
|
23
22
|
currency: userCurrency,
|
|
24
23
|
locale,
|
|
25
|
-
session
|
|
24
|
+
session: {
|
|
25
|
+
authorization
|
|
26
|
+
} = {},
|
|
26
27
|
...others
|
|
27
28
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
28
29
|
return new Promise(async (resolve, reject) => {
|
|
30
|
+
var _club$clubLogin;
|
|
29
31
|
if (!userCurrency || !locale) return reject();
|
|
30
32
|
const {
|
|
31
33
|
idtokenprovider: id,
|
|
32
34
|
checkin,
|
|
33
|
-
nights
|
|
35
|
+
nights,
|
|
36
|
+
club: {
|
|
37
|
+
authentication: {
|
|
38
|
+
type
|
|
39
|
+
} = {}
|
|
40
|
+
} = {}
|
|
34
41
|
} = others;
|
|
42
|
+
const language = locale === null || locale === void 0 ? void 0 : locale.split('-')[0];
|
|
35
43
|
const params = Object.entries({
|
|
36
44
|
applyClubDiscount,
|
|
37
45
|
currency: userCurrency,
|
|
38
46
|
...others,
|
|
39
|
-
accessClubToken:
|
|
40
|
-
cid: (0, _jsSha.default)("".concat(KEY_HASH, "-").concat(id, "-").concat(checkin, "-").concat(nights)),
|
|
41
|
-
lang:
|
|
47
|
+
accessClubToken: authorization,
|
|
48
|
+
cid: (0, _jsSha.default)("".concat(_constants.KEY_HASH, "-").concat(id, "-").concat(checkin, "-").concat(nights)),
|
|
49
|
+
lang: language,
|
|
50
|
+
...(0, _helpers.parseExternalToken)(others)
|
|
42
51
|
}).filter(_ref => {
|
|
43
52
|
let [, value] = _ref;
|
|
44
53
|
return value !== undefined;
|
|
@@ -57,22 +66,34 @@ const get = function () {
|
|
|
57
66
|
}); //TODO
|
|
58
67
|
|
|
59
68
|
const {
|
|
69
|
+
club,
|
|
70
|
+
availabilitySuggestions: availability,
|
|
60
71
|
currencyCode: hotelCurrency,
|
|
72
|
+
firstChildInterval = {},
|
|
61
73
|
measureUnit: unit,
|
|
74
|
+
messages: {
|
|
75
|
+
availabilityMessage: {
|
|
76
|
+
notOccupationRequested: notOccupation
|
|
77
|
+
} = {}
|
|
78
|
+
} = {},
|
|
62
79
|
roomTypes,
|
|
63
80
|
taxesInformation,
|
|
64
81
|
vatIncluded: taxes
|
|
65
82
|
} = response;
|
|
83
|
+
if (notOccupation || availability !== null) {
|
|
84
|
+
// ! TODO spread availability object (from, to, disabledDates)
|
|
85
|
+
return reject({
|
|
86
|
+
notOccupation,
|
|
87
|
+
notCalendar: availability !== null,
|
|
88
|
+
availability
|
|
89
|
+
});
|
|
90
|
+
}
|
|
66
91
|
const currency = userCurrency || hotelCurrency;
|
|
67
92
|
await _services.ServiceCurrency.exchange(currency);
|
|
68
93
|
const items = Object.values(roomTypes);
|
|
69
94
|
resolve({
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
occupationOptions: options = {}
|
|
73
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
74
|
-
return Object.keys(options).length > 1;
|
|
75
|
-
}),
|
|
95
|
+
clubConditions: _constants.EXTERNAL.ID.includes(id) ? _constants.EXTERNAL.URL[language] || _constants.EXTERNAL.URL[_constants.DEFAULT_LANGUAGE] : undefined,
|
|
96
|
+
infantAge: firstChildInterval === null || firstChildInterval === void 0 ? void 0 : firstChildInterval.lowerBound,
|
|
76
97
|
items: items.map(function () {
|
|
77
98
|
let {
|
|
78
99
|
amountAvailable: availability,
|
|
@@ -80,7 +101,6 @@ const get = function () {
|
|
|
80
101
|
newInfoRoom: info = {},
|
|
81
102
|
occupationOptions = {}
|
|
82
103
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
83
|
-
const rates = [];
|
|
84
104
|
const {
|
|
85
105
|
description,
|
|
86
106
|
roomTypeInfo: {
|
|
@@ -98,105 +118,8 @@ const get = function () {
|
|
|
98
118
|
numAdults: adults = 0,
|
|
99
119
|
totalChildren: children = 0
|
|
100
120
|
} = {},
|
|
101
|
-
rates
|
|
121
|
+
rates
|
|
102
122
|
} = Object.values(occupationOptions)[0] || {};
|
|
103
|
-
Object.values(occupationRates).forEach(function () {
|
|
104
|
-
let {
|
|
105
|
-
boardOptions: boards,
|
|
106
|
-
cancellationPolicyDeadline: cancelEnd,
|
|
107
|
-
cancellationPolicyName: cancelName,
|
|
108
|
-
cancellationPolicyText: cancelText,
|
|
109
|
-
cancellationPolicyTooltip: cancelTitle,
|
|
110
|
-
includedList: included,
|
|
111
|
-
name,
|
|
112
|
-
paymentText: paymentConditions,
|
|
113
|
-
restrictions
|
|
114
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
115
|
-
Object.values(boards).forEach(function () {
|
|
116
|
-
let {
|
|
117
|
-
boardGroupName: boardName,
|
|
118
|
-
detail,
|
|
119
|
-
discountPricesBefore: discounts = {},
|
|
120
|
-
id,
|
|
121
|
-
maxRoomsPerReservation: max,
|
|
122
|
-
minRoomsPerReservation: min,
|
|
123
|
-
offersApplied: deals,
|
|
124
|
-
originalAvgPrice,
|
|
125
|
-
totalLocalTaxes: localTaxes,
|
|
126
|
-
totalPriceOriginal,
|
|
127
|
-
totalPriceWithTaxes: totalPrice,
|
|
128
|
-
withTaxesAvgPrice
|
|
129
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
130
|
-
const {
|
|
131
|
-
clientCodeTotal: promoCode,
|
|
132
|
-
clubTotal: club,
|
|
133
|
-
offerTotal: deal
|
|
134
|
-
} = discounts;
|
|
135
|
-
const price = taxes ? totalPrice : totalPriceOriginal;
|
|
136
|
-
const originalPrice = (taxes ? Math.max((deal === null || deal === void 0 ? void 0 : deal.withTaxes) || 0, (club === null || club === void 0 ? void 0 : club.withTaxes) || 0, (promoCode === null || promoCode === void 0 ? void 0 : promoCode.withTaxes) || 0) : Math.max((deal === null || deal === void 0 ? void 0 : deal.original) || 0, (club === null || club === void 0 ? void 0 : club.original) || 0, (promoCode === null || promoCode === void 0 ? void 0 : promoCode.original) || 0)) || price;
|
|
137
|
-
rates.push({
|
|
138
|
-
amount: [min, availability < max ? availability : max],
|
|
139
|
-
basePrice: (0, _helpers.normalizePrice)(totalPriceOriginal, currency),
|
|
140
|
-
boardName,
|
|
141
|
-
cancellation: {
|
|
142
|
-
hint: "".concat(cancelName, " ").concat(cancelEnd ? cancelEnd : '').trim(),
|
|
143
|
-
title: cancelTitle,
|
|
144
|
-
text: cancelText
|
|
145
|
-
},
|
|
146
|
-
dayPrice: (0, _helpers.getPrice)({
|
|
147
|
-
currency,
|
|
148
|
-
hotelCurrency,
|
|
149
|
-
price: taxes ? withTaxesAvgPrice : originalAvgPrice
|
|
150
|
-
}),
|
|
151
|
-
days: detail.map(function () {
|
|
152
|
-
let {
|
|
153
|
-
dayStandardFormat: value,
|
|
154
|
-
offerId: deal,
|
|
155
|
-
priceWithoutTaxes: basePrice,
|
|
156
|
-
priceWithTaxes: price
|
|
157
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
158
|
-
return {
|
|
159
|
-
deal,
|
|
160
|
-
price: (0, _helpers.getPrice)({
|
|
161
|
-
currency,
|
|
162
|
-
hotelCurrency,
|
|
163
|
-
price: taxes ? price : basePrice
|
|
164
|
-
}),
|
|
165
|
-
value
|
|
166
|
-
};
|
|
167
|
-
}),
|
|
168
|
-
deals,
|
|
169
|
-
discount: (0, _helpers.parseDiscount)({
|
|
170
|
-
currency,
|
|
171
|
-
hotelCurrency,
|
|
172
|
-
...discounts,
|
|
173
|
-
originalPrice,
|
|
174
|
-
taxes,
|
|
175
|
-
totalPrice: price
|
|
176
|
-
}),
|
|
177
|
-
id,
|
|
178
|
-
included: [...new Set(Object.values(included).flat())].slice(0, 3),
|
|
179
|
-
originalPrice: (0, _helpers.getPrice)({
|
|
180
|
-
currency,
|
|
181
|
-
hotelCurrency,
|
|
182
|
-
price: originalPrice
|
|
183
|
-
}),
|
|
184
|
-
price: (0, _helpers.getPrice)({
|
|
185
|
-
currency,
|
|
186
|
-
hotelCurrency,
|
|
187
|
-
price: price + (taxes ? localTaxes : 0)
|
|
188
|
-
}),
|
|
189
|
-
name,
|
|
190
|
-
paymentConditions,
|
|
191
|
-
restrictions,
|
|
192
|
-
taxes: !taxes ? (0, _helpers.getPrice)({
|
|
193
|
-
currency,
|
|
194
|
-
hotelCurrency,
|
|
195
|
-
price: totalPrice - totalPriceOriginal + localTaxes
|
|
196
|
-
}) : undefined
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
-
});
|
|
200
123
|
return {
|
|
201
124
|
amenities: (0, _helpers.parseAmenities)(info),
|
|
202
125
|
availability,
|
|
@@ -211,6 +134,12 @@ const get = function () {
|
|
|
211
134
|
});
|
|
212
135
|
return result;
|
|
213
136
|
}, []),
|
|
137
|
+
...(0, _helpers.parseBoards)({
|
|
138
|
+
currency,
|
|
139
|
+
hotelCurrency,
|
|
140
|
+
rates,
|
|
141
|
+
taxes
|
|
142
|
+
}),
|
|
214
143
|
description,
|
|
215
144
|
images: photos === null || photos === void 0 ? void 0 : photos.map(function () {
|
|
216
145
|
let {
|
|
@@ -230,10 +159,10 @@ const get = function () {
|
|
|
230
159
|
url3D,
|
|
231
160
|
urlVideo
|
|
232
161
|
} : undefined,
|
|
233
|
-
rates,
|
|
234
162
|
size: size ? "".concat(size, " ").concat(_constants.UNIT[unit].size) : undefined
|
|
235
163
|
};
|
|
236
164
|
}),
|
|
165
|
+
externalLogoff: 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,
|
|
237
166
|
taxes: !taxes ? taxesInformation.replace(/\r?\n|\r/g, '') : undefined
|
|
238
167
|
});
|
|
239
168
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","DOUBLE","SINGLE","BED_TYPE","KEY_HASH","get","clubDiscount","applyClubDiscount","currency","userCurrency","locale","session","others","arguments","length","undefined","Promise","resolve","reject","idtokenprovider","id","checkin","nights","params","Object","entries","accessClubToken","authorization","cid","sha1","concat","lang","split","filter","_ref","value","response","request","hostname","process","env","SERVICE_BOOKING","endpoint","URLSearchParams","headers","catch","result","error","currencyCode","hotelCurrency","measureUnit","unit","roomTypes","taxesInformation","vatIncluded","taxes","ServiceCurrency","exchange","items","values","assistant","some","occupationOptions","options","keys","map","amountAvailable","availability","name","newInfoRoom","info","rates","description","roomTypeInfo","bedDistributions","bedType","galleryMedia","url3D","video","urlVideo","photos","roomSize","size","occupationQuantities","numAdults","adults","totalChildren","children","occupationRates","forEach","boardOptions","boards","cancellationPolicyDeadline","cancelEnd","cancellationPolicyName","cancelName","cancellationPolicyText","cancelText","cancellationPolicyTooltip","cancelTitle","includedList","included","paymentText","paymentConditions","restrictions","boardGroupName","boardName","detail","discountPricesBefore","discounts","maxRoomsPerReservation","max","minRoomsPerReservation","min","offersApplied","deals","originalAvgPrice","totalLocalTaxes","localTaxes","totalPriceOriginal","totalPriceWithTaxes","totalPrice","withTaxesAvgPrice","clientCodeTotal","promoCode","clubTotal","club","offerTotal","deal","price","originalPrice","Math","withTaxes","original","push","amount","basePrice","normalizePrice","cancellation","hint","trim","title","text","dayPrice","getPrice","days","dayStandardFormat","offerId","priceWithoutTaxes","priceWithTaxes","discount","parseDiscount","Set","flat","slice","amenities","parseAmenities","bedDisposition","type","BED_DISPOSITION","bedTypes","reduce","next","includes","images","photoAltDescription","alt","urlLarge","large","urlMediumRect","thumbnail","maxOccupation","media","UNIT","replace","exports"],"sources":["../../../src/services/Rates/get.js"],"sourcesContent":["/* eslint-disable no-async-promise-executor */\nimport { request } from '@mirai/data-sources';\nimport { ServiceCurrency } from '@mirai/services';\nimport sha1 from 'js-sha1';\n\nimport { BED_DISPOSITION, BED_TYPE, UNIT } from './constants';\nimport { getPrice, normalizePrice, parseAmenities, parseDiscount } from './helpers';\n\nconst { DOUBLE, SINGLE } = BED_TYPE;\n\nconst KEY_HASH = 'm14357';\n\nexport const get = ({\n clubDiscount: applyClubDiscount,\n currency: userCurrency,\n locale,\n session = {},\n ...others\n} = {}) =>\n new Promise(async (resolve, reject) => {\n if (!userCurrency || !locale) return reject();\n\n const { idtokenprovider: id, checkin, nights } = others;\n const params = Object.entries({\n applyClubDiscount,\n currency: userCurrency,\n ...others,\n accessClubToken: session.authorization,\n cid: sha1(`${KEY_HASH}-${id}-${checkin}-${nights}`),\n lang: locale.split('-')[0],\n }).filter(([, value]) => value !== undefined);\n\n const response = await request({\n hostname: process.env.SERVICE_BOOKING,\n endpoint: `/request_availability_v2.json?${new URLSearchParams(params)}`,\n //TODO: back have to change the endpoint for don`t have remove this headers\n headers: { 'Content-Type': undefined, 'X-Requested-With': undefined },\n }).catch(reject);\n\n if (!response || response.result === 'EXCEPTION') return reject({ error: 'Upss, something bad happened!' }); //TODO\n\n const {\n currencyCode: hotelCurrency,\n measureUnit: unit,\n roomTypes,\n taxesInformation,\n vatIncluded: taxes,\n } = response;\n const currency = userCurrency || hotelCurrency;\n await ServiceCurrency.exchange(currency);\n const items = Object.values(roomTypes);\n\n resolve({\n assistant: items.some(({ occupationOptions: options = {} } = {}) => Object.keys(options).length > 1),\n items: items.map(\n ({ amountAvailable: availability, name, newInfoRoom: info = {}, occupationOptions = {} } = {}) => {\n const rates = [];\n const {\n description,\n roomTypeInfo: {\n bedDistributions: bedType = [],\n galleryMedia: { url3D, video: urlVideo } = {},\n photos,\n roomSize: size,\n } = {},\n } = info;\n const {\n occupationQuantities: { numAdults: adults = 0, totalChildren: children = 0 } = {},\n rates: occupationRates,\n } = Object.values(occupationOptions)[0] || {};\n\n Object.values(occupationRates).forEach(\n ({\n boardOptions: boards,\n cancellationPolicyDeadline: cancelEnd,\n cancellationPolicyName: cancelName,\n cancellationPolicyText: cancelText,\n cancellationPolicyTooltip: cancelTitle,\n includedList: included,\n name,\n paymentText: paymentConditions,\n restrictions,\n } = {}) => {\n Object.values(boards).forEach(\n ({\n boardGroupName: boardName,\n detail,\n discountPricesBefore: discounts = {},\n id,\n maxRoomsPerReservation: max,\n minRoomsPerReservation: min,\n offersApplied: deals,\n originalAvgPrice,\n totalLocalTaxes: localTaxes,\n totalPriceOriginal,\n totalPriceWithTaxes: totalPrice,\n withTaxesAvgPrice,\n } = {}) => {\n const { clientCodeTotal: promoCode, clubTotal: club, offerTotal: deal } = discounts;\n const price = taxes ? totalPrice : totalPriceOriginal;\n const originalPrice =\n (taxes\n ? Math.max(deal?.withTaxes || 0, club?.withTaxes || 0, promoCode?.withTaxes || 0)\n : Math.max(deal?.original || 0, club?.original || 0, promoCode?.original || 0)) || price;\n\n rates.push({\n amount: [min, availability < max ? availability : max],\n basePrice: normalizePrice(totalPriceOriginal, currency),\n boardName,\n cancellation: {\n hint: `${cancelName} ${cancelEnd ? cancelEnd : ''}`.trim(),\n title: cancelTitle,\n text: cancelText,\n },\n dayPrice: getPrice({\n currency,\n hotelCurrency,\n price: taxes ? withTaxesAvgPrice : originalAvgPrice,\n }),\n days: detail.map(\n ({\n dayStandardFormat: value,\n offerId: deal,\n priceWithoutTaxes: basePrice,\n priceWithTaxes: price,\n } = {}) => ({\n deal,\n price: getPrice({ currency, hotelCurrency, price: taxes ? price : basePrice }),\n value,\n }),\n ),\n deals,\n discount: parseDiscount({\n currency,\n hotelCurrency,\n ...discounts,\n originalPrice,\n taxes,\n totalPrice: price,\n }),\n id,\n included: [...new Set(Object.values(included).flat())].slice(0, 3),\n originalPrice: getPrice({ currency, hotelCurrency, price: originalPrice }),\n price: getPrice({\n currency,\n hotelCurrency,\n price: price + (taxes ? localTaxes : 0),\n }),\n name,\n paymentConditions,\n restrictions,\n taxes: !taxes\n ? getPrice({ currency, hotelCurrency, price: totalPrice - totalPriceOriginal + localTaxes })\n : undefined,\n });\n },\n );\n },\n );\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 description,\n images: photos?.map(({ photoAltDescription: alt, urlLarge: large, urlMediumRect: thumbnail } = {}) => ({\n alt,\n large,\n thumbnail,\n })),\n name,\n maxOccupation: adults + children,\n media: url3D || urlVideo ? { url3D, urlVideo } : undefined,\n rates,\n size: size ? `${size} ${UNIT[unit].size}` : undefined,\n };\n },\n ),\n taxes: !taxes ? taxesInformation.replace(/\\r?\\n|\\r/g, '') : undefined,\n });\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"get.js","names":["_dataSources","require","_services","_jsSha","_interopRequireDefault","_constants","_helpers","obj","__esModule","default","DOUBLE","SINGLE","BED_TYPE","get","clubDiscount","applyClubDiscount","currency","userCurrency","locale","session","authorization","others","arguments","length","undefined","Promise","resolve","reject","_club$clubLogin","idtokenprovider","id","checkin","nights","club","authentication","type","language","split","params","Object","entries","accessClubToken","cid","sha1","concat","KEY_HASH","lang","parseExternalToken","filter","_ref","value","response","request","hostname","process","env","SERVICE_BOOKING","endpoint","URLSearchParams","headers","catch","result","error","availabilitySuggestions","availability","currencyCode","hotelCurrency","firstChildInterval","measureUnit","unit","messages","availabilityMessage","notOccupationRequested","notOccupation","roomTypes","taxesInformation","vatIncluded","taxes","notCalendar","ServiceCurrency","exchange","items","values","clubConditions","EXTERNAL","ID","includes","URL","DEFAULT_LANGUAGE","infantAge","lowerBound","map","amountAvailable","name","newInfoRoom","info","occupationOptions","description","roomTypeInfo","bedDistributions","bedType","galleryMedia","url3D","video","urlVideo","photos","roomSize","size","occupationQuantities","numAdults","adults","totalChildren","children","rates","amenities","parseAmenities","bedDisposition","BED_DISPOSITION","bedTypes","reduce","next","forEach","amount","parseBoards","images","photoAltDescription","alt","urlLarge","large","urlMediumRect","thumbnail","maxOccupation","media","UNIT","externalLogoff","TYPE","clubLogin","status","VALID","replace","exports"],"sources":["../../../src/services/Rates/get.js"],"sourcesContent":["/* eslint-disable no-async-promise-executor */\nimport { request } from '@mirai/data-sources';\nimport { ServiceCurrency } from '@mirai/services';\nimport sha1 from 'js-sha1';\n\nimport { BED_DISPOSITION, BED_TYPE, DEFAULT_LANGUAGE, EXTERNAL, KEY_HASH, UNIT, VALID } from './constants';\nimport { parseAmenities, parseBoards, parseExternalToken } from './helpers';\n\nconst { DOUBLE, SINGLE } = BED_TYPE;\n\nexport const get = ({\n clubDiscount: applyClubDiscount,\n currency: userCurrency,\n locale,\n session: { authorization } = {},\n ...others\n} = {}) =>\n new Promise(async (resolve, reject) => {\n if (!userCurrency || !locale) return reject();\n\n const { idtokenprovider: id, checkin, nights, club: { authentication: { type } = {} } = {} } = others;\n const language = locale?.split('-')[0];\n const params = Object.entries({\n applyClubDiscount,\n currency: userCurrency,\n ...others,\n accessClubToken: authorization,\n cid: sha1(`${KEY_HASH}-${id}-${checkin}-${nights}`),\n lang: language,\n ...parseExternalToken(others),\n }).filter(([, value]) => value !== undefined);\n\n const response = await request({\n hostname: process.env.SERVICE_BOOKING,\n endpoint: `/request_availability_v2.json?${new URLSearchParams(params)}`,\n //TODO: back have to change the endpoint for don`t have remove this headers\n headers: { 'Content-Type': undefined, 'X-Requested-With': undefined },\n }).catch(reject);\n\n if (!response || response.result === 'EXCEPTION') return reject({ error: 'Upss, something bad happened!' }); //TODO\n\n const {\n club,\n availabilitySuggestions: availability,\n currencyCode: hotelCurrency,\n firstChildInterval = {},\n measureUnit: unit,\n messages: { availabilityMessage: { notOccupationRequested: notOccupation } = {} } = {},\n roomTypes,\n taxesInformation,\n vatIncluded: taxes,\n } = response;\n\n if (notOccupation || availability !== null) {\n // ! TODO spread availability object (from, to, disabledDates)\n return reject({ notOccupation, notCalendar: availability !== null, availability });\n }\n\n const currency = userCurrency || hotelCurrency;\n\n await ServiceCurrency.exchange(currency);\n const items = Object.values(roomTypes);\n\n resolve({\n clubConditions: EXTERNAL.ID.includes(id) ? EXTERNAL.URL[language] || EXTERNAL.URL[DEFAULT_LANGUAGE] : undefined,\n infantAge: firstChildInterval?.lowerBound,\n items: items.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 const { occupationQuantities: { numAdults: adults = 0, totalChildren: children = 0 } = {}, rates } =\n Object.values(occupationOptions)[0] || {};\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, 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 maxOccupation: adults + children,\n media: url3D || urlVideo ? { url3D, urlVideo } : undefined,\n size: size ? `${size} ${UNIT[unit].size}` : undefined,\n };\n },\n ),\n externalLogoff: authorization && type === EXTERNAL.TYPE && club?.clubLogin?.status !== VALID,\n taxes: !taxes ? taxesInformation.replace(/\\r?\\n|\\r/g, '') : undefined,\n });\n });\n"],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getIncrements = void 0;
|
|
7
|
+
const getIncrements = _ref => {
|
|
8
|
+
let {
|
|
9
|
+
cancellations,
|
|
10
|
+
boards,
|
|
11
|
+
rates
|
|
12
|
+
} = _ref;
|
|
13
|
+
const sortedBoards = boards.sort((a, b) => a.price - b.price);
|
|
14
|
+
return {
|
|
15
|
+
cancellations: cancellations.map(_ref2 => {
|
|
16
|
+
let {
|
|
17
|
+
id,
|
|
18
|
+
...others
|
|
19
|
+
} = _ref2;
|
|
20
|
+
const lowerPrice = sortedBoards[0].price;
|
|
21
|
+
const price = sortedBoards.filter(_ref3 => {
|
|
22
|
+
let {
|
|
23
|
+
cancellationId
|
|
24
|
+
} = _ref3;
|
|
25
|
+
return cancellationId === id;
|
|
26
|
+
})[0].price;
|
|
27
|
+
return {
|
|
28
|
+
id,
|
|
29
|
+
...others,
|
|
30
|
+
price: price - lowerPrice
|
|
31
|
+
};
|
|
32
|
+
}).sort((a, b) => a.price - b.price),
|
|
33
|
+
rates: rates.map(_ref4 => {
|
|
34
|
+
let {
|
|
35
|
+
id,
|
|
36
|
+
cancellationId,
|
|
37
|
+
...others
|
|
38
|
+
} = _ref4;
|
|
39
|
+
const lowerPrice = sortedBoards.filter(board => cancellationId === board.cancellationId)[0].price;
|
|
40
|
+
const price = sortedBoards.filter(_ref5 => {
|
|
41
|
+
let {
|
|
42
|
+
rateId
|
|
43
|
+
} = _ref5;
|
|
44
|
+
return rateId === id;
|
|
45
|
+
})[0].price;
|
|
46
|
+
return {
|
|
47
|
+
id,
|
|
48
|
+
cancellationId,
|
|
49
|
+
...others,
|
|
50
|
+
price: price - lowerPrice
|
|
51
|
+
};
|
|
52
|
+
}).sort((a, b) => a.price - b.price),
|
|
53
|
+
boards: boards.map(board => {
|
|
54
|
+
const lowerPrice = sortedBoards.filter(_ref6 => {
|
|
55
|
+
let {
|
|
56
|
+
cancellationId,
|
|
57
|
+
rateId
|
|
58
|
+
} = _ref6;
|
|
59
|
+
return cancellationId === board.cancellationId && rateId === board.rateId;
|
|
60
|
+
})[0].price;
|
|
61
|
+
return {
|
|
62
|
+
...board,
|
|
63
|
+
increment: board.price - lowerPrice
|
|
64
|
+
};
|
|
65
|
+
}).sort((a, b) => a.increment - b.increment)
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
exports.getIncrements = getIncrements;
|
|
69
|
+
//# sourceMappingURL=getIncrements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getIncrements.js","names":["getIncrements","_ref","cancellations","boards","rates","sortedBoards","sort","a","b","price","map","_ref2","id","others","lowerPrice","filter","_ref3","cancellationId","_ref4","board","_ref5","rateId","_ref6","increment","exports"],"sources":["../../../../src/services/Rates/helpers/getIncrements.js"],"sourcesContent":["export const getIncrements = ({ cancellations, boards, rates }) => {\n const sortedBoards = boards.sort((a, b) => a.price - b.price);\n\n return {\n cancellations: cancellations\n .map(({ id, ...others }) => {\n const lowerPrice = sortedBoards[0].price;\n const price = sortedBoards.filter(({ cancellationId }) => cancellationId === id)[0].price;\n\n return {\n id,\n ...others,\n price: price - lowerPrice,\n };\n })\n .sort((a, b) => a.price - b.price),\n rates: rates\n .map(({ id, cancellationId, ...others }) => {\n const lowerPrice = sortedBoards.filter((board) => cancellationId === board.cancellationId)[0].price;\n const price = sortedBoards.filter(({ rateId }) => rateId === id)[0].price;\n\n return {\n id,\n cancellationId,\n ...others,\n price: price - lowerPrice,\n };\n })\n .sort((a, b) => a.price - b.price),\n boards: boards\n .map((board) => {\n const lowerPrice = sortedBoards.filter(\n ({ cancellationId, rateId }) => cancellationId === board.cancellationId && rateId === board.rateId,\n )[0].price;\n\n return {\n ...board,\n increment: board.price - lowerPrice,\n };\n })\n .sort((a, b) => a.increment - b.increment),\n };\n};\n"],"mappings":";;;;;;AAAO,MAAMA,aAAa,GAAGC,IAAA,IAAsC;EAAA,IAArC;IAAEC,aAAa;IAAEC,MAAM;IAAEC;EAAM,CAAC,GAAAH,IAAA;EAC5D,MAAMI,YAAY,GAAGF,MAAM,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC;EAE7D,OAAO;IACLP,aAAa,EAAEA,aAAa,CACzBQ,GAAG,CAACC,KAAA,IAAuB;MAAA,IAAtB;QAAEC,EAAE;QAAE,GAAGC;MAAO,CAAC,GAAAF,KAAA;MACrB,MAAMG,UAAU,GAAGT,YAAY,CAAC,CAAC,CAAC,CAACI,KAAK;MACxC,MAAMA,KAAK,GAAGJ,YAAY,CAACU,MAAM,CAACC,KAAA;QAAA,IAAC;UAAEC;QAAe,CAAC,GAAAD,KAAA;QAAA,OAAKC,cAAc,KAAKL,EAAE;MAAA,EAAC,CAAC,CAAC,CAAC,CAACH,KAAK;MAEzF,OAAO;QACLG,EAAE;QACF,GAAGC,MAAM;QACTJ,KAAK,EAAEA,KAAK,GAAGK;MACjB,CAAC;IACH,CAAC,CAAC,CACDR,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC;IACpCL,KAAK,EAAEA,KAAK,CACTM,GAAG,CAACQ,KAAA,IAAuC;MAAA,IAAtC;QAAEN,EAAE;QAAEK,cAAc;QAAE,GAAGJ;MAAO,CAAC,GAAAK,KAAA;MACrC,MAAMJ,UAAU,GAAGT,YAAY,CAACU,MAAM,CAAEI,KAAK,IAAKF,cAAc,KAAKE,KAAK,CAACF,cAAc,CAAC,CAAC,CAAC,CAAC,CAACR,KAAK;MACnG,MAAMA,KAAK,GAAGJ,YAAY,CAACU,MAAM,CAACK,KAAA;QAAA,IAAC;UAAEC;QAAO,CAAC,GAAAD,KAAA;QAAA,OAAKC,MAAM,KAAKT,EAAE;MAAA,EAAC,CAAC,CAAC,CAAC,CAACH,KAAK;MAEzE,OAAO;QACLG,EAAE;QACFK,cAAc;QACd,GAAGJ,MAAM;QACTJ,KAAK,EAAEA,KAAK,GAAGK;MACjB,CAAC;IACH,CAAC,CAAC,CACDR,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC;IACpCN,MAAM,EAAEA,MAAM,CACXO,GAAG,CAAES,KAAK,IAAK;MACd,MAAML,UAAU,GAAGT,YAAY,CAACU,MAAM,CACpCO,KAAA;QAAA,IAAC;UAAEL,cAAc;UAAEI;QAAO,CAAC,GAAAC,KAAA;QAAA,OAAKL,cAAc,KAAKE,KAAK,CAACF,cAAc,IAAII,MAAM,KAAKF,KAAK,CAACE,MAAM;MAAA,CACpG,CAAC,CAAC,CAAC,CAAC,CAACZ,KAAK;MAEV,OAAO;QACL,GAAGU,KAAK;QACRI,SAAS,EAAEJ,KAAK,CAACV,KAAK,GAAGK;MAC3B,CAAC;IACH,CAAC,CAAC,CACDR,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACgB,SAAS,GAAGf,CAAC,CAACe,SAAS;EAC7C,CAAC;AACH,CAAC;AAACC,OAAA,CAAAxB,aAAA,GAAAA,aAAA"}
|
|
@@ -36,6 +36,17 @@ Object.keys(_parseAmenities).forEach(function (key) {
|
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
|
+
var _parseBoards = require("./parseBoards");
|
|
40
|
+
Object.keys(_parseBoards).forEach(function (key) {
|
|
41
|
+
if (key === "default" || key === "__esModule") return;
|
|
42
|
+
if (key in exports && exports[key] === _parseBoards[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _parseBoards[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
39
50
|
var _parseDiscount = require("./parseDiscount");
|
|
40
51
|
Object.keys(_parseDiscount).forEach(function (key) {
|
|
41
52
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -47,4 +58,15 @@ Object.keys(_parseDiscount).forEach(function (key) {
|
|
|
47
58
|
}
|
|
48
59
|
});
|
|
49
60
|
});
|
|
61
|
+
var _parseExternalToken = require("./parseExternalToken");
|
|
62
|
+
Object.keys(_parseExternalToken).forEach(function (key) {
|
|
63
|
+
if (key === "default" || key === "__esModule") return;
|
|
64
|
+
if (key in exports && exports[key] === _parseExternalToken[key]) return;
|
|
65
|
+
Object.defineProperty(exports, key, {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: function () {
|
|
68
|
+
return _parseExternalToken[key];
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
});
|
|
50
72
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_getPrice","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_normalizePrice","_parseAmenities","_parseDiscount"],"sources":["../../../../src/services/Rates/helpers/index.js"],"sourcesContent":["export * from './getPrice';\nexport * from './normalizePrice';\nexport * from './parseAmenities';\nexport * from './parseDiscount';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,eAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,eAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,eAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,eAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,eAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,eAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,eAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,eAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_getPrice","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_normalizePrice","_parseAmenities","_parseBoards","_parseDiscount","_parseExternalToken"],"sources":["../../../../src/services/Rates/helpers/index.js"],"sourcesContent":["export * from './getPrice';\nexport * from './normalizePrice';\nexport * from './parseAmenities';\nexport * from './parseBoards';\nexport * from './parseDiscount';\nexport * from './parseExternalToken';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,eAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,eAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,eAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,eAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,eAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,eAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,eAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,eAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,YAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,YAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,YAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,YAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,cAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,cAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,cAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,cAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,mBAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,mBAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,mBAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,mBAAA,CAAAT,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.parseBoards = void 0;
|
|
7
|
+
var _getIncrements = require("./getIncrements");
|
|
8
|
+
var _getPrice = require("./getPrice");
|
|
9
|
+
var _normalizePrice = require("./normalizePrice");
|
|
10
|
+
var _parseDiscount = require("./parseDiscount");
|
|
11
|
+
const parseBoards = _ref => {
|
|
12
|
+
let {
|
|
13
|
+
currency,
|
|
14
|
+
hotelCurrency,
|
|
15
|
+
rates: baseRates = {},
|
|
16
|
+
taxes
|
|
17
|
+
} = _ref;
|
|
18
|
+
const cancellations = [];
|
|
19
|
+
const rates = [];
|
|
20
|
+
const boards = [];
|
|
21
|
+
Object.values(baseRates).forEach(function () {
|
|
22
|
+
let {
|
|
23
|
+
// 1. cancellations
|
|
24
|
+
cancellationPolicyDeadline: cancelCaption,
|
|
25
|
+
cancellationPolicyName: cancelName,
|
|
26
|
+
cancellationPolicyText: cancelText,
|
|
27
|
+
cancellationPolicyTooltip: cancelTitle,
|
|
28
|
+
cancellationPolicyTypeEnum: cancelId,
|
|
29
|
+
// 2. rates
|
|
30
|
+
id: rateId,
|
|
31
|
+
includedList: included,
|
|
32
|
+
name,
|
|
33
|
+
offer = false,
|
|
34
|
+
paymentText: paymentConditions,
|
|
35
|
+
restrictions,
|
|
36
|
+
// 3. boards
|
|
37
|
+
boardOptions = {}
|
|
38
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
39
|
+
// 1. get cancellations
|
|
40
|
+
let cancellation = cancellations.find(function () {
|
|
41
|
+
let {
|
|
42
|
+
id
|
|
43
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
44
|
+
return id === "".concat(cancelId, "-").concat(cancelTitle);
|
|
45
|
+
});
|
|
46
|
+
if (!cancellation) {
|
|
47
|
+
cancellation = {
|
|
48
|
+
caption: cancelCaption,
|
|
49
|
+
id: "".concat(cancelId, "-").concat(cancelTitle),
|
|
50
|
+
name: cancelName,
|
|
51
|
+
title: cancelTitle,
|
|
52
|
+
text: cancelText
|
|
53
|
+
};
|
|
54
|
+
cancellations.push(cancellation);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// 2. get rates
|
|
58
|
+
// ! TODO get the cheapeast board for current rate
|
|
59
|
+
rates.push({
|
|
60
|
+
id: rateId,
|
|
61
|
+
cancellationId: cancellation.id,
|
|
62
|
+
name,
|
|
63
|
+
offer
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
// 3. get boards
|
|
67
|
+
Object.values(boardOptions).forEach(_ref2 => {
|
|
68
|
+
let {
|
|
69
|
+
boardGroupName: name,
|
|
70
|
+
detail,
|
|
71
|
+
discountPricesBefore: discounts = {},
|
|
72
|
+
id,
|
|
73
|
+
offersApplied: deals,
|
|
74
|
+
originalAvgPrice,
|
|
75
|
+
totalLocalTaxes: localTaxes,
|
|
76
|
+
totalPriceOriginal,
|
|
77
|
+
totalPriceWithTaxes: totalPrice,
|
|
78
|
+
withTaxesAvgPrice
|
|
79
|
+
} = _ref2;
|
|
80
|
+
const {
|
|
81
|
+
clientCodeTotal: promoCode,
|
|
82
|
+
clubTotal: club,
|
|
83
|
+
offerTotal: deal
|
|
84
|
+
} = discounts;
|
|
85
|
+
const price = taxes ? totalPrice : totalPriceOriginal;
|
|
86
|
+
const originalPrice = (taxes ? Math.max((deal === null || deal === void 0 ? void 0 : deal.withTaxes) || 0, (club === null || club === void 0 ? void 0 : club.withTaxes) || 0, (promoCode === null || promoCode === void 0 ? void 0 : promoCode.withTaxes) || 0) : Math.max((deal === null || deal === void 0 ? void 0 : deal.original) || 0, (club === null || club === void 0 ? void 0 : club.original) || 0, (promoCode === null || promoCode === void 0 ? void 0 : promoCode.original) || 0)) || price;
|
|
87
|
+
boards.push({
|
|
88
|
+
cancellationId: cancellation.id,
|
|
89
|
+
rateId,
|
|
90
|
+
// rate info
|
|
91
|
+
included: [...new Set(Object.values(included).flat())].slice(0, 3),
|
|
92
|
+
paymentConditions,
|
|
93
|
+
restrictions,
|
|
94
|
+
// board info
|
|
95
|
+
basePrice: (0, _normalizePrice.normalizePrice)(totalPriceOriginal, currency),
|
|
96
|
+
name,
|
|
97
|
+
dayPrice: (0, _getPrice.getPrice)({
|
|
98
|
+
currency,
|
|
99
|
+
hotelCurrency,
|
|
100
|
+
price: taxes ? withTaxesAvgPrice : originalAvgPrice
|
|
101
|
+
}),
|
|
102
|
+
days: detail.map(function () {
|
|
103
|
+
let {
|
|
104
|
+
dayStandardFormat: value,
|
|
105
|
+
offerId: deal,
|
|
106
|
+
priceWithoutTaxes: basePrice,
|
|
107
|
+
priceWithTaxes: price
|
|
108
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
109
|
+
return {
|
|
110
|
+
deal,
|
|
111
|
+
price: (0, _getPrice.getPrice)({
|
|
112
|
+
currency,
|
|
113
|
+
hotelCurrency,
|
|
114
|
+
price: taxes ? price : basePrice
|
|
115
|
+
}),
|
|
116
|
+
value
|
|
117
|
+
};
|
|
118
|
+
}),
|
|
119
|
+
deals,
|
|
120
|
+
discount: (0, _parseDiscount.parseDiscount)({
|
|
121
|
+
currency,
|
|
122
|
+
hotelCurrency,
|
|
123
|
+
...discounts,
|
|
124
|
+
originalPrice,
|
|
125
|
+
taxes,
|
|
126
|
+
totalPrice: price
|
|
127
|
+
}),
|
|
128
|
+
id,
|
|
129
|
+
originalPrice: (0, _getPrice.getPrice)({
|
|
130
|
+
currency,
|
|
131
|
+
hotelCurrency,
|
|
132
|
+
price: originalPrice
|
|
133
|
+
}),
|
|
134
|
+
price: (0, _getPrice.getPrice)({
|
|
135
|
+
currency,
|
|
136
|
+
hotelCurrency,
|
|
137
|
+
price: price + (taxes ? localTaxes : 0)
|
|
138
|
+
}),
|
|
139
|
+
taxes: !taxes ? (0, _getPrice.getPrice)({
|
|
140
|
+
currency,
|
|
141
|
+
hotelCurrency,
|
|
142
|
+
price: totalPrice - totalPriceOriginal + localTaxes
|
|
143
|
+
}) : undefined
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
return {
|
|
148
|
+
...(0, _getIncrements.getIncrements)({
|
|
149
|
+
cancellations,
|
|
150
|
+
rates,
|
|
151
|
+
boards
|
|
152
|
+
})
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
exports.parseBoards = parseBoards;
|
|
156
|
+
//# sourceMappingURL=parseBoards.js.map
|