@mirai/core 0.4.562 → 0.4.564

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.
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.VALIDATE_ERROR = exports.TYPE_COMMISSION = exports.TYPE = exports.TRACKING = exports.TAX_DEFAULT = exports.TAXES_TYPE = exports.TAXES = exports.SYNAPSE_COMMISSION_CODE = exports.SENATOR_CLUB_TOKEN = exports.SARAI_SOURCE = exports.REDIRECT_PATH = exports.PERFORMANCE = exports.MIN_STAY_TYPE = exports.FINDER_STORAGE_KEY = exports.EVENT = exports.ERROR = exports.COOKIE = exports.COMPONENTS = exports.CALENDAR_FORMAT = exports.AUTH_TYPE = exports.ACCOMMODATION_TYPE = void 0;
6
+ exports.VARIANT_STORAGE_KEY = exports.VARIANT = exports.VALIDATE_ERROR = exports.TYPE_COMMISSION = exports.TYPE = exports.TRACKING = exports.TAX_DEFAULT = exports.TAXES_TYPE = exports.TAXES = exports.SYNAPSE_COMMISSION_CODE = exports.SENATOR_CLUB_TOKEN = exports.SARAI_SOURCE = exports.REDIRECT_PATH = exports.PERFORMANCE = exports.MIN_STAY_TYPE = exports.FINDER_STORAGE_KEY = exports.EXPERIMENT_ID = exports.EVENT = exports.ERROR = exports.COOKIE = exports.COMPONENTS = exports.CALENDAR_FORMAT = exports.AUTH_TYPE = exports.ACCOMMODATION_TYPE = void 0;
7
7
  const ACCOMMODATION_TYPE = exports.ACCOMMODATION_TYPE = {
8
8
  DEFAULT: 0,
9
9
  ROOM: 1,
@@ -33,6 +33,7 @@ const ERROR = exports.ERROR = {
33
33
  PARAMETER_ERROR: 3,
34
34
  UNKNOWN: 1
35
35
  };
36
+ const EXPERIMENT_ID = exports.EXPERIMENT_ID = '001_rates_book_and_join_modal';
36
37
  const EVENT = exports.EVENT = {
37
38
  CORE_READY: 'core:ready',
38
39
  CORE_EVENTS_READY: 'core:events:ready'
@@ -49,6 +50,7 @@ const TYPE_COMMISSION = exports.TYPE_COMMISSION = {
49
50
  [TYPE.CHAIN]: '02080'
50
51
  };
51
52
  const FINDER_STORAGE_KEY = exports.FINDER_STORAGE_KEY = 'MIRAI:FINDER';
53
+ const VARIANT_STORAGE_KEY = exports.VARIANT_STORAGE_KEY = "MIRAI:EXPERIMENT:".concat(EXPERIMENT_ID, ":variant");
52
54
  const MIN_STAY_TYPE = exports.MIN_STAY_TYPE = {
53
55
  CHECK_IN: 1,
54
56
  STAY: 2
@@ -101,4 +103,8 @@ const VALIDATE_ERROR = exports.VALIDATE_ERROR = {
101
103
  EXTRA_CHANGED: 5,
102
104
  URL_GENERIC: 6
103
105
  };
106
+ const VARIANT = exports.VARIANT = {
107
+ A: 'A',
108
+ B: 'B'
109
+ };
104
110
  //# sourceMappingURL=Core.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","SENATOR","CALENDAR_FORMAT","COMPONENTS","RATES","CHECKOUT","BOOKING","COOKIE","CART","VALUES","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","EVENT","CORE_READY","CORE_EVENTS_READY","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","TYPE_COMMISSION","FINDER_STORAGE_KEY","MIN_STAY_TYPE","CHECK_IN","STAY","PERFORMANCE","ANALYTICS","GOOGLE_ADS","GTM","FACEBOOK","THE_HOTEL_NETWORK","AFFILIRED","BING","COMPARE","REDIRECT_PATH","SARAI_SOURCE","SENATOR_CLUB_TOKEN","SYNAPSE_COMMISSION_CODE","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","TAXES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TRACKING","adwordsTracking","affiliredTracking","analyticsTracking","bingTracking","compareTracking","facebookTracking","gtmTracking","miraiTracking","thnTracking","VALIDATE_ERROR","PRICE_CHANGED","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED","URL_GENERIC"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1,\n APARTMENT: 2,\n PITCH: 3,\n ACCOMMODATION: 4,\n VILLA: 5,\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n SENATOR: 2,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst COMPONENTS = {\n RATES: 'rates',\n CHECKOUT: 'checkout',\n BOOKING: 'booking',\n};\n\nconst COOKIE = {\n CART: 'CART_COOKIE',\n PESTANA: 'pestana-login-token',\n VALUES: 'BOOKING_VALUES',\n};\n\nconst ERROR = {\n NOT_AVAILABLE: 4,\n PARAMETER_ERROR: 3,\n UNKNOWN: 1,\n};\n\nconst EVENT = {\n CORE_READY: 'core:ready',\n CORE_EVENTS_READY: 'core:events:ready',\n};\n\nconst TYPE = {\n CHAIN: 'chain',\n HOTEL: 'hotel',\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst TYPE_COMMISSION = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst FINDER_STORAGE_KEY = 'MIRAI:FINDER';\n\nconst MIN_STAY_TYPE = {\n CHECK_IN: 1,\n STAY: 2,\n};\n\nconst PERFORMANCE = {\n ANALYTICS: 1,\n GOOGLE_ADS: 2,\n GTM: 3,\n MIRAI: 4,\n FACEBOOK: 5,\n THE_HOTEL_NETWORK: 6,\n AFFILIRED: 7,\n BING: 8,\n COMPARE: 9,\n};\n\nconst REDIRECT_PATH = 'miraiFrontDispatcher.htm';\n\nconst SARAI_SOURCE = 'sarai';\n\nconst SENATOR_CLUB_TOKEN = 'apiData';\n\nconst SYNAPSE_COMMISSION_CODE = '07060';\n\nconst TAX_DEFAULT = 1;\n\nconst TAX_FREE = 2;\n\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 1,\n ALL_INCLUDED: 2,\n FEES_INCLUDED: 3,\n FEES_EXCLUDED: 4,\n FEES_INCLUDED_TAXES_EXCLUDED: 5,\n TAXES_INCLUDED: 6,\n TAXES_EXCLUDED: 7,\n TAXES_INCLUDED_FEES_EXCLUDED: 8,\n};\n\nconst TRACKING = {\n adwordsTracking: PERFORMANCE.GOOGLE_ADS,\n affiliredTracking: PERFORMANCE.AFFILIRED,\n analyticsTracking: PERFORMANCE.ANALYTICS,\n bingTracking: PERFORMANCE.BING,\n compareTracking: PERFORMANCE.COMPARE,\n facebookTracking: PERFORMANCE.FACEBOOK,\n gtmTracking: PERFORMANCE.GTM,\n miraiTracking: PERFORMANCE.MIRAI,\n thnTracking: PERFORMANCE.THE_HOTEL_NETWORK,\n};\n\nconst VALIDATE_ERROR = {\n PRICE_CHANGED: 1,\n NOT_ENOUGH_ROOMS: 2,\n NOT_ENOUGH_ROOMS_FOR_OFFER: 3,\n NO_SELECTED_ROOMS: 4,\n EXTRA_CHANGED: 5,\n URL_GENERIC: 6,\n};\n\nexport {\n ACCOMMODATION_TYPE,\n AUTH_TYPE,\n CALENDAR_FORMAT,\n COMPONENTS,\n COOKIE,\n ERROR,\n EVENT,\n FINDER_STORAGE_KEY,\n MIN_STAY_TYPE,\n PERFORMANCE,\n REDIRECT_PATH,\n SARAI_SOURCE,\n SENATOR_CLUB_TOKEN,\n SYNAPSE_COMMISSION_CODE,\n TAXES,\n TAXES_TYPE,\n TAX_DEFAULT,\n TRACKING,\n TYPE,\n TYPE_COMMISSION,\n VALIDATE_ERROR,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","SENATOR","CALENDAR_FORMAT","COMPONENTS","RATES","CHECKOUT","BOOKING","COOKIE","CART","VALUES","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","EXPERIMENT_ID","EVENT","CORE_READY","CORE_EVENTS_READY","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","TYPE_COMMISSION","FINDER_STORAGE_KEY","VARIANT_STORAGE_KEY","concat","MIN_STAY_TYPE","CHECK_IN","STAY","PERFORMANCE","ANALYTICS","GOOGLE_ADS","GTM","FACEBOOK","THE_HOTEL_NETWORK","AFFILIRED","BING","COMPARE","REDIRECT_PATH","SARAI_SOURCE","SENATOR_CLUB_TOKEN","SYNAPSE_COMMISSION_CODE","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","TAXES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TRACKING","adwordsTracking","affiliredTracking","analyticsTracking","bingTracking","compareTracking","facebookTracking","gtmTracking","miraiTracking","thnTracking","VALIDATE_ERROR","PRICE_CHANGED","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED","URL_GENERIC","VARIANT","A","B"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1,\n APARTMENT: 2,\n PITCH: 3,\n ACCOMMODATION: 4,\n VILLA: 5,\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n SENATOR: 2,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst COMPONENTS = {\n RATES: 'rates',\n CHECKOUT: 'checkout',\n BOOKING: 'booking',\n};\n\nconst COOKIE = {\n CART: 'CART_COOKIE',\n PESTANA: 'pestana-login-token',\n VALUES: 'BOOKING_VALUES',\n};\n\nconst ERROR = {\n NOT_AVAILABLE: 4,\n PARAMETER_ERROR: 3,\n UNKNOWN: 1,\n};\n\nconst EXPERIMENT_ID = '001_rates_book_and_join_modal';\n\nconst EVENT = {\n CORE_READY: 'core:ready',\n CORE_EVENTS_READY: 'core:events:ready',\n};\n\nconst TYPE = {\n CHAIN: 'chain',\n HOTEL: 'hotel',\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst TYPE_COMMISSION = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst FINDER_STORAGE_KEY = 'MIRAI:FINDER';\n\nconst VARIANT_STORAGE_KEY = `MIRAI:EXPERIMENT:${EXPERIMENT_ID}:variant`;\n\nconst MIN_STAY_TYPE = {\n CHECK_IN: 1,\n STAY: 2,\n};\n\nconst PERFORMANCE = {\n ANALYTICS: 1,\n GOOGLE_ADS: 2,\n GTM: 3,\n MIRAI: 4,\n FACEBOOK: 5,\n THE_HOTEL_NETWORK: 6,\n AFFILIRED: 7,\n BING: 8,\n COMPARE: 9,\n};\n\nconst REDIRECT_PATH = 'miraiFrontDispatcher.htm';\n\nconst SARAI_SOURCE = 'sarai';\n\nconst SENATOR_CLUB_TOKEN = 'apiData';\n\nconst SYNAPSE_COMMISSION_CODE = '07060';\n\nconst TAX_DEFAULT = 1;\n\nconst TAX_FREE = 2;\n\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 1,\n ALL_INCLUDED: 2,\n FEES_INCLUDED: 3,\n FEES_EXCLUDED: 4,\n FEES_INCLUDED_TAXES_EXCLUDED: 5,\n TAXES_INCLUDED: 6,\n TAXES_EXCLUDED: 7,\n TAXES_INCLUDED_FEES_EXCLUDED: 8,\n};\n\nconst TRACKING = {\n adwordsTracking: PERFORMANCE.GOOGLE_ADS,\n affiliredTracking: PERFORMANCE.AFFILIRED,\n analyticsTracking: PERFORMANCE.ANALYTICS,\n bingTracking: PERFORMANCE.BING,\n compareTracking: PERFORMANCE.COMPARE,\n facebookTracking: PERFORMANCE.FACEBOOK,\n gtmTracking: PERFORMANCE.GTM,\n miraiTracking: PERFORMANCE.MIRAI,\n thnTracking: PERFORMANCE.THE_HOTEL_NETWORK,\n};\n\nconst VALIDATE_ERROR = {\n PRICE_CHANGED: 1,\n NOT_ENOUGH_ROOMS: 2,\n NOT_ENOUGH_ROOMS_FOR_OFFER: 3,\n NO_SELECTED_ROOMS: 4,\n EXTRA_CHANGED: 5,\n URL_GENERIC: 6,\n};\n\nconst VARIANT = {\n A: 'A',\n B: 'B',\n};\n\nexport {\n ACCOMMODATION_TYPE,\n AUTH_TYPE,\n CALENDAR_FORMAT,\n COMPONENTS,\n COOKIE,\n ERROR,\n EVENT,\n EXPERIMENT_ID,\n FINDER_STORAGE_KEY,\n MIN_STAY_TYPE,\n PERFORMANCE,\n REDIRECT_PATH,\n SARAI_SOURCE,\n SENATOR_CLUB_TOKEN,\n SYNAPSE_COMMISSION_CODE,\n TAXES,\n TAXES_TYPE,\n TAX_DEFAULT,\n TRACKING,\n TYPE,\n TYPE_COMMISSION,\n VALIDATE_ERROR,\n VARIANT,\n VARIANT_STORAGE_KEY,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG;EACzBE,OAAO,EAAE,CAAC;EACVC,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CAAC;EACZC,KAAK,EAAE,CAAC;EACRC,aAAa,EAAE,CAAC;EAChBC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,SAAS,GAAAP,OAAA,CAAAO,SAAA,GAAG;EAChBC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE,CAAC;EACVC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,eAAe,GAAAX,OAAA,CAAAW,eAAA,GAAG,YAAY;AAEpC,MAAMC,UAAU,GAAAZ,OAAA,CAAAY,UAAA,GAAG;EACjBC,KAAK,EAAE,OAAO;EACdC,QAAQ,EAAE,UAAU;EACpBC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,MAAM,GAAAhB,OAAA,CAAAgB,MAAA,GAAG;EACbC,IAAI,EAAE,aAAa;EACnBR,OAAO,EAAE,qBAAqB;EAC9BS,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,KAAK,GAAAnB,OAAA,CAAAmB,KAAA,GAAG;EACZC,aAAa,EAAE,CAAC;EAChBC,eAAe,EAAE,CAAC;EAClBC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,aAAa,GAAAvB,OAAA,CAAAuB,aAAA,GAAG,+BAA+B;AAErD,MAAMC,KAAK,GAAAxB,OAAA,CAAAwB,KAAA,GAAG;EACZC,UAAU,EAAE,YAAY;EACxBC,iBAAiB,EAAE;AACrB,CAAC;AAED,MAAMC,IAAI,GAAA3B,OAAA,CAAA2B,IAAA,GAAG;EACXC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,eAAe,GAAAjC,OAAA,CAAAiC,eAAA,GAAG;EACtB,CAACN,IAAI,CAACE,KAAK,GAAG,OAAO;EACrB,CAACF,IAAI,CAACC,KAAK,GAAG;AAChB,CAAC;AAED,MAAMM,kBAAkB,GAAAlC,OAAA,CAAAkC,kBAAA,GAAG,cAAc;AAEzC,MAAMC,mBAAmB,GAAAnC,OAAA,CAAAmC,mBAAA,uBAAAC,MAAA,CAAuBb,aAAa,aAAU;AAEvE,MAAMc,aAAa,GAAArC,OAAA,CAAAqC,aAAA,GAAG;EACpBC,QAAQ,EAAE,CAAC;EACXC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,WAAW,GAAAxC,OAAA,CAAAwC,WAAA,GAAG;EAClBC,SAAS,EAAE,CAAC;EACZC,UAAU,EAAE,CAAC;EACbC,GAAG,EAAE,CAAC;EACNnC,KAAK,EAAE,CAAC;EACRoC,QAAQ,EAAE,CAAC;EACXC,iBAAiB,EAAE,CAAC;EACpBC,SAAS,EAAE,CAAC;EACZC,IAAI,EAAE,CAAC;EACPC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,aAAa,GAAAjD,OAAA,CAAAiD,aAAA,GAAG,0BAA0B;AAEhD,MAAMC,YAAY,GAAAlD,OAAA,CAAAkD,YAAA,GAAG,OAAO;AAE5B,MAAMC,kBAAkB,GAAAnD,OAAA,CAAAmD,kBAAA,GAAG,SAAS;AAEpC,MAAMC,uBAAuB,GAAApD,OAAA,CAAAoD,uBAAA,GAAG,OAAO;AAEvC,MAAMC,WAAW,GAAArD,OAAA,CAAAqD,WAAA,GAAG,CAAC;AAErB,MAAMC,QAAQ,GAAG,CAAC;AAElB,MAAMC,WAAW,GAAG,CAAC;AAErB,MAAMC,KAAK,GAAAxD,OAAA,CAAAwD,KAAA,GAAG,CAACH,WAAW,EAAEC,QAAQ,EAAEC,WAAW,CAAC;AAElD,MAAME,UAAU,GAAAzD,OAAA,CAAAyD,UAAA,GAAG;EACjBC,YAAY,EAAE,CAAC;EACfC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,aAAa,EAAE,CAAC;EAChBC,4BAA4B,EAAE,CAAC;EAC/BC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE,CAAC;EACjBC,4BAA4B,EAAE;AAChC,CAAC;AAED,MAAMC,QAAQ,GAAAlE,OAAA,CAAAkE,QAAA,GAAG;EACfC,eAAe,EAAE3B,WAAW,CAACE,UAAU;EACvC0B,iBAAiB,EAAE5B,WAAW,CAACM,SAAS;EACxCuB,iBAAiB,EAAE7B,WAAW,CAACC,SAAS;EACxC6B,YAAY,EAAE9B,WAAW,CAACO,IAAI;EAC9BwB,eAAe,EAAE/B,WAAW,CAACQ,OAAO;EACpCwB,gBAAgB,EAAEhC,WAAW,CAACI,QAAQ;EACtC6B,WAAW,EAAEjC,WAAW,CAACG,GAAG;EAC5B+B,aAAa,EAAElC,WAAW,CAAChC,KAAK;EAChCmE,WAAW,EAAEnC,WAAW,CAACK;AAC3B,CAAC;AAED,MAAM+B,cAAc,GAAA5E,OAAA,CAAA4E,cAAA,GAAG;EACrBC,aAAa,EAAE,CAAC;EAChBC,gBAAgB,EAAE,CAAC;EACnBC,0BAA0B,EAAE,CAAC;EAC7BC,iBAAiB,EAAE,CAAC;EACpBC,aAAa,EAAE,CAAC;EAChBC,WAAW,EAAE;AACf,CAAC;AAED,MAAMC,OAAO,GAAAnF,OAAA,CAAAmF,OAAA,GAAG;EACdC,CAAC,EAAE,GAAG;EACNC,CAAC,EAAE;AACL,CAAC","ignoreList":[]}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ClientLobby = void 0;
7
7
  var _socket = require("socket.io-client");
8
+ var _getClientFingerprint = require("./getClientFingerprint");
8
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
11
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -18,7 +19,7 @@ class ClientLobby {
18
19
  session = {}
19
20
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
20
21
  this.url = url || process.env.SERVICE_LOBBY || (typeof window !== 'undefined' ? "".concat(window.location.protocol, "//").concat(window.location.hostname, ":4000") : 'http://localhost:4000');
21
- this.fingerprint = localStorage.getItem('MIRAI:FINGERPRINT') || "chat-".concat(Date.now());
22
+ this.fingerprint = (0, _getClientFingerprint.getClientFingerprint)();
22
23
  this.channelId = channelId;
23
24
  if (!this.channelId) throw new Error('channelId es obligatorio');
24
25
  this.title = session !== null && session !== void 0 && session.firstName ? "".concat(session.firstName, " ").concat(session.lastName || '').trim() : (session === null || session === void 0 ? void 0 : session.email) || "Guest ".concat(this.fingerprint);
@@ -1 +1 @@
1
- {"version":3,"file":"clientLobby.js","names":["_socket","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ClientLobby","constructor","url","channelId","session","undefined","process","env","SERVICE_LOBBY","window","concat","location","protocol","hostname","fingerprint","localStorage","getItem","Date","now","Error","title","firstName","lastName","trim","email","socket","chatId","callbacks","message","blockState","presence","status","aiBlocked","lastPresence","onMessage","cb","off","onBlockState","onPresence","onStatus","type","fn","_emit","payload","connect","_this","io","replace","auth","path","on","emit","msg","_msg$createdAt","createdAt","_ref","blocked","_ref2","online","snapshot","disconnect","requestHumanSupport","send","_ref3","body","author","exports"],"sources":["../../../../src/components/Chat/helpers/clientLobby.js"],"sourcesContent":["import { io } from 'socket.io-client';\n\nexport class ClientLobby {\n constructor({ url, channelId, session = {} } = {}) {\n this.url =\n url ||\n process.env.SERVICE_LOBBY ||\n (typeof window !== 'undefined'\n ? `${window.location.protocol}//${window.location.hostname}:4000`\n : 'http://localhost:4000');\n\n this.fingerprint = localStorage.getItem('MIRAI:FINGERPRINT') || `chat-${Date.now()}`;\n\n this.channelId = channelId;\n if (!this.channelId) throw new Error('channelId es obligatorio');\n\n this.title = session?.firstName\n ? `${session.firstName} ${session.lastName || ''}`.trim()\n : session?.email || `Guest ${this.fingerprint}`;\n this.session = session;\n this.socket = null;\n this.chatId = this.fingerprint;\n this.callbacks = {\n message: [],\n blockState: [],\n presence: [],\n status: [],\n };\n this.aiBlocked = false;\n this.lastPresence = null;\n }\n\n onMessage(cb) {\n this.callbacks.message.push(cb);\n return () => this.off('message', cb);\n }\n\n onBlockState(cb) {\n this.callbacks.blockState.push(cb);\n return () => this.off('blockState', cb);\n }\n\n onPresence(cb) {\n this.callbacks.presence.push(cb);\n return () => this.off('presence', cb);\n }\n\n onStatus(cb) {\n this.callbacks.status.push(cb);\n return () => this.off('status', cb);\n }\n\n off(type, cb) {\n this.callbacks[type] = (this.callbacks[type] || []).filter((fn) => fn !== cb);\n }\n\n _emit(type, payload) {\n (this.callbacks[type] || []).forEach((cb) => cb(payload));\n }\n\n connect() {\n if (this.socket) return;\n this.socket = io(this.url.replace('/lobby', ''), {\n auth: {\n fingerprint: this.fingerprint,\n channelId: this.channelId,\n session: this.session,\n },\n path: '/lobby/socket.io',\n });\n this._emit('status', 'connecting');\n\n this.socket.on('connect', () => {\n this._emit('status', 'connected');\n this.socket.emit('join_chat', {\n chatId: this.chatId,\n title: this.title,\n fingerprint: this.fingerprint,\n channelId: this.channelId,\n session: this.session,\n });\n });\n\n this.socket.on('disconnect', () => {\n this._emit('status', 'disconnected');\n this.socket = null;\n });\n\n this.socket.on('message', (msg) => {\n this._emit('message', { ...msg, createdAt: msg.createdAt ?? Date.now() });\n });\n\n this.socket.on('ai_block_state', ({ chatId, fingerprint, blocked }) => {\n if (chatId === this.chatId || fingerprint === this.fingerprint) {\n if (this.aiBlocked !== blocked) {\n this.aiBlocked = blocked;\n this._emit('blockState', blocked);\n }\n }\n });\n\n this.socket.on('presence', ({ chatId, online }) => {\n if (chatId === this.chatId) {\n if (this.lastPresence !== online) {\n this.lastPresence = online;\n this._emit('presence', online);\n }\n }\n });\n this.socket.on('presence_snapshot', (snapshot = {}) => {\n const online = snapshot[this.chatId];\n if (online !== undefined && online !== this.lastPresence) {\n this.lastPresence = online;\n this._emit('presence', online);\n }\n });\n }\n\n disconnect() {\n if (this.socket) {\n this.socket.disconnect();\n this.socket = null;\n this._emit('status', 'disconnected');\n }\n }\n\n requestHumanSupport() {\n if (!this.socket) return;\n this.socket.emit('request_human_support', {\n chatId: this.chatId,\n channelId: this.channelId,\n fingerprint: this.fingerprint,\n });\n }\n\n send({ body, author = 'user' }) {\n if (!this.socket) return;\n if (author === 'ai' && this.aiBlocked) return;\n this.socket.emit('message', {\n chatId: this.chatId,\n body,\n author,\n session: this.session,\n channelId: this.channelId,\n fingerprint: this.fingerprint,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"clientLobby.js","names":["_socket","require","_getClientFingerprint","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ClientLobby","constructor","url","channelId","session","undefined","process","env","SERVICE_LOBBY","window","concat","location","protocol","hostname","fingerprint","getClientFingerprint","Error","title","firstName","lastName","trim","email","socket","chatId","callbacks","message","blockState","presence","status","aiBlocked","lastPresence","onMessage","cb","off","onBlockState","onPresence","onStatus","type","fn","_emit","payload","connect","_this","io","replace","auth","path","on","emit","msg","_msg$createdAt","createdAt","Date","now","_ref","blocked","_ref2","online","snapshot","disconnect","requestHumanSupport","send","_ref3","body","author","exports"],"sources":["../../../../src/components/Chat/helpers/clientLobby.js"],"sourcesContent":["import { io } from 'socket.io-client';\n\nimport { getClientFingerprint } from './getClientFingerprint';\n\nexport class ClientLobby {\n constructor({ url, channelId, session = {} } = {}) {\n this.url =\n url ||\n process.env.SERVICE_LOBBY ||\n (typeof window !== 'undefined'\n ? `${window.location.protocol}//${window.location.hostname}:4000`\n : 'http://localhost:4000');\n\n this.fingerprint = getClientFingerprint();\n\n this.channelId = channelId;\n if (!this.channelId) throw new Error('channelId es obligatorio');\n\n this.title = session?.firstName\n ? `${session.firstName} ${session.lastName || ''}`.trim()\n : session?.email || `Guest ${this.fingerprint}`;\n this.session = session;\n this.socket = null;\n this.chatId = this.fingerprint;\n this.callbacks = {\n message: [],\n blockState: [],\n presence: [],\n status: [],\n };\n this.aiBlocked = false;\n this.lastPresence = null;\n }\n\n onMessage(cb) {\n this.callbacks.message.push(cb);\n return () => this.off('message', cb);\n }\n\n onBlockState(cb) {\n this.callbacks.blockState.push(cb);\n return () => this.off('blockState', cb);\n }\n\n onPresence(cb) {\n this.callbacks.presence.push(cb);\n return () => this.off('presence', cb);\n }\n\n onStatus(cb) {\n this.callbacks.status.push(cb);\n return () => this.off('status', cb);\n }\n\n off(type, cb) {\n this.callbacks[type] = (this.callbacks[type] || []).filter((fn) => fn !== cb);\n }\n\n _emit(type, payload) {\n (this.callbacks[type] || []).forEach((cb) => cb(payload));\n }\n\n connect() {\n if (this.socket) return;\n this.socket = io(this.url.replace('/lobby', ''), {\n auth: {\n fingerprint: this.fingerprint,\n channelId: this.channelId,\n session: this.session,\n },\n path: '/lobby/socket.io',\n });\n this._emit('status', 'connecting');\n\n this.socket.on('connect', () => {\n this._emit('status', 'connected');\n this.socket.emit('join_chat', {\n chatId: this.chatId,\n title: this.title,\n fingerprint: this.fingerprint,\n channelId: this.channelId,\n session: this.session,\n });\n });\n\n this.socket.on('disconnect', () => {\n this._emit('status', 'disconnected');\n this.socket = null;\n });\n\n this.socket.on('message', (msg) => {\n this._emit('message', { ...msg, createdAt: msg.createdAt ?? Date.now() });\n });\n\n this.socket.on('ai_block_state', ({ chatId, fingerprint, blocked }) => {\n if (chatId === this.chatId || fingerprint === this.fingerprint) {\n if (this.aiBlocked !== blocked) {\n this.aiBlocked = blocked;\n this._emit('blockState', blocked);\n }\n }\n });\n\n this.socket.on('presence', ({ chatId, online }) => {\n if (chatId === this.chatId) {\n if (this.lastPresence !== online) {\n this.lastPresence = online;\n this._emit('presence', online);\n }\n }\n });\n this.socket.on('presence_snapshot', (snapshot = {}) => {\n const online = snapshot[this.chatId];\n if (online !== undefined && online !== this.lastPresence) {\n this.lastPresence = online;\n this._emit('presence', online);\n }\n });\n }\n\n disconnect() {\n if (this.socket) {\n this.socket.disconnect();\n this.socket = null;\n this._emit('status', 'disconnected');\n }\n }\n\n requestHumanSupport() {\n if (!this.socket) return;\n this.socket.emit('request_human_support', {\n chatId: this.chatId,\n channelId: this.channelId,\n fingerprint: this.fingerprint,\n });\n }\n\n send({ body, author = 'user' }) {\n if (!this.socket) return;\n if (author === 'ai' && this.aiBlocked) return;\n this.socket.emit('message', {\n chatId: this.chatId,\n body,\n author,\n session: this.session,\n channelId: this.channelId,\n fingerprint: this.fingerprint,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getClientFingerprint = void 0;
7
+ const FINGERPRINT_STORAGE_KEY = 'MIRAI:FINGERPRINT';
8
+ const resolveStorage = () => {
9
+ if (typeof window === 'undefined' || !window.localStorage) return null;
10
+ return window.localStorage;
11
+ };
12
+
13
+ // crypto.randomUUID() requires a secure context (HTTPS); fall back to Math.random-based v4 UUID
14
+ const generateUUID = () => {
15
+ if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {
16
+ return crypto.randomUUID();
17
+ }
18
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
19
+ const r = Math.random() * 16 | 0;
20
+ return (c === 'x' ? r : r & 0x3 | 0x8).toString(16);
21
+ });
22
+ };
23
+ const getClientFingerprint = () => {
24
+ const storage = resolveStorage();
25
+ if (storage) {
26
+ const stored = storage.getItem(FINGERPRINT_STORAGE_KEY);
27
+ if (stored) return stored;
28
+ }
29
+ const generated = generateUUID();
30
+ if (storage) storage.setItem(FINGERPRINT_STORAGE_KEY, generated);
31
+ return generated;
32
+ };
33
+ exports.getClientFingerprint = getClientFingerprint;
34
+ //# sourceMappingURL=getClientFingerprint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getClientFingerprint.js","names":["FINGERPRINT_STORAGE_KEY","resolveStorage","window","localStorage","generateUUID","crypto","randomUUID","replace","c","r","Math","random","toString","getClientFingerprint","storage","stored","getItem","generated","setItem","exports"],"sources":["../../../../src/components/Chat/helpers/getClientFingerprint.js"],"sourcesContent":["const FINGERPRINT_STORAGE_KEY = 'MIRAI:FINGERPRINT';\n\nconst resolveStorage = () => {\n if (typeof window === 'undefined' || !window.localStorage) return null;\n return window.localStorage;\n};\n\n// crypto.randomUUID() requires a secure context (HTTPS); fall back to Math.random-based v4 UUID\nconst generateUUID = () => {\n if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {\n return crypto.randomUUID();\n }\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = (Math.random() * 16) | 0;\n return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);\n });\n};\n\nexport const getClientFingerprint = () => {\n const storage = resolveStorage();\n\n if (storage) {\n const stored = storage.getItem(FINGERPRINT_STORAGE_KEY);\n if (stored) return stored;\n }\n\n const generated = generateUUID();\n if (storage) storage.setItem(FINGERPRINT_STORAGE_KEY, generated);\n\n return generated;\n};\n"],"mappings":";;;;;;AAAA,MAAMA,uBAAuB,GAAG,mBAAmB;AAEnD,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAC3B,IAAI,OAAOC,MAAM,KAAK,WAAW,IAAI,CAACA,MAAM,CAACC,YAAY,EAAE,OAAO,IAAI;EACtE,OAAOD,MAAM,CAACC,YAAY;AAC5B,CAAC;;AAED;AACA,MAAMC,YAAY,GAAGA,CAAA,KAAM;EACzB,IAAI,OAAOC,MAAM,KAAK,WAAW,IAAI,OAAOA,MAAM,CAACC,UAAU,KAAK,UAAU,EAAE;IAC5E,OAAOD,MAAM,CAACC,UAAU,CAAC,CAAC;EAC5B;EACA,OAAO,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,CAAC,IAAK;IACpE,MAAMC,CAAC,GAAIC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAI,CAAC;IAClC,OAAO,CAACH,CAAC,KAAK,GAAG,GAAGC,CAAC,GAAIA,CAAC,GAAG,GAAG,GAAI,GAAG,EAAEG,QAAQ,CAAC,EAAE,CAAC;EACvD,CAAC,CAAC;AACJ,CAAC;AAEM,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,MAAMC,OAAO,GAAGb,cAAc,CAAC,CAAC;EAEhC,IAAIa,OAAO,EAAE;IACX,MAAMC,MAAM,GAAGD,OAAO,CAACE,OAAO,CAAChB,uBAAuB,CAAC;IACvD,IAAIe,MAAM,EAAE,OAAOA,MAAM;EAC3B;EAEA,MAAME,SAAS,GAAGb,YAAY,CAAC,CAAC;EAChC,IAAIU,OAAO,EAAEA,OAAO,CAACI,OAAO,CAAClB,uBAAuB,EAAEiB,SAAS,CAAC;EAEhE,OAAOA,SAAS;AAClB,CAAC;AAACE,OAAA,CAAAN,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.VARIANTS = exports.METRIC = exports.INPUT_TYPE = exports.INPUT = exports.FORM_STORAGE_KEY = exports.FORM_STORAGE_CACHE = exports.FORMAT_DATE_SHORT = exports.FORMAT_DATE = exports.FORMAT_CURRENCY = exports.FIELD = void 0;
7
7
  var _ui = require("@mirai/ui");
8
8
  var _components = require("./components");
9
+ var _Core = require("../../Core.constants");
9
10
  const INPUT = exports.INPUT = {
10
11
  TEXT: 0,
11
12
  SELECT: 1,
@@ -45,5 +46,5 @@ const FORMAT_DATE_SHORT = exports.FORMAT_DATE_SHORT = {
45
46
  day: 'numeric'
46
47
  };
47
48
  const METRIC = exports.METRIC = 'CHECKOUT';
48
- const VARIANTS = exports.VARIANTS = ['A', 'B'];
49
+ const VARIANTS = exports.VARIANTS = [_Core.VARIANT.A, _Core.VARIANT.B];
49
50
  //# sourceMappingURL=Checkout.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Checkout.constants.js","names":["_ui","require","_components","INPUT","exports","TEXT","SELECT","OPTION","PHONE","RADIO","HTML","INPUT_TYPE","EMAIL","NUMBER","FIELD","InputOption","InputPhone","InputRadio","InputSelect","InputText","Text","FORM_STORAGE_CACHE","FORM_STORAGE_KEY","FORMAT_CURRENCY","currency","FORMAT_DATE","weekday","year","month","day","FORMAT_DATE_SHORT","METRIC","VARIANTS"],"sources":["../../../src/components/Checkout/Checkout.constants.js"],"sourcesContent":["import { InputOption, InputPhone, InputSelect, InputText, Text } from '@mirai/ui';\n\nimport { InputRadio } from './components';\n\nconst INPUT = {\n TEXT: 0,\n SELECT: 1,\n OPTION: 2,\n PHONE: 3,\n RADIO: 4,\n HTML: 5,\n};\n\nconst INPUT_TYPE = {\n TEXT: 0,\n EMAIL: 1,\n NUMBER: 2,\n};\n\nconst FIELD = {\n [INPUT.OPTION]: InputOption,\n [INPUT.PHONE]: InputPhone,\n [INPUT.RADIO]: InputRadio,\n [INPUT.SELECT]: InputSelect,\n [INPUT.TEXT]: InputText,\n [INPUT.HTML]: Text,\n};\n\nconst FORM_STORAGE_CACHE = 1000 * 60 * 60 * 24 * 7; // 7 days\n\nconst FORM_STORAGE_KEY = 'MIRAI:CHECKOUT:FORM';\n\nconst FORMAT_CURRENCY = { currency: 'EUR' };\n\nconst FORMAT_DATE = { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric' };\n\nconst FORMAT_DATE_SHORT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nconst METRIC = 'CHECKOUT';\n\nconst VARIANTS = ['A', 'B'];\n\nexport {\n FIELD,\n FORM_STORAGE_CACHE,\n FORM_STORAGE_KEY,\n FORMAT_CURRENCY,\n FORMAT_DATE,\n FORMAT_DATE_SHORT,\n INPUT,\n INPUT_TYPE,\n METRIC,\n VARIANTS,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAEA,MAAME,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACZE,IAAI,EAAE,CAAC;EACPC,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE,CAAC;EACRC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,UAAU,GAAAP,OAAA,CAAAO,UAAA,GAAG;EACjBN,IAAI,EAAE,CAAC;EACPO,KAAK,EAAE,CAAC;EACRC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,KAAK,GAAAV,OAAA,CAAAU,KAAA,GAAG;EACZ,CAACX,KAAK,CAACI,MAAM,GAAGQ,eAAW;EAC3B,CAACZ,KAAK,CAACK,KAAK,GAAGQ,cAAU;EACzB,CAACb,KAAK,CAACM,KAAK,GAAGQ,sBAAU;EACzB,CAACd,KAAK,CAACG,MAAM,GAAGY,eAAW;EAC3B,CAACf,KAAK,CAACE,IAAI,GAAGc,aAAS;EACvB,CAAChB,KAAK,CAACO,IAAI,GAAGU;AAChB,CAAC;AAED,MAAMC,kBAAkB,GAAAjB,OAAA,CAAAiB,kBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAEpD,MAAMC,gBAAgB,GAAAlB,OAAA,CAAAkB,gBAAA,GAAG,qBAAqB;AAE9C,MAAMC,eAAe,GAAAnB,OAAA,CAAAmB,eAAA,GAAG;EAAEC,QAAQ,EAAE;AAAM,CAAC;AAE3C,MAAMC,WAAW,GAAArB,OAAA,CAAAqB,WAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,IAAI,EAAE,SAAS;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAEzF,MAAMC,iBAAiB,GAAA1B,OAAA,CAAA0B,iBAAA,GAAG;EAAEJ,OAAO,EAAE,OAAO;EAAEE,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAE9E,MAAME,MAAM,GAAA3B,OAAA,CAAA2B,MAAA,GAAG,UAAU;AAEzB,MAAMC,QAAQ,GAAA5B,OAAA,CAAA4B,QAAA,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Checkout.constants.js","names":["_ui","require","_components","_Core","INPUT","exports","TEXT","SELECT","OPTION","PHONE","RADIO","HTML","INPUT_TYPE","EMAIL","NUMBER","FIELD","InputOption","InputPhone","InputRadio","InputSelect","InputText","Text","FORM_STORAGE_CACHE","FORM_STORAGE_KEY","FORMAT_CURRENCY","currency","FORMAT_DATE","weekday","year","month","day","FORMAT_DATE_SHORT","METRIC","VARIANTS","VARIANT","A","B"],"sources":["../../../src/components/Checkout/Checkout.constants.js"],"sourcesContent":["import { InputOption, InputPhone, InputSelect, InputText, Text } from '@mirai/ui';\n\nimport { InputRadio } from './components';\nimport { VARIANT } from '../../Core.constants';\n\nconst INPUT = {\n TEXT: 0,\n SELECT: 1,\n OPTION: 2,\n PHONE: 3,\n RADIO: 4,\n HTML: 5,\n};\n\nconst INPUT_TYPE = {\n TEXT: 0,\n EMAIL: 1,\n NUMBER: 2,\n};\n\nconst FIELD = {\n [INPUT.OPTION]: InputOption,\n [INPUT.PHONE]: InputPhone,\n [INPUT.RADIO]: InputRadio,\n [INPUT.SELECT]: InputSelect,\n [INPUT.TEXT]: InputText,\n [INPUT.HTML]: Text,\n};\n\nconst FORM_STORAGE_CACHE = 1000 * 60 * 60 * 24 * 7; // 7 days\n\nconst FORM_STORAGE_KEY = 'MIRAI:CHECKOUT:FORM';\n\nconst FORMAT_CURRENCY = { currency: 'EUR' };\n\nconst FORMAT_DATE = { weekday: 'short', year: 'numeric', month: 'short', day: 'numeric' };\n\nconst FORMAT_DATE_SHORT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nconst METRIC = 'CHECKOUT';\n\nconst VARIANTS = [VARIANT.A, VARIANT.B];\n\nexport {\n FIELD,\n FORM_STORAGE_CACHE,\n FORM_STORAGE_KEY,\n FORMAT_CURRENCY,\n FORMAT_DATE,\n FORMAT_DATE_SHORT,\n INPUT,\n INPUT_TYPE,\n METRIC,\n VARIANTS,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEA,MAAMG,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACZE,IAAI,EAAE,CAAC;EACPC,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAE,CAAC;EACRC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,UAAU,GAAAP,OAAA,CAAAO,UAAA,GAAG;EACjBN,IAAI,EAAE,CAAC;EACPO,KAAK,EAAE,CAAC;EACRC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,KAAK,GAAAV,OAAA,CAAAU,KAAA,GAAG;EACZ,CAACX,KAAK,CAACI,MAAM,GAAGQ,eAAW;EAC3B,CAACZ,KAAK,CAACK,KAAK,GAAGQ,cAAU;EACzB,CAACb,KAAK,CAACM,KAAK,GAAGQ,sBAAU;EACzB,CAACd,KAAK,CAACG,MAAM,GAAGY,eAAW;EAC3B,CAACf,KAAK,CAACE,IAAI,GAAGc,aAAS;EACvB,CAAChB,KAAK,CAACO,IAAI,GAAGU;AAChB,CAAC;AAED,MAAMC,kBAAkB,GAAAjB,OAAA,CAAAiB,kBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAEpD,MAAMC,gBAAgB,GAAAlB,OAAA,CAAAkB,gBAAA,GAAG,qBAAqB;AAE9C,MAAMC,eAAe,GAAAnB,OAAA,CAAAmB,eAAA,GAAG;EAAEC,QAAQ,EAAE;AAAM,CAAC;AAE3C,MAAMC,WAAW,GAAArB,OAAA,CAAAqB,WAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,IAAI,EAAE,SAAS;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAEzF,MAAMC,iBAAiB,GAAA1B,OAAA,CAAA0B,iBAAA,GAAG;EAAEJ,OAAO,EAAE,OAAO;EAAEE,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC;AAE9E,MAAME,MAAM,GAAA3B,OAAA,CAAA2B,MAAA,GAAG,UAAU;AAEzB,MAAMC,QAAQ,GAAA5B,OAAA,CAAA4B,QAAA,GAAG,CAACC,aAAO,CAACC,CAAC,EAAED,aAAO,CAACE,CAAC,CAAC","ignoreList":[]}
@@ -82,6 +82,12 @@ const L10N = exports.L10N = {
82
82
  LABEL_JOINCLUB: {
83
83
  id: 'core.label.join_club'
84
84
  },
85
+ LABEL_JOINCLUB_BENEFITS: {
86
+ id: 'core.label.join_club_benefits'
87
+ },
88
+ LABEL_JOINCLUB_WITH_DISCOUNT: {
89
+ id: 'core.label.join_club_with_discount'
90
+ },
85
91
  LABEL_LASTNAME: {
86
92
  id: 'common.label.lastname'
87
93
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Checkout.l10n.js","names":["_Core","require","L10N","exports","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","id","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_BETTER_PRICE","NOTIFICATION_PRICE_CHANGED","LABEL_BOOKING_DETAILS","LABEL_BOOKING_EXTRAS","LABEL_OBSERVATIONS","ACTION_LOGIN","ACTION_MORE_INFO","ACTION_SIGNUP","COMMENTS_HINT","LABEL_ADDRESS","LABEL_ADDITIONAL_INFO","LABEL_CITY","LABEL_COMMENTS","LABEL_COMPANY","LABEL_CONDITIONS","LABEL_COUNTRY","LABEL_DNI","LABEL_EMAIL","LABEL_FIRSTNAME","LABEL_IDPASSPORT","LABEL_JOINCLUB","LABEL_LASTNAME","LABEL_PERSONAL_DETAILS","LABEL_PHONE_PREFIX","LABEL_PHONE","LABEL_PRIVACYPOLICY","LABEL_REQUIRED","LABEL_ROOM_NUMBER","LABEL_SECONDLASTNAME","LABEL_STATEREGION","LABEL_SUBJECT_TO_AVAILABILITY","LABEL_TERMS_AND_CONDITIONS","LABEL_ZIPCODE","NOTIFICATION_AGENCY","NOTIFICATION_NO_CARD","NOTIFICATION_SESSION_BOOKING","ACTION_BOOK_NOW","NOTIFICATION_SSL_ENCRYPTION","NOTIFICATION_UNKNOWN_POS_ERROR"],"sources":["../../../src/components/Checkout/Checkout.l10n.js"],"sourcesContent":["import { ERROR } from '../../Core.constants';\n\nexport const L10N = {\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_BETTER_PRICE: { id: 'core.notification.better_price' },\n NOTIFICATION_PRICE_CHANGED: { id: 'core.notification.price_changed' },\n // -- <Details> ------------------------------------------------------------- */\n LABEL_BOOKING_DETAILS: { id: 'core.label.booking_details' },\n LABEL_BOOKING_EXTRAS: { id: 'core.label.booking_extras' },\n LABEL_OBSERVATIONS: { id: 'common.label.observations' },\n\n /* -- <Form> -------------------------------------------------------------- */\n ACTION_LOGIN: { id: 'common.action.login' },\n ACTION_MORE_INFO: { id: 'common.action.more_info' },\n ACTION_SIGNUP: { id: 'common.action.signup' },\n COMMENTS_HINT: { id: 'core.label.comments_hint' },\n LABEL_ADDRESS: { id: 'common.label.address' },\n LABEL_ADDITIONAL_INFO: { id: 'common.label.additional_information' },\n LABEL_CITY: { id: 'common.label.city' },\n LABEL_COMMENTS: { id: 'common.label.comments' },\n LABEL_COMPANY: { id: 'common.label.company' },\n LABEL_CONDITIONS: { id: 'core.label.conditions' },\n LABEL_COUNTRY: { id: 'common.label.country' },\n LABEL_DNI: { id: 'common.label.id_card' },\n LABEL_EMAIL: { id: 'common.label.email' },\n LABEL_FIRSTNAME: { id: 'common.label.firstname' },\n LABEL_IDPASSPORT: { id: 'common.label.id_passport' },\n LABEL_JOINCLUB: { id: 'core.label.join_club' },\n LABEL_LASTNAME: { id: 'common.label.lastname' },\n LABEL_PERSONAL_DETAILS: { id: 'core.label.personal_details' },\n LABEL_PHONE_PREFIX: { id: 'common.label.phone_prefix' },\n LABEL_PHONE: { id: 'common.label.phone' },\n LABEL_PRIVACYPOLICY: { id: 'core.label.checkout_privacy_policy' },\n LABEL_REQUIRED: { id: 'common.label.required' },\n LABEL_ROOM_NUMBER: { id: 'common.label.room_number' },\n LABEL_SECONDLASTNAME: { id: 'common.label.second_lastname' },\n LABEL_STATEREGION: { id: 'common.label.state_region' },\n LABEL_SUBJECT_TO_AVAILABILITY: { id: 'core.label.subject_to_availability' },\n LABEL_TERMS_AND_CONDITIONS: { id: 'common.label.terms_and_conditions' },\n LABEL_ZIPCODE: { id: 'common.label.zip_code' },\n NOTIFICATION_AGENCY: { id: 'core.notification.agency' },\n NOTIFICATION_NO_CARD: { id: 'core.notification.no_card' },\n NOTIFICATION_SESSION_BOOKING: { id: 'core.notification.session_booking' },\n\n /* -- <Confirmation> ------------------------------------------------------ */\n ACTION_BOOK_NOW: { id: 'core.action.book_now' },\n NOTIFICATION_SSL_ENCRYPTION: { id: 'common.notification.ssl_encryption' },\n NOTIFICATION_UNKNOWN_POS_ERROR: { id: 'core.notification.unknown_pos_error' },\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Checkout.l10n.js","names":["_Core","require","L10N","exports","NOTIFICATION_ERROR","ERROR","NOT_AVAILABLE","id","PARAMETER_ERROR","UNKNOWN","NOTIFICATION_BETTER_PRICE","NOTIFICATION_PRICE_CHANGED","LABEL_BOOKING_DETAILS","LABEL_BOOKING_EXTRAS","LABEL_OBSERVATIONS","ACTION_LOGIN","ACTION_MORE_INFO","ACTION_SIGNUP","COMMENTS_HINT","LABEL_ADDRESS","LABEL_ADDITIONAL_INFO","LABEL_CITY","LABEL_COMMENTS","LABEL_COMPANY","LABEL_CONDITIONS","LABEL_COUNTRY","LABEL_DNI","LABEL_EMAIL","LABEL_FIRSTNAME","LABEL_IDPASSPORT","LABEL_JOINCLUB","LABEL_JOINCLUB_BENEFITS","LABEL_JOINCLUB_WITH_DISCOUNT","LABEL_LASTNAME","LABEL_PERSONAL_DETAILS","LABEL_PHONE_PREFIX","LABEL_PHONE","LABEL_PRIVACYPOLICY","LABEL_REQUIRED","LABEL_ROOM_NUMBER","LABEL_SECONDLASTNAME","LABEL_STATEREGION","LABEL_SUBJECT_TO_AVAILABILITY","LABEL_TERMS_AND_CONDITIONS","LABEL_ZIPCODE","NOTIFICATION_AGENCY","NOTIFICATION_NO_CARD","NOTIFICATION_SESSION_BOOKING","ACTION_BOOK_NOW","NOTIFICATION_SSL_ENCRYPTION","NOTIFICATION_UNKNOWN_POS_ERROR"],"sources":["../../../src/components/Checkout/Checkout.l10n.js"],"sourcesContent":["import { ERROR } from '../../Core.constants';\n\nexport const L10N = {\n NOTIFICATION_ERROR: {\n [ERROR.NOT_AVAILABLE]: { id: 'common.notification.error_not_available' },\n [ERROR.PARAMETER_ERROR]: { id: 'common.notification.error_parameter' },\n [ERROR.UNKNOWN]: { id: 'common.notification.error_unknown' },\n },\n NOTIFICATION_BETTER_PRICE: { id: 'core.notification.better_price' },\n NOTIFICATION_PRICE_CHANGED: { id: 'core.notification.price_changed' },\n // -- <Details> ------------------------------------------------------------- */\n LABEL_BOOKING_DETAILS: { id: 'core.label.booking_details' },\n LABEL_BOOKING_EXTRAS: { id: 'core.label.booking_extras' },\n LABEL_OBSERVATIONS: { id: 'common.label.observations' },\n\n /* -- <Form> -------------------------------------------------------------- */\n ACTION_LOGIN: { id: 'common.action.login' },\n ACTION_MORE_INFO: { id: 'common.action.more_info' },\n ACTION_SIGNUP: { id: 'common.action.signup' },\n COMMENTS_HINT: { id: 'core.label.comments_hint' },\n LABEL_ADDRESS: { id: 'common.label.address' },\n LABEL_ADDITIONAL_INFO: { id: 'common.label.additional_information' },\n LABEL_CITY: { id: 'common.label.city' },\n LABEL_COMMENTS: { id: 'common.label.comments' },\n LABEL_COMPANY: { id: 'common.label.company' },\n LABEL_CONDITIONS: { id: 'core.label.conditions' },\n LABEL_COUNTRY: { id: 'common.label.country' },\n LABEL_DNI: { id: 'common.label.id_card' },\n LABEL_EMAIL: { id: 'common.label.email' },\n LABEL_FIRSTNAME: { id: 'common.label.firstname' },\n LABEL_IDPASSPORT: { id: 'common.label.id_passport' },\n LABEL_JOINCLUB: { id: 'core.label.join_club' },\n LABEL_JOINCLUB_BENEFITS: { id: 'core.label.join_club_benefits' },\n LABEL_JOINCLUB_WITH_DISCOUNT: { id: 'core.label.join_club_with_discount' },\n LABEL_LASTNAME: { id: 'common.label.lastname' },\n LABEL_PERSONAL_DETAILS: { id: 'core.label.personal_details' },\n LABEL_PHONE_PREFIX: { id: 'common.label.phone_prefix' },\n LABEL_PHONE: { id: 'common.label.phone' },\n LABEL_PRIVACYPOLICY: { id: 'core.label.checkout_privacy_policy' },\n LABEL_REQUIRED: { id: 'common.label.required' },\n LABEL_ROOM_NUMBER: { id: 'common.label.room_number' },\n LABEL_SECONDLASTNAME: { id: 'common.label.second_lastname' },\n LABEL_STATEREGION: { id: 'common.label.state_region' },\n LABEL_SUBJECT_TO_AVAILABILITY: { id: 'core.label.subject_to_availability' },\n LABEL_TERMS_AND_CONDITIONS: { id: 'common.label.terms_and_conditions' },\n LABEL_ZIPCODE: { id: 'common.label.zip_code' },\n NOTIFICATION_AGENCY: { id: 'core.notification.agency' },\n NOTIFICATION_NO_CARD: { id: 'core.notification.no_card' },\n NOTIFICATION_SESSION_BOOKING: { id: 'core.notification.session_booking' },\n\n /* -- <Confirmation> ------------------------------------------------------ */\n ACTION_BOOK_NOW: { id: 'core.action.book_now' },\n NOTIFICATION_SSL_ENCRYPTION: { id: 'common.notification.ssl_encryption' },\n NOTIFICATION_UNKNOWN_POS_ERROR: { id: 'core.notification.unknown_pos_error' },\n};\n"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,7 @@ exports.getFieldProps = void 0;
7
7
  var _ui = require("@mirai/ui");
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _testDNI = require("./testDNI");
10
+ var _Core = require("../../../Core.constants");
10
11
  var _helpers = require("../../helpers");
11
12
  var _Checkout = require("../Checkout.constants");
12
13
  var _Checkout2 = require("../Checkout.l10n");
@@ -41,7 +42,11 @@ const getFieldProps = function () {
41
42
  language,
42
43
  otherConditions,
43
44
  session,
44
- translate = () => {}
45
+ translate = () => {},
46
+ variant,
47
+ clubDiscount = 0,
48
+ currency,
49
+ currencyFormat
45
50
  } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
46
51
  let {
47
52
  name = '',
@@ -50,6 +55,7 @@ const getFieldProps = function () {
50
55
  } = {}
51
56
  } = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
52
57
  let onPress = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : () => {};
58
+ const labelKey = field === 'joinClub' && variant === _Core.VARIANT.B ? clubDiscount > 0 ? _Checkout2.L10N.LABEL_JOINCLUB_WITH_DISCOUNT : _Checkout2.L10N.LABEL_JOINCLUB_BENEFITS : _Checkout2.L10N["LABEL_".concat(field.toUpperCase())];
53
59
  return _objectSpread(_objectSpread({}, props), {}, {
54
60
  checked: input === OPTION ? (value !== undefined ? value : props.checked) || false : undefined,
55
61
  children: input === HTML && props.children ? (0, _helpers.parseHtml)(props.children, {
@@ -60,7 +66,7 @@ const getFieldProps = function () {
60
66
  hint: translate(_Checkout2.L10N["".concat(field.toUpperCase(), "_HINT")]),
61
67
  id: field ? "checkout-".concat(field.replace(/\./g, '-')) : undefined,
62
68
  key: field,
63
- label: props.label || translate(_Checkout2.L10N["LABEL_".concat(field.toUpperCase())], {
69
+ label: props.label || translate(labelKey, {
64
70
  club: name,
65
71
  clubLink: /*#__PURE__*/_react.default.createElement(_ui.Action, {
66
72
  href: conditions[language],
@@ -71,6 +77,10 @@ const getFieldProps = function () {
71
77
  display: 'inline'
72
78
  }
73
79
  }, translate(_Checkout2.L10N.LABEL_TERMS_AND_CONDITIONS)),
80
+ discount: currencyFormat ? currencyFormat({
81
+ currency,
82
+ value: clubDiscount
83
+ }) : clubDiscount,
74
84
  otherConditions: !!otherConditions,
75
85
  termsLink: /*#__PURE__*/_react.default.createElement(_ui.Action, {
76
86
  small: true,
@@ -1 +1 @@
1
- {"version":3,"file":"getFieldProps.js","names":["_ui","require","_react","_interopRequireDefault","_testDNI","_helpers","_Checkout","_Checkout2","style","_interopRequireWildcard","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","HTML","OPTION","PHONE","SELECT","INPUT","getFieldProps","field","undefined","_ref","input","type","props","error","language","otherConditions","session","translate","name","url","conditions","onPress","checked","children","parseHtml","small","disabled","hint","L10N","concat","toUpperCase","id","replace","key","label","club","clubLink","createElement","Action","href","target","underline","display","LABEL_TERMS_AND_CONDITIONS","termsLink","ACTION_MORE_INFO","labelPrefix","LABEL_PHONE_PREFIX","requiredText","LABEL_REQUIRED","showRequired","includes","success","test","testDNI","INPUT_TYPE","NUMBER","EMAIL","options","className","wide","exports"],"sources":["../../../../src/components/Checkout/helpers/getFieldProps.js"],"sourcesContent":["import { Action } from '@mirai/ui';\nimport React from 'react';\n\nimport { testDNI } from './testDNI';\nimport { parseHtml } from '../../helpers';\nimport { INPUT, INPUT_TYPE } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\n\nconst { HTML, OPTION, PHONE, SELECT } = INPUT;\n\nexport const getFieldProps = (\n field = '',\n { input, type, ...props } = {},\n { value, error, language, otherConditions, session, translate = () => {} } = {},\n { name = '', url: { conditions = {} } = {} } = {},\n onPress = () => {},\n) => ({\n ...props,\n checked: input === OPTION ? (value !== undefined ? value : props.checked) || false : undefined,\n children: input === HTML && props.children ? parseHtml(props.children, { small: true }) : undefined,\n disabled: (field === 'email' && session) || undefined,\n error: field !== 'phone' ? value?.length > 0 && !!error : value?.length > 5 && !!error,\n hint: translate(L10N[`${field.toUpperCase()}_HINT`]),\n id: field ? `checkout-${field.replace(/\\./g, '-')}` : undefined,\n key: field,\n label:\n props.label ||\n translate(L10N[`LABEL_${field.toUpperCase()}`], {\n club: name,\n clubLink: (\n <Action href={conditions[language]} small target=\"_blank\" underline style={{ display: 'inline' }}>\n {translate(L10N.LABEL_TERMS_AND_CONDITIONS)}\n </Action>\n ),\n otherConditions: !!otherConditions,\n termsLink: (\n <Action small onPress={onPress} style={{ display: 'inline' }}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n ),\n }) ||\n field,\n labelPrefix: field === 'phone' ? translate(L10N.LABEL_PHONE_PREFIX) : undefined,\n name: field,\n requiredText: translate(L10N.LABEL_REQUIRED),\n showRequired: true,\n small: [OPTION, HTML].includes(input),\n success: field !== 'phone' ? !!value && !error : value?.length > 4 && !error,\n test: field === 'dni' ? testDNI : undefined,\n type:\n type === INPUT_TYPE.NUMBER\n ? 'number'\n : type === INPUT_TYPE.EMAIL\n ? 'email'\n : input === PHONE\n ? 'inputPhone'\n : input === OPTION\n ? 'checkbox'\n : undefined,\n value: input === SELECT && value === undefined ? props.options[0] : value || props.value,\n className: style.wide,\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getFieldProps.js","names":["_ui","require","_react","_interopRequireDefault","_testDNI","_Core","_helpers","_Checkout","_Checkout2","style","_interopRequireWildcard","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","HTML","OPTION","PHONE","SELECT","INPUT","getFieldProps","field","undefined","_ref","input","type","props","error","language","otherConditions","session","translate","variant","clubDiscount","currency","currencyFormat","name","url","conditions","onPress","labelKey","VARIANT","B","L10N","LABEL_JOINCLUB_WITH_DISCOUNT","LABEL_JOINCLUB_BENEFITS","concat","toUpperCase","checked","children","parseHtml","small","disabled","hint","id","replace","key","label","club","clubLink","createElement","Action","href","target","underline","display","LABEL_TERMS_AND_CONDITIONS","discount","termsLink","ACTION_MORE_INFO","labelPrefix","LABEL_PHONE_PREFIX","requiredText","LABEL_REQUIRED","showRequired","includes","success","test","testDNI","INPUT_TYPE","NUMBER","EMAIL","options","className","wide","exports"],"sources":["../../../../src/components/Checkout/helpers/getFieldProps.js"],"sourcesContent":["import { Action } from '@mirai/ui';\nimport React from 'react';\n\nimport { testDNI } from './testDNI';\nimport { VARIANT } from '../../../Core.constants';\nimport { parseHtml } from '../../helpers';\nimport { INPUT, INPUT_TYPE } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\n\nconst { HTML, OPTION, PHONE, SELECT } = INPUT;\n\nexport const getFieldProps = (\n field = '',\n { input, type, ...props } = {},\n {\n value,\n error,\n language,\n otherConditions,\n session,\n translate = () => {},\n variant,\n clubDiscount = 0,\n currency,\n currencyFormat,\n } = {},\n { name = '', url: { conditions = {} } = {} } = {},\n onPress = () => {},\n) => {\n const labelKey =\n field === 'joinClub' && variant === VARIANT.B\n ? clubDiscount > 0\n ? L10N.LABEL_JOINCLUB_WITH_DISCOUNT\n : L10N.LABEL_JOINCLUB_BENEFITS\n : L10N[`LABEL_${field.toUpperCase()}`];\n\n return {\n ...props,\n checked: input === OPTION ? (value !== undefined ? value : props.checked) || false : undefined,\n children: input === HTML && props.children ? parseHtml(props.children, { small: true }) : undefined,\n disabled: (field === 'email' && session) || undefined,\n error: field !== 'phone' ? value?.length > 0 && !!error : value?.length > 5 && !!error,\n hint: translate(L10N[`${field.toUpperCase()}_HINT`]),\n id: field ? `checkout-${field.replace(/\\./g, '-')}` : undefined,\n key: field,\n label:\n props.label ||\n translate(labelKey, {\n club: name,\n clubLink: (\n <Action href={conditions[language]} small target=\"_blank\" underline style={{ display: 'inline' }}>\n {translate(L10N.LABEL_TERMS_AND_CONDITIONS)}\n </Action>\n ),\n discount: currencyFormat ? currencyFormat({ currency, value: clubDiscount }) : clubDiscount,\n otherConditions: !!otherConditions,\n termsLink: (\n <Action small onPress={onPress} style={{ display: 'inline' }}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n ),\n }) ||\n field,\n labelPrefix: field === 'phone' ? translate(L10N.LABEL_PHONE_PREFIX) : undefined,\n name: field,\n requiredText: translate(L10N.LABEL_REQUIRED),\n showRequired: true,\n small: [OPTION, HTML].includes(input),\n success: field !== 'phone' ? !!value && !error : value?.length > 4 && !error,\n test: field === 'dni' ? testDNI : undefined,\n type:\n type === INPUT_TYPE.NUMBER\n ? 'number'\n : type === INPUT_TYPE.EMAIL\n ? 'email'\n : input === PHONE\n ? 'inputPhone'\n : input === OPTION\n ? 'checkbox'\n : undefined,\n value: input === SELECT && value === undefined ? props.options[0] : value || props.value,\n className: style.wide,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
  var _shared__ = require("../../__shared__");
14
14
  var _helpers = require("../../helpers");
15
+ var _Rates = require("../../Rates/Rates.constants");
15
16
  var _Checkout = require("../Checkout.constants");
16
17
  var _Checkout2 = require("../Checkout.l10n");
17
18
  var style = _interopRequireWildcard(require("../Checkout.module.css"));
@@ -42,7 +43,7 @@ const key = (dataSource, schema) => "".concat(_Checkout.FORM_STORAGE_KEY, ":").c
42
43
  })
43
44
  }))));
44
45
  const Form = _ref3 => {
45
- var _payment$config, _payment$config$publi, _payment$info, _payment$info2;
46
+ var _dataSource$price, _dataSource$price$dis, _dataSource$price$dis2, _dataSource$price$dis3, _payment$config, _payment$config$publi, _payment$info, _payment$info2;
46
47
  let {
47
48
  children,
48
49
  dataSource: {
@@ -62,6 +63,7 @@ const Form = _ref3 => {
62
63
  isDesktop
63
64
  } = (0, _ui.useDevice)();
64
65
  const {
66
+ currencyFormat,
65
67
  translate
66
68
  } = (0, _locale.useLocale)();
67
69
  const {
@@ -70,9 +72,17 @@ const Form = _ref3 => {
70
72
  club,
71
73
  language,
72
74
  payment: storePayment,
73
- session
75
+ session,
76
+ variant
74
77
  } = {}
75
78
  } = (0, _dataSources.useStore)();
79
+ const clubDiscount = (dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$price = dataSource.price) === null || _dataSource$price === void 0 ? void 0 : (_dataSource$price$dis = _dataSource$price.discounts) === null || _dataSource$price$dis === void 0 ? void 0 : (_dataSource$price$dis2 = _dataSource$price$dis.find) === null || _dataSource$price$dis2 === void 0 ? void 0 : (_dataSource$price$dis3 = _dataSource$price$dis2.call(_dataSource$price$dis, discount => (discount === null || discount === void 0 ? void 0 : discount.type) === _Rates.DISCOUNT_TYPE.CLUB)) === null || _dataSource$price$dis3 === void 0 ? void 0 : _dataSource$price$dis3.amount) || 0;
80
+ const fieldContext = {
81
+ clubDiscount,
82
+ currency,
83
+ currencyFormat,
84
+ variant
85
+ };
76
86
  const formReady = (0, _react.useRef)(false);
77
87
  const [errorForm, setErrorForm] = (0, _react.useState)({});
78
88
  const [errorPayment, setErrorPayment] = (0, _react.useState)({});
@@ -191,13 +201,13 @@ const Form = _ref3 => {
191
201
  return field.required;
192
202
  }).map(_ref1 => {
193
203
  let [key, field = {}] = _ref1;
194
- return /*#__PURE__*/_react.default.createElement(_Checkout.FIELD[field.input] || _ui.InputText, (0, _helpers2.getFieldProps)(key, field, _objectSpread({
204
+ return /*#__PURE__*/_react.default.createElement(_Checkout.FIELD[field.input] || _ui.InputText, (0, _helpers2.getFieldProps)(key, field, _objectSpread(_objectSpread({
195
205
  value: form[key],
196
206
  error: errorForm[key],
197
207
  language,
198
208
  session,
199
209
  translate
200
- }, dataSource), club, () => setModal(true)));
210
+ }, dataSource), fieldContext), club, () => setModal(true)));
201
211
  })), children, payment && /*#__PURE__*/_react.default.createElement(_shared__.Payment, _extends({}, _objectSpread(_objectSpread({}, payment), {}, {
202
212
  config: _objectSpread(_objectSpread({}, payment.config), {}, {
203
213
  publicKey: (_payment$config = payment.config) === null || _payment$config === void 0 ? void 0 : (_payment$config$publi = _payment$config.publicKey) === null || _payment$config$publi === void 0 ? void 0 : _payment$config$publi[storePayment.method]
@@ -221,13 +231,13 @@ const Form = _ref3 => {
221
231
  return !field.required;
222
232
  }).map(_ref11 => {
223
233
  let [key, field = {}] = _ref11;
224
- return /*#__PURE__*/_react.default.createElement(_Checkout.FIELD[field.input] || _ui.InputText, (0, _helpers2.getFieldProps)(key, field, _objectSpread({
234
+ return /*#__PURE__*/_react.default.createElement(_Checkout.FIELD[field.input] || _ui.InputText, (0, _helpers2.getFieldProps)(key, field, _objectSpread(_objectSpread({
225
235
  value: form[key],
226
236
  error: errorForm[key],
227
237
  language,
228
238
  session,
229
239
  translate
230
- }, dataSource), club, () => setModal(true)));
240
+ }, dataSource), fieldContext), club, () => setModal(true)));
231
241
  })), /*#__PURE__*/_react.default.createElement(_ui.Modal, {
232
242
  fit: true,
233
243
  title: translate(_Checkout2.L10N.LABEL_CONDITIONS),
@@ -1 +1 @@
1
- {"version":3,"file":"Checkout.Form.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_helpers","_Checkout","_Checkout2","style","_helpers2","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","storage","Storage","adapter","LocalAdapter","cache","FORM_STORAGE_CACHE","key","dataSource","schema","concat","FORM_STORAGE_KEY","generateId","JSON","stringify","entries","_ref","input","INPUT","HTML","map","_ref2","Form","_ref3","_payment$config","_payment$config$publi","_payment$info","_payment$info2","children","currency","repositories","countries","form","tracking","showErrors","onError","others","isDesktop","useDevice","translate","useLocale","club","language","payment","storePayment","session","useStore","formReady","useRef","errorForm","setErrorForm","useState","errorPayment","setErrorPayment","setForm","fromEntries","_ref4","formTracked","setFormTracked","modal","setModal","useEffect","getSchemaProps","useLayoutEffect","checkout","current","hasRequiredValues","getFields","_ref5","field","required","_ref6","every","undefined","hasErrors","Event","publish","EVENT","METRICS","id","METRICS_EVENTS","CHECKOUT_INTERACTION","action","handleChange","next","country","phone","code","ServiceCountry","info","getCountryCode","nextFields","nextFiltered","_ref7","handleLeave","email","firstName","lastName","CHECKOUT_FORM","event","response","handleFormError","errors","_ref8","_ref9","visible","testId","formProps","autoComplete","validateOnMount","onChange","onLeave","className","styles","box","createElement","Fragment","Text","bold","headline","wide","L10N","LABEL_PERSONAL_DETAILS","_ref0","_ref1","React","FIELD","InputText","getFieldProps","error","Payment","config","publicKey","method","date","parseDate","requiredText","LABEL_REQUIRED","LABEL_ADDITIONAL_INFO","_ref10","_ref11","Modal","fit","title","LABEL_CONDITIONS","onClose","ScrollView","snap","vertical","scrollview","BookingTerms","small","exports","displayName","propTypes","PropTypes","node","shape","bool","variant","string","func"],"sources":["../../../../src/components/Checkout/partials/Checkout.Form.jsx"],"sourcesContent":["import { Event, LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceCountry } from '@mirai/services';\nimport { InputText, Form as FormBase, Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { BookingTerms, Payment } from '../../__shared__';\nimport { EVENT, generateId, getCountryCode, METRICS_EVENTS } from '../../helpers';\nimport { FIELD, FORM_STORAGE_CACHE, FORM_STORAGE_KEY, INPUT } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getFieldProps, getSchemaProps } from '../helpers';\n\nconst storage = new Storage({ adapter: LocalAdapter, cache: FORM_STORAGE_CACHE });\n\nconst key = (dataSource, schema) =>\n `${FORM_STORAGE_KEY}:${generateId(\n JSON.stringify({\n ...dataSource,\n schema: Object.entries(schema)\n .filter(([, value]) => value.input !== INPUT.HTML)\n .map(([key]) => key),\n }),\n )}`;\n\nconst Form = ({\n children,\n dataSource: { currency, repositories: { countries } = {}, form: schema = {}, tracking = {}, ...dataSource } = {},\n showErrors = false,\n onError = () => {},\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const { set, value: { club, language, payment: storePayment, session } = {} } = useStore();\n\n const formReady = useRef(false);\n\n const [errorForm, setErrorForm] = useState({});\n const [errorPayment, setErrorPayment] = useState({});\n const [form, setForm] = useState(\n storage.get(key(dataSource, schema)) ||\n Object.fromEntries(Object.entries(schema).map(([key, { value }]) => [key, value])),\n );\n const [formTracked, setFormTracked] = useState();\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n setForm({ ...form, ...getSchemaProps({ schema, value: session }) });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n useLayoutEffect(() => {\n if (Object.keys(form).length) storage.set(key(dataSource, schema), form);\n set({ checkout: form });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n useEffect(() => {\n onError({ ...errorForm, ...errorPayment });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [errorForm, errorPayment]);\n\n useEffect(() => {\n if (formReady.current) return;\n const hasRequiredValues = getFields(form)\n .filter(([, field]) => field.required)\n .map(([key]) => key)\n .every((key) => form[key] !== undefined && form[key] !== '');\n const hasErrors = Object.keys(errorForm).length > 0 || Object.keys(errorPayment).length > 0;\n\n if (!hasErrors && hasRequiredValues && Object.keys(storePayment || {}).length > 0) {\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.CHECKOUT_INTERACTION, action: 'form_ready' });\n formReady.current = true;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [errorForm, errorPayment, storePayment]);\n\n const handleChange = async (value) => {\n const next = { ...form, ...value };\n\n if (!!schema.country && next.country && !next.phone) {\n const { code } = await ServiceCountry.info(getCountryCode(next.country, countries));\n if (code) next.phone = code;\n }\n\n const nextFields = getFields(next);\n const nextFiltered =\n nextFields.length < getFields(form).length\n ? Object.fromEntries(Object.entries(next).filter(([key]) => Object.fromEntries(nextFields)[key] !== undefined))\n : undefined;\n\n setForm(nextFiltered || next);\n };\n\n const handleLeave = () => {\n const { email, firstName, lastName, phone } = errorForm;\n\n if (!formTracked && !email && !firstName && !lastName && !phone) {\n Event.publish(EVENT.CHECKOUT_FORM, { event: EVENT.CHECKOUT_FORM, response: { tracking } });\n setFormTracked(true);\n }\n };\n\n const handleFormError = (errors) => {\n setErrorForm(errors);\n };\n\n const getFields = (value) =>\n Object.entries(schema)\n .filter(([key]) => !!schema[key])\n .filter(([, { visible }]) => !visible || visible(value));\n\n const { payment } = dataSource || {};\n const { testId } = others;\n const formProps = {\n ...others,\n autoComplete: 'off',\n showErrors,\n validateOnMount: true,\n onChange: handleChange,\n onError: handleFormError,\n onLeave: handleLeave,\n className: styles(style.form, style.box),\n };\n\n return (\n <>\n <FormBase {...formProps} testId={`${testId}-required`}>\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n\n {getFields(form)\n .filter(([, field]) => field.required)\n .map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n { value: form[key], error: errorForm[key], language, session, translate, ...dataSource },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n\n {children}\n\n {payment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey?.[storePayment.method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n showErrors,\n }}\n currency={currency}\n requiredText={translate(L10N.LABEL_REQUIRED)}\n onError={setErrorPayment}\n />\n )}\n\n <FormBase {...formProps} testId={`${testId}-adittional`}>\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_ADDITIONAL_INFO)}\n </Text>\n {getFields(form)\n .filter(([, field]) => !field.required)\n .map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n { value: form[key], error: errorForm[key], language, session, translate, ...dataSource },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n\n <Modal\n fit\n title={translate(L10N.LABEL_CONDITIONS)}\n visible={modal}\n onClose={() => setModal(false)}\n className={style.modal}\n >\n <ScrollView snap={false} vertical className={style.scrollview}>\n <BookingTerms dataSource={dataSource} small className={style.others} />\n </ScrollView>\n </Modal>\n </>\n );\n};\n\nForm.displayName = 'Mirai:Core:Checkout:Form';\n\nForm.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({\n form: PropTypes.shape({}),\n }),\n showErrors: PropTypes.bool,\n variant: PropTypes.string,\n onError: PropTypes.func,\n};\n\nexport { Form };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Checkout.Form.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_helpers","_Rates","_Checkout","_Checkout2","style","_helpers2","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","storage","Storage","adapter","LocalAdapter","cache","FORM_STORAGE_CACHE","key","dataSource","schema","concat","FORM_STORAGE_KEY","generateId","JSON","stringify","entries","_ref","input","INPUT","HTML","map","_ref2","Form","_ref3","_dataSource$price","_dataSource$price$dis","_dataSource$price$dis2","_dataSource$price$dis3","_payment$config","_payment$config$publi","_payment$info","_payment$info2","children","currency","repositories","countries","form","tracking","showErrors","onError","others","isDesktop","useDevice","currencyFormat","translate","useLocale","club","language","payment","storePayment","session","variant","useStore","clubDiscount","price","discounts","find","discount","type","DISCOUNT_TYPE","CLUB","amount","fieldContext","formReady","useRef","errorForm","setErrorForm","useState","errorPayment","setErrorPayment","setForm","fromEntries","_ref4","formTracked","setFormTracked","modal","setModal","useEffect","getSchemaProps","useLayoutEffect","checkout","current","hasRequiredValues","getFields","_ref5","field","required","_ref6","every","undefined","hasErrors","Event","publish","EVENT","METRICS","id","METRICS_EVENTS","CHECKOUT_INTERACTION","action","handleChange","next","country","phone","code","ServiceCountry","info","getCountryCode","nextFields","nextFiltered","_ref7","handleLeave","email","firstName","lastName","CHECKOUT_FORM","event","response","handleFormError","errors","_ref8","_ref9","visible","testId","formProps","autoComplete","validateOnMount","onChange","onLeave","className","styles","box","createElement","Fragment","Text","bold","headline","wide","L10N","LABEL_PERSONAL_DETAILS","_ref0","_ref1","React","FIELD","InputText","getFieldProps","error","Payment","config","publicKey","method","date","parseDate","requiredText","LABEL_REQUIRED","LABEL_ADDITIONAL_INFO","_ref10","_ref11","Modal","fit","title","LABEL_CONDITIONS","onClose","ScrollView","snap","vertical","scrollview","BookingTerms","small","exports","displayName","propTypes","PropTypes","node","shape","bool","string","func"],"sources":["../../../../src/components/Checkout/partials/Checkout.Form.jsx"],"sourcesContent":["import { Event, LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceCountry } from '@mirai/services';\nimport { InputText, Form as FormBase, Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { BookingTerms, Payment } from '../../__shared__';\nimport { EVENT, generateId, getCountryCode, METRICS_EVENTS } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates/Rates.constants';\nimport { FIELD, FORM_STORAGE_CACHE, FORM_STORAGE_KEY, INPUT } from '../Checkout.constants';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\nimport { getFieldProps, getSchemaProps } from '../helpers';\n\nconst storage = new Storage({ adapter: LocalAdapter, cache: FORM_STORAGE_CACHE });\n\nconst key = (dataSource, schema) =>\n `${FORM_STORAGE_KEY}:${generateId(\n JSON.stringify({\n ...dataSource,\n schema: Object.entries(schema)\n .filter(([, value]) => value.input !== INPUT.HTML)\n .map(([key]) => key),\n }),\n )}`;\n\nconst Form = ({\n children,\n dataSource: { currency, repositories: { countries } = {}, form: schema = {}, tracking = {}, ...dataSource } = {},\n showErrors = false,\n onError = () => {},\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const { set, value: { club, language, payment: storePayment, session, variant } = {} } = useStore();\n\n const clubDiscount =\n dataSource?.price?.discounts?.find?.((discount) => discount?.type === DISCOUNT_TYPE.CLUB)?.amount || 0;\n const fieldContext = { clubDiscount, currency, currencyFormat, variant };\n\n const formReady = useRef(false);\n\n const [errorForm, setErrorForm] = useState({});\n const [errorPayment, setErrorPayment] = useState({});\n const [form, setForm] = useState(\n storage.get(key(dataSource, schema)) ||\n Object.fromEntries(Object.entries(schema).map(([key, { value }]) => [key, value])),\n );\n const [formTracked, setFormTracked] = useState();\n const [modal, setModal] = useState(false);\n\n useEffect(() => {\n setForm({ ...form, ...getSchemaProps({ schema, value: session }) });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n useLayoutEffect(() => {\n if (Object.keys(form).length) storage.set(key(dataSource, schema), form);\n set({ checkout: form });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n useEffect(() => {\n onError({ ...errorForm, ...errorPayment });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [errorForm, errorPayment]);\n\n useEffect(() => {\n if (formReady.current) return;\n const hasRequiredValues = getFields(form)\n .filter(([, field]) => field.required)\n .map(([key]) => key)\n .every((key) => form[key] !== undefined && form[key] !== '');\n const hasErrors = Object.keys(errorForm).length > 0 || Object.keys(errorPayment).length > 0;\n\n if (!hasErrors && hasRequiredValues && Object.keys(storePayment || {}).length > 0) {\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.CHECKOUT_INTERACTION, action: 'form_ready' });\n formReady.current = true;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [errorForm, errorPayment, storePayment]);\n\n const handleChange = async (value) => {\n const next = { ...form, ...value };\n\n if (!!schema.country && next.country && !next.phone) {\n const { code } = await ServiceCountry.info(getCountryCode(next.country, countries));\n if (code) next.phone = code;\n }\n\n const nextFields = getFields(next);\n const nextFiltered =\n nextFields.length < getFields(form).length\n ? Object.fromEntries(Object.entries(next).filter(([key]) => Object.fromEntries(nextFields)[key] !== undefined))\n : undefined;\n\n setForm(nextFiltered || next);\n };\n\n const handleLeave = () => {\n const { email, firstName, lastName, phone } = errorForm;\n\n if (!formTracked && !email && !firstName && !lastName && !phone) {\n Event.publish(EVENT.CHECKOUT_FORM, { event: EVENT.CHECKOUT_FORM, response: { tracking } });\n setFormTracked(true);\n }\n };\n\n const handleFormError = (errors) => {\n setErrorForm(errors);\n };\n\n const getFields = (value) =>\n Object.entries(schema)\n .filter(([key]) => !!schema[key])\n .filter(([, { visible }]) => !visible || visible(value));\n\n const { payment } = dataSource || {};\n const { testId } = others;\n const formProps = {\n ...others,\n autoComplete: 'off',\n showErrors,\n validateOnMount: true,\n onChange: handleChange,\n onError: handleFormError,\n onLeave: handleLeave,\n className: styles(style.form, style.box),\n };\n\n return (\n <>\n <FormBase {...formProps} testId={`${testId}-required`}>\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n\n {getFields(form)\n .filter(([, field]) => field.required)\n .map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n {\n value: form[key],\n error: errorForm[key],\n language,\n session,\n translate,\n ...dataSource,\n ...fieldContext,\n },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n\n {children}\n\n {payment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey?.[storePayment.method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n showErrors,\n }}\n currency={currency}\n requiredText={translate(L10N.LABEL_REQUIRED)}\n onError={setErrorPayment}\n />\n )}\n\n <FormBase {...formProps} testId={`${testId}-adittional`}>\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_ADDITIONAL_INFO)}\n </Text>\n {getFields(form)\n .filter(([, field]) => !field.required)\n .map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n {\n value: form[key],\n error: errorForm[key],\n language,\n session,\n translate,\n ...dataSource,\n ...fieldContext,\n },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n\n <Modal\n fit\n title={translate(L10N.LABEL_CONDITIONS)}\n visible={modal}\n onClose={() => setModal(false)}\n className={style.modal}\n >\n <ScrollView snap={false} vertical className={style.scrollview}>\n <BookingTerms dataSource={dataSource} small className={style.others} />\n </ScrollView>\n </Modal>\n </>\n );\n};\n\nForm.displayName = 'Mirai:Core:Checkout:Form';\n\nForm.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({\n form: PropTypes.shape({}),\n }),\n showErrors: PropTypes.bool,\n variant: PropTypes.string,\n onError: PropTypes.func,\n};\n\nexport { Form };\n"],"mappings":"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","ignoreList":[]}
@@ -222,7 +222,8 @@ const Rates = _ref => {
222
222
  clubDiscount,
223
223
  dataSource,
224
224
  isPestana,
225
- session: sessionProp
225
+ session: sessionProp,
226
+ variant
226
227
  })) return setClubRate(true);
227
228
  const {
228
229
  extras = []