@mirai/core 0.1.15 → 0.1.17
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 +24 -0
- package/build/Core.constants.js.map +1 -0
- package/build/Core.provider.js +4 -3
- package/build/Core.provider.js.map +1 -1
- package/build/components/__internal__/Environment.js +2 -0
- package/build/components/__internal__/Environment.js.map +1 -1
- package/build/helpers/consolidateStore.js +5 -1
- package/build/helpers/consolidateStore.js.map +1 -1
- package/build/helpers/fetchConfig.js +2 -1
- package/build/helpers/fetchConfig.js.map +1 -1
- package/build/helpers/getAccomodationType.js +15 -0
- package/build/helpers/getAccomodationType.js.map +1 -0
- package/build/index.js +11 -8
- package/build/index.js.map +1 -1
- package/package.json +5 -2
- package/public/index.html +6 -7
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TYPE = exports.ACCOMODATION_TYPE = void 0;
|
|
7
|
+
const ACCOMODATION_TYPE = {
|
|
8
|
+
DEFAULT: 0,
|
|
9
|
+
// "ACCOMODATION"
|
|
10
|
+
ROOM: 1,
|
|
11
|
+
// "ROOM"
|
|
12
|
+
APARTMENT: 2,
|
|
13
|
+
// "APARTMENT"
|
|
14
|
+
VILLA: 3,
|
|
15
|
+
// "VILLA"
|
|
16
|
+
PITCH: 4 // "PITCH"
|
|
17
|
+
};
|
|
18
|
+
exports.ACCOMODATION_TYPE = ACCOMODATION_TYPE;
|
|
19
|
+
const TYPE = {
|
|
20
|
+
CHAIN: 'chain',
|
|
21
|
+
HOTEL: 'hotel'
|
|
22
|
+
};
|
|
23
|
+
exports.TYPE = TYPE;
|
|
24
|
+
//# sourceMappingURL=Core.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Core.constants.js","names":["ACCOMODATION_TYPE","DEFAULT","ROOM","APARTMENT","VILLA","PITCH","TYPE","CHAIN","HOTEL"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMODATION_TYPE = {\n DEFAULT: 0, // \"ACCOMODATION\"\n ROOM: 1, // \"ROOM\"\n APARTMENT: 2, // \"APARTMENT\"\n VILLA: 3, // \"VILLA\"\n PITCH: 4, // \"PITCH\"\n};\n\nconst TYPE = {\n CHAIN: 'chain',\n HOTEL: 'hotel',\n};\n\nexport { ACCOMODATION_TYPE, TYPE };\n"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAG;EACxBC,OAAO,EAAE,CAAC;EAAE;EACZC,IAAI,EAAE,CAAC;EAAE;EACTC,SAAS,EAAE,CAAC;EAAE;EACdC,KAAK,EAAE,CAAC;EAAE;EACVC,KAAK,EAAE,CAAC,CAAE;AACZ,CAAC;AAAC;AAEF,MAAMC,IAAI,GAAG;EACXC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE;AACT,CAAC;AAAC"}
|
package/build/Core.provider.js
CHANGED
|
@@ -8,7 +8,8 @@ var _dataSources = require("@mirai/data-sources");
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _Core = require("./Core");
|
|
11
|
-
var _Core2 = require("./Core.
|
|
11
|
+
var _Core2 = require("./Core.constants");
|
|
12
|
+
var _Core3 = require("./Core.definition");
|
|
12
13
|
var _helpers = require("./helpers");
|
|
13
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -27,7 +28,7 @@ const CoreProvider = _ref => {
|
|
|
27
28
|
(0, _react.useLayoutEffect)(() => {
|
|
28
29
|
(async () => {
|
|
29
30
|
const urlParams = (0, _helpers.fetchUrlParams)(location.search.substring(1));
|
|
30
|
-
const cookies = (0, _helpers.fetchCookies)([
|
|
31
|
+
const cookies = (0, _helpers.fetchCookies)([_Core3.COOKIE_CART, _Core3.COOKIE_VALUES]);
|
|
31
32
|
const session = (0, _helpers.fetchSession)(urlParams);
|
|
32
33
|
const instance = {
|
|
33
34
|
currency,
|
|
@@ -62,7 +63,7 @@ CoreProvider.propTypes = {
|
|
|
62
63
|
id: _propTypes.default.string.isRequired,
|
|
63
64
|
locale: _propTypes.default.string,
|
|
64
65
|
metrics: _propTypes.default.string,
|
|
65
|
-
type: _propTypes.default.oneOf(
|
|
66
|
+
type: _propTypes.default.oneOf(Object.values(_Core2.TYPE)),
|
|
66
67
|
value: _propTypes.default.shape({})
|
|
67
68
|
};
|
|
68
69
|
//# sourceMappingURL=Core.provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.provider.js","names":["CoreProvider","children","currency","id","locale","metrics","type","value","store","setStore","useState","useLayoutEffect","urlParams","fetchUrlParams","location","search","substring","cookies","fetchCookies","COOKIE_CART","COOKIE_VALUES","session","fetchSession","instance","config","fetchConfig","consolidateStore","propTypes","PropTypes","node","isRequired","string","oneOf","shape"],"sources":["../src/Core.provider.jsx"],"sourcesContent":["import { MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport PropTypes from 'prop-types';\nimport React, { useLayoutEffect, useState } from 'react';\n\nimport { Core } from './Core';\nimport { COOKIE_CART, COOKIE_VALUES } from './Core.definition';\nimport { consolidateStore, fetchConfig, fetchCookies, fetchSession, fetchUrlParams } from './helpers';\n\nconst CoreProvider = ({ children, currency, id, locale, metrics, type, value = {} }) => {\n const [store, setStore] = useState();\n\n useLayoutEffect(() => {\n (async () => {\n const urlParams = fetchUrlParams(location.search.substring(1));\n const cookies = fetchCookies([COOKIE_CART, COOKIE_VALUES]);\n const session = fetchSession(urlParams);\n\n const instance = { currency, id, type, locale };\n const config = await fetchConfig(instance);\n\n setStore(consolidateStore({ config, cookies, instance, session, urlParams }));\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return store ? (\n <MetricsProvider token={metrics || process.env.METRICS}>\n <StoreProvider value={{ ...store, ...value }}>\n <Core>{children}</Core>\n </StoreProvider>\n </MetricsProvider>\n ) : (\n <></>\n );\n};\n\nCoreProvider.propTypes = {\n children: PropTypes.node.isRequired,\n currency: PropTypes.string,\n id: PropTypes.string.isRequired,\n locale: PropTypes.string,\n metrics: PropTypes.string,\n type: PropTypes.oneOf(
|
|
1
|
+
{"version":3,"file":"Core.provider.js","names":["CoreProvider","children","currency","id","locale","metrics","type","value","store","setStore","useState","useLayoutEffect","urlParams","fetchUrlParams","location","search","substring","cookies","fetchCookies","COOKIE_CART","COOKIE_VALUES","session","fetchSession","instance","config","fetchConfig","consolidateStore","propTypes","PropTypes","node","isRequired","string","oneOf","Object","values","TYPE","shape"],"sources":["../src/Core.provider.jsx"],"sourcesContent":["import { MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport PropTypes from 'prop-types';\nimport React, { useLayoutEffect, useState } from 'react';\n\nimport { Core } from './Core';\nimport { TYPE } from './Core.constants';\nimport { COOKIE_CART, COOKIE_VALUES } from './Core.definition';\nimport { consolidateStore, fetchConfig, fetchCookies, fetchSession, fetchUrlParams } from './helpers';\n\nconst CoreProvider = ({ children, currency, id, locale, metrics, type, value = {} }) => {\n const [store, setStore] = useState();\n\n useLayoutEffect(() => {\n (async () => {\n const urlParams = fetchUrlParams(location.search.substring(1));\n const cookies = fetchCookies([COOKIE_CART, COOKIE_VALUES]);\n const session = fetchSession(urlParams);\n\n const instance = { currency, id, type, locale };\n const config = await fetchConfig(instance);\n\n setStore(consolidateStore({ config, cookies, instance, session, urlParams }));\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return store ? (\n <MetricsProvider token={metrics || process.env.METRICS}>\n <StoreProvider value={{ ...store, ...value }}>\n <Core>{children}</Core>\n </StoreProvider>\n </MetricsProvider>\n ) : (\n <></>\n );\n};\n\nCoreProvider.propTypes = {\n children: PropTypes.node.isRequired,\n currency: PropTypes.string,\n id: PropTypes.string.isRequired,\n locale: PropTypes.string,\n metrics: PropTypes.string,\n type: PropTypes.oneOf(Object.values(TYPE)),\n value: PropTypes.shape({}),\n};\n\nexport { CoreProvider };\n"],"mappings":";;;;;;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAsG;AAAA;AAAA;AAEtG,MAAMA,YAAY,GAAG,QAAmE;EAAA,IAAlE;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,EAAE;IAAEC,MAAM;IAAEC,OAAO;IAAEC,IAAI;IAAEC,KAAK,GAAG,CAAC;EAAE,CAAC;EACjF,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,GAAE;EAEpC,IAAAC,sBAAe,EAAC,MAAM;IACpB,CAAC,YAAY;MACX,MAAMC,SAAS,GAAG,IAAAC,uBAAc,EAACC,QAAQ,CAACC,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC;MAC9D,MAAMC,OAAO,GAAG,IAAAC,qBAAY,EAAC,CAACC,kBAAW,EAAEC,oBAAa,CAAC,CAAC;MAC1D,MAAMC,OAAO,GAAG,IAAAC,qBAAY,EAACV,SAAS,CAAC;MAEvC,MAAMW,QAAQ,GAAG;QAAErB,QAAQ;QAAEC,EAAE;QAAEG,IAAI;QAAEF;MAAO,CAAC;MAC/C,MAAMoB,MAAM,GAAG,MAAM,IAAAC,oBAAW,EAACF,QAAQ,CAAC;MAE1Cd,QAAQ,CAAC,IAAAiB,yBAAgB,EAAC;QAAEF,MAAM;QAAEP,OAAO;QAAEM,QAAQ;QAAEF,OAAO;QAAET;MAAU,CAAC,CAAC,CAAC;IAC/E,CAAC,GAAG;IACJ;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOJ,KAAK,gBACV,6BAAC,4BAAe;IAAC,KAAK,EAAEH,OAAO;EAAwB,gBACrD,6BAAC,0BAAa;IAAC,KAAK,EAAE;MAAE,GAAGG,KAAK;MAAE,GAAGD;IAAM;EAAE,gBAC3C,6BAAC,UAAI,QAAEN,QAAQ,CAAQ,CACT,CACA,gBAElB,2DACD;AACH,CAAC;AAAC;AAEFD,YAAY,CAAC2B,SAAS,GAAG;EACvB1B,QAAQ,EAAE2B,kBAAS,CAACC,IAAI,CAACC,UAAU;EACnC5B,QAAQ,EAAE0B,kBAAS,CAACG,MAAM;EAC1B5B,EAAE,EAAEyB,kBAAS,CAACG,MAAM,CAACD,UAAU;EAC/B1B,MAAM,EAAEwB,kBAAS,CAACG,MAAM;EACxB1B,OAAO,EAAEuB,kBAAS,CAACG,MAAM;EACzBzB,IAAI,EAAEsB,kBAAS,CAACI,KAAK,CAACC,MAAM,CAACC,MAAM,CAACC,WAAI,CAAC,CAAC;EAC1C5B,KAAK,EAAEqB,kBAAS,CAACQ,KAAK,CAAC,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -19,12 +19,14 @@ var _default = () => {
|
|
|
19
19
|
}
|
|
20
20
|
} = (0, _dataSources.useStore)();
|
|
21
21
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
|
|
22
|
+
name: "locale",
|
|
22
23
|
options: LOCALES,
|
|
23
24
|
value: locale,
|
|
24
25
|
onChange: value => set({
|
|
25
26
|
locale: value
|
|
26
27
|
})
|
|
27
28
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
|
|
29
|
+
name: "currency",
|
|
28
30
|
options: CURRENCIES,
|
|
29
31
|
value: currency,
|
|
30
32
|
onChange: value => set({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Environment.js","names":["LOCALES","CURRENCIES","set","value","currency","locale","useStore"],"sources":["../../../src/components/__internal__/Environment.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { InputSelect } from '@mirai/ui';\nimport React from 'react';\n\nconst LOCALES = ['es-ES', 'en-US', 'en-GB', 'ja-JP', 'de-DE', 'pt-PT'];\nconst CURRENCIES = ['EUR', 'USD', 'GBP', 'JPY'];\n\nexport default () => {\n const {\n set,\n value: { currency, locale },\n } = useStore();\n\n return (\n <>\n <InputSelect options={LOCALES} value={locale} onChange={(value) => set({ locale: value })} />\n <InputSelect
|
|
1
|
+
{"version":3,"file":"Environment.js","names":["LOCALES","CURRENCIES","set","value","currency","locale","useStore"],"sources":["../../../src/components/__internal__/Environment.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { InputSelect } from '@mirai/ui';\nimport React from 'react';\n\nconst LOCALES = ['es-ES', 'en-US', 'en-GB', 'ja-JP', 'de-DE', 'pt-PT'];\nconst CURRENCIES = ['EUR', 'USD', 'GBP', 'JPY'];\n\nexport default () => {\n const {\n set,\n value: { currency, locale },\n } = useStore();\n\n return (\n <>\n <InputSelect name=\"locale\" options={LOCALES} value={locale} onChange={(value) => set({ locale: value })} />\n <InputSelect\n name=\"currency\"\n options={CURRENCIES}\n value={currency}\n onChange={(value) => set({ currency: value })}\n />\n </>\n );\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AAA0B;AAE1B,MAAMA,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;AACtE,MAAMC,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAAC,eAEjC,MAAM;EACnB,MAAM;IACJC,GAAG;IACHC,KAAK,EAAE;MAAEC,QAAQ;MAAEC;IAAO;EAC5B,CAAC,GAAG,IAAAC,qBAAQ,GAAE;EAEd,oBACE,yEACE,6BAAC,eAAW;IAAC,IAAI,EAAC,QAAQ;IAAC,OAAO,EAAEN,OAAQ;IAAC,KAAK,EAAEK,MAAO;IAAC,QAAQ,EAAGF,KAAK,IAAKD,GAAG,CAAC;MAAEG,MAAM,EAAEF;IAAM,CAAC;EAAE,EAAG,eAC3G,6BAAC,eAAW;IACV,IAAI,EAAC,UAAU;IACf,OAAO,EAAEF,UAAW;IACpB,KAAK,EAAEG,QAAS;IAChB,QAAQ,EAAGD,KAAK,IAAKD,GAAG,CAAC;MAAEE,QAAQ,EAAED;IAAM,CAAC;EAAE,EAC9C,CACD;AAEP,CAAC;AAAA"}
|
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.consolidateStore = void 0;
|
|
7
7
|
var _locale = require("@mirai/locale");
|
|
8
|
+
var _Core = require("../Core.constants");
|
|
9
|
+
var _getAccomodationType = require("./getAccomodationType");
|
|
8
10
|
/* eslint-disable no-unused-vars */
|
|
9
11
|
const consolidateStore = function () {
|
|
10
12
|
let {
|
|
@@ -12,6 +14,7 @@ const consolidateStore = function () {
|
|
|
12
14
|
cookies = {},
|
|
13
15
|
instance: {
|
|
14
16
|
el,
|
|
17
|
+
hotel: hotelId,
|
|
15
18
|
id,
|
|
16
19
|
type,
|
|
17
20
|
...instance
|
|
@@ -58,7 +61,8 @@ const consolidateStore = function () {
|
|
|
58
61
|
|
|
59
62
|
// hotel
|
|
60
63
|
let hotel = {
|
|
61
|
-
id
|
|
64
|
+
id: type === _Core.TYPE.CHAIN ? hotelId : id,
|
|
65
|
+
accomodationType: (0, _getAccomodationType.getAccomodationType)(config.lodgingDenomination, hotelId)
|
|
62
66
|
};
|
|
63
67
|
|
|
64
68
|
// promo
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consolidateStore.js","names":["consolidateStore","config","cookies","instance","el","id","type","session","urlParams","forceUri","navigatorLanguage","countryLanguage","window","navigator","language","split","country","locale","lang","currency","undefined","DEFAULT_CURRENCY","club","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","url","
|
|
1
|
+
{"version":3,"file":"consolidateStore.js","names":["consolidateStore","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","forceUri","navigatorLanguage","countryLanguage","window","navigator","language","split","country","locale","lang","currency","undefined","DEFAULT_CURRENCY","club","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","url","TYPE","CHAIN","accomodationType","getAccomodationType","lodgingDenomination","promo","showPromoNav","accomodation","configPromo","promoText","placeholder","DEFAULT_LOCALE","finder","place","calendar","occupation","promocode","code","deals","signup"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { DEFAULT_CURRENCY, DEFAULT_LOCALE } from '@mirai/locale';\n\nimport { TYPE } from '../Core.constants';\nimport { getAccomodationType } from './getAccomodationType';\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = ({\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { forceUri = false } = urlParams;\n\n // language & country\n const [navigatorLanguage, countryLanguage] = window.navigator.language?.split('-') || [];\n let [language = navigatorLanguage, country = countryLanguage] = instance.locale?.split('-') || [];\n if (urlParams.lang && urlParams.lang === navigatorLanguage) language = urlParams.lang;\n\n // currency\n const currency =\n (forceUri ? urlParams.currency : undefined) ||\n cookies.currency ||\n urlParams.currency ||\n instance.currency ||\n DEFAULT_CURRENCY;\n\n // club\n let club;\n if (config.club) {\n let {\n club: {\n club: { authentication, idClub: id, name },\n conditionsUrl: conditions,\n privacyPolicyUrl: privacy,\n },\n } = config;\n club = { authentication, id, name, url: { conditions, privacy } };\n }\n\n // hotel\n let hotel = {\n id: type === TYPE.CHAIN ? hotelId : id,\n accomodationType: getAccomodationType(config.lodgingDenomination, hotelId),\n };\n\n // promo\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale: language && country ? `${language}-${country}` : DEFAULT_LOCALE,\n\n // entities,\n club,\n hotel,\n promo,\n session,\n\n // @mirai/finder\n finder: {\n // ! TODO: we should hydrate it\n place: undefined,\n calendar: undefined,\n occupation: undefined,\n promocode: promo?.code,\n },\n deals: undefined,\n\n // @mirai/user\n signup: undefined,\n };\n};\n"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.fetchConfig = void 0;
|
|
7
|
+
var _Core = require("../Core.constants");
|
|
7
8
|
var _services = require("../services");
|
|
8
9
|
const IS_JEST = !!process?.env?.JEST_WORKER_ID;
|
|
9
10
|
const fetchConfig = async function () {
|
|
@@ -12,7 +13,7 @@ const fetchConfig = async function () {
|
|
|
12
13
|
type = 'hotel'
|
|
13
14
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
14
15
|
if (!id) return undefined;
|
|
15
|
-
const club = type ===
|
|
16
|
+
const club = type === _Core.TYPE.CHAIN && !IS_JEST ? await _services.ServiceClub.get(id) : undefined;
|
|
16
17
|
const config = await _services.ServiceEngine.get({
|
|
17
18
|
id,
|
|
18
19
|
type
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchConfig.js","names":["IS_JEST","process","env","JEST_WORKER_ID","fetchConfig","id","type","undefined","club","ServiceClub","get","config","ServiceEngine"],"sources":["../../src/helpers/fetchConfig.js"],"sourcesContent":["const IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\nimport { ServiceClub, ServiceEngine } from '../services';\n\nexport const fetchConfig = async ({ id, type = 'hotel' } = {}) => {\n if (!id) return undefined;\n\n const club = type ===
|
|
1
|
+
{"version":3,"file":"fetchConfig.js","names":["IS_JEST","process","env","JEST_WORKER_ID","fetchConfig","id","type","undefined","club","TYPE","CHAIN","ServiceClub","get","config","ServiceEngine"],"sources":["../../src/helpers/fetchConfig.js"],"sourcesContent":["const IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\nimport { TYPE } from '../Core.constants';\nimport { ServiceClub, ServiceEngine } from '../services';\n\nexport const fetchConfig = async ({ id, type = 'hotel' } = {}) => {\n if (!id) return undefined;\n\n const club = type === TYPE.CHAIN && !IS_JEST ? await ServiceClub.get(id) : undefined;\n const config = await ServiceEngine.get({ id, type });\n\n if (config && club) config.club = club;\n\n return config;\n};\n"],"mappings":";;;;;;AAEA;AACA;AAHA,MAAMA,OAAO,GAAG,CAAC,CAACC,OAAO,EAAEC,GAAG,EAAEC,cAAc;AAKvC,MAAMC,WAAW,GAAG,kBAAuC;EAAA,IAAhC;IAAEC,EAAE;IAAEC,IAAI,GAAG;EAAQ,CAAC,uEAAG,CAAC,CAAC;EAC3D,IAAI,CAACD,EAAE,EAAE,OAAOE,SAAS;EAEzB,MAAMC,IAAI,GAAGF,IAAI,KAAKG,UAAI,CAACC,KAAK,IAAI,CAACV,OAAO,GAAG,MAAMW,qBAAW,CAACC,GAAG,CAACP,EAAE,CAAC,GAAGE,SAAS;EACpF,MAAMM,MAAM,GAAG,MAAMC,uBAAa,CAACF,GAAG,CAAC;IAAEP,EAAE;IAAEC;EAAK,CAAC,CAAC;EAEpD,IAAIO,MAAM,IAAIL,IAAI,EAAEK,MAAM,CAACL,IAAI,GAAGA,IAAI;EAEtC,OAAOK,MAAM;AACf,CAAC;AAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getAccomodationType = void 0;
|
|
7
|
+
var _Core = require("../Core.constants");
|
|
8
|
+
const getAccomodationType = (denomination, hotelId) => {
|
|
9
|
+
const base = typeof denomination === 'object' && hotelId ? denomination[hotelId] : denomination;
|
|
10
|
+
let accomodationType = _Core.ACCOMODATION_TYPE.DEFAULT;
|
|
11
|
+
if (base === 'ROOMS') accomodationType = _Core.ACCOMODATION_TYPE.ROOM;else if (base === 'APARTMENTS') accomodationType = _Core.ACCOMODATION_TYPE.APARTMENT;else if (base === 'VILLAS') accomodationType = _Core.ACCOMODATION_TYPE.VILLA;else if (base === 'PITCHES') accomodationType = _Core.ACCOMODATION_TYPE.PITCH;
|
|
12
|
+
return accomodationType;
|
|
13
|
+
};
|
|
14
|
+
exports.getAccomodationType = getAccomodationType;
|
|
15
|
+
//# sourceMappingURL=getAccomodationType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAccomodationType.js","names":["getAccomodationType","denomination","hotelId","base","accomodationType","ACCOMODATION_TYPE","DEFAULT","ROOM","APARTMENT","VILLA","PITCH"],"sources":["../../src/helpers/getAccomodationType.js"],"sourcesContent":["import { ACCOMODATION_TYPE } from '../Core.constants';\n\nexport const getAccomodationType = (denomination, hotelId) => {\n const base = typeof denomination === 'object' && hotelId ? denomination[hotelId] : denomination;\n let accomodationType = ACCOMODATION_TYPE.DEFAULT;\n\n if (base === 'ROOMS') accomodationType = ACCOMODATION_TYPE.ROOM;\n else if (base === 'APARTMENTS') accomodationType = ACCOMODATION_TYPE.APARTMENT;\n else if (base === 'VILLAS') accomodationType = ACCOMODATION_TYPE.VILLA;\n else if (base === 'PITCHES') accomodationType = ACCOMODATION_TYPE.PITCH;\n\n return accomodationType;\n};\n"],"mappings":";;;;;;AAAA;AAEO,MAAMA,mBAAmB,GAAG,CAACC,YAAY,EAAEC,OAAO,KAAK;EAC5D,MAAMC,IAAI,GAAG,OAAOF,YAAY,KAAK,QAAQ,IAAIC,OAAO,GAAGD,YAAY,CAACC,OAAO,CAAC,GAAGD,YAAY;EAC/F,IAAIG,gBAAgB,GAAGC,uBAAiB,CAACC,OAAO;EAEhD,IAAIH,IAAI,KAAK,OAAO,EAAEC,gBAAgB,GAAGC,uBAAiB,CAACE,IAAI,CAAC,KAC3D,IAAIJ,IAAI,KAAK,YAAY,EAAEC,gBAAgB,GAAGC,uBAAiB,CAACG,SAAS,CAAC,KAC1E,IAAIL,IAAI,KAAK,QAAQ,EAAEC,gBAAgB,GAAGC,uBAAiB,CAACI,KAAK,CAAC,KAClE,IAAIN,IAAI,KAAK,SAAS,EAAEC,gBAAgB,GAAGC,uBAAiB,CAACK,KAAK;EAEvE,OAAON,gBAAgB;AACzB,CAAC;AAAC"}
|
package/build/index.js
CHANGED
|
@@ -10,15 +10,18 @@ var _helpers = require("./helpers");
|
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
/* eslint-disable no-console */
|
|
12
12
|
|
|
13
|
-
window.Mirai =
|
|
14
|
-
window.Mirai
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
window.Mirai = {
|
|
14
|
+
...window.Mirai,
|
|
15
|
+
environment: process && process.env && process.env.NODE_ENV || "production",
|
|
16
|
+
services: {
|
|
17
|
+
booking: process && process.env && process.env.SERVICE_BOOKING || "https://reservation-pre.mirai.com/XMAS/reservation",
|
|
18
|
+
club: process && process.env && process.env.SERVICE_CLUB || "https://api.mirai.com",
|
|
19
|
+
engine: process && process.env && process.env.SERVICE_ENGINE || "https://engine.mirai.com",
|
|
20
|
+
static: process && process.env && process.env.SERVICE_STATIC || "https://static.mirai.com",
|
|
21
|
+
user: process && process.env && process.env.SERVICE_USER || "https://api.mirai.com"
|
|
22
|
+
},
|
|
23
|
+
version: _package.version
|
|
20
24
|
};
|
|
21
|
-
window.Mirai.version = _package.version;
|
|
22
25
|
window.Mirai.core = async () => {
|
|
23
26
|
const isProduction = (process && process.env && process.env.NODE_ENV || "production") === 'production';
|
|
24
27
|
const isDevelopment = (process && process.env && process.env.NODE_ENV || "production") === 'development';
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["window","Mirai","environment","services","club","engine","static","user","version","core","isProduction","isDevelopment","console","log","name","urlParams","fetchUrlParams","location","search","substring","cookies","fetchCookies","COOKIE_CART","COOKIE_VALUES","session","fetchSession","env","loadEnvironment","undefined","instance","findInstance","components","findComponents","length","config","fetchConfig","theme","store","consolidateStore","ReactDOM","render","el"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { name, version } from '../package.json';\nimport { Core } from './Core';\nimport { COOKIE_CART, COOKIE_VALUES } from './Core.definition';\nimport {\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n loadEnvironment,\n theme,\n} from './helpers';\n\nwindow.Mirai = window.Mirai
|
|
1
|
+
{"version":3,"file":"index.js","names":["window","Mirai","environment","services","booking","club","engine","static","user","version","core","isProduction","isDevelopment","console","log","name","urlParams","fetchUrlParams","location","search","substring","cookies","fetchCookies","COOKIE_CART","COOKIE_VALUES","session","fetchSession","env","loadEnvironment","undefined","instance","findInstance","components","findComponents","length","config","fetchConfig","theme","store","consolidateStore","ReactDOM","render","el"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { name, version } from '../package.json';\nimport { Core } from './Core';\nimport { COOKIE_CART, COOKIE_VALUES } from './Core.definition';\nimport {\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n loadEnvironment,\n theme,\n} from './helpers';\n\nwindow.Mirai = {\n ...window.Mirai,\n environment: process.env.NODE_ENV,\n services: {\n booking: process.env.SERVICE_BOOKING,\n club: process.env.SERVICE_CLUB,\n engine: process.env.SERVICE_ENGINE,\n static: process.env.SERVICE_STATIC,\n user: process.env.SERVICE_USER,\n },\n version,\n};\n\nwindow.Mirai.core = async () => {\n const isProduction = process.env.NODE_ENV === 'production';\n const isDevelopment = process.env.NODE_ENV === 'development';\n\n console.log(`${isProduction ? '🟢' : isDevelopment ? '🟡' : '🔴'} ${name} v${version} [${process.env.NODE_ENV}]`);\n\n // 1. Fetch client-side dataSources\n const urlParams = fetchUrlParams(location.search.substring(1));\n const cookies = fetchCookies([COOKIE_CART, COOKIE_VALUES]);\n const session = fetchSession(urlParams);\n\n // 2. Analize environment\n const environment = urlParams.env && isProduction ? loadEnvironment(urlParams.env) : undefined;\n if (environment) return;\n\n // 3. Find instance\n const instance = findInstance();\n if (!instance) return;\n\n // 4. Find components\n const components = findComponents();\n if (!components.length) return;\n\n // 5. Analize id to fetch its config\n const config = await fetchConfig(instance);\n if (!config) return;\n\n // 6. Theming\n theme();\n\n // 7. Consolidate store\n const store = consolidateStore({ config, cookies, instance, session, urlParams });\n\n // 8. Render components\n ReactDOM.render(\n <React.StrictMode>\n <MetricsProvider token={process.env.METRICS}>\n <StoreProvider value={store}>\n <Core {...{ components }} />\n </StoreProvider>\n </MetricsProvider>\n </React.StrictMode>,\n instance.el,\n );\n};\n\nwindow.Mirai.core();\n"],"mappings":";;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAUmB;AAlBnB;;AAoBAA,MAAM,CAACC,KAAK,GAAG;EACb,GAAGD,MAAM,CAACC,KAAK;EACfC,WAAW,gEAAsB;EACjCC,QAAQ,EAAE;IACRC,OAAO,+GAA6B;IACpCC,IAAI,+EAA0B;IAC9BC,MAAM,oFAA4B;IAClCC,MAAM,oFAA4B;IAClCC,IAAI;EACN,CAAC;EACDC,OAAO,EAAPA;AACF,CAAC;AAEDT,MAAM,CAACC,KAAK,CAACS,IAAI,GAAG,YAAY;EAC9B,MAAMC,YAAY,GAAG,qEAAyB,YAAY;EAC1D,MAAMC,aAAa,GAAG,qEAAyB,aAAa;EAE5DC,OAAO,CAACC,GAAG,CAAE,GAAEH,YAAY,GAAG,IAAI,GAAGC,aAAa,GAAG,IAAI,GAAG,IAAK,IAAGG,aAAK,KAAIN,gBAAQ,KAAE,8DAAuB,GAAE,CAAC;;EAEjH;EACA,MAAMO,SAAS,GAAG,IAAAC,uBAAc,EAACC,QAAQ,CAACC,MAAM,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC;EAC9D,MAAMC,OAAO,GAAG,IAAAC,qBAAY,EAAC,CAACC,kBAAW,EAAEC,oBAAa,CAAC,CAAC;EAC1D,MAAMC,OAAO,GAAG,IAAAC,qBAAY,EAACV,SAAS,CAAC;;EAEvC;EACA,MAAMd,WAAW,GAAGc,SAAS,CAACW,GAAG,IAAIhB,YAAY,GAAG,IAAAiB,wBAAe,EAACZ,SAAS,CAACW,GAAG,CAAC,GAAGE,SAAS;EAC9F,IAAI3B,WAAW,EAAE;;EAEjB;EACA,MAAM4B,QAAQ,GAAG,IAAAC,qBAAY,GAAE;EAC/B,IAAI,CAACD,QAAQ,EAAE;;EAEf;EACA,MAAME,UAAU,GAAG,IAAAC,uBAAc,GAAE;EACnC,IAAI,CAACD,UAAU,CAACE,MAAM,EAAE;;EAExB;EACA,MAAMC,MAAM,GAAG,MAAM,IAAAC,oBAAW,EAACN,QAAQ,CAAC;EAC1C,IAAI,CAACK,MAAM,EAAE;;EAEb;EACA,IAAAE,cAAK,GAAE;;EAEP;EACA,MAAMC,KAAK,GAAG,IAAAC,yBAAgB,EAAC;IAAEJ,MAAM;IAAEd,OAAO;IAAES,QAAQ;IAAEL,OAAO;IAAET;EAAU,CAAC,CAAC;;EAEjF;EACAwB,iBAAQ,CAACC,MAAM,eACb,6BAAC,cAAK,CAAC,UAAU,qBACf,6BAAC,4BAAe;IAAC,KAAK;EAAsB,gBAC1C,6BAAC,0BAAa;IAAC,KAAK,EAAEH;EAAM,gBAC1B,6BAAC,UAAI;IAAON;EAAU,EAAM,CACd,CACA,CACD,EACnBF,QAAQ,CAACY,EAAE,CACZ;AACH,CAAC;AAED1C,MAAM,CAACC,KAAK,CAACS,IAAI,EAAE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirai/core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"source": "src/index.js",
|
|
5
5
|
"repository": "https://gitlab.com/miraicorp/dev/frontend/core",
|
|
6
6
|
"author": "JΛVI <hello@soyjavi.com>",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"scripts": {
|
|
9
9
|
"setup": "rm -rf node_modules && rm -rf yarn.lock && yarn install --force",
|
|
10
10
|
"start": "rm -rf dist && parcel public/index.html --port 8080 --host local.mirai.com --open",
|
|
11
|
-
"serve": "
|
|
11
|
+
"serve": "serve dist -p 8080 -u -n",
|
|
12
12
|
"build": "node scripts/build.js",
|
|
13
13
|
"build:pro": "node scripts/bundle.js",
|
|
14
14
|
"build:dev": "node scripts/bundle.js development",
|
|
@@ -72,5 +72,8 @@
|
|
|
72
72
|
"cssModules": {
|
|
73
73
|
"dashedIdents": true
|
|
74
74
|
}
|
|
75
|
+
},
|
|
76
|
+
"@parcel/transformer-js": {
|
|
77
|
+
"inlineEnvironment": true
|
|
75
78
|
}
|
|
76
79
|
}
|
package/public/index.html
CHANGED
|
@@ -19,9 +19,10 @@
|
|
|
19
19
|
<body>
|
|
20
20
|
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
21
21
|
|
|
22
|
-
<!--
|
|
23
|
-
<!-- <div data-mirai-id="
|
|
24
|
-
|
|
22
|
+
<!-- hotel example -->
|
|
23
|
+
<!-- <div data-mirai-id="10030559" data-locale="en-GB" data-currency="GBP" hidden></div> -->
|
|
24
|
+
<!-- chain example -->
|
|
25
|
+
<div data-mirai-id="501404" data-hotel="100376545" data-type="chain" data-locale="en-GB" hidden></div>
|
|
25
26
|
|
|
26
27
|
<header>
|
|
27
28
|
<h1>@mirai/core</h1>
|
|
@@ -37,11 +38,12 @@
|
|
|
37
38
|
</div>
|
|
38
39
|
<div data-mirai-component="bookingQuery"></div>
|
|
39
40
|
<div data-mirai-component="environment"></div>
|
|
40
|
-
|
|
41
|
+
<div data-mirai-component="state"></div>
|
|
41
42
|
</nav>
|
|
42
43
|
</header>
|
|
43
44
|
|
|
44
45
|
<section class="finder">
|
|
46
|
+
<!-- This ones are not in our repository> -->
|
|
45
47
|
<div data-mirai-component="finder"></div>
|
|
46
48
|
</section>
|
|
47
49
|
|
|
@@ -85,9 +87,6 @@
|
|
|
85
87
|
|
|
86
88
|
<section class="wrapper">
|
|
87
89
|
<!-- <div data-mirai-component="ghost"></div> -->
|
|
88
|
-
|
|
89
|
-
<!-- This ones are not in our repository> -->
|
|
90
|
-
<div data-mirai-component="fi_nder" data-id="10030559"></div>
|
|
91
90
|
</section>
|
|
92
91
|
|
|
93
92
|
<footer>
|