@mirai/core 0.4.59 → 0.4.60

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.
Files changed (43) hide show
  1. package/build/components/Checkout/Checkout.js +47 -10
  2. package/build/components/Checkout/Checkout.js.map +1 -1
  3. package/build/components/Checkout/Checkout.l10n.js +10 -0
  4. package/build/components/Checkout/Checkout.l10n.js.map +1 -1
  5. package/build/components/Checkout/Checkout.module.css +7 -0
  6. package/build/components/Checkout/helpers/getParamsFromExtras.js +53 -0
  7. package/build/components/Checkout/helpers/getParamsFromExtras.js.map +1 -0
  8. package/build/components/Checkout/helpers/index.js +11 -0
  9. package/build/components/Checkout/helpers/index.js.map +1 -1
  10. package/build/components/Checkout/partials/Checkout.Confirmation.js +43 -4
  11. package/build/components/Checkout/partials/Checkout.Confirmation.js.map +1 -1
  12. package/build/components/Checkout/partials/Checkout.Extras.js +83 -0
  13. package/build/components/Checkout/partials/Checkout.Extras.js.map +1 -0
  14. package/build/components/Checkout/partials/Checkout.Form.js +8 -3
  15. package/build/components/Checkout/partials/Checkout.Form.js.map +1 -1
  16. package/build/components/Checkout/partials/index.js +12 -1
  17. package/build/components/Checkout/partials/index.js.map +1 -1
  18. package/build/components/Header/components/BookingProcess/BookingProcess.js +16 -13
  19. package/build/components/Header/components/BookingProcess/BookingProcess.js.map +1 -1
  20. package/build/components/Header/components/BookingProcess/BookingProcess.l10n.js +3 -0
  21. package/build/components/Header/components/BookingProcess/BookingProcess.l10n.js.map +1 -1
  22. package/build/components/Rates/Rates.js +19 -3
  23. package/build/components/Rates/Rates.js.map +1 -1
  24. package/build/components/Rates/components/ModalExtras/Extras.js +231 -0
  25. package/build/components/Rates/components/ModalExtras/Extras.js.map +1 -0
  26. package/build/components/Rates/components/ModalExtras/ModalExtras.js +1 -1
  27. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -1
  28. package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +20 -10
  29. package/build/components/Rates/helpers/getCheckoutParams.js +5 -2
  30. package/build/components/Rates/helpers/getCheckoutParams.js.map +1 -1
  31. package/build/components/Rates/helpers/getForwarderUrl.js +4 -2
  32. package/build/components/Rates/helpers/getForwarderUrl.js.map +1 -1
  33. package/build/components/__shared__/BookingSummary/BookingSummary.js +4 -2
  34. package/build/components/__shared__/BookingSummary/BookingSummary.js.map +1 -1
  35. package/build/components/__shared__/ButtonPayment/helpers/getUrlBooking.js +3 -1
  36. package/build/components/__shared__/ButtonPayment/helpers/getUrlBooking.js.map +1 -1
  37. package/build/components/__shared__/ButtonPayment/helpers/getUrlCriptan.js +5 -1
  38. package/build/components/__shared__/ButtonPayment/helpers/getUrlCriptan.js.map +1 -1
  39. package/build/components/__shared__/ButtonPayment/helpers/getUrlTpv.js +4 -0
  40. package/build/components/__shared__/ButtonPayment/helpers/getUrlTpv.js.map +1 -1
  41. package/build/helpers/consolidateStore.js +3 -0
  42. package/build/helpers/consolidateStore.js.map +1 -1
  43. package/package.json +1 -1
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Extras = void 0;
7
+ var _dataSources = require("@mirai/data-sources");
8
+ var _locale = require("@mirai/locale");
9
+ var _services = require("@mirai/services");
10
+ var _ui = require("@mirai/ui");
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _Extras = require("../../Rates/components/ModalExtras/Extras");
14
+ var _Checkout = require("../Checkout.l10n");
15
+ var style = _interopRequireWildcard(require("../Checkout.module.css"));
16
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+ const Extras = _ref => {
20
+ let {
21
+ hotel: {
22
+ currency
23
+ } = {},
24
+ onChange
25
+ } = _ref;
26
+ const {
27
+ isDesktop,
28
+ mobile
29
+ } = (0, _ui.useDevice)();
30
+ const {
31
+ translate
32
+ } = (0, _locale.useLocale)();
33
+ const {
34
+ value: {
35
+ locale,
36
+ session,
37
+ urlParams = {}
38
+ }
39
+ } = (0, _dataSources.useStore)();
40
+ const [dataSource, setDataSource] = (0, _react.useState)();
41
+ (0, _react.useEffect)(() => {
42
+ (async () => {
43
+ const {
44
+ extras = []
45
+ } = (await _services.ServiceRates.extras({
46
+ ...JSON.parse(urlParams.checkoutParams),
47
+ ...JSON.parse(urlParams.occupationTotals),
48
+ clubDiscount: !!session || urlParams.applyClubDiscount === 'true',
49
+ device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',
50
+ hotelCurrency: currency,
51
+ locale
52
+ }).catch(() => {})) || {};
53
+ const selectableExtras = extras.some(function () {
54
+ let {
55
+ included
56
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
57
+ return !included;
58
+ });
59
+ if (selectableExtras) setDataSource(extras);
60
+ })();
61
+ // eslint-disable-next-line react-hooks/exhaustive-deps
62
+ }, [locale]);
63
+ return (dataSource === null || dataSource === void 0 ? void 0 : dataSource.length) > 0 ? /*#__PURE__*/_react.default.createElement(_ui.View, {
64
+ className: style.box
65
+ }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
66
+ bold: true,
67
+ headline: isDesktop
68
+ }, translate(_Checkout.L10N.LABEL_ENHANCED_YOUR_STAY)), /*#__PURE__*/_react.default.createElement(_Extras.Extras, {
69
+ extras: dataSource,
70
+ horizontal: true,
71
+ onChange: onChange
72
+ })) : null;
73
+ };
74
+ exports.Extras = Extras;
75
+ Extras.displayName = 'Mirai:Core:Checkout:Extras';
76
+ Extras.propTypes = {
77
+ dataSource: _propTypes.default.arrayOf(_propTypes.default.shape({})),
78
+ hotel: _propTypes.default.shape({
79
+ currency: _propTypes.default.string
80
+ }),
81
+ onChange: _propTypes.default.func
82
+ };
83
+ //# sourceMappingURL=Checkout.Extras.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkout.Extras.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Extras","_Checkout","style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Extras","_ref","hotel","currency","onChange","isDesktop","mobile","useDevice","translate","useLocale","value","locale","session","urlParams","useStore","dataSource","setDataSource","useState","useEffect","extras","ServiceRates","JSON","parse","checkoutParams","occupationTotals","clubDiscount","applyClubDiscount","device","hotelCurrency","catch","selectableExtras","some","included","arguments","length","undefined","createElement","View","className","box","Text","bold","headline","L10N","LABEL_ENHANCED_YOUR_STAY","horizontal","exports","displayName","propTypes","PropTypes","arrayOf","shape","string","func"],"sources":["../../../../src/components/Checkout/partials/Checkout.Extras.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceRates } from '@mirai/services';\nimport { Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Extras as ExtrasBase } from '../../Rates/components/ModalExtras/Extras';\nimport { L10N } from '../Checkout.l10n';\nimport * as style from '../Checkout.module.css';\n\nconst Extras = ({ hotel: { currency } = {}, onChange }) => {\n const { isDesktop, mobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n\n useEffect(() => {\n (async () => {\n const { extras = [] } =\n (await ServiceRates.extras({\n ...JSON.parse(urlParams.checkoutParams),\n ...JSON.parse(urlParams.occupationTotals),\n clubDiscount: !!session || urlParams.applyClubDiscount === 'true',\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n hotelCurrency: currency,\n locale,\n }).catch(() => {})) || {};\n const selectableExtras = extras.some(({ included } = {}) => !included);\n\n if (selectableExtras) setDataSource(extras);\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n return dataSource?.length > 0 ? (\n <View className={style.box}>\n <Text bold headline={isDesktop}>\n {translate(L10N.LABEL_ENHANCED_YOUR_STAY)}\n </Text>\n <ExtrasBase extras={dataSource} horizontal onChange={onChange} />\n </View>\n ) : null;\n};\n\nExtras.displayName = 'Mirai:Core:Checkout:Extras';\n\nExtras.propTypes = {\n dataSource: PropTypes.arrayOf(PropTypes.shape({})),\n hotel: PropTypes.shape({\n currency: PropTypes.string,\n }),\n onChange: PropTypes.func,\n};\n\nexport { Extras };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAH,uBAAA,CAAAP,OAAA;AAAgD,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAf,uBAAA2B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAEhD,MAAMC,MAAM,GAAGC,IAAA,IAA4C;EAAA,IAA3C;IAAEC,KAAK,EAAE;MAAEC;IAAS,CAAC,GAAG,CAAC,CAAC;IAAEC;EAAS,CAAC,GAAAH,IAAA;EACpD,MAAM;IAAEI,SAAS;IAAEC;EAAO,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EACzC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IACJC,KAAK,EAAE;MAAEC,MAAM;MAAEC,OAAO;MAAEC,SAAS,GAAG,CAAC;IAAE;EAC3C,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAE9C,IAAAC,gBAAS,EAAC,MAAM;IACd,CAAC,YAAY;MACX,MAAM;QAAEC,MAAM,GAAG;MAAG,CAAC,GACnB,CAAC,MAAMC,sBAAY,CAACD,MAAM,CAAC;QACzB,GAAGE,IAAI,CAACC,KAAK,CAACT,SAAS,CAACU,cAAc,CAAC;QACvC,GAAGF,IAAI,CAACC,KAAK,CAACT,SAAS,CAACW,gBAAgB,CAAC;QACzCC,YAAY,EAAE,CAAC,CAACb,OAAO,IAAIC,SAAS,CAACa,iBAAiB,KAAK,MAAM;QACjEC,MAAM,EAAErB,MAAM,GAAG,QAAQ,GAAG,gBAAgB;QAC5CsB,aAAa,EAAEzB,QAAQ;QACvBQ;MACF,CAAC,CAAC,CAACkB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;MAC3B,MAAMC,gBAAgB,GAAGX,MAAM,CAACY,IAAI,CAAC;QAAA,IAAC;UAAEC;QAAS,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;QAAA,OAAK,CAACD,QAAQ;MAAA,EAAC;MAEtE,IAAIF,gBAAgB,EAAEd,aAAa,CAACG,MAAM,CAAC;IAC7C,CAAC,EAAE,CAAC;IACJ;EACF,CAAC,EAAE,CAACR,MAAM,CAAC,CAAC;EAEZ,OAAO,CAAAI,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEmB,MAAM,IAAG,CAAC,gBAC3B7D,MAAA,CAAAW,OAAA,CAAAoD,aAAA,CAAClE,GAAA,CAAAmE,IAAI;IAACC,SAAS,EAAE7D,KAAK,CAAC8D;EAAI,gBACzBlE,MAAA,CAAAW,OAAA,CAAAoD,aAAA,CAAClE,GAAA,CAAAsE,IAAI;IAACC,IAAI;IAACC,QAAQ,EAAErC;EAAU,GAC5BG,SAAS,CAACmC,cAAI,CAACC,wBAAwB,CACpC,CAAC,eACPvE,MAAA,CAAAW,OAAA,CAAAoD,aAAA,CAAC7D,OAAA,CAAAyB,MAAU;IAACmB,MAAM,EAAEJ,UAAW;IAAC8B,UAAU;IAACzC,QAAQ,EAAEA;EAAS,CAAE,CAC5D,CAAC,GACL,IAAI;AACV,CAAC;AAAC0C,OAAA,CAAA9C,MAAA,GAAAA,MAAA;AAEFA,MAAM,CAAC+C,WAAW,GAAG,4BAA4B;AAEjD/C,MAAM,CAACgD,SAAS,GAAG;EACjBjC,UAAU,EAAEkC,kBAAS,CAACC,OAAO,CAACD,kBAAS,CAACE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;EAClDjD,KAAK,EAAE+C,kBAAS,CAACE,KAAK,CAAC;IACrBhD,QAAQ,EAAE8C,kBAAS,CAACG;EACtB,CAAC,CAAC;EACFhD,QAAQ,EAAE6C,kBAAS,CAACI;AACtB,CAAC"}
@@ -63,7 +63,11 @@ const Form = _ref3 => {
63
63
  payment: {
64
64
  method
65
65
  } = {},
66
- session
66
+ session,
67
+ urlParams: {
68
+ checkoutStep = '1'
69
+ } = {},
70
+ variant
67
71
  }
68
72
  } = (0, _dataSources.useStore)();
69
73
  const [errorForm, setErrorForm] = (0, _react.useState)({});
@@ -87,6 +91,7 @@ const Form = _ref3 => {
87
91
  // eslint-disable-next-line react-hooks/exhaustive-deps
88
92
  }, [session]);
89
93
  (0, _react.useLayoutEffect)(() => {
94
+ if (checkoutStep === '2') return;
90
95
  if (Object.keys(form).length) storage.set(key(dataSource, schema), form);
91
96
  set({
92
97
  checkout: form
@@ -143,7 +148,7 @@ const Form = _ref3 => {
143
148
  const {
144
149
  payment
145
150
  } = dataSource || {};
146
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Form, _extends({}, others, {
151
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (variant === 'A' || checkoutStep === '1') && /*#__PURE__*/_react.default.createElement(_ui.Form, _extends({}, others, {
147
152
  autoComplete: "off",
148
153
  showErrors: showErrors,
149
154
  validateOnMount: true,
@@ -166,7 +171,7 @@ const Form = _ref3 => {
166
171
  translate,
167
172
  ...dataSource
168
173
  }, club, () => setModal(true)));
169
- })), payment && /*#__PURE__*/_react.default.createElement(_shared__.Payment, _extends({}, payment, {
174
+ })), (variant === 'A' || checkoutStep === '2') && payment && /*#__PURE__*/_react.default.createElement(_shared__.Payment, _extends({}, payment, {
170
175
  config: {
171
176
  ...payment.config,
172
177
  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[method]
@@ -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","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","storage","Storage","adapter","LocalAdapter","cache","FORM_STORAGE_CACHE","dataSource","schema","concat","FORM_STORAGE_KEY","generateId","JSON","stringify","entries","filter","_ref","value","input","INPUT","HTML","map","_ref2","Form","_ref3","_payment$config","_payment$config$publi","_payment$info","_payment$info2","currency","repositories","countries","form","tracking","showErrors","onError","others","isDesktop","useDevice","translate","useLocale","club","payment","method","session","useStore","errorForm","setErrorForm","useState","errorPayment","setErrorPayment","setForm","fromEntries","_ref4","formTracked","setFormTracked","modal","setModal","useEffect","getSchemaProps","useLayoutEffect","keys","checkout","handleChange","next","country","phone","code","ServiceCountry","info","getCountryCode","nextFields","getFields","nextFiltered","_ref5","undefined","handleLeave","email","firstName","lastName","Event","publish","EVENT","CHECKOUT_FORM","event","response","_ref6","_ref7","visible","createElement","Fragment","autoComplete","validateOnMount","onChange","onLeave","className","styles","box","Text","bold","headline","wide","L10N","LABEL_PERSONAL_DETAILS","TextRequiredFields","_ref8","field","React","FIELD","InputText","getFieldProps","error","Payment","config","publicKey","date","parseDate","Modal","fit","title","LABEL_CONDITIONS","onClose","ScrollView","snap","vertical","scrollview","BookingTerms","small","exports","displayName","propTypes","PropTypes","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, useState } from 'react';\n\nimport { BookingTerms, Payment, TextRequiredFields } from '../../__shared__';\nimport { EVENT, generateId, getCountryCode } 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 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 {\n set,\n value: { club, payment: { method } = {}, session },\n } = useStore();\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 const handleChange = async (next) => {\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 getFields = (value) =>\n Object.entries(schema)\n .filter(([key]) => !!schema[key])\n .filter(([, { visible }]) => !visible || visible(value));\n\n const { payment } = dataSource || {};\n\n return (\n <>\n <FormBase\n {...others}\n autoComplete=\"off\"\n showErrors={showErrors}\n validateOnMount\n onChange={handleChange}\n onError={setErrorForm}\n onLeave={handleLeave}\n className={styles(style.form, style.box)}\n >\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n\n <TextRequiredFields wide />\n\n {getFields(form).map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n { value: form[key], error: errorForm[key], session, translate, ...dataSource },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n\n {payment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey?.[method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n showErrors,\n }}\n currency={currency}\n onError={setErrorPayment}\n />\n )}\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 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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"}
1
+ {"version":3,"file":"Checkout.Form.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_helpers","_Checkout","_Checkout2","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","storage","Storage","adapter","LocalAdapter","cache","FORM_STORAGE_CACHE","dataSource","schema","concat","FORM_STORAGE_KEY","generateId","JSON","stringify","entries","filter","_ref","value","input","INPUT","HTML","map","_ref2","Form","_ref3","_payment$config","_payment$config$publi","_payment$info","_payment$info2","currency","repositories","countries","form","tracking","showErrors","onError","others","isDesktop","useDevice","translate","useLocale","club","payment","method","session","urlParams","checkoutStep","variant","useStore","errorForm","setErrorForm","useState","errorPayment","setErrorPayment","setForm","fromEntries","_ref4","formTracked","setFormTracked","modal","setModal","useEffect","getSchemaProps","useLayoutEffect","keys","checkout","handleChange","next","country","phone","code","ServiceCountry","info","getCountryCode","nextFields","getFields","nextFiltered","_ref5","undefined","handleLeave","email","firstName","lastName","Event","publish","EVENT","CHECKOUT_FORM","event","response","_ref6","_ref7","visible","createElement","Fragment","autoComplete","validateOnMount","onChange","onLeave","className","styles","box","Text","bold","headline","wide","L10N","LABEL_PERSONAL_DETAILS","TextRequiredFields","_ref8","field","React","FIELD","InputText","getFieldProps","error","Payment","config","publicKey","date","parseDate","Modal","fit","title","LABEL_CONDITIONS","onClose","ScrollView","snap","vertical","scrollview","BookingTerms","small","exports","displayName","propTypes","PropTypes","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, useState } from 'react';\n\nimport { BookingTerms, Payment, TextRequiredFields } from '../../__shared__';\nimport { EVENT, generateId, getCountryCode } 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 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 {\n set,\n value: { club, payment: { method } = {}, session, urlParams: { checkoutStep = '1' } = {}, variant },\n } = useStore();\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 (checkoutStep === '2') return;\n\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 const handleChange = async (next) => {\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 getFields = (value) =>\n Object.entries(schema)\n .filter(([key]) => !!schema[key])\n .filter(([, { visible }]) => !visible || visible(value));\n\n const { payment } = dataSource || {};\n\n return (\n <>\n {(variant === 'A' || checkoutStep === '1') && (\n <FormBase\n {...others}\n autoComplete=\"off\"\n showErrors={showErrors}\n validateOnMount\n onChange={handleChange}\n onError={setErrorForm}\n onLeave={handleLeave}\n className={styles(style.form, style.box)}\n >\n <Text bold headline={isDesktop} wide>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n\n <TextRequiredFields wide />\n\n {getFields(form).map(([key, field = {}]) =>\n React.createElement(\n FIELD[field.input] || InputText,\n getFieldProps(\n key,\n field,\n { value: form[key], error: errorForm[key], session, translate, ...dataSource },\n club,\n () => setModal(true),\n ),\n ),\n )}\n </FormBase>\n )}\n\n {(variant === 'A' || checkoutStep === '2') && payment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey?.[method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n showErrors,\n }}\n currency={currency}\n onError={setErrorPayment}\n />\n )}\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 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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"}
@@ -14,7 +14,7 @@ Object.keys(_Checkout).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
- var _Checkout2 = require("./Checkout.Form");
17
+ var _Checkout2 = require("./Checkout.Extras");
18
18
  Object.keys(_Checkout2).forEach(function (key) {
19
19
  if (key === "default" || key === "__esModule") return;
20
20
  if (key in exports && exports[key] === _Checkout2[key]) return;
@@ -25,4 +25,15 @@ Object.keys(_Checkout2).forEach(function (key) {
25
25
  }
26
26
  });
27
27
  });
28
+ var _Checkout3 = require("./Checkout.Form");
29
+ Object.keys(_Checkout3).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _Checkout3[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _Checkout3[key];
36
+ }
37
+ });
38
+ });
28
39
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_Checkout","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Checkout2"],"sources":["../../../../src/components/Checkout/partials/index.js"],"sourcesContent":["export * from './Checkout.Confirmation';\nexport * from './Checkout.Form';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,UAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,UAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,UAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,UAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["_Checkout","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Checkout2","_Checkout3"],"sources":["../../../../src/components/Checkout/partials/index.js"],"sourcesContent":["export * from './Checkout.Confirmation';\nexport * from './Checkout.Extras';\nexport * from './Checkout.Form';\n"],"mappings":";;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,SAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,SAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,SAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,UAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,UAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,UAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,UAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,UAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,UAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,UAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,UAAA,CAAAN,GAAA;IAAA;EAAA;AAAA"}
@@ -34,12 +34,13 @@ const BookingProcess = _ref => {
34
34
  } = (0, _dataSources.useStore)();
35
35
  const [step, setStep] = (0, _react.useState)(propStep);
36
36
  (0, _react.useEffect)(() => {
37
- const callback = () => setStep(2.5);
37
+ const callback = () => setStep(3);
38
38
  _dataSources.Event.subscribe(_helpers.EVENT.PAY_LATER, callback);
39
39
  return () => _dataSources.Event.unsubscribe(_helpers.EVENT.PAY_LATER, callback);
40
40
  }, []);
41
41
  (0, _react.useEffect)(() => {
42
- setStep(propStep || components.rates ? 1 : components.checkout ? 2 : components.booking ? 3 : undefined);
42
+ setStep(propStep || components.rates ? 1 : components.checkout ? 2 : components.booking ? 4 : undefined);
43
+ // eslint-disable-next-line react-hooks/exhaustive-deps
43
44
  }, [components, propStep]);
44
45
  const iconProps = {
45
46
  small: isMobile
@@ -48,7 +49,9 @@ const BookingProcess = _ref => {
48
49
  action: !isMobile,
49
50
  small: isMobile
50
51
  };
51
- const isPayLater = step === 2.5;
52
+ const is = {
53
+ paylater: step === 3
54
+ };
52
55
  return step ? /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
53
56
  row: true,
54
57
  className: [style.bookingProcess, others.className]
@@ -78,17 +81,17 @@ const BookingProcess = _ref => {
78
81
  className: (0, _ui.styles)(style.label, step < 2 && style.disabled)
79
82
  }), translate(_BookingProcess.L10N.LABEL_PERSONAL_DETAILS))), /*#__PURE__*/_react.default.createElement(_ui.View, {
80
83
  className: style.divider
81
- }), isPayLater && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
84
+ }), is.paylater && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
82
85
  row: true,
83
86
  className: style.item
84
87
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
85
88
  bold: true,
86
- className: (0, _ui.styles)(style.bullet, step >= 2.5 && style.success)
87
- }), step > 2.5 ? /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
89
+ className: (0, _ui.styles)(style.bullet, step >= 3 && style.success)
90
+ }), step > 3 ? /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
88
91
  value: _ui.ICON.CHECK
89
- })) : 3), (!isMobile || step === 2.5) && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
90
- bold: step === 2.5,
91
- className: (0, _ui.styles)(style.label, step < 2.5 && style.disabled)
92
+ })) : 4), (!isMobile || step === 3) && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
93
+ bold: step === 3,
94
+ className: (0, _ui.styles)(style.label, step < 3 && style.disabled)
92
95
  }), translate(_BookingProcess.L10N.LABEL_BOOKING))), /*#__PURE__*/_react.default.createElement(_ui.View, {
93
96
  className: style.divider
94
97
  })), /*#__PURE__*/_react.default.createElement(_ui.View, {
@@ -97,11 +100,11 @@ const BookingProcess = _ref => {
97
100
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
98
101
  bold: true,
99
102
  className: (0, _ui.styles)(style.bullet, step >= 3 && style.success)
100
- }), step >= 3 ? /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
103
+ }), step >= 4 ? /*#__PURE__*/_react.default.createElement(_ui.Icon, _extends({}, iconProps, {
101
104
  value: _ui.ICON.CHECK
102
- })) : isPayLater ? 4 : 3), (!isMobile || step === 3) && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
103
- bold: step === 3,
104
- className: (0, _ui.styles)(style.label, step < 3 && style.disabled)
105
+ })) : is.paylater ? 4 : 3), (!isMobile || step === 3) && /*#__PURE__*/_react.default.createElement(_ui.Text, _extends({}, textProps, {
106
+ bold: step === 4,
107
+ className: (0, _ui.styles)(style.label, step < 4 && style.disabled)
105
108
  }), translate(_BookingProcess.L10N.LABEL_CONFIRMATION)))) : null;
106
109
  };
107
110
  exports.BookingProcess = BookingProcess;
@@ -1 +1 @@
1
- {"version":3,"file":"BookingProcess.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingProcess","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","BookingProcess","_ref","step","propStep","others","isMobile","useDevice","translate","useLocale","value","components","useStore","setStep","useState","useEffect","callback","Event","subscribe","EVENT","PAY_LATER","unsubscribe","rates","checkout","booking","undefined","iconProps","small","textProps","action","isPayLater","createElement","View","row","className","bookingProcess","item","Text","bold","bullet","success","Icon","ICON","CHECK","label","L10N","LABEL_CHOOSE_STAY","divider","styles","disabled","LABEL_PERSONAL_DETAILS","Fragment","LABEL_BOOKING","LABEL_CONFIRMATION","exports","displayName","propTypes","PropTypes","number"],"sources":["../../../../../src/components/Header/components/BookingProcess/BookingProcess.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, ICON, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './BookingProcess.l10n';\nimport * as style from './BookingProcess.module.css';\nimport { EVENT } from '../../../helpers';\n\nconst BookingProcess = ({ step: propStep, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { components = {} } = {} } = useStore();\n\n const [step, setStep] = useState(propStep);\n\n useEffect(() => {\n const callback = () => setStep(2.5);\n\n Event.subscribe(EVENT.PAY_LATER, callback);\n return () => Event.unsubscribe(EVENT.PAY_LATER, callback);\n }, []);\n\n useEffect(() => {\n setStep(propStep || components.rates ? 1 : components.checkout ? 2 : components.booking ? 3 : undefined);\n }, [components, propStep]);\n\n const iconProps = { small: isMobile };\n const textProps = { action: !isMobile, small: isMobile };\n const isPayLater = step === 2.5;\n\n return step ? (\n <View {...others} row className={[style.bookingProcess, others.className]}>\n <View row className={style.item}>\n <Text {...textProps} bold className={[style.bullet, style.success]}>\n {step > 1 ? <Icon {...iconProps} value={ICON.CHECK} /> : 1}\n </Text>\n {(!isMobile || step === 1) && (\n <Text {...textProps} bold={step === 1} className={style.label}>\n {translate(L10N.LABEL_CHOOSE_STAY)}\n </Text>\n )}\n </View>\n\n <View className={style.divider} />\n\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 2 && style.success)}>\n {step > 2 ? <Icon {...iconProps} value={ICON.CHECK} /> : 2}\n </Text>\n\n {(!isMobile || step === 2) && (\n <Text {...textProps} bold={step === 2} className={styles(style.label, step < 2 && style.disabled)}>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n )}\n </View>\n\n <View className={style.divider} />\n\n {isPayLater && (\n <>\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 2.5 && style.success)}>\n {step > 2.5 ? <Icon {...iconProps} value={ICON.CHECK} /> : 3}\n </Text>\n\n {(!isMobile || step === 2.5) && (\n <Text {...textProps} bold={step === 2.5} className={styles(style.label, step < 2.5 && style.disabled)}>\n {translate(L10N.LABEL_BOOKING)}\n </Text>\n )}\n </View>\n <View className={style.divider} />\n </>\n )}\n\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 3 && style.success)}>\n {step >= 3 ? <Icon {...iconProps} value={ICON.CHECK} /> : isPayLater ? 4 : 3}\n </Text>\n {(!isMobile || step === 3) && (\n <Text {...textProps} bold={step === 3} className={styles(style.label, step < 3 && style.disabled)}>\n {translate(L10N.LABEL_CONFIRMATION)}\n </Text>\n )}\n </View>\n </View>\n ) : null;\n};\n\nBookingProcess.displayName = 'Mirai:Core:Header:BookingProcess';\n\nBookingProcess.propTypes = {\n step: PropTypes.number,\n};\n\nexport { BookingProcess };\n"],"mappings":"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"}
1
+ {"version":3,"file":"BookingProcess.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_BookingProcess","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","BookingProcess","_ref","step","propStep","others","isMobile","useDevice","translate","useLocale","value","components","useStore","setStep","useState","useEffect","callback","Event","subscribe","EVENT","PAY_LATER","unsubscribe","rates","checkout","booking","undefined","iconProps","small","textProps","action","is","paylater","createElement","View","row","className","bookingProcess","item","Text","bold","bullet","success","Icon","ICON","CHECK","label","L10N","LABEL_CHOOSE_STAY","divider","styles","disabled","LABEL_PERSONAL_DETAILS","Fragment","LABEL_BOOKING","LABEL_CONFIRMATION","exports","displayName","propTypes","PropTypes","number"],"sources":["../../../../../src/components/Header/components/BookingProcess/BookingProcess.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, ICON, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './BookingProcess.l10n';\nimport * as style from './BookingProcess.module.css';\nimport { EVENT } from '../../../helpers';\n\nconst BookingProcess = ({ step: propStep, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { components = {} } = {} } = useStore();\n\n const [step, setStep] = useState(propStep);\n\n useEffect(() => {\n const callback = () => setStep(3);\n\n Event.subscribe(EVENT.PAY_LATER, callback);\n return () => Event.unsubscribe(EVENT.PAY_LATER, callback);\n }, []);\n\n useEffect(() => {\n setStep(propStep || components.rates ? 1 : components.checkout ? 2 : components.booking ? 4 : undefined);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [components, propStep]);\n\n const iconProps = { small: isMobile };\n const textProps = { action: !isMobile, small: isMobile };\n const is = { paylater: step === 3 };\n\n return step ? (\n <View {...others} row className={[style.bookingProcess, others.className]}>\n <View row className={style.item}>\n <Text {...textProps} bold className={[style.bullet, style.success]}>\n {step > 1 ? <Icon {...iconProps} value={ICON.CHECK} /> : 1}\n </Text>\n {(!isMobile || step === 1) && (\n <Text {...textProps} bold={step === 1} className={style.label}>\n {translate(L10N.LABEL_CHOOSE_STAY)}\n </Text>\n )}\n </View>\n\n <View className={style.divider} />\n\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 2 && style.success)}>\n {step > 2 ? <Icon {...iconProps} value={ICON.CHECK} /> : 2}\n </Text>\n\n {(!isMobile || step === 2) && (\n <Text {...textProps} bold={step === 2} className={styles(style.label, step < 2 && style.disabled)}>\n {translate(L10N.LABEL_PERSONAL_DETAILS)}\n </Text>\n )}\n </View>\n\n <View className={style.divider} />\n\n {is.paylater && (\n <>\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 3 && style.success)}>\n {step > 3 ? <Icon {...iconProps} value={ICON.CHECK} /> : 4}\n </Text>\n\n {(!isMobile || step === 3) && (\n <Text {...textProps} bold={step === 3} className={styles(style.label, step < 3 && style.disabled)}>\n {translate(L10N.LABEL_BOOKING)}\n </Text>\n )}\n </View>\n <View className={style.divider} />\n </>\n )}\n\n <View row className={style.item}>\n <Text {...textProps} bold className={styles(style.bullet, step >= 3 && style.success)}>\n {step >= 4 ? <Icon {...iconProps} value={ICON.CHECK} /> : is.paylater ? 4 : 3}\n </Text>\n {(!isMobile || step === 3) && (\n <Text {...textProps} bold={step === 4} className={styles(style.label, step < 4 && style.disabled)}>\n {translate(L10N.LABEL_CONFIRMATION)}\n </Text>\n )}\n </View>\n </View>\n ) : null;\n};\n\nBookingProcess.displayName = 'Mirai:Core:Header:BookingProcess';\n\nBookingProcess.propTypes = {\n step: PropTypes.number,\n};\n\nexport { BookingProcess };\n"],"mappings":"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"}
@@ -14,6 +14,9 @@ const L10N = exports.L10N = {
14
14
  LABEL_CONFIRMATION: {
15
15
  id: 'common.label.confirmation'
16
16
  },
17
+ LABEL_PAYMENT: {
18
+ id: 'common.label.payment'
19
+ },
17
20
  LABEL_PERSONAL_DETAILS: {
18
21
  id: 'user.label.personal_details'
19
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BookingProcess.l10n.js","names":["L10N","exports","LABEL_BOOKING","id","LABEL_CHOOSE_STAY","LABEL_CONFIRMATION","LABEL_PERSONAL_DETAILS"],"sources":["../../../../../src/components/Header/components/BookingProcess/BookingProcess.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_BOOKING: { id: 'common.label.booking' },\n LABEL_CHOOSE_STAY: { id: 'user.label.choose_stay' },\n LABEL_CONFIRMATION: { id: 'common.label.confirmation' },\n LABEL_PERSONAL_DETAILS: { id: 'user.label.personal_details' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,aAAa,EAAE;IAAEC,EAAE,EAAE;EAAuB,CAAC;EAC7CC,iBAAiB,EAAE;IAAED,EAAE,EAAE;EAAyB,CAAC;EACnDE,kBAAkB,EAAE;IAAEF,EAAE,EAAE;EAA4B,CAAC;EACvDG,sBAAsB,EAAE;IAAEH,EAAE,EAAE;EAA8B;AAC9D,CAAC"}
1
+ {"version":3,"file":"BookingProcess.l10n.js","names":["L10N","exports","LABEL_BOOKING","id","LABEL_CHOOSE_STAY","LABEL_CONFIRMATION","LABEL_PAYMENT","LABEL_PERSONAL_DETAILS"],"sources":["../../../../../src/components/Header/components/BookingProcess/BookingProcess.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_BOOKING: { id: 'common.label.booking' },\n LABEL_CHOOSE_STAY: { id: 'user.label.choose_stay' },\n LABEL_CONFIRMATION: { id: 'common.label.confirmation' },\n LABEL_PAYMENT: { id: 'common.label.payment' },\n LABEL_PERSONAL_DETAILS: { id: 'user.label.personal_details' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,aAAa,EAAE;IAAEC,EAAE,EAAE;EAAuB,CAAC;EAC7CC,iBAAiB,EAAE;IAAED,EAAE,EAAE;EAAyB,CAAC;EACnDE,kBAAkB,EAAE;IAAEF,EAAE,EAAE;EAA4B,CAAC;EACvDG,aAAa,EAAE;IAAEH,EAAE,EAAE;EAAuB,CAAC;EAC7CI,sBAAsB,EAAE;IAAEJ,EAAE,EAAE;EAA8B;AAC9D,CAAC"}
@@ -68,7 +68,8 @@ const Rates = _ref => {
68
68
  meta
69
69
  } = {},
70
70
  session,
71
- urlParams
71
+ urlParams,
72
+ variant
72
73
  }
73
74
  } = (0, _dataSources.useStore)();
74
75
  const [busy, setBusy] = (0, _react.useState)(false);
@@ -101,7 +102,8 @@ const Rates = _ref => {
101
102
  ...(0, _helpers.getFeatures)(hotel.features, urlParams, {
102
103
  isDesktop
103
104
  }, multiRoom),
104
- multiRoom
105
+ multiRoom,
106
+ variant
105
107
  }),
106
108
  // eslint-disable-next-line react-hooks/exhaustive-deps
107
109
  []);
@@ -319,6 +321,7 @@ const Rates = _ref => {
319
321
  isPestana,
320
322
  session: sessionProp
321
323
  })) return setClubRate(true);
324
+ if (variant === 'B') return handleCheckout(cart, undefined, variant);
322
325
  const {
323
326
  extras = []
324
327
  } = (await _services.ServiceRates.extras({
@@ -349,6 +352,7 @@ const Rates = _ref => {
349
352
  const handleCheckout = function () {
350
353
  let cart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
351
354
  let extras = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
355
+ let variant = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'A';
352
356
  setBusy(true);
353
357
  _dataSources.Event.publish(_helpers3.EVENT.METRICS, {
354
358
  id: 'RATES:SUBMIT'
@@ -365,7 +369,19 @@ const Rates = _ref => {
365
369
  urlParams: {
366
370
  ...(0, _helpers2.fetchUrlParams)(location.search),
367
371
  device
368
- }
372
+ },
373
+ variant,
374
+ checkoutParams: JSON.stringify((0, _helpers.getCheckoutParams)({
375
+ cart,
376
+ clubDiscount,
377
+ currency,
378
+ forwarder,
379
+ urlParams: (0, _helpers2.fetchUrlParams)(location.search)
380
+ })),
381
+ occupationTotals: JSON.stringify((0, _helpers3.getOccupationTotals)({
382
+ infantAge: dataSource.infantAge,
383
+ occupation
384
+ }))
369
385
  });
370
386
  }, _helpers3.SUBMIT_DELAY);
371
387
  };