@mirai/core 0.4.70 → 0.4.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/Checkout/Checkout.js +1 -0
- package/build/components/Checkout/Checkout.js.map +1 -1
- package/build/components/Checkout/helpers/getFieldProps.js +4 -3
- package/build/components/Checkout/helpers/getFieldProps.js.map +1 -1
- package/build/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.js +12 -7
- package/build/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.js.map +1 -1
- package/package.json +1 -1
|
@@ -144,6 +144,7 @@ const Checkout = _ref => {
|
|
|
144
144
|
className: style.main
|
|
145
145
|
}, hasRequiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
|
|
146
146
|
form: "checkout",
|
|
147
|
+
schema: dataSource === null || dataSource === void 0 ? void 0 : dataSource.form,
|
|
147
148
|
values: requiredFields
|
|
148
149
|
}), (agency.name || !payment || tpvError) && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
149
150
|
error: tpvError,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","style","_Checkout2","_helpers","_partials","_Core","_helpers2","_shared__","_Booking","_Header","_helpers3","_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","Checkout","_ref","skeleton","others","isDesktop","useDevice","translate","useLocale","value","checkout","currency","hotel","language","locale","session","urlParams","posError","tpvError","checkoutStep","variant","useStore","busy","setBusy","useState","dataSource","setDataSource","error","setError","selectedExtras","setSelectedExtras","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","Event","publish","EVENT","METRICS","id","response","ServiceBooking","getParamsFromExtras","catch","CHECKOUT_RESPONSE","event","handleModalAgency","handleErrorConfirmation","window","scrollTo","top","behavior","handleSubmit","origin","pathname","search","document","location","href","concat","toUrlParams","fetchUrlParams","checkoutForm","JSON","stringify","agency","payment","undefined","hasRequiredFields","keys","createElement","Fragment","Header","View","role","tag","testId","className","styles","container","Progress","indeterminate","visible","progress","row","content","wide","main","NotificationRequiredFields","form","values","name","Notification","small","info","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","underline","onPress","action","ACTION_MORE_INFO","NOTIFICATION_UNKNOWN_POS_ERROR","BookingSummary","box","BookingDetails","expanded","Form","showErrors","onError","Extras","onChange","BookingTerms","Confirmation","onSubmit","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","Footer","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getParamsFromExtras } from './helpers';\nimport { Confirmation, Extras, Form } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { fetchUrlParams } from '../../helpers';\nimport { BookingDetails, BookingSummary, BookingTerms, Footer, NotificationRequiredFields } from '../__shared__';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { Header } from '../Header';\nimport { EVENT, toUrlParams } from '../helpers';\n\nconst Checkout = ({ skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n checkout,\n currency,\n hotel,\n language,\n locale,\n session,\n urlParams: { posError: tpvError, checkoutStep = '1', ...urlParams } = {},\n variant,\n },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [selectedExtras, setSelectedExtras] = useState([]);\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => Event.publish(EVENT.METRICS, { id: 'CHECKOUT:RENDER' }), []);\n\n useEffect(() => {\n if (skeleton) return;\n\n (async () => {\n setBusy(true);\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session,\n ...urlParams,\n ...getParamsFromExtras({ selectedExtras, urlParams, variant }),\n }).catch((error) => {\n setResponseError(error);\n });\n setBusy(false);\n\n setDataSource(response);\n if (response) Event.publish(EVENT.CHECKOUT_RESPONSE, { event: EVENT.CHECKOUT_RESPONSE, response });\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale, session, selectedExtras]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const handleErrorConfirmation = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const handleSubmit = () => {\n const { origin, pathname, search } = document.location;\n\n document.location.href = `${origin}${pathname}${toUrlParams({\n ...fetchUrlParams(search),\n ...getParamsFromExtras({ selectedExtras, urlParams, variant }),\n // ! TODO\n checkoutForm: JSON.stringify(checkout),\n checkoutStep: 2,\n })}`;\n };\n\n const { agency = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <>\n <Header />\n\n <View role=\"checkout\" tag=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={busy || (!response && !responseError)} className={style.progress} />\n {response ? (\n <View row={isDesktop} className={style.content}>\n <View wide className={style.main}>\n {hasRequiredFields && <NotificationRequiredFields form=\"checkout\" values={requiredFields} />}\n {(agency.name || !payment || tpvError) && (\n <Notification error={tpvError} small info wide className={styles(style.agency, others.className)}>\n {!tpvError && !payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {!tpvError &&\n agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n {tpvError && translate(L10N.NOTIFICATION_UNKNOWN_POS_ERROR)}\n </Notification>\n )}\n\n {!isDesktop && (\n <BookingSummary box dataSource={dataSource}>\n {(variant === 'A' || checkoutStep === '1') && <BookingDetails dataSource={dataSource} expanded />}\n </BookingSummary>\n )}\n\n <Form dataSource={dataSource} showErrors={hasRequiredFields} onError={setError} />\n\n {variant === 'B' && checkoutStep === '1' && (\n <Extras hotel={dataSource.hotel} onChange={setSelectedExtras} />\n )}\n\n {isDesktop && (variant === 'A' || checkoutStep === '1') && (\n <BookingDetails dataSource={dataSource} className={style.box} />\n )}\n\n <BookingTerms dataSource={dataSource} small />\n </View>\n\n <Confirmation\n busy={busy}\n dataSource={dataSource}\n error={Object.keys(error || {}).length > 0}\n onError={handleErrorConfirmation}\n onSubmit={handleSubmit}\n onValid={() => setRequiredFields()}\n />\n </View>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n\n <Footer />\n </>\n );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","style","_Checkout2","_helpers","_partials","_Core","_helpers2","_shared__","_Booking","_Header","_helpers3","_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","Checkout","_ref","skeleton","others","isDesktop","useDevice","translate","useLocale","value","checkout","currency","hotel","language","locale","session","urlParams","posError","tpvError","checkoutStep","variant","useStore","busy","setBusy","useState","dataSource","setDataSource","error","setError","selectedExtras","setSelectedExtras","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","Event","publish","EVENT","METRICS","id","response","ServiceBooking","getParamsFromExtras","catch","CHECKOUT_RESPONSE","event","handleModalAgency","handleErrorConfirmation","window","scrollTo","top","behavior","handleSubmit","origin","pathname","search","document","location","href","concat","toUrlParams","fetchUrlParams","checkoutForm","JSON","stringify","agency","payment","undefined","hasRequiredFields","keys","createElement","Fragment","Header","View","role","tag","testId","className","styles","container","Progress","indeterminate","visible","progress","row","content","wide","main","NotificationRequiredFields","form","schema","values","name","Notification","small","info","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","underline","onPress","action","ACTION_MORE_INFO","NOTIFICATION_UNKNOWN_POS_ERROR","BookingSummary","box","BookingDetails","expanded","Form","showErrors","onError","Extras","onChange","BookingTerms","Confirmation","onSubmit","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","Footer","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getParamsFromExtras } from './helpers';\nimport { Confirmation, Extras, Form } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { fetchUrlParams } from '../../helpers';\nimport { BookingDetails, BookingSummary, BookingTerms, Footer, NotificationRequiredFields } from '../__shared__';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { Header } from '../Header';\nimport { EVENT, toUrlParams } from '../helpers';\n\nconst Checkout = ({ skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const {\n value: {\n checkout,\n currency,\n hotel,\n language,\n locale,\n session,\n urlParams: { posError: tpvError, checkoutStep = '1', ...urlParams } = {},\n variant,\n },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [selectedExtras, setSelectedExtras] = useState([]);\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => Event.publish(EVENT.METRICS, { id: 'CHECKOUT:RENDER' }), []);\n\n useEffect(() => {\n if (skeleton) return;\n\n (async () => {\n setBusy(true);\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session,\n ...urlParams,\n ...getParamsFromExtras({ selectedExtras, urlParams, variant }),\n }).catch((error) => {\n setResponseError(error);\n });\n setBusy(false);\n\n setDataSource(response);\n if (response) Event.publish(EVENT.CHECKOUT_RESPONSE, { event: EVENT.CHECKOUT_RESPONSE, response });\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale, session, selectedExtras]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const handleErrorConfirmation = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const handleSubmit = () => {\n const { origin, pathname, search } = document.location;\n\n document.location.href = `${origin}${pathname}${toUrlParams({\n ...fetchUrlParams(search),\n ...getParamsFromExtras({ selectedExtras, urlParams, variant }),\n // ! TODO\n checkoutForm: JSON.stringify(checkout),\n checkoutStep: 2,\n })}`;\n };\n\n const { agency = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <>\n <Header />\n\n <View role=\"checkout\" tag=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={busy || (!response && !responseError)} className={style.progress} />\n {response ? (\n <View row={isDesktop} className={style.content}>\n <View wide className={style.main}>\n {hasRequiredFields && (\n <NotificationRequiredFields form=\"checkout\" schema={dataSource?.form} values={requiredFields} />\n )}\n {(agency.name || !payment || tpvError) && (\n <Notification error={tpvError} small info wide className={styles(style.agency, others.className)}>\n {!tpvError && !payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {!tpvError &&\n agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n {tpvError && translate(L10N.NOTIFICATION_UNKNOWN_POS_ERROR)}\n </Notification>\n )}\n\n {!isDesktop && (\n <BookingSummary box dataSource={dataSource}>\n {(variant === 'A' || checkoutStep === '1') && <BookingDetails dataSource={dataSource} expanded />}\n </BookingSummary>\n )}\n\n <Form dataSource={dataSource} showErrors={hasRequiredFields} onError={setError} />\n\n {variant === 'B' && checkoutStep === '1' && (\n <Extras hotel={dataSource.hotel} onChange={setSelectedExtras} />\n )}\n\n {isDesktop && (variant === 'A' || checkoutStep === '1') && (\n <BookingDetails dataSource={dataSource} className={style.box} />\n )}\n\n <BookingTerms dataSource={dataSource} small />\n </View>\n\n <Confirmation\n busy={busy}\n dataSource={dataSource}\n error={Object.keys(error || {}).length > 0}\n onError={handleErrorConfirmation}\n onSubmit={handleSubmit}\n onValid={() => setRequiredFields()}\n />\n </View>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n\n <Footer />\n </>\n );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
|
|
@@ -15,9 +15,10 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
15
15
|
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; }
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
const {
|
|
18
|
+
HTML,
|
|
18
19
|
OPTION,
|
|
19
20
|
PHONE,
|
|
20
|
-
|
|
21
|
+
SELECT
|
|
21
22
|
} = _Checkout.INPUT;
|
|
22
23
|
const getFieldProps = function () {
|
|
23
24
|
let field = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
@@ -49,7 +50,7 @@ const getFieldProps = function () {
|
|
|
49
50
|
disabled: field === 'email' && session || undefined,
|
|
50
51
|
error: field !== 'phone' ? (value === null || value === void 0 ? void 0 : value.length) > 0 && !!error : (value === null || value === void 0 ? void 0 : value.length) > 5 && !!error,
|
|
51
52
|
hint: translate(_Checkout2.L10N["".concat(field.toUpperCase(), "_HINT")]),
|
|
52
|
-
id: field ? "checkout-".concat(field) : undefined,
|
|
53
|
+
id: field ? "checkout-".concat(field.replace(/\./g, '-')) : undefined,
|
|
53
54
|
key: field,
|
|
54
55
|
label: props.label || translate(_Checkout2.L10N["LABEL_".concat(field.toUpperCase())], {
|
|
55
56
|
club: name,
|
|
@@ -77,7 +78,7 @@ const getFieldProps = function () {
|
|
|
77
78
|
success: field !== 'phone' ? !!value && !error : (value === null || value === void 0 ? void 0 : value.length) > 4 && !error,
|
|
78
79
|
test: field === 'dni' ? _testDNI.testDNI : undefined,
|
|
79
80
|
type: type === _Checkout.INPUT_TYPE.NUMBER ? 'number' : type === _Checkout.INPUT_TYPE.EMAIL ? 'email' : input === PHONE ? 'inputPhone' : input === OPTION ? 'checkbox' : undefined,
|
|
80
|
-
value: value || props.value,
|
|
81
|
+
value: input === SELECT && value === undefined ? props.options[0] : value || props.value,
|
|
81
82
|
className: ['address', 'company', 'comments'].includes(field) || [OPTION, HTML].includes(input) ? style.wide : style.half
|
|
82
83
|
};
|
|
83
84
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFieldProps.js","names":["_ui","require","_react","_interopRequireDefault","_testDNI","_helpers","_Checkout","_Checkout2","style","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","OPTION","PHONE","
|
|
1
|
+
{"version":3,"file":"getFieldProps.js","names":["_ui","require","_react","_interopRequireDefault","_testDNI","_helpers","_Checkout","_Checkout2","style","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","HTML","OPTION","PHONE","SELECT","INPUT","getFieldProps","field","arguments","length","undefined","input","type","props","value","error","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","display","LABEL_TERMS_AND_CONDITIONS","termsLink","ACTION_MORE_INFO","labelPrefix","LABEL_PHONE_PREFIX","showRequired","includes","success","test","testDNI","INPUT_TYPE","NUMBER","EMAIL","options","className","wide","half","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, 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} small target=\"_blank\" 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 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:\n ['address', 'company', 'comments'].includes(field) || [OPTION, HTML].includes(input) ? style.wide : style.half,\n});\n"],"mappings":"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"}
|
package/build/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.js
CHANGED
|
@@ -20,6 +20,7 @@ const OFFSET = 16;
|
|
|
20
20
|
const NotificationRequiredFields = _ref => {
|
|
21
21
|
let {
|
|
22
22
|
form = 'form',
|
|
23
|
+
schema = {},
|
|
23
24
|
values = {},
|
|
24
25
|
...others
|
|
25
26
|
} = _ref;
|
|
@@ -65,18 +66,22 @@ const NotificationRequiredFields = _ref => {
|
|
|
65
66
|
row: true,
|
|
66
67
|
wide: true,
|
|
67
68
|
className: style.fields
|
|
68
|
-
}, Object.keys(values).map(field =>
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
}, Object.keys(values).map(field => {
|
|
70
|
+
var _schema$field;
|
|
71
|
+
return /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
72
|
+
key: field,
|
|
73
|
+
markdown: false,
|
|
74
|
+
underline: true,
|
|
75
|
+
small: true,
|
|
76
|
+
onPress: () => handlePress("#".concat(form, "-").concat(field.replace(/\./g, '-')))
|
|
77
|
+
}, _NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())] ? translate(_NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())]) : ((_schema$field = schema[field]) === null || _schema$field === void 0 ? void 0 : _schema$field.label) || field);
|
|
78
|
+
}))) : null;
|
|
75
79
|
};
|
|
76
80
|
exports.NotificationRequiredFields = NotificationRequiredFields;
|
|
77
81
|
NotificationRequiredFields.displayName = 'Mirai:Core:NotificationRequiredFields';
|
|
78
82
|
NotificationRequiredFields.propTypes = {
|
|
79
83
|
form: _propTypes.default.string,
|
|
84
|
+
schema: _propTypes.default.shape({}),
|
|
80
85
|
values: _propTypes.default.shape({})
|
|
81
86
|
};
|
|
82
87
|
//# sourceMappingURL=NotificationRequiredFields.js.map
|
package/build/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationRequiredFields.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_NotificationRequiredFields","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","OFFSET","NotificationRequiredFields","_ref","form","values","others","isMobile","useDevice","translate","useLocale","value","components","useStore","useEffect","metrics","keys","Event","publish","EVENT","METRICS","id","concat","fields","total","handlePress","el","document","querySelector","window","scrollTo","top","getBoundingClientRect","scrollY","behavior","field","checkout","signup","profile","undefined","createElement","Notification","error","small","wide","L10N","NOTIFICATION_REQUIRED_FIELDS","View","row","className","map","Action","markdown","underline","onPress","toUpperCase","exports","displayName","propTypes","PropTypes","string","shape"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { L10N } from './NotificationRequiredFields.l10n';\nimport * as style from './NotificationRequiredFields.module.css';\nimport { EVENT } from '../../helpers';\n\nconst OFFSET = 16;\n\nconst NotificationRequiredFields = ({ form = 'form', values = {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { components = {} },\n } = useStore();\n\n useEffect(() => {\n if (metrics) {\n const keys = Object.keys(values);\n Event.publish(EVENT.METRICS, { id: `${metrics}:ERROR_REQUIRED_FIELDS`, fields: keys, total: keys.length });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handlePress = (id) => {\n const el = document.querySelector(id);\n el && window.scrollTo({ top: el.getBoundingClientRect().top + window.scrollY - OFFSET, behavior: 'smooth' });\n if (metrics) Event.publish(EVENT.METRICS, { id: `${metrics}:ERROR_REQUIRED_FIELDS:VIEW_FIELD`, field: id });\n };\n\n const metrics = components.checkout\n ? 'CHECKOUT'\n : components.signup\n ? 'SIGNUP'\n : components.profile\n ? 'PROFILE'\n : undefined;\n\n return Object.keys(values).length ? (\n <Notification {...others} error small={isMobile} wide>\n {translate(L10N.NOTIFICATION_REQUIRED_FIELDS)}\n <View row wide className={style.fields}>\n {Object.keys(values).map((field) => (\n <Action
|
|
1
|
+
{"version":3,"file":"NotificationRequiredFields.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_NotificationRequiredFields","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","OFFSET","NotificationRequiredFields","_ref","form","schema","values","others","isMobile","useDevice","translate","useLocale","value","components","useStore","useEffect","metrics","keys","Event","publish","EVENT","METRICS","id","concat","fields","total","handlePress","el","document","querySelector","window","scrollTo","top","getBoundingClientRect","scrollY","behavior","field","checkout","signup","profile","undefined","createElement","Notification","error","small","wide","L10N","NOTIFICATION_REQUIRED_FIELDS","View","row","className","map","_schema$field","Action","markdown","underline","onPress","replace","toUpperCase","label","exports","displayName","propTypes","PropTypes","string","shape"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Action, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { L10N } from './NotificationRequiredFields.l10n';\nimport * as style from './NotificationRequiredFields.module.css';\nimport { EVENT } from '../../helpers';\n\nconst OFFSET = 16;\n\nconst NotificationRequiredFields = ({ form = 'form', schema = {}, values = {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { components = {} },\n } = useStore();\n\n useEffect(() => {\n if (metrics) {\n const keys = Object.keys(values);\n Event.publish(EVENT.METRICS, { id: `${metrics}:ERROR_REQUIRED_FIELDS`, fields: keys, total: keys.length });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handlePress = (id) => {\n const el = document.querySelector(id);\n el && window.scrollTo({ top: el.getBoundingClientRect().top + window.scrollY - OFFSET, behavior: 'smooth' });\n if (metrics) Event.publish(EVENT.METRICS, { id: `${metrics}:ERROR_REQUIRED_FIELDS:VIEW_FIELD`, field: id });\n };\n\n const metrics = components.checkout\n ? 'CHECKOUT'\n : components.signup\n ? 'SIGNUP'\n : components.profile\n ? 'PROFILE'\n : undefined;\n\n return Object.keys(values).length ? (\n <Notification {...others} error small={isMobile} wide>\n {translate(L10N.NOTIFICATION_REQUIRED_FIELDS)}\n <View row wide className={style.fields}>\n {Object.keys(values).map((field) => (\n <Action\n key={field}\n markdown={false}\n underline\n small\n onPress={() => handlePress(`#${form}-${field.replace(/\\./g, '-')}`)}\n >\n {L10N[`LABEL_${field.toUpperCase()}`]\n ? translate(L10N[`LABEL_${field.toUpperCase()}`])\n : schema[field]?.label || field}\n </Action>\n ))}\n </View>\n </Notification>\n ) : null;\n};\n\nNotificationRequiredFields.displayName = 'Mirai:Core:NotificationRequiredFields';\n\nNotificationRequiredFields.propTypes = {\n form: PropTypes.string,\n schema: PropTypes.shape({}),\n values: PropTypes.shape({}),\n};\n\nexport { NotificationRequiredFields };\n"],"mappings":"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"}
|