@mirai/core 0.3.167 → 0.3.169
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 +4 -3
- package/build/components/Checkout/Checkout.js.map +1 -1
- package/build/components/__shared__/Payment/components/Card/helpers/formatValues.js +2 -0
- package/build/components/__shared__/Payment/components/Card/helpers/formatValues.js.map +1 -1
- package/build/components/__shared__/Payment/components/PCI/helpers/formatValues.js +2 -0
- package/build/components/__shared__/Payment/components/PCI/helpers/formatValues.js.map +1 -1
- package/build/components/__shared__/Payment/helpers/formatExpire.js +15 -0
- package/build/components/__shared__/Payment/helpers/formatExpire.js.map +1 -0
- package/build/components/__shared__/Payment/helpers/index.js +11 -0
- package/build/components/__shared__/Payment/helpers/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -131,6 +131,7 @@ const Checkout = _ref => {
|
|
|
131
131
|
type
|
|
132
132
|
} = {}
|
|
133
133
|
} = club;
|
|
134
|
+
const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;
|
|
134
135
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
135
136
|
role: "checkout",
|
|
136
137
|
testId: others.testId,
|
|
@@ -147,7 +148,7 @@ const Checkout = _ref => {
|
|
|
147
148
|
className: style.content
|
|
148
149
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
149
150
|
className: style.main
|
|
150
|
-
},
|
|
151
|
+
}, hasRequiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
|
|
151
152
|
values: requiredFields
|
|
152
153
|
}), variant === 'B' && /*#__PURE__*/_react.default.createElement(_partials.Summary, {
|
|
153
154
|
dataSource: dataSource,
|
|
@@ -172,7 +173,7 @@ const Checkout = _ref => {
|
|
|
172
173
|
}, translate(_Checkout2.L10N.ACTION_MORE_INFO)))
|
|
173
174
|
})), /*#__PURE__*/_react.default.createElement(_partials.Form, {
|
|
174
175
|
dataSource: dataSource,
|
|
175
|
-
showErrors:
|
|
176
|
+
showErrors: hasRequiredFields,
|
|
176
177
|
onError: setError
|
|
177
178
|
}), isDesktop && /*#__PURE__*/_react.default.createElement(_partials.Details, {
|
|
178
179
|
dataSource: dataSource,
|
|
@@ -183,7 +184,7 @@ const Checkout = _ref => {
|
|
|
183
184
|
tracking: _Checkout.TRACKING
|
|
184
185
|
})), /*#__PURE__*/_react.default.createElement(_partials.Confirmation, {
|
|
185
186
|
dataSource: dataSource,
|
|
186
|
-
error: error,
|
|
187
|
+
error: Object.keys(error || {}).length > 0,
|
|
187
188
|
variant: variant,
|
|
188
189
|
onError: handleErrorConfirmation,
|
|
189
190
|
onValid: () => setRequiredFields()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_Checkout2","style","_Checkout3","_helpers","_partials","_Core","_shared__","_partials2","_Booking","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","useDevice","translate","useLocale","track","trackRender","useMetrics","value","club","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","applyClubDiscount","undefined","catch","service","method","trace","tracking","chainId","idchain","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","handleErrorConfirmation","scrollTo","top","behavior","agency","image","payment","variant","getVariant","active","authentication","type","createElement","Fragment","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","NotificationRequiredFields","values","Summary","box","Details","AUTH_TYPE","MIRAI","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","showErrors","onError","Others","Confirmation","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } 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 { FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { NotificationRequiredFields } from '../__shared__';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { trace } from '../helpers';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = false, skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { club = {}, currency, hotel, id, language, locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session: urlParams.applyClubDiscount === 'true' ? session : undefined,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n response && trace({ ...response.tracking, chainId: urlParams.idchain });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\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 { agency = {}, hotel: { image } = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isDesktop, urlParams });\n const { active, authentication: { type } = {} } = club;\n\n return (\n <>\n <View role=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {requiredFields && <NotificationRequiredFields values={requiredFields} />}\n\n {variant === 'B' && <Summary dataSource={dataSource} variant={variant} className={style.box} />}\n\n {!isDesktop && <Details dataSource={dataSource} variant={variant} />}\n {active && !session && showSession && type === AUTH_TYPE.MIRAI && <Session />}\n {(agency.name || !payment) && (\n <Notification small info wide className={styles(style.agency, others.className)}>\n {!payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n\n <Form dataSource={dataSource} showErrors={!!requiredFields} onError={setError} />\n\n {isDesktop && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation\n dataSource={dataSource}\n error={error}\n variant={variant}\n onError={handleErrorConfirmation}\n onValid={() => setRequiredFields()}\n />\n </View>\n </>\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 );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n session: PropTypes.bool,\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","_Checkout2","style","_Checkout3","_helpers","_partials","_Core","_shared__","_partials2","_Booking","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","useDevice","translate","useLocale","track","trackRender","useMetrics","value","club","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","applyClubDiscount","undefined","catch","service","method","trace","tracking","chainId","idchain","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","handleErrorConfirmation","scrollTo","top","behavior","agency","image","payment","variant","getVariant","active","authentication","type","hasRequiredFields","keys","createElement","Fragment","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","NotificationRequiredFields","values","Summary","box","Details","AUTH_TYPE","MIRAI","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","showErrors","onError","Others","Confirmation","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } 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 { FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { NotificationRequiredFields } from '../__shared__';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { trace } from '../helpers';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = false, skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { club = {}, currency, hotel, id, language, locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session: urlParams.applyClubDiscount === 'true' ? session : undefined,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n response && trace({ ...response.tracking, chainId: urlParams.idchain });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\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 { agency = {}, hotel: { image } = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isDesktop, urlParams });\n const { active, authentication: { type } = {} } = club;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <>\n <View role=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {hasRequiredFields && <NotificationRequiredFields values={requiredFields} />}\n\n {variant === 'B' && <Summary dataSource={dataSource} variant={variant} className={style.box} />}\n\n {!isDesktop && <Details dataSource={dataSource} variant={variant} />}\n {active && !session && showSession && type === AUTH_TYPE.MIRAI && <Session />}\n {(agency.name || !payment) && (\n <Notification small info wide className={styles(style.agency, others.className)}>\n {!payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n\n <Form dataSource={dataSource} showErrors={hasRequiredFields} onError={setError} />\n\n {isDesktop && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation\n dataSource={dataSource}\n error={Object.keys(error || {}).length > 0}\n variant={variant}\n onError={handleErrorConfirmation}\n onValid={() => setRequiredFields()}\n />\n </View>\n </>\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 );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n session: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.formatValues = void 0;
|
|
7
7
|
var _getCardConfig = require("./getCardConfig");
|
|
8
8
|
var _getCardType = require("./getCardType");
|
|
9
|
+
var _helpers = require("../../../helpers");
|
|
9
10
|
const PARSER = [/[^\d]/g, ''];
|
|
10
11
|
const formatValues = function () {
|
|
11
12
|
let values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -17,6 +18,7 @@ const formatValues = function () {
|
|
|
17
18
|
} = values;
|
|
18
19
|
card = card.replace(...PARSER);
|
|
19
20
|
CVV = CVV.replace(...PARSER);
|
|
21
|
+
expire = (0, _helpers.formatExpire)(expire);
|
|
20
22
|
name = name.toUpperCase();
|
|
21
23
|
const {
|
|
22
24
|
placeholder = {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatValues.js","names":["_getCardConfig","require","_getCardType","PARSER","formatValues","values","arguments","length","undefined","card","CVV","expire","name","replace","toUpperCase","placeholder","getCardConfig","cardArray","map","char","shift","join","trimEnd","type","getCardType","exports"],"sources":["../../../../../../../src/components/__shared__/Payment/components/Card/helpers/formatValues.js"],"sourcesContent":["import { getCardConfig } from './getCardConfig';\nimport { getCardType } from './getCardType';\n\nconst PARSER = [/[^\\d]/g, ''];\n\nexport const formatValues = (values = {}) => {\n let { card = '', CVV = '', expire = '', name = '' } = values;\n\n card = card.replace(...PARSER);\n CVV = CVV.replace(...PARSER);\n name = name.toUpperCase();\n\n const { placeholder = {} } = getCardConfig(card);\n const cardArray = card ? [...card] : [];\n card = [...placeholder.card]\n .map((char = '') => (char === ' ' ? char : cardArray.length >= 0 ? cardArray.shift() : ''))\n .join('')\n .trimEnd();\n\n return { card, CVV, expire, name, type: getCardType(card) };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"formatValues.js","names":["_getCardConfig","require","_getCardType","_helpers","PARSER","formatValues","values","arguments","length","undefined","card","CVV","expire","name","replace","formatExpire","toUpperCase","placeholder","getCardConfig","cardArray","map","char","shift","join","trimEnd","type","getCardType","exports"],"sources":["../../../../../../../src/components/__shared__/Payment/components/Card/helpers/formatValues.js"],"sourcesContent":["import { getCardConfig } from './getCardConfig';\nimport { getCardType } from './getCardType';\nimport { formatExpire } from '../../../helpers';\n\nconst PARSER = [/[^\\d]/g, ''];\n\nexport const formatValues = (values = {}) => {\n let { card = '', CVV = '', expire = '', name = '' } = values;\n\n card = card.replace(...PARSER);\n CVV = CVV.replace(...PARSER);\n expire = formatExpire(expire);\n name = name.toUpperCase();\n\n const { placeholder = {} } = getCardConfig(card);\n const cardArray = card ? [...card] : [];\n card = [...placeholder.card]\n .map((char = '') => (char === ' ' ? char : cardArray.length >= 0 ? cardArray.shift() : ''))\n .join('')\n .trimEnd();\n\n return { card, CVV, expire, name, type: getCardType(card) };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,MAAMG,MAAM,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;AAEtB,MAAMC,YAAY,GAAG,SAAAA,CAAA,EAAiB;EAAA,IAAhBC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACtC,IAAI;IAAEG,IAAI,GAAG,EAAE;IAAEC,GAAG,GAAG,EAAE;IAAEC,MAAM,GAAG,EAAE;IAAEC,IAAI,GAAG;EAAG,CAAC,GAAGP,MAAM;EAE5DI,IAAI,GAAGA,IAAI,CAACI,OAAO,CAAC,GAAGV,MAAM,CAAC;EAC9BO,GAAG,GAAGA,GAAG,CAACG,OAAO,CAAC,GAAGV,MAAM,CAAC;EAC5BQ,MAAM,GAAG,IAAAG,qBAAY,EAACH,MAAM,CAAC;EAC7BC,IAAI,GAAGA,IAAI,CAACG,WAAW,CAAC,CAAC;EAEzB,MAAM;IAAEC,WAAW,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,4BAAa,EAACR,IAAI,CAAC;EAChD,MAAMS,SAAS,GAAGT,IAAI,GAAG,CAAC,GAAGA,IAAI,CAAC,GAAG,EAAE;EACvCA,IAAI,GAAG,CAAC,GAAGO,WAAW,CAACP,IAAI,CAAC,CACzBU,GAAG,CAAC;IAAA,IAACC,IAAI,GAAAd,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;IAAA,OAAMc,IAAI,KAAK,GAAG,GAAGA,IAAI,GAAGF,SAAS,CAACX,MAAM,IAAI,CAAC,GAAGW,SAAS,CAACG,KAAK,CAAC,CAAC,GAAG,EAAE;EAAA,CAAC,CAAC,CAC1FC,IAAI,CAAC,EAAE,CAAC,CACRC,OAAO,CAAC,CAAC;EAEZ,OAAO;IAAEd,IAAI;IAAEC,GAAG;IAAEC,MAAM;IAAEC,IAAI;IAAEY,IAAI,EAAE,IAAAC,wBAAW,EAAChB,IAAI;EAAE,CAAC;AAC7D,CAAC;AAACiB,OAAA,CAAAtB,YAAA,GAAAA,YAAA"}
|
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.formatValues = void 0;
|
|
7
|
+
var _helpers = require("../../../helpers");
|
|
7
8
|
const PARSER = [/[^\d]/g, ''];
|
|
8
9
|
const SLASH = '/';
|
|
9
10
|
const formatValues = function () {
|
|
@@ -18,6 +19,7 @@ const formatValues = function () {
|
|
|
18
19
|
expire = "".concat(expire.substr(0, 2).replace(...PARSER)).concat(expire.substr(2, 1) ? SLASH : '').concat(expire.substr(3, 2).replace(...PARSER));
|
|
19
20
|
name = name.toUpperCase();
|
|
20
21
|
expire = expire.length === 2 ? expire.length > currentExpire.length ? "".concat(expire).concat(SLASH) : expire[0] : expire;
|
|
22
|
+
expire = (0, _helpers.formatExpire)(expire);
|
|
21
23
|
return {
|
|
22
24
|
expire,
|
|
23
25
|
name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatValues.js","names":["PARSER","SLASH","formatValues","values","arguments","length","undefined","expire","currentExpire","name","concat","substr","replace","toUpperCase","exports"],"sources":["../../../../../../../src/components/__shared__/Payment/components/PCI/helpers/formatValues.js"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"formatValues.js","names":["_helpers","require","PARSER","SLASH","formatValues","values","arguments","length","undefined","expire","currentExpire","name","concat","substr","replace","toUpperCase","formatExpire","exports"],"sources":["../../../../../../../src/components/__shared__/Payment/components/PCI/helpers/formatValues.js"],"sourcesContent":["import { formatExpire } from '../../../helpers';\n\nconst PARSER = [/[^\\d]/g, ''];\nconst SLASH = '/';\n\nexport const formatValues = (values = {}, { expire: currentExpire = '' } = {}) => {\n let { expire = '', name = '' } = values;\n\n expire = `${expire.substr(0, 2).replace(...PARSER)}${expire.substr(2, 1) ? SLASH : ''}${expire\n .substr(3, 2)\n .replace(...PARSER)}`;\n name = name.toUpperCase();\n\n expire = expire.length === 2 ? (expire.length > currentExpire.length ? `${expire}${SLASH}` : expire[0]) : expire;\n expire = formatExpire(expire);\n\n return { expire, name };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA,MAAMC,MAAM,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC7B,MAAMC,KAAK,GAAG,GAAG;AAEV,MAAMC,YAAY,GAAG,SAAAA,CAAA,EAAsD;EAAA,IAArDC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,IAAE;IAAEG,MAAM,EAAEC,aAAa,GAAG;EAAG,CAAC,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAC3E,IAAI;IAAEG,MAAM,GAAG,EAAE;IAAEE,IAAI,GAAG;EAAG,CAAC,GAAGN,MAAM;EAEvCI,MAAM,MAAAG,MAAA,CAAMH,MAAM,CAACI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,OAAO,CAAC,GAAGZ,MAAM,CAAC,EAAAU,MAAA,CAAGH,MAAM,CAACI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAGV,KAAK,GAAG,EAAE,EAAAS,MAAA,CAAGH,MAAM,CAC3FI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CACZC,OAAO,CAAC,GAAGZ,MAAM,CAAC,CAAE;EACvBS,IAAI,GAAGA,IAAI,CAACI,WAAW,CAAC,CAAC;EAEzBN,MAAM,GAAGA,MAAM,CAACF,MAAM,KAAK,CAAC,GAAIE,MAAM,CAACF,MAAM,GAAGG,aAAa,CAACH,MAAM,MAAAK,MAAA,CAAMH,MAAM,EAAAG,MAAA,CAAGT,KAAK,IAAKM,MAAM,CAAC,CAAC,CAAC,GAAIA,MAAM;EAChHA,MAAM,GAAG,IAAAO,qBAAY,EAACP,MAAM,CAAC;EAE7B,OAAO;IAAEA,MAAM;IAAEE;EAAK,CAAC;AACzB,CAAC;AAACM,OAAA,CAAAb,YAAA,GAAAA,YAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.formatExpire = void 0;
|
|
7
|
+
const formatExpire = function () {
|
|
8
|
+
let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
9
|
+
let result = value;
|
|
10
|
+
if (value.length === 1 && Number(value) > 1) result = "0".concat(value, "/");
|
|
11
|
+
if (value.length >= 2 && Number(value.substring(0, 2)) > 12) result = value.replace(value.substring(0, 2), '12');
|
|
12
|
+
return result;
|
|
13
|
+
};
|
|
14
|
+
exports.formatExpire = formatExpire;
|
|
15
|
+
//# sourceMappingURL=formatExpire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatExpire.js","names":["formatExpire","value","arguments","length","undefined","result","Number","concat","substring","replace","exports"],"sources":["../../../../../src/components/__shared__/Payment/helpers/formatExpire.js"],"sourcesContent":["export const formatExpire = (value = '') => {\n let result = value;\n\n if (value.length === 1 && Number(value) > 1) result = `0${value}/`;\n if (value.length >= 2 && Number(value.substring(0, 2)) > 12) result = value.replace(value.substring(0, 2), '12');\n\n return result;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,YAAY,GAAG,SAAAA,CAAA,EAAgB;EAAA,IAAfC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EACrC,IAAIG,MAAM,GAAGJ,KAAK;EAElB,IAAIA,KAAK,CAACE,MAAM,KAAK,CAAC,IAAIG,MAAM,CAACL,KAAK,CAAC,GAAG,CAAC,EAAEI,MAAM,OAAAE,MAAA,CAAON,KAAK,MAAG;EAClE,IAAIA,KAAK,CAACE,MAAM,IAAI,CAAC,IAAIG,MAAM,CAACL,KAAK,CAACO,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAEH,MAAM,GAAGJ,KAAK,CAACQ,OAAO,CAACR,KAAK,CAACO,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC;EAEhH,OAAOH,MAAM;AACf,CAAC;AAACK,OAAA,CAAAV,YAAA,GAAAA,YAAA"}
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
var _formatExpire = require("./formatExpire");
|
|
7
|
+
Object.keys(_formatExpire).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _formatExpire[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _formatExpire[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
6
17
|
var _getCaption = require("./getCaption");
|
|
7
18
|
Object.keys(_getCaption).forEach(function (key) {
|
|
8
19
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_formatExpire","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_getCaption","_getComponent","_getImage"],"sources":["../../../../../src/components/__shared__/Payment/helpers/index.js"],"sourcesContent":["export * from './formatExpire';\nexport * from './getCaption';\nexport * from './getComponent';\nexport * from './getImage';\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,WAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,WAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,WAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,WAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,aAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,aAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,aAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,aAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,SAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,SAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,SAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,SAAA,CAAAP,GAAA;IAAA;EAAA;AAAA"}
|