@mirai/core 0.3.382 → 0.3.384
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/__tests__/buttonFinder.spec.js +16 -0
- package/build/components/BookingQuery/BookingQuery.js +1 -1
- package/build/components/BookingQuery/BookingQuery.js.map +1 -1
- package/build/components/ButtonFinder/ButtonFinder.js +59 -0
- package/build/components/ButtonFinder/ButtonFinder.js.map +1 -0
- package/build/components/ButtonFinder/ButtonFinder.l10n.js +13 -0
- package/build/components/ButtonFinder/ButtonFinder.l10n.js.map +1 -0
- package/build/components/ButtonFinder/ButtonFinder.module.css +17 -0
- package/build/components/ButtonFinder/__tests__/__snapshots__/ButtonFinder.test.js.snap +8380 -0
- package/build/components/ButtonFinder/index.js +13 -0
- package/build/components/ButtonFinder/index.js.map +1 -0
- package/build/components/__shared__/ButtonPayment/ButtonPayment.js +1 -1
- package/build/components/__shared__/ButtonPayment/ButtonPayment.js.map +1 -1
- package/build/components/__shared__/ButtonPayment/helpers/getUrl.js +15 -3
- package/build/components/__shared__/ButtonPayment/helpers/getUrl.js.map +1 -1
- package/build/components/index.js +2 -0
- package/build/components/index.js.map +1 -1
- package/package.json +1 -1
- package/public/routes/Home.jsx +2 -1
- package/public/routes/routes.module.css +4 -1
- package/public/themes/monalisa.theme.css +11 -30
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "ButtonFinder", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ButtonFinder.ButtonFinder;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _ButtonFinder = require("./ButtonFinder");
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_ButtonFinder","require"],"sources":["../../../src/components/ButtonFinder/index.js"],"sourcesContent":["export { ButtonFinder } from './ButtonFinder';\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonPayment.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonPayment","_ButtonPayment2","style","_components","_helpers","_Payment","_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","AMAZON_PAY","APLAZAME","CARD","PCIPROXY","TPV","PAYMENT_METHOD","ADDON","CHECKOUT","SIPAY","PAYCOMET","PAYMENT_PROVIDER","PROVIDERS_WITH_MODAL","ButtonPayment","_ref","children","config","currencyDecimals","provider","publicKey","dataSource","hotel","id","propHotel","info","promise","Promise","resolve","tracking","onError","onPress","onSuccess","others","locale","translate","useLocale","value","forwarder","payment","urlParams","useStore","modal","setModal","useState","response","setResponse","handleClose","useEffect","error","orderReference","transactionId","handleSuccess","handlePress","method","includes","document","dispatchEvent","Event","EVENT_CTA_PRESS","requireCardValidation","cardValidation","PAYMENT_CARD_VALIDATION_PROVIDER","withModal","isAddon","catch","type","TYPE","SUBMIT","CustomEvent","EVENT_APLAZAME_RESPONSE","detail","url","getUrl","window","location","href","EVENT_AMAZON_PAY_RESPONSE","component","getComponent","createElement","Fragment","Button","L10N","ACTION_PAY_NOW","Form","Modal","portal","title","visible","onClose","React","className","modalContent","exports","displayName","propTypes","PropTypes","oneOfType","string","node","shape","number","oneOf","values","showCVV","bool","amount","date","instanceOf","Date","func"],"sources":["../../../../src/components/__shared__/ButtonPayment/ButtonPayment.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Modal } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { EVENT_AMAZON_PAY_RESPONSE, EVENT_APLAZAME_RESPONSE, EVENT_CTA_PRESS, TYPE } from './ButtonPayment.constants';\nimport { L10N } from './ButtonPayment.l10n';\nimport * as style from './ButtonPayment.module.css';\nimport { Form } from './components';\nimport { getComponent, getUrl } from './helpers';\nimport { PAYMENT_CARD_VALIDATION_PROVIDER, PAYMENT_METHOD, PAYMENT_PROVIDER } from '../Payment';\n\nconst { AMAZON_PAY, APLAZAME, CARD, PCIPROXY, TPV } = PAYMENT_METHOD;\nconst { ADDON, CHECKOUT, SIPAY, PAYCOMET } = PAYMENT_PROVIDER;\n\nconst PROVIDERS_WITH_MODAL = [ADDON, CHECKOUT, SIPAY, PAYCOMET];\n\nconst ButtonPayment = ({\n children,\n config: { currencyDecimals, provider, publicKey } = {},\n dataSource = {},\n hotel: { id, ...propHotel } = {},\n info = {},\n promise = () => new Promise((resolve) => resolve({})),\n tracking,\n onError = () => {},\n onPress = () => {},\n onSuccess = () => {},\n ...others\n}) => {\n const { locale, translate } = useLocale();\n const { value: { forwarder, payment = dataSource || {}, hotel = propHotel || {}, urlParams } = {} } = useStore();\n\n const [modal, setModal] = useState(false);\n const [response, setResponse] = useState();\n\n const handleClose = () => {\n setModal(false);\n onError();\n };\n\n useEffect(() => {\n const { error, orderReference, transactionId } = payment;\n if (orderReference || transactionId) handleSuccess();\n else if (error) onError(error);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [payment]);\n\n const handlePress = async () => {\n if (onPress() === false) return;\n\n const { method } = payment || {};\n if ([AMAZON_PAY, PCIPROXY].includes(method)) return document.dispatchEvent(new Event(EVENT_CTA_PRESS));\n\n const requireCardValidation =\n [CARD, PCIPROXY].includes(method) && cardValidation && PAYMENT_CARD_VALIDATION_PROVIDER.includes(provider);\n const withModal = PROVIDERS_WITH_MODAL.includes(provider) && (method === TPV || requireCardValidation);\n const response = !withModal || isAddon || method === APLAZAME ? await promise().catch(onError) : true;\n if (!response) return;\n\n if (withModal || response.type === TYPE.SUBMIT) setResponse(response);\n\n if (withModal) {\n setModal(true);\n } else if (method === APLAZAME) {\n document.dispatchEvent(new CustomEvent(EVENT_APLAZAME_RESPONSE, { detail: { ...response, publicKey } }));\n } else {\n const url = getUrl({ ...response, ...hotel, id, forwarder, locale, tracking, urlParams });\n if (url) window.location.href = url;\n }\n };\n\n const handleSuccess = async (value) => {\n setModal(false);\n\n const response = await promise(value).catch(onError);\n if (!response) return;\n\n if (payment.method === AMAZON_PAY)\n return document.dispatchEvent(new CustomEvent(EVENT_AMAZON_PAY_RESPONSE, { detail: { response } }));\n\n if (response) {\n const url = getUrl({ ...response, ...hotel, id, forwarder, locale, tracking, urlParams });\n if (url) {\n onSuccess(url);\n window.location.href = url;\n }\n }\n };\n\n const { method } = payment || {};\n const { cardValidation } = info || {};\n const component = getComponent({ cardValidation, method, provider });\n const isAddon = provider === ADDON;\n\n return (\n <>\n <Button {...others} onPress={handlePress}>\n {children || translate(L10N.ACTION_PAY_NOW)}\n </Button>\n\n {response?.type === TYPE.SUBMIT && <Form {...response} />}\n\n <Modal portal={isAddon} title={method} visible={modal} onClose={handleClose}>\n {component &&\n React.createElement(component, {\n currencyDecimals,\n info,\n method,\n provider,\n publicKey,\n response,\n onError,\n onSuccess: handleSuccess,\n className: style.modalContent,\n })}\n </Modal>\n </>\n );\n};\n\nButtonPayment.displayName = 'Mirai:Core:ButtonPayment';\n\nButtonPayment.propTypes = {\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n config: PropTypes.shape({\n currencyDecimals: PropTypes.number,\n provider: PropTypes.oneOf(Object.values(PAYMENT_PROVIDER)),\n publicKey: PropTypes.string,\n showCVV: PropTypes.bool,\n }),\n dataSource: PropTypes.shape({\n method: PropTypes.oneOf(Object.values(PAYMENT_METHOD)),\n }),\n hotel: PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n }),\n info: PropTypes.shape({\n amount: PropTypes.number,\n cardValidation: PropTypes.bool,\n date: PropTypes.instanceOf(Date),\n }),\n promise: PropTypes.func,\n tracking: PropTypes.string,\n onError: PropTypes.func,\n onPress: PropTypes.func,\n onSuccess: PropTypes.func,\n};\n\nexport { ButtonPayment };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ButtonPayment.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonPayment","_ButtonPayment2","style","_components","_helpers","_Payment","_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","AMAZON_PAY","APLAZAME","CARD","PCIPROXY","TPV","PAYMENT_METHOD","ADDON","CHECKOUT","SIPAY","PAYCOMET","PAYMENT_PROVIDER","PROVIDERS_WITH_MODAL","ButtonPayment","_ref","children","config","currencyDecimals","provider","publicKey","dataSource","hotel","id","propHotel","info","promise","Promise","resolve","tracking","onError","onPress","onSuccess","others","locale","translate","useLocale","value","forwarder","payment","urlParams","useStore","modal","setModal","useState","response","setResponse","handleClose","useEffect","error","orderReference","transactionId","handleSuccess","handlePress","method","includes","document","dispatchEvent","Event","EVENT_CTA_PRESS","requireCardValidation","cardValidation","PAYMENT_CARD_VALIDATION_PROVIDER","withModal","isAddon","catch","type","TYPE","SUBMIT","CustomEvent","EVENT_APLAZAME_RESPONSE","detail","url","getUrl","window","location","href","EVENT_AMAZON_PAY_RESPONSE","component","getComponent","createElement","Fragment","Button","L10N","ACTION_PAY_NOW","Form","Modal","portal","title","visible","onClose","React","className","modalContent","exports","displayName","propTypes","PropTypes","oneOfType","string","node","shape","number","oneOf","values","showCVV","bool","amount","date","instanceOf","Date","func"],"sources":["../../../../src/components/__shared__/ButtonPayment/ButtonPayment.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Modal } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { EVENT_AMAZON_PAY_RESPONSE, EVENT_APLAZAME_RESPONSE, EVENT_CTA_PRESS, TYPE } from './ButtonPayment.constants';\nimport { L10N } from './ButtonPayment.l10n';\nimport * as style from './ButtonPayment.module.css';\nimport { Form } from './components';\nimport { getComponent, getUrl } from './helpers';\nimport { PAYMENT_CARD_VALIDATION_PROVIDER, PAYMENT_METHOD, PAYMENT_PROVIDER } from '../Payment';\n\nconst { AMAZON_PAY, APLAZAME, CARD, PCIPROXY, TPV } = PAYMENT_METHOD;\nconst { ADDON, CHECKOUT, SIPAY, PAYCOMET } = PAYMENT_PROVIDER;\n\nconst PROVIDERS_WITH_MODAL = [ADDON, CHECKOUT, SIPAY, PAYCOMET];\n\nconst ButtonPayment = ({\n children,\n config: { currencyDecimals, provider, publicKey } = {},\n dataSource = {},\n hotel: { id, ...propHotel } = {},\n info = {},\n promise = () => new Promise((resolve) => resolve({})),\n tracking,\n onError = () => {},\n onPress = () => {},\n onSuccess = () => {},\n ...others\n}) => {\n const { locale, translate } = useLocale();\n const { value: { forwarder, payment = dataSource || {}, hotel = propHotel || {}, urlParams } = {} } = useStore();\n\n const [modal, setModal] = useState(false);\n const [response, setResponse] = useState();\n\n const handleClose = () => {\n setModal(false);\n onError();\n };\n\n useEffect(() => {\n const { error, orderReference, transactionId } = payment;\n if (orderReference || transactionId) handleSuccess();\n else if (error) onError(error);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [payment]);\n\n const handlePress = async () => {\n if (onPress() === false) return;\n\n const { method } = payment || {};\n if ([AMAZON_PAY, PCIPROXY].includes(method)) return document.dispatchEvent(new Event(EVENT_CTA_PRESS));\n\n const requireCardValidation =\n [CARD, PCIPROXY].includes(method) && cardValidation && PAYMENT_CARD_VALIDATION_PROVIDER.includes(provider);\n const withModal = PROVIDERS_WITH_MODAL.includes(provider) && (method === TPV || requireCardValidation);\n const response = !withModal || isAddon || method === APLAZAME ? await promise().catch(onError) : true;\n if (!response) return;\n\n if (withModal || response.type === TYPE.SUBMIT) setResponse(response);\n\n if (withModal) {\n setModal(true);\n } else if (method === APLAZAME) {\n document.dispatchEvent(new CustomEvent(EVENT_APLAZAME_RESPONSE, { detail: { ...response, publicKey } }));\n } else {\n const url = getUrl({ response, ...hotel, id, forwarder, locale, tracking, urlParams });\n if (url) window.location.href = url;\n }\n };\n\n const handleSuccess = async (value) => {\n setModal(false);\n\n const response = await promise(value).catch(onError);\n if (!response) return;\n\n if (payment.method === AMAZON_PAY)\n return document.dispatchEvent(new CustomEvent(EVENT_AMAZON_PAY_RESPONSE, { detail: { response } }));\n\n if (response) {\n const url = getUrl({ ...response, ...hotel, id, forwarder, locale, tracking, urlParams });\n if (url) {\n onSuccess(url);\n window.location.href = url;\n }\n }\n };\n\n const { method } = payment || {};\n const { cardValidation } = info || {};\n const component = getComponent({ cardValidation, method, provider });\n const isAddon = provider === ADDON;\n\n return (\n <>\n <Button {...others} onPress={handlePress}>\n {children || translate(L10N.ACTION_PAY_NOW)}\n </Button>\n\n {response?.type === TYPE.SUBMIT && <Form {...response} />}\n\n <Modal portal={isAddon} title={method} visible={modal} onClose={handleClose}>\n {component &&\n React.createElement(component, {\n currencyDecimals,\n info,\n method,\n provider,\n publicKey,\n response,\n onError,\n onSuccess: handleSuccess,\n className: style.modalContent,\n })}\n </Modal>\n </>\n );\n};\n\nButtonPayment.displayName = 'Mirai:Core:ButtonPayment';\n\nButtonPayment.propTypes = {\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n config: PropTypes.shape({\n currencyDecimals: PropTypes.number,\n provider: PropTypes.oneOf(Object.values(PAYMENT_PROVIDER)),\n publicKey: PropTypes.string,\n showCVV: PropTypes.bool,\n }),\n dataSource: PropTypes.shape({\n method: PropTypes.oneOf(Object.values(PAYMENT_METHOD)),\n }),\n hotel: PropTypes.shape({\n id: PropTypes.string,\n url: PropTypes.string,\n }),\n info: PropTypes.shape({\n amount: PropTypes.number,\n cardValidation: PropTypes.bool,\n date: PropTypes.instanceOf(Date),\n }),\n promise: PropTypes.func,\n tracking: PropTypes.string,\n onError: PropTypes.func,\n onPress: PropTypes.func,\n onSuccess: PropTypes.func,\n};\n\nexport { ButtonPayment };\n"],"mappings":"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"}
|
|
@@ -7,15 +7,27 @@ exports.getUrl = void 0;
|
|
|
7
7
|
var _getUrlBooking = require("./getUrlBooking");
|
|
8
8
|
var _getUrlCriptan = require("./getUrlCriptan");
|
|
9
9
|
var _getUrlTpv = require("./getUrlTpv");
|
|
10
|
+
var _ButtonPayment = require("../ButtonPayment.constants");
|
|
10
11
|
const CALLBACKS = {
|
|
11
12
|
criptanNumOrder: _getUrlCriptan.getUrlCriptan,
|
|
12
13
|
reservationCode: _getUrlBooking.getUrlBooking,
|
|
13
14
|
tpvNumOrder: _getUrlTpv.getUrlTpv
|
|
14
15
|
};
|
|
15
16
|
const getUrl = function () {
|
|
16
|
-
let
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
let {
|
|
18
|
+
response: {
|
|
19
|
+
type,
|
|
20
|
+
url,
|
|
21
|
+
...response
|
|
22
|
+
} = {},
|
|
23
|
+
...props
|
|
24
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
25
|
+
const params = {
|
|
26
|
+
...response,
|
|
27
|
+
...props
|
|
28
|
+
};
|
|
29
|
+
const [callback] = Object.keys(params).map(key => CALLBACKS[key]).filter(value => !!value);
|
|
30
|
+
return callback ? callback(params) : type === _ButtonPayment.TYPE.REDIRECT ? url : undefined;
|
|
19
31
|
};
|
|
20
32
|
exports.getUrl = getUrl;
|
|
21
33
|
//# sourceMappingURL=getUrl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUrl.js","names":["_getUrlBooking","require","_getUrlCriptan","_getUrlTpv","CALLBACKS","criptanNumOrder","getUrlCriptan","reservationCode","getUrlBooking","tpvNumOrder","getUrlTpv","getUrl","props","arguments","length","undefined","callback","Object","keys","map","key","filter","value","exports"],"sources":["../../../../../src/components/__shared__/ButtonPayment/helpers/getUrl.js"],"sourcesContent":["import { getUrlBooking } from './getUrlBooking';\nimport { getUrlCriptan } from './getUrlCriptan';\nimport { getUrlTpv } from './getUrlTpv';\n\nconst CALLBACKS = {\n criptanNumOrder: getUrlCriptan,\n reservationCode: getUrlBooking,\n tpvNumOrder: getUrlTpv,\n};\n\nexport const getUrl = (props = {}) => {\n const [callback] = Object.keys(
|
|
1
|
+
{"version":3,"file":"getUrl.js","names":["_getUrlBooking","require","_getUrlCriptan","_getUrlTpv","_ButtonPayment","CALLBACKS","criptanNumOrder","getUrlCriptan","reservationCode","getUrlBooking","tpvNumOrder","getUrlTpv","getUrl","response","type","url","props","arguments","length","undefined","params","callback","Object","keys","map","key","filter","value","TYPE","REDIRECT","exports"],"sources":["../../../../../src/components/__shared__/ButtonPayment/helpers/getUrl.js"],"sourcesContent":["import { getUrlBooking } from './getUrlBooking';\nimport { getUrlCriptan } from './getUrlCriptan';\nimport { getUrlTpv } from './getUrlTpv';\nimport { TYPE } from '../ButtonPayment.constants';\n\nconst CALLBACKS = {\n criptanNumOrder: getUrlCriptan,\n reservationCode: getUrlBooking,\n tpvNumOrder: getUrlTpv,\n};\n\nexport const getUrl = ({ response: { type, url, ...response } = {}, ...props } = {}) => {\n const params = { ...response, ...props };\n const [callback] = Object.keys(params)\n .map((key) => CALLBACKS[key])\n .filter((value) => !!value);\n\n return callback ? callback(params) : type === TYPE.REDIRECT ? url : undefined;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAEA,MAAMI,SAAS,GAAG;EAChBC,eAAe,EAAEC,4BAAa;EAC9BC,eAAe,EAAEC,4BAAa;EAC9BC,WAAW,EAAEC;AACf,CAAC;AAEM,MAAMC,MAAM,GAAG,SAAAA,CAAA,EAAkE;EAAA,IAAjE;IAAEC,QAAQ,EAAE;MAAEC,IAAI;MAAEC,GAAG;MAAE,GAAGF;IAAS,CAAC,GAAG,CAAC,CAAC;IAAE,GAAGG;EAAM,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACjF,MAAMG,MAAM,GAAG;IAAE,GAAGP,QAAQ;IAAE,GAAGG;EAAM,CAAC;EACxC,MAAM,CAACK,QAAQ,CAAC,GAAGC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC,CACnCI,GAAG,CAAEC,GAAG,IAAKpB,SAAS,CAACoB,GAAG,CAAC,CAAC,CAC5BC,MAAM,CAAEC,KAAK,IAAK,CAAC,CAACA,KAAK,CAAC;EAE7B,OAAON,QAAQ,GAAGA,QAAQ,CAACD,MAAM,CAAC,GAAGN,IAAI,KAAKc,mBAAI,CAACC,QAAQ,GAAGd,GAAG,GAAGI,SAAS;AAC/E,CAAC;AAACW,OAAA,CAAAlB,MAAA,GAAAA,MAAA"}
|
|
@@ -7,6 +7,7 @@ exports.COMPONENTS = void 0;
|
|
|
7
7
|
var _BannerLoyalty = require("./BannerLoyalty");
|
|
8
8
|
var _Booking = require("./Booking");
|
|
9
9
|
var _BookingQuery = require("./BookingQuery");
|
|
10
|
+
var _ButtonFinder = require("./ButtonFinder");
|
|
10
11
|
var _Chat = require("./Chat");
|
|
11
12
|
var _Checkout = require("./Checkout");
|
|
12
13
|
var _Deals = require("./Deals");
|
|
@@ -21,6 +22,7 @@ const COMPONENTS = exports.COMPONENTS = {
|
|
|
21
22
|
bannerLoyalty: _BannerLoyalty.BannerLoyalty,
|
|
22
23
|
booking: _Booking.Booking,
|
|
23
24
|
bookingQuery: _BookingQuery.BookingQuery,
|
|
25
|
+
buttonFinder: _ButtonFinder.ButtonFinder,
|
|
24
26
|
chat: _Chat.Chat,
|
|
25
27
|
checkout: _Checkout.Checkout,
|
|
26
28
|
deals: _Deals.Deals,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_BannerLoyalty","require","_Booking","_BookingQuery","_Chat","_Checkout","_Deals","_Environment","_Finder","_Header","_Profile","_Rates","_Session","_Signup","COMPONENTS","exports","bannerLoyalty","BannerLoyalty","booking","Booking","bookingQuery","BookingQuery","chat","Chat","checkout","Checkout","deals","Deals","environment","Environment","finder","Finder","header","Header","profile","Profile","rates","Rates","session","Session","signup","Signup"],"sources":["../../src/components/index.js"],"sourcesContent":["import { BannerLoyalty } from './BannerLoyalty';\nimport { Booking } from './Booking';\nimport { BookingQuery } from './BookingQuery';\nimport { Chat } from './Chat';\nimport { Checkout } from './Checkout';\nimport { Deals } from './Deals';\nimport { Environment } from './Environment';\nimport { Finder } from './Finder';\nimport { Header } from './Header';\nimport { Profile } from './Profile';\nimport { Rates } from './Rates';\nimport { Session } from './Session';\nimport { Signup } from './Signup';\n\nexport const COMPONENTS = {\n bannerLoyalty: BannerLoyalty,\n booking: Booking,\n bookingQuery: BookingQuery,\n chat: Chat,\n checkout: Checkout,\n deals: Deals,\n environment: Environment,\n finder: Finder,\n header: Header,\n profile: Profile,\n rates: Rates,\n session: Session,\n signup: Signup,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_BannerLoyalty","require","_Booking","_BookingQuery","_ButtonFinder","_Chat","_Checkout","_Deals","_Environment","_Finder","_Header","_Profile","_Rates","_Session","_Signup","COMPONENTS","exports","bannerLoyalty","BannerLoyalty","booking","Booking","bookingQuery","BookingQuery","buttonFinder","ButtonFinder","chat","Chat","checkout","Checkout","deals","Deals","environment","Environment","finder","Finder","header","Header","profile","Profile","rates","Rates","session","Session","signup","Signup"],"sources":["../../src/components/index.js"],"sourcesContent":["import { BannerLoyalty } from './BannerLoyalty';\nimport { Booking } from './Booking';\nimport { BookingQuery } from './BookingQuery';\nimport { ButtonFinder } from './ButtonFinder';\nimport { Chat } from './Chat';\nimport { Checkout } from './Checkout';\nimport { Deals } from './Deals';\nimport { Environment } from './Environment';\nimport { Finder } from './Finder';\nimport { Header } from './Header';\nimport { Profile } from './Profile';\nimport { Rates } from './Rates';\nimport { Session } from './Session';\nimport { Signup } from './Signup';\n\nexport const COMPONENTS = {\n bannerLoyalty: BannerLoyalty,\n booking: Booking,\n bookingQuery: BookingQuery,\n buttonFinder: ButtonFinder,\n chat: Chat,\n checkout: Checkout,\n deals: Deals,\n environment: Environment,\n finder: Finder,\n header: Header,\n profile: Profile,\n rates: Rates,\n session: Session,\n signup: Signup,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AACA,IAAAY,QAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AAEO,MAAMc,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG;EACxBE,aAAa,EAAEC,4BAAa;EAC5BC,OAAO,EAAEC,gBAAO;EAChBC,YAAY,EAAEC,0BAAY;EAC1BC,YAAY,EAAEC,0BAAY;EAC1BC,IAAI,EAAEC,UAAI;EACVC,QAAQ,EAAEC,kBAAQ;EAClBC,KAAK,EAAEC,YAAK;EACZC,WAAW,EAAEC,wBAAW;EACxBC,MAAM,EAAEC,cAAM;EACdC,MAAM,EAAEC,cAAM;EACdC,OAAO,EAAEC,gBAAO;EAChBC,KAAK,EAAEC,YAAK;EACZC,OAAO,EAAEC,gBAAO;EAChBC,MAAM,EAAEC;AACV,CAAC"}
|
package/package.json
CHANGED
package/public/routes/Home.jsx
CHANGED
|
@@ -39,7 +39,8 @@ export const Home = () => {
|
|
|
39
39
|
<Text headline={!isMobile} level={3} className={[style.pitch, style.text]}>
|
|
40
40
|
Experience the calming atmosphere of our serene guest rooms, each designed with your comfort in mind.
|
|
41
41
|
</Text>
|
|
42
|
-
|
|
42
|
+
|
|
43
|
+
<View data-mirai-component="buttonFinder" />
|
|
43
44
|
</View>
|
|
44
45
|
<View className={style.backgroundImage} />
|
|
45
46
|
</View>
|
|
@@ -128,7 +128,6 @@
|
|
|
128
128
|
margin: 0 auto;
|
|
129
129
|
position: sticky;
|
|
130
130
|
top: var(--mirai-ui-space-M);
|
|
131
|
-
z-index: 1;
|
|
132
131
|
}
|
|
133
132
|
|
|
134
133
|
.finder .resident > [data-role='text'] {
|
|
@@ -225,6 +224,10 @@
|
|
|
225
224
|
max-width: 50%;
|
|
226
225
|
}
|
|
227
226
|
|
|
227
|
+
body:not([data-mirai-modal='true']) .finder.centered {
|
|
228
|
+
z-index: 1;
|
|
229
|
+
}
|
|
230
|
+
|
|
228
231
|
.texts {
|
|
229
232
|
gap: var(--mirai-ui-space-L);
|
|
230
233
|
max-width: 50%;
|
|
@@ -14,11 +14,12 @@
|
|
|
14
14
|
--mirai-ui-font-medium-weight: 500;
|
|
15
15
|
--mirai-ui-font-bold-weight: 600;
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
--mirai-ui-font-
|
|
20
|
-
--mirai-ui-font-
|
|
21
|
-
--mirai-ui-font-bold
|
|
17
|
+
--mirai-ui-text-brand-font: 'Playfair Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,
|
|
18
|
+
Arial, sans-serif;
|
|
19
|
+
--mirai-ui-font-brand-weight: 700;
|
|
20
|
+
--mirai-ui-text-brand-font-weight: 700;
|
|
21
|
+
--mirai-ui-text-brand-font-bold: var(--mirai-ui-text-brand-font);
|
|
22
|
+
--mirai-ui-text-brand-font-bold-weight: var(--mirai-ui-text-brand-font-weight);
|
|
22
23
|
|
|
23
24
|
/* palette */
|
|
24
25
|
--mirai-ui-accent: #f0a42b;
|
|
@@ -27,34 +28,14 @@
|
|
|
27
28
|
--mirai-ui-accent-border: #f9dbaa;
|
|
28
29
|
--mirai-ui-accent-dark: #cc8b25;
|
|
29
30
|
|
|
30
|
-
/*
|
|
31
|
-
|
|
32
|
-
--mirai-ui-
|
|
33
|
-
|
|
34
|
-
--mirai-ui-
|
|
35
|
-
|
|
36
|
-
--mirai-ui-text-brand-font: 'Playfair Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,
|
|
37
|
-
Arial, sans-serif;
|
|
38
|
-
--mirai-ui-text-brand-font-weight: 700;
|
|
39
|
-
--mirai-ui-text-brand-font-bold: var(--mirai-ui-text-brand-font);
|
|
40
|
-
--mirai-ui-text-brand-font-bold-weight: var(--mirai-ui-text-brand-font-weight);
|
|
31
|
+
/* --mirai-ui-accent: #007bff;
|
|
32
|
+
--mirai-ui-accent-background: #e6f0ff;
|
|
33
|
+
--mirai-ui-accent-light: #339dff;
|
|
34
|
+
--mirai-ui-accent-border: #99cfff;
|
|
35
|
+
--mirai-ui-accent-dark: #0056b3; */
|
|
41
36
|
|
|
42
37
|
/* Finder */
|
|
43
38
|
--mirai-finder-button-font-weight: 900;
|
|
44
|
-
|
|
45
|
-
/* Booking */
|
|
46
|
-
/* --corporative-color: #003580;
|
|
47
|
-
--mirai-finder-background: #ffb700;
|
|
48
|
-
--mirai-finder-border-radius: var(--mirai-ui-input-text-radius);
|
|
49
|
-
--mirai-finder-padding: var(--mirai-ui-space-XXS); */
|
|
50
|
-
|
|
51
|
-
/* Airbnb */
|
|
52
|
-
/* --corporative-color: #ff385c;
|
|
53
|
-
--mirai-finder-border-radius: var(--mirai-ui-space-XL);
|
|
54
|
-
--mirai-finder-field-height: calc(var(--mirai-field-height) * 1.2);
|
|
55
|
-
--mirai-finder-padding: var(--mirai-ui-space-XS);
|
|
56
|
-
--mirai-finder-column-border-radius: var(--mirai-ui-space-M);
|
|
57
|
-
--mirai-finder-column-padding: var(--mirai-ui-space-M); */
|
|
58
39
|
}
|
|
59
40
|
|
|
60
41
|
body {
|