@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.
@@ -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"}
@@ -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.definition");
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)([_Core2.COOKIE_CART, _Core2.COOKIE_VALUES]);
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(['hotel', 'chain']),
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(['hotel', 'chain']),\n value: PropTypes.shape({}),\n};\n\nexport { CoreProvider };\n"],"mappings":";;;;;;AAAA;AACA;AACA;AAEA;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,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;EACzCzB,KAAK,EAAEqB,kBAAS,CAACK,KAAK,CAAC,CAAC,CAAC;AAC3B,CAAC"}
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 options={CURRENCIES} value={currency} onChange={(value) => set({ currency: value })} />\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,OAAO,EAAEN,OAAQ;IAAC,KAAK,EAAEK,MAAO;IAAC,QAAQ,EAAGF,KAAK,IAAKD,GAAG,CAAC;MAAEG,MAAM,EAAEF;IAAM,CAAC;EAAE,EAAG,eAC7F,6BAAC,eAAW;IAAC,OAAO,EAAEF,UAAW;IAAC,KAAK,EAAEG,QAAS;IAAC,QAAQ,EAAGD,KAAK,IAAKD,GAAG,CAAC;MAAEE,QAAQ,EAAED;IAAM,CAAC;EAAE,EAAG,CACnG;AAEP,CAAC;AAAA"}
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","hotel","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\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = ({\n config = {},\n cookies = {},\n instance: { el, 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,\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":";;;;;;AAAA;AAEA;AACO,MAAMA,gBAAgB,GAAG,YAMrB;EAAA,IANsB;IAC/BC,MAAM,GAAG,CAAC,CAAC;IACXC,OAAO,GAAG,CAAC,CAAC;IACZC,QAAQ,EAAE;MAAEC,EAAE;MAAEC,EAAE;MAAEC,IAAI;MAAE,GAAGH;IAAS,CAAC,GAAG,CAAC,CAAC;IAC5CI,OAAO;IACPC,SAAS,GAAG,CAAC;EACf,CAAC,uEAAG,CAAC,CAAC;EACJ,MAAM;IAAEC,QAAQ,GAAG;EAAM,CAAC,GAAGD,SAAS;;EAEtC;EACA,MAAM,CAACE,iBAAiB,EAAEC,eAAe,CAAC,GAAGC,MAAM,CAACC,SAAS,CAACC,QAAQ,EAAEC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE;EACxF,IAAI,CAACD,QAAQ,GAAGJ,iBAAiB,EAAEM,OAAO,GAAGL,eAAe,CAAC,GAAGR,QAAQ,CAACc,MAAM,EAAEF,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE;EACjG,IAAIP,SAAS,CAACU,IAAI,IAAIV,SAAS,CAACU,IAAI,KAAKR,iBAAiB,EAAEI,QAAQ,GAAGN,SAAS,CAACU,IAAI;;EAErF;EACA,MAAMC,QAAQ,GACZ,CAACV,QAAQ,GAAGD,SAAS,CAACW,QAAQ,GAAGC,SAAS,KAC1ClB,OAAO,CAACiB,QAAQ,IAChBX,SAAS,CAACW,QAAQ,IAClBhB,QAAQ,CAACgB,QAAQ,IACjBE,wBAAgB;;EAElB;EACA,IAAIC,IAAI;EACR,IAAIrB,MAAM,CAACqB,IAAI,EAAE;IACf,IAAI;MACFA,IAAI,EAAE;QACJA,IAAI,EAAE;UAAEC,cAAc;UAAEC,MAAM,EAAEnB,EAAE;UAAEoB;QAAK,CAAC;QAC1CC,aAAa,EAAEC,UAAU;QACzBC,gBAAgB,EAAEC;MACpB;IACF,CAAC,GAAG5B,MAAM;IACVqB,IAAI,GAAG;MAAEC,cAAc;MAAElB,EAAE;MAAEoB,IAAI;MAAEK,GAAG,EAAE;QAAEH,UAAU;QAAEE;MAAQ;IAAE,CAAC;EACnE;;EAEA;EACA,IAAIE,KAAK,GAAG;IACV1B;EACF,CAAC;;EAED;EACA,IAAI2B,KAAK;EACT,IAAI/B,MAAM,CAACgC,YAAY,EAAE;IACvB,MAAM;MAAEC,YAAY,EAAE;QAAEF,KAAK,EAAEG,WAAW,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC,CAAC;MAAEC,SAAS,EAAEC,WAAW,GAAG,CAAC;IAAE,CAAC,GAAGpC,MAAM;IAC9F+B,KAAK,GAAG;MAAE,GAAGG,WAAW;MAAEE;IAAY,CAAC;EACzC;EAEA,OAAO;IACLpC,MAAM;IACNC,OAAO;IACPM,SAAS;IACT,GAAGL,QAAQ;IACXE,EAAE;IACFC,IAAI;IAEJ;IACAa,QAAQ;IACRL,QAAQ;IACRE,OAAO;IACPC,MAAM,EAAEH,QAAQ,IAAIE,OAAO,GAAI,GAAEF,QAAS,IAAGE,OAAQ,EAAC,GAAGsB,sBAAc;IAEvE;IACAhB,IAAI;IACJS,KAAK;IACLC,KAAK;IACLzB,OAAO;IAEP;IACAgC,MAAM,EAAE;MACN;MACAC,KAAK,EAAEpB,SAAS;MAChBqB,QAAQ,EAAErB,SAAS;MACnBsB,UAAU,EAAEtB,SAAS;MACrBuB,SAAS,EAAEX,KAAK,EAAEY;IACpB,CAAC;IACDC,KAAK,EAAEzB,SAAS;IAEhB;IACA0B,MAAM,EAAE1B;EACV,CAAC;AACH,CAAC;AAAC"}
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 === 'chain' && !IS_JEST ? await _services.ServiceClub.get(id) : undefined;
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 === '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;AAFA,MAAMA,OAAO,GAAG,CAAC,CAACC,OAAO,EAAEC,GAAG,EAAEC,cAAc;AAIvC,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,KAAK,OAAO,IAAI,CAACN,OAAO,GAAG,MAAMS,qBAAW,CAACC,GAAG,CAACL,EAAE,CAAC,GAAGE,SAAS;EACjF,MAAMI,MAAM,GAAG,MAAMC,uBAAa,CAACF,GAAG,CAAC;IAAEL,EAAE;IAAEC;EAAK,CAAC,CAAC;EAEpD,IAAIK,MAAM,IAAIH,IAAI,EAAEG,MAAM,CAACH,IAAI,GAAGA,IAAI;EAEtC,OAAOG,MAAM;AACf,CAAC;AAAC"}
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 = window.Mirai || {};
14
- window.Mirai.environment = process && process.env && process.env.NODE_ENV || "production";
15
- window.Mirai.services = {
16
- club: process && process.env && process.env.SERVICE_CLUB || "https://api.mirai.com",
17
- engine: process && process.env && process.env.SERVICE_ENGINE || "https://engine.mirai.com",
18
- static: process && process.env && process.env.SERVICE_STATIC || "https://static.mirai.com",
19
- user: process && process.env && process.env.SERVICE_USER || "https://api.mirai.com"
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';
@@ -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 || {};\n\nwindow.Mirai.environment = process.env.NODE_ENV;\n\nwindow.Mirai.services = {\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\nwindow.Mirai.version = version;\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,GAAGD,MAAM,CAACC,KAAK,IAAI,CAAC,CAAC;AAEjCD,MAAM,CAACC,KAAK,CAACC,WAAW,iEAAuB;AAE/CF,MAAM,CAACC,KAAK,CAACE,QAAQ,GAAG;EACtBC,IAAI,+EAA0B;EAC9BC,MAAM,oFAA4B;EAClCC,MAAM,oFAA4B;EAClCC,IAAI;AACN,CAAC;AAEDP,MAAM,CAACC,KAAK,CAACO,OAAO,GAAGA,gBAAO;AAE9BR,MAAM,CAACC,KAAK,CAACQ,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,MAAMb,WAAW,GAAGa,SAAS,CAACW,GAAG,IAAIhB,YAAY,GAAG,IAAAiB,wBAAe,EAACZ,SAAS,CAACW,GAAG,CAAC,GAAGE,SAAS;EAC9F,IAAI1B,WAAW,EAAE;;EAEjB;EACA,MAAM2B,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;AAEDzC,MAAM,CAACC,KAAK,CAACQ,IAAI,EAAE"}
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.15",
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": "rm -rf dist && NODE_ENV=development parcel build public/index.html --no-cache && serve dist -p 8080 -u -n",
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
- <!-- <div data-mirai-id="500255" data-type="chain" data-locale="es-ES" hidden></div> -->
23
- <!-- <div data-mirai-id="501404" data-locale="en-GB" data-currency="GBP" hidden></div> -->
24
- <div data-mirai-id="501404" data-type="chain" data-locale="en-GB" hidden></div>
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
- <!-- <div data-mirai-component="state"></div> -->
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>